HBASE-15129 Set default value for hbase.fs.tmp.dir rather than fully depend on hbase-default.xml (Yu Li)
This commit is contained in:
parent
ecf3efadc0
commit
2f5767376f
|
@ -20,6 +20,7 @@ package org.apache.hadoop.hbase.security;
|
|||
|
||||
import org.apache.hadoop.conf.Configuration;
|
||||
import org.apache.hadoop.fs.Path;
|
||||
import org.apache.hadoop.hbase.HConstants;
|
||||
import org.apache.hadoop.hbase.classification.InterfaceAudience;
|
||||
import org.apache.hadoop.hbase.util.Bytes;
|
||||
|
||||
|
@ -37,6 +38,9 @@ public class SecureBulkLoadUtil {
|
|||
}
|
||||
|
||||
public static Path getBaseStagingDir(Configuration conf) {
|
||||
return new Path(conf.get(BULKLOAD_STAGING_DIR));
|
||||
String hbaseTmpFsDir =
|
||||
conf.get(HConstants.TEMPORARY_FS_DIRECTORY_KEY,
|
||||
HConstants.DEFAULT_TEMPORARY_HDFS_DIRECTORY);
|
||||
return new Path(conf.get(BULKLOAD_STAGING_DIR, hbaseTmpFsDir));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1255,6 +1255,11 @@ public final class HConstants {
|
|||
public static final String ZK_SERVER_KERBEROS_PRINCIPAL =
|
||||
"hbase.zookeeper.server.kerberos.principal";
|
||||
|
||||
/** Config key for hbase temporary directory in hdfs */
|
||||
public static final String TEMPORARY_FS_DIRECTORY_KEY = "hbase.fs.tmp.dir";
|
||||
public static final String DEFAULT_TEMPORARY_HDFS_DIRECTORY = "/user/"
|
||||
+ System.getProperty("user.name") + "/hbase-staging";
|
||||
|
||||
private HConstants() {
|
||||
// Can't be instantiated with this ctor.
|
||||
}
|
||||
|
|
|
@ -636,7 +636,10 @@ public class HFileOutputFormat2
|
|||
Configuration conf = job.getConfiguration();
|
||||
// create the partitions file
|
||||
FileSystem fs = FileSystem.get(conf);
|
||||
Path partitionsPath = new Path(conf.get("hbase.fs.tmp.dir"), "partitions_" + UUID.randomUUID());
|
||||
String hbaseTmpFsDir =
|
||||
conf.get(HConstants.TEMPORARY_FS_DIRECTORY_KEY,
|
||||
HConstants.DEFAULT_TEMPORARY_HDFS_DIRECTORY);
|
||||
Path partitionsPath = new Path(hbaseTmpFsDir, "partitions_" + UUID.randomUUID());
|
||||
fs.makeQualified(partitionsPath);
|
||||
writePartitions(conf, partitionsPath, splitPoints);
|
||||
fs.deleteOnExit(partitionsPath);
|
||||
|
|
|
@ -349,7 +349,8 @@ public class TestHFileOutputFormat2 {
|
|||
@Ignore("Goes zombie too frequently; needs work. See HBASE-14563") @Test
|
||||
public void testJobConfiguration() throws Exception {
|
||||
Configuration conf = new Configuration(this.util.getConfiguration());
|
||||
conf.set("hbase.fs.tmp.dir", util.getDataTestDir("testJobConfiguration").toString());
|
||||
conf.set(HConstants.TEMPORARY_FS_DIRECTORY_KEY, util.getDataTestDir("testJobConfiguration")
|
||||
.toString());
|
||||
Job job = new Job(conf);
|
||||
job.setWorkingDirectory(util.getDataTestDir("testJobConfiguration"));
|
||||
Table table = Mockito.mock(Table.class);
|
||||
|
|
Loading…
Reference in New Issue