You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by zh...@apache.org on 2024/09/28 07:30:16 UTC
(hbase) branch master updated: HBASE-21540 when set property "hbase.systemtables.compacting.memstore.type" to "basic" or "eager" will cause an exception
This is an automated email from the ASF dual-hosted git repository.
zhangduo pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hbase.git
The following commit(s) were added to refs/heads/master by this push:
new 810db3dfcb5 HBASE-21540 when set property "hbase.systemtables.compacting.memstore.type" to "basic" or "eager" will cause an exception
810db3dfcb5 is described below
commit 810db3dfcb5dd27779d5203dac41ac2e637a5f46
Author: 李小保 <li...@mininglamp.com>
AuthorDate: Wed Feb 27 19:30:02 2019 +0800
HBASE-21540 when set property "hbase.systemtables.compacting.memstore.type" to "basic" or "eager" will cause an exception
Signed-off-by: Duo Zhang <zh...@apache.org>
(cherry picked from commit 699fad39a471601f8ecea0bb136dea07a334355d)
---
.../java/org/apache/hadoop/hbase/regionserver/HStore.java | 2 +-
.../org/apache/hadoop/hbase/regionserver/TestHStore.java | 14 ++++++++++++++
2 files changed, 15 insertions(+), 1 deletion(-)
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HStore.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HStore.java
index f2b0fa69190..814a57a6330 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HStore.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HStore.java
@@ -361,7 +361,7 @@ public class HStore
MemoryCompactionPolicy inMemoryCompaction = null;
if (this.getTableName().isSystemTable()) {
inMemoryCompaction = MemoryCompactionPolicy
- .valueOf(conf.get("hbase.systemtables.compacting.memstore.type", "NONE"));
+ .valueOf(conf.get("hbase.systemtables.compacting.memstore.type", "NONE").toUpperCase());
} else {
inMemoryCompaction = getColumnFamilyDescriptor().getInMemoryCompaction();
}
diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHStore.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHStore.java
index 80e09663223..3c7bcd8b255 100644
--- a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHStore.java
+++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHStore.java
@@ -88,6 +88,7 @@ import org.apache.hadoop.hbase.HBaseTestingUtil;
import org.apache.hadoop.hbase.HConstants;
import org.apache.hadoop.hbase.KeyValue;
import org.apache.hadoop.hbase.MemoryCompactionPolicy;
+import org.apache.hadoop.hbase.NamespaceDescriptor;
import org.apache.hadoop.hbase.PrivateCellUtil;
import org.apache.hadoop.hbase.TableName;
import org.apache.hadoop.hbase.client.ColumnFamilyDescriptor;
@@ -1912,6 +1913,19 @@ public class TestHStore {
assertFalse(storeScanner.isScanUsePread());
}
+ @Test
+ public void testInMemoryCompactionTypeWithLowerCase() throws IOException, InterruptedException {
+ Configuration conf = HBaseConfiguration.create();
+ conf.set("hbase.systemtables.compacting.memstore.type", "eager");
+ init(name.getMethodName(), conf,
+ TableDescriptorBuilder.newBuilder(
+ TableName.valueOf(NamespaceDescriptor.SYSTEM_NAMESPACE_NAME, "meta".getBytes())),
+ ColumnFamilyDescriptorBuilder.newBuilder(family)
+ .setInMemoryCompaction(MemoryCompactionPolicy.NONE).build());
+ assertTrue(((MemStoreCompactor) ((CompactingMemStore) store.memstore).compactor).toString()
+ .startsWith("eager".toUpperCase()));
+ }
+
@Test
public void testSpaceQuotaChangeAfterReplacement() throws IOException {
final TableName tn = TableName.valueOf(name.getMethodName());