Uploaded image for project: 'Calcite'
  1. Calcite
  2. CALCITE-893

Theta join in JdbcAdapter

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 1.4.0-incubating
    • 1.5.0
    • None
    • None
    • Running against the Derby foodmart database

    Description

      0: jdbc:calcite:model=inline:{"version":1.0,"> SELECT T1."brand_name" FROM "foodmart"."product" AS T1 INNER JOIN "foodmart"."product_class" AS T2 ON T1."product_class_id" = T2."product_class_id" WHERE T2."product_department" = 'Frozen Foods' OR T2."product_department" = 'Baking Goods' AND T1."brand_name" <> 'King';
      java.lang.AssertionError: =($3, 'Frozen Foods')
      	at org.apache.calcite.adapter.jdbc.JdbcRules$JdbcJoin.convertConditionToSqlNode(JdbcRules.java:416)
      	at org.apache.calcite.adapter.jdbc.JdbcRules$JdbcJoin.convertConditionToSqlNode(JdbcRules.java:376)
      	at org.apache.calcite.adapter.jdbc.JdbcRules$JdbcJoin.convertConditionToSqlNode(JdbcRules.java:376)
      	at org.apache.calcite.adapter.jdbc.JdbcRules$JdbcJoin.implement(JdbcRules.java:337)
      	at org.apache.calcite.adapter.jdbc.JdbcImplementor.visitChild(JdbcImplementor.java:118)
      	at org.apache.calcite.adapter.jdbc.JdbcRules$JdbcProject.implement(JdbcRules.java:600)
      	at org.apache.calcite.adapter.jdbc.JdbcImplementor.visitChild(JdbcImplementor.java:118)
      	at org.apache.calcite.adapter.jdbc.JdbcToEnumerableConverter.generateSql(JdbcToEnumerableConverter.java:297)
      	at org.apache.calcite.adapter.jdbc.JdbcToEnumerableConverter.implement(JdbcToEnumerableConverter.java:89)
      	at org.apache.calcite.adapter.enumerable.EnumerableRelImplementor.implementRoot(EnumerableRelImplementor.java:99)
      	at org.apache.calcite.adapter.enumerable.EnumerableInterpretable.toBindable(EnumerableInterpretable.java:92)
      	at org.apache.calcite.prepare.CalcitePrepareImpl$CalcitePreparingStmt.implement(CalcitePrepareImpl.java:1117)
      	at org.apache.calcite.prepare.Prepare.prepareSql(Prepare.java:293)
      	at org.apache.calcite.prepare.Prepare.prepareSql(Prepare.java:189)
      	at org.apache.calcite.prepare.CalcitePrepareImpl.prepare2_(CalcitePrepareImpl.java:700)
      	at org.apache.calcite.prepare.CalcitePrepareImpl.prepare_(CalcitePrepareImpl.java:586)
      	at org.apache.calcite.prepare.CalcitePrepareImpl.prepareSql(CalcitePrepareImpl.java:556)
      	at org.apache.calcite.jdbc.CalciteConnectionImpl.parseQuery(CalciteConnectionImpl.java:207)
      	at org.apache.calcite.jdbc.CalciteMetaImpl.prepareAndExecute(CalciteMetaImpl.java:563)
      	at org.apache.calcite.avatica.AvaticaConnection.prepareAndExecuteInternal(AvaticaConnection.java:477)
      	at org.apache.calcite.avatica.AvaticaStatement.executeInternal(AvaticaStatement.java:110)
      	at org.apache.calcite.avatica.AvaticaStatement.execute(AvaticaStatement.java:121)
      	at sqlline.SqlLine$Commands.execute(Unknown Source)
      	at sqlline.SqlLine$Commands.sql(Unknown Source)
      	at sqlline.SqlLine.dispatch(Unknown Source)
      	at sqlline.SqlLine.begin(Unknown Source)
      	at sqlline.SqlLine.mainWithInputRedirection(Unknown Source)
      	at sqlline.SqlLine.main(Unknown Source)
      

      Attachments

        Activity

          People

            julianhyde Julian Hyde
            mprudhom Marc Prud'hommeaux
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: