[ https://issues.apache.org/jira/browse/HBASE-22529?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16948340#comment-16948340 ]
Toshihiro Suzuki edited comment on HBASE-22529 at 10/10/19 1:36 PM: -------------------------------------------------------------------- It looks like the patch is needed to be rebased. [~junegunn] was (Author: brfrn169): It looks like the patch is needed to be rebase. [~junegunn] > Sanity check for in-memory compaction policy > -------------------------------------------- > > Key: HBASE-22529 > URL: https://issues.apache.org/jira/browse/HBASE-22529 > Project: HBase > Issue Type: Bug > Affects Versions: 2.1.4 > Reporter: Junegunn Choi > Assignee: Junegunn Choi > Priority: Minor > Attachments: HBASE-22529-v2.patch, HBASE-22529.patch > > > Currently, if a column family is altered with an invalid in-memory compaction > policy via {{Admin}} API, the regions for the table get stuck indefinitely. > {noformat} > Failed open of region=###### > java.io.IOException: java.lang.IllegalArgumentException: No enum constant > org.apache.hadoop.hbase.MemoryCompactionPolicy.INVALID > at > org.apache.hadoop.hbase.regionserver.HRegion.initializeStores(HRegion.java:1081) > at > org.apache.hadoop.hbase.regionserver.HRegion.initializeRegionInternals(HRegion.java:942) > at > org.apache.hadoop.hbase.regionserver.HRegion.initialize(HRegion.java:898) > at > org.apache.hadoop.hbase.regionserver.HRegion.openHRegion(HRegion.java:7241) > at > org.apache.hadoop.hbase.regionserver.HRegion.openHRegion(HRegion.java:7200) > at > org.apache.hadoop.hbase.regionserver.HRegion.openHRegion(HRegion.java:7172) > at > org.apache.hadoop.hbase.regionserver.HRegion.openHRegion(HRegion.java:7130) > at > org.apache.hadoop.hbase.regionserver.HRegion.openHRegion(HRegion.java:7081) > at > org.apache.hadoop.hbase.regionserver.handler.OpenRegionHandler.openRegion(OpenRegionHandler.java:283) > at > org.apache.hadoop.hbase.regionserver.handler.OpenRegionHandler.process(OpenRegionHandler.java:108) > at > org.apache.hadoop.hbase.executor.EventHandler.run(EventHandler.java:104) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > at java.lang.Thread.run(Thread.java:748) > Caused by: java.lang.IllegalArgumentException: No enum constant > org.apache.hadoop.hbase.MemoryCompactionPolicy.INVALID > at java.lang.Enum.valueOf(Enum.java:238) > at > org.apache.hadoop.hbase.MemoryCompactionPolicy.valueOf(MemoryCompactionPolicy.java:26) > at > org.apache.hadoop.hbase.client.ColumnFamilyDescriptorBuilder$ModifyableColumnFamilyDescriptor.lambda$getInMemoryCompaction$4(ColumnFamilyDescriptorBuilder.java:869) > at > org.apache.hadoop.hbase.client.ColumnFamilyDescriptorBuilder$ModifyableColumnFamilyDescriptor.lambda$getStringOrDefault$0(ColumnFamilyDescriptorBuilder.java:703) > at > org.apache.hadoop.hbase.client.ColumnFamilyDescriptorBuilder$ModifyableColumnFamilyDescriptor.getOrDefault(ColumnFamilyDescriptorBuilder.java:711) > at > org.apache.hadoop.hbase.client.ColumnFamilyDescriptorBuilder$ModifyableColumnFamilyDescriptor.getStringOrDefault(ColumnFamilyDescriptorBuilder.java:703) > at > org.apache.hadoop.hbase.client.ColumnFamilyDescriptorBuilder$ModifyableColumnFamilyDescriptor.getInMemoryCompaction(ColumnFamilyDescriptorBuilder.java:868) > at > org.apache.hadoop.hbase.regionserver.HStore.getMemstore(HStore.java:350) > at org.apache.hadoop.hbase.regionserver.HStore.<init>(HStore.java:278) > at > org.apache.hadoop.hbase.regionserver.HRegion.instantiateHStore(HRegion.java:5728) > at > org.apache.hadoop.hbase.regionserver.HRegion$1.call(HRegion.java:1045) > at > org.apache.hadoop.hbase.regionserver.HRegion$1.call(HRegion.java:1042) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > ... 3 more > {noformat} > This patch adds a sanity check for the value so that such alter operation > should not proceed. -- This message was sent by Atlassian Jira (v8.3.4#803005)