The Issue: The hive exec jar as well as aux jars need to be localized for tez as they are no longer available for the tasks in the tez framework. This represents a difference in the way the user is accustomed to using hive. The solution: In order to make it seamless for the user, the following changes are proposed: A new configuration variable specifying the directory on HDFS where the jar has been placed. If the user provides the directory, it is straightforward to localize. The multiple versions of hive can be managed by looking into the classpath on the client side and deriving the version of the exec jar from the jar used in the process. If the user replaces the jar in hdfs, the checksum is used by yarn to re-localize the jar. If the user doesn’t provide the directory, we should look in the classpath of the client to see if there is an exec jar present there. If it is present, we try to load the file into a configurable hdfs location (default: /users/$USERNAME). If this fails as well, we let the user know of the error with information on the configuration variable. All this is done so that we do not need to re-localize the jars for tez. Tez internally uses a timestamp to ensure it doesn’t relocalize the same resources. Things to remember: Cannot have different versions of client and exec jars if user does not specify the location. Aux Jars: The behavior is going to be similar with another configuration for these jars.+