Class BeamZetaSqlUncollectRule
java.lang.Object
org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.plan.RelOptRule
org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.plan.RelRule<org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.convert.ConverterRule.Config>
org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.convert.ConverterRule
org.apache.beam.sdk.extensions.sql.zetasql.unnest.BeamZetaSqlUncollectRule
public class BeamZetaSqlUncollectRule
extends org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.convert.ConverterRule
A
ConverterRule
to replace ZetaSqlUnnest
with BeamZetaSqlUncollectRel
.
This class is a copy of BeamUncollectRel
except that it works on ZetaSqlUnnest
instead of Calcite Uncollect.
Details of why unwrapping structs breaks ZetaSQL UNNEST syntax is in https://issues.apache.org/jira/browse/BEAM-10896.
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.convert.ConverterRule
org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.convert.ConverterRule.Config
Nested classes/interfaces inherited from class org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.plan.RelRule
org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.plan.RelRule.Done, org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.plan.RelRule.MatchHandler<R extends org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.plan.RelOptRule>, org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.plan.RelRule.OperandBuilder, org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.plan.RelRule.OperandDetailBuilder<R extends org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelNode>, org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.plan.RelRule.OperandTransform
Nested classes/interfaces inherited from class org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.plan.RelOptRule
org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.plan.RelOptRule.ConverterRelOptRuleOperand
-
Field Summary
FieldsFields inherited from class org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.convert.ConverterRule
out
Fields inherited from class org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.plan.RelRule
config
Fields inherited from class org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.plan.RelOptRule
description, operands, relBuilderFactory
-
Method Summary
Modifier and TypeMethodDescriptionorg.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelNode
convert
(org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelNode rel) Methods inherited from class org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.convert.ConverterRule
getInTrait, getOutConvention, getOutTrait, getTraitDef, isGuaranteed, onMatch
Methods inherited from class org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.plan.RelOptRule
any, convert, convert, convertList, convertOperand, convertOperand, equals, equals, getOperand, getOperands, hashCode, matches, none, operand, operand, operand, operand, operand, operandJ, operandJ, some, toString, unordered
-
Field Details
-
INSTANCE
-
-
Method Details
-
convert
public org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelNode convert(org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelNode rel) - Specified by:
convert
in classorg.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.convert.ConverterRule
-