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

Cannot query Oracle databases

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Not A Problem
    • None
    • 1.5.0
    • None
    • None

    Description

      20:53 glimpse$ java -Djava.compiler=none -Djava.awt.headless=true sqlline.SqlLine -d 'org.apache.calcite.jdbc.Driver' -u 'jdbc:calcite:model=inline:{"version":1.0,"defaultSchema":"HR","schemas":[{"name":"oracle","type":"jdbc","jdbcUrl":"jdbc:oracle:thin:@XXX","jdbcDriver":"oracle.jdbc.OracleDriver","jdbcUser":"XXX","jdbcPassword":"XXX"}]}'
      
      Connected to: Calcite (version 1.5.0-incubating-SNAPSHOT)
      Driver: Calcite JDBC Driver (version 1.5.0-incubating-SNAPSHOT)
      Autocommit status: true
      Transaction isolation: TRANSACTION_READ_UNCOMMITTED
      sqlline version 1.0.1 by Marc Prud'hommeaux
      0: jdbc:calcite:model=inline:{"version":1.0,"> select * from "oracle"."COUNTRIES";
      Unknown table type: SYNONYM
      Unknown table type: SYNONYM
      ... repeated many times ...
      
      Error: error while executing SQL "select * from "oracle"."COUNTRIES"": duplicate key: WWV_FLOW_DUAL100 (state=,code=0)
      java.sql.SQLException: error while executing SQL "select * from "oracle"."COUNTRIES"": duplicate key: WWV_FLOW_DUAL100
      	at org.apache.calcite.avatica.Helper.createException(Helper.java:41)
      	at org.apache.calcite.avatica.AvaticaStatement.executeInternal(AvaticaStatement.java:112)
      	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)
      Caused by: java.lang.IllegalArgumentException: duplicate key: WWV_FLOW_DUAL100
      	at com.google.common.base.Preconditions.checkArgument(Preconditions.java:119)
      	at com.google.common.collect.RegularImmutableMap.<init>(RegularImmutableMap.java:67)
      	at com.google.common.collect.ImmutableMap$Builder.fromEntryList(ImmutableMap.java:249)
      	at com.google.common.collect.ImmutableMap$Builder.build(ImmutableMap.java:235)
      	at org.apache.calcite.adapter.jdbc.JdbcSchema.computeTables(JdbcSchema.java:222)
      	at org.apache.calcite.adapter.jdbc.JdbcSchema.getTableMap(JdbcSchema.java:238)
      	at org.apache.calcite.adapter.jdbc.JdbcSchema.getTableNames(JdbcSchema.java:363)
      	at org.apache.calcite.jdbc.CalciteSchema$3.build(CalciteSchema.java:116)
      	at org.apache.calcite.jdbc.CalciteSchema$3.build(CalciteSchema.java:112)
      	at org.apache.calcite.jdbc.CalciteSchema$AbstractCached.get(CalciteSchema.java:772)
      	at org.apache.calcite.jdbc.CalciteSchema.getTable(CalciteSchema.java:278)
      	at org.apache.calcite.prepare.CalciteCatalogReader.getTableFrom(CalciteCatalogReader.java:116)
      	at org.apache.calcite.prepare.CalciteCatalogReader.getTable(CalciteCatalogReader.java:105)
      	at org.apache.calcite.prepare.CalciteCatalogReader.getTable(CalciteCatalogReader.java:70)
      	at org.apache.calcite.sql.validate.EmptyScope.getTableNamespace(EmptyScope.java:75)
      	at org.apache.calcite.sql.validate.DelegatingScope.getTableNamespace(DelegatingScope.java:124)
      	at org.apache.calcite.sql.validate.IdentifierNamespace.validateImpl(IdentifierNamespace.java:104)
      	at org.apache.calcite.sql.validate.AbstractNamespace.validate(AbstractNamespace.java:86)
      	at org.apache.calcite.sql.validate.SqlValidatorImpl.validateNamespace(SqlValidatorImpl.java:844)
      	at org.apache.calcite.sql.validate.SqlValidatorImpl.validateQuery(SqlValidatorImpl.java:830)
      	at org.apache.calcite.sql.validate.SqlValidatorImpl.validateFrom(SqlValidatorImpl.java:2744)
      	at org.apache.calcite.sql.validate.SqlValidatorImpl.validateFrom(SqlValidatorImpl.java:2729)
      	at org.apache.calcite.sql.validate.SqlValidatorImpl.validateSelect(SqlValidatorImpl.java:2947)
      	at org.apache.calcite.sql.validate.SelectNamespace.validateImpl(SelectNamespace.java:60)
      	at org.apache.calcite.sql.validate.AbstractNamespace.validate(AbstractNamespace.java:86)
      	at org.apache.calcite.sql.validate.SqlValidatorImpl.validateNamespace(SqlValidatorImpl.java:844)
      	at org.apache.calcite.sql.validate.SqlValidatorImpl.validateQuery(SqlValidatorImpl.java:830)
      	at org.apache.calcite.sql.SqlSelect.validate(SqlSelect.java:207)
      	at org.apache.calcite.sql.validate.SqlValidatorImpl.validateScopedExpression(SqlValidatorImpl.java:804)
      	at org.apache.calcite.sql.validate.SqlValidatorImpl.validate(SqlValidatorImpl.java:518)
      	at org.apache.calcite.sql2rel.SqlToRelConverter.convertQuery(SqlToRelConverter.java:564)
      	at org.apache.calcite.prepare.Prepare.prepareSql(Prepare.java:223)
      	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)
      	... 7 more
      

      Attachments

        Issue Links

          Activity

            People

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

              Dates

                Created:
                Updated:
                Resolved: