chunhui shen created HBASE-6335:
-----------------------------------
Summary: Switching log-splitting policy after last failure master
start may cause data loss
Key: HBASE-6335
URL: https://issues.apache.org/jira/browse/HBASE-6335
Project: HBase
Issue Type: Bug
Components: master
Affects Versions: 0.94.0, 0.92.1
Reporter: chunhui shen
Assignee: chunhui shen
How happen?
If server A is down, and it hase three log files, all the data is from one
region.
File 1: kv01 kv02 kv03
File 2: kv04 kv05 kv06
File 3: kv07 kv08 kv09
Here,kv01 means, its log seqID is 01
Case:Switch to maste-local-log-splitting from distributed-log-splitting
1.Master find serverA is down, and start to split its log files using
split-log-splitting.
2.Successfully split log file2, and move it to oldLogs, and generate one edit
file named 06 in region recover.edits dir.
3.Master restart, and change the log-splitting policy to
maste-local-log-splitting , and start to split file 1, file 3
4.Successfully split log file1 and file3, and generate one edit file named 09
in region recover.edits dir.
5.Region replay edits from edit file 06 and 09, Region's seqID is 06 after it
replay edits from 06, and when replaying edit from 09, it will skip
kv01,kv02,kv03, So these data loss.
As the above case, if we switch to distributed-log-splitting from
maste-local-log-splitting, it could also cause data loss
Should we fix this bug or avoid the case? I'm not sure...
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira