[
https://issues.apache.org/jira/browse/HIVE-338?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12723314#action_12723314
]
Zheng Shao commented on HIVE-338:
---------------------------------
There are two problems:
1. The jars added by the the "add jar" command only goes to -libjars but not
"-jobconf hive.aux.jars"
2. For hadoop 0.17.0 local mode, ExecDriver reads "hive.aux.jars" and we set
the classpath ourselves (instead of depending on hadoop).
In order to let the hadoop 0.17.0 local mode work, I have to add the added jars
to hive.aux.jars and pass it to ExecDriver through the command line jobconf.
{code}
ExecDriver.java:526
// workaround for hadoop-17 - libjars are not added to classpath. this
// affects local
// mode execution
boolean localMode = HiveConf.getVar(conf, HiveConf.ConfVars.HADOOPJT)
.equals("local");
if (localMode) {
String auxJars = HiveConf.getVar(conf, HiveConf.ConfVars.HIVEAUXJARS);
if (StringUtils.isNotBlank(auxJars)) {
try {
Utilities.addToClassPath(StringUtils.split(auxJars, ","));
} catch (Exception e) {
throw new HiveException(e.getMessage(), e);
}
}
}
{code}
Several way to fix the global object problem:
A. copy-create a new conf variable
B. Add a new jobconf to replicate the value of -libjars (e.g.
hive.hadoop.libjars)
C. Set the auxjars before starting the MapRed job, and reset it after the job
started.
I prefer approach B. Thoughts?
> Executing cli commands into thrift server
> -----------------------------------------
>
> Key: HIVE-338
> URL: https://issues.apache.org/jira/browse/HIVE-338
> Project: Hadoop Hive
> Issue Type: Improvement
> Components: Server Infrastructure
> Affects Versions: 0.3.0
> Reporter: Min Zhou
> Assignee: Min Zhou
> Fix For: 0.4.0
>
> Attachments: hive-338.final.patch, HIVE-338.postfix.1.patch,
> hiveserver-v1.patch, hiveserver-v2.patch, hiveserver-v3.patch
>
>
> Let thrift server support set, add/delete file/jar and normal HSQL query.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.