hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Hudson (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-12931) The existing KeyValues in memstore are not removed completely after inserting cell into memStore
Date Wed, 11 Mar 2015 15:42:38 GMT

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

Hudson commented on HBASE-12931:
--------------------------------

FAILURE: Integrated in HBase-0.98 #891 (See [https://builds.apache.org/job/HBase-0.98/891/])
HBASE-12931 The existing KeyValues in memstore are not removed completely after inserting
cell into memStore (ChiaPing Tsai) (tedyu: rev d4e82006940bb2df94810350217a7a2df55eca0e)
* hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestMemStore.java
* hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/MemStore.java


> The existing KeyValues in memstore are not removed completely after inserting cell into
memStore 
> -------------------------------------------------------------------------------------------------
>
>                 Key: HBASE-12931
>                 URL: https://issues.apache.org/jira/browse/HBASE-12931
>             Project: HBase
>          Issue Type: Bug
>            Reporter: ChiaPing Tsai
>            Assignee: ChiaPing Tsai
>            Priority: Minor
>             Fix For: 2.0.0, 1.0.1, 1.1.0, 0.98.12
>
>         Attachments: 12931-0.98.txt, HBASE-12931.patch
>
>
> If I'm not wrong, the UPSERT method of memStore should remove all existing KeyValues
except the newer version.
> In memStore,
> {code:title=DefaultMemStore.java|borderStyle=solid}
> int versIionsVisible = 0;
> ...
> if (cur.getTypeByte() == KeyValue.Type.Put.getCode() &&
>             cur.getSequenceId() <= readpoint) {
>           if (versionsVisible > 1) {
>             // if we get here we have seen at least one version visible to the oldest
scanner,
>             // which means we can prove that no scanner will see this version
>             // false means there was a change, so give us the size.
>             long delta = heapSizeChange(cur, true);
>             addedSize -= delta;
>             this.size.addAndGet(-delta);
>             it.remove();
>             setOldestEditTimeToNow();
>           } else {
>             versionsVisible++;
>           }
> {code}
> Does "versionsVisible > 1" should be changed to "versionsVisible >= 1" ?
> thanks.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message