You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Jeongmin Kim (JIRA)" <ji...@apache.org> on 2019/08/12 07:53:00 UTC

[jira] [Updated] (HBASE-22835) Scan/Get with setColumn and the store with ROWCOL bloom filter could throw AssertionError

     [ https://issues.apache.org/jira/browse/HBASE-22835?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jeongmin Kim updated HBASE-22835:
---------------------------------
    Summary: Scan/Get with setColumn and the store with ROWCOL bloom filter could throw AssertionError  (was: Scan/Get with setColumn to the store with ROWCOL bloom filter throws AssertionError of scan order check)

> Scan/Get with setColumn and the store with ROWCOL bloom filter could throw AssertionError
> -----------------------------------------------------------------------------------------
>
>                 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.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.
> Exact same testcase included. And changed StoreScanner due to the difference of codes.



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)