[
https://issues.apache.org/jira/browse/HBASE-20795?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Gavin updated HBASE-20795:
--------------------------
Comment: was deleted
(was: A comment with security level 'jira-users' was removed.)
> Allow option in BBKVComparator.compare to do comparison without sequence id
> ---------------------------------------------------------------------------
>
> Key: HBASE-20795
> URL: https://issues.apache.org/jira/browse/HBASE-20795
> Project: HBase
> Issue Type: Bug
> Affects Versions: 2.0.1
> Reporter: Ankit Singhal
> Assignee: Ankit Singhal
> Priority: Major
> Fix For: 3.0.0, 2.1.0, 2.0.2
>
> Attachments: HBASE-20795.patch
>
>
> CellComparatorImpl#compare(final Cell a, final Cell b, boolean
> ignoreSequenceid) needs to ignore sequence id in comparison if
> ignoreSequenceId parameter is set to true but BBKVComparator.compare used
> internally for the cell of type ByteBufferKeyValue doesn't consider this.
> {code}
> @Override
> public int compare(final Cell a, final Cell b, boolean ignoreSequenceid) {
> int diff = 0;
> // "Peel off" the most common path.
> if (a instanceof ByteBufferKeyValue && b instanceof ByteBufferKeyValue) {
> diff = BBKVComparator.compare((ByteBufferKeyValue)a,
> (ByteBufferKeyValue)b);
> if (diff != 0) {
> return diff;
> }
> } else {
> diff = compareRows(a, b);
> if (diff != 0) {
> return diff;
> }
> diff = compareWithoutRow(a, b);
> if (diff != 0) {
> return diff;
> }
> }
> // Negate following comparisons so later edits show up first mvccVersion:
> later sorts first
> return ignoreSequenceid? diff: Long.compare(b.getSequenceId(),
> a.getSequenceId());
> }
> {code}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)