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.conf.Configuration;
|
||||||
import org.apache.hadoop.fs.Path;
|
import org.apache.hadoop.fs.Path;
|
||||||
|
import org.apache.hadoop.hbase.HConstants;
|
||||||
import org.apache.hadoop.hbase.classification.InterfaceAudience;
|
import org.apache.hadoop.hbase.classification.InterfaceAudience;
|
||||||
import org.apache.hadoop.hbase.util.Bytes;
|
import org.apache.hadoop.hbase.util.Bytes;
|
||||||
|
|
||||||
|
@ -37,6 +38,9 @@ public class SecureBulkLoadUtil {
|
||||||
}
|
}
|
||||||
|
|
||||||
public static Path getBaseStagingDir(Configuration conf) {
|
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 =
|
public static final String ZK_SERVER_KERBEROS_PRINCIPAL =
|
||||||
"hbase.zookeeper.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() {
|
private HConstants() {
|
||||||
// Can't be instantiated with this ctor.
|
// Can't be instantiated with this ctor.
|
||||||
}
|
}
|
||||||
|
|
|
@ -636,7 +636,10 @@ public class HFileOutputFormat2
|
||||||
Configuration conf = job.getConfiguration();
|
Configuration conf = job.getConfiguration();
|
||||||
// create the partitions file
|
// create the partitions file
|
||||||
FileSystem fs = FileSystem.get(conf);
|
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);
|
fs.makeQualified(partitionsPath);
|
||||||
writePartitions(conf, partitionsPath, splitPoints);
|
writePartitions(conf, partitionsPath, splitPoints);
|
||||||
fs.deleteOnExit(partitionsPath);
|
fs.deleteOnExit(partitionsPath);
|
||||||
|
|
|
@ -349,7 +349,8 @@ public class TestHFileOutputFormat2 {
|
||||||
@Ignore("Goes zombie too frequently; needs work. See HBASE-14563") @Test
|
@Ignore("Goes zombie too frequently; needs work. See HBASE-14563") @Test
|
||||||
public void testJobConfiguration() throws Exception {
|
public void testJobConfiguration() throws Exception {
|
||||||
Configuration conf = new Configuration(this.util.getConfiguration());
|
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 job = new Job(conf);
|
||||||
job.setWorkingDirectory(util.getDataTestDir("testJobConfiguration"));
|
job.setWorkingDirectory(util.getDataTestDir("testJobConfiguration"));
|
||||||
Table table = Mockito.mock(Table.class);
|
Table table = Mockito.mock(Table.class);
|
||||||
|
|
Loading…
Reference in New Issue