Zephyr Guo created HBASE-20157: ---------------------------------- Summary: WAL file might get broken Key: HBASE-20157 URL: https://issues.apache.org/jira/browse/HBASE-20157 Project: HBase Issue Type: Bug Components: wal Affects Versions: 1.1.0 Reporter: Zephyr Guo Assignee: Zephyr Guo Fix For: 2.0.0
WAL file can get corrupted by HBASE-16824. When calling Writer.close() and Writer.sync() in the same time, a HDFS bug(HDFS-13243) will be triggered. And, if this did happen, the last block in WAL will get broken(NN mark it as CorruptBlock). My purpose of reporting this scenario here is to help those who come across the same problem like me. (HBASE-16824 has been fixed, though) {panel:title=RS log} 2018-02-05 07:58:54,212 INFO [regionserver/hb-j5e517al6xib80rkb-004.hbase.rds.aliyuncs.com/10.0.0.218:16020.logRoller] hdfs.DFSClient: Could not complete /hbase/WALs/hb-j5e517al6xib80rkb-004.hbase.rds.aliyuncs.com,16020,1517453470107/hb-j5e517al6xib80rkb-004.hbase.rds.aliyuncs.com%2C16020%2C1517453470107.default.1517788719683 retrying... 2018-02-05 07:59:00,612 INFO [regionserver/hb-j5e517al6xib80rkb-004.hbase.rds.aliyuncs.com/10.0.0.218:16020.logRoller] hdfs.DFSClient: Could not complete /hbase/WALs/hb-j5e517al6xib80rkb-004.hbase.rds.aliyuncs.com,16020,1517453470107/hb-j5e517al6xib80rkb-004.hbase.rds.aliyuncs.com%2C16020%2C1517453470107.default.1517788719683 retrying... {panel} {panel:title=NN log} 2018-02-05 07:58:48,011 INFO org.apache.hadoop.hdfs.StateChange: BLOCK* fsync: /hbase/WALs/hb-j5e517al6xib80rkb-004.hbase.rds.aliyuncs.com,16020,1517453470107/hb-j5e517al6xib80rkb-004.hbase.rds.aliyuncs.com%2C16020%2C1517453470107.default.1517788719683 for DFSClient_NONMAPREDUCE_1109936977_1 2018-02-05 07:58:48,011 INFO org.apache.hadoop.hdfs.server.namenode.FSNamesystem: BLOCK* blk_1080650145_6909339\{UCState=COMMITTED, truncateBlock=null, primaryNodeIndex=-1, replicas=[ReplicaUC[[DISK]DS-a4e579e7-4721-4c22-9b61-f1d00b33c45f:NORMAL:10.0.0.218:50010|RBW], ReplicaUC[[DISK]DS-5d3d7878-876d-4a5a-97bc-5535c4cf8d59:NORMAL:10.0.0.220:50010|RBW], ReplicaUC[[DISK]DS-ccc314b2-e2ad-4c1f-99a5-a39e3677a83b:NORMAL:10.0.0.221:50010|RBW]]} is not COMPLETE (ucState = COMMITTED, replication# = 0 < minimum = 2) in file /hbase/WALs/hb-j5e517al6xib80rkb-004.hbase.rds.aliyuncs.com,16020,1517453470107/hb-j5e517al6xib80rkb-004.hbase.rds.aliyuncs.com%2C16020%2C1517453470107.default.1517788719683 2018-02-05 07:58:48,111 INFO BlockStateChange: BLOCK NameSystem.addToCorruptReplicasMap: blk_1080650145 added as corrupt on 10.0.0.221:50010 by hb-j5e517al6xib80rkb-005.hbase.rds.aliyuncs.com/10.0.0.221 because block is COMMITTED and reported length 1957330 does not match length in block map 80594 2018-02-05 07:58:48,224 INFO BlockStateChange: BLOCK NameSystem.addToCorruptReplicasMap: blk_1080650145 added as corrupt on 10.0.0.218:50010 by hb-j5e517al6xib80rkb-004.hbase.rds.aliyuncs.com/10.0.0.218 because block is COMMITTED and reported length 1957330 does not match length in block map 80594 2018-02-05 07:58:48,224 INFO BlockStateChange: BLOCK NameSystem.addToCorruptReplicasMap: blk_1080650145 added as corrupt on 10.0.0.220:50010 by hb-j5e517al6xib80rkb-003.hbase.rds.aliyuncs.com/10.0.0.220 because block is COMMITTED and reported length 1957330 does not match length in block map 80594 2018-02-05 07:58:48,511 INFO org.apache.hadoop.hdfs.server.namenode.FSNamesystem: BLOCK* blk_1080650145_6909339\{UCState=COMMITTED, truncateBlock=null, primaryNodeIndex=-1, replicas=[ReplicaUC[[DISK]DS-a4e579e7-4721-4c22-9b61-f1d00b33c45f:NORMAL:10.0.0.218:50010|RBW], ReplicaUC[[DISK]DS-5d3d7878-876d-4a5a-97bc-5535c4cf8d59:NORMAL:10.0.0.220:50010|RBW], ReplicaUC[[DISK]DS-ccc314b2-e2ad-4c1f-99a5-a39e3677a83b:NORMAL:10.0.0.221:50010|RBW]]} is not COMPLETE (ucState = COMMITTED, replication# = 3 >= minimum = 2) in file /hbase/WALs/hb-j5e517al6xib80rkb-004.hbase.rds.aliyuncs.com,16020,1517453470107/hb-j5e517al6xib80rkb-004.hbase.rds.aliyuncs.com%2C16020%2C1517453470107.default.1517788719683 {panel} -- This message was sent by Atlassian JIRA (v7.6.3#76005)