Alexey Karpov created PHOENIX-4606:
--------------------------------------

             Summary: SELECT DISTINCT cause OutOfOrderScannerNextException
                 Key: PHOENIX-4606
                 URL: https://issues.apache.org/jira/browse/PHOENIX-4606
             Project: Phoenix
          Issue Type: Bug
    Affects Versions: 4.7.0
            Reporter: Alexey Karpov


I am getting below exception in SELECT DISTINCT query if I use DISTINCT on 
VARCHAR column and there is a value with length more then 32 767 symbols. Same 
for GROUP BY operator.

The exception dissappears if I either delete this long value or use 
DISTINCT(SUBSTR(description, 0, 32767)).

I use HDP 2.6.4 and Phoenix 4.7

 Full exception:

org.apache.phoenix.iterate.BaseResultIterators: Failed to execute task during 
cancel

java.util.concurrent.ExecutionException: 
org.apache.phoenix.exception.PhoenixIOException: Failed after retry of 
OutOfOrderScannerNextException: was there a rpc timeout?

               at java.util.concurrent.FutureTask.report(FutureTask.java:122)

               at java.util.concurrent.FutureTask.get(FutureTask.java:192)

               at 
org.apache.phoenix.iterate.BaseResultIterators.close(BaseResultIterators.java:900)

               at 
org.apache.phoenix.iterate.BaseResultIterators.getIterators(BaseResultIterators.java:836)

               at 
org.apache.phoenix.iterate.BaseResultIterators.getIterators(BaseResultIterators.java:719)

               at 
org.apache.phoenix.iterate.MergeSortResultIterator.getMinHeap(MergeSortResultIterator.java:72)

               at 
org.apache.phoenix.iterate.MergeSortResultIterator.minIterator(MergeSortResultIterator.java:93)

               at 
org.apache.phoenix.iterate.MergeSortResultIterator.next(MergeSortResultIterator.java:58)

               at 
org.apache.phoenix.iterate.BaseGroupedAggregatingResultIterator.next(BaseGroupedAggregatingResultIterator.java:64)

               at 
org.apache.phoenix.jdbc.PhoenixResultSet.next(PhoenixResultSet.java:778)

               at 
org.apache.calcite.avatica.jdbc.JdbcResultSet.frame(JdbcResultSet.java:148)

               at 
org.apache.calcite.avatica.jdbc.JdbcResultSet.create(JdbcResultSet.java:101)

               at 
org.apache.calcite.avatica.jdbc.JdbcResultSet.create(JdbcResultSet.java:81)

               at 
org.apache.calcite.avatica.jdbc.JdbcMeta.prepareAndExecute(JdbcMeta.java:740)

               at 
org.apache.calcite.avatica.remote.LocalService.apply(LocalService.java:219)

               at 
org.apache.calcite.avatica.remote.Service$PrepareAndExecuteRequest.accept(Service.java:928)

               at 
org.apache.calcite.avatica.remote.Service$PrepareAndExecuteRequest.accept(Service.java:880)

               at 
org.apache.calcite.avatica.remote.AbstractHandler.apply(AbstractHandler.java:94)

               at 
org.apache.calcite.avatica.remote.ProtobufHandler.apply(ProtobufHandler.java:46)

               at 
org.apache.calcite.avatica.server.AvaticaProtobufHandler.handle(AvaticaProtobufHandler.java:127)

               at 
org.apache.phoenix.shaded.org.eclipse.jetty.server.handler.HandlerList.handle(HandlerList.java:52)

               at 
org.apache.phoenix.shaded.org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)

               at 
org.apache.phoenix.shaded.org.eclipse.jetty.server.Server.handle(Server.java:499)

               at 
org.apache.phoenix.shaded.org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311)

               at 
org.apache.phoenix.shaded.org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)

               at 
org.apache.phoenix.shaded.org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:544)

               at 
org.apache.phoenix.shaded.org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)

               at 
org.apache.phoenix.shaded.org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)

               at java.lang.Thread.run(Thread.java:745)

Caused by: org.apache.phoenix.exception.PhoenixIOException: Failed after retry 
of OutOfOrderScannerNextException: was there a rpc timeout?

               at 
org.apache.phoenix.util.ServerUtil.parseServerException(ServerUtil.java:115)

               at 
org.apache.phoenix.iterate.TableResultIterator.next(TableResultIterator.java:165)

               at 
org.apache.phoenix.iterate.OrderedResultIterator.getResultIterator(OrderedResultIterator.java:254)

               at 
org.apache.phoenix.iterate.OrderedResultIterator.peek(OrderedResultIterator.java:277)

               at 
org.apache.phoenix.iterate.ParallelIterators$1.call(ParallelIterators.java:117)

               at 
org.apache.phoenix.iterate.ParallelIterators$1.call(ParallelIterators.java:106)

               at java.util.concurrent.FutureTask.run(FutureTask.java:266)

               at 
org.apache.phoenix.job.JobManager$InstrumentedJobFutureTask.run(JobManager.java:183)

               at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)

               at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)

               ... 1 more

