[ 
https://issues.apache.org/jira/browse/HBASE-13878?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14581179#comment-14581179
 ] 

Stephen Yuan Jiang commented on HBASE-13878:
--------------------------------------------

[~enis] Let us not re-purpose the createRootDir().  If the setting of 
{{hbase.fs.tmp.dir}} is null, then we just set it up after starting mini 
cluster.  

V2 patch is attached.  Note: when I did the testing, I found that the conf 
passed in from HBase unit tests has already had this config read from 
hbase-defaults.xml; for Phoenix unit tests, this config was null - after 
setting the value, Phoenix UT passed.

> Set hbase.fs.tmp.dir config in HBaseTestingUtility.java for Phoenix UT to use
> -----------------------------------------------------------------------------
>
>                 Key: HBASE-13878
>                 URL: https://issues.apache.org/jira/browse/HBASE-13878
>             Project: HBase
>          Issue Type: Bug
>          Components: test
>    Affects Versions: 2.0.0, 1.1.0, 1.2.0
>            Reporter: Stephen Yuan Jiang
>            Assignee: Stephen Yuan Jiang
>            Priority: Minor
>             Fix For: 2.0.0, 1.2.0, 1.1.1
>
>         Attachments: HBASE-13878.patch, HBASE-13878.v2.patch
>
>
> HBASE-13625 changed the HFileOutputFormat2 partitioner's path from using the 
> {{hadoop.tmp.dir}} config to {{hbase.fs.tmp.dir}} config.  However, some 
> Apache Phoenix unit tests (org.apache.phoenix.mapreduce.CsvBulkLoadToolIT and 
> org.apache.phoenix.mapreduce.IndexToolIT) fail due to null value in the 
> {{hbase.fs.tmp.dir}} config.  They were relied on the {{hadoop.tmp.dir}} set  
> from HBaseTestingUtility.  
> {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:591)
>       at 
> org.apache.hadoop.hbase.mapreduce.HFileOutputFormat2.configureIncrementalLoad(HFileOutputFormat2.java:440)
>       at 
> org.apache.hadoop.hbase.mapreduce.HFileOutputFormat2.configureIncrementalLoad(HFileOutputFormat2.java:405)
>       at 
> org.apache.hadoop.hbase.mapreduce.HFileOutputFormat.configureIncrementalLoad(HFileOutputFormat.java:91)
>       at 
> org.apache.phoenix.mapreduce.CsvBulkLoadTool$TableLoader.call(CsvBulkLoadTool.java:505)
>       at 
> org.apache.phoenix.mapreduce.CsvBulkLoadTool$TableLoader.call(CsvBulkLoadTool.java:466)
>       at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
>       at java.util.concurrent.FutureTask.run(FutureTask.java:166)
>       at 
> org.apache.phoenix.job.JobManager$InstrumentedJobFutureTask.run(JobManager.java:172)
>       at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>       at java.lang.Thread.run(Thread.java:722)
> {noformat}
> The proposal is to set {{hbase.fs.tmp.dir}} in 
> HBaseTestingUtility#setupDataTestDir().



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to