hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "chunhui shen (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (HBASE-6335) Switching log-splitting policy after last failure master start may cause data loss
Date Fri, 06 Jul 2012 05:17:33 GMT

     [ https://issues.apache.org/jira/browse/HBASE-6335?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

chunhui shen updated HBASE-6335:
--------------------------------

    Description: 
How happen?

If server A is down, and it has 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...

  was:
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...

    
> 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.92.1, 0.94.0
>            Reporter: chunhui shen
>            Assignee: chunhui shen
>
> How happen?
> If server A is down, and it has 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

        

Mime
View raw message