[ https://issues.apache.org/jira/browse/BEAM-9665?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17102122#comment-17102122 ]
Andrew Pilloud commented on BEAM-9665: -------------------------------------- The toSql code path doesn't expect a BasicSqlCall in a SqlLiteral. I'm still verifying this is a reasonable data structure before implementing the toSql case for this. > BeamSqlUnparseContext SqlBasicCall cast to SqlIdentifier > -------------------------------------------------------- > > Key: BEAM-9665 > URL: https://issues.apache.org/jira/browse/BEAM-9665 > Project: Beam > Issue Type: Bug > Components: dsl-sql-zetasql > Reporter: Andrew Pilloud > Assignee: Andrew Pilloud > Priority: Major > Labels: zetasql-compliance > > one failure in shard 9 > {code} > java.lang.ClassCastException: > org.apache.beam.vendor.calcite.v1_20_0.org.apache.calcite.sql.SqlBasicCall > cannot be cast to > org.apache.beam.vendor.calcite.v1_20_0.org.apache.calcite.sql.SqlIdentifier > at > org.apache.beam.vendor.calcite.v1_20_0.org.apache.calcite.rel.rel2sql.SqlImplementor$Context.toSql(SqlImplementor.java:474) > at > org.apache.beam.sdk.extensions.sql.meta.provider.bigquery.BeamSqlUnparseContext.toSql(BeamSqlUnparseContext.java:91) > at > org.apache.beam.vendor.calcite.v1_20_0.org.apache.calcite.rel.rel2sql.SqlImplementor$Context.toSql(SqlImplementor.java:451) > at > org.apache.beam.sdk.extensions.sql.meta.provider.bigquery.BeamSqlUnparseContext.toSql(BeamSqlUnparseContext.java:91) > at > org.apache.beam.sdk.extensions.sql.zetasql.BeamZetaSqlCalcRel.unparseRexNode(BeamZetaSqlCalcRel.java:120) > at > org.apache.beam.sdk.extensions.sql.zetasql.BeamZetaSqlCalcRel.access$100(BeamZetaSqlCalcRel.java:62) > at > org.apache.beam.sdk.extensions.sql.zetasql.BeamZetaSqlCalcRel$Transform.lambda$expand$0(BeamZetaSqlCalcRel.java:100) > at > java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193) > at java.util.Iterator.forEachRemaining(Iterator.java:116) > at > java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801) > at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481) > at > java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471) > at > java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708) > at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) > at > java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499) > at > org.apache.beam.sdk.extensions.sql.zetasql.BeamZetaSqlCalcRel$Transform.expand(BeamZetaSqlCalcRel.java:101) > at > org.apache.beam.sdk.extensions.sql.zetasql.BeamZetaSqlCalcRel$Transform.expand(BeamZetaSqlCalcRel.java:88) > at org.apache.beam.sdk.Pipeline.applyInternal(Pipeline.java:542) > at org.apache.beam.sdk.Pipeline.applyTransform(Pipeline.java:493) > at > org.apache.beam.sdk.extensions.sql.impl.rel.BeamSqlRelUtils.toPCollection(BeamSqlRelUtils.java:69) > at > org.apache.beam.sdk.extensions.sql.impl.rel.BeamSqlRelUtils.toPCollection(BeamSqlRelUtils.java:39) > at > cloud.dataflow.sql.ExecuteQueryServiceServer$SqlComplianceServiceImpl.executeQuery(ExecuteQueryServiceServer.java:288) > at > com.google.zetasql.testing.SqlComplianceServiceGrpc$MethodHandlers.invoke(SqlComplianceServiceGrpc.java:423) > at > com.google.zetasql.io.grpc.stub.ServerCalls$UnaryServerCallHandler$UnaryServerCallListener.onHalfClose(ServerCalls.java:171) > at > com.google.zetasql.io.grpc.internal.ServerCallImpl$ServerStreamListenerImpl.halfClosed(ServerCallImpl.java:283) > at > com.google.zetasql.io.grpc.internal.ServerImpl$JumpToApplicationThreadServerStreamListener$1HalfClosed.runInContext(ServerImpl.java:711) > at > com.google.zetasql.io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37) > at > com.google.zetasql.io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:123) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > at java.lang.Thread.run(Thread.java:748) > {code} > {code} > Apr 01, 2020 3:56:08 PM > cloud.dataflow.sql.ExecuteQueryServiceServer$SqlComplianceServiceImpl > executeQuery > INFO: Processing Sql statement: SELECT s.a FROM (SELECT STRUCT("abc" AS a, 3 > AS b) s) t > {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)