sowo opened a new issue #2274:
URL: https://github.com/apache/drill/issues/2274


   **Describe the bug**
    I am trying to join data from Elasticsearch with data from an Oracle RDBMS. 
My query looks like this:
   
   `SELECT o.a, o.b, o.c, e.d, e.f FROM oracle.schema.table o JOIN 
elastic.index e ON o.a=e.a`
   
   My problem is that this query produces a ClassCastException:
   
   ` Caused by: java.lang.ClassCastException: 
org.apache.calcite.plan.Convention$Impl cannot be cast to 
org.apache.drill.exec.store.jdbc.DrillJdbcConvention
        at org.apache.drill.exec.store.jdbc.JdbcPrel.<init>(JdbcPrel.java:55)
        at 
org.apache.drill.exec.store.jdbc.JdbcIntermediatePrel.finalizeRel(JdbcIntermediatePrel.java:65)
        at 
org.apache.drill.exec.planner.sql.handlers.DefaultSqlHandler$PrelFinalizer.visit(DefaultSqlHandler.java:322)
        at 
org.apache.calcite.rel.AbstractRelNode.accept(AbstractRelNode.java:272)
        at 
org.apache.calcite.rel.RelShuttleImpl.visitChild(RelShuttleImpl.java:55)
        at 
org.apache.calcite.rel.RelShuttleImpl.visitChildren(RelShuttleImpl.java:69)
        at org.apache.calcite.rel.RelShuttleImpl.visit(RelShuttleImpl.java:131)
        at 
org.apache.drill.exec.planner.sql.handlers.DefaultSqlHandler$PrelFinalizer.visit(DefaultSqlHandler.java:324)
        at 
org.apache.calcite.rel.AbstractRelNode.accept(AbstractRelNode.java:272)
        at 
org.apache.calcite.rel.RelShuttleImpl.visitChild(RelShuttleImpl.java:55)
        at 
org.apache.calcite.rel.RelShuttleImpl.visitChildren(RelShuttleImpl.java:69)
        at org.apache.calcite.rel.RelShuttleImpl.visit(RelShuttleImpl.java:131)
        at 
org.apache.drill.exec.planner.sql.handlers.DefaultSqlHandler$PrelFinalizer.visit(DefaultSqlHandler.java:324)
        at 
org.apache.calcite.rel.AbstractRelNode.accept(AbstractRelNode.java:272)
        at 
org.apache.calcite.rel.RelShuttleImpl.visitChild(RelShuttleImpl.java:55)
        at 
org.apache.calcite.rel.RelShuttleImpl.visitChildren(RelShuttleImpl.java:69)
        at org.apache.calcite.rel.RelShuttleImpl.visit(RelShuttleImpl.java:131)
        at 
org.apache.drill.exec.planner.sql.handlers.DefaultSqlHandler$PrelFinalizer.visit(DefaultSqlHandler.java:324)
        at 
org.apache.calcite.rel.AbstractRelNode.accept(AbstractRelNode.java:272)
        at 
org.apache.calcite.rel.RelShuttleImpl.visitChild(RelShuttleImpl.java:55)
        at 
org.apache.calcite.rel.RelShuttleImpl.visitChildren(RelShuttleImpl.java:69)
        at org.apache.calcite.rel.RelShuttleImpl.visit(RelShuttleImpl.java:131)
        at 
org.apache.drill.exec.planner.sql.handlers.DefaultSqlHandler$PrelFinalizer.visit(DefaultSqlHandler.java:324)
        at 
org.apache.calcite.rel.AbstractRelNode.accept(AbstractRelNode.java:272)
        at 
org.apache.calcite.rel.RelShuttleImpl.visitChild(RelShuttleImpl.java:55)
        at 
org.apache.calcite.rel.RelShuttleImpl.visitChildren(RelShuttleImpl.java:69)
        at org.apache.calcite.rel.RelShuttleImpl.visit(RelShuttleImpl.java:131)
        at 
org.apache.drill.exec.planner.sql.handlers.DefaultSqlHandler$PrelFinalizer.visit(DefaultSqlHandler.java:324)
        at 
org.apache.calcite.rel.AbstractRelNode.accept(AbstractRelNode.java:272)
        at 
org.apache.drill.exec.planner.sql.handlers.DefaultSqlHandler.convertToPrel(DefaultSqlHandler.java:437)
        at 
org.apache.drill.exec.planner.sql.handlers.DefaultSqlHandler.getPlan(DefaultSqlHandler.java:174)
        at 
org.apache.drill.exec.planner.sql.DrillSqlWorker.getQueryPlan(DrillSqlWorker.java:283)
        at 
org.apache.drill.exec.planner.sql.DrillSqlWorker.getPhysicalPlan(DrillSqlWorker.java:163)
        at 
org.apache.drill.exec.planner.sql.DrillSqlWorker.convertPlan(DrillSqlWorker.java:140)
        at 
org.apache.drill.exec.planner.sql.DrillSqlWorker.getPlan(DrillSqlWorker.java:93)
        at org.apache.drill.exec.work.foreman.Foreman.runSQL(Foreman.java:592)
        at org.apache.drill.exec.work.foreman.Foreman.run(Foreman.java:273)
        ... 1 common frames omitted` 
   
   I've also tried joing through the WHERE clause but with the same result. 
   
   
   
   **To Reproduce**
   Steps to reproduce the behavior:
   1. Configure Elasticsearch and Oracle storage
   2. Run query similiar to the one in the description
   3. See error
   
   **Expected behavior**
   A dataset is built consisting of columns retrieved from Elasticsearch and 
from Oracle joined on the common property
   
   **Screenshots**
   N/A
   
   **Desktop (please complete the following information):**
    - Docker container built from commit 512ac6c
    - Chrome
   
   


-- 
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]


Reply via email to