You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@beam.apache.org by "Andrew Pilloud (Jira)" <ji...@apache.org> on 2020/05/05 16:49:00 UTC
[jira] [Resolved] (BEAM-9661)
LimitOffsetScanToOrderByLimitConverter IndexOutOfBoundsException
[ https://issues.apache.org/jira/browse/BEAM-9661?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andrew Pilloud resolved BEAM-9661.
----------------------------------
Fix Version/s: 2.22.0
Resolution: Fixed
> LimitOffsetScanToOrderByLimitConverter IndexOutOfBoundsException
> ----------------------------------------------------------------
>
> Key: BEAM-9661
> URL: https://issues.apache.org/jira/browse/BEAM-9661
> Project: Beam
> Issue Type: Bug
> Components: dsl-sql-zetasql
> Reporter: Andrew Pilloud
> Assignee: Andrew Pilloud
> Priority: Critical
> Labels: zetasql-compliance
> Fix For: 2.22.0
>
> Time Spent: 20m
> Remaining Estimate: 0h
>
> Fourteen failures in shard 37, one failure in shard 44
> {code:java}
> java.lang.IndexOutOfBoundsException: index (4) must be less than size (1)
> at org.apache.beam.vendor.calcite.v1_20_0.com.google.common.base.Preconditions.checkElementIndex(Preconditions.java:310)
> at org.apache.beam.vendor.calcite.v1_20_0.com.google.common.base.Preconditions.checkElementIndex(Preconditions.java:293)
> at org.apache.beam.vendor.calcite.v1_20_0.com.google.common.collect.SingletonImmutableList.get(SingletonImmutableList.java:41)
> at org.apache.beam.vendor.calcite.v1_20_0.org.apache.calcite.rex.RexBuilder.makeInputRef(RexBuilder.java:855)
> at org.apache.beam.vendor.calcite.v1_20_0.org.apache.calcite.rel.core.Sort.<init>(Sort.java:103)
> at org.apache.beam.vendor.calcite.v1_20_0.org.apache.calcite.rel.logical.LogicalSort.<init>(LogicalSort.java:37)
> at org.apache.beam.vendor.calcite.v1_20_0.org.apache.calcite.rel.logical.LogicalSort.create(LogicalSort.java:63)
> at org.apache.beam.sdk.extensions.sql.zetasql.translation.LimitOffsetScanToOrderByLimitConverter.convert(LimitOffsetScanToOrderByLimitConverter.java:74)
> at org.apache.beam.sdk.extensions.sql.zetasql.translation.LimitOffsetScanToOrderByLimitConverter.convert(LimitOffsetScanToOrderByLimitConverter.java:40)
> at org.apache.beam.sdk.extensions.sql.zetasql.translation.QueryStatementConverter.convertNode(QueryStatementConverter.java:97)
> at org.apache.beam.sdk.extensions.sql.zetasql.translation.QueryStatementConverter.convert(QueryStatementConverter.java:84)
> at org.apache.beam.sdk.extensions.sql.zetasql.translation.QueryStatementConverter.convertRootQuery(QueryStatementConverter.java:51)
> at org.apache.beam.sdk.extensions.sql.zetasql.ZetaSQLPlannerImpl.rel(ZetaSQLPlannerImpl.java:160)
> at org.apache.beam.sdk.extensions.sql.zetasql.ZetaSQLQueryPlanner.convertToBeamRelInternal(ZetaSQLQueryPlanner.java:131)
> at org.apache.beam.sdk.extensions.sql.zetasql.ZetaSQLQueryPlanner.convertToBeamRel(ZetaSQLQueryPlanner.java:115)
> at cloud.dataflow.sql.ExecuteQueryServiceServer$SqlComplianceServiceImpl.executeQuery(ExecuteQueryServiceServer.java:242)
> 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 11:50:41 AM cloud.dataflow.sql.ExecuteQueryServiceServer$SqlComplianceServiceImpl executeQuery
> INFO: Processing Sql statement: SELECT a FROM (SELECT 2.2 a UNION ALL SELECT 1.1 UNION ALL SELECT 3.3) ORDER BY a LIMIT 0
> Apr 01, 2020 11:50:42 AM cloud.dataflow.sql.ExecuteQueryServiceServer$SqlComplianceServiceImpl executeQuery
> INFO: Processing Sql statement: SELECT a FROM (SELECT 2.2 a UNION ALL SELECT 1.1 UNION ALL SELECT 3.3) ORDER BY a LIMIT 1
> Apr 01, 2020 11:50:43 AM cloud.dataflow.sql.ExecuteQueryServiceServer$SqlComplianceServiceImpl executeQuery
> INFO: Processing Sql statement: SELECT a FROM (SELECT 2.2 a UNION ALL SELECT 1.1 UNION ALL SELECT 3.3) ORDER BY a LIMIT 2
> Apr 01, 2020 11:50:43 AM cloud.dataflow.sql.ExecuteQueryServiceServer$SqlComplianceServiceImpl executeQuery
> INFO: Processing Sql statement: SELECT a FROM (SELECT 3.3 a UNION ALL SELECT 1.1 UNION ALL SELECT 2.2) ORDER BY a LIMIT 3
> Apr 01, 2020 11:50:44 AM cloud.dataflow.sql.ExecuteQueryServiceServer$SqlComplianceServiceImpl executeQuery
> INFO: Processing Sql statement: SELECT a FROM (SELECT 3.3 a UNION ALL SELECT 1.1 UNION ALL SELECT 2.2) ORDER BY a LIMIT 4
> Apr 01, 2020 11:50:44 AM cloud.dataflow.sql.ExecuteQueryServiceServer$SqlComplianceServiceImpl executeQuery
> INFO: Processing Sql statement: SELECT a FROM (SELECT 3.3 a UNION ALL SELECT 1.1 UNION ALL SELECT 2.2) ORDER BY a DESC LIMIT 1
> Apr 01, 2020 11:50:45 AM cloud.dataflow.sql.ExecuteQueryServiceServer$SqlComplianceServiceImpl executeQuery
> INFO: Processing Sql statement: SELECT a FROM (SELECT 'b' a UNION ALL SELECT 'c' UNION ALL SELECT 'a') ORDER BY a LIMIT 1 OFFSET 0
> Apr 01, 2020 11:50:45 AM cloud.dataflow.sql.ExecuteQueryServiceServer$SqlComplianceServiceImpl executeQuery
> INFO: Processing Sql statement: SELECT a FROM (SELECT 'b' a UNION ALL SELECT 'c' UNION ALL SELECT 'a') ORDER BY a LIMIT 1 OFFSET 1
> Apr 01, 2020 11:50:46 AM cloud.dataflow.sql.ExecuteQueryServiceServer$SqlComplianceServiceImpl executeQuery
> INFO: Processing Sql statement: SELECT a FROM (SELECT 'b' a UNION ALL SELECT 'c' UNION ALL SELECT 'a') ORDER BY a LIMIT 1 OFFSET 2
> Apr 01, 2020 11:50:46 AM cloud.dataflow.sql.ExecuteQueryServiceServer$SqlComplianceServiceImpl executeQuery
> INFO: Processing Sql statement: SELECT a FROM (SELECT 'b' a UNION ALL SELECT 'c' UNION ALL SELECT 'a') ORDER BY a LIMIT 1 OFFSET 3
> Apr 01, 2020 11:50:47 AM cloud.dataflow.sql.ExecuteQueryServiceServer$SqlComplianceServiceImpl executeQuery
> INFO: Processing Sql statement: SELECT a FROM (SELECT 'b' a UNION ALL SELECT 'c' UNION ALL SELECT 'a') ORDER BY a LIMIT 2 OFFSET 0
> Apr 01, 2020 11:50:47 AM cloud.dataflow.sql.ExecuteQueryServiceServer$SqlComplianceServiceImpl executeQuery
> INFO: Processing Sql statement: SELECT a FROM (SELECT 'b' a UNION ALL SELECT 'c' UNION ALL SELECT 'a') ORDER BY a LIMIT 2 OFFSET 1
> Apr 01, 2020 11:50:47 AM cloud.dataflow.sql.ExecuteQueryServiceServer$SqlComplianceServiceImpl executeQuery
> INFO: Processing Sql statement: SELECT a FROM (SELECT 'b' a UNION ALL SELECT 'c' UNION ALL SELECT 'a') ORDER BY a LIMIT 2 OFFSET 2
> Apr 01, 2020 11:50:48 AM cloud.dataflow.sql.ExecuteQueryServiceServer$SqlComplianceServiceImpl executeQuery
> INFO: Processing Sql statement: SELECT a FROM (SELECT 'b' a UNION ALL SELECT 'c' UNION ALL SELECT 'a') ORDER BY a LIMIT 2 OFFSET 3
> {code}
> {code}
> SEVERE: !!!! index (9) must be less than size (2)
> java.lang.IndexOutOfBoundsException: index (9) must be less than size (2)
> at org.apache.beam.vendor.calcite.v1_20_0.com.google.common.base.Preconditions.checkElementIndex(Preconditions.java:310)
> at org.apache.beam.vendor.calcite.v1_20_0.com.google.common.base.Preconditions.checkElementIndex(Preconditions.java:293)
> at org.apache.beam.vendor.calcite.v1_20_0.com.google.common.collect.RegularImmutableList.get(RegularImmutableList.java:67)
> at org.apache.beam.vendor.calcite.v1_20_0.org.apache.calcite.rex.RexBuilder.makeInputRef(RexBuilder.java:855)
> at org.apache.beam.vendor.calcite.v1_20_0.org.apache.calcite.rel.core.Sort.<init>(Sort.java:103)
> at org.apache.beam.vendor.calcite.v1_20_0.org.apache.calcite.rel.logical.LogicalSort.<init>(LogicalSort.java:37)
> at org.apache.beam.vendor.calcite.v1_20_0.org.apache.calcite.rel.logical.LogicalSort.create(LogicalSort.java:63)
> at org.apache.beam.sdk.extensions.sql.zetasql.translation.LimitOffsetScanToOrderByLimitConverter.convert(LimitOffsetScanToOrderByLimitConverter.java:74)
> at org.apache.beam.sdk.extensions.sql.zetasql.translation.LimitOffsetScanToOrderByLimitConverter.convert(LimitOffsetScanToOrderByLimitConverter.java:40)
> at org.apache.beam.sdk.extensions.sql.zetasql.translation.QueryStatementConverter.convertNode(QueryStatementConverter.java:97)
> at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
> at java.util.Collections$2.tryAdvance(Collections.java:4717)
> at java.util.Collections$2.forEachRemaining(Collections.java:4725)
> 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.translation.QueryStatementConverter.convertNode(QueryStatementConverter.java:96)
> at org.apache.beam.sdk.extensions.sql.zetasql.translation.QueryStatementConverter.convert(QueryStatementConverter.java:84)
> at org.apache.beam.sdk.extensions.sql.zetasql.translation.QueryStatementConverter.convertRootQuery(QueryStatementConverter.java:51)
> at org.apache.beam.sdk.extensions.sql.zetasql.ZetaSQLPlannerImpl.rel(ZetaSQLPlannerImpl.java:160)
> at org.apache.beam.sdk.extensions.sql.zetasql.ZetaSQLQueryPlanner.convertToBeamRelInternal(ZetaSQLQueryPlanner.java:131)
> at org.apache.beam.sdk.extensions.sql.zetasql.ZetaSQLQueryPlanner.convertToBeamRel(ZetaSQLQueryPlanner.java:115)
> at cloud.dataflow.sql.ExecuteQueryServiceServer$SqlComplianceServiceImpl.executeQuery(ExecuteQueryServiceServer.java:242)
> 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 11:51:50 AM cloud.dataflow.sql.ExecuteQueryServiceServer$SqlComplianceServiceImpl executeQuery
> INFO: Processing Sql statement: select x from
> (select x,y from
> (select 1 as x, 0 as y union all
> select 0, 0 union all
> select 1, 0 union all
> select 1, 1)
> order by x limit 1)
> {code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)