Yu Li created HBASE-15129:
-----------------------------
Summary: Set default value for hbase.fs.tmp.dir rather than fully
depend on hbase-default.xml
Key: HBASE-15129
URL: https://issues.apache.org/jira/browse/HBASE-15129
Project: HBase
Issue Type: Bug
Reporter: Yu Li
Assignee: Yu Li
One of our users has observed below error when our cluster upgrades from
0.98.12 to 1.1.2:
{noformat}
java.lang.IllegalArgumentException: Can not create a Path from a null string
at org.apache.hadoop.fs.Path.checkPathArg(Path.java:122)
at org.apache.hadoop.fs.Path.<init>(Path.java:134)
at org.apache.hadoop.fs.Path.<init>(Path.java:88)
at
org.apache.hadoop.hbase.mapreduce.HFileOutputFormat2.configurePartitioner(HFileOutputFormat2.java:639)
at
org.apache.hadoop.hbase.mapreduce.HFileOutputFormat2.configureIncrementalLoad(HFileOutputFormat2.java:489)
{noformat}
And checking the application code:
{code}
private Job createJob(Configuration jobConf) throws IOException {
String tableName = jobConf.get(TABLE_NAME_KEY);
Job job = new Job(jobConf);
Configuration tableConf = HBaseConfiguration.create();
HTable table = new HTable(tableConf, tableName);
HFileOutputFormat2.configureIncrementalLoad(job, table);
return job;
}
{code}
We could see the user has his own hbase-independent job configuration, so our
current code in HFileOutputFormat2:
{code}
Path partitionsPath = new Path(conf.get("hbase.fs.tmp.dir"), "partitions_" +
UUID.randomUUID());
{code}
will return a null string and cause the above exception.
We propose to add default value in the code rather than depend on
hbase-default.xml in this JIRA.
This is an improvement for HBASE-13625
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)