Details
Description
When Calcite (v. 1.13.0) is included in a project that also includes Beam and the Beam SQL extension, then the following error is thrown when trying to run Beam code.
ClassCastException org.apache.beam.sdk.extensions.sql.impl.planner.BeamRelDataTypeSystem cannot be cast to org.apache.calcite.rel.type.RelDataTypeSystem
org.apache.calcite.jdbc.CalciteConnectionImpl.<init> (CalciteConnectionImpl.java:120)
org.apache.calcite.jdbc.CalciteJdbc41Factory$CalciteJdbc41Connection.<init> (CalciteJdbc41Factory.java:114)
org.apache.calcite.jdbc.CalciteJdbc41Factory.newConnection (CalciteJdbc41Factory.java:59)
org.apache.calcite.jdbc.CalciteJdbc41Factory.newConnection (CalciteJdbc41Factory.java:44)
org.apache.calcite.jdbc.CalciteFactory.newConnection (CalciteFactory.java:53)
org.apache.calcite.avatica.UnregisteredDriver.connect (UnregisteredDriver.java:138)
java.sql.DriverManager.getConnection (DriverManager.java:664)
java.sql.DriverManager.getConnection (DriverManager.java:208)
org.apache.beam.sdks.java.extensions.sql.repackaged.org.apache.calcite.tools.Frameworks.withPrepare (Frameworks.java:145)
org.apache.beam.sdks.java.extensions.sql.repackaged.org.apache.calcite.tools.Frameworks.withPlanner (Frameworks.java:106)
org.apache.beam.sdks.java.extensions.sql.repackaged.org.apache.calcite.prepare.PlannerImpl.ready (PlannerImpl.java:140)
org.apache.beam.sdks.java.extensions.sql.repackaged.org.apache.calcite.prepare.PlannerImpl.parse (PlannerImpl.java:170)