Josh Elser created HBASE-26267: ---------------------------------- Summary: Master initialization fails if Master Region WAL dir is missing Key: HBASE-26267 URL: https://issues.apache.org/jira/browse/HBASE-26267 Project: HBase Issue Type: Improvement Components: master Affects Versions: 2.4.6 Reporter: Josh Elser Assignee: Josh Elser Fix For: 2.5.0, 3.0.0-alpha-2, 2.4.7
>From a recent branch-2.4 build: {noformat} 2021-09-07 19:31:19,666 ERROR [master/localhost:16000:becomeActiveMaster] master.HMaster(159): ***** ABORTING master localhost,16000,1631057476442: Unhandled exception. Starting shutdown. ***** java.io.FileNotFoundException: File hdfs://localhost:8020/hbase-2.4-wals/MasterData/WALs does not exist. at org.apache.hadoop.hdfs.DistributedFileSystem.listStatusInternal(DistributedFileSystem.java:1059) at org.apache.hadoop.hdfs.DistributedFileSystem.access$1000(DistributedFileSystem.java:131) at org.apache.hadoop.hdfs.DistributedFileSystem$24.doCall(DistributedFileSystem.java:1119) at org.apache.hadoop.hdfs.DistributedFileSystem$24.doCall(DistributedFileSystem.java:1116) at org.apache.hadoop.fs.FileSystemLinkResolver.resolve(FileSystemLinkResolver.java:81) at org.apache.hadoop.hdfs.DistributedFileSystem.listStatus(DistributedFileSystem.java:1126) at org.apache.hadoop.hbase.master.region.MasterRegion.open(MasterRegion.java:226) at org.apache.hadoop.hbase.master.region.MasterRegion.create(MasterRegion.java:303) at org.apache.hadoop.hbase.master.region.MasterRegionFactory.create(MasterRegionFactory.java:104) at org.apache.hadoop.hbase.master.HMaster.finishActiveMasterInitialization(HMaster.java:839) at org.apache.hadoop.hbase.master.HMaster.startActiveMasterManager(HMaster.java:2189) at org.apache.hadoop.hbase.master.HMaster.lambda$run$0(HMaster.java:512) at java.lang.Thread.run(Thread.java:748) {noformat} If the WAL directory is missing but the Master Region already exists, we will try to list the contents of the Master Region's WAL directory which may or may not exist. If we simply check to make sure the directory exists and then the rest of the initialization code works as expected. -- This message was sent by Atlassian Jira (v8.3.4#803005)