Uploaded image for project: 'Beam'
  1. Beam
  2. BEAM-10847

NPE in BeamUnnestRel

Details

    • Bug
    • Status: Resolved
    • P2
    • Resolution: Fixed
    • None
    • 2.25.0
    • dsl-sql-zetasql
    • None

    Description

      I run `SELECT id, n FROM my_dataset.my_table, UNNEST(arr) AS n` on DataflowSQL where my_table has an INT64 field id and ARRAY<INT64> field arr. I encountered an NullPointerException:

      java.lang.NullPointerException
      at
      org.apache.beam.sdk.extensions.sql.impl.utils.CalciteUtils.toSchema (CalciteUtils.java:186)
      at
      org.apache.beam.sdk.extensions.sql.impl.rel.BeamUnnestRel$Transform.expand (BeamUnnestRel.java:111)
      at
      org.apache.beam.sdk.extensions.sql.impl.rel.BeamUnnestRel$Transform.expand (BeamUnnestRel.java:105)
      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.lambda$buildPCollectionList$0 (BeamSqlRelUtils.java:50)
      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.impl.rel.BeamSqlRelUtils.buildPCollectionList (BeamSqlRelUtils.java:51)
      at
      org.apache.beam.sdk.extensions.sql.impl.rel.BeamSqlRelUtils.toPCollection (BeamSqlRelUtils.java:67)
      at
      org.apache.beam.sdk.extensions.sql.impl.rel.BeamSqlRelUtils.toPCollection (BeamSqlRelUtils.java:39)
      at
      org.apache.beam.sdk.extensions.sql.SqlTransform.expand (SqlTransform.java:134)
      at
      org.apache.beam.sdk.extensions.sql.SqlTransform.expand (SqlTransform.java:86)
      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.values.PBegin.apply (PBegin.java:56)
      at
      org.apache.beam.sdk.Pipeline.apply (Pipeline.java:186)
      at
      com.google.cloud.dataflow.sqllauncher.DataflowSqlLauncher.buildPipelineOrThrow (DataflowSqlLauncher.java:178)
      at
      com.google.cloud.dataflow.sqllauncher.DataflowSqlLauncher.buildPipeline (DataflowSqlLauncher.java:114)
      at
      com.google.cloud.dataflow.sqllauncher.DataflowSqlLauncher.buildAndRunPipeline (DataflowSqlLauncher.java:105)
      at
      com.google.cloud.dataflow.sqllauncher.DataflowSqlLauncher.main (DataflowSqlLauncher.java:73)

      Attachments

        Issue Links

          Activity

            People

              robinyqiu Robin Qiu
              robinyqiu Robin Qiu
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 20m
                  20m