Return-Path: X-Original-To: apmail-hbase-issues-archive@www.apache.org Delivered-To: apmail-hbase-issues-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 2CA9917569 for ; Mon, 11 May 2015 23:56:02 +0000 (UTC) Received: (qmail 62818 invoked by uid 500); 11 May 2015 23:56:02 -0000 Delivered-To: apmail-hbase-issues-archive@hbase.apache.org Received: (qmail 62772 invoked by uid 500); 11 May 2015 23:56:02 -0000 Mailing-List: contact issues-help@hbase.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Delivered-To: mailing list issues@hbase.apache.org Received: (qmail 62758 invoked by uid 99); 11 May 2015 23:56:01 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 11 May 2015 23:56:01 +0000 Date: Mon, 11 May 2015 23:56:01 +0000 (UTC) From: "Andrew Purtell (JIRA)" To: issues@hbase.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Updated] (HBASE-13625) Use HDFS for HFileOutputFormat2 partitioner's path MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/HBASE-13625?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andrew Purtell updated HBASE-13625: ----------------------------------- Fix Version/s: 0.98.13 Picked back cleanly to 0.98 > Use HDFS for HFileOutputFormat2 partitioner's path > -------------------------------------------------- > > Key: HBASE-13625 > URL: https://issues.apache.org/jira/browse/HBASE-13625 > Project: HBase > Issue Type: Bug > Components: mapreduce > Affects Versions: 2.0.0, 1.1.0, 1.2.0 > Reporter: Stephen Yuan Jiang > Assignee: Stephen Yuan Jiang > Fix For: 2.0.0, 0.98.13, 1.0.2, 1.2.0, 1.1.1 > > Attachments: HBASE-13625-v2.patch, HBASE-13625.patch > > > HBASE-13010 changed hard-coded '/tmp' in HFileOutputFormat2 partitioner's path to 'hadoop.tmp.dir'. This breaks unit test in Windows. > {code} > static void configurePartitioner(Job job, List splitPoints) > ... > // create the partitions file > - FileSystem fs = FileSystem.get(job.getConfiguration()); > - Path partitionsPath = new Path("/tmp", "partitions_" + UUID.randomUUID()); > + FileSystem fs = FileSystem.get(conf); > + Path partitionsPath = new Path(conf.get("hadoop.tmp.dir"), "partitions_" + UUID.randomUUID()); > {code} > Here is the exception from 1 of the UTs when running against Windows (from branch-1.1) - The ':' is an invalid character in windows file path: > {code} > java.lang.IllegalArgumentException: Pathname /C:/hbase-server/target/test-data/d25e2228-8959-43ee-b413-4fa69cdb8032/hadoop_tmp/partitions_fb96c0a0-41e6-4964-a391-738cb761ee3e from C:/hbase-server/target/test-data/d25e2228-8959-43ee-b413-4fa69cdb8032/hadoop_tmp/partitions_fb96c0a0-41e6-4964-a391-738cb761ee3e is not a valid DFS filename. > at org.apache.hadoop.hdfs.DistributedFileSystem.getPathName(DistributedFileSystem.java:197) > at org.apache.hadoop.hdfs.DistributedFileSystem.access$000(DistributedFileSystem.java:106) > at org.apache.hadoop.hdfs.DistributedFileSystem$7.doCall(DistributedFileSystem.java:448) > at org.apache.hadoop.hdfs.DistributedFileSystem$7.doCall(DistributedFileSystem.java:444) > at org.apache.hadoop.fs.FileSystemLinkResolver.resolve(FileSystemLinkResolver.java:81) > at org.apache.hadoop.hdfs.DistributedFileSystem.create(DistributedFileSystem.java:444) > at org.apache.hadoop.hdfs.DistributedFileSystem.create(DistributedFileSystem.java:387) > at org.apache.hadoop.fs.FileSystem.create(FileSystem.java:909) > at org.apache.hadoop.io.SequenceFile$Writer.(SequenceFile.java:1074) > at org.apache.hadoop.io.SequenceFile$RecordCompressWriter.(SequenceFile.java:1374) > at org.apache.hadoop.io.SequenceFile.createWriter(SequenceFile.java:275) > at org.apache.hadoop.io.SequenceFile.createWriter(SequenceFile.java:297) > at org.apache.hadoop.hbase.mapreduce.HFileOutputFormat2.writePartitions(HFileOutputFormat2.java:335) > at org.apache.hadoop.hbase.mapreduce.HFileOutputFormat2.configurePartitioner(HFileOutputFormat2.java:593) > 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.ImportTsv.createSubmittableJob(ImportTsv.java:539) > at org.apache.hadoop.hbase.mapreduce.ImportTsv.run(ImportTsv.java:720) > at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70) > at org.apache.hadoop.hbase.mapreduce.TestImportTsv.doMROnTableTest(TestImportTsv.java:313) > at org.apache.hadoop.hbase.mapreduce.TestImportTsv.testBulkOutputWithoutAnExistingTable(TestImportTsv.java:168) > {code} > The proposed fix is to use a config to point to a hdfs directory. -- This message was sent by Atlassian JIRA (v6.3.4#6332)