[
https://issues.apache.org/jira/browse/HBASE-22835?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16913877#comment-16913877
]
Reid Chan commented on HBASE-22835:
-----------------------------------
Pushed to branch-1.3
> Scan/Get with setColumn and the store with ROWCOL bloom filter could throw
> AssertionError (backport of HBASE-19863)
> --------------------------------------------------------------------------------------------------------------------
>
> Key: HBASE-22835
> URL: https://issues.apache.org/jira/browse/HBASE-22835
> Project: HBase
> Issue Type: Bug
> Affects Versions: 1.3.5
> Reporter: Jeongmin Kim
> Priority: Major
> Fix For: 1.3.6
>
> Attachments: HBASE-22835.branch-1.3.patch,
> HBASE-22835.v2.branch-1.3.patch, HBASE-22835.v3.branch-1.3.patch,
> HBASE-22835.v4.branch-1.3.patch
>
>
> Scan/Get with setColumn and the store with ROWCOL bloom filter could throw
> AssertionError of scan order check.
> which is resolved by HBASE-19863 for 1.4, 2.x, or later version.
> A same bug exists in branch 1.3 and older, and also my cluster suffered from
> the same problem.
>
> When ROWCOL bloomFilter is enabled and fake cell is the prevCell,
> actual hfs offset can be behind, in this case heap.next() is not enough. it
> requires reseek to find right next cell.
> {code:java}
> java.lang.AssertionError: Key
> key167/0:C09/OLDEST_TIMESTAMP/Minimum/vlen=0/seqid=0 followed by a smaller
> key key167/0:C04/1565596231736/Put/vlen=3/seqid=4 in cf 0 at
> org.apache.hadoop.hbase.regionserver.StoreScanner.checkScanOrder(StoreScanner.java:969)
> at
> org.apache.hadoop.hbase.regionserver.StoreScanner.next(StoreScanner.java:551)
> at
> org.apache.hadoop.hbase.regionserver.KeyValueHeap.next(KeyValueHeap.java:150)
> at
> org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.populateResult(HRegion.java:6144)
> at
> org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.nextInternal(HRegion.java:6307)
> at
> org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.nextRaw(HRegion.java:6081)
> at
> org.apache.hadoop.hbase.regionserver.RSRpcServices.scan(RSRpcServices.java:2755)
> at
> org.apache.hadoop.hbase.regionserver.RSRpcServices.scan(RSRpcServices.java:2957)
> at
> org.apache.hadoop.hbase.protobuf.generated.ClientProtos$ClientService$2.callBlockingMethod(ClientProtos.java:35072)
> at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2394) at
> org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:123) at
> org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:188) at
> org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:168)
> {code}
> I created a backport patch of -HBASE-19863 and *HBASE-17958*-.
> Exact same testcase included. And changed StoreScanner due to the difference
> of codes.
--
This message was sent by Atlassian Jira
(v8.3.2#803003)