@@ -51,20 +51,18 @@ object RuleIdCollection {
51
51
" org.apache.spark.sql.catalyst.analysis.Analyzer$ResolveAggregateFunctions" ::
52
52
" org.apache.spark.sql.catalyst.analysis.Analyzer$ResolveAliases" ::
53
53
" org.apache.spark.sql.catalyst.analysis.Analyzer$ResolveBinaryArithmetic" ::
54
- " org.apache.spark.sql.catalyst.analysis.ResolveCollationName" ::
55
54
" org.apache.spark.sql.catalyst.analysis.Analyzer$ResolveDeserializer" ::
56
55
" org.apache.spark.sql.catalyst.analysis.Analyzer$ResolveEncodersInUDF" ::
57
56
" org.apache.spark.sql.catalyst.analysis.Analyzer$ResolveFunctions" ::
58
- " org.apache.spark.sql.catalyst.analysis.Analyzer$ResolveProcedures" ::
59
57
" org.apache.spark.sql.catalyst.analysis.Analyzer$ResolveGenerate" ::
60
58
" org.apache.spark.sql.catalyst.analysis.Analyzer$ResolveGroupingAnalytics" ::
61
- " org.apache.spark.sql.catalyst.analysis.ResolveHigherOrderFunctions" ::
62
59
" org.apache.spark.sql.catalyst.analysis.Analyzer$ResolveInsertInto" ::
63
60
" org.apache.spark.sql.catalyst.analysis.Analyzer$ResolveNaturalAndUsingJoin" ::
64
61
" org.apache.spark.sql.catalyst.analysis.Analyzer$ResolveNewInstance" ::
65
62
" org.apache.spark.sql.catalyst.analysis.Analyzer$ResolveOrdinalInOrderByAndGroupBy" ::
66
63
" org.apache.spark.sql.catalyst.analysis.Analyzer$ResolveOutputRelation" ::
67
64
" org.apache.spark.sql.catalyst.analysis.Analyzer$ResolvePivot" ::
65
+ " org.apache.spark.sql.catalyst.analysis.Analyzer$ResolveProcedures" ::
68
66
" org.apache.spark.sql.catalyst.analysis.Analyzer$ResolveRandomSeed" ::
69
67
" org.apache.spark.sql.catalyst.analysis.Analyzer$ResolveReferences" ::
70
68
" org.apache.spark.sql.catalyst.analysis.Analyzer$ResolveRelations" ::
@@ -86,34 +84,36 @@ object RuleIdCollection {
86
84
" org.apache.spark.sql.catalyst.analysis.DeduplicateRelations" ::
87
85
" org.apache.spark.sql.catalyst.analysis.EliminateSubqueryAliases" ::
88
86
" org.apache.spark.sql.catalyst.analysis.EliminateUnions" ::
87
+ " org.apache.spark.sql.catalyst.analysis.ResolveCollationName" ::
89
88
" org.apache.spark.sql.catalyst.analysis.ResolveDefaultColumns" ::
89
+ " org.apache.spark.sql.catalyst.analysis.ResolveExecuteImmediate" ::
90
90
" org.apache.spark.sql.catalyst.analysis.ResolveExpressionsWithNamePlaceholders" ::
91
+ " org.apache.spark.sql.catalyst.analysis.ResolveGroupByAll" ::
92
+ " org.apache.spark.sql.catalyst.analysis.ResolveHigherOrderFunctions" ::
91
93
" org.apache.spark.sql.catalyst.analysis.ResolveHints$ResolveCoalesceHints" ::
92
94
" org.apache.spark.sql.catalyst.analysis.ResolveHints$ResolveJoinStrategyHints" ::
93
- " org.apache.spark.sql.catalyst.analysis.ResolveGroupByAll" ::
94
95
" org.apache.spark.sql.catalyst.analysis.ResolveInlineTables" ::
95
96
" org.apache.spark.sql.catalyst.analysis.ResolveLambdaVariables" ::
96
97
" org.apache.spark.sql.catalyst.analysis.ResolveLateralColumnAliasReference" ::
97
98
" org.apache.spark.sql.catalyst.analysis.ResolveOrderByAll" ::
98
99
" org.apache.spark.sql.catalyst.analysis.ResolveRowLevelCommandAssignments" ::
99
100
" org.apache.spark.sql.catalyst.analysis.ResolveSetVariable" ::
100
- " org.apache.spark.sql.catalyst.analysis.ResolveExecuteImmediate " ::
101
+ " org.apache.spark.sql.catalyst.analysis.ResolveTableConstraints " ::
101
102
" org.apache.spark.sql.catalyst.analysis.ResolveTableSpec" ::
102
103
" org.apache.spark.sql.catalyst.analysis.ResolveTimeZone" ::
103
104
" org.apache.spark.sql.catalyst.analysis.ResolveUnion" ::
105
+ " org.apache.spark.sql.catalyst.analysis.ResolveUnresolvedHaving" ::
106
+ " org.apache.spark.sql.catalyst.analysis.ResolveUpdateEventTimeWatermarkColumn" ::
104
107
" org.apache.spark.sql.catalyst.analysis.ResolveWindowTime" ::
105
108
" org.apache.spark.sql.catalyst.analysis.SessionWindowing" ::
106
109
" org.apache.spark.sql.catalyst.analysis.SubstituteUnresolvedOrdinals" ::
107
110
" org.apache.spark.sql.catalyst.analysis.TimeWindowing" ::
108
111
" org.apache.spark.sql.catalyst.analysis.TypeCoercionBase$CombinedTypeCoercionRule" ::
109
- " org.apache.spark.sql.catalyst.analysis.UpdateOuterReferences" ::
110
112
" org.apache.spark.sql.catalyst.analysis.UpdateAttributeNullability" ::
111
- " org.apache.spark.sql.catalyst.analysis.ResolveUpdateEventTimeWatermarkColumn " ::
113
+ " org.apache.spark.sql.catalyst.analysis.UpdateOuterReferences " ::
112
114
" org.apache.spark.sql.catalyst.expressions.EliminatePipeOperators" ::
113
- " org.apache.spark.sql.catalyst.expressions.ValidateAndStripPipeExpressions" ::
114
- " org.apache.spark.sql.catalyst.analysis.ResolveUnresolvedHaving" ::
115
- " org.apache.spark.sql.catalyst.analysis.ResolveTableConstraints" ::
116
115
" org.apache.spark.sql.catalyst.expressions.ExtractSemiStructuredFields" ::
116
+ " org.apache.spark.sql.catalyst.expressions.ValidateAndStripPipeExpressions" ::
117
117
// Catalyst Optimizer rules
118
118
" org.apache.spark.sql.catalyst.optimizer.BooleanSimplification" ::
119
119
" org.apache.spark.sql.catalyst.optimizer.CollapseProject" ::
@@ -135,6 +135,8 @@ object RuleIdCollection {
135
135
" org.apache.spark.sql.catalyst.optimizer.EliminateOuterJoin" ::
136
136
" org.apache.spark.sql.catalyst.optimizer.EliminateSerialization" ::
137
137
" org.apache.spark.sql.catalyst.optimizer.EliminateWindowPartitions" ::
138
+ " org.apache.spark.sql.catalyst.optimizer.EvalInlineTables" ::
139
+ " org.apache.spark.sql.catalyst.optimizer.GenerateOptimization" ::
138
140
" org.apache.spark.sql.catalyst.optimizer.InferWindowGroupLimit" ::
139
141
" org.apache.spark.sql.catalyst.optimizer.LikeSimplification" ::
140
142
" org.apache.spark.sql.catalyst.optimizer.LimitPushDown" ::
@@ -145,12 +147,12 @@ object RuleIdCollection {
145
147
" org.apache.spark.sql.catalyst.optimizer.OptimizeCsvJsonExprs" ::
146
148
" org.apache.spark.sql.catalyst.optimizer.OptimizeIn" ::
147
149
" org.apache.spark.sql.catalyst.optimizer.OptimizeJoinCondition" ::
148
- " org.apache.spark.sql.catalyst.optimizer.OptimizeRand" ::
149
150
" org.apache.spark.sql.catalyst.optimizer.OptimizeOneRowPlan" ::
150
- " org.apache.spark.sql.catalyst.optimizer.Optimizer$OptimizeSubqueries " ::
151
+ " org.apache.spark.sql.catalyst.optimizer.OptimizeRand " ::
151
152
" org.apache.spark.sql.catalyst.optimizer.OptimizeRepartition" ::
152
- " org.apache.spark.sql.catalyst.optimizer.OptimizeWindowFunctions" ::
153
153
" org.apache.spark.sql.catalyst.optimizer.OptimizeUpdateFields" ::
154
+ " org.apache.spark.sql.catalyst.optimizer.OptimizeWindowFunctions" ::
155
+ " org.apache.spark.sql.catalyst.optimizer.Optimizer$OptimizeSubqueries" ::
154
156
" org.apache.spark.sql.catalyst.optimizer.PropagateEmptyRelation" ::
155
157
" org.apache.spark.sql.catalyst.optimizer.PruneFilters" ::
156
158
" org.apache.spark.sql.catalyst.optimizer.PushDownLeftSemiAntiJoin" ::
@@ -159,40 +161,39 @@ object RuleIdCollection {
159
161
" org.apache.spark.sql.catalyst.optimizer.PushLeftSemiLeftAntiThroughJoin" ::
160
162
" org.apache.spark.sql.catalyst.optimizer.ReassignLambdaVariableID" ::
161
163
" org.apache.spark.sql.catalyst.optimizer.RemoveLiteralFromGroupExpressions" ::
162
- " org.apache.spark.sql.catalyst.optimizer.GenerateOptimization" ::
163
164
" org.apache.spark.sql.catalyst.optimizer.RemoveNoopOperators" ::
164
165
" org.apache.spark.sql.catalyst.optimizer.RemoveRedundantAggregates" ::
165
166
" org.apache.spark.sql.catalyst.optimizer.RemoveRepetitionFromGroupExpressions" ::
166
167
" org.apache.spark.sql.catalyst.optimizer.ReorderAssociativeOperator" ::
167
168
" org.apache.spark.sql.catalyst.optimizer.ReorderJoin" ::
169
+ " org.apache.spark.sql.catalyst.optimizer.ReplaceDistinctWithAggregate" ::
168
170
" org.apache.spark.sql.catalyst.optimizer.ReplaceExceptWithAntiJoin" ::
169
171
" org.apache.spark.sql.catalyst.optimizer.ReplaceExceptWithFilter" ::
170
- " org.apache.spark.sql.catalyst.optimizer.ReplaceDistinctWithAggregate" ::
171
- " org.apache.spark.sql.catalyst.optimizer.ReplaceNullWithFalseInPredicate" ::
172
172
" org.apache.spark.sql.catalyst.optimizer.ReplaceIntersectWithSemiJoin" ::
173
+ " org.apache.spark.sql.catalyst.optimizer.ReplaceNullWithFalseInPredicate" ::
174
+ " org.apache.spark.sql.catalyst.optimizer.RewriteAsOfJoin" ::
173
175
" org.apache.spark.sql.catalyst.optimizer.RewriteExceptAll" ::
174
176
" org.apache.spark.sql.catalyst.optimizer.RewriteIntersectAll" ::
175
- " org.apache.spark.sql.catalyst.optimizer.RewriteAsOfJoin" ::
176
177
" org.apache.spark.sql.catalyst.optimizer.SimplifyBinaryComparison" ::
177
178
" org.apache.spark.sql.catalyst.optimizer.SimplifyCaseConversionExpressions" ::
178
179
" org.apache.spark.sql.catalyst.optimizer.SimplifyCasts" ::
179
180
" org.apache.spark.sql.catalyst.optimizer.SimplifyConditionals" ::
180
181
" org.apache.spark.sql.catalyst.optimizer.SimplifyExtractValueOps" ::
181
182
" org.apache.spark.sql.catalyst.optimizer.TransposeWindow" ::
182
- " org.apache.spark.sql.catalyst.optimizer.EvalInlineTables" ::
183
183
" org.apache.spark.sql.catalyst.optimizer.UnwrapCastInBinaryComparison" :: Nil
184
184
}
185
185
186
186
if (Utils .isTesting) {
187
187
rulesNeedingIds = rulesNeedingIds ++ {
188
188
// In the production code path, the following rules are run in CombinedTypeCoercionRule, and
189
189
// hence we only need to add them for unit testing.
190
- " org.apache.spark.sql.catalyst.analysis.AnsiTypeCoercion$PromoteStringLiterals" ::
191
190
" org.apache.spark.sql.catalyst.analysis.AnsiTypeCoercion$DateTimeOperations" ::
192
191
" org.apache.spark.sql.catalyst.analysis.AnsiTypeCoercion$GetDateFieldOperations" ::
192
+ " org.apache.spark.sql.catalyst.analysis.AnsiTypeCoercion$PromoteStringLiterals" ::
193
193
" org.apache.spark.sql.catalyst.analysis.DecimalPrecision" ::
194
194
" org.apache.spark.sql.catalyst.analysis.TypeCoercion$BooleanEquality" ::
195
195
" org.apache.spark.sql.catalyst.analysis.TypeCoercion$DateTimeOperations" ::
196
+ " org.apache.spark.sql.catalyst.analysis.TypeCoercion$PromoteStrings" ::
196
197
" org.apache.spark.sql.catalyst.analysis.TypeCoercionBase$CaseWhenCoercion" ::
197
198
" org.apache.spark.sql.catalyst.analysis.TypeCoercionBase$ConcatCoercion" ::
198
199
" org.apache.spark.sql.catalyst.analysis.TypeCoercionBase$Division" ::
@@ -203,7 +204,6 @@ object RuleIdCollection {
203
204
" org.apache.spark.sql.catalyst.analysis.TypeCoercionBase$InConversion" ::
204
205
" org.apache.spark.sql.catalyst.analysis.TypeCoercionBase$IntegralDivision" ::
205
206
" org.apache.spark.sql.catalyst.analysis.TypeCoercionBase$MapZipWithCoercion" ::
206
- " org.apache.spark.sql.catalyst.analysis.TypeCoercion$PromoteStrings" ::
207
207
" org.apache.spark.sql.catalyst.analysis.TypeCoercionBase$StackCoercion" ::
208
208
" org.apache.spark.sql.catalyst.analysis.TypeCoercionBase$StringLiteralCoercion" ::
209
209
" org.apache.spark.sql.catalyst.analysis.TypeCoercionBase$WindowFrameCoercion" :: Nil
0 commit comments