You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@bookkeeper.apache.org by "Hadoop QA (JIRA)" <ji...@apache.org> on 2013/04/09 10:54:16 UTC

[jira] [Commented] (BOOKKEEPER-584) Data loss when ledger metadata is overwritten

    [ https://issues.apache.org/jira/browse/BOOKKEEPER-584?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13626405#comment-13626405 ] 

Hadoop QA commented on BOOKKEEPER-584:
--------------------------------------

Testing JIRA BOOKKEEPER-584


Patch [BOOKKEEPER-584.diff|https://issues.apache.org/jira/secure/attachment/12577715/BOOKKEEPER-584.diff] downloaded at Tue Apr  9 08:23:11 UTC 2013

----------------------------

{color:green}+1 PATCH_APPLIES{color}
{color:green}+1 CLEAN{color}
{color:green}+1 RAW_PATCH_ANALYSIS{color}
.    {color:green}+1{color} the patch does not introduce any @author tags
.    {color:green}+1{color} the patch does not introduce any tabs
.    {color:green}+1{color} the patch does not introduce any trailing spaces
.    {color:green}+1{color} the patch does not introduce any line longer than 120
.    {color:green}+1{color} the patch does adds/modifies 2 testcase(s)
{color:green}+1 RAT{color}
.    {color:green}+1{color} the patch does not seem to introduce new RAT warnings
{color:green}+1 JAVADOC{color}
.    {color:green}+1{color} the patch does not seem to introduce new Javadoc warnings
{color:green}+1 COMPILE{color}
.    {color:green}+1{color} HEAD compiles
.    {color:green}+1{color} patch compiles
.    {color:green}+1{color} the patch does not seem to introduce new javac warnings
{color:green}+1 FINDBUGS{color}
.    {color:green}+1{color} the patch does not seem to introduce new Findbugs warnings
{color:green}+1 TESTS{color}
.    Tests run: 834
{color:green}+1 DISTRO{color}
.    {color:green}+1{color} distro tarball builds with the patch 

----------------------------
{color:green}*+1 Overall result, good!, no -1s*{color}


The full output of the test-patch run is available at

.   https://builds.apache.org/job/bookkeeper-trunk-precommit-build/322/
                
> Data loss when ledger metadata is overwritten
> ---------------------------------------------
>
>                 Key: BOOKKEEPER-584
>                 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-584
>             Project: Bookkeeper
>          Issue Type: Bug
>          Components: bookkeeper-client
>    Affects Versions: 4.2.0
>            Reporter: Sijie Guo
>            Assignee: Sijie Guo
>            Priority: Critical
>             Fix For: 4.3.0
>
>         Attachments: BOOKKEEPER-584.diff, BOOKKEEPER-584.diff
>
>
> this is an issue introduced when fixing BOOKKEEPER-337. the original #resolveConflicts logic was removed by just checking state and current ensemble, which tends to fixing multiple bookies changed in same ensemble.
> the issue could be reproduce by a test case in following steps:
> 1. Ledger L writing several entries to ensemble A, B, C.
> 2. C succeed, B failed with slow responses and A failed with unrecoverable issue.
> 3. L would fail all the pending add ops and close the ledger with lastEntryId = -1. (since no add operations succeed).
> 4. The ownership of this Ledger is released and transferred to other machines (it is the normal use case for Hedwig).
> 5. the new owner tried to open Ledger L and recover the ensemble, suppose A, B is back to normal at this case. so L is closed with lastEntryId is not -1.
> 6. the old owner although closed the ledger, but doesn't blocking the responses for already failed pending add ops. so failures for B would kick in some ensemble changes and since the ledger metadata is already changed by new owner, so it needs to resolve the conflicts and update the ledger metadata with lastEntryId = -1 again. so we get different lastEntryId at different time, which cause inconsistency and data loss.
> for details of this sequence, a test case could describe it more clearly.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira