hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jimmy Xiang (JIRA)" <j...@apache.org>
Subject [jira] [Created] (HBASE-9821) Scanner id could collide
Date Tue, 22 Oct 2013 21:33:51 GMT
Jimmy Xiang created HBASE-9821:
----------------------------------

             Summary: Scanner id could collide
                 Key: HBASE-9821
                 URL: https://issues.apache.org/jira/browse/HBASE-9821
             Project: HBase
          Issue Type: Bug
            Reporter: Jimmy Xiang
            Assignee: Jimmy Xiang
            Priority: Minor


We use a random number as our scanner id.  In one server, we guarantee that the scanner id
is unique.  However, it is not guaranteed among different servers.  When a region server restarts
quickly, we could run into some scanner id collision issue.

In one of my run:

{noformat}
2013-10-21 22:43:09,071 INFO  [RpcServer.handler=2,port=36020] regionserver.HRegionServer:
Client tried to access missing scanner 4305495321392639779
2013-10-21 22:43:09,056 INFO  [RpcServer.handler=0,port=36020] regionserver.HRegionServer:
Client tried to access missing scanner 4871518173034616791
2013-10-21 22:43:09,054 INFO  [RpcServer.handler=29,port=36020] regionserver.HRegionServer:
Client tried to access missing scanner 2494346173615963501
2013-10-21 22:43:09,046 INFO  [RpcServer.handler=28,port=36020] regionserver.HRegionServer:
Client tried to access missing scanner 8522578499834310167
2013-10-21 22:43:09,037 INFO  [RpcServer.handler=27,port=36020] regionserver.HRegionServer:
Client tried to access missing scanner 6621035169671703961
2013-10-21 22:43:09,011 ERROR [RpcServer.handler=20,port=36020] regionserver.HRegionServer:
org.apache.hadoop.hbase.exceptions.OutOfOrderScannerNextException: Expected nextCallSeq: 18
But the nextCallSeq got from client: 4470; request=scanner_id: 848804760654927372 number_of_rows:
100 close_scanner: false next_call_seq: 4470
        at org.apache.hadoop.hbase.regionserver.HRegionServer.scan(HRegionServer.java:3030)
        at org.apache.hadoop.hbase.protobuf.generated.ClientProtos$ClientService$2.callBlockingMethod(ClientProtos.java:27022)
        at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:1979)
        at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:90)
        at org.apache.hadoop.hbase.ipc.SimpleRpcScheduler.consumerLoop(SimpleRpcScheduler.java:160)
        at org.apache.hadoop.hbase.ipc.SimpleRpcScheduler.access$000(SimpleRpcScheduler.java:38)
        at org.apache.hadoop.hbase.ipc.SimpleRpcScheduler$1.run(SimpleRpcScheduler.java:110)
        at java.lang.Thread.run(Thread.java:724)
2013-10-21 22:43:09,000 INFO  [RpcServer.handler=25,port=36020] regionserver.HRegionServer:
Client tried to access missing scanner 4162107982028594792
{noformat}

Normally, the nextCallSeq can not be that different between the expected (18) and the one
sent over from client (4470).  It must be because the new server happens to use the same scanner
id.




--
This message was sent by Atlassian JIRA
(v6.1#6144)

Mime
View raw message