HBASE-18306 Get rid of TableDescriptor#getConfiguration
This commit is contained in:
parent
a722c7ecdf
commit
2f7dcc919d
|
@ -815,17 +815,19 @@ public class HTableDescriptor implements TableDescriptor, Comparable<HTableDescr
|
||||||
/**
|
/**
|
||||||
* Getter for accessing the configuration value by key
|
* Getter for accessing the configuration value by key
|
||||||
*/
|
*/
|
||||||
@Override
|
|
||||||
public String getConfigurationValue(String key) {
|
public String getConfigurationValue(String key) {
|
||||||
return delegatee.getConfigurationValue(key);
|
return delegatee.getValue(key);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Getter for fetching an unmodifiable map.
|
* Getter for fetching an unmodifiable map.
|
||||||
*/
|
*/
|
||||||
@Override
|
|
||||||
public Map<String, String> getConfiguration() {
|
public Map<String, String> getConfiguration() {
|
||||||
return delegatee.getConfiguration();
|
return delegatee.getValues().entrySet().stream()
|
||||||
|
.collect(Collectors.toMap(
|
||||||
|
e -> Bytes.toString(e.getKey().get(), e.getKey().getOffset(), e.getKey().getLength()),
|
||||||
|
e -> Bytes.toString(e.getValue().get(), e.getValue().getOffset(), e.getValue().getLength())
|
||||||
|
));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -834,7 +836,7 @@ public class HTableDescriptor implements TableDescriptor, Comparable<HTableDescr
|
||||||
* @param value String value. If null, removes the setting.
|
* @param value String value. If null, removes the setting.
|
||||||
*/
|
*/
|
||||||
public HTableDescriptor setConfiguration(String key, String value) {
|
public HTableDescriptor setConfiguration(String key, String value) {
|
||||||
getDelegateeForModification().setConfiguration(key, value);
|
getDelegateeForModification().setValue(key, value);
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -842,7 +844,7 @@ public class HTableDescriptor implements TableDescriptor, Comparable<HTableDescr
|
||||||
* Remove a config setting represented by the key from the map
|
* Remove a config setting represented by the key from the map
|
||||||
*/
|
*/
|
||||||
public void removeConfiguration(final String key) {
|
public void removeConfiguration(final String key) {
|
||||||
getDelegateeForModification().removeConfiguration(key);
|
getDelegateeForModification().removeValue(Bytes.toBytes(key));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -60,11 +60,7 @@ public interface TableDescriptor {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// punt on comparison for ordering, just calculate difference
|
// punt on comparison for ordering, just calculate difference
|
||||||
result = Integer.compare(lhs.getValues().hashCode(), rhs.getValues().hashCode());
|
return Integer.compare(lhs.getValues().hashCode(), rhs.getValues().hashCode());
|
||||||
if (result != 0) {
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
return Integer.compare(lhs.getConfiguration().hashCode(), rhs.getConfiguration().hashCode());
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -74,22 +70,6 @@ public interface TableDescriptor {
|
||||||
*/
|
*/
|
||||||
int getColumnFamilyCount();
|
int getColumnFamilyCount();
|
||||||
|
|
||||||
/**
|
|
||||||
* Getter for fetching an unmodifiable map.
|
|
||||||
*
|
|
||||||
* @return an unmodifiable map
|
|
||||||
*/
|
|
||||||
Map<String, String> getConfiguration();
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Getter for accessing the configuration value by key
|
|
||||||
*
|
|
||||||
* @param key the key whose associated value is to be returned
|
|
||||||
* @return the value to which the specified key is mapped, or {@code null} if
|
|
||||||
* this map contains no mapping for the key
|
|
||||||
*/
|
|
||||||
String getConfigurationValue(String key);
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Return the list of attached co-processor represented by their name
|
* Return the list of attached co-processor represented by their name
|
||||||
* className
|
* className
|
||||||
|
|
|
@ -38,7 +38,6 @@ import org.apache.commons.logging.LogFactory;
|
||||||
import org.apache.hadoop.fs.Path;
|
import org.apache.hadoop.fs.Path;
|
||||||
import org.apache.hadoop.hbase.Coprocessor;
|
import org.apache.hadoop.hbase.Coprocessor;
|
||||||
import org.apache.hadoop.hbase.HConstants;
|
import org.apache.hadoop.hbase.HConstants;
|
||||||
import org.apache.hadoop.hbase.HTableDescriptor;
|
|
||||||
import org.apache.hadoop.hbase.TableName;
|
import org.apache.hadoop.hbase.TableName;
|
||||||
import org.apache.hadoop.hbase.classification.InterfaceAudience;
|
import org.apache.hadoop.hbase.classification.InterfaceAudience;
|
||||||
import org.apache.hadoop.hbase.exceptions.DeserializationException;
|
import org.apache.hadoop.hbase.exceptions.DeserializationException;
|
||||||
|
@ -137,6 +136,8 @@ public class TableDescriptorBuilder {
|
||||||
private static final Bytes REGION_MEMSTORE_REPLICATION_KEY
|
private static final Bytes REGION_MEMSTORE_REPLICATION_KEY
|
||||||
= new Bytes(Bytes.toBytes(REGION_MEMSTORE_REPLICATION));
|
= new Bytes(Bytes.toBytes(REGION_MEMSTORE_REPLICATION));
|
||||||
|
|
||||||
|
private static final Bytes REGION_REPLICA_WAIT_FOR_PRIMARY_FLUSH_CONF_KEY
|
||||||
|
= new Bytes(Bytes.toBytes(RegionReplicaUtil.REGION_REPLICA_WAIT_FOR_PRIMARY_FLUSH_CONF_KEY));
|
||||||
/**
|
/**
|
||||||
* Used by shell/rest interface to access this metadata
|
* Used by shell/rest interface to access this metadata
|
||||||
* attribute which denotes if the table should be treated by region
|
* attribute which denotes if the table should be treated by region
|
||||||
|
@ -265,7 +266,7 @@ public class TableDescriptorBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Copy all configuration, values, families, and name from the input.
|
* Copy all values, families, and name from the input.
|
||||||
* @param desc The desciptor to copy
|
* @param desc The desciptor to copy
|
||||||
* @return A clone of input
|
* @return A clone of input
|
||||||
*/
|
*/
|
||||||
|
@ -316,11 +317,6 @@ public class TableDescriptorBuilder {
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
public TableDescriptorBuilder removeConfiguration(final String key) {
|
|
||||||
desc.removeConfiguration(key);
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public TableDescriptorBuilder removeColumnFamily(final byte[] name) {
|
public TableDescriptorBuilder removeColumnFamily(final byte[] name) {
|
||||||
desc.removeColumnFamily(name);
|
desc.removeColumnFamily(name);
|
||||||
return this;
|
return this;
|
||||||
|
@ -336,11 +332,6 @@ public class TableDescriptorBuilder {
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
public TableDescriptorBuilder setConfiguration(String key, String value) {
|
|
||||||
desc.setConfiguration(key, value);
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public TableDescriptorBuilder setDurability(Durability durability) {
|
public TableDescriptorBuilder setDurability(Durability durability) {
|
||||||
desc.setDurability(durability);
|
desc.setDurability(durability);
|
||||||
return this;
|
return this;
|
||||||
|
@ -403,6 +394,11 @@ public class TableDescriptorBuilder {
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public TableDescriptorBuilder setValue(final String key, final String value) {
|
||||||
|
desc.setValue(key, value);
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
public TableDescriptorBuilder setValue(final Bytes key, final Bytes value) {
|
public TableDescriptorBuilder setValue(final Bytes key, final Bytes value) {
|
||||||
desc.setValue(key, value);
|
desc.setValue(key, value);
|
||||||
return this;
|
return this;
|
||||||
|
@ -433,13 +429,6 @@ public class TableDescriptorBuilder {
|
||||||
*/
|
*/
|
||||||
private final Map<Bytes, Bytes> values = new HashMap<>();
|
private final Map<Bytes, Bytes> values = new HashMap<>();
|
||||||
|
|
||||||
/**
|
|
||||||
* A map which holds the configuration specific to the table. The keys of
|
|
||||||
* the map have the same names as config keys and override the defaults with
|
|
||||||
* table-specific settings. Example usage may be for compactions, etc.
|
|
||||||
*/
|
|
||||||
private final Map<String, String> configuration = new HashMap<>();
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Maps column family name to the respective FamilyDescriptors
|
* Maps column family name to the respective FamilyDescriptors
|
||||||
*/
|
*/
|
||||||
|
@ -454,11 +443,11 @@ public class TableDescriptorBuilder {
|
||||||
*/
|
*/
|
||||||
@InterfaceAudience.Private
|
@InterfaceAudience.Private
|
||||||
public ModifyableTableDescriptor(final TableName name) {
|
public ModifyableTableDescriptor(final TableName name) {
|
||||||
this(name, Collections.EMPTY_LIST, Collections.EMPTY_MAP, Collections.EMPTY_MAP);
|
this(name, Collections.EMPTY_LIST, Collections.EMPTY_MAP);
|
||||||
}
|
}
|
||||||
|
|
||||||
private ModifyableTableDescriptor(final TableDescriptor desc) {
|
private ModifyableTableDescriptor(final TableDescriptor desc) {
|
||||||
this(desc.getTableName(), Arrays.asList(desc.getColumnFamilies()), desc.getValues(), desc.getConfiguration());
|
this(desc.getTableName(), Arrays.asList(desc.getColumnFamilies()), desc.getValues());
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -473,15 +462,14 @@ public class TableDescriptorBuilder {
|
||||||
@InterfaceAudience.Private
|
@InterfaceAudience.Private
|
||||||
@Deprecated // only used by HTableDescriptor. remove this method if HTD is removed
|
@Deprecated // only used by HTableDescriptor. remove this method if HTD is removed
|
||||||
public ModifyableTableDescriptor(final TableName name, final TableDescriptor desc) {
|
public ModifyableTableDescriptor(final TableName name, final TableDescriptor desc) {
|
||||||
this(name, Arrays.asList(desc.getColumnFamilies()), desc.getValues(), desc.getConfiguration());
|
this(name, Arrays.asList(desc.getColumnFamilies()), desc.getValues());
|
||||||
}
|
}
|
||||||
|
|
||||||
private ModifyableTableDescriptor(final TableName name, final Collection<ColumnFamilyDescriptor> families,
|
private ModifyableTableDescriptor(final TableName name, final Collection<ColumnFamilyDescriptor> families,
|
||||||
Map<Bytes, Bytes> values, Map<String, String> configuration) {
|
Map<Bytes, Bytes> values) {
|
||||||
this.name = name;
|
this.name = name;
|
||||||
families.forEach(c -> this.families.put(c.getName(), ColumnFamilyDescriptorBuilder.copy(c)));
|
families.forEach(c -> this.families.put(c.getName(), ColumnFamilyDescriptorBuilder.copy(c)));
|
||||||
this.values.putAll(values);
|
this.values.putAll(values);
|
||||||
this.configuration.putAll(configuration);
|
|
||||||
this.values.put(IS_META_KEY,
|
this.values.put(IS_META_KEY,
|
||||||
new Bytes(Bytes.toBytes(Boolean.toString(name.equals(TableName.META_TABLE_NAME)))));
|
new Bytes(Bytes.toBytes(Boolean.toString(name.equals(TableName.META_TABLE_NAME)))));
|
||||||
}
|
}
|
||||||
|
@ -558,6 +546,11 @@ public class TableDescriptorBuilder {
|
||||||
toBytesOrNull(value, v -> v));
|
toBytesOrNull(value, v -> v));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public ModifyableTableDescriptor setValue(String key, String value) {
|
||||||
|
return setValue(toBytesOrNull(key, Bytes::toBytes),
|
||||||
|
toBytesOrNull(value, Bytes::toBytes));
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* @param key The key.
|
* @param key The key.
|
||||||
* @param value The value. If null, removes the setting.
|
* @param value The value. If null, removes the setting.
|
||||||
|
@ -936,7 +929,7 @@ public class TableDescriptorBuilder {
|
||||||
|
|
||||||
// early exit optimization
|
// early exit optimization
|
||||||
boolean hasAttributes = !reservedKeys.isEmpty() || !userKeys.isEmpty();
|
boolean hasAttributes = !reservedKeys.isEmpty() || !userKeys.isEmpty();
|
||||||
if (!hasAttributes && configuration.isEmpty()) {
|
if (!hasAttributes) {
|
||||||
return s;
|
return s;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -960,7 +953,7 @@ public class TableDescriptorBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!userKeys.isEmpty()) {
|
if (!userKeys.isEmpty()) {
|
||||||
// print all non-reserved, advanced config keys as a separate subset
|
// print all non-reserved as a separate subset
|
||||||
if (printCommaForAttr) {
|
if (printCommaForAttr) {
|
||||||
s.append(", ");
|
s.append(", ");
|
||||||
}
|
}
|
||||||
|
@ -982,25 +975,6 @@ public class TableDescriptorBuilder {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// step 3: printing all configuration:
|
|
||||||
if (!configuration.isEmpty()) {
|
|
||||||
if (hasAttributes) {
|
|
||||||
s.append(", ");
|
|
||||||
}
|
|
||||||
s.append(HConstants.CONFIGURATION).append(" => ");
|
|
||||||
s.append('{');
|
|
||||||
boolean printCommaForConfig = false;
|
|
||||||
for (Map.Entry<String, String> e : configuration.entrySet()) {
|
|
||||||
if (printCommaForConfig) {
|
|
||||||
s.append(", ");
|
|
||||||
}
|
|
||||||
printCommaForConfig = true;
|
|
||||||
s.append('\'').append(e.getKey()).append('\'');
|
|
||||||
s.append(" => ");
|
|
||||||
s.append('\'').append(e.getValue()).append('\'');
|
|
||||||
}
|
|
||||||
s.append("}");
|
|
||||||
}
|
|
||||||
s.append("}"); // end METHOD
|
s.append("}"); // end METHOD
|
||||||
return s;
|
return s;
|
||||||
}
|
}
|
||||||
|
@ -1038,7 +1012,6 @@ public class TableDescriptorBuilder {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
result ^= values.hashCode();
|
result ^= values.hashCode();
|
||||||
result ^= configuration.hashCode();
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1112,7 +1085,7 @@ public class TableDescriptorBuilder {
|
||||||
setValue(REGION_MEMSTORE_REPLICATION_KEY, Boolean.toString(memstoreReplication));
|
setValue(REGION_MEMSTORE_REPLICATION_KEY, Boolean.toString(memstoreReplication));
|
||||||
// If the memstore replication is setup, we do not have to wait for observing a flush event
|
// If the memstore replication is setup, we do not have to wait for observing a flush event
|
||||||
// from primary before starting to serve reads, because gaps from replication is not applicable
|
// from primary before starting to serve reads, because gaps from replication is not applicable
|
||||||
return setConfiguration(RegionReplicaUtil.REGION_REPLICA_WAIT_FOR_PRIMARY_FLUSH_CONF_KEY,
|
return setValue(REGION_REPLICA_WAIT_FOR_PRIMARY_FLUSH_CONF_KEY,
|
||||||
Boolean.toString(memstoreReplication));
|
Boolean.toString(memstoreReplication));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1426,50 +1399,6 @@ public class TableDescriptorBuilder {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Getter for accessing the configuration value by key
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public String getConfigurationValue(String key) {
|
|
||||||
return configuration.get(key);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Getter for fetching an unmodifiable {@link #configuration} map.
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public Map<String, String> getConfiguration() {
|
|
||||||
// shallow pointer copy
|
|
||||||
return Collections.unmodifiableMap(configuration);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Setter for storing a configuration setting in {@link #configuration} map.
|
|
||||||
*
|
|
||||||
* @param key Config key. Same as XML config key e.g.
|
|
||||||
* hbase.something.or.other.
|
|
||||||
* @param value String value. If null, removes the setting.
|
|
||||||
* @return the modifyable TD
|
|
||||||
*/
|
|
||||||
public ModifyableTableDescriptor setConfiguration(String key, String value) {
|
|
||||||
if (value == null) {
|
|
||||||
configuration.remove(key);
|
|
||||||
} else {
|
|
||||||
configuration.put(key, value);
|
|
||||||
}
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Remove a config setting represented by the key from the
|
|
||||||
* {@link #configuration} map
|
|
||||||
* @param key Config key.
|
|
||||||
* @return the modifyable TD
|
|
||||||
*/
|
|
||||||
public ModifyableTableDescriptor removeConfiguration(final String key) {
|
|
||||||
return setConfiguration(key, null);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int getColumnFamilyCount() {
|
public int getColumnFamilyCount() {
|
||||||
return families.size();
|
return families.size();
|
||||||
|
|
|
@ -2817,12 +2817,6 @@ public final class ProtobufUtil {
|
||||||
for (ColumnFamilyDescriptor hcd : htd.getColumnFamilies()) {
|
for (ColumnFamilyDescriptor hcd : htd.getColumnFamilies()) {
|
||||||
builder.addColumnFamilies(toColumnFamilySchema(hcd));
|
builder.addColumnFamilies(toColumnFamilySchema(hcd));
|
||||||
}
|
}
|
||||||
for (Map.Entry<String, String> e : htd.getConfiguration().entrySet()) {
|
|
||||||
NameStringPair.Builder aBuilder = NameStringPair.newBuilder();
|
|
||||||
aBuilder.setName(e.getKey());
|
|
||||||
aBuilder.setValue(e.getValue());
|
|
||||||
builder.addConfiguration(aBuilder.build());
|
|
||||||
}
|
|
||||||
return builder.build();
|
return builder.build();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2841,7 +2835,7 @@ public final class ProtobufUtil {
|
||||||
ts.getAttributesList()
|
ts.getAttributesList()
|
||||||
.forEach(a -> builder.setValue(a.getFirst().toByteArray(), a.getSecond().toByteArray()));
|
.forEach(a -> builder.setValue(a.getFirst().toByteArray(), a.getSecond().toByteArray()));
|
||||||
ts.getConfigurationList()
|
ts.getConfigurationList()
|
||||||
.forEach(a -> builder.setConfiguration(a.getName(), a.getValue()));
|
.forEach(a -> builder.setValue(a.getName(), a.getValue()));
|
||||||
return builder.build();
|
return builder.build();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -271,25 +271,6 @@ public class TestTableDescriptorBuilder {
|
||||||
assertEquals(1111L, desc.getMemStoreFlushSize());
|
assertEquals(1111L, desc.getMemStoreFlushSize());
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Test that we add and remove strings from configuration properly.
|
|
||||||
*/
|
|
||||||
@Test
|
|
||||||
public void testAddGetRemoveConfiguration() {
|
|
||||||
String key = "Some";
|
|
||||||
String value = "value";
|
|
||||||
TableDescriptor desc = TableDescriptorBuilder
|
|
||||||
.newBuilder(TableName.valueOf(name.getMethodName()))
|
|
||||||
.setConfiguration(key, value)
|
|
||||||
.build();
|
|
||||||
assertEquals(value, desc.getConfigurationValue(key));
|
|
||||||
desc = TableDescriptorBuilder
|
|
||||||
.newBuilder(desc)
|
|
||||||
.removeConfiguration(key)
|
|
||||||
.build();
|
|
||||||
assertEquals(null, desc.getConfigurationValue(key));
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testClassMethodsAreBuilderStyle() {
|
public void testClassMethodsAreBuilderStyle() {
|
||||||
BuilderStyleTest.assertClassesAreBuilderStyle(TableDescriptorBuilder.class);
|
BuilderStyleTest.assertClassesAreBuilderStyle(TableDescriptorBuilder.class);
|
||||||
|
|
|
@ -1800,7 +1800,7 @@ public class HMaster extends HRegionServer implements MasterServices {
|
||||||
if (!conf.getBoolean(CONF_KEY, true)) {
|
if (!conf.getBoolean(CONF_KEY, true)) {
|
||||||
logWarn = true;
|
logWarn = true;
|
||||||
}
|
}
|
||||||
String tableVal = htd.getConfigurationValue(CONF_KEY);
|
String tableVal = htd.getValue(CONF_KEY);
|
||||||
if (tableVal != null && !Boolean.valueOf(tableVal)) {
|
if (tableVal != null && !Boolean.valueOf(tableVal)) {
|
||||||
logWarn = true;
|
logWarn = true;
|
||||||
}
|
}
|
||||||
|
@ -1925,8 +1925,7 @@ public class HMaster extends HRegionServer implements MasterServices {
|
||||||
throws IOException {
|
throws IOException {
|
||||||
// FIFO compaction has some requirements
|
// FIFO compaction has some requirements
|
||||||
// Actually FCP ignores periodic major compactions
|
// Actually FCP ignores periodic major compactions
|
||||||
String className =
|
String className = htd.getValue(DefaultStoreEngine.DEFAULT_COMPACTION_POLICY_CLASS_KEY);
|
||||||
htd.getConfigurationValue(DefaultStoreEngine.DEFAULT_COMPACTION_POLICY_CLASS_KEY);
|
|
||||||
if (className == null) {
|
if (className == null) {
|
||||||
className =
|
className =
|
||||||
conf.get(DefaultStoreEngine.DEFAULT_COMPACTION_POLICY_CLASS_KEY,
|
conf.get(DefaultStoreEngine.DEFAULT_COMPACTION_POLICY_CLASS_KEY,
|
||||||
|
@ -1934,7 +1933,7 @@ public class HMaster extends HRegionServer implements MasterServices {
|
||||||
}
|
}
|
||||||
|
|
||||||
int blockingFileCount = HStore.DEFAULT_BLOCKING_STOREFILE_COUNT;
|
int blockingFileCount = HStore.DEFAULT_BLOCKING_STOREFILE_COUNT;
|
||||||
String sv = htd.getConfigurationValue(HStore.BLOCKING_STOREFILES_KEY);
|
String sv = htd.getValue(HStore.BLOCKING_STOREFILES_KEY);
|
||||||
if (sv != null) {
|
if (sv != null) {
|
||||||
blockingFileCount = Integer.parseInt(sv);
|
blockingFileCount = Integer.parseInt(sv);
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -721,7 +721,6 @@ public class HRegion implements HeapSize, PropagatingConfigurationObserver, Regi
|
||||||
this.baseConf = confParam;
|
this.baseConf = confParam;
|
||||||
this.conf = new CompoundConfiguration()
|
this.conf = new CompoundConfiguration()
|
||||||
.add(confParam)
|
.add(confParam)
|
||||||
.addStringMap(htd.getConfiguration())
|
|
||||||
.addBytesMap(htd.getValues());
|
.addBytesMap(htd.getValues());
|
||||||
this.flushCheckInterval = conf.getInt(MEMSTORE_PERIODIC_FLUSH_INTERVAL,
|
this.flushCheckInterval = conf.getInt(MEMSTORE_PERIODIC_FLUSH_INTERVAL,
|
||||||
DEFAULT_CACHE_FLUSH_INTERVAL);
|
DEFAULT_CACHE_FLUSH_INTERVAL);
|
||||||
|
|
|
@ -229,7 +229,7 @@ public class HStore implements Store {
|
||||||
// add global config first, then table and cf overrides, then cf metadata.
|
// add global config first, then table and cf overrides, then cf metadata.
|
||||||
this.conf = new CompoundConfiguration()
|
this.conf = new CompoundConfiguration()
|
||||||
.add(confParam)
|
.add(confParam)
|
||||||
.addStringMap(region.getTableDescriptor().getConfiguration())
|
.addBytesMap(region.getTableDescriptor().getValues())
|
||||||
.addStringMap(family.getConfiguration())
|
.addStringMap(family.getConfiguration())
|
||||||
.addBytesMap(family.getValues());
|
.addBytesMap(family.getValues());
|
||||||
this.blocksize = family.getBlocksize();
|
this.blocksize = family.getBlocksize();
|
||||||
|
|
|
@ -954,7 +954,7 @@ public class AccessController implements MasterObserver, RegionObserver, RegionS
|
||||||
} else if (env instanceof RegionCoprocessorEnvironment) {
|
} else if (env instanceof RegionCoprocessorEnvironment) {
|
||||||
// if running at region
|
// if running at region
|
||||||
regionEnv = (RegionCoprocessorEnvironment) env;
|
regionEnv = (RegionCoprocessorEnvironment) env;
|
||||||
conf.addStringMap(regionEnv.getRegion().getTableDescriptor().getConfiguration());
|
conf.addBytesMap(regionEnv.getRegion().getTableDescriptor().getValues());
|
||||||
zk = regionEnv.getRegionServerServices().getZooKeeper();
|
zk = regionEnv.getRegionServerServices().getZooKeeper();
|
||||||
compatibleEarlyTermination = conf.getBoolean(AccessControlConstants.CF_ATTRIBUTE_EARLY_OUT,
|
compatibleEarlyTermination = conf.getBoolean(AccessControlConstants.CF_ATTRIBUTE_EARLY_OUT,
|
||||||
AccessControlConstants.DEFAULT_ATTRIBUTE_EARLY_OUT);
|
AccessControlConstants.DEFAULT_ATTRIBUTE_EARLY_OUT);
|
||||||
|
|
|
@ -81,7 +81,7 @@ public class TestCreateTableProcedure extends TestTableDDLProcedureBase {
|
||||||
final TableDescriptorBuilder builder = TableDescriptorBuilder.newBuilder(MasterProcedureTestingUtility.createHTD(tableName));
|
final TableDescriptorBuilder builder = TableDescriptorBuilder.newBuilder(MasterProcedureTestingUtility.createHTD(tableName));
|
||||||
|
|
||||||
// disable sanity check
|
// disable sanity check
|
||||||
builder.setConfiguration("hbase.table.sanity.checks", Boolean.FALSE.toString());
|
builder.setValue("hbase.table.sanity.checks", Boolean.FALSE.toString());
|
||||||
TableDescriptor htd = builder.build();
|
TableDescriptor htd = builder.build();
|
||||||
final HRegionInfo[] regions = ModifyRegionUtils.createHRegionInfos(htd, null);
|
final HRegionInfo[] regions = ModifyRegionUtils.createHRegionInfos(htd, null);
|
||||||
|
|
||||||
|
|
|
@ -192,7 +192,7 @@ public class TestRegionSnapshotTask {
|
||||||
.setMemStoreFlushSize(5000)
|
.setMemStoreFlushSize(5000)
|
||||||
.setRegionSplitPolicyClassName(ConstantSizeRegionSplitPolicy.class.getName())
|
.setRegionSplitPolicyClassName(ConstantSizeRegionSplitPolicy.class.getName())
|
||||||
.setMaxFileSize(100 * 1024 * 1024)
|
.setMaxFileSize(100 * 1024 * 1024)
|
||||||
.setConfiguration("hbase.hstore.compactionThreshold", "250");
|
.setValue("hbase.hstore.compactionThreshold", "250");
|
||||||
|
|
||||||
TableDescriptor td = builder.build();
|
TableDescriptor td = builder.build();
|
||||||
byte[] fam = Bytes.toBytes("fam");
|
byte[] fam = Bytes.toBytes("fam");
|
||||||
|
|
Loading…
Reference in New Issue