hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ramkrishna.s.vasudevan (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (HBASE-6059) Replaying recovered edits would make deleted data exist again
Date Mon, 21 May 2012 11:00:42 GMT

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

ramkrishna.s.vasudevan edited comment on HBASE-6059 at 5/21/12 10:59 AM:
-------------------------------------------------------------------------

@Chunhui
This is a damn good one.  But still i find one problem is there in this.  A similar type of
problem that you have reported. Pls correct me if am wrong.
In the same test case in the place where you are deleting the row 'r1' if i delete the row
'r2' also
{edit}
In the same test case in the place where you are deleting the row 'r1' if i delete the row
'r' also
{edit}
{code}
del = new Delete(Bytes.toBytes("r"));
    htable.delete(del);
    resultScanner = htable.getScanner(new Scan());
    count = 0;
    while (resultScanner.next() != null) {
      count++;
    }
{code}
Now my seq id from the store files will be 0 only as nothing to get after major compaction.
So still the same problem is occuring.  I tried to simulate this with the same test case that
you added. 
May be we need someother way to know that the edit has been deleted out by a major compaction?
Because as i see this problem that without major compaction there is no issue at all.
                
      was (Author: ram_krish):
    @Chunhui
This is a damn good one.  But still i find one problem is there in this.  A similar type of
problem that you have reported. Pls correct me if am wrong.
In the same test case in the place where you are deleting the row 'r1' if i delete the row
'r2' also
{code}
del = new Delete(Bytes.toBytes("r"));
    htable.delete(del);
    resultScanner = htable.getScanner(new Scan());
    count = 0;
    while (resultScanner.next() != null) {
      count++;
    }
{code}
Now my seq id from the store files will be 0 only as nothing to get after major compaction.
So still the same problem is occuring.  I tried to simulate this with the same test case that
you added. 
May be we need someother way to know that the edit has been deleted out by a major compaction?
Because as i see this problem that without major compaction there is no issue at all.
                  
> Replaying recovered edits would make deleted data exist again
> -------------------------------------------------------------
>
>                 Key: HBASE-6059
>                 URL: https://issues.apache.org/jira/browse/HBASE-6059
>             Project: HBase
>          Issue Type: Bug
>          Components: regionserver
>            Reporter: chunhui shen
>            Assignee: chunhui shen
>         Attachments: HBASE-6059-testcase.patch, HBASE-6059.patch
>
>
> When we replay recovered edits, we used the minSeqId of Store, It may cause deleted data
appeared again.
> Let's see how it happens. Suppose the region with two families(cf1,cf2)
> 1.put one data to the region (put r1,cf1:q1,v1)
> 2.move the region from server A to server B.
> 3.delete the data put by step 1(delete r1)
> 4.flush this region.
> 5.make major compaction for this region
> 6.move the region from server B to server A.
> 7.Abort server A
> 8.After the region is online, we could get the deleted data(r1,cf1:q1,v1)
> (When we replay recovered edits, we used the minSeqId of Store, because cf2 has no store
files, so its seqId is 0, so the edit log of put data will be replayed to the region)

--
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