[ https://issues.apache.org/jira/browse/HBASE-25371?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17251001#comment-17251001 ]
Mohammad Arshad commented on HBASE-25371: ----------------------------------------- Issue is because of sequence number is used before it is initialized So one solution could be initialize the sequence number before all sanity checks checkCompression, checkEncryption and checkClassLoading. But this is not appropriate as too many things are done during initialization, those validations must be done first. Another point is, is it really required to write sequence id file when region open is failed. IMHO it is not required. Sequence id file writing is skipped if close is called with abort flag true. *I think in case region open failed close should be called with abort flag true.* {code:java} } catch(Throwable t) { // By coprocessor path wrong region will open failed, // MetricsRegionWrapperImpl is already init and not close, // add region close when open failed this.close(true); throw t; }{code} > When openRegion fails during initial verification(before initializing and > setting seq num), exception is observed during region close. > -------------------------------------------------------------------------------------------------------------------------------------- > > Key: HBASE-25371 > URL: https://issues.apache.org/jira/browse/HBASE-25371 > Project: HBase > Issue Type: Bug > Components: Region Assignment > Affects Versions: 2.2.3 > Reporter: Ajeet Rai > Assignee: Sanjeet Nishad > Priority: Major > > When openRegion fails during initial verification(before initializing and > setting seq num), exception is observed during region close: > > 2020-12-03 16:34:47,133 ERROR > [RS_OPEN_REGION-regionserver/AAAAAAAAAA:16040-0] handler.OpenRegionHandler: > Failed open of > region=ns2:testtable4,00000000000000000000150000,1606912406234.cd386135276b7d3c57416df3666e4aea.2020-12-03 > 16:34:47,133 ERROR [RS_OPEN_REGION-regionserver/blrphispra01054:16040-0] > handler.OpenRegionHandler: Failed open of > region=ns2:testtable4,00000000000000000000150000,1606912406234.cd386135276b7d3c57416df3666e4aea.java.io.IOException: > The new max sequence id 1 is less than the old max sequence id 7134 at > org.apache.hadoop.hbase.wal.WALSplitUtil.writeRegionSequenceIdFile(WALSplitUtil.java:418) > at > org.apache.hadoop.hbase.regionserver.HRegion.writeRegionCloseMarker(HRegion.java:1253) > at org.apache.hadoop.hbase.regionserver.HRegion.doClose(HRegion.java:1793) > at org.apache.hadoop.hbase.regionserver.HRegion.close(HRegion.java:1606) at > org.apache.hadoop.hbase.regionserver.HRegion.close(HRegion.java:1552) at > org.apache.hadoop.hbase.regionserver.HRegion.openHRegion(HRegion.java:7522) > at > org.apache.hadoop.hbase.regionserver.HRegion.openHRegion(HRegion.java:7467) > at > org.apache.hadoop.hbase.regionserver.HRegion.openHRegion(HRegion.java:7439) > at > org.apache.hadoop.hbase.regionserver.HRegion.openHRegion(HRegion.java:7397) > at > org.apache.hadoop.hbase.regionserver.HRegion.openHRegion(HRegion.java:7348) > at > org.apache.hadoop.hbase.regionserver.handler.OpenRegionHandler.openRegion(OpenRegionHandler.java:286) > at > org.apache.hadoop.hbase.regionserver.handler.OpenRegionHandler.process(OpenRegionHandler.java:111) > 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) > -- This message was sent by Atlassian Jira (v8.3.4#803005)