You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Anoop Sam John (JIRA)" <ji...@apache.org> on 2016/02/15 09:07:18 UTC

[jira] [Commented] (HBASE-14046) IllegalArgumentException: Negative position from hfile.bucket.FileIOEngine.read

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

Anoop Sam John commented on HBASE-14046:
----------------------------------------

When this issue came, configured hbase.bucketcache.bucket.sizes to non default values?  Seeing the code in converting long offset into an int baseOffset and one byte value, we have expectation on the bucket sizes.  It has to multiple of 1024..  For other values seems we will get incorrect results..   Did not try to reproduce a -ve case.

> IllegalArgumentException: Negative position from hfile.bucket.FileIOEngine.read
> -------------------------------------------------------------------------------
>
>                 Key: HBASE-14046
>                 URL: https://issues.apache.org/jira/browse/HBASE-14046
>             Project: HBase
>          Issue Type: Bug
>          Components: BucketCache, regionserver
>    Affects Versions: 0.98.6
>         Environment: CentOS release 6.4 X86_64
>            Reporter: louis hust
>            Assignee: ramkrishna.s.vasudevan
>            Priority: Critical
>
> When I scan a table using hbase shell, got the following message:
> {code:bash}
> hbase(main):001:0> scan 'atpco:ttf_record6'
> ROW                                              COLUMN+CELL
> ERROR: org.apache.hadoop.hbase.exceptions.OutOfOrderScannerNextException: Expected nextCallSeq: 1 But the nextCallSeq got from client: 0; request=scanner_id: 201542113 number_of_rows: 100 close_scanner: false next_call_seq: 0
> 	at org.apache.hadoop.hbase.regionserver.HRegionServer.scan(HRegionServer.java:3193)
> 	at org.apache.hadoop.hbase.protobuf.generated.ClientProtos$ClientService$2.callBlockingMethod(ClientProtos.java:29587)
> 	at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2031)
> 	at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:108)
> 	at org.apache.hadoop.hbase.ipc.RpcExecutor.consumerLoop(RpcExecutor.java:114)
> 	at org.apache.hadoop.hbase.ipc.RpcExecutor$1.run(RpcExecutor.java:94)
> 	at java.lang.Thread.run(Thread.java:744)
> {code}
> And the region server got the following error:
> {code}
> 2015-06-30 11:08:11,877 ERROR [B.defaultRpcServer.handler=27,queue=0,port=60020] ipc.RpcServer: Unexpected throwable object
> java.lang.IllegalArgumentException: Negative position
>         at sun.nio.ch.FileChannelImpl.read(FileChannelImpl.java:675)
>         at org.apache.hadoop.hbase.io.hfile.bucket.FileIOEngine.read(FileIOEngine.java:87)
>         at org.apache.hadoop.hbase.io.hfile.bucket.BucketCache.getBlock(BucketCache.java:406)
>         at org.apache.hadoop.hbase.io.hfile.LruBlockCache.getBlock(LruBlockCache.java:389)
>         at org.apache.hadoop.hbase.io.hfile.HFileReaderV2.readBlock(HFileReaderV2.java:359)
>         at org.apache.hadoop.hbase.io.hfile.HFileReaderV2$AbstractScannerV2.readNextDataBlock(HFileReaderV2.java:635)
>         at org.apache.hadoop.hbase.io.hfile.HFileReaderV2$ScannerV2.next(HFileReaderV2.java:749)
>         at org.apache.hadoop.hbase.regionserver.StoreFileScanner.next(StoreFileScanner.java:136)
>         at org.apache.hadoop.hbase.regionserver.KeyValueHeap.next(KeyValueHeap.java:108)
>         at org.apache.hadoop.hbase.regionserver.StoreScanner.next(StoreScanner.java:507)
>         at org.apache.hadoop.hbase.regionserver.KeyValueHeap.next(KeyValueHeap.java:140)
>         at org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.populateResult(HRegion.java:3900)
>         at org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.nextInternal(HRegion.java:3980)
>         at org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.nextRaw(HRegion.java:3858)
>         at org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.nextRaw(HRegion.java:3849)
>         at org.apache.hadoop.hbase.regionserver.HRegionServer.scan(HRegionServer.java:3245)
>         at org.apache.hadoop.hbase.protobuf.generated.ClientProtos$ClientService$2.callBlockingMethod(ClientProtos.java:29587)
>         at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2031)
>         at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:108)
> {code}
> It seems something wrong with the BucketCache.



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