Caused by: org.apache.phoenix.exception.PhoenixIOException: Failed after retry 
of OutOfOrderScannerNextException: was there a rpc timeout?

               at 
org.apache.phoenix.util.ServerUtil.parseServerException(ServerUtil.java:115)

               at 
org.apache.phoenix.iterate.ScanningResultIterator.next(ScanningResultIterator.java:65)

               at 
org.apache.phoenix.iterate.TableResultIterator.next(TableResultIterator.java:158)

               ... 9 more

Caused by: org.apache.hadoop.hbase.DoNotRetryIOException: Failed after retry of 
OutOfOrderScannerNextException: was there a rpc timeout?

               at 
org.apache.hadoop.hbase.client.ClientScanner.loadCache(ClientScanner.java:501)

               at 
org.apache.hadoop.hbase.client.ClientScanner.next(ClientScanner.java:371)

               at 
org.apache.phoenix.iterate.ScanningResultIterator.next(ScanningResultIterator.java:55)

               ... 10 more

Caused by: org.apache.hadoop.hbase.exceptions.OutOfOrderScannerNextException: 
org.apache.hadoop.hbase.exceptions.OutOfOrderScannerNextException: Expected 
nextCallSeq: 1 But the nextCallSeq got from client: 0; request=scanner_id: 3155 
number_of_rows: 1000 close_scanner: false next_call_seq: 0 
client_handles_partials: true client_handles_heartbeats: true renew: false

               at 
org.apache.hadoop.hbase.regionserver.RSRpcServices.scan(RSRpcServices.java:2400)

               at 
org.apache.hadoop.hbase.protobuf.generated.ClientProtos$ClientService$2.callBlockingMethod(ClientProtos.java:32385)

               at 
org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2150)

               at 
org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:112)

               at 
org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:187)

               at 
org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:167)

 

               at 
sun.reflect.GeneratedConstructorAccessor11.newInstance(Unknown Source)

               at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)

               at 
java.lang.reflect.Constructor.newInstance(Constructor.java:423)

               at 
org.apache.hadoop.ipc.RemoteException.instantiateException(RemoteException.java:106)

               at 
org.apache.hadoop.ipc.RemoteException.unwrapRemoteException(RemoteException.java:95)

               at 
org.apache.hadoop.hbase.protobuf.ProtobufUtil.getRemoteException(ProtobufUtil.java:334)

               at 
org.apache.hadoop.hbase.client.ScannerCallable.call(ScannerCallable.java:261)

               at 
org.apache.hadoop.hbase.client.ScannerCallable.call(ScannerCallable.java:63)

               at 
org.apache.hadoop.hbase.client.RpcRetryingCaller.callWithoutRetries(RpcRetryingCaller.java:211)

               at 
org.apache.hadoop.hbase.client.ScannerCallableWithReplicas$RetryingRPC.call(ScannerCallableWithReplicas.java:396)

               at 
org.apache.hadoop.hbase.client.ScannerCallableWithReplicas$RetryingRPC.call(ScannerCallableWithReplicas.java:370)

               at 
org.apache.hadoop.hbase.client.RpcRetryingCaller.callWithRetries(RpcRetryingCaller.java:136)

               at 
org.apache.hadoop.hbase.client.ResultBoundedCompletionService$QueueingFuture.run(ResultBoundedCompletionService.java:80)

               ... 3 more

Caused by: 
org.apache.hadoop.hbase.ipc.RemoteWithExtrasException(org.apache.hadoop.hbase.exceptions.OutOfOrderScannerNextException):
 org.apache.hadoop.hbase.exceptions.OutOfOrderScannerNextException: Expected 
nextCallSeq: 1 But the nextCallSeq got from client: 0; request=scanner_id: 3155 
number_of_rows: 1000 close_scanner: false next_call_seq: 0 
client_handles_partials: true client_handles_heartbeats: true renew: false

               at 
org.apache.hadoop.hbase.regionserver.RSRpcServices.scan(RSRpcServices.java:2400)

               at 
org.apache.hadoop.hbase.protobuf.generated.ClientProtos$ClientService$2.callBlockingMethod(ClientProtos.java:32385)

               at 
org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2150)

               at 
org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:112)

               at 
org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:187)

               at 
org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:167)

 

               at 
org.apache.hadoop.hbase.ipc.RpcClientImpl.call(RpcClientImpl.java:1227)

               at 
org.apache.hadoop.hbase.ipc.AbstractRpcClient.callBlockingMethod(AbstractRpcClient.java:213)

               at 
org.apache.hadoop.hbase.ipc.AbstractRpcClient$BlockingRpcChannelImplementation.callBlockingMethod(AbstractRpcClient.java:287)

               at 
org.apache.hadoop.hbase.protobuf.generated.ClientProtos$ClientService$BlockingStub.scan(ClientProtos.java:32831)

               at 
org.apache.hadoop.hbase.client.ScannerCallable.call(ScannerCallable.java:219)



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to