You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Hudson (JIRA)" <ji...@apache.org> on 2015/07/23 00:49:32 UTC
[jira] [Commented] (HBASE-13922) Do not reset mvcc in compactions
for mob-enabled column
[ https://issues.apache.org/jira/browse/HBASE-13922?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14637847#comment-14637847 ]
Hudson commented on HBASE-13922:
--------------------------------
FAILURE: Integrated in HBase-TRUNK #6672 (See [https://builds.apache.org/job/HBase-TRUNK/6672/])
HBASE-13922 Do not reset mvcc in compactions for mob-enabled column.(Jingcheng Du) (anoopsamjohn: rev 3f062ee23668020c15f9d06a966a0978ca9373f6)
* hbase-server/src/main/java/org/apache/hadoop/hbase/mob/DefaultMobStoreCompactor.java
* hbase-server/src/test/java/org/apache/hadoop/hbase/mob/compactions/TestMobCompactor.java
> Do not reset mvcc in compactions for mob-enabled column
> -------------------------------------------------------
>
> Key: HBASE-13922
> URL: https://issues.apache.org/jira/browse/HBASE-13922
> Project: HBase
> Issue Type: Sub-task
> Components: mob
> Affects Versions: hbase-11339
> Reporter: Jingcheng Du
> Assignee: Jingcheng Du
> Fix For: hbase-11339
>
> Attachments: HBASE-13922.patch
>
>
> In major compaction, the mvcc of cells ( whose mvcc<=readPt) are set to 0.
> In some cases, this brings issues, for example the following scenario:
> # We have mob enabled cf, the threshold is 5 bytes.
> # Add a cell (r0,ts0,seqId=5,"mobValue0"), and flush it to a mob file.
> # Add another cell (r0,ts0,seqId=10,"new"), and flush the memstore, this is not a mob cell since it's value is smaller than 5 bytes.
> # Add the third cell (r1:ts1:seqId =15, "mobValue1"), and flush it to a mob file. Now we have two mob files.
> # Now run a major compaction in hfiles, we got two cells left (r0:ts0:seqId=0,"new") and (r1:ts1:seqId=0,'mobValue1").
> # Now run a mob major compaction, two mob files are merged into one. The update ref cell is bulk loaded back to hbase, they are (r0,ts0,seqId=5,"mobValue0") and (r1:ts1:seqId=0,"mobValue1").
> # Now open a scanner, the value of r0 is mobValue0 whereas the correct value new.
> This issue is caused by the mvcc reset in compactions. We should disable it in compactions for mob-enabled columns.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)