I’ve seen this before: see https://issues.apache.org/jira/browse/CALCITE-880 <https://issues.apache.org/jira/browse/CALCITE-880>
Julian > On Mar 21, 2018, at 12:15 AM, Neo Tian <[email protected]> wrote: > > Hi, > > I’m trying to add oracle as a datasource, but I got an error when excuse sql > statement. > > Schema I used > > { > "type": "jdbc", > "name": "emp5", > "cache": false, > "jdbcUser": “xx", > "jdbcPassword": “xx", > "jdbcUrl": "xx", > "jdbcCatalog": null, > "jdbcSchema": null > } > > jdbc driver ojdbc8 12.2.0.1 > > Oracle version 11g > > > Exception caught: > > Caused by: java.lang.IllegalArgumentException: Multiple entries with same > key: APEX_ACTIVITY_LOG=JdbcTable {APEX_ACTIVITY_LOG} and > APEX_ACTIVITY_LOG=JdbcTable {APEX_ACTIVITY_LOG} > at > com.google.common.collect.ImmutableMap.checkNoConflict(ImmutableMap.java:136) > at > com.google.common.collect.RegularImmutableMap.checkNoConflictInKeyBucket(RegularImmutableMap.java:98) > at > com.google.common.collect.RegularImmutableMap.fromEntryArray(RegularImmutableMap.java:84) > at > com.google.common.collect.ImmutableMap$Builder.build(ImmutableMap.java:295) > at > org.apache.calcite.adapter.jdbc.JdbcSchema.computeTables(JdbcSchema.java:269) > at > org.apache.calcite.adapter.jdbc.JdbcSchema.getTableMap(JdbcSchema.java:285) > at > org.apache.calcite.adapter.jdbc.JdbcSchema.getTableNames(JdbcSchema.java:410) > at > org.apache.calcite.jdbc.CachingCalciteSchema$2.build(CachingCalciteSchema.java:74) > at > org.apache.calcite.jdbc.CachingCalciteSchema$2.build(CachingCalciteSchema.java:71) > at > org.apache.calcite.jdbc.CachingCalciteSchema$AbstractCached.get(CachingCalciteSchema.java:276) > at > org.apache.calcite.jdbc.CachingCalciteSchema.getImplicitTable(CachingCalciteSchema.java:125) > at > org.apache.calcite.jdbc.CalciteSchema.getTable(CalciteSchema.java:257) > at > org.apache.calcite.sql.validate.EmptyScope.resolve_(EmptyScope.java:143) > at > org.apache.calcite.sql.validate.EmptyScope.resolveTable(EmptyScope.java:99) > at > org.apache.calcite.sql.validate.DelegatingScope.resolveTable(DelegatingScope.java:203) > at > org.apache.calcite.sql.validate.IdentifierNamespace.resolveImpl(IdentifierNamespace.java:105) > at > org.apache.calcite.sql.validate.IdentifierNamespace.validateImpl(IdentifierNamespace.java:177) > at > org.apache.calcite.sql.validate.AbstractNamespace.validate(AbstractNamespace.java:84) > at > org.apache.calcite.sql.validate.SqlValidatorImpl.validateNamespace(SqlValidatorImpl.java:947) > at > org.apache.calcite.sql.validate.SqlValidatorImpl.validateQuery(SqlValidatorImpl.java:928) > at > org.apache.calcite.sql.validate.SqlValidatorImpl.validateFrom(SqlValidatorImpl.java:2975) > at > org.apache.calcite.sql.validate.SqlValidatorImpl.validateFrom(SqlValidatorImpl.java:2960) > at > org.apache.calcite.sql.validate.SqlValidatorImpl.validateSelect(SqlValidatorImpl.java:3219) > at > org.apache.calcite.sql.validate.SelectNamespace.validateImpl(SelectNamespace.java:60) > at > org.apache.calcite.sql.validate.AbstractNamespace.validate(AbstractNamespace.java:84) > at > org.apache.calcite.sql.validate.SqlValidatorImpl.validateNamespace(SqlValidatorImpl.java:947) > at > org.apache.calcite.sql.validate.SqlValidatorImpl.validateQuery(SqlValidatorImpl.java:928) > at org.apache.calcite.sql.SqlSelect.validate(SqlSelect.java:226) > at > org.apache.calcite.sql.validate.SqlValidatorImpl.validateScopedExpression(SqlValidatorImpl.java:903) > at > org.apache.calcite.sql.validate.SqlValidatorImpl.validate(SqlValidatorImpl.java:613) > at > org.apache.calcite.sql2rel.SqlToRelConverter.convertQuery(SqlToRelConverter.java:553) > at org.apache.calcite.prepare.Prepare.prepareSql(Prepare.java:264) > at org.apache.calcite.prepare.Prepare.prepareSql(Prepare.java:230) > at > org.apache.calcite.prepare.CalcitePrepareImpl.prepare2_(CalcitePrepareImpl.java:781) > at > org.apache.calcite.prepare.CalcitePrepareImpl.prepare_(CalcitePrepareImpl.java:640) > at > org.apache.calcite.prepare.CalcitePrepareImpl.prepareSql(CalcitePrepareImpl.java:610) > at > org.apache.calcite.jdbc.CalciteConnectionImpl.parseQuery(CalciteConnectionImpl.java:221) > at > org.apache.calcite.jdbc.CalciteConnectionImpl.prepareStatement_(CalciteConnectionImpl.java:203) > ... 5 more > > > > Thank you. > >
