You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Zhihong Yu (Issue Comment Edited) (JIRA)" <ji...@apache.org> on 2012/01/04 18:04:39 UTC

[jira] [Issue Comment Edited] (HBASE-5121) MajorCompaction may affect scan's correctness

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

Zhihong Yu edited comment on HBASE-5121 at 1/4/12 5:04 PM:
-----------------------------------------------------------

{code}
+        this.lastTop = null;
+        LOG.debug("Storescanner.peek() is changed where before = "
+            + this.lastTop.toString() + ",and after = "
{code}
Should null assignment for lastTop be after the debug log ?
                
      was (Author: zhihyu@ebaysf.com):
    Should null assignment for lastTop be after the debug log ?
                  
> MajorCompaction may affect scan's correctness
> ---------------------------------------------
>
>                 Key: HBASE-5121
>                 URL: https://issues.apache.org/jira/browse/HBASE-5121
>             Project: HBase
>          Issue Type: Bug
>          Components: regionserver
>            Reporter: chunhui shen
>         Attachments: hbase-5121.patch
>
>
> In our test, there are two families' keyvalue for one row.
> But we could find a infrequent problem when doing scan's next if majorCompaction happens concurrently.
> In the client's two continuous doing scan.next():
> 1.First time, scan's next returns the result where family A is null.
> 2.Second time, scan's next returns the result where family B is null.
> The two next()'s result have the same row.
> If there are more families, I think the scenario will be more strange...
> We find the reason is that storescanner.peek() is changed after majorCompaction if there are delete type KeyValue.
> This change causes the PriorityQueue<KeyValueScanner> of RegionScanner's heap is not sure to be sorted.

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