ans76 opened a new issue #7497: Use dsql query caught exception after 
HadoopIndexTask finished
URL: https://github.com/apache/incubator-druid/issues/7497
 
 
   ### Affected Version
   
   druid-0.13.0-incubating
   
   ### Description
   
   When HadoopIndexTask ingestion completely, query via REST interface is fine. 
but got error when use dsql query
   
   ```
   java.lang.RuntimeException: Error while applying rule DruidTableScanRule, 
args [rel#51787:LogicalTableScan.NONE.[](table=[druid, ad_action])]             
                                             
   ```
   
   #### StackTrace
   ```
   2019-04-17T14:36:14,190 WARN [qtp1869400026-156] 
org.apache.druid.sql.http.SqlResource - Failed to handle query: 
SqlQuery{query='select count(1) from ds_sensor', resultFormat=OBJECT, 
header=false, context={}}
   java.lang.RuntimeException: Error while applying rule DruidTableScanRule, 
args [rel#51787:LogicalTableScan.NONE.[](table=[druid, ds_sensor])]
           at 
org.apache.calcite.plan.volcano.VolcanoRuleCall.onMatch(VolcanoRuleCall.java:236)
 ~[calcite-core-1.17.0.jar:1.17.0]
           at 
org.apache.calcite.plan.volcano.VolcanoPlanner.findBestExp(VolcanoPlanner.java:646)
 ~[calcite-core-1.17.0.jar:1.17.0]
           at 
org.apache.calcite.tools.Programs$RuleSetProgram.run(Programs.java:339) 
~[calcite-core-1.17.0.jar:1.17.0]
           at 
org.apache.calcite.tools.Programs$SequenceProgram.run(Programs.java:358) 
~[calcite-core-1.17.0.jar:1.17.0]
           at 
org.apache.calcite.prepare.PlannerImpl.transform(PlannerImpl.java:337) 
~[calcite-core-1.17.0.jar:1.17.0]
           at 
org.apache.druid.sql.calcite.planner.DruidPlanner.planWithDruidConvention(DruidPlanner.java:160)
 ~[druid-sql-0.13.0-incubating.jar:0.13.0-incubating]
           at 
org.apache.druid.sql.calcite.planner.DruidPlanner.plan(DruidPlanner.java:128) 
~[druid-sql-0.13.0-incubating.jar:0.13.0-incubating]
           at 
org.apache.druid.sql.calcite.planner.DruidPlanner.plan(DruidPlanner.java:97) 
~[druid-sql-0.13.0-incubating.jar:0.13.0-incubating]
           at org.apache.druid.sql.http.SqlResource.doPost(SqlResource.java:88) 
[druid-sql-0.13.0-incubating.jar:0.13.0-incubating]
           at sun.reflect.GeneratedMethodAccessor54.invoke(Unknown Source) 
~[?:?]
           at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 ~[?:1.8.0_131]
           at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_131]
           at 
com.sun.jersey.spi.container.JavaMethodInvokerFactory$1.invoke(JavaMethodInvokerFactory.java:60)
 [jersey-server-1.19.3.jar:1.19.3]
           at 
com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider$ResponseOutInvoker._dispatch(AbstractResourceMethodDispatchProvider.java:205)
 [jersey-server-1.19.3.jar:1.19.3]
           at 
com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:75)
 [jersey-server-1.19.3.jar:1.19.3]
           at 
com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:302)
 [jersey-server-1.19.3.jar:1.19.3]
           at 
com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept(ResourceClassRule.java:108)
 [jersey-server-1.19.3.jar:1.19.3]
           at 
com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147)
 [jersey-server-1.19.3.jar:1.19.3]
           at 
com.sun.jersey.server.impl.uri.rules.RootResourceClassesRule.accept(RootResourceClassesRule.java:84)
 [jersey-server-1.19.3.jar:1.19.3]
           at 
com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1542)
 [jersey-server-1.19.3.jar:1.19.3]
           at 
com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1473)
 [jersey-server-1.19.3.jar:1.19.3]
           at 
com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1419)
 [jersey-server-1.19.3.jar:1.19.3]
           at 
com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1409)
 [jersey-server-1.19.3.jar:1.19.3]
           at 
com.sun.jersey.spi.container.servlet.WebComponent.service(WebComponent.java:409)
 [jersey-servlet-1.19.3.jar:1.19.3]
           at 
com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:558)
 [jersey-servlet-1.19.3.jar:1.19.3]
           at 
com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:733)
 [jersey-servlet-1.19.3.jar:1.19.3]
           at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) 
[javax.servlet-api-3.1.0.jar:3.1.0]
           at 
com.google.inject.servlet.ServletDefinition.doServiceImpl(ServletDefinition.java:286)
 [guice-servlet-4.1.0.jar:?]
           at 
com.google.inject.servlet.ServletDefinition.doService(ServletDefinition.java:276)
 [guice-servlet-4.1.0.jar:?]
           at 
com.google.inject.servlet.ServletDefinition.service(ServletDefinition.java:181) 
[guice-servlet-4.1.0.jar:?]
           at 
com.google.inject.servlet.ManagedServletPipeline.service(ManagedServletPipeline.java:91)
 [guice-servlet-4.1.0.jar:?]
           at 
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:85)
 [guice-servlet-4.1.0.jar:?]
           at 
com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:120)
 [guice-servlet-4.1.0.jar:?]
           at 
com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:135) 
[guice-servlet-4.1.0.jar:?]
           at 
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
 [jetty-servlet-9.4.10.v20180503.jar:9.4.10.v20180503]
           at 
org.apache.druid.server.security.PreResponseAuthorizationCheckFilter.doFilter(PreResponseAuthorizationCheckFilter.java:84)
 [druid-server-0.13.0-incubating.jar:0.13.0-incubating]
           at 
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
 [jetty-servlet-9.4.10.v20180503.jar:9.4.10.v20180503]
           at 
org.apache.druid.server.security.AllowOptionsResourceFilter.doFilter(AllowOptionsResourceFilter.java:76)
 [druid-server-0.13.0-incubating.jar:0.13.0-incubating]
           at 
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
 [jetty-servlet-9.4.10.v20180503.jar:9.4.10.v20180503]
           at 
org.apache.druid.server.security.AllowAllAuthenticator$1.doFilter(AllowAllAuthenticator.java:85)
 [druid-server-0.13.0-incubating.jar:0.13.0-incubating]
           at 
org.apache.druid.server.security.AuthenticationWrappingFilter.doFilter(AuthenticationWrappingFilter.java:60)
 [druid-server-0.13.0-incubating.jar:0.13.0-incubating]
           at 
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
 [jetty-servlet-9.4.10.v20180503.jar:9.4.10.v20180503]
           at 
org.apache.druid.server.security.SecuritySanityCheckFilter.doFilter(SecuritySanityCheckFilter.java:88)
 [druid-server-0.13.0-incubating.jar:0.13.0-incubating]
           at 
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
 [jetty-servlet-9.4.10.v20180503.jar:9.4.10.v20180503]
           at 
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:533) 
[jetty-servlet-9.4.10.v20180503.jar:9.4.10.v20180503]
           at 
org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)
 [jetty-server-9.4.10.v20180503.jar:9.4.10.v20180503]
           at 
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1595)
 [jetty-server-9.4.10.v20180503.jar:9.4.10.v20180503]
           at 
org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)
 [jetty-server-9.4.10.v20180503.jar:9.4.10.v20180503]
           at 
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1253)
 [jetty-server-9.4.10.v20180503.jar:9.4.10.v20180503]
           at 
org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203)
 [jetty-server-9.4.10.v20180503.jar:9.4.10.v20180503]
           at 
org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:473) 
[jetty-servlet-9.4.10.v20180503.jar:9.4.10.v20180503]
           at 
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1564)
 [jetty-server-9.4.10.v20180503.jar:9.4.10.v20180503]
           at 
org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201)
 [jetty-server-9.4.10.v20180503.jar:9.4.10.v20180503]
           at 
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1155)
 [jetty-server-9.4.10.v20180503.jar:9.4.10.v20180503]
           at 
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144) 
[jetty-server-9.4.10.v20180503.jar:9.4.10.v20180503]
           at 
org.eclipse.jetty.server.handler.gzip.GzipHandler.handle(GzipHandler.java:724) 
[jetty-server-9.4.10.v20180503.jar:9.4.10.v20180503]
           at 
org.eclipse.jetty.server.handler.HandlerList.handle(HandlerList.java:61) 
[jetty-server-9.4.10.v20180503.jar:9.4.10.v20180503]
           at 
org.eclipse.jetty.server.handler.StatisticsHandler.handle(StatisticsHandler.java:169)
 [jetty-server-9.4.10.v20180503.jar:9.4.10.v20180503]
           at 
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132) 
[jetty-server-9.4.10.v20180503.jar:9.4.10.v20180503]
           at org.eclipse.jetty.server.Server.handle(Server.java:531) 
[jetty-server-9.4.10.v20180503.jar:9.4.10.v20180503]
           at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:352) 
[jetty-server-9.4.10.v20180503.jar:9.4.10.v20180503]
           at 
org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:260) 
[jetty-server-9.4.10.v20180503.jar:9.4.10.v20180503]
           at 
org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:281)
 [jetty-io-9.4.10.v20180503.jar:9.4.10.v20180503]
           at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:102) 
[jetty-io-9.4.10.v20180503.jar:9.4.10.v20180503]
           at 
org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:118) 
[jetty-io-9.4.10.v20180503.jar:9.4.10.v20180503]
           at 
org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:333)
 [jetty-util-9.4.10.v20180503.jar:9.4.10.v20180503]
           at 
org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:310)
 [jetty-util-9.4.10.v20180503.jar:9.4.10.v20180503]
           at 
org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:168)
 [jetty-util-9.4.10.v20180503.jar:9.4.10.v20180503]
           at 
org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:126)
 [jetty-util-9.4.10.v20180503.jar:9.4.10.v20180503]
           at 
org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:366)
 [jetty-util-9.4.10.v20180503.jar:9.4.10.v20180503]
           at 
org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:760)
 [jetty-util-9.4.10.v20180503.jar:9.4.10.v20180503]
           at 
org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:678) 
[jetty-util-9.4.10.v20180503.jar:9.4.10.v20180503]
           at java.lang.Thread.run(Thread.java:748) [?:1.8.0_131]
   Caused by: java.lang.RuntimeException: Error occurred while applying rule 
DruidTableScanRule
           at 
org.apache.calcite.plan.volcano.VolcanoRuleCall.transformTo(VolcanoRuleCall.java:149)
 ~[calcite-core-1.17.0.jar:1.17.0]
           at 
org.apache.calcite.plan.RelOptRuleCall.transformTo(RelOptRuleCall.java:234) 
~[calcite-core-1.17.0.jar:1.17.0]
           at 
org.apache.druid.sql.calcite.rule.DruidTableScanRule.onMatch(DruidTableScanRule.java:47)
 ~[druid-sql-0.13.0-incubating.jar:0.13.0-incubating]
           at 
org.apache.calcite.plan.volcano.VolcanoRuleCall.onMatch(VolcanoRuleCall.java:212)
 ~[calcite-core-1.17.0.jar:1.17.0]
           ... 72 more
   Caused by: org.apache.druid.java.util.common.ISE: WTF?! Attempting to 
convert to Scan query without any columns?
           at 
org.apache.druid.sql.calcite.rel.DruidQuery.toScanQuery(DruidQuery.java:951) 
~[druid-sql-0.13.0-incubating.jar:0.13.0-incubating]
           at 
org.apache.druid.sql.calcite.rel.DruidQuery.computeQuery(DruidQuery.java:725) 
~[druid-sql-0.13.0-incubating.jar:0.13.0-incubating]
           at 
org.apache.druid.sql.calcite.rel.DruidQuery.<init>(DruidQuery.java:163) 
~[druid-sql-0.13.0-incubating.jar:0.13.0-incubating]
           at 
org.apache.druid.sql.calcite.rel.PartialDruidQuery.build(PartialDruidQuery.java:285)
 ~[druid-sql-0.13.0-incubating.jar:0.13.0-incubating]
           at 
org.apache.druid.sql.calcite.rel.DruidQueryRel.toDruidQuery(DruidQueryRel.java:98)
 ~[druid-sql-0.13.0-incubating.jar:0.13.0-incubating]
           at 
org.apache.druid.sql.calcite.rel.DruidQueryRel.toDruidQueryForExplaining(DruidQueryRel.java:110)
 ~[druid-sql-0.13.0-incubating.jar:0.13.0-incubating]
           at 
org.apache.druid.sql.calcite.rel.DruidQueryRel.explainTerms(DruidQueryRel.java:196)
 ~[druid-sql-0.13.0-incubating.jar:0.13.0-incubating]
           at 
org.apache.calcite.rel.AbstractRelNode.explain(AbstractRelNode.java:312) 
~[calcite-core-1.17.0.jar:1.17.0]
           at 
org.apache.calcite.rel.AbstractRelNode.computeDigest(AbstractRelNode.java:420) 
~[calcite-core-1.17.0.jar:1.17.0]
           at 
org.apache.calcite.rel.AbstractRelNode.recomputeDigest(AbstractRelNode.java:356)
 ~[calcite-core-1.17.0.jar:1.17.0]
           at 
org.apache.calcite.rel.AbstractRelNode.onRegister(AbstractRelNode.java:350) 
~[calcite-core-1.17.0.jar:1.17.0]
           at 
org.apache.calcite.plan.volcano.VolcanoPlanner.registerImpl(VolcanoPlanner.java:1484)
 ~[calcite-core-1.17.0.jar:1.17.0]
           at 
org.apache.calcite.plan.volcano.VolcanoPlanner.register(VolcanoPlanner.java:859)
 ~[calcite-core-1.17.0.jar:1.17.0]
           at 
org.apache.calcite.plan.volcano.VolcanoPlanner.ensureRegistered(VolcanoPlanner.java:879)
 ~[calcite-core-1.17.0.jar:1.17.0]
           at 
org.apache.calcite.plan.volcano.VolcanoPlanner.ensureRegistered(VolcanoPlanner.java:1755)
 ~[calcite-core-1.17.0.jar:1.17.0]
           at 
org.apache.calcite.plan.volcano.VolcanoRuleCall.transformTo(VolcanoRuleCall.java:135)
 ~[calcite-core-1.17.0.jar:1.17.0]
           at 
org.apache.calcite.plan.RelOptRuleCall.transformTo(RelOptRuleCall.java:234) 
~[calcite-core-1.17.0.jar:1.17.0]
           at 
org.apache.druid.sql.calcite.rule.DruidTableScanRule.onMatch(DruidTableScanRule.java:47)
 ~[druid-sql-0.13.0-incubating.jar:0.13.0-incubating]
           at 
org.apache.calcite.plan.volcano.VolcanoRuleCall.onMatch(VolcanoRuleCall.java:212)
 ~[calcite-core-1.17.0.jar:1.17.0]
           ... 72 more
   ```
   
   Also seem something wrong with INFORMATION_SCHEMA, cannot find column infos 
in INFORMATION_SCHEMA.COLUMNS, even run the HadoopIndexTask again still not fix 
it.
   
   
   ```
   dsql> SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 'ds_sensor';
   ┌───────────────┬──────────────┬────────────┬────────────┐
   │ TABLE_CATALOG │ TABLE_SCHEMA │ TABLE_NAME │ TABLE_TYPE │
   ├───────────────┼──────────────┼────────────┼────────────┤
   │               │ druid        │ ds_sensor  │ TABLE      │
   └───────────────┴──────────────┴────────────┴────────────┘
   Retrieved 1 row in 0.01s.
   
   dsql> SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 
'ds_sensor';
   Retrieved 0 rows in 0.01s.
   ```
   

----------------------------------------------------------------
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.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to