Support Questions

Find answers, ask questions, and share your expertise

Hbase

avatar
Explorer

When I turn off the computer and start HBase again.The following problems arise.How can I do?

 

2021-05-20 17:19:00,425 WARN  [master/rhel145-2-fgos:16000:becomeActiveMaster] regionserver.HRegion: Failed initialize of region= master:store,,1.1595e783b53d99cd5eef43b6debb2682., starting to roll back memstore
java.io.EOFException: Cannot seek after EOF
	at org.apache.hadoop.hdfs.DFSInputStream.seek(DFSInputStream.java:1648)
	at org.apache.hadoop.fs.FSDataInputStream.seek(FSDataInputStream.java:66)
	at org.apache.hadoop.hbase.regionserver.wal.ProtobufLogReader.initInternal(ProtobufLogReader.java:211)
	at org.apache.hadoop.hbase.regionserver.wal.ProtobufLogReader.initReader(ProtobufLogReader.java:173)
	at org.apache.hadoop.hbase.regionserver.wal.ReaderBase.init(ReaderBase.java:64)
	at org.apache.hadoop.hbase.regionserver.wal.ProtobufLogReader.init(ProtobufLogReader.java:168)
	at org.apache.hadoop.hbase.wal.WALFactory.createReader(WALFactory.java:323)
	at org.apache.hadoop.hbase.wal.WALFactory.createReader(WALFactory.java:305)
	at org.apache.hadoop.hbase.wal.WALFactory.createReader(WALFactory.java:293)
	at org.apache.hadoop.hbase.wal.WALFactory.createReader(WALFactory.java:429)
	at org.apache.hadoop.hbase.regionserver.HRegion.replayRecoveredEdits(HRegion.java:4859)
	at org.apache.hadoop.hbase.regionserver.HRegion.replayRecoveredEditsIfAny(HRegion.java:4765)
	at org.apache.hadoop.hbase.regionserver.HRegion.initializeRegionInternals(HRegion.java:1014)
	at org.apache.hadoop.hbase.regionserver.HRegion.initialize(HRegion.java:956)
	at org.apache.hadoop.hbase.regionserver.HRegion.openHRegion(HRegion.java:7496)
	at org.apache.hadoop.hbase.regionserver.HRegion.openHRegionFromTableDir(HRegion.java:7454)
	at org.apache.hadoop.hbase.master.region.MasterRegion.open(MasterRegion.java:269)
	at org.apache.hadoop.hbase.master.region.MasterRegion.create(MasterRegion.java:309)
	at org.apache.hadoop.hbase.master.region.MasterRegionFactory.create(MasterRegionFactory.java:104)
	at org.apache.hadoop.hbase.master.HMaster.finishActiveMasterInitialization(HMaster.java:949)
	at org.apache.hadoop.hbase.master.HMaster.startActiveMasterManager(HMaster.java:2240)
	at org.apache.hadoop.hbase.master.HMaster.lambda$run$0(HMaster.java:622)
	at java.lang.Thread.run(Thread.java:748)
2021-05-20 17:19:01,239 ERROR [main] master.HMasterCommandLine: Master exiting
java.lang.RuntimeException: HMaster Aborted
	at org.apache.hadoop.hbase.master.HMasterCommandLine.startMaster(HMasterCommandLine.java:244)
	at org.apache.hadoop.hbase.master.HMasterCommandLine.run(HMasterCommandLine.java:140)
	at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:76)
	at org.apache.hadoop.hbase.util.ServerCommandLine.doMain(ServerCommandLine.java:149)
	at org.apache.hadoop.hbase.master.HMaster.main(HMaster.java:3072)

 

 

 

 

1 ACCEPTED SOLUTION

avatar
Super Collaborator

Hello @dcy 

 

Thanks for using Cloudera Community. Based on the Synopsis, the Master isn't starting for HBase after you turned off the Computer & started HBase again.

 

  • You haven't stated the Version of HBase yet I am suspecting the WAL of the RegionServers involved have issues, causing the concerned issue. Verify whether the HDFS Fsck Report on the WAL & MasterProcWAL files is Healthy. 
  • When HBase starts, the WAL of the RegionServers are Split to be replayed & we suspect the WAL Files are having issues, causing the concerned "Cannot Seek After EoF".
  • As you mentioned the Setup being on a Computer, Try Sidelining the WAL Directory of RegionServer(s) & MasterProcWALs to prevent any replay of WAL & any Master Procedures, followed by restarting the HBase Service.
  • The Location of of WAL & MasterProcWAL would be {hbase-rootdir}/WALs & {hbase-rootdir}/MasterProcWALs.
  • Note that Sidelining the WAL have the possibility of Data Loss, if any WAL contains Data which isn't persisted to Disk yet. 

 

Kindly review & let us know if the above works. 

 

- Smarak

View solution in original post

2 REPLIES 2

avatar
Super Collaborator

Hello @dcy 

 

Thanks for using Cloudera Community. Based on the Synopsis, the Master isn't starting for HBase after you turned off the Computer & started HBase again.

 

  • You haven't stated the Version of HBase yet I am suspecting the WAL of the RegionServers involved have issues, causing the concerned issue. Verify whether the HDFS Fsck Report on the WAL & MasterProcWAL files is Healthy. 
  • When HBase starts, the WAL of the RegionServers are Split to be replayed & we suspect the WAL Files are having issues, causing the concerned "Cannot Seek After EoF".
  • As you mentioned the Setup being on a Computer, Try Sidelining the WAL Directory of RegionServer(s) & MasterProcWALs to prevent any replay of WAL & any Master Procedures, followed by restarting the HBase Service.
  • The Location of of WAL & MasterProcWAL would be {hbase-rootdir}/WALs & {hbase-rootdir}/MasterProcWALs.
  • Note that Sidelining the WAL have the possibility of Data Loss, if any WAL contains Data which isn't persisted to Disk yet. 

 

Kindly review & let us know if the above works. 

 

- Smarak

avatar
Explorer

thank you very much