richardstartin edited a comment on issue #8008:
URL: https://github.com/apache/pinot/issues/8008#issuecomment-1011502590
This can be reproduced on airline stats:
```explain plan for select * from airlineStats where AirlineID=0 and
ArrDelay >= 0 limit 10```
```
ProcessingException(errorCode:450, message:InternalError:
java.io.IOException: Failed : HTTP error code : 500
at
org.apache.pinot.controller.api.resources.PinotQueryResource.sendPostRaw(PinotQueryResource.java:305)
at
org.apache.pinot.controller.api.resources.PinotQueryResource.sendRequestRaw(PinotQueryResource.java:343)
at
org.apache.pinot.controller.api.resources.PinotQueryResource.getQueryResponse(PinotQueryResource.java:225)
at
org.apache.pinot.controller.api.resources.PinotQueryResource.handlePostSql(PinotQueryResource.java:137))
```
here's the root cause:
```
2022/01/12 22:17:44.034 ERROR [PinotClientRequest]
[jersey-server-managed-async-executor-6] Caught exception while processing POST
request
java.util.NoSuchElementException: null
at java.util.HashMap$HashIterator.nextNode(HashMap.java:1495) ~[?:?]
at java.util.HashMap$EntryIterator.next(HashMap.java:1526) ~[?:?]
at java.util.HashMap$EntryIterator.next(HashMap.java:1524) ~[?:?]
at
org.apache.pinot.core.query.reduce.ExplainPlanDataTableReducer.reduceAndSetResults(ExplainPlanDataTableReducer.java:53)
~[classes/:?]
at
org.apache.pinot.core.query.reduce.BrokerReduceService.reduceOnDataTable(BrokerReduceService.java:108)
~[classes/:?]
at
org.apache.pinot.broker.requesthandler.SingleConnectionBrokerRequestHandler.processBrokerRequest(SingleConnectionBrokerRequestHandler.java:119)
~[classes/:?]
at
org.apache.pinot.broker.requesthandler.BaseBrokerRequestHandler.handleSQLRequest(BaseBrokerRequestHandler.java:524)
~[classes/:?]
at
org.apache.pinot.broker.requesthandler.BaseBrokerRequestHandler.handleRequest(BaseBrokerRequestHandler.java:194)
~[classes/:?]
at
org.apache.pinot.broker.requesthandler.BaseBrokerRequestHandler.handleRequest(BaseBrokerRequestHandler.java:102)
~[classes/:?]
at
org.apache.pinot.broker.api.resources.PinotClientRequest.processSqlQueryPost(PinotClientRequest.java:191)
~[classes/:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
~[?:?]
at
jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
~[?:?]
at
jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
~[?:?]
at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
at
org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory.lambda$static$0(ResourceMethodInvocationHandlerFactory.java:52)
~[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:124)
~[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:167)
~[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$VoidOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:159)
~[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:79)
~[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:469)
~[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.server.model.ResourceMethodInvoker.lambda$apply$0(ResourceMethodInvoker.java:381)
~[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.server.ServerRuntime$AsyncResponder$2$1.run(ServerRuntime.java:819)
[jersey-server-2.28.jar:?]
at org.glassfish.jersey.internal.Errors$1.call(Errors.java:248)
[jersey-common-2.28.jar:?]
at org.glassfish.jersey.internal.Errors$1.call(Errors.java:244)
[jersey-common-2.28.jar:?]
at org.glassfish.jersey.internal.Errors.process(Errors.java:292)
[jersey-common-2.28.jar:?]
at org.glassfish.jersey.internal.Errors.process(Errors.java:274)
[jersey-common-2.28.jar:?]
at org.glassfish.jersey.internal.Errors.process(Errors.java:244)
[jersey-common-2.28.jar:?]
at
org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:265)
[jersey-common-2.28.jar:?]
at
org.glassfish.jersey.server.ServerRuntime$AsyncResponder$2.run(ServerRuntime.java:814)
[jersey-server-2.28.jar:?]
at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) [?:?]
at java.util.concurrent.FutureTask.run(FutureTask.java:264) [?:?]
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
[?:?]
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
[?:?]
at java.lang.Thread.run(Thread.java:829) [?:?]
2022/01/12 22:17:44.042 ERROR [PinotQueryResource] [grizzly-http-server-21]
Caught exception while sending query request
java.io.IOException: Failed : HTTP error code : 500
at
org.apache.pinot.controller.api.resources.PinotQueryResource.sendPostRaw(PinotQueryResource.java:305)
~[classes/:?]
at
org.apache.pinot.controller.api.resources.PinotQueryResource.sendRequestRaw(PinotQueryResource.java:343)
~[classes/:?]
at
org.apache.pinot.controller.api.resources.PinotQueryResource.getQueryResponse(PinotQueryResource.java:225)
~[classes/:?]
at
org.apache.pinot.controller.api.resources.PinotQueryResource.handlePostSql(PinotQueryResource.java:137)
~[classes/:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
~[?:?]
at
jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
~[?:?]
at
jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
~[?:?]
at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
at
org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory.lambda$static$0(ResourceMethodInvocationHandlerFactory.java:52)
~[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:124)
[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:167)
[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$TypeOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:219)
[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:79)
[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:469)
[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:391)
[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:80)
[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:253)
[jersey-server-2.28.jar:?]
at org.glassfish.jersey.internal.Errors$1.call(Errors.java:248)
[jersey-common-2.28.jar:?]
at org.glassfish.jersey.internal.Errors$1.call(Errors.java:244)
[jersey-common-2.28.jar:?]
at org.glassfish.jersey.internal.Errors.process(Errors.java:292)
[jersey-common-2.28.jar:?]
at org.glassfish.jersey.internal.Errors.process(Errors.java:274)
[jersey-common-2.28.jar:?]
at org.glassfish.jersey.internal.Errors.process(Errors.java:244)
[jersey-common-2.28.jar:?]
at
org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:265)
[jersey-common-2.28.jar:?]
at
org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:232)
[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:679)
[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.grizzly2.httpserver.GrizzlyHttpContainer.service(GrizzlyHttpContainer.java:353)
[jersey-container-grizzly2-http-2.28.jar:?]
at
org.glassfish.grizzly.http.server.HttpHandler$1.run(HttpHandler.java:200)
[grizzly-http-server-2.4.4.jar:2.4.4]
at
org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:569)
[grizzly-framework-2.4.4.jar:2.4.4]
at
org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:549)
[grizzly-framework-2.4.4.jar:2.4.4]
at java.lang.Thread.run(Thread.java:829) [?:?]
2022/01/12 22:17:44.043 ERROR [PinotQueryResource] [grizzly-http-server-21]
Caught exception in sendQueryRaw
java.io.IOException: Failed : HTTP error code : 500
at
org.apache.pinot.controller.api.resources.PinotQueryResource.sendPostRaw(PinotQueryResource.java:305)
~[classes/:?]
at
org.apache.pinot.controller.api.resources.PinotQueryResource.sendRequestRaw(PinotQueryResource.java:343)
~[classes/:?]
at
org.apache.pinot.controller.api.resources.PinotQueryResource.getQueryResponse(PinotQueryResource.java:225)
~[classes/:?]
at
org.apache.pinot.controller.api.resources.PinotQueryResource.handlePostSql(PinotQueryResource.java:137)
~[classes/:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
~[?:?]
at
jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
~[?:?]
at
jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
~[?:?]
at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
at
org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory.lambda$static$0(ResourceMethodInvocationHandlerFactory.java:52)
~[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:124)
[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:167)
[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$TypeOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:219)
[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:79)
[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:469)
[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:391)
[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:80)
[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:253)
[jersey-server-2.28.jar:?]
at org.glassfish.jersey.internal.Errors$1.call(Errors.java:248)
[jersey-common-2.28.jar:?]
at org.glassfish.jersey.internal.Errors$1.call(Errors.java:244)
[jersey-common-2.28.jar:?]
at org.glassfish.jersey.internal.Errors.process(Errors.java:292)
[jersey-common-2.28.jar:?]
at org.glassfish.jersey.internal.Errors.process(Errors.java:274)
[jersey-common-2.28.jar:?]
at org.glassfish.jersey.internal.Errors.process(Errors.java:244)
[jersey-common-2.28.jar:?]
at
org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:265)
[jersey-common-2.28.jar:?]
at
org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:232)
[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:679)
[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.grizzly2.httpserver.GrizzlyHttpContainer.service(GrizzlyHttpContainer.java:353)
[jersey-container-grizzly2-http-2.28.jar:?]
at
org.glassfish.grizzly.http.server.HttpHandler$1.run(HttpHandler.java:200)
[grizzly-http-server-2.4.4.jar:2.4.4]
at
org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:569)
[grizzly-framework-2.4.4.jar:2.4.4]
at
org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:549)
[grizzly-framework-2.4.4.jar:2.4.4]
at java.lang.Thread.run(Thread.java:829) [?:?]
2022/01/12 22:17:44.043 ERROR [PinotQueryResource] [grizzly-http-server-21]
Caught exception while processing post request
java.io.IOException: Failed : HTTP error code : 500
at
org.apache.pinot.controller.api.resources.PinotQueryResource.sendPostRaw(PinotQueryResource.java:305)
~[classes/:?]
at
org.apache.pinot.controller.api.resources.PinotQueryResource.sendRequestRaw(PinotQueryResource.java:343)
~[classes/:?]
at
org.apache.pinot.controller.api.resources.PinotQueryResource.getQueryResponse(PinotQueryResource.java:225)
~[classes/:?]
at
org.apache.pinot.controller.api.resources.PinotQueryResource.handlePostSql(PinotQueryResource.java:137)
~[classes/:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
~[?:?]
at
jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
~[?:?]
at
jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
~[?:?]
at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
at
org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory.lambda$static$0(ResourceMethodInvocationHandlerFactory.java:52)
~[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:124)
[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:167)
[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$TypeOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:219)
[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:79)
[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:469)
[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:391)
[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:80)
[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:253)
[jersey-server-2.28.jar:?]
at org.glassfish.jersey.internal.Errors$1.call(Errors.java:248)
[jersey-common-2.28.jar:?]
at org.glassfish.jersey.internal.Errors$1.call(Errors.java:244)
[jersey-common-2.28.jar:?]
at org.glassfish.jersey.internal.Errors.process(Errors.java:292)
[jersey-common-2.28.jar:?]
at org.glassfish.jersey.internal.Errors.process(Errors.java:274)
[jersey-common-2.28.jar:?]
at org.glassfish.jersey.internal.Errors.process(Errors.java:244)
[jersey-common-2.28.jar:?]
at
org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:265)
[jersey-common-2.28.jar:?]
at
org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:232)
[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:679)
[jersey-server-2.28.jar:?]
at
org.glassfish.jersey.grizzly2.httpserver.GrizzlyHttpContainer.service(GrizzlyHttpContainer.java:353)
[jersey-container-grizzly2-http-2.28.jar:?]
at
org.glassfish.grizzly.http.server.HttpHandler$1.run(HttpHandler.java:200)
[grizzly-http-server-2.4.4.jar:2.4.4]
at
org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:569)
[grizzly-framework-2.4.4.jar:2.4.4]
at
org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:549)
[grizzly-framework-2.4.4.jar:2.4.4]
at java.lang.Thread.run(Thread.java:829) [?:?]
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]