You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudberry.apache.org by re...@apache.org on 2025/02/13 06:04:16 UTC
(cloudberry) 27/43: Fix redundant sort being enforced on group aggregate (#16276)
This is an automated email from the ASF dual-hosted git repository.
reshke pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/cloudberry.git
commit 80fa455a18a8bb77e032e580750637ab0700f4e6
Author: bhari <bh...@vmware.com>
AuthorDate: Tue Aug 29 19:24:04 2023 +0530
Fix redundant sort being enforced on group aggregate (#16276)
**Issue:**
Redundant sort is being enforced on group aggregate.
For a Query like,
`EXPLAIN (costs off) SELECT a FROM foo GROUP BY a ORDER BY a;`
Plan generated before fix:
QUERY PLAN
------------------------------------------
Gather Motion 1:1 (slice1; segments: 1)
Merge Key: a
-> Sort
Sort Key: a
-> GroupAggregate
Group Key: a
-> Sort
Sort Key: a
-> Seq Scan on foo
Sort operator enforced on top of GroupAggregate is redundant
as output from GroupAggregate is already in sorted order.
**RCA:**
If num_of_rows to be sorted is estimated as <= 1, cost is estimated as 0.
The Sort expression is being considered first
for finding an expr that satisfies the optimization context with sort requirement.
Since it has 0 cost, it is redundantly added on top of aggregate operator.
**FIX:**
To avoid costing the Sort operator as 0 when num_of_rows <= 1,
minimum num_of_rows is being set as 2 just like it is done in postgres optimizer.
This is fetching a minimum cost value of > 0, and sort won't be added redundantly.
**Test related changes**
* Fix /src/test/regress tests plan diff failures
* Fix failing mdp tests because of plan changes
* Could not fix DQA-SplitScalarOnDistCol.mdp test case with fix_mdps.py,
so had to add new mdp file from command in test comment.
* Add new mdp test case for issue query.
---
contrib/pg_trgm/expected/pg_trgm_optimizer.out | 20 +-
.../data/dxl/minidump/AggWithVolatileFunc.mdp | 14 +-
.../AggregatesConstraintDeriveNegation.mdp | 111 ++-
.../minidump/AnyPredicate-Over-UnionOfConsts.mdp | 10 +-
.../AnySubq-With-NonScalarSubqueryChild-1.mdp | 24 +-
.../AnySubq-With-NonScalarSubqueryChild-2.mdp | 16 +-
.../dxl/minidump/BitmapIndexApply-PartTable.mdp | 304 +++---
.../data/dxl/minidump/BitmapIndexScanCost.mdp | 126 +--
.../NoOpMotionUsesOnlyGroupOutputColumns.mdp | 16 +-
.../ParallelAppend-Select.mdp | 8 +-
.../gporca/data/dxl/minidump/CTE-PartTbl.mdp | 20 +-
.../gporca/data/dxl/minidump/CTE-Preds1.mdp | 10 +-
.../gporca/data/dxl/minidump/CTE-Preds2.mdp | 10 +-
.../gporca/data/dxl/minidump/CTE15Replicated.mdp | 10 +-
.../gporca/data/dxl/minidump/CTE2Replicated.mdp | 10 +-
.../dxl/minidump/CTEConstraintDeriveNegation.mdp | 111 ++-
.../data/dxl/minidump/CTEWithMergedGroup.mdp | 322 +++---
.../data/dxl/minidump/CTEWithVolatileFunction.mdp | 14 +-
.../dxl/minidump/CollapseGb-With-Agg-Funcs.mdp | 146 ++-
.../dxl/minidump/CollapseGb-Without-Agg-Funcs.mdp | 78 +-
.../gporca/data/dxl/minidump/CollapseNot.mdp | 172 ++--
.../data/dxl/minidump/CompositeTypeRelMdId.mdp | 127 ++-
.../minidump/CorrelatedNLJWithTrueCondition.mdp | 83 +-
.../CorrelatedSubqueryWithAggWindowFunc.mdp | 12 +-
.../dxl/minidump/DML-With-WindowFunc-OuterRef.mdp | 18 +-
.../data/dxl/minidump/DQA-KeepOuterReference.mdp | 12 +-
.../dxl/minidump/DQA-NonRedistributableCol.mdp | 10 +-
.../gporca/data/dxl/minidump/DQA-SplitScalar.mdp | 8 +-
.../data/dxl/minidump/DQA-SplitScalarOnDistCol.mdp | 280 ++++--
.../dxl/minidump/DQA-SplitScalarWithAggAndGuc.mdp | 115 +--
.../data/dxl/minidump/DQA-SplitScalarWithGuc.mdp | 8 +-
.../dxl/minidump/DeleteMismatchedDistribution.mdp | 2 +-
.../data/dxl/minidump/Distinct-LegacyOpfamily.mdp | 86 +-
.../dxl/minidump/DonotPushPartConstThruLimit.mdp | 12 +-
.../minidump/DontAddRedistributeBeforeInsert-1.mdp | 16 +-
.../data/dxl/minidump/EagerAggEmptyInput.mdp | 161 ++-
.../dxl/minidump/EagerAggGroupColumnInJoin.mdp | 234 ++---
.../gporca/data/dxl/minidump/EagerAggMax.mdp | 161 ++-
.../gporca/data/dxl/minidump/EagerAggSubquery.mdp | 246 +++--
.../data/dxl/minidump/EquivClassesIntersect.mdp | 14 +-
.../gporca/data/dxl/minidump/EquivClassesUnion.mdp | 8 +-
.../data/dxl/minidump/Except-Volatile-Func.mdp | 6 +-
.../dxl/minidump/ExceptAllCompatibleDataType.mdp | 30 +-
.../dxl/minidump/ExceptHashCompatibleRange.mdp | 4 +-
.../dxl/minidump/ExceptHashIncompatibleRange.mdp | 4 +-
.../ExistentialSubquriesInsideScalarExpression.mdp | 274 ++---
.../data/dxl/minidump/ExistsSubqInsideExpr.mdp | 8 +-
...ExtractPredicateFromDisjWithComputedColumns.mdp | 184 +---
.../minidump/FullJoin-2PredicateOnDistColumns.mdp | 8 +-
.../gporca/data/dxl/minidump/FullJoin-Caps.mdp | 8 +-
.../FullJoin-InnerNotOnDistributionColumn.mdp | 8 +-
.../minidump/FullJoin-NotOnDistributionColumn.mdp | 8 +-
.../dxl/minidump/FullJoin-OnDistributionColumn.mdp | 8 +-
.../data/dxl/minidump/FullJoin-Replicated.mdp | 8 +-
.../FullJoin-Subquery-CastedPredicates.mdp | 12 +-
.../dxl/minidump/FullJoin-SubquerySingleton.mdp | 14 +-
.../minidump/FullJoin-SubqueryWithRedistribute.mdp | 12 +-
.../dxl/minidump/FullJoin-SwappedPredicates.mdp | 8 +-
.../Gist-AOCOTable-NonLossy-BitmapIndexPlan.mdp | 6 +-
.../data/dxl/minidump/Gist-OrderBy-BitmapPlan.mdp | 12 +-
.../data/dxl/minidump/Gist-OrderBy-IndexPlan.mdp | 14 +-
.../gporca/data/dxl/minidump/GroupingSets.mdp | 16 +-
.../minidump/IndexApply-Heterogeneous-NoDTS.mdp | 246 ++---
.../data/dxl/minidump/IndexApply-PartTable.mdp | 266 +++--
.../IndexScan-OrderBy-on-MultiCol-NonIndex.mdp | 6 +-
.../gporca/data/dxl/minidump/InferPredicates.mdp | 14 +-
.../data/dxl/minidump/InferPredicatesForPartSQ.mdp | 8 +-
.../minidump/InferPredicatesFromExistsSubquery.mdp | 2 +-
.../minidump/InferPredicatesIntFromSubquery.mdp | 2 +-
.../minidump/InnerJoinBroadcastTableHashSpec.mdp | 173 ++--
.../data/dxl/minidump/InnerJoinOverJoinExcept.mdp | 156 ++-
.../dxl/minidump/InnerJoinOverJoinExceptAll.mdp | 16 +-
.../minidump/InnerJoinReplicatedTableHashSpec.mdp | 189 ++--
.../InsertSortDistributed2CoordinatorOnly.mdp | 8 +-
.../data/dxl/minidump/Intersect-Volatile-Func.mdp | 12 +-
.../gporca/data/dxl/minidump/JoinTinterval.mdp | 6 +-
.../gporca/data/dxl/minidump/LOJ-With-Agg.mdp | 179 +---
.../gporca/data/dxl/minidump/LOJ_bb_mpph.mdp | 664 ++++++-------
.../data/dxl/minidump/LeftJoin-With-Coalesce.mdp | 6 +-
.../minidump/LeftJoinBroadcastTableHashSpec.mdp | 271 ++---
.../dxl/minidump/LeftJoinPruningInnerQuery.mdp | 10 +-
.../LeftOuter2InnerUnionAllAntiSemiJoin.mdp | 91 +-
.../data/dxl/minidump/ManyTextUnionsInSubquery.mdp | 2 +-
.../data/dxl/minidump/MissingBoolColStats.mdp | 6 +-
.../MultiColumnAggWithDefaultOpfamilies.mdp | 8 +-
.../data/dxl/minidump/NLJ-Rewindability-CTAS.mdp | 26 +-
.../gporca/data/dxl/minidump/NLJ-Rewindability.mdp | 20 +-
.../gporca/data/dxl/minidump/Nested-Setops-2.mdp | 30 +-
.../gporca/data/dxl/minidump/Nested-Setops.mdp | 230 ++---
.../dxl/minidump/NestedJoinWithCastedColumn.mdp | 12 +-
.../data/dxl/minidump/NestedSubqLimitBindings.mdp | 364 +++----
.../data/dxl/minidump/NoRedistributeOnAppend.mdp | 533 +++++-----
.../data/dxl/minidump/Non-Hashjoinable-Pred.mdp | 8 +-
...ableHashSpec.mdp => OrderByNoRedundantSort.mdp} | 439 ++++----
.../dxl/minidump/OrderedAgg_multiple_diffcol.mdp | 38 +-
.../dxl/minidump/OrderedAgg_multiple_samecol.mdp | 18 +-
.../OrderedAgg_multiple_samecol_difforderespec.mdp | 38 +-
.../gporca/data/dxl/minidump/OrderedAgg_single.mdp | 18 +-
.../data/dxl/minidump/OrderedAgg_skewed_data.mdp | 127 +--
.../data/dxl/minidump/OrderedAgg_with_groupby.mdp | 8 +-
.../dxl/minidump/OrderedAgg_with_nonOrderedAgg.mdp | 40 +-
.../minidump/OrderedAgg_with_nonconst_fraction.mdp | 22 +-
.../PartTbl-AggWithExistentialSubquery.mdp | 10 +-
.../gporca/data/dxl/minidump/PartTbl-DPE-Limit.mdp | 16 +-
.../dxl/minidump/PartTbl-IndexOnDefPartOnly.mdp | 8 +-
.../data/dxl/minidump/PartTbl-JoinOverGbAgg-2.mdp | 18 +-
.../data/dxl/minidump/PartTbl-JoinOverGbAgg.mdp | 16 +-
.../gporca/data/dxl/minidump/PartTbl-SQAny.mdp | 14 +-
.../gporca/data/dxl/minidump/PartTbl-SQExists.mdp | 2 +-
.../data/dxl/minidump/PartTbl-SQNotExists.mdp | 2 +-
.../gporca/data/dxl/minidump/PartTbl-SQScalar.mdp | 14 +-
.../data/dxl/minidump/Preds-Over-WinFunc1.mdp | 6 +-
.../data/dxl/minidump/Preds-Over-WinFunc2.mdp | 8 +-
.../data/dxl/minidump/Preds-Over-WinFunc3.mdp | 10 +-
.../data/dxl/minidump/Preds-Over-WinFunc4.mdp | 12 +-
.../data/dxl/minidump/Preds-Over-WinFunc5.mdp | 12 +-
.../data/dxl/minidump/Push-Subplan-Below-Union.mdp | 1048 +++++++++-----------
.../dxl/minidump/PushFilterToSemiJoinLeftChild.mdp | 2 +-
.../dxl/minidump/PushGbBelowJoin-NegativeCase.mdp | 30 +-
.../gporca/data/dxl/minidump/PushGbBelowUnion.mdp | 311 +++---
...ueryMismatchedDistribution-DynamicIndexScan.mdp | 171 ++--
.../dxl/minidump/QueryMismatchedDistribution.mdp | 156 ++-
.../gporca/data/dxl/minidump/RTErequiredPerms.mdp | 2 +-
.../dxl/minidump/Remove-Distinct-From-Subquery.mdp | 70 +-
.../minidump/RemoveUnusedProjElementsInGbAgg.mdp | 10 +-
.../gporca/data/dxl/minidump/RollupNoAgg.mdp | 14 +-
.../minidump/ScalarCorrelatedSubqueryCountStar.mdp | 139 +--
.../data/dxl/minidump/ScalarSubqueryCountStar.mdp | 149 ++-
.../dxl/minidump/ScalarSubqueryCountStarInJoin.mdp | 430 +++-----
.../minidump/SemiJoinWithWindowsFuncInSubquery.mdp | 10 +-
.../gporca/data/dxl/minidump/SortOverStreamAgg.mdp | 12 +-
.../data/dxl/minidump/Subq2NotInWhereLOJ.mdp | 670 ++++++-------
.../data/dxl/minidump/SubqAll-To-ScalarSubq.mdp | 336 +++----
.../minidump/SubqAny-InsideScalarExpression.mdp | 172 ++--
.../minidump/SubqExists-With-External-Corrs.mdp | 6 +-
.../dxl/minidump/SubqOuterReferenceInClause.mdp | 8 +-
.../data/dxl/minidump/Switch-With-Subquery.mdp | 111 +--
.../dxl/minidump/TaintedReplicatedTablesCTE.mdp | 12 +-
.../ThreeStageAgg-GbandDistinctOnDistrCol.mdp | 8 +-
.../data/dxl/minidump/Tpcds-NonPart-Q70a.mdp | 963 ++++++++----------
.../gporca/data/dxl/minidump/UDA-AnyArray.mdp | 119 +--
.../dxl/minidump/Union-NOT-Plus-OR-Constraint.mdp | 6 +-
.../gporca/data/dxl/minidump/UnionGbSubquery.mdp | 2 +-
.../gporca/data/dxl/minidump/UnionWithCTE.mdp | 141 +--
.../data/dxl/minidump/UpdateUniqueConstraint.mdp | 4 +-
...tributionSatisfactionForUniversalInnerChild.mdp | 6 +-
.../gporca/libgpdbcost/src/CCostModelGPDB.cpp | 4 +-
.../src/unittest/gpopt/minidump/CAggTest.cpp | 1 +
.../regress/expected/bfv_aggregate_optimizer.out | 60 +-
.../expected/bfv_dd_multicolumn_optimizer.out | 8 +-
src/test/regress/expected/bfv_olap_optimizer.out | 42 +-
src/test/regress/expected/gp_dqa_optimizer.out | 110 +-
.../expected/gpdist_legacy_opclasses_optimizer.out | 14 +-
src/test/regress/expected/gporca_optimizer.out | 120 +--
.../regress/expected/groupingsets_optimizer.out | 62 +-
src/test/regress/expected/join_optimizer.out | 61 +-
src/test/regress/expected/olap_plans_optimizer.out | 94 +-
.../expected/qp_join_union_all_optimizer.out | 74 +-
src/test/regress/expected/rpt_optimizer.out | 44 +-
.../regress/expected/subselect_gp_optimizer.out | 44 +-
160 files changed, 6243 insertions(+), 7890 deletions(-)
diff --git a/contrib/pg_trgm/expected/pg_trgm_optimizer.out b/contrib/pg_trgm/expected/pg_trgm_optimizer.out
index bc8d0761ac..4597b8ca04 100644
--- a/contrib/pg_trgm/expected/pg_trgm_optimizer.out
+++ b/contrib/pg_trgm/expected/pg_trgm_optimizer.out
@@ -5413,26 +5413,18 @@ SELECT similarity('Szczecin', 'Warsaw');
EXPLAIN (COSTS OFF)
SELECT DISTINCT city, similarity(city, 'Warsaw'), show_limit()
FROM restaurants WHERE city % 'Warsaw';
- QUERY PLAN
-------------------------------------------------------------------------------------------------------
+ QUERY PLAN
+---------------------------------------------------------------------------------
Gather Motion 3:1 (slice1; segments: 3)
-> GroupAggregate
Group Key: city, (similarity(city, 'Warsaw'::text)), ('0.3'::real)
-> Sort
Sort Key: city, (similarity(city, 'Warsaw'::text)), ('0.3'::real)
- -> Redistribute Motion 3:3 (slice2; segments: 3)
- Hash Key: city, (similarity(city, 'Warsaw'::text)), ('0.3'::real)
- -> GroupAggregate
- Group Key: city, (similarity(city, 'Warsaw'::text)), ('0.3'::real)
- -> Sort
- Sort Key: city, (similarity(city, 'Warsaw'::text)), ('0.3'::real)
- -> Result
- -> Redistribute Motion 3:3 (slice3; segments: 3)
- -> Index Scan using restaurants_city_idx on restaurants
- Index Cond: (city % 'Warsaw'::text)
- Filter: (city % 'Warsaw'::text)
+ -> Index Scan using restaurants_city_idx on restaurants
+ Index Cond: (city % 'Warsaw'::text)
+ Filter: (city % 'Warsaw'::text)
Optimizer: Pivotal Optimizer (GPORCA)
-(17 rows)
+(9 rows)
SELECT set_limit(0.3);
set_limit
diff --git a/src/backend/gporca/data/dxl/minidump/AggWithVolatileFunc.mdp b/src/backend/gporca/data/dxl/minidump/AggWithVolatileFunc.mdp
index bcc1f3412b..64bfee7587 100644
--- a/src/backend/gporca/data/dxl/minidump/AggWithVolatileFunc.mdp
+++ b/src/backend/gporca/data/dxl/minidump/AggWithVolatileFunc.mdp
@@ -275,7 +275,7 @@
<dxl:Plan Id="0" SpaceSize="20">
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000070" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000161" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="ten">
@@ -288,7 +288,7 @@
</dxl:SortingColumnList>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000055" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000146" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="ten">
@@ -303,7 +303,7 @@
<dxl:LimitOffset/>
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000055" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000100" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="ten">
@@ -315,7 +315,7 @@
<dxl:Ident ColId="1" ColName="ten" TypeMdid="0.23.1.0"/>
<dxl:OpExpr OperatorName="+" OperatorMdid="0.692.1.0" OperatorType="0.20.1.0">
<dxl:ConstValue TypeMdid="0.23.1.0" Value="10"/>
- <dxl:FuncExpr FuncId="0.1574.1.0" FuncRetSet="false" TypeMdid="0.20.1.0">
+ <dxl:FuncExpr FuncId="0.1574.1.0" FuncRetSet="false" TypeMdid="0.20.1.0" FuncVariadic="false">
<dxl:ConstValue TypeMdid="0.2205.1.0" Value="6EoDAA=="/>
</dxl:FuncExpr>
</dxl:OpExpr>
@@ -324,7 +324,7 @@
<dxl:OneTimeFilter/>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000022" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000067" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="1"/>
@@ -337,7 +337,7 @@
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000016" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000061" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="ten">
@@ -362,7 +362,7 @@
<dxl:Filter/>
<dxl:SortingColumnList/>
<dxl:HashExprList>
- <dxl:HashExpr TypeMdid="0.23.1.0">
+ <dxl:HashExpr>
<dxl:Ident ColId="1" ColName="ten" TypeMdid="0.23.1.0"/>
</dxl:HashExpr>
</dxl:HashExprList>
diff --git a/src/backend/gporca/data/dxl/minidump/AggregatesConstraintDeriveNegation.mdp b/src/backend/gporca/data/dxl/minidump/AggregatesConstraintDeriveNegation.mdp
index a54f110033..801e74033e 100644
--- a/src/backend/gporca/data/dxl/minidump/AggregatesConstraintDeriveNegation.mdp
+++ b/src/backend/gporca/data/dxl/minidump/AggregatesConstraintDeriveNegation.mdp
@@ -218,10 +218,10 @@ explain select distinct a from t1 where a is not null and not (a = b);
</dxl:LogicalSelect>
</dxl:LogicalGroupBy>
</dxl:Query>
- <dxl:Plan Id="0" SpaceSize="2">
+ <dxl:Plan Id="0" SpaceSize="10">
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000126" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000230" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -232,7 +232,7 @@ explain select distinct a from t1 where a is not null and not (a = b);
<dxl:SortingColumnList/>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000111" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000215" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="0"/>
@@ -245,7 +245,7 @@ explain select distinct a from t1 where a is not null and not (a = b);
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000106" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000210" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -258,44 +258,87 @@ explain select distinct a from t1 where a is not null and not (a = b);
</dxl:SortingColumnList>
<dxl:LimitCount/>
<dxl:LimitOffset/>
- <dxl:TableScan>
+ <dxl:RedistributeMotion InputSegments="0,1,2" OutputSegments="0,1,2">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000106" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000165" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
<dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
- <dxl:Filter>
- <dxl:And>
- <dxl:Not>
- <dxl:IsNull>
- <dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
- </dxl:IsNull>
- </dxl:Not>
- <dxl:Not>
- <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
+ <dxl:Filter/>
+ <dxl:SortingColumnList/>
+ <dxl:HashExprList>
+ <dxl:HashExpr>
+ <dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
+ </dxl:HashExpr>
+ </dxl:HashExprList>
+ <dxl:Aggregate AggregationStrategy="Hashed" StreamSafe="true">
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="431.000159" Rows="1.000000" Width="4"/>
+ </dxl:Properties>
+ <dxl:GroupingColumns>
+ <dxl:GroupingColumn ColId="0"/>
+ </dxl:GroupingColumns>
+ <dxl:ProjList>
+ <dxl:ProjElem ColId="0" Alias="a">
+ <dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ </dxl:ProjList>
+ <dxl:Filter/>
+ <dxl:RandomMotion InputSegments="0,1,2" OutputSegments="0,1,2">
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="431.000116" Rows="1.000000" Width="4"/>
+ </dxl:Properties>
+ <dxl:ProjList>
+ <dxl:ProjElem ColId="0" Alias="a">
<dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
- <dxl:Ident ColId="1" ColName="b" TypeMdid="0.23.1.0"/>
- </dxl:Comparison>
- </dxl:Not>
- </dxl:And>
- </dxl:Filter>
- <dxl:TableDescriptor Mdid="6.16385.1.0" TableName="t1">
- <dxl:Columns>
- <dxl:Column ColId="0" Attno="1" ColName="a" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="1" Attno="2" ColName="b" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="4" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
- <dxl:Column ColId="5" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="6" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="7" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="8" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="9" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
- <dxl:Column ColId="10" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:TableScan>
+ </dxl:ProjElem>
+ </dxl:ProjList>
+ <dxl:Filter/>
+ <dxl:SortingColumnList/>
+ <dxl:TableScan>
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="431.000106" Rows="1.000000" Width="4"/>
+ </dxl:Properties>
+ <dxl:ProjList>
+ <dxl:ProjElem ColId="0" Alias="a">
+ <dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ </dxl:ProjList>
+ <dxl:Filter>
+ <dxl:And>
+ <dxl:Not>
+ <dxl:IsNull>
+ <dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
+ </dxl:IsNull>
+ </dxl:Not>
+ <dxl:Not>
+ <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
+ <dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
+ <dxl:Ident ColId="1" ColName="b" TypeMdid="0.23.1.0"/>
+ </dxl:Comparison>
+ </dxl:Not>
+ </dxl:And>
+ </dxl:Filter>
+ <dxl:TableDescriptor Mdid="6.16385.1.0" TableName="t1">
+ <dxl:Columns>
+ <dxl:Column ColId="0" Attno="1" ColName="a" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="1" Attno="2" ColName="b" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="4" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
+ <dxl:Column ColId="5" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="6" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="7" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="8" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="9" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
+ <dxl:Column ColId="10" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:TableScan>
+ </dxl:RandomMotion>
+ </dxl:Aggregate>
+ </dxl:RedistributeMotion>
</dxl:Sort>
</dxl:Aggregate>
</dxl:GatherMotion>
diff --git a/src/backend/gporca/data/dxl/minidump/AnyPredicate-Over-UnionOfConsts.mdp b/src/backend/gporca/data/dxl/minidump/AnyPredicate-Over-UnionOfConsts.mdp
index 79c280c989..5d943d2b93 100644
--- a/src/backend/gporca/data/dxl/minidump/AnyPredicate-Over-UnionOfConsts.mdp
+++ b/src/backend/gporca/data/dxl/minidump/AnyPredicate-Over-UnionOfConsts.mdp
@@ -170,7 +170,7 @@
<dxl:Plan Id="0" SpaceSize="1518">
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1724.000526" Rows="1.000000" Width="1"/>
+ <dxl:Cost StartupCost="0" TotalCost="1724.000572" Rows="1.000000" Width="1"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="5" Alias="?column?">
@@ -195,7 +195,7 @@
<dxl:OneTimeFilter/>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1724.000525" Rows="2.000000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="1724.000571" Rows="2.000000" Width="16"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="0"/>
@@ -228,7 +228,7 @@
<dxl:Filter/>
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1724.000495" Rows="2.000000" Width="6"/>
+ <dxl:Cost StartupCost="0" TotalCost="1724.000541" Rows="2.000000" Width="6"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="8" Alias="ColRef_0008">
@@ -254,7 +254,7 @@
<dxl:OneTimeFilter/>
<dxl:NestedLoopJoin JoinType="Left" IndexNestedLoopJoin="false" OuterRefAsParam="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1724.000483" Rows="2.000000" Width="6"/>
+ <dxl:Cost StartupCost="0" TotalCost="1724.000529" Rows="2.000000" Width="6"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="">
@@ -273,7 +273,7 @@
</dxl:JoinFilter>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="0.000001" Rows="1.000000" Width="1"/>
+ <dxl:Cost StartupCost="0" TotalCost="0.000012" Rows="1.000000" Width="1"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="">
diff --git a/src/backend/gporca/data/dxl/minidump/AnySubq-With-NonScalarSubqueryChild-1.mdp b/src/backend/gporca/data/dxl/minidump/AnySubq-With-NonScalarSubqueryChild-1.mdp
index cb0a7605d3..e5aa91f47c 100644
--- a/src/backend/gporca/data/dxl/minidump/AnySubq-With-NonScalarSubqueryChild-1.mdp
+++ b/src/backend/gporca/data/dxl/minidump/AnySubq-With-NonScalarSubqueryChild-1.mdp
@@ -438,10 +438,10 @@
</dxl:LogicalGet>
</dxl:LogicalSelect>
</dxl:Query>
- <dxl:Plan Id="0" SpaceSize="3378">
+ <dxl:Plan Id="0" SpaceSize="1426">
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1389253302070.343018" Rows="1.000000" Width="15"/>
+ <dxl:Cost StartupCost="0" TotalCost="1389253302320.306396" Rows="1.000000" Width="15"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -458,7 +458,7 @@
<dxl:SortingColumnList/>
<dxl:NestedLoopJoin JoinType="In" IndexNestedLoopJoin="false" OuterRefAsParam="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1389253302070.343018" Rows="1.000000" Width="15"/>
+ <dxl:Cost StartupCost="0" TotalCost="1389253302320.306396" Rows="1.000000" Width="15"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -508,27 +508,27 @@
</dxl:TableScan>
<dxl:Materialize Eager="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1356691815.803030" Rows="5.400000" Width="1"/>
+ <dxl:Cost StartupCost="0" TotalCost="1356691816.047135" Rows="5.400000" Width="1"/>
</dxl:Properties>
<dxl:ProjList/>
<dxl:Filter/>
<dxl:BroadcastMotion InputSegments="0,1,2" OutputSegments="0,1,2">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1356691815.803028" Rows="5.400000" Width="1"/>
+ <dxl:Cost StartupCost="0" TotalCost="1356691816.047133" Rows="5.400000" Width="1"/>
</dxl:Properties>
<dxl:ProjList/>
<dxl:Filter/>
<dxl:SortingColumnList/>
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1356691815.802996" Rows="1.800000" Width="1"/>
+ <dxl:Cost StartupCost="0" TotalCost="1356691816.047101" Rows="1.800000" Width="1"/>
</dxl:Properties>
<dxl:ProjList/>
<dxl:Filter/>
<dxl:OneTimeFilter/>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1356691815.802996" Rows="1.800000" Width="1"/>
+ <dxl:Cost StartupCost="0" TotalCost="1356691816.047101" Rows="1.800000" Width="1"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="10"/>
@@ -565,7 +565,7 @@
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1356691815.802974" Rows="1.800000" Width="22"/>
+ <dxl:Cost StartupCost="0" TotalCost="1356691816.047079" Rows="1.800000" Width="22"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="10" Alias="a">
@@ -604,7 +604,7 @@
<dxl:LimitOffset/>
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1356691815.802974" Rows="1.800000" Width="22"/>
+ <dxl:Cost StartupCost="0" TotalCost="1356691816.046829" Rows="1.800000" Width="22"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="10" Alias="a">
@@ -657,7 +657,7 @@
<dxl:OneTimeFilter/>
<dxl:NestedLoopJoin JoinType="Left" IndexNestedLoopJoin="false" OuterRefAsParam="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1356691815.802776" Rows="4.500000" Width="22"/>
+ <dxl:Cost StartupCost="0" TotalCost="1356691816.046632" Rows="4.500000" Width="22"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="10" Alias="a">
@@ -688,7 +688,7 @@
</dxl:JoinFilter>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1324032.351171" Rows="2.250000" Width="21"/>
+ <dxl:Cost StartupCost="0" TotalCost="1324032.351409" Rows="2.250000" Width="21"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="10"/>
@@ -721,7 +721,7 @@
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1324032.351138" Rows="2.250000" Width="21"/>
+ <dxl:Cost StartupCost="0" TotalCost="1324032.351376" Rows="2.250000" Width="21"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="10" Alias="a">
diff --git a/src/backend/gporca/data/dxl/minidump/AnySubq-With-NonScalarSubqueryChild-2.mdp b/src/backend/gporca/data/dxl/minidump/AnySubq-With-NonScalarSubqueryChild-2.mdp
index 7e07b265b2..f24dd6dc44 100644
--- a/src/backend/gporca/data/dxl/minidump/AnySubq-With-NonScalarSubqueryChild-2.mdp
+++ b/src/backend/gporca/data/dxl/minidump/AnySubq-With-NonScalarSubqueryChild-2.mdp
@@ -418,10 +418,10 @@
</dxl:LogicalGet>
</dxl:LogicalSelect>
</dxl:Query>
- <dxl:Plan Id="0" SpaceSize="426">
+ <dxl:Plan Id="0" SpaceSize="182">
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1356691815.392586" Rows="1.000000" Width="15"/>
+ <dxl:Cost StartupCost="0" TotalCost="1356691815.597956" Rows="1.000000" Width="15"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -438,7 +438,7 @@
<dxl:SortingColumnList/>
<dxl:NestedLoopJoin JoinType="In" IndexNestedLoopJoin="false" OuterRefAsParam="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1356691815.392530" Rows="1.000000" Width="15"/>
+ <dxl:Cost StartupCost="0" TotalCost="1356691815.597900" Rows="1.000000" Width="15"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -488,27 +488,27 @@
</dxl:TableScan>
<dxl:Materialize Eager="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1324032.350930" Rows="6.750000" Width="1"/>
+ <dxl:Cost StartupCost="0" TotalCost="1324032.351131" Rows="6.750000" Width="1"/>
</dxl:Properties>
<dxl:ProjList/>
<dxl:Filter/>
<dxl:BroadcastMotion InputSegments="0,1,2" OutputSegments="0,1,2">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1324032.350928" Rows="6.750000" Width="1"/>
+ <dxl:Cost StartupCost="0" TotalCost="1324032.351128" Rows="6.750000" Width="1"/>
</dxl:Properties>
<dxl:ProjList/>
<dxl:Filter/>
<dxl:SortingColumnList/>
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1324032.350888" Rows="2.250000" Width="1"/>
+ <dxl:Cost StartupCost="0" TotalCost="1324032.351088" Rows="2.250000" Width="1"/>
</dxl:Properties>
<dxl:ProjList/>
<dxl:Filter/>
<dxl:OneTimeFilter/>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1324032.350888" Rows="2.250000" Width="1"/>
+ <dxl:Cost StartupCost="0" TotalCost="1324032.351088" Rows="2.250000" Width="1"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="10"/>
@@ -541,7 +541,7 @@
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1324032.350862" Rows="2.400000" Width="21"/>
+ <dxl:Cost StartupCost="0" TotalCost="1324032.351063" Rows="2.400000" Width="21"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="10" Alias="a">
diff --git a/src/backend/gporca/data/dxl/minidump/BitmapIndexApply-PartTable.mdp b/src/backend/gporca/data/dxl/minidump/BitmapIndexApply-PartTable.mdp
index 50693ca6f2..84cff0393d 100644
--- a/src/backend/gporca/data/dxl/minidump/BitmapIndexApply-PartTable.mdp
+++ b/src/backend/gporca/data/dxl/minidump/BitmapIndexApply-PartTable.mdp
@@ -1628,7 +1628,7 @@ ORDER BY 1 asc ;
<dxl:Plan Id="0" SpaceSize="35">
<dxl:GatherMotion InputSegments="0,1" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="889.240826" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="889.240917" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="23" Alias="fivemin">
@@ -1639,35 +1639,35 @@ ORDER BY 1 asc ;
<dxl:SortingColumnList>
<dxl:SortingColumn ColId="23" SortOperatorMdid="0.412.1.0" SortOperatorName="<" SortNullsFirst="false"/>
</dxl:SortingColumnList>
- <dxl:Sort SortDiscardDuplicates="false">
+ <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="889.240790" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="889.240881" Rows="1.000000" Width="8"/>
</dxl:Properties>
+ <dxl:GroupingColumns>
+ <dxl:GroupingColumn ColId="23"/>
+ </dxl:GroupingColumns>
<dxl:ProjList>
<dxl:ProjElem ColId="23" Alias="fivemin">
<dxl:Ident ColId="23" ColName="fivemin" TypeMdid="0.20.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="23" SortOperatorMdid="0.412.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
+ <dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="889.240790" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="889.240871" Rows="1.000000" Width="8"/>
</dxl:Properties>
- <dxl:GroupingColumns>
- <dxl:GroupingColumn ColId="23"/>
- </dxl:GroupingColumns>
<dxl:ProjList>
<dxl:ProjElem ColId="23" Alias="fivemin">
<dxl:Ident ColId="23" ColName="fivemin" TypeMdid="0.20.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:Sort SortDiscardDuplicates="false">
+ <dxl:SortingColumnList>
+ <dxl:SortingColumn ColId="23" SortOperatorMdid="0.412.1.0" SortOperatorName="<" SortNullsFirst="false"/>
+ </dxl:SortingColumnList>
+ <dxl:LimitCount/>
+ <dxl:LimitOffset/>
+ <dxl:RedistributeMotion InputSegments="0,1" OutputSegments="0,1">
<dxl:Properties>
<dxl:Cost StartupCost="0" TotalCost="889.240780" Rows="1.000000" Width="8"/>
</dxl:Properties>
@@ -1677,63 +1677,62 @@ ORDER BY 1 asc ;
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="23" SortOperatorMdid="0.412.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:RedistributeMotion InputSegments="0,1" OutputSegments="0,1">
+ <dxl:SortingColumnList/>
+ <dxl:HashExprList>
+ <dxl:HashExpr>
+ <dxl:Ident ColId="23" ColName="fivemin" TypeMdid="0.20.1.0"/>
+ </dxl:HashExpr>
+ </dxl:HashExprList>
+ <dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="889.240780" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="889.240764" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="23" Alias="fivemin">
- <dxl:Ident ColId="23" ColName="fivemin" TypeMdid="0.20.1.0"/>
+ <dxl:OpExpr OperatorName="*" OperatorMdid="0.690.1.0" OperatorType="0.20.1.0">
+ <dxl:OpExpr OperatorName="/" OperatorMdid="0.691.1.0" OperatorType="0.20.1.0">
+ <dxl:OpExpr OperatorName="/" OperatorMdid="0.691.1.0" OperatorType="0.20.1.0">
+ <dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.20.1.0"/>
+ <dxl:ConstValue TypeMdid="0.23.1.0" Value="100000"/>
+ </dxl:OpExpr>
+ <dxl:ConstValue TypeMdid="0.23.1.0" Value="5"/>
+ </dxl:OpExpr>
+ <dxl:ConstValue TypeMdid="0.23.1.0" Value="5"/>
+ </dxl:OpExpr>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList/>
- <dxl:HashExprList>
- <dxl:HashExpr>
- <dxl:Ident ColId="23" ColName="fivemin" TypeMdid="0.20.1.0"/>
- </dxl:HashExpr>
- </dxl:HashExprList>
- <dxl:Result>
+ <dxl:OneTimeFilter/>
+ <dxl:NestedLoopJoin JoinType="Inner" IndexNestedLoopJoin="true" OuterRefAsParam="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="889.240764" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="889.240760" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
- <dxl:ProjElem ColId="23" Alias="fivemin">
- <dxl:OpExpr OperatorName="*" OperatorMdid="0.690.1.0" OperatorType="0.20.1.0">
- <dxl:OpExpr OperatorName="/" OperatorMdid="0.691.1.0" OperatorType="0.20.1.0">
- <dxl:OpExpr OperatorName="/" OperatorMdid="0.691.1.0" OperatorType="0.20.1.0">
- <dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.20.1.0"/>
- <dxl:ConstValue TypeMdid="0.23.1.0" Value="100000"/>
- </dxl:OpExpr>
- <dxl:ConstValue TypeMdid="0.23.1.0" Value="5"/>
- </dxl:OpExpr>
- <dxl:ConstValue TypeMdid="0.23.1.0" Value="5"/>
- </dxl:OpExpr>
+ <dxl:ProjElem ColId="1" Alias="event_ts">
+ <dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.20.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:OneTimeFilter/>
- <dxl:NestedLoopJoin JoinType="Inner" IndexNestedLoopJoin="true" OuterRefAsParam="false">
+ <dxl:JoinFilter>
+ <dxl:ConstValue TypeMdid="0.16.1.0" Value="true"/>
+ </dxl:JoinFilter>
+ <dxl:BroadcastMotion InputSegments="0,1" OutputSegments="0,1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="889.240760" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.292687" Rows="840.000000" Width="25"/>
</dxl:Properties>
<dxl:ProjList>
+ <dxl:ProjElem ColId="0" Alias="symbol">
+ <dxl:Ident ColId="0" ColName="symbol" TypeMdid="0.1042.1.0"/>
+ </dxl:ProjElem>
<dxl:ProjElem ColId="1" Alias="event_ts">
<dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.20.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:JoinFilter>
- <dxl:ConstValue TypeMdid="0.16.1.0" Value="true"/>
- </dxl:JoinFilter>
- <dxl:BroadcastMotion InputSegments="0,1" OutputSegments="0,1">
+ <dxl:SortingColumnList/>
+ <dxl:TableScan>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.292687" Rows="840.000000" Width="25"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.008085" Rows="420.000000" Width="25"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="symbol">
@@ -1744,120 +1743,105 @@ ORDER BY 1 asc ;
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList/>
- <dxl:TableScan>
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.008085" Rows="420.000000" Width="25"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="0" Alias="symbol">
- <dxl:Ident ColId="0" ColName="symbol" TypeMdid="0.1042.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="1" Alias="event_ts">
- <dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.20.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:TableDescriptor Mdid="6.16166631.1.1" TableName="my_tt_agg_small">
- <dxl:Columns>
- <dxl:Column ColId="0" Attno="1" ColName="symbol" TypeMdid="0.1042.1.0" ColWidth="16"/>
- <dxl:Column ColId="1" Attno="2" ColName="event_ts" TypeMdid="0.20.1.0"/>
- <dxl:Column ColId="4" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0"/>
- <dxl:Column ColId="5" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0"/>
- <dxl:Column ColId="6" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0"/>
- <dxl:Column ColId="7" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0"/>
- <dxl:Column ColId="8" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0"/>
- <dxl:Column ColId="9" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0"/>
- <dxl:Column ColId="10" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:TableScan>
- </dxl:BroadcastMotion>
- <dxl:DynamicBitmapTableScan PartIndexId="0" PrintablePartIndexId="1" SelectorIds="">
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="457.941664" Rows="1.000000" Width="1"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="11" Alias="ets">
- <dxl:Ident ColId="11" ColName="ets" TypeMdid="0.20.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="12" Alias="sym">
- <dxl:Ident ColId="12" ColName="sym" TypeMdid="0.1043.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="15" Alias="end_ts">
- <dxl:Ident ColId="15" ColName="end_ts" TypeMdid="0.20.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter>
- <dxl:And>
- <dxl:Comparison ComparisonOperator="<=" OperatorMdid="0.414.1.0">
- <dxl:Ident ColId="11" ColName="ets" TypeMdid="0.20.1.0"/>
- <dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.20.1.0"/>
- </dxl:Comparison>
- <dxl:Comparison ComparisonOperator=">" OperatorMdid="0.413.1.0">
- <dxl:Ident ColId="15" ColName="end_ts" TypeMdid="0.20.1.0"/>
- <dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.20.1.0"/>
- </dxl:Comparison>
- <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.1054.1.0">
- <dxl:Cast TypeMdid="0.1042.1.0" FuncId="0.0.0.0">
- <dxl:Ident ColId="12" ColName="sym" TypeMdid="0.1043.1.0"/>
- </dxl:Cast>
- <dxl:Ident ColId="0" ColName="symbol" TypeMdid="0.1042.1.0"/>
- </dxl:Comparison>
- </dxl:And>
- </dxl:Filter>
- <dxl:RecheckCond>
- <dxl:And>
- <dxl:Comparison ComparisonOperator="<=" OperatorMdid="0.414.1.0">
- <dxl:Ident ColId="11" ColName="ets" TypeMdid="0.20.1.0"/>
- <dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.20.1.0"/>
- </dxl:Comparison>
- <dxl:Comparison ComparisonOperator=">" OperatorMdid="0.413.1.0">
- <dxl:Ident ColId="15" ColName="end_ts" TypeMdid="0.20.1.0"/>
- <dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.20.1.0"/>
- </dxl:Comparison>
- </dxl:And>
- </dxl:RecheckCond>
- <dxl:BitmapIndexProbe>
- <dxl:IndexCondList>
- <dxl:Comparison ComparisonOperator="<=" OperatorMdid="0.414.1.0">
- <dxl:Ident ColId="11" ColName="ets" TypeMdid="0.20.1.0"/>
- <dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.20.1.0"/>
- </dxl:Comparison>
- <dxl:Comparison ComparisonOperator=">" OperatorMdid="0.413.1.0">
- <dxl:Ident ColId="15" ColName="end_ts" TypeMdid="0.20.1.0"/>
- <dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.20.1.0"/>
- </dxl:Comparison>
- </dxl:IndexCondList>
- <dxl:IndexDescriptor Mdid="0.16166830.1.0" IndexName="my_tq_agg_small_ets_end_ts_ix_1_prt_p1"/>
- </dxl:BitmapIndexProbe>
- <dxl:Partitions>
- <dxl:Partition Mdid="6.-1013210183.1.1"/>
- <dxl:Partition Mdid="6.-1013210182.1.1"/>
- <dxl:Partition Mdid="6.-1013210181.1.1"/>
- </dxl:Partitions>
- <dxl:TableDescriptor Mdid="6.16166659.1.1" TableName="my_tq_agg_small">
+ <dxl:TableDescriptor Mdid="6.16166631.1.1" TableName="my_tt_agg_small">
<dxl:Columns>
- <dxl:Column ColId="11" Attno="1" ColName="ets" TypeMdid="0.20.1.0"/>
- <dxl:Column ColId="12" Attno="2" ColName="sym" TypeMdid="0.1043.1.0" ColWidth="16"/>
- <dxl:Column ColId="13" Attno="3" ColName="bid_price" TypeMdid="0.1700.1.0"/>
- <dxl:Column ColId="15" Attno="5" ColName="end_ts" TypeMdid="0.20.1.0"/>
- <dxl:Column ColId="16" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0"/>
- <dxl:Column ColId="17" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0"/>
- <dxl:Column ColId="18" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0"/>
- <dxl:Column ColId="19" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0"/>
- <dxl:Column ColId="20" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0"/>
- <dxl:Column ColId="21" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0"/>
- <dxl:Column ColId="22" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0"/>
+ <dxl:Column ColId="0" Attno="1" ColName="symbol" TypeMdid="0.1042.1.0" ColWidth="16"/>
+ <dxl:Column ColId="1" Attno="2" ColName="event_ts" TypeMdid="0.20.1.0"/>
+ <dxl:Column ColId="4" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0"/>
+ <dxl:Column ColId="5" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0"/>
+ <dxl:Column ColId="6" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0"/>
+ <dxl:Column ColId="7" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0"/>
+ <dxl:Column ColId="8" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0"/>
+ <dxl:Column ColId="9" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0"/>
+ <dxl:Column ColId="10" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0"/>
</dxl:Columns>
</dxl:TableDescriptor>
- </dxl:DynamicBitmapTableScan>
- </dxl:NestedLoopJoin>
- </dxl:Result>
- </dxl:RedistributeMotion>
- </dxl:Sort>
- </dxl:Aggregate>
- </dxl:Sort>
+ </dxl:TableScan>
+ </dxl:BroadcastMotion>
+ <dxl:DynamicBitmapTableScan SelectorIds="">
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="457.941664" Rows="1.000000" Width="1"/>
+ </dxl:Properties>
+ <dxl:ProjList>
+ <dxl:ProjElem ColId="11" Alias="ets">
+ <dxl:Ident ColId="11" ColName="ets" TypeMdid="0.20.1.0"/>
+ </dxl:ProjElem>
+ <dxl:ProjElem ColId="12" Alias="sym">
+ <dxl:Ident ColId="12" ColName="sym" TypeMdid="0.1043.1.0"/>
+ </dxl:ProjElem>
+ <dxl:ProjElem ColId="15" Alias="end_ts">
+ <dxl:Ident ColId="15" ColName="end_ts" TypeMdid="0.20.1.0"/>
+ </dxl:ProjElem>
+ </dxl:ProjList>
+ <dxl:Filter>
+ <dxl:And>
+ <dxl:Comparison ComparisonOperator="<=" OperatorMdid="0.414.1.0">
+ <dxl:Ident ColId="11" ColName="ets" TypeMdid="0.20.1.0"/>
+ <dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.20.1.0"/>
+ </dxl:Comparison>
+ <dxl:Comparison ComparisonOperator=">" OperatorMdid="0.413.1.0">
+ <dxl:Ident ColId="15" ColName="end_ts" TypeMdid="0.20.1.0"/>
+ <dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.20.1.0"/>
+ </dxl:Comparison>
+ <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.1054.1.0">
+ <dxl:Cast TypeMdid="0.1042.1.0" FuncId="0.0.0.0">
+ <dxl:Ident ColId="12" ColName="sym" TypeMdid="0.1043.1.0"/>
+ </dxl:Cast>
+ <dxl:Ident ColId="0" ColName="symbol" TypeMdid="0.1042.1.0"/>
+ </dxl:Comparison>
+ </dxl:And>
+ </dxl:Filter>
+ <dxl:RecheckCond>
+ <dxl:And>
+ <dxl:Comparison ComparisonOperator="<=" OperatorMdid="0.414.1.0">
+ <dxl:Ident ColId="11" ColName="ets" TypeMdid="0.20.1.0"/>
+ <dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.20.1.0"/>
+ </dxl:Comparison>
+ <dxl:Comparison ComparisonOperator=">" OperatorMdid="0.413.1.0">
+ <dxl:Ident ColId="15" ColName="end_ts" TypeMdid="0.20.1.0"/>
+ <dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.20.1.0"/>
+ </dxl:Comparison>
+ </dxl:And>
+ </dxl:RecheckCond>
+ <dxl:BitmapIndexProbe>
+ <dxl:IndexCondList>
+ <dxl:Comparison ComparisonOperator="<=" OperatorMdid="0.414.1.0">
+ <dxl:Ident ColId="11" ColName="ets" TypeMdid="0.20.1.0"/>
+ <dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.20.1.0"/>
+ </dxl:Comparison>
+ <dxl:Comparison ComparisonOperator=">" OperatorMdid="0.413.1.0">
+ <dxl:Ident ColId="15" ColName="end_ts" TypeMdid="0.20.1.0"/>
+ <dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.20.1.0"/>
+ </dxl:Comparison>
+ </dxl:IndexCondList>
+ <dxl:IndexDescriptor Mdid="0.16166830.1.0" IndexName="my_tq_agg_small_ets_end_ts_ix_1_prt_p1"/>
+ </dxl:BitmapIndexProbe>
+ <dxl:Partitions>
+ <dxl:Partition Mdid="6.-1013210183.1.1"/>
+ <dxl:Partition Mdid="6.-1013210182.1.1"/>
+ <dxl:Partition Mdid="6.-1013210181.1.1"/>
+ </dxl:Partitions>
+ <dxl:TableDescriptor Mdid="6.16166659.1.1" TableName="my_tq_agg_small">
+ <dxl:Columns>
+ <dxl:Column ColId="11" Attno="1" ColName="ets" TypeMdid="0.20.1.0"/>
+ <dxl:Column ColId="12" Attno="2" ColName="sym" TypeMdid="0.1043.1.0" ColWidth="16"/>
+ <dxl:Column ColId="13" Attno="3" ColName="bid_price" TypeMdid="0.1700.1.0"/>
+ <dxl:Column ColId="15" Attno="5" ColName="end_ts" TypeMdid="0.20.1.0"/>
+ <dxl:Column ColId="16" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0"/>
+ <dxl:Column ColId="17" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0"/>
+ <dxl:Column ColId="18" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0"/>
+ <dxl:Column ColId="19" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0"/>
+ <dxl:Column ColId="20" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0"/>
+ <dxl:Column ColId="21" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0"/>
+ <dxl:Column ColId="22" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:DynamicBitmapTableScan>
+ </dxl:NestedLoopJoin>
+ </dxl:Result>
+ </dxl:RedistributeMotion>
+ </dxl:Sort>
+ </dxl:Aggregate>
</dxl:GatherMotion>
</dxl:Plan>
</dxl:Thread>
diff --git a/src/backend/gporca/data/dxl/minidump/BitmapIndexScanCost.mdp b/src/backend/gporca/data/dxl/minidump/BitmapIndexScanCost.mdp
index 4b7819d4c7..0306c47558 100644
--- a/src/backend/gporca/data/dxl/minidump/BitmapIndexScanCost.mdp
+++ b/src/backend/gporca/data/dxl/minidump/BitmapIndexScanCost.mdp
@@ -310,7 +310,7 @@
<dxl:Plan Id="0" SpaceSize="154">
<dxl:GatherMotion InputSegments="0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140 [...]
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="831.034278" Rows="10.000000" Width="66"/>
+ <dxl:Cost StartupCost="0" TotalCost="831.034374" Rows="10.000000" Width="66"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="message_id">
@@ -324,7 +324,7 @@
<dxl:SortingColumnList/>
<dxl:NestedLoopJoin JoinType="Inner" IndexNestedLoopJoin="true" OuterRefAsParam="true">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="831.032807" Rows="10.000000" Width="66"/>
+ <dxl:Cost StartupCost="0" TotalCost="831.032903" Rows="10.000000" Width="66"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="message_id">
@@ -338,9 +338,9 @@
<dxl:JoinFilter>
<dxl:ConstValue TypeMdid="0.16.1.0" Value="true"/>
</dxl:JoinFilter>
- <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
+ <dxl:Aggregate AggregationStrategy="Hashed" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="441.907275" Rows="10.000000" Width="33"/>
+ <dxl:Cost StartupCost="0" TotalCost="441.907372" Rows="10.000000" Width="33"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="6"/>
@@ -351,9 +351,9 @@
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:Sort SortDiscardDuplicates="false">
+ <dxl:RedistributeMotion InputSegments="0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137 [...]
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="441.907224" Rows="10.000000" Width="33"/>
+ <dxl:Cost StartupCost="0" TotalCost="441.907230" Rows="10.000000" Width="33"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="6" Alias="message_id">
@@ -361,58 +361,48 @@
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="6" SortOperatorMdid="0.664.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:RedistributeMotion InputSegments="0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,1 [...]
+ <dxl:SortingColumnList/>
+ <dxl:HashExprList>
+ <dxl:HashExpr>
+ <dxl:Ident ColId="6" ColName="message_id" TypeMdid="0.25.1.0"/>
+ </dxl:HashExpr>
+ </dxl:HashExprList>
+ <dxl:Aggregate AggregationStrategy="Hashed" StreamSafe="true">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="441.907224" Rows="10.000000" Width="33"/>
+ <dxl:Cost StartupCost="0" TotalCost="441.907198" Rows="10.000000" Width="33"/>
</dxl:Properties>
+ <dxl:GroupingColumns>
+ <dxl:GroupingColumn ColId="6"/>
+ </dxl:GroupingColumns>
<dxl:ProjList>
<dxl:ProjElem ColId="6" Alias="message_id">
<dxl:Ident ColId="6" ColName="message_id" TypeMdid="0.25.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList/>
- <dxl:HashExprList>
- <dxl:HashExpr>
- <dxl:Ident ColId="6" ColName="message_id" TypeMdid="0.25.1.0"/>
- </dxl:HashExpr>
- </dxl:HashExprList>
- <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
+ <dxl:RandomMotion InputSegments="-1" OutputSegments="0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,1 [...]
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="441.907193" Rows="10.000000" Width="33"/>
+ <dxl:Cost StartupCost="0" TotalCost="441.907005" Rows="10.000000" Width="33"/>
</dxl:Properties>
- <dxl:GroupingColumns>
- <dxl:GroupingColumn ColId="6"/>
- </dxl:GroupingColumns>
<dxl:ProjList>
<dxl:ProjElem ColId="6" Alias="message_id">
<dxl:Ident ColId="6" ColName="message_id" TypeMdid="0.25.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:Sort SortDiscardDuplicates="false">
+ <dxl:SortingColumnList/>
+ <dxl:Limit>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="441.907005" Rows="10.000000" Width="33"/>
+ <dxl:Cost StartupCost="0" TotalCost="441.906235" Rows="10.000000" Width="33"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="6" Alias="message_id">
<dxl:Ident ColId="6" ColName="message_id" TypeMdid="0.25.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
- <dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="6" SortOperatorMdid="0.664.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:RandomMotion InputSegments="-1" OutputSegments="0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,1 [...]
+ <dxl:GatherMotion InputSegments="0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,1 [...]
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="441.907005" Rows="10.000000" Width="33"/>
+ <dxl:Cost StartupCost="0" TotalCost="441.905905" Rows="10.000000" Width="33"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="6" Alias="message_id">
@@ -423,16 +413,16 @@
<dxl:SortingColumnList/>
<dxl:Limit>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="441.906235" Rows="10.000000" Width="33"/>
+ <dxl:Cost StartupCost="0" TotalCost="441.894138" Rows="10.000000" Width="33"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="6" Alias="message_id">
<dxl:Ident ColId="6" ColName="message_id" TypeMdid="0.25.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
- <dxl:GatherMotion InputSegments="0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,1 [...]
+ <dxl:TableScan>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="441.905905" Rows="10.000000" Width="33"/>
+ <dxl:Cost StartupCost="0" TotalCost="435.803012" Rows="15877726.000000" Width="33"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="6" Alias="message_id">
@@ -440,43 +430,15 @@
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList/>
- <dxl:Limit>
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="441.894138" Rows="10.000000" Width="33"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="6" Alias="message_id">
- <dxl:Ident ColId="6" ColName="message_id" TypeMdid="0.25.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:TableScan>
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="435.803012" Rows="15877726.000000" Width="33"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="6" Alias="message_id">
- <dxl:Ident ColId="6" ColName="message_id" TypeMdid="0.25.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:TableDescriptor Mdid="6.16434.1.0" TableName="ix_test">
- <dxl:Columns>
- <dxl:Column ColId="6" Attno="1" ColName="message_id" TypeMdid="0.25.1.0" ColWidth="33"/>
- <dxl:Column ColId="9" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
- <dxl:Column ColId="10" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
- <dxl:Column ColId="11" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:TableScan>
- <dxl:LimitCount>
- <dxl:ConstValue TypeMdid="0.20.1.0" Value="10"/>
- </dxl:LimitCount>
- <dxl:LimitOffset>
- <dxl:ConstValue TypeMdid="0.20.1.0" Value="0"/>
- </dxl:LimitOffset>
- </dxl:Limit>
- </dxl:GatherMotion>
+ <dxl:TableDescriptor Mdid="6.16434.1.0" TableName="ix_test">
+ <dxl:Columns>
+ <dxl:Column ColId="6" Attno="1" ColName="message_id" TypeMdid="0.25.1.0" ColWidth="33"/>
+ <dxl:Column ColId="9" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
+ <dxl:Column ColId="10" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
+ <dxl:Column ColId="11" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:TableScan>
<dxl:LimitCount>
<dxl:ConstValue TypeMdid="0.20.1.0" Value="10"/>
</dxl:LimitCount>
@@ -484,11 +446,17 @@
<dxl:ConstValue TypeMdid="0.20.1.0" Value="0"/>
</dxl:LimitOffset>
</dxl:Limit>
- </dxl:RandomMotion>
- </dxl:Sort>
- </dxl:Aggregate>
- </dxl:RedistributeMotion>
- </dxl:Sort>
+ </dxl:GatherMotion>
+ <dxl:LimitCount>
+ <dxl:ConstValue TypeMdid="0.20.1.0" Value="10"/>
+ </dxl:LimitCount>
+ <dxl:LimitOffset>
+ <dxl:ConstValue TypeMdid="0.20.1.0" Value="0"/>
+ </dxl:LimitOffset>
+ </dxl:Limit>
+ </dxl:RandomMotion>
+ </dxl:Aggregate>
+ </dxl:RedistributeMotion>
</dxl:Aggregate>
<dxl:BitmapTableScan>
<dxl:Properties>
diff --git a/src/backend/gporca/data/dxl/minidump/CPhysicalParallelUnionAllTest/NoOpMotionUsesOnlyGroupOutputColumns.mdp b/src/backend/gporca/data/dxl/minidump/CPhysicalParallelUnionAllTest/NoOpMotionUsesOnlyGroupOutputColumns.mdp
index 3a7ed15828..952dadc36e 100644
--- a/src/backend/gporca/data/dxl/minidump/CPhysicalParallelUnionAllTest/NoOpMotionUsesOnlyGroupOutputColumns.mdp
+++ b/src/backend/gporca/data/dxl/minidump/CPhysicalParallelUnionAllTest/NoOpMotionUsesOnlyGroupOutputColumns.mdp
@@ -270,7 +270,7 @@ EXPLAIN SELECT b, a FROM foo UNION ALL SELECT b, a FROM foo INTERSECT ALL SELECT
<dxl:Plan Id="0" SpaceSize="0">
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.001324" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.001505" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="b">
@@ -284,7 +284,7 @@ EXPLAIN SELECT b, a FROM foo UNION ALL SELECT b, a FROM foo INTERSECT ALL SELECT
<dxl:SortingColumnList/>
<dxl:Append IsTarget="false" IsZapped="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.001294" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.001475" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="b">
@@ -344,7 +344,7 @@ EXPLAIN SELECT b, a FROM foo UNION ALL SELECT b, a FROM foo INTERSECT ALL SELECT
</dxl:RedistributeMotion>
<dxl:RedistributeMotion InputSegments="0,1,2" OutputSegments="0,1,2">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.001294" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.001475" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="10" Alias="b">
@@ -363,7 +363,7 @@ EXPLAIN SELECT b, a FROM foo UNION ALL SELECT b, a FROM foo INTERSECT ALL SELECT
</dxl:HashExprList>
<dxl:HashJoin JoinType="In">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.001294" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.001475" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="10" Alias="b">
@@ -397,7 +397,7 @@ EXPLAIN SELECT b, a FROM foo UNION ALL SELECT b, a FROM foo INTERSECT ALL SELECT
</dxl:HashCondList>
<dxl:Window PartitionColumns="10,9">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000036" Rows="1.000000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000126" Rows="1.000000" Width="16"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="27" Alias="row_number">
@@ -413,7 +413,7 @@ EXPLAIN SELECT b, a FROM foo UNION ALL SELECT b, a FROM foo INTERSECT ALL SELECT
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000036" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000126" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="9" Alias="a">
@@ -466,7 +466,7 @@ EXPLAIN SELECT b, a FROM foo UNION ALL SELECT b, a FROM foo INTERSECT ALL SELECT
</dxl:Window>
<dxl:Window PartitionColumns="19,18">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000036" Rows="1.000000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000126" Rows="1.000000" Width="16"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="28" Alias="row_number">
@@ -482,7 +482,7 @@ EXPLAIN SELECT b, a FROM foo UNION ALL SELECT b, a FROM foo INTERSECT ALL SELECT
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000036" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000126" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="18" Alias="a">
diff --git a/src/backend/gporca/data/dxl/minidump/CPhysicalParallelUnionAllTest/ParallelAppend-Select.mdp b/src/backend/gporca/data/dxl/minidump/CPhysicalParallelUnionAllTest/ParallelAppend-Select.mdp
index 855777f77a..3f75616259 100644
--- a/src/backend/gporca/data/dxl/minidump/CPhysicalParallelUnionAllTest/ParallelAppend-Select.mdp
+++ b/src/backend/gporca/data/dxl/minidump/CPhysicalParallelUnionAllTest/ParallelAppend-Select.mdp
@@ -234,10 +234,10 @@ explain select * from foo union select * from bar;
</dxl:LogicalGet>
</dxl:Union>
</dxl:Query>
- <dxl:Plan Id="0" SpaceSize="20">
+ <dxl:Plan Id="0" SpaceSize="2460">
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000075" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000166" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -251,7 +251,7 @@ explain select * from foo union select * from bar;
<dxl:SortingColumnList/>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000045" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000136" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="0"/>
@@ -268,7 +268,7 @@ explain select * from foo union select * from bar;
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000036" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000126" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
diff --git a/src/backend/gporca/data/dxl/minidump/CTE-PartTbl.mdp b/src/backend/gporca/data/dxl/minidump/CTE-PartTbl.mdp
index 99fc48e900..366759812c 100644
--- a/src/backend/gporca/data/dxl/minidump/CTE-PartTbl.mdp
+++ b/src/backend/gporca/data/dxl/minidump/CTE-PartTbl.mdp
@@ -462,10 +462,10 @@
</dxl:UnionAll>
</dxl:LogicalCTEAnchor>
</dxl:Query>
- <dxl:Plan Id="0" SpaceSize="408">
+ <dxl:Plan Id="0" SpaceSize="520">
<dxl:Sequence>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1293.000193" Rows="2.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="1293.000374" Rows="2.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="22" Alias="a">
@@ -501,7 +501,7 @@
</dxl:ProjList>
<dxl:Filter/>
<dxl:SortingColumnList/>
- <dxl:DynamicTableScan PartIndexId="1" SelectorIds="">
+ <dxl:DynamicTableScan SelectorIds="">
<dxl:Properties>
<dxl:Cost StartupCost="0" TotalCost="431.000013" Rows="1.000000" Width="8"/>
</dxl:Properties>
@@ -539,7 +539,7 @@
</dxl:CTEProducer>
<dxl:Append IsTarget="false" IsZapped="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000112" Rows="2.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000293" Rows="2.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="22" Alias="a">
@@ -552,7 +552,7 @@
<dxl:Filter/>
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000044" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000134" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="22" Alias="a">
@@ -566,7 +566,7 @@
<dxl:OneTimeFilter/>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000032" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000122" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="12"/>
@@ -579,7 +579,7 @@
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000019" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000110" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="11" Alias="a">
@@ -613,7 +613,7 @@
</dxl:Result>
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000044" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000134" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="23" Alias="a">
@@ -627,7 +627,7 @@
<dxl:OneTimeFilter/>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000032" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000122" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="23"/>
@@ -640,7 +640,7 @@
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000019" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000110" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="23" Alias="a">
diff --git a/src/backend/gporca/data/dxl/minidump/CTE-Preds1.mdp b/src/backend/gporca/data/dxl/minidump/CTE-Preds1.mdp
index 7cdef311cb..936eee2a46 100644
--- a/src/backend/gporca/data/dxl/minidump/CTE-Preds1.mdp
+++ b/src/backend/gporca/data/dxl/minidump/CTE-Preds1.mdp
@@ -223,10 +223,10 @@
</dxl:LogicalCTEAnchor>
</dxl:LogicalCTEAnchor>
</dxl:Query>
- <dxl:Plan Id="0" SpaceSize="240">
+ <dxl:Plan Id="0" SpaceSize="10224">
<dxl:GatherMotion InputSegments="0,1" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="2155.000518" Rows="2.000000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="2155.000700" Rows="2.000000" Width="16"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="27" Alias="i">
@@ -240,7 +240,7 @@
<dxl:SortingColumnList/>
<dxl:Sequence>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="2155.000375" Rows="2.000000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="2155.000556" Rows="2.000000" Width="16"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="27" Alias="i">
@@ -354,7 +354,7 @@
</dxl:CTEProducer>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000184" Rows="2.000000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000365" Rows="2.000000" Width="16"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="27"/>
@@ -371,7 +371,7 @@
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000159" Rows="2.000000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000340" Rows="2.000000" Width="16"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="27" Alias="i">
diff --git a/src/backend/gporca/data/dxl/minidump/CTE-Preds2.mdp b/src/backend/gporca/data/dxl/minidump/CTE-Preds2.mdp
index 9ad6fffd80..60f060841f 100644
--- a/src/backend/gporca/data/dxl/minidump/CTE-Preds2.mdp
+++ b/src/backend/gporca/data/dxl/minidump/CTE-Preds2.mdp
@@ -249,10 +249,10 @@
</dxl:LogicalCTEAnchor>
</dxl:LogicalCTEAnchor>
</dxl:Query>
- <dxl:Plan Id="0" SpaceSize="1818">
+ <dxl:Plan Id="0" SpaceSize="557466">
<dxl:GatherMotion InputSegments="0,1" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="2586.000757" Rows="3.000000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="2586.000859" Rows="3.000000" Width="16"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="27" Alias="i">
@@ -266,7 +266,7 @@
<dxl:SortingColumnList/>
<dxl:Sequence>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="2586.000541" Rows="3.000000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="2586.000643" Rows="3.000000" Width="16"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="27" Alias="i">
@@ -318,7 +318,7 @@
</dxl:CTEProducer>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="2155.000495" Rows="3.000000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="2155.000597" Rows="3.000000" Width="16"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="27"/>
@@ -335,7 +335,7 @@
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="2155.000458" Rows="3.000000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="2155.000559" Rows="3.000000" Width="16"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="27" Alias="i">
diff --git a/src/backend/gporca/data/dxl/minidump/CTE15Replicated.mdp b/src/backend/gporca/data/dxl/minidump/CTE15Replicated.mdp
index f431bb5157..d70a6f10f7 100644
--- a/src/backend/gporca/data/dxl/minidump/CTE15Replicated.mdp
+++ b/src/backend/gporca/data/dxl/minidump/CTE15Replicated.mdp
@@ -366,7 +366,7 @@
<dxl:Plan Id="0" SpaceSize="81060">
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="2155.004102" Rows="1.000000" Width="263"/>
+ <dxl:Cost StartupCost="0" TotalCost="2155.004147" Rows="1.000000" Width="263"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="40" Alias="a">
@@ -383,7 +383,7 @@
<dxl:SortingColumnList/>
<dxl:Sequence>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="2155.003122" Rows="1.000000" Width="263"/>
+ <dxl:Cost StartupCost="0" TotalCost="2155.003167" Rows="1.000000" Width="263"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="40" Alias="a">
@@ -398,7 +398,7 @@
</dxl:ProjList>
<dxl:CTEProducer CTEId="0" Columns="1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000022" Rows="1.000000" Width="1"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000067" Rows="1.000000" Width="1"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="b">
@@ -407,7 +407,7 @@
</dxl:ProjList>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000021" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000067" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="1"/>
@@ -420,7 +420,7 @@
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000016" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000062" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="b">
diff --git a/src/backend/gporca/data/dxl/minidump/CTE2Replicated.mdp b/src/backend/gporca/data/dxl/minidump/CTE2Replicated.mdp
index 137ab2fb13..0e31182235 100644
--- a/src/backend/gporca/data/dxl/minidump/CTE2Replicated.mdp
+++ b/src/backend/gporca/data/dxl/minidump/CTE2Replicated.mdp
@@ -380,7 +380,7 @@
<dxl:Plan Id="0" SpaceSize="5942460">
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="3017.004414" Rows="1.000000" Width="263"/>
+ <dxl:Cost StartupCost="0" TotalCost="3017.004459" Rows="1.000000" Width="263"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="40" Alias="a">
@@ -397,7 +397,7 @@
<dxl:SortingColumnList/>
<dxl:Sequence>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="3017.003434" Rows="1.000000" Width="263"/>
+ <dxl:Cost StartupCost="0" TotalCost="3017.003479" Rows="1.000000" Width="263"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="40" Alias="a">
@@ -412,7 +412,7 @@
</dxl:ProjList>
<dxl:CTEProducer CTEId="0" Columns="1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000022" Rows="1.000000" Width="1"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000067" Rows="1.000000" Width="1"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="b">
@@ -421,7 +421,7 @@
</dxl:ProjList>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000021" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000067" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="1"/>
@@ -434,7 +434,7 @@
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000016" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000062" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="b">
diff --git a/src/backend/gporca/data/dxl/minidump/CTEConstraintDeriveNegation.mdp b/src/backend/gporca/data/dxl/minidump/CTEConstraintDeriveNegation.mdp
index ab7189de6f..d45e15581d 100644
--- a/src/backend/gporca/data/dxl/minidump/CTEConstraintDeriveNegation.mdp
+++ b/src/backend/gporca/data/dxl/minidump/CTEConstraintDeriveNegation.mdp
@@ -228,10 +228,10 @@ pivotal=# explain with negcte as (select distinct a from t1 where a is not null
<dxl:LogicalCTEConsumer CTEId="1" Columns="10"/>
</dxl:LogicalCTEAnchor>
</dxl:Query>
- <dxl:Plan Id="0" SpaceSize="2">
+ <dxl:Plan Id="0" SpaceSize="10">
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000208" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000312" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="9" Alias="a">
@@ -242,7 +242,7 @@ pivotal=# explain with negcte as (select distinct a from t1 where a is not null
<dxl:SortingColumnList/>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000193" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000297" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="9"/>
@@ -255,7 +255,7 @@ pivotal=# explain with negcte as (select distinct a from t1 where a is not null
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000188" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000293" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="9" Alias="a">
@@ -268,44 +268,87 @@ pivotal=# explain with negcte as (select distinct a from t1 where a is not null
</dxl:SortingColumnList>
<dxl:LimitCount/>
<dxl:LimitOffset/>
- <dxl:TableScan>
+ <dxl:RedistributeMotion InputSegments="0,1,2" OutputSegments="0,1,2">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000188" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000247" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="9" Alias="a">
<dxl:Ident ColId="9" ColName="a" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
- <dxl:Filter>
- <dxl:And>
- <dxl:Not>
- <dxl:IsNull>
- <dxl:Ident ColId="9" ColName="a" TypeMdid="0.23.1.0"/>
- </dxl:IsNull>
- </dxl:Not>
- <dxl:Not>
- <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
+ <dxl:Filter/>
+ <dxl:SortingColumnList/>
+ <dxl:HashExprList>
+ <dxl:HashExpr>
+ <dxl:Ident ColId="9" ColName="a" TypeMdid="0.23.1.0"/>
+ </dxl:HashExpr>
+ </dxl:HashExprList>
+ <dxl:Aggregate AggregationStrategy="Hashed" StreamSafe="true">
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="431.000241" Rows="1.000000" Width="4"/>
+ </dxl:Properties>
+ <dxl:GroupingColumns>
+ <dxl:GroupingColumn ColId="9"/>
+ </dxl:GroupingColumns>
+ <dxl:ProjList>
+ <dxl:ProjElem ColId="9" Alias="a">
+ <dxl:Ident ColId="9" ColName="a" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ </dxl:ProjList>
+ <dxl:Filter/>
+ <dxl:RandomMotion InputSegments="0,1,2" OutputSegments="0,1,2">
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="431.000199" Rows="1.000000" Width="4"/>
+ </dxl:Properties>
+ <dxl:ProjList>
+ <dxl:ProjElem ColId="9" Alias="a">
<dxl:Ident ColId="9" ColName="a" TypeMdid="0.23.1.0"/>
- <dxl:Ident ColId="10" ColName="b" TypeMdid="0.23.1.0"/>
- </dxl:Comparison>
- </dxl:Not>
- </dxl:And>
- </dxl:Filter>
- <dxl:TableDescriptor Mdid="6.16416.1.0" TableName="t1">
- <dxl:Columns>
- <dxl:Column ColId="9" Attno="1" ColName="a" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="10" Attno="2" ColName="b" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="11" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
- <dxl:Column ColId="12" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="13" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="14" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="15" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="16" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
- <dxl:Column ColId="17" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:TableScan>
+ </dxl:ProjElem>
+ </dxl:ProjList>
+ <dxl:Filter/>
+ <dxl:SortingColumnList/>
+ <dxl:TableScan>
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="431.000188" Rows="1.000000" Width="4"/>
+ </dxl:Properties>
+ <dxl:ProjList>
+ <dxl:ProjElem ColId="9" Alias="a">
+ <dxl:Ident ColId="9" ColName="a" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ </dxl:ProjList>
+ <dxl:Filter>
+ <dxl:And>
+ <dxl:Not>
+ <dxl:IsNull>
+ <dxl:Ident ColId="9" ColName="a" TypeMdid="0.23.1.0"/>
+ </dxl:IsNull>
+ </dxl:Not>
+ <dxl:Not>
+ <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
+ <dxl:Ident ColId="9" ColName="a" TypeMdid="0.23.1.0"/>
+ <dxl:Ident ColId="10" ColName="b" TypeMdid="0.23.1.0"/>
+ </dxl:Comparison>
+ </dxl:Not>
+ </dxl:And>
+ </dxl:Filter>
+ <dxl:TableDescriptor Mdid="6.16416.1.0" TableName="t1">
+ <dxl:Columns>
+ <dxl:Column ColId="9" Attno="1" ColName="a" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="10" Attno="2" ColName="b" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="11" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
+ <dxl:Column ColId="12" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="13" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="14" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="15" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="16" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
+ <dxl:Column ColId="17" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:TableScan>
+ </dxl:RandomMotion>
+ </dxl:Aggregate>
+ </dxl:RedistributeMotion>
</dxl:Sort>
</dxl:Aggregate>
</dxl:GatherMotion>
diff --git a/src/backend/gporca/data/dxl/minidump/CTEWithMergedGroup.mdp b/src/backend/gporca/data/dxl/minidump/CTEWithMergedGroup.mdp
index eaa1eb64cc..343d6ed785 100644
--- a/src/backend/gporca/data/dxl/minidump/CTEWithMergedGroup.mdp
+++ b/src/backend/gporca/data/dxl/minidump/CTEWithMergedGroup.mdp
@@ -404,10 +404,10 @@
</dxl:LogicalProject>
</dxl:LogicalCTEAnchor>
</dxl:Query>
- <dxl:Plan Id="0" SpaceSize="157890951632">
+ <dxl:Plan Id="0" SpaceSize="152896745104">
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1356250698.553440" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="1356250698.553699" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="41" Alias="?column?">
@@ -418,7 +418,7 @@
<dxl:SortingColumnList/>
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1356250698.553425" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="1356250698.553684" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="41" Alias="?column?">
@@ -427,40 +427,28 @@
</dxl:ProjList>
<dxl:Filter/>
<dxl:OneTimeFilter/>
- <dxl:HashJoin JoinType="LeftAntiSemiJoin">
+ <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1356250698.553424" Rows="1.000000" Width="1"/>
+ <dxl:Cost StartupCost="0" TotalCost="1356250698.553682" Rows="1.000000" Width="1"/>
</dxl:Properties>
- <dxl:ProjList/>
+ <dxl:GroupingColumns>
+ <dxl:GroupingColumn ColId="17"/>
+ <dxl:GroupingColumn ColId="23"/>
+ </dxl:GroupingColumns>
+ <dxl:ProjList>
+ <dxl:ProjElem ColId="17" Alias="ctid">
+ <dxl:Ident ColId="17" ColName="ctid" TypeMdid="0.27.1.0"/>
+ </dxl:ProjElem>
+ <dxl:ProjElem ColId="23" Alias="gp_segment_id">
+ <dxl:Ident ColId="23" ColName="gp_segment_id" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ </dxl:ProjList>
<dxl:Filter/>
- <dxl:JoinFilter/>
- <dxl:HashCondList>
- <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
- <dxl:Ident ColId="15" ColName="d" TypeMdid="0.23.1.0"/>
- <dxl:Ident ColId="31" ColName="b" TypeMdid="0.23.1.0"/>
- </dxl:Comparison>
- <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
- <dxl:Ident ColId="16" ColName="e" TypeMdid="0.23.1.0"/>
- <dxl:Ident ColId="32" ColName="c" TypeMdid="0.23.1.0"/>
- </dxl:Comparison>
- </dxl:HashCondList>
- <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
+ <dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1356250267.552765" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="1356250698.553672" Rows="1.000000" Width="10"/>
</dxl:Properties>
- <dxl:GroupingColumns>
- <dxl:GroupingColumn ColId="15"/>
- <dxl:GroupingColumn ColId="16"/>
- <dxl:GroupingColumn ColId="17"/>
- <dxl:GroupingColumn ColId="23"/>
- </dxl:GroupingColumns>
<dxl:ProjList>
- <dxl:ProjElem ColId="15" Alias="d">
- <dxl:Ident ColId="15" ColName="d" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="16" Alias="e">
- <dxl:Ident ColId="16" ColName="e" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
<dxl:ProjElem ColId="17" Alias="ctid">
<dxl:Ident ColId="17" ColName="ctid" TypeMdid="0.27.1.0"/>
</dxl:ProjElem>
@@ -469,17 +457,17 @@
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:Sort SortDiscardDuplicates="false">
+ <dxl:SortingColumnList>
+ <dxl:SortingColumn ColId="17" SortOperatorMdid="0.2799.1.0" SortOperatorName="<" SortNullsFirst="false"/>
+ <dxl:SortingColumn ColId="23" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
+ </dxl:SortingColumnList>
+ <dxl:LimitCount/>
+ <dxl:LimitOffset/>
+ <dxl:RedistributeMotion InputSegments="0,1,2" OutputSegments="0,1,2">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1356250267.552745" Rows="1.000000" Width="18"/>
+ <dxl:Cost StartupCost="0" TotalCost="1356250698.553559" Rows="1.000000" Width="10"/>
</dxl:Properties>
<dxl:ProjList>
- <dxl:ProjElem ColId="15" Alias="d">
- <dxl:Ident ColId="15" ColName="d" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="16" Alias="e">
- <dxl:Ident ColId="16" ColName="e" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
<dxl:ProjElem ColId="17" Alias="ctid">
<dxl:Ident ColId="17" ColName="ctid" TypeMdid="0.27.1.0"/>
</dxl:ProjElem>
@@ -488,23 +476,24 @@
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="17" SortOperatorMdid="0.2799.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- <dxl:SortingColumn ColId="23" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:RedistributeMotion InputSegments="0,1,2" OutputSegments="0,1,2">
+ <dxl:SortingColumnList/>
+ <dxl:HashExprList>
+ <dxl:HashExpr>
+ <dxl:Ident ColId="17" ColName="ctid" TypeMdid="0.27.1.0"/>
+ </dxl:HashExpr>
+ <dxl:HashExpr>
+ <dxl:Ident ColId="23" ColName="gp_segment_id" TypeMdid="0.23.1.0"/>
+ </dxl:HashExpr>
+ </dxl:HashExprList>
+ <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1356250267.552745" Rows="1.000000" Width="18"/>
+ <dxl:Cost StartupCost="0" TotalCost="1356250698.553543" Rows="1.000000" Width="10"/>
</dxl:Properties>
+ <dxl:GroupingColumns>
+ <dxl:GroupingColumn ColId="17"/>
+ <dxl:GroupingColumn ColId="23"/>
+ </dxl:GroupingColumns>
<dxl:ProjList>
- <dxl:ProjElem ColId="15" Alias="d">
- <dxl:Ident ColId="15" ColName="d" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="16" Alias="e">
- <dxl:Ident ColId="16" ColName="e" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
<dxl:ProjElem ColId="17" Alias="ctid">
<dxl:Ident ColId="17" ColName="ctid" TypeMdid="0.27.1.0"/>
</dxl:ProjElem>
@@ -513,32 +502,11 @@
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList/>
- <dxl:HashExprList>
- <dxl:HashExpr>
- <dxl:Ident ColId="17" ColName="ctid" TypeMdid="0.27.1.0"/>
- </dxl:HashExpr>
- <dxl:HashExpr>
- <dxl:Ident ColId="23" ColName="gp_segment_id" TypeMdid="0.23.1.0"/>
- </dxl:HashExpr>
- </dxl:HashExprList>
- <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
+ <dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1356250267.552689" Rows="1.000000" Width="18"/>
+ <dxl:Cost StartupCost="0" TotalCost="1356250698.553534" Rows="1.000000" Width="10"/>
</dxl:Properties>
- <dxl:GroupingColumns>
- <dxl:GroupingColumn ColId="15"/>
- <dxl:GroupingColumn ColId="16"/>
- <dxl:GroupingColumn ColId="17"/>
- <dxl:GroupingColumn ColId="23"/>
- </dxl:GroupingColumns>
<dxl:ProjList>
- <dxl:ProjElem ColId="15" Alias="d">
- <dxl:Ident ColId="15" ColName="d" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="16" Alias="e">
- <dxl:Ident ColId="16" ColName="e" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
<dxl:ProjElem ColId="17" Alias="ctid">
<dxl:Ident ColId="17" ColName="ctid" TypeMdid="0.27.1.0"/>
</dxl:ProjElem>
@@ -547,17 +515,17 @@
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:Sort SortDiscardDuplicates="false">
+ <dxl:SortingColumnList>
+ <dxl:SortingColumn ColId="17" SortOperatorMdid="0.2799.1.0" SortOperatorName="<" SortNullsFirst="false"/>
+ <dxl:SortingColumn ColId="23" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
+ </dxl:SortingColumnList>
+ <dxl:LimitCount/>
+ <dxl:LimitOffset/>
+ <dxl:HashJoin JoinType="LeftAntiSemiJoin">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1356250267.552641" Rows="1.000000" Width="18"/>
+ <dxl:Cost StartupCost="0" TotalCost="1356250698.553420" Rows="1.000000" Width="10"/>
</dxl:Properties>
<dxl:ProjList>
- <dxl:ProjElem ColId="15" Alias="d">
- <dxl:Ident ColId="15" ColName="d" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="16" Alias="e">
- <dxl:Ident ColId="16" ColName="e" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
<dxl:ProjElem ColId="17" Alias="ctid">
<dxl:Ident ColId="17" ColName="ctid" TypeMdid="0.27.1.0"/>
</dxl:ProjElem>
@@ -566,12 +534,17 @@
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="17" SortOperatorMdid="0.2799.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- <dxl:SortingColumn ColId="23" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
+ <dxl:JoinFilter/>
+ <dxl:HashCondList>
+ <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
+ <dxl:Ident ColId="15" ColName="d" TypeMdid="0.23.1.0"/>
+ <dxl:Ident ColId="31" ColName="b" TypeMdid="0.23.1.0"/>
+ </dxl:Comparison>
+ <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
+ <dxl:Ident ColId="16" ColName="e" TypeMdid="0.23.1.0"/>
+ <dxl:Ident ColId="32" ColName="c" TypeMdid="0.23.1.0"/>
+ </dxl:Comparison>
+ </dxl:HashCondList>
<dxl:NestedLoopJoin JoinType="Inner" IndexNestedLoopJoin="false" OuterRefAsParam="false">
<dxl:Properties>
<dxl:Cost StartupCost="0" TotalCost="1356250267.552641" Rows="1.000000" Width="18"/>
@@ -822,88 +795,93 @@
</dxl:NestedLoopJoin>
</dxl:Materialize>
</dxl:NestedLoopJoin>
- </dxl:Sort>
- </dxl:Aggregate>
- </dxl:RedistributeMotion>
- </dxl:Sort>
- </dxl:Aggregate>
- <dxl:BroadcastMotion InputSegments="0,1,2" OutputSegments="0,1,2">
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000159" Rows="3.000000" Width="8"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="31" Alias="b">
- <dxl:Ident ColId="31" ColName="b" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="32" Alias="c">
- <dxl:Ident ColId="32" ColName="c" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:SortingColumnList/>
- <dxl:Result>
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000015" Rows="1.000000" Width="8"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="31" Alias="b">
- <dxl:Ident ColId="31" ColName="b" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="32" Alias="c">
- <dxl:Ident ColId="32" ColName="c" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:OneTimeFilter/>
- <dxl:Result>
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000015" Rows="1.000000" Width="8"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="40" Alias="?column?">
- <dxl:ConstValue TypeMdid="0.23.1.0" Value="1"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="31" Alias="b">
- <dxl:Ident ColId="31" ColName="b" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="32" Alias="c">
- <dxl:Ident ColId="32" ColName="c" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:OneTimeFilter/>
- <dxl:TableScan>
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000008" Rows="1.000000" Width="8"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="31" Alias="b">
- <dxl:Ident ColId="31" ColName="b" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="32" Alias="c">
- <dxl:Ident ColId="32" ColName="c" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:TableDescriptor Mdid="6.16425.1.0" TableName="foo" ExecuteAsUser="10">
- <dxl:Columns>
- <dxl:Column ColId="30" Attno="1" ColName="a" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="31" Attno="2" ColName="b" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="32" Attno="3" ColName="c" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="33" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
- <dxl:Column ColId="34" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="35" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="36" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="37" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="38" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
- <dxl:Column ColId="39" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:TableScan>
- </dxl:Result>
- </dxl:Result>
- </dxl:BroadcastMotion>
- </dxl:HashJoin>
+ <dxl:RedistributeMotion InputSegments="0,1,2" OutputSegments="0,1,2">
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="431.000028" Rows="1.000000" Width="8"/>
+ </dxl:Properties>
+ <dxl:ProjList>
+ <dxl:ProjElem ColId="31" Alias="b">
+ <dxl:Ident ColId="31" ColName="b" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ <dxl:ProjElem ColId="32" Alias="c">
+ <dxl:Ident ColId="32" ColName="c" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ </dxl:ProjList>
+ <dxl:Filter/>
+ <dxl:SortingColumnList/>
+ <dxl:HashExprList>
+ <dxl:HashExpr>
+ <dxl:Ident ColId="31" ColName="b" TypeMdid="0.23.1.0"/>
+ </dxl:HashExpr>
+ </dxl:HashExprList>
+ <dxl:Result>
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="431.000015" Rows="1.000000" Width="8"/>
+ </dxl:Properties>
+ <dxl:ProjList>
+ <dxl:ProjElem ColId="31" Alias="b">
+ <dxl:Ident ColId="31" ColName="b" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ <dxl:ProjElem ColId="32" Alias="c">
+ <dxl:Ident ColId="32" ColName="c" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ </dxl:ProjList>
+ <dxl:Filter/>
+ <dxl:OneTimeFilter/>
+ <dxl:Result>
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="431.000015" Rows="1.000000" Width="8"/>
+ </dxl:Properties>
+ <dxl:ProjList>
+ <dxl:ProjElem ColId="40" Alias="?column?">
+ <dxl:ConstValue TypeMdid="0.23.1.0" Value="1"/>
+ </dxl:ProjElem>
+ <dxl:ProjElem ColId="31" Alias="b">
+ <dxl:Ident ColId="31" ColName="b" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ <dxl:ProjElem ColId="32" Alias="c">
+ <dxl:Ident ColId="32" ColName="c" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ </dxl:ProjList>
+ <dxl:Filter/>
+ <dxl:OneTimeFilter/>
+ <dxl:TableScan>
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="431.000008" Rows="1.000000" Width="8"/>
+ </dxl:Properties>
+ <dxl:ProjList>
+ <dxl:ProjElem ColId="31" Alias="b">
+ <dxl:Ident ColId="31" ColName="b" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ <dxl:ProjElem ColId="32" Alias="c">
+ <dxl:Ident ColId="32" ColName="c" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ </dxl:ProjList>
+ <dxl:Filter/>
+ <dxl:TableDescriptor Mdid="6.16425.1.0" TableName="foo" ExecuteAsUser="10">
+ <dxl:Columns>
+ <dxl:Column ColId="30" Attno="1" ColName="a" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="31" Attno="2" ColName="b" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="32" Attno="3" ColName="c" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="33" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
+ <dxl:Column ColId="34" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="35" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="36" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="37" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="38" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
+ <dxl:Column ColId="39" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:TableScan>
+ </dxl:Result>
+ </dxl:Result>
+ </dxl:RedistributeMotion>
+ </dxl:HashJoin>
+ </dxl:Sort>
+ </dxl:Aggregate>
+ </dxl:RedistributeMotion>
+ </dxl:Sort>
+ </dxl:Aggregate>
</dxl:Result>
</dxl:GatherMotion>
</dxl:Plan>
diff --git a/src/backend/gporca/data/dxl/minidump/CTEWithVolatileFunction.mdp b/src/backend/gporca/data/dxl/minidump/CTEWithVolatileFunction.mdp
index 4300e8e614..4ef843c992 100644
--- a/src/backend/gporca/data/dxl/minidump/CTEWithVolatileFunction.mdp
+++ b/src/backend/gporca/data/dxl/minidump/CTEWithVolatileFunction.mdp
@@ -163,7 +163,7 @@
<dxl:Plan Id="0" SpaceSize="60">
<dxl:Sequence>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000309" Rows="2.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000399" Rows="2.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="4" Alias="sum">
@@ -185,7 +185,7 @@
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="nextval">
- <dxl:FuncExpr FuncId="0.1574.1.0" FuncRetSet="false" TypeMdid="0.20.1.0">
+ <dxl:FuncExpr FuncId="0.1574.1.0" FuncRetSet="false" TypeMdid="0.20.1.0" FuncVariadic="false">
<dxl:ConstValue TypeMdid="0.2205.1.0" Value="NKEAAA=="/>
</dxl:FuncExpr>
</dxl:ProjElem>
@@ -208,7 +208,7 @@
</dxl:CTEProducer>
<dxl:GatherMotion InputSegments="0,1" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000183" Rows="2.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000273" Rows="2.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="4" Alias="sum">
@@ -219,7 +219,7 @@
<dxl:SortingColumnList/>
<dxl:Append IsTarget="false" IsZapped="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000111" Rows="2.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000202" Rows="2.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="4" Alias="sum">
@@ -229,7 +229,7 @@
<dxl:Filter/>
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000057" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000148" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="4" Alias="sum">
@@ -240,7 +240,7 @@
<dxl:OneTimeFilter/>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000057" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000148" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="2"/>
@@ -263,7 +263,7 @@
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000044" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000135" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="2" Alias="nextval">
diff --git a/src/backend/gporca/data/dxl/minidump/CollapseGb-With-Agg-Funcs.mdp b/src/backend/gporca/data/dxl/minidump/CollapseGb-With-Agg-Funcs.mdp
index 48502bfa40..a172e7b203 100644
--- a/src/backend/gporca/data/dxl/minidump/CollapseGb-With-Agg-Funcs.mdp
+++ b/src/backend/gporca/data/dxl/minidump/CollapseGb-With-Agg-Funcs.mdp
@@ -234,10 +234,10 @@
</dxl:LogicalGroupBy>
</dxl:LogicalLimit>
</dxl:Query>
- <dxl:Plan Id="0" SpaceSize="10">
+ <dxl:Plan Id="0" SpaceSize="50">
<dxl:GatherMotion InputSegments="0,1" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000120" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000347" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="i">
@@ -252,10 +252,14 @@
<dxl:SortingColumn ColId="0" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
<dxl:SortingColumn ColId="9" SortOperatorMdid="0.412.1.0" SortOperatorName="<" SortNullsFirst="false"/>
</dxl:SortingColumnList>
- <dxl:Sort SortDiscardDuplicates="false">
+ <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000066" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000293" Rows="1.000000" Width="12"/>
</dxl:Properties>
+ <dxl:GroupingColumns>
+ <dxl:GroupingColumn ColId="0"/>
+ <dxl:GroupingColumn ColId="9"/>
+ </dxl:GroupingColumns>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="i">
<dxl:Ident ColId="0" ColName="i" TypeMdid="0.23.1.0"/>
@@ -265,36 +269,46 @@
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="0" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- <dxl:SortingColumn ColId="9" SortOperatorMdid="0.412.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
+ <dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000066" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000277" Rows="1.000000" Width="12"/>
</dxl:Properties>
- <dxl:GroupingColumns>
- <dxl:GroupingColumn ColId="0"/>
- <dxl:GroupingColumn ColId="9"/>
- </dxl:GroupingColumns>
<dxl:ProjList>
+ <dxl:ProjElem ColId="9" Alias="sum">
+ <dxl:Ident ColId="9" ColName="sum" TypeMdid="0.20.1.0"/>
+ </dxl:ProjElem>
<dxl:ProjElem ColId="0" Alias="i">
<dxl:Ident ColId="0" ColName="i" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
- <dxl:ProjElem ColId="9" Alias="sum">
- <dxl:Ident ColId="9" ColName="sum" TypeMdid="0.20.1.0"/>
+ <dxl:ProjElem ColId="1" Alias="j">
+ <dxl:Ident ColId="1" ColName="j" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:Sort SortDiscardDuplicates="false">
+ <dxl:SortingColumnList>
+ <dxl:SortingColumn ColId="0" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
+ <dxl:SortingColumn ColId="9" SortOperatorMdid="0.412.1.0" SortOperatorName="<" SortNullsFirst="false"/>
+ </dxl:SortingColumnList>
+ <dxl:LimitCount/>
+ <dxl:LimitOffset/>
+ <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000051" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000141" Rows="1.000000" Width="12"/>
</dxl:Properties>
+ <dxl:GroupingColumns>
+ <dxl:GroupingColumn ColId="0"/>
+ <dxl:GroupingColumn ColId="1"/>
+ </dxl:GroupingColumns>
<dxl:ProjList>
<dxl:ProjElem ColId="9" Alias="sum">
- <dxl:Ident ColId="9" ColName="sum" TypeMdid="0.20.1.0"/>
+ <dxl:AggFunc AggMdid="0.2108.1.0" AggDistinct="false" AggStage="Normal" AggKind="n" AggArgTypes="">
+ <dxl:ValuesList ParamType="aggargs">
+ <dxl:Ident ColId="0" ColName="i" TypeMdid="0.23.1.0"/>
+ </dxl:ValuesList>
+ <dxl:ValuesList ParamType="aggdirectargs"/>
+ <dxl:ValuesList ParamType="aggorder"/>
+ <dxl:ValuesList ParamType="aggdistinct"/>
+ </dxl:AggFunc>
</dxl:ProjElem>
<dxl:ProjElem ColId="0" Alias="i">
<dxl:Ident ColId="0" ColName="i" TypeMdid="0.23.1.0"/>
@@ -304,31 +318,11 @@
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="0" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- <dxl:SortingColumn ColId="9" SortOperatorMdid="0.412.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
+ <dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000051" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000126" Rows="1.000000" Width="8"/>
</dxl:Properties>
- <dxl:GroupingColumns>
- <dxl:GroupingColumn ColId="0"/>
- <dxl:GroupingColumn ColId="1"/>
- </dxl:GroupingColumns>
<dxl:ProjList>
- <dxl:ProjElem ColId="9" Alias="sum">
- <dxl:AggFunc AggMdid="0.2108.1.0" AggDistinct="false" AggStage="Normal" AggKind="n" AggArgTypes="">
- <dxl:ValuesList ParamType="aggargs">
- <dxl:Ident ColId="0" ColName="i" TypeMdid="0.23.1.0"/>
- </dxl:ValuesList>
- <dxl:ValuesList ParamType="aggdirectargs"/>
- <dxl:ValuesList ParamType="aggorder"/>
- <dxl:ValuesList ParamType="aggdistinct"/>
- </dxl:AggFunc>
- </dxl:ProjElem>
<dxl:ProjElem ColId="0" Alias="i">
<dxl:Ident ColId="0" ColName="i" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
@@ -337,9 +331,15 @@
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:Sort SortDiscardDuplicates="false">
+ <dxl:SortingColumnList>
+ <dxl:SortingColumn ColId="0" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
+ <dxl:SortingColumn ColId="1" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
+ </dxl:SortingColumnList>
+ <dxl:LimitCount/>
+ <dxl:LimitOffset/>
+ <dxl:TableScan>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000036" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000021" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="i">
@@ -350,44 +350,24 @@
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="0" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- <dxl:SortingColumn ColId="1" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:TableScan>
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000021" Rows="1.000000" Width="8"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="0" Alias="i">
- <dxl:Ident ColId="0" ColName="i" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="1" Alias="j">
- <dxl:Ident ColId="1" ColName="j" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:TableDescriptor Mdid="6.17049.1.1" TableName="x">
- <dxl:Columns>
- <dxl:Column ColId="0" Attno="1" ColName="i" TypeMdid="0.23.1.0"/>
- <dxl:Column ColId="1" Attno="2" ColName="j" TypeMdid="0.23.1.0"/>
- <dxl:Column ColId="2" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0"/>
- <dxl:Column ColId="3" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0"/>
- <dxl:Column ColId="4" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0"/>
- <dxl:Column ColId="5" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0"/>
- <dxl:Column ColId="6" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0"/>
- <dxl:Column ColId="7" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0"/>
- <dxl:Column ColId="8" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:TableScan>
- </dxl:Sort>
- </dxl:Aggregate>
- </dxl:Sort>
- </dxl:Aggregate>
- </dxl:Sort>
+ <dxl:TableDescriptor Mdid="6.17049.1.1" TableName="x">
+ <dxl:Columns>
+ <dxl:Column ColId="0" Attno="1" ColName="i" TypeMdid="0.23.1.0"/>
+ <dxl:Column ColId="1" Attno="2" ColName="j" TypeMdid="0.23.1.0"/>
+ <dxl:Column ColId="2" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0"/>
+ <dxl:Column ColId="3" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0"/>
+ <dxl:Column ColId="4" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0"/>
+ <dxl:Column ColId="5" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0"/>
+ <dxl:Column ColId="6" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0"/>
+ <dxl:Column ColId="7" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0"/>
+ <dxl:Column ColId="8" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:TableScan>
+ </dxl:Sort>
+ </dxl:Aggregate>
+ </dxl:Sort>
+ </dxl:Aggregate>
</dxl:GatherMotion>
</dxl:Plan>
</dxl:Thread>
diff --git a/src/backend/gporca/data/dxl/minidump/CollapseGb-Without-Agg-Funcs.mdp b/src/backend/gporca/data/dxl/minidump/CollapseGb-Without-Agg-Funcs.mdp
index 83afca29be..17a66a685b 100644
--- a/src/backend/gporca/data/dxl/minidump/CollapseGb-Without-Agg-Funcs.mdp
+++ b/src/backend/gporca/data/dxl/minidump/CollapseGb-Without-Agg-Funcs.mdp
@@ -211,7 +211,7 @@
<dxl:Plan Id="0" SpaceSize="38">
<dxl:GatherMotion InputSegments="0,1" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000051" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000097" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="i">
@@ -222,37 +222,37 @@
<dxl:SortingColumnList>
<dxl:SortingColumn ColId="0" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
</dxl:SortingColumnList>
- <dxl:Sort SortDiscardDuplicates="false">
+ <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000033" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000079" Rows="1.000000" Width="4"/>
</dxl:Properties>
+ <dxl:GroupingColumns>
+ <dxl:GroupingColumn ColId="0"/>
+ </dxl:GroupingColumns>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="i">
<dxl:Ident ColId="0" ColName="i" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="0" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
+ <dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000033" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000074" Rows="1.000000" Width="4"/>
</dxl:Properties>
- <dxl:GroupingColumns>
- <dxl:GroupingColumn ColId="0"/>
- </dxl:GroupingColumns>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="i">
<dxl:Ident ColId="0" ColName="i" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:Sort SortDiscardDuplicates="false">
+ <dxl:SortingColumnList>
+ <dxl:SortingColumn ColId="0" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
+ </dxl:SortingColumnList>
+ <dxl:LimitCount/>
+ <dxl:LimitOffset/>
+ <dxl:TableScan>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000028" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000021" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="i">
@@ -260,38 +260,22 @@
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="0" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:TableScan>
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000021" Rows="1.000000" Width="4"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="0" Alias="i">
- <dxl:Ident ColId="0" ColName="i" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:TableDescriptor Mdid="6.17049.1.1" TableName="x">
- <dxl:Columns>
- <dxl:Column ColId="0" Attno="1" ColName="i" TypeMdid="0.23.1.0"/>
- <dxl:Column ColId="1" Attno="2" ColName="j" TypeMdid="0.23.1.0"/>
- <dxl:Column ColId="2" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0"/>
- <dxl:Column ColId="3" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0"/>
- <dxl:Column ColId="4" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0"/>
- <dxl:Column ColId="5" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0"/>
- <dxl:Column ColId="6" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0"/>
- <dxl:Column ColId="7" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0"/>
- <dxl:Column ColId="8" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:TableScan>
- </dxl:Sort>
- </dxl:Aggregate>
- </dxl:Sort>
+ <dxl:TableDescriptor Mdid="6.17049.1.1" TableName="x">
+ <dxl:Columns>
+ <dxl:Column ColId="0" Attno="1" ColName="i" TypeMdid="0.23.1.0"/>
+ <dxl:Column ColId="1" Attno="2" ColName="j" TypeMdid="0.23.1.0"/>
+ <dxl:Column ColId="2" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0"/>
+ <dxl:Column ColId="3" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0"/>
+ <dxl:Column ColId="4" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0"/>
+ <dxl:Column ColId="5" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0"/>
+ <dxl:Column ColId="6" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0"/>
+ <dxl:Column ColId="7" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0"/>
+ <dxl:Column ColId="8" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:TableScan>
+ </dxl:Sort>
+ </dxl:Aggregate>
</dxl:GatherMotion>
</dxl:Plan>
</dxl:Thread>
diff --git a/src/backend/gporca/data/dxl/minidump/CollapseNot.mdp b/src/backend/gporca/data/dxl/minidump/CollapseNot.mdp
index 3bdf221585..379cc9c0bc 100644
--- a/src/backend/gporca/data/dxl/minidump/CollapseNot.mdp
+++ b/src/backend/gporca/data/dxl/minidump/CollapseNot.mdp
@@ -291,7 +291,7 @@ SELECT 1 FROM inverse WHERE NOT (cidr <<= ANY(SELECT * FROM inverse));
<dxl:Plan Id="0" SpaceSize="66">
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1293.001181" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="1293.001770" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="16" Alias="?column?">
@@ -302,14 +302,14 @@ SELECT 1 FROM inverse WHERE NOT (cidr <<= ANY(SELECT * FROM inverse));
<dxl:OneTimeFilter/>
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1293.001177" Rows="1.000000" Width="1"/>
+ <dxl:Cost StartupCost="0" TotalCost="1293.001766" Rows="1.000000" Width="1"/>
</dxl:Properties>
<dxl:ProjList/>
<dxl:Filter/>
<dxl:SortingColumnList/>
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1293.001173" Rows="1.000000" Width="1"/>
+ <dxl:Cost StartupCost="0" TotalCost="1293.001763" Rows="1.000000" Width="1"/>
</dxl:Properties>
<dxl:ProjList/>
<dxl:Filter>
@@ -334,7 +334,7 @@ SELECT 1 FROM inverse WHERE NOT (cidr <<= ANY(SELECT * FROM inverse));
<dxl:OneTimeFilter/>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1293.001151" Rows="1.000000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="1293.001741" Rows="1.000000" Width="16"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="0"/>
@@ -375,7 +375,7 @@ SELECT 1 FROM inverse WHERE NOT (cidr <<= ANY(SELECT * FROM inverse));
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1293.001114" Rows="1.000000" Width="34"/>
+ <dxl:Cost StartupCost="0" TotalCost="1293.001704" Rows="1.000000" Width="34"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="cidr">
@@ -403,7 +403,7 @@ SELECT 1 FROM inverse WHERE NOT (cidr <<= ANY(SELECT * FROM inverse));
<dxl:LimitOffset/>
<dxl:RedistributeMotion InputSegments="0,1,2" OutputSegments="0,1,2">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1293.001114" Rows="1.000000" Width="34"/>
+ <dxl:Cost StartupCost="0" TotalCost="1293.001318" Rows="1.000000" Width="34"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="cidr">
@@ -434,7 +434,7 @@ SELECT 1 FROM inverse WHERE NOT (cidr <<= ANY(SELECT * FROM inverse));
</dxl:HashExprList>
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1293.001008" Rows="1.000000" Width="34"/>
+ <dxl:Cost StartupCost="0" TotalCost="1293.001212" Rows="1.000000" Width="34"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="cidr">
@@ -457,7 +457,7 @@ SELECT 1 FROM inverse WHERE NOT (cidr <<= ANY(SELECT * FROM inverse));
<dxl:OneTimeFilter/>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1293.001008" Rows="1.000000" Width="34"/>
+ <dxl:Cost StartupCost="0" TotalCost="1293.001212" Rows="1.000000" Width="34"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="0"/>
@@ -496,13 +496,22 @@ SELECT 1 FROM inverse WHERE NOT (cidr <<= ANY(SELECT * FROM inverse));
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:Sort SortDiscardDuplicates="false">
+ <dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1293.000928" Rows="1.000000" Width="23"/>
+ <dxl:Cost StartupCost="0" TotalCost="1293.001132" Rows="1.000000" Width="23"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="19" Alias="ColRef_0019">
- <dxl:Ident ColId="19" ColName="ColRef_0019" TypeMdid="0.23.1.0"/>
+ <dxl:If TypeMdid="0.23.1.0">
+ <dxl:IsNull>
+ <dxl:Comparison ComparisonOperator="<<=" OperatorMdid="0.932.1.0">
+ <dxl:Ident ColId="0" ColName="cidr" TypeMdid="0.869.1.0"/>
+ <dxl:Ident ColId="8" ColName="cidr" TypeMdid="0.869.1.0"/>
+ </dxl:Comparison>
+ </dxl:IsNull>
+ <dxl:ConstValue TypeMdid="0.23.1.0" Value="1"/>
+ <dxl:ConstValue TypeMdid="0.23.1.0" Value="0"/>
+ </dxl:If>
</dxl:ProjElem>
<dxl:ProjElem ColId="0" Alias="cidr">
<dxl:Ident ColId="0" ColName="cidr" TypeMdid="0.869.1.0"/>
@@ -518,29 +527,12 @@ SELECT 1 FROM inverse WHERE NOT (cidr <<= ANY(SELECT * FROM inverse));
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="1" SortOperatorMdid="0.2799.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- <dxl:SortingColumn ColId="7" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:Result>
+ <dxl:OneTimeFilter/>
+ <dxl:NestedLoopJoin JoinType="Left" IndexNestedLoopJoin="false" OuterRefAsParam="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1293.000928" Rows="1.000000" Width="23"/>
+ <dxl:Cost StartupCost="0" TotalCost="1293.001109" Rows="1.000000" Width="27"/>
</dxl:Properties>
<dxl:ProjList>
- <dxl:ProjElem ColId="19" Alias="ColRef_0019">
- <dxl:If TypeMdid="0.23.1.0">
- <dxl:IsNull>
- <dxl:Comparison ComparisonOperator="<<=" OperatorMdid="0.932.1.0">
- <dxl:Ident ColId="0" ColName="cidr" TypeMdid="0.869.1.0"/>
- <dxl:Ident ColId="8" ColName="cidr" TypeMdid="0.869.1.0"/>
- </dxl:Comparison>
- </dxl:IsNull>
- <dxl:ConstValue TypeMdid="0.23.1.0" Value="1"/>
- <dxl:ConstValue TypeMdid="0.23.1.0" Value="0"/>
- </dxl:If>
- </dxl:ProjElem>
<dxl:ProjElem ColId="0" Alias="cidr">
<dxl:Ident ColId="0" ColName="cidr" TypeMdid="0.869.1.0"/>
</dxl:ProjElem>
@@ -550,15 +542,25 @@ SELECT 1 FROM inverse WHERE NOT (cidr <<= ANY(SELECT * FROM inverse));
<dxl:ProjElem ColId="7" Alias="gp_segment_id">
<dxl:Ident ColId="7" ColName="gp_segment_id" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
+ <dxl:ProjElem ColId="8" Alias="cidr">
+ <dxl:Ident ColId="8" ColName="cidr" TypeMdid="0.869.1.0"/>
+ </dxl:ProjElem>
<dxl:ProjElem ColId="17" Alias="ColRef_0017">
<dxl:Ident ColId="17" ColName="ColRef_0017" TypeMdid="0.16.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:OneTimeFilter/>
- <dxl:NestedLoopJoin JoinType="Left" IndexNestedLoopJoin="false" OuterRefAsParam="false">
+ <dxl:JoinFilter>
+ <dxl:IsNotFalse>
+ <dxl:Comparison ComparisonOperator="<<=" OperatorMdid="0.932.1.0">
+ <dxl:Ident ColId="0" ColName="cidr" TypeMdid="0.869.1.0"/>
+ <dxl:Ident ColId="8" ColName="cidr" TypeMdid="0.869.1.0"/>
+ </dxl:Comparison>
+ </dxl:IsNotFalse>
+ </dxl:JoinFilter>
+ <dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1293.000905" Rows="1.000000" Width="27"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000258" Rows="1.000000" Width="18"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="cidr">
@@ -570,22 +572,14 @@ SELECT 1 FROM inverse WHERE NOT (cidr <<= ANY(SELECT * FROM inverse));
<dxl:ProjElem ColId="7" Alias="gp_segment_id">
<dxl:Ident ColId="7" ColName="gp_segment_id" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
- <dxl:ProjElem ColId="8" Alias="cidr">
- <dxl:Ident ColId="8" ColName="cidr" TypeMdid="0.869.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="17" Alias="ColRef_0017">
- <dxl:Ident ColId="17" ColName="ColRef_0017" TypeMdid="0.16.1.0"/>
- </dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:JoinFilter>
- <dxl:IsNotFalse>
- <dxl:Comparison ComparisonOperator="<<=" OperatorMdid="0.932.1.0">
- <dxl:Ident ColId="0" ColName="cidr" TypeMdid="0.869.1.0"/>
- <dxl:Ident ColId="8" ColName="cidr" TypeMdid="0.869.1.0"/>
- </dxl:Comparison>
- </dxl:IsNotFalse>
- </dxl:JoinFilter>
+ <dxl:SortingColumnList>
+ <dxl:SortingColumn ColId="1" SortOperatorMdid="0.2799.1.0" SortOperatorName="<" SortNullsFirst="false"/>
+ <dxl:SortingColumn ColId="7" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
+ </dxl:SortingColumnList>
+ <dxl:LimitCount/>
+ <dxl:LimitOffset/>
<dxl:TableScan>
<dxl:Properties>
<dxl:Cost StartupCost="0" TotalCost="431.000021" Rows="1.000000" Width="18"/>
@@ -615,36 +609,48 @@ SELECT 1 FROM inverse WHERE NOT (cidr <<= ANY(SELECT * FROM inverse));
</dxl:Columns>
</dxl:TableDescriptor>
</dxl:TableScan>
- <dxl:Materialize Eager="false">
+ </dxl:Sort>
+ <dxl:Materialize Eager="false">
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="431.000483" Rows="3.000000" Width="9"/>
+ </dxl:Properties>
+ <dxl:ProjList>
+ <dxl:ProjElem ColId="17" Alias="ColRef_0017">
+ <dxl:Ident ColId="17" ColName="ColRef_0017" TypeMdid="0.16.1.0"/>
+ </dxl:ProjElem>
+ <dxl:ProjElem ColId="8" Alias="cidr">
+ <dxl:Ident ColId="8" ColName="cidr" TypeMdid="0.869.1.0"/>
+ </dxl:ProjElem>
+ </dxl:ProjList>
+ <dxl:Filter/>
+ <dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000483" Rows="3.000000" Width="9"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000474" Rows="3.000000" Width="9"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="17" Alias="ColRef_0017">
- <dxl:Ident ColId="17" ColName="ColRef_0017" TypeMdid="0.16.1.0"/>
+ <dxl:ConstValue TypeMdid="0.16.1.0" Value="true"/>
</dxl:ProjElem>
<dxl:ProjElem ColId="8" Alias="cidr">
<dxl:Ident ColId="8" ColName="cidr" TypeMdid="0.869.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:Result>
+ <dxl:OneTimeFilter/>
+ <dxl:BroadcastMotion InputSegments="0,1,2" OutputSegments="0,1,2">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000474" Rows="3.000000" Width="9"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000465" Rows="3.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
- <dxl:ProjElem ColId="17" Alias="ColRef_0017">
- <dxl:ConstValue TypeMdid="0.16.1.0" Value="true"/>
- </dxl:ProjElem>
<dxl:ProjElem ColId="8" Alias="cidr">
<dxl:Ident ColId="8" ColName="cidr" TypeMdid="0.869.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:OneTimeFilter/>
- <dxl:BroadcastMotion InputSegments="0,1,2" OutputSegments="0,1,2">
+ <dxl:SortingColumnList/>
+ <dxl:TableScan>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000465" Rows="3.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000021" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="8" Alias="cidr">
@@ -652,36 +658,24 @@ SELECT 1 FROM inverse WHERE NOT (cidr <<= ANY(SELECT * FROM inverse));
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList/>
- <dxl:TableScan>
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000021" Rows="1.000000" Width="8"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="8" Alias="cidr">
- <dxl:Ident ColId="8" ColName="cidr" TypeMdid="0.869.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:TableDescriptor Mdid="6.660032.1.1" TableName="inverse">
- <dxl:Columns>
- <dxl:Column ColId="8" Attno="1" ColName="cidr" TypeMdid="0.869.1.0"/>
- <dxl:Column ColId="9" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0"/>
- <dxl:Column ColId="10" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0"/>
- <dxl:Column ColId="11" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0"/>
- <dxl:Column ColId="12" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0"/>
- <dxl:Column ColId="13" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0"/>
- <dxl:Column ColId="14" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0"/>
- <dxl:Column ColId="15" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:TableScan>
- </dxl:BroadcastMotion>
- </dxl:Result>
- </dxl:Materialize>
- </dxl:NestedLoopJoin>
- </dxl:Result>
- </dxl:Sort>
+ <dxl:TableDescriptor Mdid="6.660032.1.1" TableName="inverse">
+ <dxl:Columns>
+ <dxl:Column ColId="8" Attno="1" ColName="cidr" TypeMdid="0.869.1.0"/>
+ <dxl:Column ColId="9" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0"/>
+ <dxl:Column ColId="10" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0"/>
+ <dxl:Column ColId="11" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0"/>
+ <dxl:Column ColId="12" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0"/>
+ <dxl:Column ColId="13" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0"/>
+ <dxl:Column ColId="14" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0"/>
+ <dxl:Column ColId="15" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:TableScan>
+ </dxl:BroadcastMotion>
+ </dxl:Result>
+ </dxl:Materialize>
+ </dxl:NestedLoopJoin>
+ </dxl:Result>
</dxl:Aggregate>
</dxl:Result>
</dxl:RedistributeMotion>
diff --git a/src/backend/gporca/data/dxl/minidump/CompositeTypeRelMdId.mdp b/src/backend/gporca/data/dxl/minidump/CompositeTypeRelMdId.mdp
index 7abdd57cd2..a08ca6f62b 100644
--- a/src/backend/gporca/data/dxl/minidump/CompositeTypeRelMdId.mdp
+++ b/src/backend/gporca/data/dxl/minidump/CompositeTypeRelMdId.mdp
@@ -321,9 +321,9 @@
</dxl:LogicalLimit>
</dxl:Query>
<dxl:Plan Id="0" SpaceSize="4">
- <dxl:Result>
+ <dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="882758.081876" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="882758.081967" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="rngfuncid">
@@ -333,54 +333,16 @@
<dxl:Ident ColId="1" ColName="f2" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
- <dxl:Filter>
- <dxl:SubPlan TypeMdid="0.16.1.0" SubPlanType="AnySubPlan">
- <dxl:TestExpr>
- <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
- <dxl:Ident ColId="1" ColName="f2" TypeMdid="0.23.1.0"/>
- <dxl:Ident ColId="10" ColName="f2" TypeMdid="0.23.1.0"/>
- </dxl:Comparison>
- </dxl:TestExpr>
- <dxl:ParamList>
- <dxl:Param ColId="0" ColName="rngfuncid" TypeMdid="0.23.1.0"/>
- </dxl:ParamList>
- <dxl:Result>
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="0.040900" Rows="400.000000" Width="4"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="10" Alias="f2">
- <dxl:Ident ColId="10" ColName="f2" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter>
- <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
- <dxl:Ident ColId="9" ColName="rngfuncid" TypeMdid="0.23.1.0"/>
- <dxl:ConstValue TypeMdid="0.23.1.0" Value="1"/>
- </dxl:Comparison>
- </dxl:Filter>
- <dxl:OneTimeFilter/>
- <dxl:TableValuedFunction FuncId="0.26156.1.0" Name="rngfunct" TypeMdid="0.26155.1.0">
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="0.008000" Rows="1000.000000" Width="8"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="9" Alias="rngfuncid">
- <dxl:Ident ColId="9" ColName="rngfuncid" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="10" Alias="f2">
- <dxl:Ident ColId="10" ColName="f2" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Ident ColId="0" ColName="rngfuncid" TypeMdid="0.23.1.0"/>
- </dxl:TableValuedFunction>
- </dxl:Result>
- </dxl:SubPlan>
- </dxl:Filter>
- <dxl:OneTimeFilter/>
- <dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
+ <dxl:Filter/>
+ <dxl:SortingColumnList>
+ <dxl:SortingColumn ColId="0" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
+ <dxl:SortingColumn ColId="1" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
+ </dxl:SortingColumnList>
+ <dxl:LimitCount/>
+ <dxl:LimitOffset/>
+ <dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000125" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="882758.081876" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="rngfuncid">
@@ -390,14 +352,54 @@
<dxl:Ident ColId="1" ColName="f2" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
- <dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="0" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- <dxl:SortingColumn ColId="1" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:Sort SortDiscardDuplicates="false">
+ <dxl:Filter>
+ <dxl:SubPlan TypeMdid="0.16.1.0" SubPlanType="AnySubPlan">
+ <dxl:TestExpr>
+ <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
+ <dxl:Ident ColId="1" ColName="f2" TypeMdid="0.23.1.0"/>
+ <dxl:Ident ColId="10" ColName="f2" TypeMdid="0.23.1.0"/>
+ </dxl:Comparison>
+ </dxl:TestExpr>
+ <dxl:ParamList>
+ <dxl:Param ColId="0" ColName="rngfuncid" TypeMdid="0.23.1.0"/>
+ </dxl:ParamList>
+ <dxl:Result>
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="0.040900" Rows="400.000000" Width="4"/>
+ </dxl:Properties>
+ <dxl:ProjList>
+ <dxl:ProjElem ColId="10" Alias="f2">
+ <dxl:Ident ColId="10" ColName="f2" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ </dxl:ProjList>
+ <dxl:Filter>
+ <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
+ <dxl:Ident ColId="9" ColName="rngfuncid" TypeMdid="0.23.1.0"/>
+ <dxl:ConstValue TypeMdid="0.23.1.0" Value="1"/>
+ </dxl:Comparison>
+ </dxl:Filter>
+ <dxl:OneTimeFilter/>
+ <dxl:TableValuedFunction FuncId="0.26156.1.0" Name="rngfunct" TypeMdid="0.26155.1.0">
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="0.008000" Rows="1000.000000" Width="8"/>
+ </dxl:Properties>
+ <dxl:ProjList>
+ <dxl:ProjElem ColId="9" Alias="rngfuncid">
+ <dxl:Ident ColId="9" ColName="rngfuncid" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ <dxl:ProjElem ColId="10" Alias="f2">
+ <dxl:Ident ColId="10" ColName="f2" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ </dxl:ProjList>
+ <dxl:Ident ColId="0" ColName="rngfuncid" TypeMdid="0.23.1.0"/>
+ </dxl:TableValuedFunction>
+ </dxl:Result>
+ </dxl:SubPlan>
+ </dxl:Filter>
+ <dxl:OneTimeFilter/>
+ <dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000036" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000125" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="rngfuncid">
@@ -408,12 +410,7 @@
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="0" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- <dxl:SortingColumn ColId="1" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
+ <dxl:SortingColumnList/>
<dxl:TableScan>
<dxl:Properties>
<dxl:Cost StartupCost="0" TotalCost="431.000021" Rows="1.000000" Width="8"/>
@@ -441,9 +438,9 @@
</dxl:Columns>
</dxl:TableDescriptor>
</dxl:TableScan>
- </dxl:Sort>
- </dxl:GatherMotion>
- </dxl:Result>
+ </dxl:GatherMotion>
+ </dxl:Result>
+ </dxl:Sort>
</dxl:Plan>
</dxl:Thread>
</dxl:DXLMessage>
diff --git a/src/backend/gporca/data/dxl/minidump/CorrelatedNLJWithTrueCondition.mdp b/src/backend/gporca/data/dxl/minidump/CorrelatedNLJWithTrueCondition.mdp
index 1ce3514056..1983620131 100644
--- a/src/backend/gporca/data/dxl/minidump/CorrelatedNLJWithTrueCondition.mdp
+++ b/src/backend/gporca/data/dxl/minidump/CorrelatedNLJWithTrueCondition.mdp
@@ -336,7 +336,7 @@
<dxl:Plan Id="0" SpaceSize="126">
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1324039.639123" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="1324039.770556" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="18" Alias="bar">
@@ -347,7 +347,7 @@
<dxl:SortingColumnList/>
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1324039.639108" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="1324039.770541" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="18" Alias="bar">
@@ -407,14 +407,14 @@
<dxl:OneTimeFilter/>
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000068" Rows="1.000000" Width="1"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000196" Rows="1.000000" Width="1"/>
</dxl:Properties>
<dxl:ProjList/>
<dxl:Filter/>
<dxl:OneTimeFilter/>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000068" Rows="1.000000" Width="1"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000196" Rows="1.000000" Width="1"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="8"/>
@@ -437,7 +437,7 @@
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000059" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000187" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="8" Alias="?column?">
@@ -455,7 +455,7 @@
<dxl:LimitOffset/>
<dxl:RedistributeMotion InputSegments="0,1,2" OutputSegments="0,1,2">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000059" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000097" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="8" Alias="?column?">
@@ -474,7 +474,7 @@
</dxl:HashExprList>
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000046" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000084" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="8" Alias="?column?">
@@ -486,9 +486,9 @@
</dxl:ProjList>
<dxl:Filter/>
<dxl:OneTimeFilter/>
- <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
+ <dxl:Aggregate AggregationStrategy="Hashed" StreamSafe="true">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000046" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000084" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="8"/>
@@ -509,41 +509,34 @@
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:Sort SortDiscardDuplicates="false">
+ <dxl:Result>
<dxl:Properties>
<dxl:Cost StartupCost="0" TotalCost="431.000039" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="8" Alias="?column?">
- <dxl:Ident ColId="8" ColName="?column?" TypeMdid="0.23.1.0"/>
+ <dxl:ConstValue TypeMdid="0.23.1.0" Value="1"/>
</dxl:ProjElem>
<dxl:ProjElem ColId="0" Alias="a">
<dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="8" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:Result>
+ <dxl:OneTimeFilter/>
+ <dxl:RandomMotion InputSegments="0,1,2" OutputSegments="0,1,2">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000039" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000037" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
- <dxl:ProjElem ColId="8" Alias="?column?">
- <dxl:ConstValue TypeMdid="0.23.1.0" Value="1"/>
- </dxl:ProjElem>
<dxl:ProjElem ColId="0" Alias="a">
<dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:OneTimeFilter/>
- <dxl:RandomMotion InputSegments="0,1,2" OutputSegments="0,1,2">
+ <dxl:SortingColumnList/>
+ <dxl:TableScan>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000037" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000019" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -551,33 +544,21 @@
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList/>
- <dxl:TableScan>
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000019" Rows="1.000000" Width="4"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="0" Alias="a">
- <dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:TableDescriptor Mdid="6.16385.1.0" TableName="foo">
- <dxl:Columns>
- <dxl:Column ColId="0" Attno="1" ColName="a" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="1" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
- <dxl:Column ColId="2" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="3" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="4" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="5" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="6" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
- <dxl:Column ColId="7" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:TableScan>
- </dxl:RandomMotion>
- </dxl:Result>
- </dxl:Sort>
+ <dxl:TableDescriptor Mdid="6.16385.1.0" TableName="foo">
+ <dxl:Columns>
+ <dxl:Column ColId="0" Attno="1" ColName="a" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="1" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
+ <dxl:Column ColId="2" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="3" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="4" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="5" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="6" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
+ <dxl:Column ColId="7" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:TableScan>
+ </dxl:RandomMotion>
+ </dxl:Result>
</dxl:Aggregate>
</dxl:Result>
</dxl:RedistributeMotion>
diff --git a/src/backend/gporca/data/dxl/minidump/CorrelatedSubqueryWithAggWindowFunc.mdp b/src/backend/gporca/data/dxl/minidump/CorrelatedSubqueryWithAggWindowFunc.mdp
index fa8a7f915d..4a2d5d14d7 100644
--- a/src/backend/gporca/data/dxl/minidump/CorrelatedSubqueryWithAggWindowFunc.mdp
+++ b/src/backend/gporca/data/dxl/minidump/CorrelatedSubqueryWithAggWindowFunc.mdp
@@ -421,7 +421,7 @@ explain select C.i from C where C.i in (select avg(i) over (partition by i) from
<dxl:Plan Id="0" SpaceSize="0">
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000951" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.001042" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="i">
@@ -432,7 +432,7 @@ explain select C.i from C where C.i in (select avg(i) over (partition by i) from
<dxl:OneTimeFilter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000951" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.001042" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="i">
@@ -450,7 +450,7 @@ explain select C.i from C where C.i in (select avg(i) over (partition by i) from
<dxl:LimitOffset/>
<dxl:HashJoin JoinType="In">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000951" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000997" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="i">
@@ -524,7 +524,7 @@ explain select C.i from C where C.i in (select avg(i) over (partition by i) from
</dxl:GatherMotion>
<dxl:Window PartitionColumns="">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000077" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000122" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="18" Alias="avg">
@@ -539,7 +539,7 @@ explain select C.i from C where C.i in (select avg(i) over (partition by i) from
<dxl:Filter/>
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000073" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000118" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="9" Alias="i">
@@ -552,7 +552,7 @@ explain select C.i from C where C.i in (select avg(i) over (partition by i) from
</dxl:SortingColumnList>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000028" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000074" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="9" Alias="i">
diff --git a/src/backend/gporca/data/dxl/minidump/DML-With-WindowFunc-OuterRef.mdp b/src/backend/gporca/data/dxl/minidump/DML-With-WindowFunc-OuterRef.mdp
index 0cc440f7f8..d89af76645 100644
--- a/src/backend/gporca/data/dxl/minidump/DML-With-WindowFunc-OuterRef.mdp
+++ b/src/backend/gporca/data/dxl/minidump/DML-With-WindowFunc-OuterRef.mdp
@@ -341,10 +341,10 @@
</dxl:LogicalSelect>
</dxl:LogicalCTAS>
</dxl:Query>
- <dxl:Plan Id="0" SpaceSize="25">
+ <dxl:Plan Id="0" SpaceSize="137">
<dxl:PhysicalCTAS Name="fake ctas rel" IsTemporary="true" StorageType="Heap" DistributionPolicy="Random" InsertColumns="0" VarTypeModList="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.010884" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.010975" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:DistrOpclasses/>
<dxl:Columns>
@@ -358,7 +358,7 @@
</dxl:ProjList>
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000468" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000558" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="i">
@@ -372,7 +372,7 @@
<dxl:OneTimeFilter/>
<dxl:RandomMotion InputSegments="0,1,2" OutputSegments="0,1,2">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000465" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000556" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="i">
@@ -383,7 +383,7 @@
<dxl:SortingColumnList/>
<dxl:HashJoin JoinType="Inner">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000461" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000552" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="i">
@@ -402,7 +402,7 @@
</dxl:HashCondList>
<dxl:RedistributeMotion InputSegments="0" OutputSegments="0,1,2">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000048" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000139" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="16" Alias="row_number">
@@ -418,7 +418,7 @@
</dxl:HashExprList>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000023" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000114" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="16"/>
@@ -431,7 +431,7 @@
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000011" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000101" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="16" Alias="row_number">
@@ -484,7 +484,7 @@
<dxl:WindowKeyList>
<dxl:WindowKey>
<dxl:SortingColumnList/>
- <dxl:WindowFrame FrameSpec="Range" ExclusionStrategy="Nulls">
+ <dxl:WindowFrame FrameSpec="Range" ExclusionStrategy="Nulls" StartInRange="0" EndInRange="0" InRangeColl="0" InRangeAsc="false" InRangeNullsFirst="false">
<dxl:TrailingEdge TrailingBoundary="UnboundedPreceding"/>
<dxl:LeadingEdge LeadingBoundary="CurrentRow"/>
</dxl:WindowFrame>
diff --git a/src/backend/gporca/data/dxl/minidump/DQA-KeepOuterReference.mdp b/src/backend/gporca/data/dxl/minidump/DQA-KeepOuterReference.mdp
index fad52fcb60..becf9585f3 100644
--- a/src/backend/gporca/data/dxl/minidump/DQA-KeepOuterReference.mdp
+++ b/src/backend/gporca/data/dxl/minidump/DQA-KeepOuterReference.mdp
@@ -218,7 +218,7 @@ select (select distinct tint.c from tint as tt) x from tint;
<dxl:Plan Id="0" SpaceSize="6">
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1324039.388951" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="1324039.435400" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="16" Alias="x">
@@ -229,7 +229,7 @@ select (select distinct tint.c from tint as tt) x from tint;
<dxl:SortingColumnList/>
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1324039.388937" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="1324039.435385" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="16" Alias="x">
@@ -240,7 +240,7 @@ select (select distinct tint.c from tint as tt) x from tint;
</dxl:ParamList>
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000038" Rows="3.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000084" Rows="3.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="18" Alias="ColRef_0018">
@@ -251,7 +251,7 @@ select (select distinct tint.c from tint as tt) x from tint;
<dxl:OneTimeFilter/>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000034" Rows="3.000000" Width="1"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000080" Rows="3.000000" Width="1"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="17"/>
@@ -264,7 +264,7 @@ select (select distinct tint.c from tint as tt) x from tint;
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000030" Rows="3.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000075" Rows="3.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="17" Alias="ColRef_0017">
@@ -333,7 +333,7 @@ select (select distinct tint.c from tint as tt) x from tint;
<dxl:OneTimeFilter/>
<dxl:TableScan>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1324039.388935" Rows="1000.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="1324039.435384" Rows="1000.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="c">
diff --git a/src/backend/gporca/data/dxl/minidump/DQA-NonRedistributableCol.mdp b/src/backend/gporca/data/dxl/minidump/DQA-NonRedistributableCol.mdp
index 083b21f2eb..e0f3e2b4bc 100644
--- a/src/backend/gporca/data/dxl/minidump/DQA-NonRedistributableCol.mdp
+++ b/src/backend/gporca/data/dxl/minidump/DQA-NonRedistributableCol.mdp
@@ -233,7 +233,7 @@ explain select count(distinct h) from testhstore;
<dxl:Plan Id="0" SpaceSize="18">
<dxl:Aggregate AggregationStrategy="Plain" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000041" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000098" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:GroupingColumns/>
<dxl:ProjList>
@@ -251,7 +251,7 @@ explain select count(distinct h) from testhstore;
<dxl:Filter/>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000040" Rows="1.000000" Width="5"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000097" Rows="1.000000" Width="5"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="0"/>
@@ -264,7 +264,7 @@ explain select count(distinct h) from testhstore;
<dxl:Filter/>
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000033" Rows="1.000000" Width="5"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000089" Rows="1.000000" Width="5"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="h">
@@ -277,7 +277,7 @@ explain select count(distinct h) from testhstore;
</dxl:SortingColumnList>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000014" Rows="1.000000" Width="5"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000071" Rows="1.000000" Width="5"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="0"/>
@@ -290,7 +290,7 @@ explain select count(distinct h) from testhstore;
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000010" Rows="1.000000" Width="5"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000066" Rows="1.000000" Width="5"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="h">
diff --git a/src/backend/gporca/data/dxl/minidump/DQA-SplitScalar.mdp b/src/backend/gporca/data/dxl/minidump/DQA-SplitScalar.mdp
index d953d7b615..9260a6aea1 100644
--- a/src/backend/gporca/data/dxl/minidump/DQA-SplitScalar.mdp
+++ b/src/backend/gporca/data/dxl/minidump/DQA-SplitScalar.mdp
@@ -332,7 +332,7 @@ drop table if exists foo;
<dxl:Plan Id="0" SpaceSize="14">
<dxl:Aggregate AggregationStrategy="Plain" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.119502" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.119547" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:GroupingColumns/>
<dxl:ProjList>
@@ -350,7 +350,7 @@ drop table if exists foo;
<dxl:Filter/>
<dxl:GatherMotion InputSegments="0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.119501" Rows="2.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.119546" Rows="2.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="b">
@@ -361,7 +361,7 @@ drop table if exists foo;
<dxl:SortingColumnList/>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.118356" Rows="2.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.118402" Rows="2.000000" Width="4"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="1"/>
@@ -374,7 +374,7 @@ drop table if exists foo;
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.118350" Rows="2.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.118395" Rows="2.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="b">
diff --git a/src/backend/gporca/data/dxl/minidump/DQA-SplitScalarOnDistCol.mdp b/src/backend/gporca/data/dxl/minidump/DQA-SplitScalarOnDistCol.mdp
index 4b0e0b2861..72ad718086 100644
--- a/src/backend/gporca/data/dxl/minidump/DQA-SplitScalarOnDistCol.mdp
+++ b/src/backend/gporca/data/dxl/minidump/DQA-SplitScalarOnDistCol.mdp
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<dxl:DXLMessage xmlns:dxl="http://greenplum.com/dxl/2010/12/">
- <dxl:Comment><![CDATA[
+ <dxl:Comment><![CDATA[
CREATE TABLE bar (a int, b int);
EXPLAIN SELECT COUNT(DISTINCT(a)) FROM bar;
@@ -11,16 +11,24 @@
The plan for above query should now look like below :
- Aggregate (cost=0.00..431.00 rows=1 width=8)
- -> Gather Motion 3:1 (slice1; segments: 3) (cost=0.00..431.00 rows=1 width=8)
- -> Aggregate (cost=0.00..431.00 rows=1 width=8)
- -> Table Scan on bar (cost=0.00..431.00 rows=1 width=4)
+ Aggregate (cost=0.00..431.00 rows=1 width=8)
+ -> Gather Motion 3:1 (slice1; segments: 3) (cost=0.00..431.00 rows=1 width=4)
+ -> GroupAggregate (cost=0.00..431.00 rows=1 width=4)
+ Group Key: a
+ -> Sort (cost=0.00..431.00 rows=1 width=4)
+ Sort Key: a
+ -> Redistribute Motion 3:3 (slice2; segments: 3) (cost=0.00..431.00 rows=1 width=4)
+ Hash Key: a
+ -> Streaming HashAggregate (cost=0.00..431.00 rows=1 width=4)
+ Group Key: a
+ -> Redistribute Motion 3:3 (slice3; segments: 3) (cost=0.00..431.00 rows=1 width=4)
+ -> Seq Scan on bar (cost=0.00..431.00 rows=1 width=4)
]]>
</dxl:Comment>
<dxl:Thread Id="0">
<dxl:OptimizerConfig>
<dxl:EnumeratorConfig Id="0" PlanSamples="0" CostThreshold="0"/>
- <dxl:StatisticsConfig DampingFactorFilter="0.750000" DampingFactorJoin="0.010000" DampingFactorGroupBy="0.750000" MaxStatsBuckets="100"/>
+ <dxl:StatisticsConfig DampingFactorFilter="0.750000" DampingFactorJoin="0.000000" DampingFactorGroupBy="0.750000" MaxStatsBuckets="100"/>
<dxl:CTEConfig CTEInliningCutoff="0"/>
<dxl:WindowOids RowNumber="3100" Rank="3101"/>
<dxl:CostModelConfig CostModelType="1" SegmentsForCosting="3">
@@ -28,36 +36,14 @@
<dxl:CostParam Name="NLJFactor" Value="1024.000000" LowerBound="1023.500000" UpperBound="1024.500000"/>
</dxl:CostParams>
</dxl:CostModelConfig>
- <dxl:Hint JoinArityForAssociativityCommutativity="18" ArrayExpansionThreshold="100" JoinOrderDynamicProgThreshold="10" BroadcastThreshold="10000000" EnforceConstraintsOnDML="false"/>
- <dxl:TraceFlags Value="102001,102002,102003,102074,102120,102144,103001,103014,103015,103022,103027,103033,104003,104004,104005,105000,106000"/>
+ <dxl:Hint JoinArityForAssociativityCommutativity="18" ArrayExpansionThreshold="20" JoinOrderDynamicProgThreshold="10" BroadcastThreshold="100000" EnforceConstraintsOnDML="false" PushGroupByBelowSetopThreshold="10" XformBindThreshold="0" SkewFactor="0"/>
+ <dxl:TraceFlags Value="101013,102001,102002,102003,102043,102074,102120,102144,102162,102163,103001,103014,103015,103022,103026,103027,103029,103033,103038,103040,104002,104003,104004,104005,106000"/>
</dxl:OptimizerConfig>
<dxl:Metadata SystemIds="0.GPDB">
- <dxl:RelationStatistics Mdid="2.24576.1.0" Name="bar" Rows="0.000000" EmptyRelation="true"/>
- <dxl:Relation Mdid="6.24576.1.0" Name="bar" IsTemporary="false" StorageType="Heap" DistributionPolicy="Hash" DistributionColumns="0" Keys="8,2">
- <dxl:Columns>
- <dxl:Column Name="a" Attno="1" Mdid="0.23.1.0" Nullable="true" ColWidth="4">
- </dxl:Column>
- <dxl:Column Name="b" Attno="2" Mdid="0.23.1.0" Nullable="true" ColWidth="4">
- </dxl:Column>
- <dxl:Column Name="ctid" Attno="-1" Mdid="0.27.1.0" Nullable="false" ColWidth="6">
- </dxl:Column>
- <dxl:Column Name="xmin" Attno="-3" Mdid="0.28.1.0" Nullable="false" ColWidth="4">
- </dxl:Column>
- <dxl:Column Name="cmin" Attno="-4" Mdid="0.29.1.0" Nullable="false" ColWidth="4">
- </dxl:Column>
- <dxl:Column Name="xmax" Attno="-5" Mdid="0.28.1.0" Nullable="false" ColWidth="4">
- </dxl:Column>
- <dxl:Column Name="cmax" Attno="-6" Mdid="0.29.1.0" Nullable="false" ColWidth="4">
- </dxl:Column>
- <dxl:Column Name="tableoid" Attno="-7" Mdid="0.26.1.0" Nullable="false" ColWidth="4">
- </dxl:Column>
- <dxl:Column Name="gp_segment_id" Attno="-8" Mdid="0.23.1.0" Nullable="false" ColWidth="4">
- </dxl:Column>
- </dxl:Columns>
- <dxl:IndexInfoList/>
- <dxl:CheckConstraints/>
- </dxl:Relation>
- <dxl:Type Mdid="0.16.1.0" Name="bool" IsRedistributable="true" IsHashable="true" IsMergeJoinable="true" IsComposite="false" IsFixedLength="true" Length="1" PassByValue="true">
+ <dxl:Type Mdid="0.16.1.0" Name="bool" IsRedistributable="true" IsHashable="true" IsMergeJoinable="true" IsComposite="false" IsTextRelated="false" IsFixedLength="true" Length="1" PassByValue="true">
+ <dxl:DistrOpfamily Mdid="0.2222.1.0"/>
+ <dxl:LegacyDistrOpfamily Mdid="0.7124.1.0"/>
+ <dxl:PartOpfamily Mdid="0.424.1.0"/>
<dxl:EqualityOp Mdid="0.91.1.0"/>
<dxl:InequalityOp Mdid="0.85.1.0"/>
<dxl:LessThanOp Mdid="0.58.1.0"/>
@@ -72,7 +58,10 @@
<dxl:SumAgg Mdid="0.0.0.0"/>
<dxl:CountAgg Mdid="0.2147.1.0"/>
</dxl:Type>
- <dxl:Type Mdid="0.20.1.0" Name="Int8" IsRedistributable="true" IsHashable="true" IsMergeJoinable="true" IsComposite="false" IsFixedLength="true" Length="8" PassByValue="true">
+ <dxl:Type Mdid="0.20.1.0" Name="Int8" IsRedistributable="true" IsHashable="true" IsMergeJoinable="true" IsComposite="false" IsTextRelated="false" IsFixedLength="true" Length="8" PassByValue="true">
+ <dxl:DistrOpfamily Mdid="0.1977.1.0"/>
+ <dxl:LegacyDistrOpfamily Mdid="0.7100.1.0"/>
+ <dxl:PartOpfamily Mdid="0.1976.1.0"/>
<dxl:EqualityOp Mdid="0.410.1.0"/>
<dxl:InequalityOp Mdid="0.411.1.0"/>
<dxl:LessThanOp Mdid="0.412.1.0"/>
@@ -87,7 +76,10 @@
<dxl:SumAgg Mdid="0.2107.1.0"/>
<dxl:CountAgg Mdid="0.2147.1.0"/>
</dxl:Type>
- <dxl:Type Mdid="0.23.1.0" Name="int4" IsRedistributable="true" IsHashable="true" IsMergeJoinable="true" IsComposite="false" IsFixedLength="true" Length="4" PassByValue="true">
+ <dxl:Type Mdid="0.23.1.0" Name="int4" IsRedistributable="true" IsHashable="true" IsMergeJoinable="true" IsComposite="false" IsTextRelated="false" IsFixedLength="true" Length="4" PassByValue="true">
+ <dxl:DistrOpfamily Mdid="0.1977.1.0"/>
+ <dxl:LegacyDistrOpfamily Mdid="0.7100.1.0"/>
+ <dxl:PartOpfamily Mdid="0.1976.1.0"/>
<dxl:EqualityOp Mdid="0.96.1.0"/>
<dxl:InequalityOp Mdid="0.518.1.0"/>
<dxl:LessThanOp Mdid="0.97.1.0"/>
@@ -102,8 +94,10 @@
<dxl:SumAgg Mdid="0.2108.1.0"/>
<dxl:CountAgg Mdid="0.2147.1.0"/>
</dxl:Type>
- <dxl:ColumnStatistics Mdid="1.24576.1.0.0" Name="a" Width="4.000000" NullFreq="0.000000" NdvRemain="0.000000" FreqRemain="0.000000" ColStatsMissing="true"/>
- <dxl:Type Mdid="0.26.1.0" Name="oid" IsRedistributable="true" IsHashable="true" IsMergeJoinable="true" IsComposite="false" IsFixedLength="true" Length="4" PassByValue="true">
+ <dxl:Type Mdid="0.26.1.0" Name="oid" IsRedistributable="true" IsHashable="true" IsMergeJoinable="true" IsComposite="false" IsTextRelated="false" IsFixedLength="true" Length="4" PassByValue="true">
+ <dxl:DistrOpfamily Mdid="0.1990.1.0"/>
+ <dxl:LegacyDistrOpfamily Mdid="0.7109.1.0"/>
+ <dxl:PartOpfamily Mdid="0.1989.1.0"/>
<dxl:EqualityOp Mdid="0.607.1.0"/>
<dxl:InequalityOp Mdid="0.608.1.0"/>
<dxl:LessThanOp Mdid="0.609.1.0"/>
@@ -112,13 +106,16 @@
<dxl:GreaterThanEqualsOp Mdid="0.612.1.0"/>
<dxl:ComparisonOp Mdid="0.356.1.0"/>
<dxl:ArrayType Mdid="0.1028.1.0"/>
- <dxl:MinAgg Mdid="0.2118.1.0"/>
- <dxl:MaxAgg Mdid="0.2134.1.0"/>
+ <dxl:MinAgg Mdid="0.2134.1.0"/>
+ <dxl:MaxAgg Mdid="0.2118.1.0"/>
<dxl:AvgAgg Mdid="0.0.0.0"/>
<dxl:SumAgg Mdid="0.0.0.0"/>
<dxl:CountAgg Mdid="0.2147.1.0"/>
</dxl:Type>
- <dxl:Type Mdid="0.27.1.0" Name="tid" IsRedistributable="true" IsHashable="true" IsMergeJoinable="true" IsComposite="false" IsFixedLength="true" Length="6" PassByValue="false">
+ <dxl:Type Mdid="0.27.1.0" Name="tid" IsRedistributable="true" IsHashable="true" IsMergeJoinable="true" IsComposite="false" IsTextRelated="false" IsFixedLength="true" Length="6" PassByValue="false">
+ <dxl:DistrOpfamily Mdid="0.2227.1.0"/>
+ <dxl:LegacyDistrOpfamily Mdid="0.7110.1.0"/>
+ <dxl:PartOpfamily Mdid="0.2789.1.0"/>
<dxl:EqualityOp Mdid="0.387.1.0"/>
<dxl:InequalityOp Mdid="0.402.1.0"/>
<dxl:LessThanOp Mdid="0.2799.1.0"/>
@@ -133,7 +130,8 @@
<dxl:SumAgg Mdid="0.0.0.0"/>
<dxl:CountAgg Mdid="0.2147.1.0"/>
</dxl:Type>
- <dxl:Type Mdid="0.29.1.0" Name="cid" IsRedistributable="false" IsHashable="true" IsMergeJoinable="false" IsComposite="false" IsFixedLength="true" Length="4" PassByValue="true">
+ <dxl:Type Mdid="0.29.1.0" Name="cid" IsRedistributable="true" IsHashable="true" IsMergeJoinable="false" IsComposite="false" IsTextRelated="false" IsFixedLength="true" Length="4" PassByValue="true">
+ <dxl:DistrOpfamily Mdid="0.2226.1.0"/>
<dxl:EqualityOp Mdid="0.385.1.0"/>
<dxl:InequalityOp Mdid="0.0.0.0"/>
<dxl:LessThanOp Mdid="0.0.0.0"/>
@@ -148,9 +146,10 @@
<dxl:SumAgg Mdid="0.0.0.0"/>
<dxl:CountAgg Mdid="0.2147.1.0"/>
</dxl:Type>
- <dxl:Type Mdid="0.28.1.0" Name="xid" IsRedistributable="false" IsHashable="true" IsMergeJoinable="false" IsComposite="false" IsFixedLength="true" Length="4" PassByValue="true">
+ <dxl:Type Mdid="0.28.1.0" Name="xid" IsRedistributable="true" IsHashable="true" IsMergeJoinable="false" IsComposite="false" IsTextRelated="false" IsFixedLength="true" Length="4" PassByValue="true">
+ <dxl:DistrOpfamily Mdid="0.2225.1.0"/>
<dxl:EqualityOp Mdid="0.352.1.0"/>
- <dxl:InequalityOp Mdid="0.0.0.0"/>
+ <dxl:InequalityOp Mdid="0.3315.1.0"/>
<dxl:LessThanOp Mdid="0.0.0.0"/>
<dxl:LessThanEqualsOp Mdid="0.0.0.0"/>
<dxl:GreaterThanOp Mdid="0.0.0.0"/>
@@ -163,7 +162,50 @@
<dxl:SumAgg Mdid="0.0.0.0"/>
<dxl:CountAgg Mdid="0.2147.1.0"/>
</dxl:Type>
- <dxl:GPDBAgg Mdid="0.2147.1.0" Name="count" IsSplittable="true" HashAggCapable="true">
+ <dxl:RelationStatistics Mdid="2.17308.1.0" Name="bar" Rows="0.000000" RelPages="0" RelAllVisible="0" EmptyRelation="true"/>
+ <dxl:Relation Mdid="6.17308.1.0" Name="bar" IsTemporary="false" StorageType="Heap" DistributionPolicy="Hash" DistributionColumns="0" Keys="8,2">
+ <dxl:Columns>
+ <dxl:Column Name="a" Attno="1" Mdid="0.23.1.0" Nullable="true" ColWidth="4">
+ </dxl:Column>
+ <dxl:Column Name="b" Attno="2" Mdid="0.23.1.0" Nullable="true" ColWidth="4">
+ </dxl:Column>
+ <dxl:Column Name="ctid" Attno="-1" Mdid="0.27.1.0" Nullable="false" ColWidth="6">
+ </dxl:Column>
+ <dxl:Column Name="xmin" Attno="-2" Mdid="0.28.1.0" Nullable="false" ColWidth="4">
+ </dxl:Column>
+ <dxl:Column Name="cmin" Attno="-3" Mdid="0.29.1.0" Nullable="false" ColWidth="4">
+ </dxl:Column>
+ <dxl:Column Name="xmax" Attno="-4" Mdid="0.28.1.0" Nullable="false" ColWidth="4">
+ </dxl:Column>
+ <dxl:Column Name="cmax" Attno="-5" Mdid="0.29.1.0" Nullable="false" ColWidth="4">
+ </dxl:Column>
+ <dxl:Column Name="tableoid" Attno="-6" Mdid="0.26.1.0" Nullable="false" ColWidth="4">
+ </dxl:Column>
+ <dxl:Column Name="gp_segment_id" Attno="-7" Mdid="0.23.1.0" Nullable="false" ColWidth="4">
+ </dxl:Column>
+ </dxl:Columns>
+ <dxl:IndexInfoList/>
+ <dxl:CheckConstraints/>
+ <dxl:DistrOpfamilies>
+ <dxl:DistrOpfamily Mdid="0.1977.1.0"/>
+ </dxl:DistrOpfamilies>
+ </dxl:Relation>
+ <dxl:RelationExtendedStatistics Mdid="10.17308.1.0" Name="bar"/>
+ <dxl:ColumnStatistics Mdid="1.17308.1.0.0" Name="a" Width="4.000000" NullFreq="0.000000" NdvRemain="0.000000" FreqRemain="0.000000" ColStatsMissing="true"/>
+ <dxl:GPDBScalarOp Mdid="0.97.1.0" Name="<" ComparisonType="LT" ReturnsNullOnNullInput="true" IsNDVPreserving="false">
+ <dxl:LeftType Mdid="0.23.1.0"/>
+ <dxl:RightType Mdid="0.23.1.0"/>
+ <dxl:ResultType Mdid="0.16.1.0"/>
+ <dxl:OpFunc Mdid="0.66.1.0"/>
+ <dxl:Commutator Mdid="0.521.1.0"/>
+ <dxl:InverseOp Mdid="0.525.1.0"/>
+ <dxl:Opfamilies>
+ <dxl:Opfamily Mdid="0.1976.1.0"/>
+ <dxl:Opfamily Mdid="0.4054.1.0"/>
+ <dxl:Opfamily Mdid="0.10009.1.0"/>
+ </dxl:Opfamilies>
+ </dxl:GPDBScalarOp>
+ <dxl:GPDBAgg Mdid="0.2147.1.0" Name="count" IsRepSafe="true" IsSplittable="true" HashAggCapable="true">
<dxl:ResultType Mdid="0.20.1.0"/>
<dxl:IntermediateResultType Mdid="0.20.1.0"/>
</dxl:GPDBAgg>
@@ -177,84 +219,83 @@
<dxl:GroupingColumns/>
<dxl:ProjList>
<dxl:ProjElem ColId="10" Alias="count">
- <dxl:AggFunc AggMdid="0.2147.1.0" AggDistinct="true" AggStage="Normal" AggKind="n" AggArgTypes="">
+ <dxl:AggFunc AggMdid="0.2147.1.0" AggDistinct="true" AggStage="Normal" AggKind="n" AggArgTypes="23">
<dxl:ValuesList ParamType="aggargs">
- <dxl:Ident ColId="1" ColName="a" TypeMdid="0.23.1.0"/>
+ <dxl:Ident ColId="1" ColName="a" TypeMdid="0.23.1.0"/>
</dxl:ValuesList>
<dxl:ValuesList ParamType="aggdirectargs"/>
<dxl:ValuesList ParamType="aggorder"/>
- <dxl:ValuesList ParamType="aggdistinct"/>
+ <dxl:ValuesList ParamType="aggdistinct">
+ <dxl:SortGroupClause Index="0" EqualityOp="96" SortOperatorMdid="97" SortNullsFirst="false" IsHashable="true"/>
+ </dxl:ValuesList>
</dxl:AggFunc>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:LogicalGet>
- <dxl:TableDescriptor Mdid="6.24576.1.0" TableName="bar">
+ <dxl:TableDescriptor Mdid="6.17308.1.0" TableName="bar" LockMode="1" AclMode="2">
<dxl:Columns>
<dxl:Column ColId="1" Attno="1" ColName="a" TypeMdid="0.23.1.0" ColWidth="4"/>
<dxl:Column ColId="2" Attno="2" ColName="b" TypeMdid="0.23.1.0" ColWidth="4"/>
<dxl:Column ColId="3" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
- <dxl:Column ColId="4" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="5" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="6" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="7" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="8" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
- <dxl:Column ColId="9" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="4" Attno="-2" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="5" Attno="-3" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="6" Attno="-4" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="7" Attno="-5" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="8" Attno="-6" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
+ <dxl:Column ColId="9" Attno="-7" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
</dxl:Columns>
</dxl:TableDescriptor>
</dxl:LogicalGet>
</dxl:LogicalGroupBy>
</dxl:Query>
- <dxl:Plan Id="0" SpaceSize="6">
+ <dxl:Plan Id="0" SpaceSize="14">
<dxl:Aggregate AggregationStrategy="Plain" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000059" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000184" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:GroupingColumns/>
<dxl:ProjList>
<dxl:ProjElem ColId="9" Alias="count">
- <dxl:AggFunc AggMdid="0.2147.1.0" AggDistinct="false" AggStage="Final" AggKind="n" AggArgTypes="">
+ <dxl:AggFunc AggMdid="0.2147.1.0" AggDistinct="false" AggStage="Normal" AggKind="n" AggArgTypes="23">
<dxl:ValuesList ParamType="aggargs">
- <dxl:Ident ColId="10" ColName="ColRef_0010" TypeMdid="0.20.1.0"/>
+ <dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
</dxl:ValuesList>
<dxl:ValuesList ParamType="aggdirectargs"/>
<dxl:ValuesList ParamType="aggorder"/>
- <dxl:ValuesList ParamType="aggdistinct"/>
+ <dxl:ValuesList ParamType="aggdistinct">
+ <dxl:SortGroupClause Index="0" EqualityOp="96" SortOperatorMdid="97" SortNullsFirst="false" IsHashable="true"/>
+ </dxl:ValuesList>
</dxl:AggFunc>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000059" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000184" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
- <dxl:ProjElem ColId="10" Alias="ColRef_0010">
- <dxl:Ident ColId="10" ColName="ColRef_0010" TypeMdid="0.20.1.0"/>
+ <dxl:ProjElem ColId="0" Alias="a">
+ <dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
<dxl:SortingColumnList/>
- <dxl:Aggregate AggregationStrategy="Plain" StreamSafe="false">
+ <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000029" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000139" Rows="1.000000" Width="4"/>
</dxl:Properties>
- <dxl:GroupingColumns/>
+ <dxl:GroupingColumns>
+ <dxl:GroupingColumn ColId="0"/>
+ </dxl:GroupingColumns>
<dxl:ProjList>
- <dxl:ProjElem ColId="10" Alias="ColRef_0010">
- <dxl:AggFunc AggMdid="0.2147.1.0" AggDistinct="true" AggStage="Partial" AggKind="n" AggArgTypes="">
- <dxl:ValuesList ParamType="aggargs">
- <dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
- </dxl:ValuesList>
- <dxl:ValuesList ParamType="aggdirectargs"/>
- <dxl:ValuesList ParamType="aggorder"/>
- <dxl:ValuesList ParamType="aggdistinct"/>
- </dxl:AggFunc>
+ <dxl:ProjElem ColId="0" Alias="a">
+ <dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:TableScan>
+ <dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000021" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000133" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -262,19 +303,78 @@
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:TableDescriptor Mdid="6.24576.1.0" TableName="bar">
- <dxl:Columns>
- <dxl:Column ColId="0" Attno="1" ColName="a" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="2" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
- <dxl:Column ColId="3" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="4" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="5" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="6" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="7" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
- <dxl:Column ColId="8" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:TableScan>
+ <dxl:SortingColumnList>
+ <dxl:SortingColumn ColId="0" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
+ </dxl:SortingColumnList>
+ <dxl:LimitCount/>
+ <dxl:LimitOffset/>
+ <dxl:RedistributeMotion InputSegments="0,1,2" OutputSegments="0,1,2">
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="431.000087" Rows="1.000000" Width="4"/>
+ </dxl:Properties>
+ <dxl:ProjList>
+ <dxl:ProjElem ColId="0" Alias="a">
+ <dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ </dxl:ProjList>
+ <dxl:Filter/>
+ <dxl:SortingColumnList/>
+ <dxl:HashExprList>
+ <dxl:HashExpr Opfamily="0.1977.1.0">
+ <dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
+ </dxl:HashExpr>
+ </dxl:HashExprList>
+ <dxl:Aggregate AggregationStrategy="Hashed" StreamSafe="true">
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="431.000081" Rows="1.000000" Width="4"/>
+ </dxl:Properties>
+ <dxl:GroupingColumns>
+ <dxl:GroupingColumn ColId="0"/>
+ </dxl:GroupingColumns>
+ <dxl:ProjList>
+ <dxl:ProjElem ColId="0" Alias="a">
+ <dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ </dxl:ProjList>
+ <dxl:Filter/>
+ <dxl:RandomMotion InputSegments="0,1,2" OutputSegments="0,1,2">
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="431.000039" Rows="1.000000" Width="4"/>
+ </dxl:Properties>
+ <dxl:ProjList>
+ <dxl:ProjElem ColId="0" Alias="a">
+ <dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ </dxl:ProjList>
+ <dxl:Filter/>
+ <dxl:SortingColumnList/>
+ <dxl:TableScan>
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="431.000021" Rows="1.000000" Width="4"/>
+ </dxl:Properties>
+ <dxl:ProjList>
+ <dxl:ProjElem ColId="0" Alias="a">
+ <dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ </dxl:ProjList>
+ <dxl:Filter/>
+ <dxl:TableDescriptor Mdid="6.17308.1.0" TableName="bar" LockMode="1" AclMode="2">
+ <dxl:Columns>
+ <dxl:Column ColId="0" Attno="1" ColName="a" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="2" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
+ <dxl:Column ColId="3" Attno="-2" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="4" Attno="-3" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="5" Attno="-4" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="6" Attno="-5" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="7" Attno="-6" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
+ <dxl:Column ColId="8" Attno="-7" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:TableScan>
+ </dxl:RandomMotion>
+ </dxl:Aggregate>
+ </dxl:RedistributeMotion>
+ </dxl:Sort>
</dxl:Aggregate>
</dxl:GatherMotion>
</dxl:Aggregate>
diff --git a/src/backend/gporca/data/dxl/minidump/DQA-SplitScalarWithAggAndGuc.mdp b/src/backend/gporca/data/dxl/minidump/DQA-SplitScalarWithAggAndGuc.mdp
index 1e4399ed07..a2baa44094 100644
--- a/src/backend/gporca/data/dxl/minidump/DQA-SplitScalarWithAggAndGuc.mdp
+++ b/src/backend/gporca/data/dxl/minidump/DQA-SplitScalarWithAggAndGuc.mdp
@@ -344,7 +344,7 @@
<dxl:Plan Id="0" SpaceSize="14">
<dxl:Aggregate AggregationStrategy="Plain" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="438.619703" Rows="1.000000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="438.619812" Rows="1.000000" Width="16"/>
</dxl:Properties>
<dxl:GroupingColumns/>
<dxl:ProjList>
@@ -372,7 +372,7 @@
<dxl:Filter/>
<dxl:GatherMotion InputSegments="0,1" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="438.619692" Rows="2.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="438.619801" Rows="2.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="b">
@@ -386,7 +386,7 @@
<dxl:SortingColumnList/>
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="438.619584" Rows="2.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="438.619693" Rows="2.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="b">
@@ -398,9 +398,9 @@
</dxl:ProjList>
<dxl:Filter/>
<dxl:OneTimeFilter/>
- <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
+ <dxl:Aggregate AggregationStrategy="Hashed" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="438.619584" Rows="2.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="438.619693" Rows="2.000000" Width="12"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="1"/>
@@ -421,7 +421,7 @@
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:Sort SortDiscardDuplicates="false">
+ <dxl:RedistributeMotion InputSegments="0,1" OutputSegments="0,1">
<dxl:Properties>
<dxl:Cost StartupCost="0" TotalCost="438.619565" Rows="2.000000" Width="12"/>
</dxl:Properties>
@@ -434,14 +434,15 @@
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="1" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:RedistributeMotion InputSegments="0,1" OutputSegments="0,1">
+ <dxl:SortingColumnList/>
+ <dxl:HashExprList>
+ <dxl:HashExpr>
+ <dxl:Ident ColId="1" ColName="b" TypeMdid="0.23.1.0"/>
+ </dxl:HashExpr>
+ </dxl:HashExprList>
+ <dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="438.619565" Rows="2.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="438.619528" Rows="2.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="b">
@@ -452,77 +453,57 @@
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList/>
- <dxl:HashExprList>
- <dxl:HashExpr>
- <dxl:Ident ColId="1" ColName="b" TypeMdid="0.23.1.0"/>
- </dxl:HashExpr>
- </dxl:HashExprList>
- <dxl:Result>
+ <dxl:OneTimeFilter/>
+ <dxl:Aggregate AggregationStrategy="Hashed" StreamSafe="true">
<dxl:Properties>
<dxl:Cost StartupCost="0" TotalCost="438.619528" Rows="2.000000" Width="12"/>
</dxl:Properties>
+ <dxl:GroupingColumns>
+ <dxl:GroupingColumn ColId="1"/>
+ </dxl:GroupingColumns>
<dxl:ProjList>
+ <dxl:ProjElem ColId="11" Alias="ColRef_0011">
+ <dxl:AggFunc AggMdid="0.2108.1.0" AggDistinct="false" AggStage="Partial" AggKind="n" AggArgTypes="">
+ <dxl:ValuesList ParamType="aggargs">
+ <dxl:Ident ColId="1" ColName="b" TypeMdid="0.23.1.0"/>
+ </dxl:ValuesList>
+ <dxl:ValuesList ParamType="aggdirectargs"/>
+ <dxl:ValuesList ParamType="aggorder"/>
+ <dxl:ValuesList ParamType="aggdistinct"/>
+ </dxl:AggFunc>
+ </dxl:ProjElem>
<dxl:ProjElem ColId="1" Alias="b">
<dxl:Ident ColId="1" ColName="b" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
- <dxl:ProjElem ColId="11" Alias="ColRef_0011">
- <dxl:Ident ColId="11" ColName="ColRef_0011" TypeMdid="0.20.1.0"/>
- </dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:OneTimeFilter/>
- <dxl:Aggregate AggregationStrategy="Hashed" StreamSafe="true">
+ <dxl:TableScan>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="438.619528" Rows="2.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="432.063894" Rows="101808.000000" Width="4"/>
</dxl:Properties>
- <dxl:GroupingColumns>
- <dxl:GroupingColumn ColId="1"/>
- </dxl:GroupingColumns>
<dxl:ProjList>
- <dxl:ProjElem ColId="11" Alias="ColRef_0011">
- <dxl:AggFunc AggMdid="0.2108.1.0" AggDistinct="false" AggStage="Partial" AggKind="n" AggArgTypes="">
- <dxl:ValuesList ParamType="aggargs">
- <dxl:Ident ColId="1" ColName="b" TypeMdid="0.23.1.0"/>
- </dxl:ValuesList>
- <dxl:ValuesList ParamType="aggdirectargs"/>
- <dxl:ValuesList ParamType="aggorder"/>
- <dxl:ValuesList ParamType="aggdistinct"/>
- </dxl:AggFunc>
- </dxl:ProjElem>
<dxl:ProjElem ColId="1" Alias="b">
<dxl:Ident ColId="1" ColName="b" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:TableScan>
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="432.063894" Rows="101808.000000" Width="4"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="1" Alias="b">
- <dxl:Ident ColId="1" ColName="b" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:TableDescriptor Mdid="6.24588.1.1" TableName="foo">
- <dxl:Columns>
- <dxl:Column ColId="0" Attno="1" ColName="a" TypeMdid="0.23.1.0"/>
- <dxl:Column ColId="1" Attno="2" ColName="b" TypeMdid="0.23.1.0"/>
- <dxl:Column ColId="2" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0"/>
- <dxl:Column ColId="3" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0"/>
- <dxl:Column ColId="4" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0"/>
- <dxl:Column ColId="5" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0"/>
- <dxl:Column ColId="6" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0"/>
- <dxl:Column ColId="7" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0"/>
- <dxl:Column ColId="8" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:TableScan>
- </dxl:Aggregate>
- </dxl:Result>
- </dxl:RedistributeMotion>
- </dxl:Sort>
+ <dxl:TableDescriptor Mdid="6.24588.1.1" TableName="foo">
+ <dxl:Columns>
+ <dxl:Column ColId="0" Attno="1" ColName="a" TypeMdid="0.23.1.0"/>
+ <dxl:Column ColId="1" Attno="2" ColName="b" TypeMdid="0.23.1.0"/>
+ <dxl:Column ColId="2" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0"/>
+ <dxl:Column ColId="3" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0"/>
+ <dxl:Column ColId="4" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0"/>
+ <dxl:Column ColId="5" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0"/>
+ <dxl:Column ColId="6" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0"/>
+ <dxl:Column ColId="7" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0"/>
+ <dxl:Column ColId="8" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:TableScan>
+ </dxl:Aggregate>
+ </dxl:Result>
+ </dxl:RedistributeMotion>
</dxl:Aggregate>
</dxl:Result>
</dxl:GatherMotion>
diff --git a/src/backend/gporca/data/dxl/minidump/DQA-SplitScalarWithGuc.mdp b/src/backend/gporca/data/dxl/minidump/DQA-SplitScalarWithGuc.mdp
index 2245811306..e5519222e2 100644
--- a/src/backend/gporca/data/dxl/minidump/DQA-SplitScalarWithGuc.mdp
+++ b/src/backend/gporca/data/dxl/minidump/DQA-SplitScalarWithGuc.mdp
@@ -331,7 +331,7 @@ explain select count(distinct b ) from foo;
<dxl:Plan Id="0" SpaceSize="14">
<dxl:Aggregate AggregationStrategy="Plain" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="438.272743" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="438.272788" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:GroupingColumns/>
<dxl:ProjList>
@@ -349,7 +349,7 @@ explain select count(distinct b ) from foo;
<dxl:Filter/>
<dxl:GatherMotion InputSegments="0,1" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="438.272742" Rows="2.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="438.272788" Rows="2.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="b">
@@ -360,7 +360,7 @@ explain select count(distinct b ) from foo;
<dxl:SortingColumnList/>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="438.272706" Rows="2.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="438.272752" Rows="2.000000" Width="4"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="1"/>
@@ -373,7 +373,7 @@ explain select count(distinct b ) from foo;
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="438.272700" Rows="2.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="438.272745" Rows="2.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="b">
diff --git a/src/backend/gporca/data/dxl/minidump/DeleteMismatchedDistribution.mdp b/src/backend/gporca/data/dxl/minidump/DeleteMismatchedDistribution.mdp
index 02508f0e76..2be330327e 100644
--- a/src/backend/gporca/data/dxl/minidump/DeleteMismatchedDistribution.mdp
+++ b/src/backend/gporca/data/dxl/minidump/DeleteMismatchedDistribution.mdp
@@ -595,7 +595,7 @@
</dxl:LogicalSelect>
</dxl:LogicalDelete>
</dxl:Query>
- <dxl:Plan Id="0" SpaceSize="35">
+ <dxl:Plan Id="0" SpaceSize="139">
<dxl:DMLDelete Columns="0,1,2" ActionCol="24" CtidCol="3" SegmentIdCol="9">
<dxl:Properties>
<dxl:Cost StartupCost="0" TotalCost="862.034376" Rows="1.000000" Width="1"/>
diff --git a/src/backend/gporca/data/dxl/minidump/Distinct-LegacyOpfamily.mdp b/src/backend/gporca/data/dxl/minidump/Distinct-LegacyOpfamily.mdp
index 543ffc77c0..b32fb502f5 100644
--- a/src/backend/gporca/data/dxl/minidump/Distinct-LegacyOpfamily.mdp
+++ b/src/backend/gporca/data/dxl/minidump/Distinct-LegacyOpfamily.mdp
@@ -228,9 +228,9 @@
</dxl:LogicalGroupBy>
</dxl:Query>
<dxl:Plan Id="0" SpaceSize="17">
- <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
+ <dxl:Aggregate AggregationStrategy="Hashed" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000247" Rows="1.000000" Width="29"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000404" Rows="1.000000" Width="29"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="1"/>
@@ -243,7 +243,7 @@
<dxl:Filter/>
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000202" Rows="1.000000" Width="29"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000265" Rows="1.000000" Width="29"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="test_array">
@@ -251,79 +251,45 @@
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="1" SortOperatorMdid="0.1072.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:Sort SortDiscardDuplicates="false">
+ <dxl:SortingColumnList/>
+ <dxl:Aggregate AggregationStrategy="Hashed" StreamSafe="true">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000094" Rows="1.000000" Width="29"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000157" Rows="1.000000" Width="29"/>
</dxl:Properties>
+ <dxl:GroupingColumns>
+ <dxl:GroupingColumn ColId="1"/>
+ </dxl:GroupingColumns>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="test_array">
<dxl:Ident ColId="1" ColName="test_array" TypeMdid="0.1007.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="1" SortOperatorMdid="0.1072.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
+ <dxl:TableScan>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000094" Rows="1.000000" Width="29"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000022" Rows="2.000000" Width="29"/>
</dxl:Properties>
- <dxl:GroupingColumns>
- <dxl:GroupingColumn ColId="1"/>
- </dxl:GroupingColumns>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="test_array">
<dxl:Ident ColId="1" ColName="test_array" TypeMdid="0.1007.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:Sort SortDiscardDuplicates="false">
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000058" Rows="2.000000" Width="29"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="1" Alias="test_array">
- <dxl:Ident ColId="1" ColName="test_array" TypeMdid="0.1007.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="1" SortOperatorMdid="0.1072.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:TableScan>
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000022" Rows="2.000000" Width="29"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="1" Alias="test_array">
- <dxl:Ident ColId="1" ColName="test_array" TypeMdid="0.1007.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:TableDescriptor Mdid="6.24576.1.0" TableName="try_distinct_array">
- <dxl:Columns>
- <dxl:Column ColId="0" Attno="1" ColName="test_char" TypeMdid="0.1043.1.0" ColWidth="2"/>
- <dxl:Column ColId="1" Attno="2" ColName="test_array" TypeMdid="0.1007.1.0" ColWidth="29"/>
- <dxl:Column ColId="2" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
- <dxl:Column ColId="3" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="4" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="5" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="6" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="7" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
- <dxl:Column ColId="8" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:TableScan>
- </dxl:Sort>
- </dxl:Aggregate>
- </dxl:Sort>
+ <dxl:TableDescriptor Mdid="6.24576.1.0" TableName="try_distinct_array">
+ <dxl:Columns>
+ <dxl:Column ColId="0" Attno="1" ColName="test_char" TypeMdid="0.1043.1.0" ColWidth="2"/>
+ <dxl:Column ColId="1" Attno="2" ColName="test_array" TypeMdid="0.1007.1.0" ColWidth="29"/>
+ <dxl:Column ColId="2" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
+ <dxl:Column ColId="3" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="4" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="5" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="6" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="7" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
+ <dxl:Column ColId="8" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:TableScan>
+ </dxl:Aggregate>
</dxl:GatherMotion>
</dxl:Aggregate>
</dxl:Plan>
diff --git a/src/backend/gporca/data/dxl/minidump/DonotPushPartConstThruLimit.mdp b/src/backend/gporca/data/dxl/minidump/DonotPushPartConstThruLimit.mdp
index 20b607e7f2..c06cd70933 100644
--- a/src/backend/gporca/data/dxl/minidump/DonotPushPartConstThruLimit.mdp
+++ b/src/backend/gporca/data/dxl/minidump/DonotPushPartConstThruLimit.mdp
@@ -333,7 +333,7 @@ select * from (select * from h order by j limit 2) x where j = 2;
<dxl:Plan Id="0" SpaceSize="4">
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000183" Rows="1.333334" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000273" Rows="1.333334" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="j">
@@ -352,7 +352,7 @@ select * from (select * from h order by j limit 2) x where j = 2;
<dxl:OneTimeFilter/>
<dxl:Limit>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000117" Rows="2.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000207" Rows="2.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="j">
@@ -364,7 +364,7 @@ select * from (select * from h order by j limit 2) x where j = 2;
</dxl:ProjList>
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000101" Rows="2.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000191" Rows="2.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="j">
@@ -380,7 +380,7 @@ select * from (select * from h order by j limit 2) x where j = 2;
</dxl:SortingColumnList>
<dxl:Limit>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000041" Rows="2.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000132" Rows="2.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="j">
@@ -392,7 +392,7 @@ select * from (select * from h order by j limit 2) x where j = 2;
</dxl:ProjList>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000036" Rows="3.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000126" Rows="3.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="j">
@@ -408,7 +408,7 @@ select * from (select * from h order by j limit 2) x where j = 2;
</dxl:SortingColumnList>
<dxl:LimitCount/>
<dxl:LimitOffset/>
- <dxl:DynamicTableScan PartIndexId="1" SelectorIds="">
+ <dxl:DynamicTableScan SelectorIds="">
<dxl:Properties>
<dxl:Cost StartupCost="0" TotalCost="431.000021" Rows="3.000000" Width="8"/>
</dxl:Properties>
diff --git a/src/backend/gporca/data/dxl/minidump/DontAddRedistributeBeforeInsert-1.mdp b/src/backend/gporca/data/dxl/minidump/DontAddRedistributeBeforeInsert-1.mdp
index ca6ec86ddc..8ef7feb2d9 100644
--- a/src/backend/gporca/data/dxl/minidump/DontAddRedistributeBeforeInsert-1.mdp
+++ b/src/backend/gporca/data/dxl/minidump/DontAddRedistributeBeforeInsert-1.mdp
@@ -418,7 +418,7 @@ Physical plan:
<dxl:Plan Id="0" SpaceSize="22212">
<dxl:DMLInsert Columns="0,1" ActionCol="22" CtidCol="0" SegmentIdCol="0">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1765376.357208" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="1765376.357389" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:DirectDispatchInfo/>
<dxl:ProjList>
@@ -444,7 +444,7 @@ Physical plan:
</dxl:TableDescriptor>
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1765376.333770" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="1765376.333952" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -461,7 +461,7 @@ Physical plan:
<dxl:OneTimeFilter/>
<dxl:RandomMotion InputSegments="0,1" OutputSegments="0,1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1765376.333764" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="1765376.333946" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -475,7 +475,7 @@ Physical plan:
<dxl:SortingColumnList/>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1765376.333752" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="1765376.333933" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="0"/>
@@ -492,7 +492,7 @@ Physical plan:
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1765376.333742" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="1765376.333923" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -511,7 +511,7 @@ Physical plan:
<dxl:LimitOffset/>
<dxl:RedistributeMotion InputSegments="0,1" OutputSegments="0,1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1765376.333742" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="1765376.333832" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -533,7 +533,7 @@ Physical plan:
</dxl:HashExprList>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1765376.333726" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="1765376.333817" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="0"/>
@@ -550,7 +550,7 @@ Physical plan:
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1765376.333717" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="1765376.333808" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
diff --git a/src/backend/gporca/data/dxl/minidump/EagerAggEmptyInput.mdp b/src/backend/gporca/data/dxl/minidump/EagerAggEmptyInput.mdp
index fcb41b9b96..5744db2b07 100644
--- a/src/backend/gporca/data/dxl/minidump/EagerAggEmptyInput.mdp
+++ b/src/backend/gporca/data/dxl/minidump/EagerAggEmptyInput.mdp
@@ -311,10 +311,10 @@
</dxl:LogicalGroupBy>
</dxl:LogicalLimit>
</dxl:Query>
- <dxl:Plan Id="0" SpaceSize="380">
+ <dxl:Plan Id="0" SpaceSize="460">
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000682" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000895" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="g1">
@@ -334,7 +334,7 @@
</dxl:SortingColumnList>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000637" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000850" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="1"/>
@@ -361,7 +361,7 @@
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000623" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000836" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="g1">
@@ -383,7 +383,7 @@
<dxl:LimitOffset/>
<dxl:RedistributeMotion InputSegments="0,1,2" OutputSegments="0,1,2">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000623" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000700" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="g1">
@@ -408,7 +408,7 @@
</dxl:HashExprList>
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000604" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000681" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="g1">
@@ -423,9 +423,9 @@
</dxl:ProjList>
<dxl:Filter/>
<dxl:OneTimeFilter/>
- <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
+ <dxl:Aggregate AggregationStrategy="Hashed" StreamSafe="true">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000604" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000681" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="1"/>
@@ -450,7 +450,7 @@
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:Sort SortDiscardDuplicates="false">
+ <dxl:HashJoin JoinType="Inner">
<dxl:Properties>
<dxl:Cost StartupCost="0" TotalCost="862.000593" Rows="1.000000" Width="12"/>
</dxl:Properties>
@@ -466,103 +466,80 @@
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="1" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- <dxl:SortingColumn ColId="11" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:HashJoin JoinType="Inner">
+ <dxl:JoinFilter/>
+ <dxl:HashCondList>
+ <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
+ <dxl:Ident ColId="0" ColName="j1" TypeMdid="0.23.1.0"/>
+ <dxl:Ident ColId="10" ColName="j2" TypeMdid="0.23.1.0"/>
+ </dxl:Comparison>
+ </dxl:HashCondList>
+ <dxl:TableScan>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000593" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000078" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
+ <dxl:ProjElem ColId="0" Alias="j1">
+ <dxl:Ident ColId="0" ColName="j1" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
<dxl:ProjElem ColId="1" Alias="g1">
<dxl:Ident ColId="1" ColName="g1" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
<dxl:ProjElem ColId="2" Alias="s1">
<dxl:Ident ColId="2" ColName="s1" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
+ </dxl:ProjList>
+ <dxl:Filter>
+ <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
+ <dxl:OpExpr OperatorName="%" OperatorMdid="0.530.1.0" OperatorType="0.23.1.0">
+ <dxl:Ident ColId="2" ColName="s1" TypeMdid="0.23.1.0"/>
+ <dxl:ConstValue TypeMdid="0.23.1.0" Value="2"/>
+ </dxl:OpExpr>
+ <dxl:ConstValue TypeMdid="0.23.1.0" Value="0"/>
+ </dxl:Comparison>
+ </dxl:Filter>
+ <dxl:TableDescriptor Mdid="6.16394.1.0" TableName="foo1">
+ <dxl:Columns>
+ <dxl:Column ColId="0" Attno="1" ColName="j1" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="1" Attno="2" ColName="g1" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="2" Attno="3" ColName="s1" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="3" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
+ <dxl:Column ColId="4" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="5" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="6" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="7" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="8" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
+ <dxl:Column ColId="9" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:TableScan>
+ <dxl:TableScan>
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="431.000023" Rows="1.000000" Width="8"/>
+ </dxl:Properties>
+ <dxl:ProjList>
+ <dxl:ProjElem ColId="10" Alias="j2">
+ <dxl:Ident ColId="10" ColName="j2" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
<dxl:ProjElem ColId="11" Alias="g2">
<dxl:Ident ColId="11" ColName="g2" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:JoinFilter/>
- <dxl:HashCondList>
- <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
- <dxl:Ident ColId="0" ColName="j1" TypeMdid="0.23.1.0"/>
- <dxl:Ident ColId="10" ColName="j2" TypeMdid="0.23.1.0"/>
- </dxl:Comparison>
- </dxl:HashCondList>
- <dxl:TableScan>
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000078" Rows="1.000000" Width="12"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="0" Alias="j1">
- <dxl:Ident ColId="0" ColName="j1" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="1" Alias="g1">
- <dxl:Ident ColId="1" ColName="g1" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="2" Alias="s1">
- <dxl:Ident ColId="2" ColName="s1" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter>
- <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
- <dxl:OpExpr OperatorName="%" OperatorMdid="0.530.1.0" OperatorType="0.23.1.0">
- <dxl:Ident ColId="2" ColName="s1" TypeMdid="0.23.1.0"/>
- <dxl:ConstValue TypeMdid="0.23.1.0" Value="2"/>
- </dxl:OpExpr>
- <dxl:ConstValue TypeMdid="0.23.1.0" Value="0"/>
- </dxl:Comparison>
- </dxl:Filter>
- <dxl:TableDescriptor Mdid="6.16394.1.0" TableName="foo1">
- <dxl:Columns>
- <dxl:Column ColId="0" Attno="1" ColName="j1" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="1" Attno="2" ColName="g1" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="2" Attno="3" ColName="s1" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="3" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
- <dxl:Column ColId="4" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="5" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="6" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="7" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="8" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
- <dxl:Column ColId="9" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:TableScan>
- <dxl:TableScan>
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000023" Rows="1.000000" Width="8"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="10" Alias="j2">
- <dxl:Ident ColId="10" ColName="j2" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="11" Alias="g2">
- <dxl:Ident ColId="11" ColName="g2" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:TableDescriptor Mdid="6.16391.1.0" TableName="bar1">
- <dxl:Columns>
- <dxl:Column ColId="10" Attno="1" ColName="j2" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="11" Attno="2" ColName="g2" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="13" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
- <dxl:Column ColId="14" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="15" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="16" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="17" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="18" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
- <dxl:Column ColId="19" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:TableScan>
- </dxl:HashJoin>
- </dxl:Sort>
+ <dxl:TableDescriptor Mdid="6.16391.1.0" TableName="bar1">
+ <dxl:Columns>
+ <dxl:Column ColId="10" Attno="1" ColName="j2" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="11" Attno="2" ColName="g2" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="13" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
+ <dxl:Column ColId="14" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="15" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="16" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="17" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="18" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
+ <dxl:Column ColId="19" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:TableScan>
+ </dxl:HashJoin>
</dxl:Aggregate>
</dxl:Result>
</dxl:RedistributeMotion>
diff --git a/src/backend/gporca/data/dxl/minidump/EagerAggGroupColumnInJoin.mdp b/src/backend/gporca/data/dxl/minidump/EagerAggGroupColumnInJoin.mdp
index 62ea290e22..f77cb4cfd0 100644
--- a/src/backend/gporca/data/dxl/minidump/EagerAggGroupColumnInJoin.mdp
+++ b/src/backend/gporca/data/dxl/minidump/EagerAggGroupColumnInJoin.mdp
@@ -310,7 +310,7 @@
<dxl:Plan Id="0" SpaceSize="120">
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000607" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000721" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="g1">
@@ -325,9 +325,9 @@
</dxl:ProjList>
<dxl:Filter/>
<dxl:SortingColumnList/>
- <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
+ <dxl:Aggregate AggregationStrategy="Hashed" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000562" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000676" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="1"/>
@@ -352,9 +352,9 @@
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:Sort SortDiscardDuplicates="false">
+ <dxl:HashJoin JoinType="Inner">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000556" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000593" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="g1">
@@ -368,38 +368,35 @@
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="1" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- <dxl:SortingColumn ColId="11" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:HashJoin JoinType="Inner">
+ <dxl:JoinFilter/>
+ <dxl:HashCondList>
+ <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
+ <dxl:Ident ColId="1" ColName="g1" TypeMdid="0.23.1.0"/>
+ <dxl:Ident ColId="10" ColName="j2" TypeMdid="0.23.1.0"/>
+ </dxl:Comparison>
+ </dxl:HashCondList>
+ <dxl:RedistributeMotion InputSegments="0,1,2" OutputSegments="0,1,2">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000556" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000081" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="g1">
<dxl:Ident ColId="1" ColName="g1" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
- <dxl:ProjElem ColId="11" Alias="g2">
- <dxl:Ident ColId="11" ColName="g2" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
<dxl:ProjElem ColId="21" Alias="ColRef_0021">
<dxl:Ident ColId="21" ColName="ColRef_0021" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:JoinFilter/>
- <dxl:HashCondList>
- <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
+ <dxl:SortingColumnList/>
+ <dxl:HashExprList>
+ <dxl:HashExpr>
<dxl:Ident ColId="1" ColName="g1" TypeMdid="0.23.1.0"/>
- <dxl:Ident ColId="10" ColName="j2" TypeMdid="0.23.1.0"/>
- </dxl:Comparison>
- </dxl:HashCondList>
- <dxl:RedistributeMotion InputSegments="0,1,2" OutputSegments="0,1,2">
+ </dxl:HashExpr>
+ </dxl:HashExprList>
+ <dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000043" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000068" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="g1">
@@ -410,136 +407,97 @@
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList/>
- <dxl:HashExprList>
- <dxl:HashExpr>
- <dxl:Ident ColId="1" ColName="g1" TypeMdid="0.23.1.0"/>
- </dxl:HashExpr>
- </dxl:HashExprList>
- <dxl:Result>
+ <dxl:OneTimeFilter/>
+ <dxl:Aggregate AggregationStrategy="Hashed" StreamSafe="true">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000031" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000068" Rows="1.000000" Width="8"/>
</dxl:Properties>
+ <dxl:GroupingColumns>
+ <dxl:GroupingColumn ColId="1"/>
+ </dxl:GroupingColumns>
<dxl:ProjList>
+ <dxl:ProjElem ColId="21" Alias="ColRef_0021">
+ <dxl:AggFunc AggMdid="0.2116.1.0" AggDistinct="false" AggStage="Partial" AggKind="n" AggArgTypes="">
+ <dxl:ValuesList ParamType="aggargs">
+ <dxl:Ident ColId="2" ColName="s1" TypeMdid="0.23.1.0"/>
+ </dxl:ValuesList>
+ <dxl:ValuesList ParamType="aggdirectargs"/>
+ <dxl:ValuesList ParamType="aggorder"/>
+ <dxl:ValuesList ParamType="aggdistinct"/>
+ </dxl:AggFunc>
+ </dxl:ProjElem>
<dxl:ProjElem ColId="1" Alias="g1">
<dxl:Ident ColId="1" ColName="g1" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
- <dxl:ProjElem ColId="21" Alias="ColRef_0021">
- <dxl:Ident ColId="21" ColName="ColRef_0021" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:OneTimeFilter/>
- <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
+ <dxl:TableScan>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000031" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000024" Rows="1.000000" Width="8"/>
</dxl:Properties>
- <dxl:GroupingColumns>
- <dxl:GroupingColumn ColId="1"/>
- </dxl:GroupingColumns>
<dxl:ProjList>
- <dxl:ProjElem ColId="21" Alias="ColRef_0021">
- <dxl:AggFunc AggMdid="0.2116.1.0" AggDistinct="false" AggStage="Partial" AggKind="n" AggArgTypes="">
- <dxl:ValuesList ParamType="aggargs">
- <dxl:Ident ColId="2" ColName="s1" TypeMdid="0.23.1.0"/>
- </dxl:ValuesList>
- <dxl:ValuesList ParamType="aggdirectargs"/>
- <dxl:ValuesList ParamType="aggorder"/>
- <dxl:ValuesList ParamType="aggdistinct"/>
- </dxl:AggFunc>
- </dxl:ProjElem>
<dxl:ProjElem ColId="1" Alias="g1">
<dxl:Ident ColId="1" ColName="g1" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
+ <dxl:ProjElem ColId="2" Alias="s1">
+ <dxl:Ident ColId="2" ColName="s1" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
</dxl:ProjList>
- <dxl:Filter/>
- <dxl:Sort SortDiscardDuplicates="false">
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000024" Rows="1.000000" Width="8"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="1" Alias="g1">
- <dxl:Ident ColId="1" ColName="g1" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="2" Alias="s1">
+ <dxl:Filter>
+ <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
+ <dxl:OpExpr OperatorName="%" OperatorMdid="0.530.1.0" OperatorType="0.23.1.0">
<dxl:Ident ColId="2" ColName="s1" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="1" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:TableScan>
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000024" Rows="1.000000" Width="8"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="1" Alias="g1">
- <dxl:Ident ColId="1" ColName="g1" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="2" Alias="s1">
- <dxl:Ident ColId="2" ColName="s1" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter>
- <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
- <dxl:OpExpr OperatorName="%" OperatorMdid="0.530.1.0" OperatorType="0.23.1.0">
- <dxl:Ident ColId="2" ColName="s1" TypeMdid="0.23.1.0"/>
- <dxl:ConstValue TypeMdid="0.23.1.0" Value="2"/>
- </dxl:OpExpr>
- <dxl:ConstValue TypeMdid="0.23.1.0" Value="0"/>
- </dxl:Comparison>
- </dxl:Filter>
- <dxl:TableDescriptor Mdid="6.16385.1.0" TableName="foo">
- <dxl:Columns>
- <dxl:Column ColId="0" Attno="1" ColName="j1" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="1" Attno="2" ColName="g1" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="2" Attno="3" ColName="s1" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="3" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
- <dxl:Column ColId="4" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="5" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="6" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="7" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="8" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
- <dxl:Column ColId="9" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:TableScan>
- </dxl:Sort>
- </dxl:Aggregate>
- </dxl:Result>
- </dxl:RedistributeMotion>
- <dxl:TableScan>
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000023" Rows="1.000000" Width="8"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="10" Alias="j2">
- <dxl:Ident ColId="10" ColName="j2" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="11" Alias="g2">
- <dxl:Ident ColId="11" ColName="g2" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:TableDescriptor Mdid="6.16388.1.0" TableName="bar">
- <dxl:Columns>
- <dxl:Column ColId="10" Attno="1" ColName="j2" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="11" Attno="2" ColName="g2" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="13" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
- <dxl:Column ColId="14" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="15" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="16" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="17" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="18" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
- <dxl:Column ColId="19" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:TableScan>
- </dxl:HashJoin>
- </dxl:Sort>
+ <dxl:ConstValue TypeMdid="0.23.1.0" Value="2"/>
+ </dxl:OpExpr>
+ <dxl:ConstValue TypeMdid="0.23.1.0" Value="0"/>
+ </dxl:Comparison>
+ </dxl:Filter>
+ <dxl:TableDescriptor Mdid="6.16385.1.0" TableName="foo">
+ <dxl:Columns>
+ <dxl:Column ColId="0" Attno="1" ColName="j1" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="1" Attno="2" ColName="g1" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="2" Attno="3" ColName="s1" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="3" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
+ <dxl:Column ColId="4" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="5" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="6" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="7" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="8" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
+ <dxl:Column ColId="9" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:TableScan>
+ </dxl:Aggregate>
+ </dxl:Result>
+ </dxl:RedistributeMotion>
+ <dxl:TableScan>
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="431.000023" Rows="1.000000" Width="8"/>
+ </dxl:Properties>
+ <dxl:ProjList>
+ <dxl:ProjElem ColId="10" Alias="j2">
+ <dxl:Ident ColId="10" ColName="j2" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ <dxl:ProjElem ColId="11" Alias="g2">
+ <dxl:Ident ColId="11" ColName="g2" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ </dxl:ProjList>
+ <dxl:Filter/>
+ <dxl:TableDescriptor Mdid="6.16388.1.0" TableName="bar">
+ <dxl:Columns>
+ <dxl:Column ColId="10" Attno="1" ColName="j2" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="11" Attno="2" ColName="g2" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="13" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
+ <dxl:Column ColId="14" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="15" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="16" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="17" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="18" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
+ <dxl:Column ColId="19" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:TableScan>
+ </dxl:HashJoin>
</dxl:Aggregate>
</dxl:GatherMotion>
</dxl:Plan>
diff --git a/src/backend/gporca/data/dxl/minidump/EagerAggMax.mdp b/src/backend/gporca/data/dxl/minidump/EagerAggMax.mdp
index 2f4560d71b..4c50392dcb 100644
--- a/src/backend/gporca/data/dxl/minidump/EagerAggMax.mdp
+++ b/src/backend/gporca/data/dxl/minidump/EagerAggMax.mdp
@@ -310,10 +310,10 @@
</dxl:LogicalGroupBy>
</dxl:LogicalLimit>
</dxl:Query>
- <dxl:Plan Id="0" SpaceSize="380">
+ <dxl:Plan Id="0" SpaceSize="460">
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000682" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000895" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="g1">
@@ -333,7 +333,7 @@
</dxl:SortingColumnList>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000637" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000850" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="1"/>
@@ -360,7 +360,7 @@
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000623" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000836" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="g1">
@@ -382,7 +382,7 @@
<dxl:LimitOffset/>
<dxl:RedistributeMotion InputSegments="0,1,2" OutputSegments="0,1,2">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000623" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000700" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="g1">
@@ -407,7 +407,7 @@
</dxl:HashExprList>
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000604" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000681" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="g1">
@@ -422,9 +422,9 @@
</dxl:ProjList>
<dxl:Filter/>
<dxl:OneTimeFilter/>
- <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
+ <dxl:Aggregate AggregationStrategy="Hashed" StreamSafe="true">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000604" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000681" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="1"/>
@@ -449,7 +449,7 @@
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:Sort SortDiscardDuplicates="false">
+ <dxl:HashJoin JoinType="Inner">
<dxl:Properties>
<dxl:Cost StartupCost="0" TotalCost="862.000593" Rows="1.000000" Width="12"/>
</dxl:Properties>
@@ -465,103 +465,80 @@
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="1" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- <dxl:SortingColumn ColId="11" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:HashJoin JoinType="Inner">
+ <dxl:JoinFilter/>
+ <dxl:HashCondList>
+ <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
+ <dxl:Ident ColId="0" ColName="j1" TypeMdid="0.23.1.0"/>
+ <dxl:Ident ColId="10" ColName="j2" TypeMdid="0.23.1.0"/>
+ </dxl:Comparison>
+ </dxl:HashCondList>
+ <dxl:TableScan>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000593" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000078" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
+ <dxl:ProjElem ColId="0" Alias="j1">
+ <dxl:Ident ColId="0" ColName="j1" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
<dxl:ProjElem ColId="1" Alias="g1">
<dxl:Ident ColId="1" ColName="g1" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
<dxl:ProjElem ColId="2" Alias="s1">
<dxl:Ident ColId="2" ColName="s1" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
+ </dxl:ProjList>
+ <dxl:Filter>
+ <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
+ <dxl:OpExpr OperatorName="%" OperatorMdid="0.530.1.0" OperatorType="0.23.1.0">
+ <dxl:Ident ColId="2" ColName="s1" TypeMdid="0.23.1.0"/>
+ <dxl:ConstValue TypeMdid="0.23.1.0" Value="2"/>
+ </dxl:OpExpr>
+ <dxl:ConstValue TypeMdid="0.23.1.0" Value="0"/>
+ </dxl:Comparison>
+ </dxl:Filter>
+ <dxl:TableDescriptor Mdid="6.16394.1.0" TableName="foo1">
+ <dxl:Columns>
+ <dxl:Column ColId="0" Attno="1" ColName="j1" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="1" Attno="2" ColName="g1" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="2" Attno="3" ColName="s1" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="3" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
+ <dxl:Column ColId="4" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="5" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="6" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="7" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="8" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
+ <dxl:Column ColId="9" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:TableScan>
+ <dxl:TableScan>
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="431.000023" Rows="1.000000" Width="8"/>
+ </dxl:Properties>
+ <dxl:ProjList>
+ <dxl:ProjElem ColId="10" Alias="j2">
+ <dxl:Ident ColId="10" ColName="j2" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
<dxl:ProjElem ColId="11" Alias="g2">
<dxl:Ident ColId="11" ColName="g2" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:JoinFilter/>
- <dxl:HashCondList>
- <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
- <dxl:Ident ColId="0" ColName="j1" TypeMdid="0.23.1.0"/>
- <dxl:Ident ColId="10" ColName="j2" TypeMdid="0.23.1.0"/>
- </dxl:Comparison>
- </dxl:HashCondList>
- <dxl:TableScan>
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000078" Rows="1.000000" Width="12"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="0" Alias="j1">
- <dxl:Ident ColId="0" ColName="j1" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="1" Alias="g1">
- <dxl:Ident ColId="1" ColName="g1" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="2" Alias="s1">
- <dxl:Ident ColId="2" ColName="s1" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter>
- <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
- <dxl:OpExpr OperatorName="%" OperatorMdid="0.530.1.0" OperatorType="0.23.1.0">
- <dxl:Ident ColId="2" ColName="s1" TypeMdid="0.23.1.0"/>
- <dxl:ConstValue TypeMdid="0.23.1.0" Value="2"/>
- </dxl:OpExpr>
- <dxl:ConstValue TypeMdid="0.23.1.0" Value="0"/>
- </dxl:Comparison>
- </dxl:Filter>
- <dxl:TableDescriptor Mdid="6.16394.1.0" TableName="foo1">
- <dxl:Columns>
- <dxl:Column ColId="0" Attno="1" ColName="j1" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="1" Attno="2" ColName="g1" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="2" Attno="3" ColName="s1" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="3" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
- <dxl:Column ColId="4" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="5" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="6" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="7" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="8" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
- <dxl:Column ColId="9" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:TableScan>
- <dxl:TableScan>
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000023" Rows="1.000000" Width="8"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="10" Alias="j2">
- <dxl:Ident ColId="10" ColName="j2" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="11" Alias="g2">
- <dxl:Ident ColId="11" ColName="g2" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:TableDescriptor Mdid="6.16391.1.0" TableName="bar1">
- <dxl:Columns>
- <dxl:Column ColId="10" Attno="1" ColName="j2" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="11" Attno="2" ColName="g2" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="13" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
- <dxl:Column ColId="14" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="15" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="16" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="17" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="18" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
- <dxl:Column ColId="19" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:TableScan>
- </dxl:HashJoin>
- </dxl:Sort>
+ <dxl:TableDescriptor Mdid="6.16391.1.0" TableName="bar1">
+ <dxl:Columns>
+ <dxl:Column ColId="10" Attno="1" ColName="j2" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="11" Attno="2" ColName="g2" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="13" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
+ <dxl:Column ColId="14" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="15" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="16" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="17" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="18" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
+ <dxl:Column ColId="19" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:TableScan>
+ </dxl:HashJoin>
</dxl:Aggregate>
</dxl:Result>
</dxl:RedistributeMotion>
diff --git a/src/backend/gporca/data/dxl/minidump/EagerAggSubquery.mdp b/src/backend/gporca/data/dxl/minidump/EagerAggSubquery.mdp
index bf3b6ab340..5d4dbc2c89 100644
--- a/src/backend/gporca/data/dxl/minidump/EagerAggSubquery.mdp
+++ b/src/backend/gporca/data/dxl/minidump/EagerAggSubquery.mdp
@@ -356,10 +356,10 @@
</dxl:LogicalSelect>
</dxl:LogicalGroupBy>
</dxl:Query>
- <dxl:Plan Id="0" SpaceSize="18944">
+ <dxl:Plan Id="0" SpaceSize="30320">
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1324463.236886" Rows="1.000000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="1324463.237175" Rows="1.000000" Width="16"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="g1">
@@ -376,7 +376,7 @@
<dxl:SortingColumnList/>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1324463.236826" Rows="1.000000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="1324463.237115" Rows="1.000000" Width="16"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="1"/>
@@ -403,7 +403,7 @@
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1324463.236807" Rows="1.000000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="1324463.237096" Rows="1.000000" Width="16"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="g1">
@@ -425,7 +425,7 @@
<dxl:LimitOffset/>
<dxl:RedistributeMotion InputSegments="0,1,2" OutputSegments="0,1,2">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1324463.236807" Rows="1.000000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="1324463.236915" Rows="1.000000" Width="16"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="g1">
@@ -450,7 +450,7 @@
</dxl:HashExprList>
<dxl:HashJoin JoinType="Inner">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1324463.236782" Rows="1.000000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="1324463.236889" Rows="1.000000" Width="16"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="g1">
@@ -471,36 +471,31 @@
<dxl:Ident ColId="10" ColName="j2" TypeMdid="0.23.1.0"/>
</dxl:Comparison>
</dxl:HashCondList>
- <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
+ <dxl:RedistributeMotion InputSegments="0,1,2" OutputSegments="0,1,2">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1324032.236260" Rows="1.000000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="1324032.236368" Rows="1.000000" Width="16"/>
</dxl:Properties>
- <dxl:GroupingColumns>
- <dxl:GroupingColumn ColId="0"/>
- <dxl:GroupingColumn ColId="1"/>
- </dxl:GroupingColumns>
<dxl:ProjList>
- <dxl:ProjElem ColId="33" Alias="ColRef_0033">
- <dxl:AggFunc AggMdid="0.2108.1.0" AggDistinct="false" AggStage="Partial" AggKind="n" AggArgTypes="">
- <dxl:ValuesList ParamType="aggargs">
- <dxl:Ident ColId="2" ColName="s1" TypeMdid="0.23.1.0"/>
- </dxl:ValuesList>
- <dxl:ValuesList ParamType="aggdirectargs"/>
- <dxl:ValuesList ParamType="aggorder"/>
- <dxl:ValuesList ParamType="aggdistinct"/>
- </dxl:AggFunc>
- </dxl:ProjElem>
<dxl:ProjElem ColId="0" Alias="j1">
<dxl:Ident ColId="0" ColName="j1" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
<dxl:ProjElem ColId="1" Alias="g1">
<dxl:Ident ColId="1" ColName="g1" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
+ <dxl:ProjElem ColId="33" Alias="ColRef_0033">
+ <dxl:Ident ColId="33" ColName="ColRef_0033" TypeMdid="0.20.1.0"/>
+ </dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:Sort SortDiscardDuplicates="false">
+ <dxl:SortingColumnList/>
+ <dxl:HashExprList>
+ <dxl:HashExpr>
+ <dxl:Ident ColId="0" ColName="j1" TypeMdid="0.23.1.0"/>
+ </dxl:HashExpr>
+ </dxl:HashExprList>
+ <dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1324032.236221" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="1324032.236342" Rows="1.000000" Width="16"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="j1">
@@ -509,39 +504,42 @@
<dxl:ProjElem ColId="1" Alias="g1">
<dxl:Ident ColId="1" ColName="g1" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
- <dxl:ProjElem ColId="2" Alias="s1">
- <dxl:Ident ColId="2" ColName="s1" TypeMdid="0.23.1.0"/>
+ <dxl:ProjElem ColId="33" Alias="ColRef_0033">
+ <dxl:Ident ColId="33" ColName="ColRef_0033" TypeMdid="0.20.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="0" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- <dxl:SortingColumn ColId="1" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:NestedLoopJoin JoinType="In" IndexNestedLoopJoin="false" OuterRefAsParam="false">
+ <dxl:OneTimeFilter/>
+ <dxl:Aggregate AggregationStrategy="Hashed" StreamSafe="true">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1324032.236221" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="1324032.236342" Rows="1.000000" Width="16"/>
</dxl:Properties>
+ <dxl:GroupingColumns>
+ <dxl:GroupingColumn ColId="0"/>
+ <dxl:GroupingColumn ColId="1"/>
+ </dxl:GroupingColumns>
<dxl:ProjList>
+ <dxl:ProjElem ColId="33" Alias="ColRef_0033">
+ <dxl:AggFunc AggMdid="0.2108.1.0" AggDistinct="false" AggStage="Partial" AggKind="n" AggArgTypes="">
+ <dxl:ValuesList ParamType="aggargs">
+ <dxl:Ident ColId="2" ColName="s1" TypeMdid="0.23.1.0"/>
+ </dxl:ValuesList>
+ <dxl:ValuesList ParamType="aggdirectargs"/>
+ <dxl:ValuesList ParamType="aggorder"/>
+ <dxl:ValuesList ParamType="aggdistinct"/>
+ </dxl:AggFunc>
+ </dxl:ProjElem>
<dxl:ProjElem ColId="0" Alias="j1">
<dxl:Ident ColId="0" ColName="j1" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
<dxl:ProjElem ColId="1" Alias="g1">
<dxl:Ident ColId="1" ColName="g1" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
- <dxl:ProjElem ColId="2" Alias="s1">
- <dxl:Ident ColId="2" ColName="s1" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:JoinFilter>
- <dxl:ConstValue TypeMdid="0.16.1.0" Value="true"/>
- </dxl:JoinFilter>
- <dxl:TableScan>
+ <dxl:RandomMotion InputSegments="0,1,2" OutputSegments="0,1,2">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000111" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="1324032.236252" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="j1">
@@ -554,84 +552,122 @@
<dxl:Ident ColId="2" ColName="s1" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
- <dxl:Filter>
- <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
- <dxl:Ident ColId="1" ColName="g1" TypeMdid="0.23.1.0"/>
- <dxl:Ident ColId="0" ColName="j1" TypeMdid="0.23.1.0"/>
- </dxl:Comparison>
- </dxl:Filter>
- <dxl:TableDescriptor Mdid="6.16385.1.0" TableName="foo">
- <dxl:Columns>
- <dxl:Column ColId="0" Attno="1" ColName="j1" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="1" Attno="2" ColName="g1" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="2" Attno="3" ColName="s1" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="3" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
- <dxl:Column ColId="4" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="5" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="6" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="7" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="8" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
- <dxl:Column ColId="9" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:TableScan>
- <dxl:Materialize Eager="false">
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000068" Rows="3.000000" Width="1"/>
- </dxl:Properties>
- <dxl:ProjList/>
<dxl:Filter/>
- <dxl:BroadcastMotion InputSegments="-1" OutputSegments="0,1,2">
+ <dxl:SortingColumnList/>
+ <dxl:NestedLoopJoin JoinType="In" IndexNestedLoopJoin="false" OuterRefAsParam="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000067" Rows="3.000000" Width="1"/>
+ <dxl:Cost StartupCost="0" TotalCost="1324032.236221" Rows="1.000000" Width="12"/>
</dxl:Properties>
- <dxl:ProjList/>
+ <dxl:ProjList>
+ <dxl:ProjElem ColId="0" Alias="j1">
+ <dxl:Ident ColId="0" ColName="j1" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ <dxl:ProjElem ColId="1" Alias="g1">
+ <dxl:Ident ColId="1" ColName="g1" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ <dxl:ProjElem ColId="2" Alias="s1">
+ <dxl:Ident ColId="2" ColName="s1" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ </dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList/>
- <dxl:Limit>
+ <dxl:JoinFilter>
+ <dxl:ConstValue TypeMdid="0.16.1.0" Value="true"/>
+ </dxl:JoinFilter>
+ <dxl:TableScan>
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="431.000111" Rows="1.000000" Width="12"/>
+ </dxl:Properties>
+ <dxl:ProjList>
+ <dxl:ProjElem ColId="0" Alias="j1">
+ <dxl:Ident ColId="0" ColName="j1" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ <dxl:ProjElem ColId="1" Alias="g1">
+ <dxl:Ident ColId="1" ColName="g1" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ <dxl:ProjElem ColId="2" Alias="s1">
+ <dxl:Ident ColId="2" ColName="s1" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ </dxl:ProjList>
+ <dxl:Filter>
+ <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
+ <dxl:Ident ColId="1" ColName="g1" TypeMdid="0.23.1.0"/>
+ <dxl:Ident ColId="0" ColName="j1" TypeMdid="0.23.1.0"/>
+ </dxl:Comparison>
+ </dxl:Filter>
+ <dxl:TableDescriptor Mdid="6.16385.1.0" TableName="foo">
+ <dxl:Columns>
+ <dxl:Column ColId="0" Attno="1" ColName="j1" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="1" Attno="2" ColName="g1" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="2" Attno="3" ColName="s1" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="3" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
+ <dxl:Column ColId="4" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="5" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="6" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="7" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="8" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
+ <dxl:Column ColId="9" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:TableScan>
+ <dxl:Materialize Eager="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000013" Rows="1.000000" Width="1"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000068" Rows="3.000000" Width="1"/>
</dxl:Properties>
<dxl:ProjList/>
- <dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
+ <dxl:Filter/>
+ <dxl:BroadcastMotion InputSegments="-1" OutputSegments="0,1,2">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000012" Rows="1.000000" Width="1"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000067" Rows="3.000000" Width="1"/>
</dxl:Properties>
<dxl:ProjList/>
<dxl:Filter/>
<dxl:SortingColumnList/>
- <dxl:TableScan>
+ <dxl:Limit>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000008" Rows="1.000000" Width="1"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000013" Rows="1.000000" Width="1"/>
</dxl:Properties>
<dxl:ProjList/>
- <dxl:Filter/>
- <dxl:TableDescriptor Mdid="6.16388.1.0" TableName="bar">
- <dxl:Columns>
- <dxl:Column ColId="20" Attno="1" ColName="j2" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="23" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
- <dxl:Column ColId="24" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="25" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="26" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="27" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="28" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
- <dxl:Column ColId="29" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:TableScan>
- </dxl:GatherMotion>
- <dxl:LimitCount>
- <dxl:ConstValue TypeMdid="0.20.1.0" Value="1"/>
- </dxl:LimitCount>
- <dxl:LimitOffset>
- <dxl:ConstValue TypeMdid="0.20.1.0" Value="0"/>
- </dxl:LimitOffset>
- </dxl:Limit>
- </dxl:BroadcastMotion>
- </dxl:Materialize>
- </dxl:NestedLoopJoin>
- </dxl:Sort>
- </dxl:Aggregate>
+ <dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="431.000012" Rows="1.000000" Width="1"/>
+ </dxl:Properties>
+ <dxl:ProjList/>
+ <dxl:Filter/>
+ <dxl:SortingColumnList/>
+ <dxl:TableScan>
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="431.000008" Rows="1.000000" Width="1"/>
+ </dxl:Properties>
+ <dxl:ProjList/>
+ <dxl:Filter/>
+ <dxl:TableDescriptor Mdid="6.16388.1.0" TableName="bar">
+ <dxl:Columns>
+ <dxl:Column ColId="20" Attno="1" ColName="j2" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="23" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
+ <dxl:Column ColId="24" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="25" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="26" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="27" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="28" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
+ <dxl:Column ColId="29" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:TableScan>
+ </dxl:GatherMotion>
+ <dxl:LimitCount>
+ <dxl:ConstValue TypeMdid="0.20.1.0" Value="1"/>
+ </dxl:LimitCount>
+ <dxl:LimitOffset>
+ <dxl:ConstValue TypeMdid="0.20.1.0" Value="0"/>
+ </dxl:LimitOffset>
+ </dxl:Limit>
+ </dxl:BroadcastMotion>
+ </dxl:Materialize>
+ </dxl:NestedLoopJoin>
+ </dxl:RandomMotion>
+ </dxl:Aggregate>
+ </dxl:Result>
+ </dxl:RedistributeMotion>
<dxl:TableScan>
<dxl:Properties>
<dxl:Cost StartupCost="0" TotalCost="431.000023" Rows="1.000000" Width="8"/>
diff --git a/src/backend/gporca/data/dxl/minidump/EquivClassesIntersect.mdp b/src/backend/gporca/data/dxl/minidump/EquivClassesIntersect.mdp
index 0536778a46..aef6d799d0 100644
--- a/src/backend/gporca/data/dxl/minidump/EquivClassesIntersect.mdp
+++ b/src/backend/gporca/data/dxl/minidump/EquivClassesIntersect.mdp
@@ -273,10 +273,10 @@
</dxl:LogicalSelect>
</dxl:Intersect>
</dxl:Query>
- <dxl:Plan Id="0" SpaceSize="32">
+ <dxl:Plan Id="0" SpaceSize="800">
<dxl:GatherMotion InputSegments="0,1" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000787" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000969" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -287,7 +287,7 @@
<dxl:SortingColumnList/>
<dxl:HashJoin JoinType="Inner">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000751" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000933" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -306,7 +306,7 @@
</dxl:HashCondList>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000131" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000222" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="0"/>
@@ -319,7 +319,7 @@
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000119" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000209" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -365,7 +365,7 @@
</dxl:Aggregate>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000146" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000237" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="10"/>
@@ -378,7 +378,7 @@
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000134" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000224" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="10" Alias="x">
diff --git a/src/backend/gporca/data/dxl/minidump/EquivClassesUnion.mdp b/src/backend/gporca/data/dxl/minidump/EquivClassesUnion.mdp
index c86e9efdde..9752630384 100644
--- a/src/backend/gporca/data/dxl/minidump/EquivClassesUnion.mdp
+++ b/src/backend/gporca/data/dxl/minidump/EquivClassesUnion.mdp
@@ -245,10 +245,10 @@
</dxl:LogicalSelect>
</dxl:Union>
</dxl:Query>
- <dxl:Plan Id="0" SpaceSize="20">
+ <dxl:Plan Id="0" SpaceSize="404">
<dxl:GatherMotion InputSegments="0,1" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000345" Rows="2.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000435" Rows="2.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -259,7 +259,7 @@
<dxl:SortingColumnList/>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000273" Rows="2.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000363" Rows="2.000000" Width="8"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="0"/>
@@ -272,7 +272,7 @@
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000260" Rows="2.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000351" Rows="2.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
diff --git a/src/backend/gporca/data/dxl/minidump/Except-Volatile-Func.mdp b/src/backend/gporca/data/dxl/minidump/Except-Volatile-Func.mdp
index f4b6a85e2b..42fc4e5598 100644
--- a/src/backend/gporca/data/dxl/minidump/Except-Volatile-Func.mdp
+++ b/src/backend/gporca/data/dxl/minidump/Except-Volatile-Func.mdp
@@ -112,7 +112,7 @@
<dxl:Plan Id="0" SpaceSize="25">
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="0.000497" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="0.000543" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="1"/>
@@ -125,7 +125,7 @@
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="0.000491" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="0.000536" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="?column?">
@@ -187,7 +187,7 @@
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="3" Alias="generate_series">
- <dxl:FuncExpr FuncId="0.1067.1.0" FuncRetSet="true" TypeMdid="0.23.1.0">
+ <dxl:FuncExpr FuncId="0.1067.1.0" FuncRetSet="true" TypeMdid="0.23.1.0" FuncVariadic="false">
<dxl:ConstValue TypeMdid="0.23.1.0" Value="1"/>
<dxl:ConstValue TypeMdid="0.23.1.0" Value="10"/>
</dxl:FuncExpr>
diff --git a/src/backend/gporca/data/dxl/minidump/ExceptAllCompatibleDataType.mdp b/src/backend/gporca/data/dxl/minidump/ExceptAllCompatibleDataType.mdp
index c02b3fb345..07539d7126 100644
--- a/src/backend/gporca/data/dxl/minidump/ExceptAllCompatibleDataType.mdp
+++ b/src/backend/gporca/data/dxl/minidump/ExceptAllCompatibleDataType.mdp
@@ -380,7 +380,7 @@
<dxl:Plan Id="0" SpaceSize="140">
<dxl:GatherMotion InputSegments="0,1" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1293.003180" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="1293.003769" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="11" Alias="a">
@@ -394,7 +394,7 @@
<dxl:SortingColumnList/>
<dxl:HashJoin JoinType="LeftAntiSemiJoin">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1293.003126" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="1293.003715" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="11" Alias="a">
@@ -428,7 +428,7 @@
</dxl:HashCondList>
<dxl:RedistributeMotion InputSegments="0,1" OutputSegments="0,1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.001623" Rows="1.000000" Width="20"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.002031" Rows="1.000000" Width="20"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="11" Alias="a">
@@ -453,7 +453,7 @@
</dxl:HashExprList>
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.001560" Rows="1.000000" Width="20"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.001969" Rows="1.000000" Width="20"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="11" Alias="a">
@@ -470,7 +470,7 @@
<dxl:OneTimeFilter/>
<dxl:Window PartitionColumns="11,12">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.001560" Rows="1.000000" Width="20"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.001969" Rows="1.000000" Width="20"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="39" Alias="row_number">
@@ -486,7 +486,7 @@
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.001560" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.001969" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="11" Alias="a">
@@ -505,7 +505,7 @@
<dxl:LimitOffset/>
<dxl:HashJoin JoinType="LeftAntiSemiJoin">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.001560" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.001833" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="11" Alias="a">
@@ -539,7 +539,7 @@
</dxl:HashCondList>
<dxl:RedistributeMotion InputSegments="0,1" OutputSegments="0,1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000153" Rows="1.000000" Width="20"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000289" Rows="1.000000" Width="20"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="11" Alias="a">
@@ -561,7 +561,7 @@
</dxl:HashExprList>
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000090" Rows="1.000000" Width="20"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000226" Rows="1.000000" Width="20"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="11" Alias="a">
@@ -578,7 +578,7 @@
<dxl:OneTimeFilter/>
<dxl:Window PartitionColumns="11,12">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000090" Rows="1.000000" Width="20"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000226" Rows="1.000000" Width="20"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="37" Alias="row_number">
@@ -594,7 +594,7 @@
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000090" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000226" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="11" Alias="a">
@@ -691,7 +691,7 @@
</dxl:RedistributeMotion>
<dxl:Window PartitionColumns="13,24">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000078" Rows="1.000000" Width="20"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000214" Rows="1.000000" Width="20"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="38" Alias="row_number">
@@ -707,7 +707,7 @@
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000078" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000214" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="24" Alias="b">
@@ -787,7 +787,7 @@
</dxl:RedistributeMotion>
<dxl:Window PartitionColumns="36,26">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000103" Rows="1.000000" Width="24"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000285" Rows="1.000000" Width="24"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="40" Alias="row_number">
@@ -803,7 +803,7 @@
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000103" Rows="1.000000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000285" Rows="1.000000" Width="16"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="26" Alias="b">
diff --git a/src/backend/gporca/data/dxl/minidump/ExceptHashCompatibleRange.mdp b/src/backend/gporca/data/dxl/minidump/ExceptHashCompatibleRange.mdp
index 644bd0fe9b..e39fa7d933 100644
--- a/src/backend/gporca/data/dxl/minidump/ExceptHashCompatibleRange.mdp
+++ b/src/backend/gporca/data/dxl/minidump/ExceptHashCompatibleRange.mdp
@@ -158,7 +158,7 @@
<dxl:Plan Id="0" SpaceSize="120">
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="0.000519" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="0.000609" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="1"/>
@@ -171,7 +171,7 @@
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="0.000506" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="0.000597" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="intrange">
diff --git a/src/backend/gporca/data/dxl/minidump/ExceptHashIncompatibleRange.mdp b/src/backend/gporca/data/dxl/minidump/ExceptHashIncompatibleRange.mdp
index 11bf832193..4cec205387 100644
--- a/src/backend/gporca/data/dxl/minidump/ExceptHashIncompatibleRange.mdp
+++ b/src/backend/gporca/data/dxl/minidump/ExceptHashIncompatibleRange.mdp
@@ -157,7 +157,7 @@
<dxl:Plan Id="0" SpaceSize="12">
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="441344.325391" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="441344.325481" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="1"/>
@@ -170,7 +170,7 @@
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="441344.325378" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="441344.325469" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="cashrange">
diff --git a/src/backend/gporca/data/dxl/minidump/ExistentialSubquriesInsideScalarExpression.mdp b/src/backend/gporca/data/dxl/minidump/ExistentialSubquriesInsideScalarExpression.mdp
index 2ad1f5ecec..48299cd587 100644
--- a/src/backend/gporca/data/dxl/minidump/ExistentialSubquriesInsideScalarExpression.mdp
+++ b/src/backend/gporca/data/dxl/minidump/ExistentialSubquriesInsideScalarExpression.mdp
@@ -408,10 +408,10 @@
</dxl:LogicalGet>
</dxl:LogicalSelect>
</dxl:Query>
- <dxl:Plan Id="0" SpaceSize="85">
+ <dxl:Plan Id="0" SpaceSize="77">
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1356691750.476271" Rows="1.600000" Width="13"/>
+ <dxl:Cost StartupCost="0" TotalCost="1356691750.443794" Rows="1.600000" Width="13"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -428,7 +428,7 @@
<dxl:SortingColumnList/>
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1356691750.476194" Rows="1.600000" Width="13"/>
+ <dxl:Cost StartupCost="0" TotalCost="1356691750.443717" Rows="1.600000" Width="13"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -445,7 +445,7 @@
<dxl:OneTimeFilter/>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1356691750.476194" Rows="1.600000" Width="13"/>
+ <dxl:Cost StartupCost="0" TotalCost="1356691750.443717" Rows="1.600000" Width="13"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="0"/>
@@ -482,7 +482,7 @@
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1356691750.476165" Rows="1.600000" Width="25"/>
+ <dxl:Cost StartupCost="0" TotalCost="1356691750.443688" Rows="1.600000" Width="25"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -521,7 +521,7 @@
<dxl:LimitOffset/>
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1356691750.476165" Rows="1.600000" Width="25"/>
+ <dxl:Cost StartupCost="0" TotalCost="1356691750.443405" Rows="1.600000" Width="25"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -576,7 +576,7 @@
<dxl:OneTimeFilter/>
<dxl:NestedLoopJoin JoinType="Left" IndexNestedLoopJoin="false" OuterRefAsParam="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1356691750.475968" Rows="4.000000" Width="25"/>
+ <dxl:Cost StartupCost="0" TotalCost="1356691750.443207" Rows="4.000000" Width="25"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -607,7 +607,7 @@
</dxl:JoinFilter>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1324032.287352" Rows="2.000000" Width="24"/>
+ <dxl:Cost StartupCost="0" TotalCost="1324032.287320" Rows="2.000000" Width="24"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="0"/>
@@ -640,7 +640,7 @@
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1324032.287315" Rows="2.000000" Width="24"/>
+ <dxl:Cost StartupCost="0" TotalCost="1324032.287259" Rows="4.000000" Width="24"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -673,9 +673,9 @@
</dxl:SortingColumnList>
<dxl:LimitCount/>
<dxl:LimitOffset/>
- <dxl:RedistributeMotion InputSegments="0,1,2" OutputSegments="0,1,2">
+ <dxl:NestedLoopJoin JoinType="Left" IndexNestedLoopJoin="false" OuterRefAsParam="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1324032.287315" Rows="2.000000" Width="24"/>
+ <dxl:Cost StartupCost="0" TotalCost="1324032.286987" Rows="4.000000" Width="24"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -698,39 +698,13 @@
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList/>
- <dxl:HashExprList>
- <dxl:HashExpr>
- <dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
- </dxl:HashExpr>
- <dxl:HashExpr>
- <dxl:Ident ColId="1" ColName="b" TypeMdid="0.25.1.0"/>
- </dxl:HashExpr>
- <dxl:HashExpr>
- <dxl:Ident ColId="2" ColName="c" TypeMdid="0.23.1.0"/>
- </dxl:HashExpr>
- <dxl:HashExpr>
- <dxl:Ident ColId="3" ColName="ctid" TypeMdid="0.27.1.0"/>
- </dxl:HashExpr>
- <dxl:HashExpr>
- <dxl:Ident ColId="9" ColName="gp_segment_id" TypeMdid="0.23.1.0"/>
- </dxl:HashExpr>
- <dxl:HashExpr>
- <dxl:Ident ColId="30" ColName="ColRef_0030" TypeMdid="0.16.1.0"/>
- </dxl:HashExpr>
- </dxl:HashExprList>
- <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
+ <dxl:JoinFilter>
+ <dxl:ConstValue TypeMdid="0.16.1.0" Value="true"/>
+ </dxl:JoinFilter>
+ <dxl:TableScan>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1324032.287258" Rows="2.000000" Width="24"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000024" Rows="2.000000" Width="23"/>
</dxl:Properties>
- <dxl:GroupingColumns>
- <dxl:GroupingColumn ColId="0"/>
- <dxl:GroupingColumn ColId="1"/>
- <dxl:GroupingColumn ColId="2"/>
- <dxl:GroupingColumn ColId="3"/>
- <dxl:GroupingColumn ColId="9"/>
- <dxl:GroupingColumn ColId="30"/>
- </dxl:GroupingColumns>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
<dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
@@ -747,196 +721,78 @@
<dxl:ProjElem ColId="9" Alias="gp_segment_id">
<dxl:Ident ColId="9" ColName="gp_segment_id" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
+ </dxl:ProjList>
+ <dxl:Filter/>
+ <dxl:TableDescriptor Mdid="6.16385.1.0" TableName="t1">
+ <dxl:Columns>
+ <dxl:Column ColId="0" Attno="1" ColName="a" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="1" Attno="2" ColName="b" TypeMdid="0.25.1.0" ColWidth="5"/>
+ <dxl:Column ColId="2" Attno="3" ColName="c" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="3" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
+ <dxl:Column ColId="4" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="5" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="6" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="7" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="8" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
+ <dxl:Column ColId="9" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:TableScan>
+ <dxl:Materialize Eager="false">
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="431.000028" Rows="3.000000" Width="1"/>
+ </dxl:Properties>
+ <dxl:ProjList>
<dxl:ProjElem ColId="30" Alias="ColRef_0030">
<dxl:Ident ColId="30" ColName="ColRef_0030" TypeMdid="0.16.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:Sort SortDiscardDuplicates="false">
+ <dxl:BroadcastMotion InputSegments="0,1,2" OutputSegments="0,1,2">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1324032.287199" Rows="4.000000" Width="24"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000027" Rows="3.000000" Width="1"/>
</dxl:Properties>
<dxl:ProjList>
- <dxl:ProjElem ColId="0" Alias="a">
- <dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="1" Alias="b">
- <dxl:Ident ColId="1" ColName="b" TypeMdid="0.25.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="2" Alias="c">
- <dxl:Ident ColId="2" ColName="c" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="3" Alias="ctid">
- <dxl:Ident ColId="3" ColName="ctid" TypeMdid="0.27.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="9" Alias="gp_segment_id">
- <dxl:Ident ColId="9" ColName="gp_segment_id" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
<dxl:ProjElem ColId="30" Alias="ColRef_0030">
<dxl:Ident ColId="30" ColName="ColRef_0030" TypeMdid="0.16.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="0" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- <dxl:SortingColumn ColId="1" SortOperatorMdid="0.664.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- <dxl:SortingColumn ColId="2" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- <dxl:SortingColumn ColId="3" SortOperatorMdid="0.2799.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- <dxl:SortingColumn ColId="9" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- <dxl:SortingColumn ColId="30" SortOperatorMdid="0.58.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:RandomMotion InputSegments="0,1,2" OutputSegments="0,1,2">
+ <dxl:SortingColumnList/>
+ <dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1324032.287124" Rows="4.000000" Width="24"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000009" Rows="1.000000" Width="1"/>
</dxl:Properties>
<dxl:ProjList>
- <dxl:ProjElem ColId="0" Alias="a">
- <dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="1" Alias="b">
- <dxl:Ident ColId="1" ColName="b" TypeMdid="0.25.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="2" Alias="c">
- <dxl:Ident ColId="2" ColName="c" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="3" Alias="ctid">
- <dxl:Ident ColId="3" ColName="ctid" TypeMdid="0.27.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="9" Alias="gp_segment_id">
- <dxl:Ident ColId="9" ColName="gp_segment_id" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
<dxl:ProjElem ColId="30" Alias="ColRef_0030">
- <dxl:Ident ColId="30" ColName="ColRef_0030" TypeMdid="0.16.1.0"/>
+ <dxl:ConstValue TypeMdid="0.16.1.0" Value="true"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList/>
- <dxl:NestedLoopJoin JoinType="Left" IndexNestedLoopJoin="false" OuterRefAsParam="false">
+ <dxl:OneTimeFilter/>
+ <dxl:TableScan>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1324032.286987" Rows="4.000000" Width="24"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000008" Rows="1.000000" Width="1"/>
</dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="0" Alias="a">
- <dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="1" Alias="b">
- <dxl:Ident ColId="1" ColName="b" TypeMdid="0.25.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="2" Alias="c">
- <dxl:Ident ColId="2" ColName="c" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="3" Alias="ctid">
- <dxl:Ident ColId="3" ColName="ctid" TypeMdid="0.27.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="9" Alias="gp_segment_id">
- <dxl:Ident ColId="9" ColName="gp_segment_id" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="30" Alias="ColRef_0030">
- <dxl:Ident ColId="30" ColName="ColRef_0030" TypeMdid="0.16.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
+ <dxl:ProjList/>
<dxl:Filter/>
- <dxl:JoinFilter>
- <dxl:ConstValue TypeMdid="0.16.1.0" Value="true"/>
- </dxl:JoinFilter>
- <dxl:TableScan>
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000024" Rows="2.000000" Width="23"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="0" Alias="a">
- <dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="1" Alias="b">
- <dxl:Ident ColId="1" ColName="b" TypeMdid="0.25.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="2" Alias="c">
- <dxl:Ident ColId="2" ColName="c" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="3" Alias="ctid">
- <dxl:Ident ColId="3" ColName="ctid" TypeMdid="0.27.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="9" Alias="gp_segment_id">
- <dxl:Ident ColId="9" ColName="gp_segment_id" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:TableDescriptor Mdid="6.16385.1.0" TableName="t1">
- <dxl:Columns>
- <dxl:Column ColId="0" Attno="1" ColName="a" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="1" Attno="2" ColName="b" TypeMdid="0.25.1.0" ColWidth="5"/>
- <dxl:Column ColId="2" Attno="3" ColName="c" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="3" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
- <dxl:Column ColId="4" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="5" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="6" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="7" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="8" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
- <dxl:Column ColId="9" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:TableScan>
- <dxl:Materialize Eager="false">
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000028" Rows="3.000000" Width="1"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="30" Alias="ColRef_0030">
- <dxl:Ident ColId="30" ColName="ColRef_0030" TypeMdid="0.16.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:BroadcastMotion InputSegments="0,1,2" OutputSegments="0,1,2">
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000027" Rows="3.000000" Width="1"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="30" Alias="ColRef_0030">
- <dxl:Ident ColId="30" ColName="ColRef_0030" TypeMdid="0.16.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:SortingColumnList/>
- <dxl:Result>
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000009" Rows="1.000000" Width="1"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="30" Alias="ColRef_0030">
- <dxl:ConstValue TypeMdid="0.16.1.0" Value="true"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:OneTimeFilter/>
- <dxl:TableScan>
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000008" Rows="1.000000" Width="1"/>
- </dxl:Properties>
- <dxl:ProjList/>
- <dxl:Filter/>
- <dxl:TableDescriptor Mdid="6.16391.1.0" TableName="t2">
- <dxl:Columns>
- <dxl:Column ColId="10" Attno="1" ColName="a" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="13" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
- <dxl:Column ColId="14" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="15" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="16" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="17" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="18" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
- <dxl:Column ColId="19" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:TableScan>
- </dxl:Result>
- </dxl:BroadcastMotion>
- </dxl:Materialize>
- </dxl:NestedLoopJoin>
- </dxl:RandomMotion>
- </dxl:Sort>
- </dxl:Aggregate>
- </dxl:RedistributeMotion>
+ <dxl:TableDescriptor Mdid="6.16391.1.0" TableName="t2">
+ <dxl:Columns>
+ <dxl:Column ColId="10" Attno="1" ColName="a" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="13" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
+ <dxl:Column ColId="14" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="15" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="16" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="17" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="18" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
+ <dxl:Column ColId="19" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:TableScan>
+ </dxl:Result>
+ </dxl:BroadcastMotion>
+ </dxl:Materialize>
+ </dxl:NestedLoopJoin>
</dxl:Sort>
</dxl:Aggregate>
<dxl:Materialize Eager="false">
diff --git a/src/backend/gporca/data/dxl/minidump/ExistsSubqInsideExpr.mdp b/src/backend/gporca/data/dxl/minidump/ExistsSubqInsideExpr.mdp
index 3d3da25af9..77ce626971 100644
--- a/src/backend/gporca/data/dxl/minidump/ExistsSubqInsideExpr.mdp
+++ b/src/backend/gporca/data/dxl/minidump/ExistsSubqInsideExpr.mdp
@@ -317,7 +317,7 @@
<dxl:Plan Id="0" SpaceSize="5">
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1324032.404069" Rows="2.250000" Width="13"/>
+ <dxl:Cost StartupCost="0" TotalCost="1324032.404298" Rows="2.250000" Width="13"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -334,7 +334,7 @@
<dxl:SortingColumnList/>
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1324032.403960" Rows="2.250000" Width="13"/>
+ <dxl:Cost StartupCost="0" TotalCost="1324032.404189" Rows="2.250000" Width="13"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -351,7 +351,7 @@
<dxl:OneTimeFilter/>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1324032.403960" Rows="2.250000" Width="13"/>
+ <dxl:Cost StartupCost="0" TotalCost="1324032.404189" Rows="2.250000" Width="13"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="0"/>
@@ -384,7 +384,7 @@
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1324032.403925" Rows="2.400000" Width="24"/>
+ <dxl:Cost StartupCost="0" TotalCost="1324032.404155" Rows="2.400000" Width="24"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
diff --git a/src/backend/gporca/data/dxl/minidump/ExtractPredicateFromDisjWithComputedColumns.mdp b/src/backend/gporca/data/dxl/minidump/ExtractPredicateFromDisjWithComputedColumns.mdp
index 480211e891..4de3049628 100644
--- a/src/backend/gporca/data/dxl/minidump/ExtractPredicateFromDisjWithComputedColumns.mdp
+++ b/src/backend/gporca/data/dxl/minidump/ExtractPredicateFromDisjWithComputedColumns.mdp
@@ -427,7 +427,7 @@ where (cd.dyear = 2001 and s.tickets_cnt > 3) or (cd.dmoy = 4 and s.tickets_c
<dxl:Plan Id="0" SpaceSize="3310">
<dxl:GatherMotion InputSegments="0,1" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1293.002856" Rows="1.000000" Width="64"/>
+ <dxl:Cost StartupCost="0" TotalCost="1293.003079" Rows="1.000000" Width="64"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="cid">
@@ -462,7 +462,7 @@ where (cd.dyear = 2001 and s.tickets_cnt > 3) or (cd.dmoy = 4 and s.tickets_c
<dxl:SortingColumnList/>
<dxl:HashJoin JoinType="Inner">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1293.002569" Rows="1.000000" Width="64"/>
+ <dxl:Cost StartupCost="0" TotalCost="1293.002791" Rows="1.000000" Width="64"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="cid">
@@ -526,7 +526,7 @@ where (cd.dyear = 2001 and s.tickets_cnt > 3) or (cd.dmoy = 4 and s.tickets_c
</dxl:HashCondList>
<dxl:RedistributeMotion InputSegments="0,1" OutputSegments="0,1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.001070" Rows="1.000000" Width="40"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.001292" Rows="1.000000" Width="40"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="cid">
@@ -557,7 +557,7 @@ where (cd.dyear = 2001 and s.tickets_cnt > 3) or (cd.dmoy = 4 and s.tickets_c
</dxl:HashExprList>
<dxl:HashJoin JoinType="Inner">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000991" Rows="1.000000" Width="40"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.001214" Rows="1.000000" Width="40"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="cid">
@@ -620,7 +620,7 @@ where (cd.dyear = 2001 and s.tickets_cnt > 3) or (cd.dmoy = 4 and s.tickets_c
</dxl:TableScan>
<dxl:RedistributeMotion InputSegments="0,1" OutputSegments="0,1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000198" Rows="1.000000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000420" Rows="1.000000" Width="16"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="22" Alias="cid">
@@ -642,7 +642,7 @@ where (cd.dyear = 2001 and s.tickets_cnt > 3) or (cd.dmoy = 4 and s.tickets_c
</dxl:HashExprList>
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000147" Rows="1.000000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000370" Rows="1.000000" Width="16"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="22" Alias="cid">
@@ -668,9 +668,9 @@ where (cd.dyear = 2001 and s.tickets_cnt > 3) or (cd.dmoy = 4 and s.tickets_c
</dxl:Or>
</dxl:Filter>
<dxl:OneTimeFilter/>
- <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
+ <dxl:Aggregate AggregationStrategy="Hashed" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000115" Rows="1.000000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000337" Rows="1.000000" Width="16"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="22"/>
@@ -678,9 +678,9 @@ where (cd.dyear = 2001 and s.tickets_cnt > 3) or (cd.dmoy = 4 and s.tickets_c
</dxl:GroupingColumns>
<dxl:ProjList>
<dxl:ProjElem ColId="32" Alias="tickets_cnt">
- <dxl:AggFunc AggMdid="0.2147.1.0" AggDistinct="false" AggStage="Final" AggKind="n" AggArgTypes="">
+ <dxl:AggFunc AggMdid="0.2147.1.0" AggDistinct="false" AggStage="Normal" AggKind="n" AggArgTypes="">
<dxl:ValuesList ParamType="aggargs">
- <dxl:Ident ColId="33" ColName="ColRef_0033" TypeMdid="0.20.1.0"/>
+ <dxl:Ident ColId="21" ColName="ticket_number" TypeMdid="0.23.1.0"/>
</dxl:ValuesList>
<dxl:ValuesList ParamType="aggdirectargs"/>
<dxl:ValuesList ParamType="aggorder"/>
@@ -695,156 +695,64 @@ where (cd.dyear = 2001 and s.tickets_cnt > 3) or (cd.dmoy = 4 and s.tickets_c
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:Sort SortDiscardDuplicates="false">
+ <dxl:RedistributeMotion InputSegments="0,1" OutputSegments="0,1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000090" Rows="1.000000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000084" Rows="1.000000" Width="24"/>
</dxl:Properties>
<dxl:ProjList>
+ <dxl:ProjElem ColId="21" Alias="ticket_number">
+ <dxl:Ident ColId="21" ColName="ticket_number" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
<dxl:ProjElem ColId="22" Alias="cid">
<dxl:Ident ColId="22" ColName="cid" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
<dxl:ProjElem ColId="23" Alias="date_sk">
<dxl:Ident ColId="23" ColName="date_sk" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
- <dxl:ProjElem ColId="33" Alias="ColRef_0033">
- <dxl:Ident ColId="33" ColName="ColRef_0033" TypeMdid="0.20.1.0"/>
- </dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="22" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- <dxl:SortingColumn ColId="23" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:RedistributeMotion InputSegments="0,1" OutputSegments="0,1">
+ <dxl:SortingColumnList/>
+ <dxl:HashExprList>
+ <dxl:HashExpr>
+ <dxl:Ident ColId="22" ColName="cid" TypeMdid="0.23.1.0"/>
+ </dxl:HashExpr>
+ <dxl:HashExpr>
+ <dxl:Ident ColId="23" ColName="date_sk" TypeMdid="0.23.1.0"/>
+ </dxl:HashExpr>
+ </dxl:HashExprList>
+ <dxl:TableScan>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000090" Rows="1.000000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000015" Rows="1.000000" Width="24"/>
</dxl:Properties>
<dxl:ProjList>
+ <dxl:ProjElem ColId="21" Alias="ticket_number">
+ <dxl:Ident ColId="21" ColName="ticket_number" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
<dxl:ProjElem ColId="22" Alias="cid">
<dxl:Ident ColId="22" ColName="cid" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
<dxl:ProjElem ColId="23" Alias="date_sk">
<dxl:Ident ColId="23" ColName="date_sk" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
- <dxl:ProjElem ColId="33" Alias="ColRef_0033">
- <dxl:Ident ColId="33" ColName="ColRef_0033" TypeMdid="0.20.1.0"/>
- </dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList/>
- <dxl:HashExprList>
- <dxl:HashExpr>
- <dxl:Ident ColId="22" ColName="cid" TypeMdid="0.23.1.0"/>
- </dxl:HashExpr>
- <dxl:HashExpr>
- <dxl:Ident ColId="23" ColName="date_sk" TypeMdid="0.23.1.0"/>
- </dxl:HashExpr>
- </dxl:HashExprList>
- <dxl:Result>
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000058" Rows="1.000000" Width="16"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="22" Alias="cid">
- <dxl:Ident ColId="22" ColName="cid" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="23" Alias="date_sk">
- <dxl:Ident ColId="23" ColName="date_sk" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="33" Alias="ColRef_0033">
- <dxl:Ident ColId="33" ColName="ColRef_0033" TypeMdid="0.20.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:OneTimeFilter/>
- <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000058" Rows="1.000000" Width="16"/>
- </dxl:Properties>
- <dxl:GroupingColumns>
- <dxl:GroupingColumn ColId="22"/>
- <dxl:GroupingColumn ColId="23"/>
- </dxl:GroupingColumns>
- <dxl:ProjList>
- <dxl:ProjElem ColId="33" Alias="ColRef_0033">
- <dxl:AggFunc AggMdid="0.2147.1.0" AggDistinct="false" AggStage="Partial" AggKind="n" AggArgTypes="">
- <dxl:ValuesList ParamType="aggargs">
- <dxl:Ident ColId="21" ColName="ticket_number" TypeMdid="0.23.1.0"/>
- </dxl:ValuesList>
- <dxl:ValuesList ParamType="aggdirectargs"/>
- <dxl:ValuesList ParamType="aggorder"/>
- <dxl:ValuesList ParamType="aggdistinct"/>
- </dxl:AggFunc>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="22" Alias="cid">
- <dxl:Ident ColId="22" ColName="cid" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="23" Alias="date_sk">
- <dxl:Ident ColId="23" ColName="date_sk" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:Sort SortDiscardDuplicates="false">
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000037" Rows="1.000000" Width="24"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="21" Alias="ticket_number">
- <dxl:Ident ColId="21" ColName="ticket_number" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="22" Alias="cid">
- <dxl:Ident ColId="22" ColName="cid" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="23" Alias="date_sk">
- <dxl:Ident ColId="23" ColName="date_sk" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="22" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- <dxl:SortingColumn ColId="23" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:TableScan>
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000015" Rows="1.000000" Width="24"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="21" Alias="ticket_number">
- <dxl:Ident ColId="21" ColName="ticket_number" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="22" Alias="cid">
- <dxl:Ident ColId="22" ColName="cid" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="23" Alias="date_sk">
- <dxl:Ident ColId="23" ColName="date_sk" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:TableDescriptor Mdid="6.15667489.1.1" TableName="sales">
- <dxl:Columns>
- <dxl:Column ColId="20" Attno="1" ColName="item_sk" TypeMdid="0.23.1.0"/>
- <dxl:Column ColId="21" Attno="2" ColName="ticket_number" TypeMdid="0.23.1.0"/>
- <dxl:Column ColId="22" Attno="3" ColName="cid" TypeMdid="0.23.1.0"/>
- <dxl:Column ColId="23" Attno="4" ColName="date_sk" TypeMdid="0.23.1.0"/>
- <dxl:Column ColId="25" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0"/>
- <dxl:Column ColId="26" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0"/>
- <dxl:Column ColId="27" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0"/>
- <dxl:Column ColId="28" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0"/>
- <dxl:Column ColId="29" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0"/>
- <dxl:Column ColId="30" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0"/>
- <dxl:Column ColId="31" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:TableScan>
- </dxl:Sort>
- </dxl:Aggregate>
- </dxl:Result>
- </dxl:RedistributeMotion>
- </dxl:Sort>
+ <dxl:TableDescriptor Mdid="6.15667489.1.1" TableName="sales">
+ <dxl:Columns>
+ <dxl:Column ColId="20" Attno="1" ColName="item_sk" TypeMdid="0.23.1.0"/>
+ <dxl:Column ColId="21" Attno="2" ColName="ticket_number" TypeMdid="0.23.1.0"/>
+ <dxl:Column ColId="22" Attno="3" ColName="cid" TypeMdid="0.23.1.0"/>
+ <dxl:Column ColId="23" Attno="4" ColName="date_sk" TypeMdid="0.23.1.0"/>
+ <dxl:Column ColId="25" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0"/>
+ <dxl:Column ColId="26" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0"/>
+ <dxl:Column ColId="27" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0"/>
+ <dxl:Column ColId="28" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0"/>
+ <dxl:Column ColId="29" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0"/>
+ <dxl:Column ColId="30" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0"/>
+ <dxl:Column ColId="31" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:TableScan>
+ </dxl:RedistributeMotion>
</dxl:Aggregate>
</dxl:Result>
</dxl:RedistributeMotion>
diff --git a/src/backend/gporca/data/dxl/minidump/FullJoin-2PredicateOnDistColumns.mdp b/src/backend/gporca/data/dxl/minidump/FullJoin-2PredicateOnDistColumns.mdp
index 9bae7684d5..7e76de151b 100644
--- a/src/backend/gporca/data/dxl/minidump/FullJoin-2PredicateOnDistColumns.mdp
+++ b/src/backend/gporca/data/dxl/minidump/FullJoin-2PredicateOnDistColumns.mdp
@@ -278,7 +278,7 @@
<dxl:Plan Id="0" SpaceSize="18">
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.001103" Rows="5.000000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.001285" Rows="5.000000" Width="16"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -298,7 +298,7 @@
<dxl:SortingColumnList/>
<dxl:MergeJoin JoinType="Full" UniqueOuter="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000805" Rows="5.000000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000987" Rows="5.000000" Width="16"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -328,7 +328,7 @@
</dxl:MergeCondList>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000036" Rows="3.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000126" Rows="3.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -375,7 +375,7 @@
</dxl:Sort>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000036" Rows="3.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000126" Rows="3.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="9" Alias="c">
diff --git a/src/backend/gporca/data/dxl/minidump/FullJoin-Caps.mdp b/src/backend/gporca/data/dxl/minidump/FullJoin-Caps.mdp
index f552dea7eb..4995973df6 100644
--- a/src/backend/gporca/data/dxl/minidump/FullJoin-Caps.mdp
+++ b/src/backend/gporca/data/dxl/minidump/FullJoin-Caps.mdp
@@ -234,7 +234,7 @@ explain select * from edges e1 full outer join edges e2 on (e1.grp = e2.grp and
<dxl:Plan Id="0" SpaceSize="18">
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.001072" Rows="3.000000" Width="24"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.001344" Rows="3.000000" Width="24"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="src">
@@ -260,7 +260,7 @@ explain select * from edges e1 full outer join edges e2 on (e1.grp = e2.grp and
<dxl:SortingColumnList/>
<dxl:MergeJoin JoinType="Full" UniqueOuter="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000804" Rows="3.000000" Width="24"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.001076" Rows="3.000000" Width="24"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="src">
@@ -296,7 +296,7 @@ explain select * from edges e1 full outer join edges e2 on (e1.grp = e2.grp and
</dxl:MergeCondList>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000045" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000182" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="src">
@@ -350,7 +350,7 @@ explain select * from edges e1 full outer join edges e2 on (e1.grp = e2.grp and
</dxl:Sort>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000034" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000170" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="10" Alias="src">
diff --git a/src/backend/gporca/data/dxl/minidump/FullJoin-InnerNotOnDistributionColumn.mdp b/src/backend/gporca/data/dxl/minidump/FullJoin-InnerNotOnDistributionColumn.mdp
index 3fb5b096a9..f52ba22b24 100644
--- a/src/backend/gporca/data/dxl/minidump/FullJoin-InnerNotOnDistributionColumn.mdp
+++ b/src/backend/gporca/data/dxl/minidump/FullJoin-InnerNotOnDistributionColumn.mdp
@@ -262,7 +262,7 @@
<dxl:Plan Id="0" SpaceSize="14">
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000942" Rows="5.200000" Width="20"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.001123" Rows="5.200000" Width="20"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -282,7 +282,7 @@
<dxl:SortingColumnList/>
<dxl:MergeJoin JoinType="Full" UniqueOuter="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000554" Rows="5.200000" Width="20"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000735" Rows="5.200000" Width="20"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -308,7 +308,7 @@
</dxl:MergeCondList>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000036" Rows="3.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000126" Rows="3.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -354,7 +354,7 @@
</dxl:Sort>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000061" Rows="3.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000152" Rows="3.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="9" Alias="c">
diff --git a/src/backend/gporca/data/dxl/minidump/FullJoin-NotOnDistributionColumn.mdp b/src/backend/gporca/data/dxl/minidump/FullJoin-NotOnDistributionColumn.mdp
index 68a731a4c3..344c7b5483 100644
--- a/src/backend/gporca/data/dxl/minidump/FullJoin-NotOnDistributionColumn.mdp
+++ b/src/backend/gporca/data/dxl/minidump/FullJoin-NotOnDistributionColumn.mdp
@@ -272,7 +272,7 @@
<dxl:Plan Id="0" SpaceSize="14">
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.001031" Rows="7.200000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.001213" Rows="7.200000" Width="16"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -292,7 +292,7 @@
<dxl:SortingColumnList/>
<dxl:MergeJoin JoinType="Full" UniqueOuter="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000602" Rows="7.200000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000783" Rows="7.200000" Width="16"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -318,7 +318,7 @@
</dxl:MergeCondList>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000061" Rows="3.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000152" Rows="3.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -384,7 +384,7 @@
</dxl:Sort>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000061" Rows="3.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000152" Rows="3.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="9" Alias="c">
diff --git a/src/backend/gporca/data/dxl/minidump/FullJoin-OnDistributionColumn.mdp b/src/backend/gporca/data/dxl/minidump/FullJoin-OnDistributionColumn.mdp
index 588189182b..c3ec36262f 100644
--- a/src/backend/gporca/data/dxl/minidump/FullJoin-OnDistributionColumn.mdp
+++ b/src/backend/gporca/data/dxl/minidump/FullJoin-OnDistributionColumn.mdp
@@ -256,7 +256,7 @@
<dxl:Plan Id="0" SpaceSize="14">
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.001018" Rows="5.200000" Width="24"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.001200" Rows="5.200000" Width="24"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -276,7 +276,7 @@
<dxl:SortingColumnList/>
<dxl:MergeJoin JoinType="Full" UniqueOuter="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000553" Rows="5.200000" Width="24"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000735" Rows="5.200000" Width="24"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -302,7 +302,7 @@
</dxl:MergeCondList>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000036" Rows="3.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000126" Rows="3.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -348,7 +348,7 @@
</dxl:Sort>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000036" Rows="3.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000126" Rows="3.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="9" Alias="c">
diff --git a/src/backend/gporca/data/dxl/minidump/FullJoin-Replicated.mdp b/src/backend/gporca/data/dxl/minidump/FullJoin-Replicated.mdp
index c6671403da..388b7a961c 100644
--- a/src/backend/gporca/data/dxl/minidump/FullJoin-Replicated.mdp
+++ b/src/backend/gporca/data/dxl/minidump/FullJoin-Replicated.mdp
@@ -239,7 +239,7 @@
<dxl:Plan Id="0" SpaceSize="14">
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000799" Rows="3.000000" Width="24"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000981" Rows="3.000000" Width="24"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -259,7 +259,7 @@
<dxl:SortingColumnList/>
<dxl:MergeJoin JoinType="Full" UniqueOuter="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000531" Rows="3.000000" Width="24"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000712" Rows="3.000000" Width="24"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -285,7 +285,7 @@
</dxl:MergeCondList>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000061" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000152" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -351,7 +351,7 @@
</dxl:Sort>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000061" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000152" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="9" Alias="c">
diff --git a/src/backend/gporca/data/dxl/minidump/FullJoin-Subquery-CastedPredicates.mdp b/src/backend/gporca/data/dxl/minidump/FullJoin-Subquery-CastedPredicates.mdp
index 9c2fcb08bd..574eaddd70 100644
--- a/src/backend/gporca/data/dxl/minidump/FullJoin-Subquery-CastedPredicates.mdp
+++ b/src/backend/gporca/data/dxl/minidump/FullJoin-Subquery-CastedPredicates.mdp
@@ -450,7 +450,7 @@
<dxl:Plan Id="0" SpaceSize="2048">
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1299.001542" Rows="3.000000" Width="20"/>
+ <dxl:Cost StartupCost="0" TotalCost="1299.001769" Rows="3.000000" Width="20"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -473,7 +473,7 @@
<dxl:SortingColumnList/>
<dxl:MergeJoin JoinType="Full" UniqueOuter="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1299.001318" Rows="3.000000" Width="20"/>
+ <dxl:Cost StartupCost="0" TotalCost="1299.001545" Rows="3.000000" Width="20"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -502,7 +502,7 @@
</dxl:MergeCondList>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="437.000359" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="437.000404" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -591,7 +591,7 @@
<dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
</dxl:Comparison>
</dxl:IndexCondList>
- <dxl:Partitions/>
+ <dxl:Partitions/>
<dxl:IndexDescriptor Mdid="0.32772.1.0" IndexName="t2_d"/>
<dxl:TableDescriptor Mdid="6.24579.1.0" TableName="t2">
<dxl:Columns>
@@ -615,7 +615,7 @@
</dxl:Sort>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000552" Rows="1.000000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000734" Rows="1.000000" Width="16"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="18" Alias="a">
@@ -685,7 +685,7 @@
<dxl:HashCondList>
<dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
<dxl:Cast TypeMdid="0.23.1.0" FuncId="0.313.1.0">
- <dxl:FuncExpr FuncId="0.314.1.0" FuncRetSet="false" TypeMdid="0.21.1.0">
+ <dxl:FuncExpr FuncId="0.314.1.0" FuncRetSet="false" TypeMdid="0.21.1.0" FuncVariadic="false">
<dxl:Ident ColId="18" ColName="a" TypeMdid="0.23.1.0"/>
</dxl:FuncExpr>
</dxl:Cast>
diff --git a/src/backend/gporca/data/dxl/minidump/FullJoin-SubquerySingleton.mdp b/src/backend/gporca/data/dxl/minidump/FullJoin-SubquerySingleton.mdp
index e1add16a2a..99530228f2 100644
--- a/src/backend/gporca/data/dxl/minidump/FullJoin-SubquerySingleton.mdp
+++ b/src/backend/gporca/data/dxl/minidump/FullJoin-SubquerySingleton.mdp
@@ -304,7 +304,7 @@
<dxl:Plan Id="0" SpaceSize="54">
<dxl:MergeJoin JoinType="Full" UniqueOuter="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000642" Rows="3.000000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000823" Rows="3.000000" Width="16"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="9" Alias="l">
@@ -324,7 +324,7 @@
</dxl:MergeCondList>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000059" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000150" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="9" Alias="sum">
@@ -346,7 +346,7 @@
<dxl:ProjElem ColId="9" Alias="sum">
<dxl:AggFunc AggMdid="0.2108.1.0" AggDistinct="false" AggStage="Final" AggKind="n" AggArgTypes="">
<dxl:ValuesList ParamType="aggargs">
- <dxl:Ident ColId="21" ColName="ColRef_0021" TypeMdid="0.20.1.0"/>
+ <dxl:Ident ColId="21" ColName="ColRef_0021" TypeMdid="0.20.1.0"/>
</dxl:ValuesList>
<dxl:ValuesList ParamType="aggdirectargs"/>
<dxl:ValuesList ParamType="aggorder"/>
@@ -375,7 +375,7 @@
<dxl:ProjElem ColId="21" Alias="ColRef_0021">
<dxl:AggFunc AggMdid="0.2108.1.0" AggDistinct="false" AggStage="Partial" AggKind="n" AggArgTypes="">
<dxl:ValuesList ParamType="aggargs">
- <dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
+ <dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
</dxl:ValuesList>
<dxl:ValuesList ParamType="aggdirectargs"/>
<dxl:ValuesList ParamType="aggorder"/>
@@ -413,7 +413,7 @@
</dxl:Sort>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000059" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000150" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="19" Alias="count">
@@ -435,7 +435,7 @@
<dxl:ProjElem ColId="19" Alias="count">
<dxl:AggFunc AggMdid="0.2147.1.0" AggDistinct="false" AggStage="Final" AggKind="n" AggArgTypes="">
<dxl:ValuesList ParamType="aggargs">
- <dxl:Ident ColId="20" ColName="ColRef_0020" TypeMdid="0.20.1.0"/>
+ <dxl:Ident ColId="20" ColName="ColRef_0020" TypeMdid="0.20.1.0"/>
</dxl:ValuesList>
<dxl:ValuesList ParamType="aggdirectargs"/>
<dxl:ValuesList ParamType="aggorder"/>
@@ -464,7 +464,7 @@
<dxl:ProjElem ColId="20" Alias="ColRef_0020">
<dxl:AggFunc AggMdid="0.2147.1.0" AggDistinct="false" AggStage="Partial" AggKind="n" AggArgTypes="">
<dxl:ValuesList ParamType="aggargs">
- <dxl:Ident ColId="10" ColName="c" TypeMdid="0.23.1.0"/>
+ <dxl:Ident ColId="10" ColName="c" TypeMdid="0.23.1.0"/>
</dxl:ValuesList>
<dxl:ValuesList ParamType="aggdirectargs"/>
<dxl:ValuesList ParamType="aggorder"/>
diff --git a/src/backend/gporca/data/dxl/minidump/FullJoin-SubqueryWithRedistribute.mdp b/src/backend/gporca/data/dxl/minidump/FullJoin-SubqueryWithRedistribute.mdp
index 4fac4549a1..361f42dff3 100644
--- a/src/backend/gporca/data/dxl/minidump/FullJoin-SubqueryWithRedistribute.mdp
+++ b/src/backend/gporca/data/dxl/minidump/FullJoin-SubqueryWithRedistribute.mdp
@@ -277,7 +277,7 @@
<dxl:Plan Id="0" SpaceSize="24">
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000832" Rows="3.000000" Width="24"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.001104" Rows="3.000000" Width="24"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="9" Alias="l">
@@ -294,7 +294,7 @@
<dxl:SortingColumnList/>
<dxl:MergeJoin JoinType="Full" UniqueOuter="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000564" Rows="3.000000" Width="24"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000836" Rows="3.000000" Width="24"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="9" Alias="sum">
@@ -317,7 +317,7 @@
</dxl:MergeCondList>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000085" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000175" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="9" Alias="sum">
@@ -355,7 +355,7 @@
<dxl:ProjElem ColId="9" Alias="sum">
<dxl:AggFunc AggMdid="0.2108.1.0" AggDistinct="false" AggStage="Final" AggKind="n" AggArgTypes="">
<dxl:ValuesList ParamType="aggargs">
- <dxl:Ident ColId="19" ColName="ColRef_0019" TypeMdid="0.20.1.0"/>
+ <dxl:Ident ColId="19" ColName="ColRef_0019" TypeMdid="0.20.1.0"/>
</dxl:ValuesList>
<dxl:ValuesList ParamType="aggdirectargs"/>
<dxl:ValuesList ParamType="aggorder"/>
@@ -384,7 +384,7 @@
<dxl:ProjElem ColId="19" Alias="ColRef_0019">
<dxl:AggFunc AggMdid="0.2108.1.0" AggDistinct="false" AggStage="Partial" AggKind="n" AggArgTypes="">
<dxl:ValuesList ParamType="aggargs">
- <dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
+ <dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
</dxl:ValuesList>
<dxl:ValuesList ParamType="aggdirectargs"/>
<dxl:ValuesList ParamType="aggorder"/>
@@ -423,7 +423,7 @@
</dxl:Sort>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000055" Rows="1.000000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000237" Rows="1.000000" Width="16"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="10" Alias="c">
diff --git a/src/backend/gporca/data/dxl/minidump/FullJoin-SwappedPredicates.mdp b/src/backend/gporca/data/dxl/minidump/FullJoin-SwappedPredicates.mdp
index aa818ac70b..9c49c88003 100644
--- a/src/backend/gporca/data/dxl/minidump/FullJoin-SwappedPredicates.mdp
+++ b/src/backend/gporca/data/dxl/minidump/FullJoin-SwappedPredicates.mdp
@@ -256,7 +256,7 @@
<dxl:Plan Id="0" SpaceSize="14">
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.001018" Rows="5.200000" Width="24"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.001200" Rows="5.200000" Width="24"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -276,7 +276,7 @@
<dxl:SortingColumnList/>
<dxl:MergeJoin JoinType="Full" UniqueOuter="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000553" Rows="5.200000" Width="24"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000735" Rows="5.200000" Width="24"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -302,7 +302,7 @@
</dxl:MergeCondList>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000036" Rows="3.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000126" Rows="3.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -348,7 +348,7 @@
</dxl:Sort>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000036" Rows="3.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000126" Rows="3.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="9" Alias="c">
diff --git a/src/backend/gporca/data/dxl/minidump/Gist-AOCOTable-NonLossy-BitmapIndexPlan.mdp b/src/backend/gporca/data/dxl/minidump/Gist-AOCOTable-NonLossy-BitmapIndexPlan.mdp
index 43b4cf9549..12adceca7e 100644
--- a/src/backend/gporca/data/dxl/minidump/Gist-AOCOTable-NonLossy-BitmapIndexPlan.mdp
+++ b/src/backend/gporca/data/dxl/minidump/Gist-AOCOTable-NonLossy-BitmapIndexPlan.mdp
@@ -253,7 +253,7 @@ Gather Motion 3:1 (slice1; segments: 3) (cost=0.00..0.00 rows=1 width=4)
<dxl:Plan Id="0" SpaceSize="4">
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="391.295517" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="391.295563" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="id">
@@ -266,7 +266,7 @@ Gather Motion 3:1 (slice1; segments: 3) (cost=0.00..0.00 rows=1 width=4)
</dxl:SortingColumnList>
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="391.295502" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="391.295548" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="id">
@@ -277,7 +277,7 @@ Gather Motion 3:1 (slice1; segments: 3) (cost=0.00..0.00 rows=1 width=4)
<dxl:OneTimeFilter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="391.295502" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="391.295548" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="id">
diff --git a/src/backend/gporca/data/dxl/minidump/Gist-OrderBy-BitmapPlan.mdp b/src/backend/gporca/data/dxl/minidump/Gist-OrderBy-BitmapPlan.mdp
index bccef489d8..18b7afde12 100644
--- a/src/backend/gporca/data/dxl/minidump/Gist-OrderBy-BitmapPlan.mdp
+++ b/src/backend/gporca/data/dxl/minidump/Gist-OrderBy-BitmapPlan.mdp
@@ -307,7 +307,7 @@ Result (cost=0.00..0.00 rows=1 width=36)
<dxl:Plan Id="0" SpaceSize="9">
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="6.000347" Rows="1.000000" Width="36"/>
+ <dxl:Cost StartupCost="0" TotalCost="6.000755" Rows="1.000000" Width="36"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -324,7 +324,7 @@ Result (cost=0.00..0.00 rows=1 width=36)
<dxl:OneTimeFilter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="6.000347" Rows="1.000000" Width="36"/>
+ <dxl:Cost StartupCost="0" TotalCost="6.000755" Rows="1.000000" Width="36"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -362,7 +362,7 @@ Result (cost=0.00..0.00 rows=1 width=36)
</dxl:ProjElem>
<dxl:ProjElem ColId="10" Alias="?column?">
<dxl:OpExpr OperatorName="<->" OperatorMdid="0.712.1.0" OperatorType="0.701.1.0">
- <dxl:ConstValue TypeMdid="0.604.1.0" Value="AAAAWAMAAAAAAAAAAMBVQAAAAAAAwFVAAAAAAABAVUAAAAAAAEBVQAAAAAAA gFVAAAAAAACAVUAAAAAAAEBVQAAAAAAAwFVAAAAAAADAVUAAAAAAAEBVQA=="/>
+ <dxl:ConstValue TypeMdid="0.604.1.0" Value="AAAAWAMAAAAAAAAAAMBVQAAAAAAAwFVAAAAAAABAVUAAAAAAAEBVQAAAAAAA
gFVAAAAAAACAVUAAAAAAAEBVQAAAAAAAwFVAAAAAAADAVUAAAAAAAEBVQA=="/>
<dxl:Ident ColId="1" ColName="p" TypeMdid="0.604.1.0"/>
</dxl:OpExpr>
</dxl:ProjElem>
@@ -404,16 +404,16 @@ Result (cost=0.00..0.00 rows=1 width=36)
<dxl:Filter>
<dxl:Comparison ComparisonOperator="<@" OperatorMdid="0.489.1.0">
<dxl:Ident ColId="1" ColName="p" TypeMdid="0.604.1.0"/>
- <dxl:ConstValue TypeMdid="0.604.1.0" Value="AAAAWAMAAAAAAAAAAMBVQAAAAAAAwFVAAAAAAABAVUAAAAAAAEBVQAAAAAAA gFVAAAAAAACAVUAAAAAAAEBVQAAAAAAAwFVAAAAAAADAVUAAAAAAAEBVQA=="/>
+ <dxl:ConstValue TypeMdid="0.604.1.0" Value="AAAAWAMAAAAAAAAAAMBVQAAAAAAAwFVAAAAAAABAVUAAAAAAAEBVQAAAAAAA
gFVAAAAAAACAVUAAAAAAAEBVQAAAAAAAwFVAAAAAAADAVUAAAAAAAEBVQA=="/>
</dxl:Comparison>
</dxl:Filter>
<dxl:IndexCondList>
<dxl:Comparison ComparisonOperator="<@" OperatorMdid="0.489.1.0">
<dxl:Ident ColId="1" ColName="p" TypeMdid="0.604.1.0"/>
- <dxl:ConstValue TypeMdid="0.604.1.0" Value="AAAAWAMAAAAAAAAAAMBVQAAAAAAAwFVAAAAAAABAVUAAAAAAAEBVQAAAAAAA gFVAAAAAAACAVUAAAAAAAEBVQAAAAAAAwFVAAAAAAADAVUAAAAAAAEBVQA=="/>
+ <dxl:ConstValue TypeMdid="0.604.1.0" Value="AAAAWAMAAAAAAAAAAMBVQAAAAAAAwFVAAAAAAABAVUAAAAAAAEBVQAAAAAAA
gFVAAAAAAACAVUAAAAAAAEBVQAAAAAAAwFVAAAAAAADAVUAAAAAAAEBVQA=="/>
</dxl:Comparison>
</dxl:IndexCondList>
- <dxl:Partitions/>
+ <dxl:Partitions/>
<dxl:IndexDescriptor Mdid="0.573475.1.0" IndexName="poly"/>
<dxl:TableDescriptor Mdid="6.573456.1.0" TableName="gist_tbl2">
<dxl:Columns>
diff --git a/src/backend/gporca/data/dxl/minidump/Gist-OrderBy-IndexPlan.mdp b/src/backend/gporca/data/dxl/minidump/Gist-OrderBy-IndexPlan.mdp
index 70ba4dbaa2..e6b0cc937d 100644
--- a/src/backend/gporca/data/dxl/minidump/Gist-OrderBy-IndexPlan.mdp
+++ b/src/backend/gporca/data/dxl/minidump/Gist-OrderBy-IndexPlan.mdp
@@ -345,7 +345,7 @@ Result (cost=0.00..8.00 rows=2 width=36)
<dxl:Plan Id="0" SpaceSize="9">
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="6.002212" Rows="4.000000" Width="36"/>
+ <dxl:Cost StartupCost="0" TotalCost="6.002573" Rows="4.000000" Width="36"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -362,7 +362,7 @@ Result (cost=0.00..8.00 rows=2 width=36)
<dxl:OneTimeFilter/>
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="6.002212" Rows="4.000000" Width="36"/>
+ <dxl:Cost StartupCost="0" TotalCost="6.002573" Rows="4.000000" Width="36"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -384,7 +384,7 @@ Result (cost=0.00..8.00 rows=2 width=36)
</dxl:SortingColumnList>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="6.001556" Rows="4.000000" Width="44"/>
+ <dxl:Cost StartupCost="0" TotalCost="6.001917" Rows="4.000000" Width="44"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -422,7 +422,7 @@ Result (cost=0.00..8.00 rows=2 width=36)
</dxl:ProjElem>
<dxl:ProjElem ColId="10" Alias="?column?">
<dxl:OpExpr OperatorName="<->" OperatorMdid="0.712.1.0" OperatorType="0.701.1.0">
- <dxl:ConstValue TypeMdid="0.604.1.0" Value="AAAAWAMAAAAAAAAAAMBVQAAAAAAAwFVAAAAAAABAVUAAAAAAAEBVQAAAAAAA gFVAAAAAAACAVUAAAAAAAEBVQAAAAAAAwFVAAAAAAADAVUAAAAAAAEBVQA=="/>
+ <dxl:ConstValue TypeMdid="0.604.1.0" Value="AAAAWAMAAAAAAAAAAMBVQAAAAAAAwFVAAAAAAABAVUAAAAAAAEBVQAAAAAAA
gFVAAAAAAACAVUAAAAAAAEBVQAAAAAAAwFVAAAAAAADAVUAAAAAAAEBVQA=="/>
<dxl:Ident ColId="1" ColName="p" TypeMdid="0.604.1.0"/>
</dxl:OpExpr>
</dxl:ProjElem>
@@ -447,16 +447,16 @@ Result (cost=0.00..8.00 rows=2 width=36)
<dxl:Filter>
<dxl:Comparison ComparisonOperator="<@" OperatorMdid="0.489.1.0">
<dxl:Ident ColId="1" ColName="p" TypeMdid="0.604.1.0"/>
- <dxl:ConstValue TypeMdid="0.604.1.0" Value="AAAAWAMAAAAAAAAAAMBVQAAAAAAAwFVAAAAAAABAVUAAAAAAAEBVQAAAAAAA gFVAAAAAAACAVUAAAAAAAEBVQAAAAAAAwFVAAAAAAADAVUAAAAAAAEBVQA=="/>
+ <dxl:ConstValue TypeMdid="0.604.1.0" Value="AAAAWAMAAAAAAAAAAMBVQAAAAAAAwFVAAAAAAABAVUAAAAAAAEBVQAAAAAAA
gFVAAAAAAACAVUAAAAAAAEBVQAAAAAAAwFVAAAAAAADAVUAAAAAAAEBVQA=="/>
</dxl:Comparison>
</dxl:Filter>
<dxl:IndexCondList>
<dxl:Comparison ComparisonOperator="<@" OperatorMdid="0.489.1.0">
<dxl:Ident ColId="1" ColName="p" TypeMdid="0.604.1.0"/>
- <dxl:ConstValue TypeMdid="0.604.1.0" Value="AAAAWAMAAAAAAAAAAMBVQAAAAAAAwFVAAAAAAABAVUAAAAAAAEBVQAAAAAAA gFVAAAAAAACAVUAAAAAAAEBVQAAAAAAAwFVAAAAAAADAVUAAAAAAAEBVQA=="/>
+ <dxl:ConstValue TypeMdid="0.604.1.0" Value="AAAAWAMAAAAAAAAAAMBVQAAAAAAAwFVAAAAAAABAVUAAAAAAAEBVQAAAAAAA
gFVAAAAAAACAVUAAAAAAAEBVQAAAAAAAwFVAAAAAAADAVUAAAAAAAEBVQA=="/>
</dxl:Comparison>
</dxl:IndexCondList>
- <dxl:Partitions/>
+ <dxl:Partitions/>
<dxl:IndexDescriptor Mdid="0.573475.1.0" IndexName="poly"/>
<dxl:TableDescriptor Mdid="6.573456.1.0" TableName="gist_tbl2">
<dxl:Columns>
diff --git a/src/backend/gporca/data/dxl/minidump/GroupingSets.mdp b/src/backend/gporca/data/dxl/minidump/GroupingSets.mdp
index a1f5d1c8e3..8931b21247 100644
--- a/src/backend/gporca/data/dxl/minidump/GroupingSets.mdp
+++ b/src/backend/gporca/data/dxl/minidump/GroupingSets.mdp
@@ -240,10 +240,10 @@
</dxl:UnionAll>
</dxl:LogicalCTEAnchor>
</dxl:Query>
- <dxl:Plan Id="0" SpaceSize="44">
+ <dxl:Plan Id="0" SpaceSize="220">
<dxl:Sequence>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1293.000205" Rows="2.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="1293.000386" Rows="2.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="19" Alias="a">
@@ -310,7 +310,7 @@
</dxl:CTEProducer>
<dxl:Append IsTarget="false" IsZapped="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000104" Rows="2.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000285" Rows="2.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="19" Alias="a">
@@ -323,7 +323,7 @@
<dxl:Filter/>
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000044" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000134" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="19" Alias="a">
@@ -337,7 +337,7 @@
<dxl:OneTimeFilter/>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000032" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000122" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="10"/>
@@ -358,7 +358,7 @@
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000019" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000110" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="9" Alias="a">
@@ -392,7 +392,7 @@
</dxl:Result>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000036" Rows="1.000000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000127" Rows="1.000000" Width="16"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="20"/>
@@ -413,7 +413,7 @@
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000019" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000110" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="20" Alias="a">
diff --git a/src/backend/gporca/data/dxl/minidump/IndexApply-Heterogeneous-NoDTS.mdp b/src/backend/gporca/data/dxl/minidump/IndexApply-Heterogeneous-NoDTS.mdp
index bca5cb9e47..9a78e53172 100644
--- a/src/backend/gporca/data/dxl/minidump/IndexApply-Heterogeneous-NoDTS.mdp
+++ b/src/backend/gporca/data/dxl/minidump/IndexApply-Heterogeneous-NoDTS.mdp
@@ -673,7 +673,7 @@ ORDER BY 1 asc ;
<dxl:Plan Id="0" SpaceSize="60">
<dxl:GatherMotion InputSegments="0,1" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="437.000794" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="437.000891" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="event_ts">
@@ -684,37 +684,37 @@ ORDER BY 1 asc ;
<dxl:SortingColumnList>
<dxl:SortingColumn ColId="1" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
</dxl:SortingColumnList>
- <dxl:Sort SortDiscardDuplicates="false">
+ <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="437.000776" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="437.000873" Rows="1.000000" Width="4"/>
</dxl:Properties>
+ <dxl:GroupingColumns>
+ <dxl:GroupingColumn ColId="1"/>
+ </dxl:GroupingColumns>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="event_ts">
<dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="1" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
+ <dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="437.000776" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="437.000864" Rows="1.000000" Width="8"/>
</dxl:Properties>
- <dxl:GroupingColumns>
- <dxl:GroupingColumn ColId="1"/>
- </dxl:GroupingColumns>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="event_ts">
<dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:Sort SortDiscardDuplicates="false">
+ <dxl:SortingColumnList>
+ <dxl:SortingColumn ColId="1" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
+ </dxl:SortingColumnList>
+ <dxl:LimitCount/>
+ <dxl:LimitOffset/>
+ <dxl:RedistributeMotion InputSegments="0,1" OutputSegments="0,1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="437.000771" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="437.000773" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="event_ts">
@@ -722,14 +722,15 @@ ORDER BY 1 asc ;
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="1" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:RedistributeMotion InputSegments="0,1" OutputSegments="0,1">
+ <dxl:SortingColumnList/>
+ <dxl:HashExprList>
+ <dxl:HashExpr>
+ <dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.23.1.0"/>
+ </dxl:HashExpr>
+ </dxl:HashExprList>
+ <dxl:NestedLoopJoin JoinType="Inner" IndexNestedLoopJoin="true" OuterRefAsParam="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="437.000771" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="437.000757" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="event_ts">
@@ -737,28 +738,23 @@ ORDER BY 1 asc ;
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList/>
- <dxl:HashExprList>
- <dxl:HashExpr>
- <dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.23.1.0"/>
- </dxl:HashExpr>
- </dxl:HashExprList>
- <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
+ <dxl:JoinFilter>
+ <dxl:ConstValue TypeMdid="0.16.1.0" Value="true"/>
+ </dxl:JoinFilter>
+ <dxl:BroadcastMotion InputSegments="0,1" OutputSegments="0,1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="437.000763" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000233" Rows="2.000000" Width="8"/>
</dxl:Properties>
- <dxl:GroupingColumns>
- <dxl:GroupingColumn ColId="1"/>
- </dxl:GroupingColumns>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="event_ts">
<dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:Sort SortDiscardDuplicates="false">
+ <dxl:SortingColumnList/>
+ <dxl:TableScan>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="437.000757" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000016" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="event_ts">
@@ -766,117 +762,75 @@ ORDER BY 1 asc ;
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="1" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:NestedLoopJoin JoinType="Inner" IndexNestedLoopJoin="true" OuterRefAsParam="false">
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="437.000757" Rows="1.000000" Width="8"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="1" Alias="event_ts">
- <dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:JoinFilter>
- <dxl:ConstValue TypeMdid="0.16.1.0" Value="true"/>
- </dxl:JoinFilter>
- <dxl:BroadcastMotion InputSegments="0,1" OutputSegments="0,1">
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000233" Rows="2.000000" Width="8"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="1" Alias="event_ts">
- <dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:SortingColumnList/>
- <dxl:TableScan>
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000016" Rows="1.000000" Width="8"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="1" Alias="event_ts">
- <dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:TableDescriptor Mdid="6.16032548.1.1" TableName="my_tt_agg_small">
- <dxl:Columns>
- <dxl:Column ColId="0" Attno="1" ColName="symbol" TypeMdid="0.1042.1.0" ColWidth="16"/>
- <dxl:Column ColId="1" Attno="2" ColName="event_ts" TypeMdid="0.23.1.0"/>
- <dxl:Column ColId="4" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0"/>
- <dxl:Column ColId="5" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0"/>
- <dxl:Column ColId="6" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0"/>
- <dxl:Column ColId="7" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0"/>
- <dxl:Column ColId="8" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0"/>
- <dxl:Column ColId="9" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0"/>
- <dxl:Column ColId="10" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:TableScan>
- </dxl:BroadcastMotion>
- <dxl:DynamicIndexScan IndexScanDirection="Forward" SelectorIds="">
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="6.000506" Rows="1.000000" Width="1"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="11" Alias="ets">
- <dxl:Ident ColId="11" ColName="ets" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="15" Alias="end_ts">
- <dxl:Ident ColId="15" ColName="end_ts" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter>
- <dxl:And>
- <dxl:Comparison ComparisonOperator="<=" OperatorMdid="0.523.1.0">
- <dxl:Ident ColId="11" ColName="ets" TypeMdid="0.23.1.0"/>
- <dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.23.1.0"/>
- </dxl:Comparison>
- <dxl:Comparison ComparisonOperator="<" OperatorMdid="0.97.1.0">
- <dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.23.1.0"/>
- <dxl:Ident ColId="15" ColName="end_ts" TypeMdid="0.23.1.0"/>
- </dxl:Comparison>
- </dxl:And>
- </dxl:Filter>
- <dxl:IndexCondList>
- <dxl:Comparison ComparisonOperator="<=" OperatorMdid="0.523.1.0">
- <dxl:Ident ColId="11" ColName="ets" TypeMdid="0.23.1.0"/>
- <dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.23.1.0"/>
- </dxl:Comparison>
- </dxl:IndexCondList>
- <dxl:Partitions>
- <dxl:Partition Mdid="6.-1147295183.1.1"/>
- <dxl:Partition Mdid="6.-1147295182.1.1"/>
- </dxl:Partitions>
- <dxl:IndexDescriptor Mdid="0.16032698.1.0" IndexName="my_tq_agg_small_part_ets_end_ts_ix_3"/>
- <dxl:TableDescriptor Mdid="6.16032574.1.1" TableName="my_tq_agg_small_part">
- <dxl:Columns>
- <dxl:Column ColId="11" Attno="1" ColName="ets" TypeMdid="0.23.1.0"/>
- <dxl:Column ColId="13" Attno="3" ColName="bid_price" TypeMdid="0.23.1.0"/>
- <dxl:Column ColId="15" Attno="5" ColName="end_ts" TypeMdid="0.23.1.0"/>
- <dxl:Column ColId="16" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0"/>
- <dxl:Column ColId="17" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0"/>
- <dxl:Column ColId="18" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0"/>
- <dxl:Column ColId="19" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0"/>
- <dxl:Column ColId="20" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0"/>
- <dxl:Column ColId="21" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0"/>
- <dxl:Column ColId="22" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:DynamicIndexScan>
- </dxl:NestedLoopJoin>
- </dxl:Sort>
- </dxl:Aggregate>
- </dxl:RedistributeMotion>
- </dxl:Sort>
- </dxl:Aggregate>
- </dxl:Sort>
+ <dxl:TableDescriptor Mdid="6.16032548.1.1" TableName="my_tt_agg_small">
+ <dxl:Columns>
+ <dxl:Column ColId="0" Attno="1" ColName="symbol" TypeMdid="0.1042.1.0" ColWidth="16"/>
+ <dxl:Column ColId="1" Attno="2" ColName="event_ts" TypeMdid="0.23.1.0"/>
+ <dxl:Column ColId="4" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0"/>
+ <dxl:Column ColId="5" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0"/>
+ <dxl:Column ColId="6" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0"/>
+ <dxl:Column ColId="7" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0"/>
+ <dxl:Column ColId="8" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0"/>
+ <dxl:Column ColId="9" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0"/>
+ <dxl:Column ColId="10" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:TableScan>
+ </dxl:BroadcastMotion>
+ <dxl:DynamicIndexScan IndexScanDirection="Forward" SelectorIds="">
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="6.000506" Rows="1.000000" Width="1"/>
+ </dxl:Properties>
+ <dxl:ProjList>
+ <dxl:ProjElem ColId="11" Alias="ets">
+ <dxl:Ident ColId="11" ColName="ets" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ <dxl:ProjElem ColId="15" Alias="end_ts">
+ <dxl:Ident ColId="15" ColName="end_ts" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ </dxl:ProjList>
+ <dxl:Filter>
+ <dxl:And>
+ <dxl:Comparison ComparisonOperator="<=" OperatorMdid="0.523.1.0">
+ <dxl:Ident ColId="11" ColName="ets" TypeMdid="0.23.1.0"/>
+ <dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.23.1.0"/>
+ </dxl:Comparison>
+ <dxl:Comparison ComparisonOperator="<" OperatorMdid="0.97.1.0">
+ <dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.23.1.0"/>
+ <dxl:Ident ColId="15" ColName="end_ts" TypeMdid="0.23.1.0"/>
+ </dxl:Comparison>
+ </dxl:And>
+ </dxl:Filter>
+ <dxl:IndexCondList>
+ <dxl:Comparison ComparisonOperator="<=" OperatorMdid="0.523.1.0">
+ <dxl:Ident ColId="11" ColName="ets" TypeMdid="0.23.1.0"/>
+ <dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.23.1.0"/>
+ </dxl:Comparison>
+ </dxl:IndexCondList>
+ <dxl:Partitions>
+ <dxl:Partition Mdid="6.-1147295183.1.1"/>
+ <dxl:Partition Mdid="6.-1147295182.1.1"/>
+ </dxl:Partitions>
+ <dxl:IndexDescriptor Mdid="0.16032698.1.0" IndexName="my_tq_agg_small_part_ets_end_ts_ix_3"/>
+ <dxl:TableDescriptor Mdid="6.16032574.1.1" TableName="my_tq_agg_small_part">
+ <dxl:Columns>
+ <dxl:Column ColId="11" Attno="1" ColName="ets" TypeMdid="0.23.1.0"/>
+ <dxl:Column ColId="13" Attno="3" ColName="bid_price" TypeMdid="0.23.1.0"/>
+ <dxl:Column ColId="15" Attno="5" ColName="end_ts" TypeMdid="0.23.1.0"/>
+ <dxl:Column ColId="16" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0"/>
+ <dxl:Column ColId="17" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0"/>
+ <dxl:Column ColId="18" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0"/>
+ <dxl:Column ColId="19" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0"/>
+ <dxl:Column ColId="20" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0"/>
+ <dxl:Column ColId="21" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0"/>
+ <dxl:Column ColId="22" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:DynamicIndexScan>
+ </dxl:NestedLoopJoin>
+ </dxl:RedistributeMotion>
+ </dxl:Sort>
+ </dxl:Aggregate>
</dxl:GatherMotion>
</dxl:Plan>
</dxl:Thread>
diff --git a/src/backend/gporca/data/dxl/minidump/IndexApply-PartTable.mdp b/src/backend/gporca/data/dxl/minidump/IndexApply-PartTable.mdp
index 578daed6d2..20f2070dad 100644
--- a/src/backend/gporca/data/dxl/minidump/IndexApply-PartTable.mdp
+++ b/src/backend/gporca/data/dxl/minidump/IndexApply-PartTable.mdp
@@ -1629,7 +1629,7 @@ ORDER BY 1 asc ;
<dxl:Plan Id="0" SpaceSize="35">
<dxl:GatherMotion InputSegments="0,1" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="2951.636128" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="2951.636219" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="23" Alias="fivemin">
@@ -1640,35 +1640,35 @@ ORDER BY 1 asc ;
<dxl:SortingColumnList>
<dxl:SortingColumn ColId="23" SortOperatorMdid="0.412.1.0" SortOperatorName="<" SortNullsFirst="false"/>
</dxl:SortingColumnList>
- <dxl:Sort SortDiscardDuplicates="false">
+ <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="2951.636092" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="2951.636183" Rows="1.000000" Width="8"/>
</dxl:Properties>
+ <dxl:GroupingColumns>
+ <dxl:GroupingColumn ColId="23"/>
+ </dxl:GroupingColumns>
<dxl:ProjList>
<dxl:ProjElem ColId="23" Alias="fivemin">
<dxl:Ident ColId="23" ColName="fivemin" TypeMdid="0.20.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="23" SortOperatorMdid="0.412.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
+ <dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="2951.636092" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="2951.636172" Rows="1.000000" Width="8"/>
</dxl:Properties>
- <dxl:GroupingColumns>
- <dxl:GroupingColumn ColId="23"/>
- </dxl:GroupingColumns>
<dxl:ProjList>
<dxl:ProjElem ColId="23" Alias="fivemin">
<dxl:Ident ColId="23" ColName="fivemin" TypeMdid="0.20.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:Sort SortDiscardDuplicates="false">
+ <dxl:SortingColumnList>
+ <dxl:SortingColumn ColId="23" SortOperatorMdid="0.412.1.0" SortOperatorName="<" SortNullsFirst="false"/>
+ </dxl:SortingColumnList>
+ <dxl:LimitCount/>
+ <dxl:LimitOffset/>
+ <dxl:RedistributeMotion InputSegments="0,1" OutputSegments="0,1">
<dxl:Properties>
<dxl:Cost StartupCost="0" TotalCost="2951.636082" Rows="1.000000" Width="8"/>
</dxl:Properties>
@@ -1678,63 +1678,62 @@ ORDER BY 1 asc ;
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="23" SortOperatorMdid="0.412.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:RedistributeMotion InputSegments="0,1" OutputSegments="0,1">
+ <dxl:SortingColumnList/>
+ <dxl:HashExprList>
+ <dxl:HashExpr>
+ <dxl:Ident ColId="23" ColName="fivemin" TypeMdid="0.20.1.0"/>
+ </dxl:HashExpr>
+ </dxl:HashExprList>
+ <dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="2951.636082" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="2951.636066" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="23" Alias="fivemin">
- <dxl:Ident ColId="23" ColName="fivemin" TypeMdid="0.20.1.0"/>
+ <dxl:OpExpr OperatorName="*" OperatorMdid="0.690.1.0" OperatorType="0.20.1.0">
+ <dxl:OpExpr OperatorName="/" OperatorMdid="0.691.1.0" OperatorType="0.20.1.0">
+ <dxl:OpExpr OperatorName="/" OperatorMdid="0.691.1.0" OperatorType="0.20.1.0">
+ <dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.20.1.0"/>
+ <dxl:ConstValue TypeMdid="0.23.1.0" Value="100000"/>
+ </dxl:OpExpr>
+ <dxl:ConstValue TypeMdid="0.23.1.0" Value="5"/>
+ </dxl:OpExpr>
+ <dxl:ConstValue TypeMdid="0.23.1.0" Value="5"/>
+ </dxl:OpExpr>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList/>
- <dxl:HashExprList>
- <dxl:HashExpr>
- <dxl:Ident ColId="23" ColName="fivemin" TypeMdid="0.20.1.0"/>
- </dxl:HashExpr>
- </dxl:HashExprList>
- <dxl:Result>
+ <dxl:OneTimeFilter/>
+ <dxl:NestedLoopJoin JoinType="Inner" IndexNestedLoopJoin="true" OuterRefAsParam="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="2951.636066" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="2951.636062" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
- <dxl:ProjElem ColId="23" Alias="fivemin">
- <dxl:OpExpr OperatorName="*" OperatorMdid="0.690.1.0" OperatorType="0.20.1.0">
- <dxl:OpExpr OperatorName="/" OperatorMdid="0.691.1.0" OperatorType="0.20.1.0">
- <dxl:OpExpr OperatorName="/" OperatorMdid="0.691.1.0" OperatorType="0.20.1.0">
- <dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.20.1.0"/>
- <dxl:ConstValue TypeMdid="0.23.1.0" Value="100000"/>
- </dxl:OpExpr>
- <dxl:ConstValue TypeMdid="0.23.1.0" Value="5"/>
- </dxl:OpExpr>
- <dxl:ConstValue TypeMdid="0.23.1.0" Value="5"/>
- </dxl:OpExpr>
+ <dxl:ProjElem ColId="1" Alias="event_ts">
+ <dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.20.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:OneTimeFilter/>
- <dxl:NestedLoopJoin JoinType="Inner" IndexNestedLoopJoin="true" OuterRefAsParam="false">
+ <dxl:JoinFilter>
+ <dxl:ConstValue TypeMdid="0.16.1.0" Value="true"/>
+ </dxl:JoinFilter>
+ <dxl:BroadcastMotion InputSegments="0,1" OutputSegments="0,1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="2951.636062" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.292687" Rows="840.000000" Width="25"/>
</dxl:Properties>
<dxl:ProjList>
+ <dxl:ProjElem ColId="0" Alias="symbol">
+ <dxl:Ident ColId="0" ColName="symbol" TypeMdid="0.1042.1.0"/>
+ </dxl:ProjElem>
<dxl:ProjElem ColId="1" Alias="event_ts">
<dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.20.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:JoinFilter>
- <dxl:ConstValue TypeMdid="0.16.1.0" Value="true"/>
- </dxl:JoinFilter>
- <dxl:BroadcastMotion InputSegments="0,1" OutputSegments="0,1">
+ <dxl:SortingColumnList/>
+ <dxl:TableScan>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.292687" Rows="840.000000" Width="25"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.008085" Rows="420.000000" Width="25"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="symbol">
@@ -1745,69 +1744,38 @@ ORDER BY 1 asc ;
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList/>
- <dxl:TableScan>
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.008085" Rows="420.000000" Width="25"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="0" Alias="symbol">
- <dxl:Ident ColId="0" ColName="symbol" TypeMdid="0.1042.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="1" Alias="event_ts">
- <dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.20.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:TableDescriptor Mdid="6.16166631.1.1" TableName="my_tt_agg_small">
- <dxl:Columns>
- <dxl:Column ColId="0" Attno="1" ColName="symbol" TypeMdid="0.1042.1.0" ColWidth="16"/>
- <dxl:Column ColId="1" Attno="2" ColName="event_ts" TypeMdid="0.20.1.0"/>
- <dxl:Column ColId="4" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0"/>
- <dxl:Column ColId="5" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0"/>
- <dxl:Column ColId="6" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0"/>
- <dxl:Column ColId="7" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0"/>
- <dxl:Column ColId="8" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0"/>
- <dxl:Column ColId="9" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0"/>
- <dxl:Column ColId="10" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:TableScan>
- </dxl:BroadcastMotion>
- <dxl:DynamicIndexScan IndexScanDirection="Forward" PartIndexId="0" PrintablePartIndexId="1" SelectorIds="">
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="2520.336966" Rows="1.000000" Width="1"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="11" Alias="ets">
- <dxl:Ident ColId="11" ColName="ets" TypeMdid="0.20.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="12" Alias="sym">
- <dxl:Ident ColId="12" ColName="sym" TypeMdid="0.1043.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="15" Alias="end_ts">
- <dxl:Ident ColId="15" ColName="end_ts" TypeMdid="0.20.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter>
- <dxl:And>
- <dxl:Comparison ComparisonOperator="<=" OperatorMdid="0.414.1.0">
- <dxl:Ident ColId="11" ColName="ets" TypeMdid="0.20.1.0"/>
- <dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.20.1.0"/>
- </dxl:Comparison>
- <dxl:Comparison ComparisonOperator=">" OperatorMdid="0.413.1.0">
- <dxl:Ident ColId="15" ColName="end_ts" TypeMdid="0.20.1.0"/>
- <dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.20.1.0"/>
- </dxl:Comparison>
- <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.1054.1.0">
- <dxl:Cast TypeMdid="0.1042.1.0" FuncId="0.0.0.0">
- <dxl:Ident ColId="12" ColName="sym" TypeMdid="0.1043.1.0"/>
- </dxl:Cast>
- <dxl:Ident ColId="0" ColName="symbol" TypeMdid="0.1042.1.0"/>
- </dxl:Comparison>
- </dxl:And>
- </dxl:Filter>
- <dxl:IndexCondList>
+ <dxl:TableDescriptor Mdid="6.16166631.1.1" TableName="my_tt_agg_small">
+ <dxl:Columns>
+ <dxl:Column ColId="0" Attno="1" ColName="symbol" TypeMdid="0.1042.1.0" ColWidth="16"/>
+ <dxl:Column ColId="1" Attno="2" ColName="event_ts" TypeMdid="0.20.1.0"/>
+ <dxl:Column ColId="4" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0"/>
+ <dxl:Column ColId="5" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0"/>
+ <dxl:Column ColId="6" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0"/>
+ <dxl:Column ColId="7" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0"/>
+ <dxl:Column ColId="8" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0"/>
+ <dxl:Column ColId="9" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0"/>
+ <dxl:Column ColId="10" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:TableScan>
+ </dxl:BroadcastMotion>
+ <dxl:DynamicIndexScan IndexScanDirection="Forward" SelectorIds="">
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="2520.336966" Rows="1.000000" Width="1"/>
+ </dxl:Properties>
+ <dxl:ProjList>
+ <dxl:ProjElem ColId="11" Alias="ets">
+ <dxl:Ident ColId="11" ColName="ets" TypeMdid="0.20.1.0"/>
+ </dxl:ProjElem>
+ <dxl:ProjElem ColId="12" Alias="sym">
+ <dxl:Ident ColId="12" ColName="sym" TypeMdid="0.1043.1.0"/>
+ </dxl:ProjElem>
+ <dxl:ProjElem ColId="15" Alias="end_ts">
+ <dxl:Ident ColId="15" ColName="end_ts" TypeMdid="0.20.1.0"/>
+ </dxl:ProjElem>
+ </dxl:ProjList>
+ <dxl:Filter>
+ <dxl:And>
<dxl:Comparison ComparisonOperator="<=" OperatorMdid="0.414.1.0">
<dxl:Ident ColId="11" ColName="ets" TypeMdid="0.20.1.0"/>
<dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.20.1.0"/>
@@ -1816,35 +1784,51 @@ ORDER BY 1 asc ;
<dxl:Ident ColId="15" ColName="end_ts" TypeMdid="0.20.1.0"/>
<dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.20.1.0"/>
</dxl:Comparison>
- </dxl:IndexCondList>
- <dxl:Partitions>
- <dxl:Partition Mdid="6.-1013210183.1.1"/>
- <dxl:Partition Mdid="6.-1013210182.1.1"/>
- <dxl:Partition Mdid="6.-1013210181.1.1"/>
- </dxl:Partitions>
- <dxl:IndexDescriptor Mdid="0.16166830.1.0" IndexName="my_tq_agg_small_ets_end_ts_ix_1_prt_p1"/>
- <dxl:TableDescriptor Mdid="6.16166659.1.1" TableName="my_tq_agg_small">
- <dxl:Columns>
- <dxl:Column ColId="11" Attno="1" ColName="ets" TypeMdid="0.20.1.0"/>
- <dxl:Column ColId="12" Attno="2" ColName="sym" TypeMdid="0.1043.1.0" ColWidth="16"/>
- <dxl:Column ColId="13" Attno="3" ColName="bid_price" TypeMdid="0.1700.1.0"/>
- <dxl:Column ColId="15" Attno="5" ColName="end_ts" TypeMdid="0.20.1.0"/>
- <dxl:Column ColId="16" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0"/>
- <dxl:Column ColId="17" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0"/>
- <dxl:Column ColId="18" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0"/>
- <dxl:Column ColId="19" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0"/>
- <dxl:Column ColId="20" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0"/>
- <dxl:Column ColId="21" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0"/>
- <dxl:Column ColId="22" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:DynamicIndexScan>
- </dxl:NestedLoopJoin>
- </dxl:Result>
- </dxl:RedistributeMotion>
- </dxl:Sort>
- </dxl:Aggregate>
- </dxl:Sort>
+ <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.1054.1.0">
+ <dxl:Cast TypeMdid="0.1042.1.0" FuncId="0.0.0.0">
+ <dxl:Ident ColId="12" ColName="sym" TypeMdid="0.1043.1.0"/>
+ </dxl:Cast>
+ <dxl:Ident ColId="0" ColName="symbol" TypeMdid="0.1042.1.0"/>
+ </dxl:Comparison>
+ </dxl:And>
+ </dxl:Filter>
+ <dxl:IndexCondList>
+ <dxl:Comparison ComparisonOperator="<=" OperatorMdid="0.414.1.0">
+ <dxl:Ident ColId="11" ColName="ets" TypeMdid="0.20.1.0"/>
+ <dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.20.1.0"/>
+ </dxl:Comparison>
+ <dxl:Comparison ComparisonOperator=">" OperatorMdid="0.413.1.0">
+ <dxl:Ident ColId="15" ColName="end_ts" TypeMdid="0.20.1.0"/>
+ <dxl:Ident ColId="1" ColName="event_ts" TypeMdid="0.20.1.0"/>
+ </dxl:Comparison>
+ </dxl:IndexCondList>
+ <dxl:Partitions>
+ <dxl:Partition Mdid="6.-1013210183.1.1"/>
+ <dxl:Partition Mdid="6.-1013210182.1.1"/>
+ <dxl:Partition Mdid="6.-1013210181.1.1"/>
+ </dxl:Partitions>
+ <dxl:IndexDescriptor Mdid="0.16166830.1.0" IndexName="my_tq_agg_small_ets_end_ts_ix_1_prt_p1"/>
+ <dxl:TableDescriptor Mdid="6.16166659.1.1" TableName="my_tq_agg_small">
+ <dxl:Columns>
+ <dxl:Column ColId="11" Attno="1" ColName="ets" TypeMdid="0.20.1.0"/>
+ <dxl:Column ColId="12" Attno="2" ColName="sym" TypeMdid="0.1043.1.0" ColWidth="16"/>
+ <dxl:Column ColId="13" Attno="3" ColName="bid_price" TypeMdid="0.1700.1.0"/>
+ <dxl:Column ColId="15" Attno="5" ColName="end_ts" TypeMdid="0.20.1.0"/>
+ <dxl:Column ColId="16" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0"/>
+ <dxl:Column ColId="17" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0"/>
+ <dxl:Column ColId="18" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0"/>
+ <dxl:Column ColId="19" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0"/>
+ <dxl:Column ColId="20" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0"/>
+ <dxl:Column ColId="21" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0"/>
+ <dxl:Column ColId="22" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:DynamicIndexScan>
+ </dxl:NestedLoopJoin>
+ </dxl:Result>
+ </dxl:RedistributeMotion>
+ </dxl:Sort>
+ </dxl:Aggregate>
</dxl:GatherMotion>
</dxl:Plan>
</dxl:Thread>
diff --git a/src/backend/gporca/data/dxl/minidump/IndexScan-OrderBy-on-MultiCol-NonIndex.mdp b/src/backend/gporca/data/dxl/minidump/IndexScan-OrderBy-on-MultiCol-NonIndex.mdp
index 9eaca1cd19..912f4ac405 100644
--- a/src/backend/gporca/data/dxl/minidump/IndexScan-OrderBy-on-MultiCol-NonIndex.mdp
+++ b/src/backend/gporca/data/dxl/minidump/IndexScan-OrderBy-on-MultiCol-NonIndex.mdp
@@ -334,7 +334,7 @@
<dxl:Plan Id="0" SpaceSize="4">
<dxl:Limit>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000182" Rows="1.000000" Width="32"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000545" Rows="1.000000" Width="32"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -355,7 +355,7 @@
</dxl:ProjList>
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000150" Rows="1.000000" Width="32"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000513" Rows="1.000000" Width="32"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -382,7 +382,7 @@
</dxl:SortingColumnList>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000031" Rows="1.000000" Width="32"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000394" Rows="1.000000" Width="32"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
diff --git a/src/backend/gporca/data/dxl/minidump/InferPredicates.mdp b/src/backend/gporca/data/dxl/minidump/InferPredicates.mdp
index bb585e96aa..dd3ea767d0 100644
--- a/src/backend/gporca/data/dxl/minidump/InferPredicates.mdp
+++ b/src/backend/gporca/data/dxl/minidump/InferPredicates.mdp
@@ -419,7 +419,7 @@ explain select 1+row_number() over(partition by foo.c) from foo, bar where foo.a
<dxl:Plan Id="0" SpaceSize="8">
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000549" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000594" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="21" Alias="?column?">
@@ -430,7 +430,7 @@ explain select 1+row_number() over(partition by foo.c) from foo, bar where foo.a
<dxl:SortingColumnList/>
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000519" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000565" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="21" Alias="?column?">
@@ -444,7 +444,7 @@ explain select 1+row_number() over(partition by foo.c) from foo, bar where foo.a
<dxl:OneTimeFilter/>
<dxl:Window PartitionColumns="2">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000517" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000562" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="20" Alias="row_number">
@@ -457,7 +457,7 @@ explain select 1+row_number() over(partition by foo.c) from foo, bar where foo.a
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000517" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000562" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="2" Alias="c">
@@ -503,7 +503,7 @@ explain select 1+row_number() over(partition by foo.c) from foo, bar where foo.a
<dxl:Ident ColId="10" ColName="d" TypeMdid="0.23.1.0"/>
</dxl:Comparison>
</dxl:HashCondList>
- <dxl:DynamicTableScan PartIndexId="1" SelectorIds="0">
+ <dxl:DynamicTableScan SelectorIds="0">
<dxl:Properties>
<dxl:Cost StartupCost="0" TotalCost="431.000071" Rows="1.000000" Width="8"/>
</dxl:Properties>
@@ -553,7 +553,7 @@ explain select 1+row_number() over(partition by foo.c) from foo, bar where foo.a
<dxl:Ident ColId="10" ColName="d" TypeMdid="0.23.1.0"/>
</dxl:Comparison>
</dxl:PartFilterExpr>
- <dxl:DynamicTableScan PartIndexId="2" SelectorIds="">
+ <dxl:DynamicTableScan SelectorIds="">
<dxl:Properties>
<dxl:Cost StartupCost="0" TotalCost="431.000063" Rows="1.000000" Width="4"/>
</dxl:Properties>
@@ -591,7 +591,7 @@ explain select 1+row_number() over(partition by foo.c) from foo, bar where foo.a
<dxl:WindowKeyList>
<dxl:WindowKey>
<dxl:SortingColumnList/>
- <dxl:WindowFrame FrameSpec="Range" ExclusionStrategy="Nulls">
+ <dxl:WindowFrame FrameSpec="Range" ExclusionStrategy="Nulls" StartInRange="0" EndInRange="0" InRangeColl="0" InRangeAsc="false" InRangeNullsFirst="false">
<dxl:TrailingEdge TrailingBoundary="UnboundedPreceding"/>
<dxl:LeadingEdge LeadingBoundary="CurrentRow"/>
</dxl:WindowFrame>
diff --git a/src/backend/gporca/data/dxl/minidump/InferPredicatesForPartSQ.mdp b/src/backend/gporca/data/dxl/minidump/InferPredicatesForPartSQ.mdp
index 6c4d7d43c9..92aa470df6 100644
--- a/src/backend/gporca/data/dxl/minidump/InferPredicatesForPartSQ.mdp
+++ b/src/backend/gporca/data/dxl/minidump/InferPredicatesForPartSQ.mdp
@@ -475,7 +475,7 @@
<dxl:Plan Id="0" SpaceSize="173">
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000973" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.001064" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -489,7 +489,7 @@
<dxl:SortingColumnList/>
<dxl:HashJoin JoinType="In">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000943" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.001034" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -565,7 +565,7 @@
</dxl:RedistributeMotion>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000106" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000197" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="10"/>
@@ -588,7 +588,7 @@
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000094" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000184" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="9" Alias="a">
diff --git a/src/backend/gporca/data/dxl/minidump/InferPredicatesFromExistsSubquery.mdp b/src/backend/gporca/data/dxl/minidump/InferPredicatesFromExistsSubquery.mdp
index 06d1dd24f2..9cd497a6b8 100644
--- a/src/backend/gporca/data/dxl/minidump/InferPredicatesFromExistsSubquery.mdp
+++ b/src/backend/gporca/data/dxl/minidump/InferPredicatesFromExistsSubquery.mdp
@@ -329,7 +329,7 @@
</dxl:LogicalGet>
</dxl:LogicalSelect>
</dxl:Query>
- <dxl:Plan Id="0" SpaceSize="648">
+ <dxl:Plan Id="0" SpaceSize="986">
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
<dxl:Cost StartupCost="0" TotalCost="862.000984" Rows="1.000000" Width="8"/>
diff --git a/src/backend/gporca/data/dxl/minidump/InferPredicatesIntFromSubquery.mdp b/src/backend/gporca/data/dxl/minidump/InferPredicatesIntFromSubquery.mdp
index a8f5408edc..ebbaef94f5 100644
--- a/src/backend/gporca/data/dxl/minidump/InferPredicatesIntFromSubquery.mdp
+++ b/src/backend/gporca/data/dxl/minidump/InferPredicatesIntFromSubquery.mdp
@@ -318,7 +318,7 @@
</dxl:LogicalGet>
</dxl:LogicalSelect>
</dxl:Query>
- <dxl:Plan Id="0" SpaceSize="40">
+ <dxl:Plan Id="0" SpaceSize="196">
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
<dxl:Cost StartupCost="0" TotalCost="862.000911" Rows="1.000000" Width="8"/>
diff --git a/src/backend/gporca/data/dxl/minidump/InnerJoinBroadcastTableHashSpec.mdp b/src/backend/gporca/data/dxl/minidump/InnerJoinBroadcastTableHashSpec.mdp
index ff1196ac13..cda0336512 100644
--- a/src/backend/gporca/data/dxl/minidump/InnerJoinBroadcastTableHashSpec.mdp
+++ b/src/backend/gporca/data/dxl/minidump/InnerJoinBroadcastTableHashSpec.mdp
@@ -338,10 +338,10 @@ EXPLAIN SELECT b2, sum(c1) FROM t1, t2 WHERE a1 = b2 GROUP BY b2 ORDER BY b2;
</dxl:LogicalGroupBy>
</dxl:LogicalLimit>
</dxl:Query>
- <dxl:Plan Id="0" SpaceSize="50">
+ <dxl:Plan Id="0" SpaceSize="210">
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000572" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000663" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="11" Alias="b2">
@@ -355,48 +355,48 @@ EXPLAIN SELECT b2, sum(c1) FROM t1, t2 WHERE a1 = b2 GROUP BY b2 ORDER BY b2;
<dxl:SortingColumnList>
<dxl:SortingColumn ColId="11" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
</dxl:SortingColumnList>
- <dxl:Sort SortDiscardDuplicates="false">
+ <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000527" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000618" Rows="1.000000" Width="12"/>
</dxl:Properties>
+ <dxl:GroupingColumns>
+ <dxl:GroupingColumn ColId="11"/>
+ </dxl:GroupingColumns>
<dxl:ProjList>
<dxl:ProjElem ColId="11" Alias="b2">
<dxl:Ident ColId="11" ColName="b2" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
<dxl:ProjElem ColId="20" Alias="sum">
- <dxl:Ident ColId="20" ColName="sum" TypeMdid="0.20.1.0"/>
+ <dxl:AggFunc AggMdid="0.2108.1.0" AggDistinct="false" AggStage="Normal" AggKind="n" AggArgTypes="23">
+ <dxl:ValuesList ParamType="aggargs">
+ <dxl:Ident ColId="2" ColName="c1" TypeMdid="0.23.1.0"/>
+ </dxl:ValuesList>
+ <dxl:ValuesList ParamType="aggdirectargs"/>
+ <dxl:ValuesList ParamType="aggorder"/>
+ <dxl:ValuesList ParamType="aggdistinct"/>
+ </dxl:AggFunc>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="11" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
+ <dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000527" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000608" Rows="1.000000" Width="8"/>
</dxl:Properties>
- <dxl:GroupingColumns>
- <dxl:GroupingColumn ColId="11"/>
- </dxl:GroupingColumns>
<dxl:ProjList>
+ <dxl:ProjElem ColId="2" Alias="c1">
+ <dxl:Ident ColId="2" ColName="c1" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
<dxl:ProjElem ColId="11" Alias="b2">
<dxl:Ident ColId="11" ColName="b2" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
- <dxl:ProjElem ColId="20" Alias="sum">
- <dxl:AggFunc AggMdid="0.2108.1.0" AggDistinct="false" AggStage="Normal" AggKind="n" AggArgTypes="23">
- <dxl:ValuesList ParamType="aggargs">
- <dxl:Ident ColId="2" ColName="c1" TypeMdid="0.23.1.0"/>
- </dxl:ValuesList>
- <dxl:ValuesList ParamType="aggdirectargs"/>
- <dxl:ValuesList ParamType="aggorder"/>
- <dxl:ValuesList ParamType="aggdistinct"/>
- </dxl:AggFunc>
- </dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:Sort SortDiscardDuplicates="false">
+ <dxl:SortingColumnList>
+ <dxl:SortingColumn ColId="11" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
+ </dxl:SortingColumnList>
+ <dxl:LimitCount/>
+ <dxl:LimitOffset/>
+ <dxl:HashJoin JoinType="Inner">
<dxl:Properties>
<dxl:Cost StartupCost="0" TotalCost="862.000517" Rows="1.000000" Width="8"/>
</dxl:Properties>
@@ -409,98 +409,79 @@ EXPLAIN SELECT b2, sum(c1) FROM t1, t2 WHERE a1 = b2 GROUP BY b2 ORDER BY b2;
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="11" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:HashJoin JoinType="Inner">
+ <dxl:JoinFilter/>
+ <dxl:HashCondList>
+ <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
+ <dxl:Ident ColId="0" ColName="a1" TypeMdid="0.23.1.0"/>
+ <dxl:Ident ColId="11" ColName="b2" TypeMdid="0.23.1.0"/>
+ </dxl:Comparison>
+ </dxl:HashCondList>
+ <dxl:TableScan>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000517" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000023" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
+ <dxl:ProjElem ColId="0" Alias="a1">
+ <dxl:Ident ColId="0" ColName="a1" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
<dxl:ProjElem ColId="2" Alias="c1">
<dxl:Ident ColId="2" ColName="c1" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
+ </dxl:ProjList>
+ <dxl:Filter/>
+ <dxl:TableDescriptor Mdid="6.16385.1.0" TableName="t1" LockMode="1">
+ <dxl:Columns>
+ <dxl:Column ColId="0" Attno="1" ColName="a1" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="2" Attno="3" ColName="c1" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="3" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
+ <dxl:Column ColId="4" Attno="-2" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="5" Attno="-3" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="6" Attno="-4" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="7" Attno="-5" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="8" Attno="-6" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
+ <dxl:Column ColId="9" Attno="-7" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:TableScan>
+ <dxl:BroadcastMotion InputSegments="0,1,2" OutputSegments="0,1,2">
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="431.000082" Rows="3.000000" Width="4"/>
+ </dxl:Properties>
+ <dxl:ProjList>
<dxl:ProjElem ColId="11" Alias="b2">
<dxl:Ident ColId="11" ColName="b2" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:JoinFilter/>
- <dxl:HashCondList>
- <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
- <dxl:Ident ColId="0" ColName="a1" TypeMdid="0.23.1.0"/>
- <dxl:Ident ColId="11" ColName="b2" TypeMdid="0.23.1.0"/>
- </dxl:Comparison>
- </dxl:HashCondList>
+ <dxl:SortingColumnList/>
<dxl:TableScan>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000023" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000008" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
- <dxl:ProjElem ColId="0" Alias="a1">
- <dxl:Ident ColId="0" ColName="a1" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="2" Alias="c1">
- <dxl:Ident ColId="2" ColName="c1" TypeMdid="0.23.1.0"/>
+ <dxl:ProjElem ColId="11" Alias="b2">
+ <dxl:Ident ColId="11" ColName="b2" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:TableDescriptor Mdid="6.16385.1.0" TableName="t1" LockMode="1">
+ <dxl:TableDescriptor Mdid="6.16388.1.0" TableName="t2" LockMode="1">
<dxl:Columns>
- <dxl:Column ColId="0" Attno="1" ColName="a1" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="2" Attno="3" ColName="c1" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="3" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
- <dxl:Column ColId="4" Attno="-2" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="5" Attno="-3" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="6" Attno="-4" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="7" Attno="-5" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="8" Attno="-6" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
- <dxl:Column ColId="9" Attno="-7" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="10" Attno="1" ColName="a2" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="11" Attno="2" ColName="b2" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="13" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
+ <dxl:Column ColId="14" Attno="-2" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="15" Attno="-3" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="16" Attno="-4" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="17" Attno="-5" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="18" Attno="-6" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
+ <dxl:Column ColId="19" Attno="-7" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
</dxl:Columns>
</dxl:TableDescriptor>
</dxl:TableScan>
- <dxl:BroadcastMotion InputSegments="0,1,2" OutputSegments="0,1,2">
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000082" Rows="3.000000" Width="4"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="11" Alias="b2">
- <dxl:Ident ColId="11" ColName="b2" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:SortingColumnList/>
- <dxl:TableScan>
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000008" Rows="1.000000" Width="4"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="11" Alias="b2">
- <dxl:Ident ColId="11" ColName="b2" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:TableDescriptor Mdid="6.16388.1.0" TableName="t2" LockMode="1">
- <dxl:Columns>
- <dxl:Column ColId="10" Attno="1" ColName="a2" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="11" Attno="2" ColName="b2" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="13" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
- <dxl:Column ColId="14" Attno="-2" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="15" Attno="-3" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="16" Attno="-4" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="17" Attno="-5" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="18" Attno="-6" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
- <dxl:Column ColId="19" Attno="-7" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:TableScan>
- </dxl:BroadcastMotion>
- </dxl:HashJoin>
- </dxl:Sort>
- </dxl:Aggregate>
- </dxl:Sort>
+ </dxl:BroadcastMotion>
+ </dxl:HashJoin>
+ </dxl:Sort>
+ </dxl:Aggregate>
</dxl:GatherMotion>
</dxl:Plan>
</dxl:Thread>
diff --git a/src/backend/gporca/data/dxl/minidump/InnerJoinOverJoinExcept.mdp b/src/backend/gporca/data/dxl/minidump/InnerJoinOverJoinExcept.mdp
index 578666f025..44b4650abf 100644
--- a/src/backend/gporca/data/dxl/minidump/InnerJoinOverJoinExcept.mdp
+++ b/src/backend/gporca/data/dxl/minidump/InnerJoinOverJoinExcept.mdp
@@ -289,7 +289,7 @@ ON (a.col = b.col);
<dxl:Plan Id="0" SpaceSize="1248">
<dxl:DMLInsert Columns="0" ActionCol="32" CtidCol="0" SegmentIdCol="0">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1724.011396" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="1724.011435" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:DirectDispatchInfo/>
<dxl:ProjList>
@@ -311,7 +311,7 @@ ON (a.col = b.col);
</dxl:TableDescriptor>
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1724.000980" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="1724.001019" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="col">
@@ -325,7 +325,7 @@ ON (a.col = b.col);
<dxl:OneTimeFilter/>
<dxl:HashJoin JoinType="Inner">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1724.000977" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="1724.001016" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="col">
@@ -363,9 +363,9 @@ ON (a.col = b.col);
</dxl:Columns>
</dxl:TableDescriptor>
</dxl:TableScan>
- <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
+ <dxl:Aggregate AggregationStrategy="Hashed" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1293.000706" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="1293.000745" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="8"/>
@@ -376,7 +376,7 @@ ON (a.col = b.col);
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:Sort SortDiscardDuplicates="false">
+ <dxl:HashJoin JoinType="LeftAntiSemiJoin">
<dxl:Properties>
<dxl:Cost StartupCost="0" TotalCost="1293.000704" Rows="1.000000" Width="4"/>
</dxl:Properties>
@@ -386,14 +386,18 @@ ON (a.col = b.col);
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="8" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:HashJoin JoinType="LeftAntiSemiJoin">
+ <dxl:JoinFilter/>
+ <dxl:HashCondList>
+ <dxl:Not>
+ <dxl:IsDistinctFrom OperatorMdid="0.96.1.0">
+ <dxl:Ident ColId="8" ColName="col" TypeMdid="0.23.1.0"/>
+ <dxl:Ident ColId="24" ColName="col" TypeMdid="0.23.1.0"/>
+ </dxl:IsDistinctFrom>
+ </dxl:Not>
+ </dxl:HashCondList>
+ <dxl:HashJoin JoinType="Inner">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1293.000704" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000424" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="8" Alias="col">
@@ -403,16 +407,14 @@ ON (a.col = b.col);
<dxl:Filter/>
<dxl:JoinFilter/>
<dxl:HashCondList>
- <dxl:Not>
- <dxl:IsDistinctFrom OperatorMdid="0.96.1.0">
- <dxl:Ident ColId="8" ColName="col" TypeMdid="0.23.1.0"/>
- <dxl:Ident ColId="24" ColName="col" TypeMdid="0.23.1.0"/>
- </dxl:IsDistinctFrom>
- </dxl:Not>
+ <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
+ <dxl:Ident ColId="8" ColName="col" TypeMdid="0.23.1.0"/>
+ <dxl:Ident ColId="16" ColName="col" TypeMdid="0.23.1.0"/>
+ </dxl:Comparison>
</dxl:HashCondList>
- <dxl:HashJoin JoinType="Inner">
+ <dxl:TableScan>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000424" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000019" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="8" Alias="col">
@@ -420,85 +422,67 @@ ON (a.col = b.col);
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:JoinFilter/>
- <dxl:HashCondList>
- <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
- <dxl:Ident ColId="8" ColName="col" TypeMdid="0.23.1.0"/>
- <dxl:Ident ColId="16" ColName="col" TypeMdid="0.23.1.0"/>
- </dxl:Comparison>
- </dxl:HashCondList>
- <dxl:TableScan>
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000019" Rows="1.000000" Width="4"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="8" Alias="col">
- <dxl:Ident ColId="8" ColName="col" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:TableDescriptor Mdid="6.16385.1.0" TableName="mytable" LockMode="1">
- <dxl:Columns>
- <dxl:Column ColId="8" Attno="1" ColName="col" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="9" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
- <dxl:Column ColId="10" Attno="-2" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="11" Attno="-3" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="12" Attno="-4" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="13" Attno="-5" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="14" Attno="-6" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
- <dxl:Column ColId="15" Attno="-7" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:TableScan>
- <dxl:TableScan>
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000019" Rows="1.000000" Width="4"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="16" Alias="col">
- <dxl:Ident ColId="16" ColName="col" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:TableDescriptor Mdid="6.16385.1.0" TableName="mytable" LockMode="1">
- <dxl:Columns>
- <dxl:Column ColId="16" Attno="1" ColName="col" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="17" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
- <dxl:Column ColId="18" Attno="-2" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="19" Attno="-3" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="20" Attno="-4" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="21" Attno="-5" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="22" Attno="-6" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
- <dxl:Column ColId="23" Attno="-7" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:TableScan>
- </dxl:HashJoin>
+ <dxl:TableDescriptor Mdid="6.16385.1.0" TableName="mytable" LockMode="1">
+ <dxl:Columns>
+ <dxl:Column ColId="8" Attno="1" ColName="col" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="9" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
+ <dxl:Column ColId="10" Attno="-2" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="11" Attno="-3" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="12" Attno="-4" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="13" Attno="-5" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="14" Attno="-6" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
+ <dxl:Column ColId="15" Attno="-7" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:TableScan>
<dxl:TableScan>
<dxl:Properties>
<dxl:Cost StartupCost="0" TotalCost="431.000019" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
- <dxl:ProjElem ColId="24" Alias="col">
- <dxl:Ident ColId="24" ColName="col" TypeMdid="0.23.1.0"/>
+ <dxl:ProjElem ColId="16" Alias="col">
+ <dxl:Ident ColId="16" ColName="col" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
<dxl:TableDescriptor Mdid="6.16385.1.0" TableName="mytable" LockMode="1">
<dxl:Columns>
- <dxl:Column ColId="24" Attno="1" ColName="col" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="25" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
- <dxl:Column ColId="26" Attno="-2" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="27" Attno="-3" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="28" Attno="-4" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="29" Attno="-5" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="30" Attno="-6" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
- <dxl:Column ColId="31" Attno="-7" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="16" Attno="1" ColName="col" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="17" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
+ <dxl:Column ColId="18" Attno="-2" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="19" Attno="-3" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="20" Attno="-4" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="21" Attno="-5" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="22" Attno="-6" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
+ <dxl:Column ColId="23" Attno="-7" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
</dxl:Columns>
</dxl:TableDescriptor>
</dxl:TableScan>
</dxl:HashJoin>
- </dxl:Sort>
+ <dxl:TableScan>
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="431.000019" Rows="1.000000" Width="4"/>
+ </dxl:Properties>
+ <dxl:ProjList>
+ <dxl:ProjElem ColId="24" Alias="col">
+ <dxl:Ident ColId="24" ColName="col" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ </dxl:ProjList>
+ <dxl:Filter/>
+ <dxl:TableDescriptor Mdid="6.16385.1.0" TableName="mytable" LockMode="1">
+ <dxl:Columns>
+ <dxl:Column ColId="24" Attno="1" ColName="col" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="25" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
+ <dxl:Column ColId="26" Attno="-2" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="27" Attno="-3" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="28" Attno="-4" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="29" Attno="-5" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="30" Attno="-6" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
+ <dxl:Column ColId="31" Attno="-7" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:TableScan>
+ </dxl:HashJoin>
</dxl:Aggregate>
</dxl:HashJoin>
</dxl:Result>
diff --git a/src/backend/gporca/data/dxl/minidump/InnerJoinOverJoinExceptAll.mdp b/src/backend/gporca/data/dxl/minidump/InnerJoinOverJoinExceptAll.mdp
index d4b25ee3f1..ad4c7ac86b 100644
--- a/src/backend/gporca/data/dxl/minidump/InnerJoinOverJoinExceptAll.mdp
+++ b/src/backend/gporca/data/dxl/minidump/InnerJoinOverJoinExceptAll.mdp
@@ -327,7 +327,7 @@ ON (a.col = b.col);
<dxl:Plan Id="0" SpaceSize="1127">
<dxl:DMLInsert Columns="0" ActionCol="34" CtidCol="0" SegmentIdCol="0">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1724.011735" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="1724.011826" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:DirectDispatchInfo/>
<dxl:ProjList>
@@ -349,7 +349,7 @@ ON (a.col = b.col);
</dxl:TableDescriptor>
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1724.001319" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="1724.001410" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="col">
@@ -363,7 +363,7 @@ ON (a.col = b.col);
<dxl:OneTimeFilter/>
<dxl:HashJoin JoinType="Inner">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1724.001316" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="1724.001407" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="col">
@@ -403,7 +403,7 @@ ON (a.col = b.col);
</dxl:TableScan>
<dxl:HashJoin JoinType="LeftAntiSemiJoin">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1293.001045" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="1293.001136" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="8" Alias="col">
@@ -428,7 +428,7 @@ ON (a.col = b.col);
</dxl:HashCondList>
<dxl:Window PartitionColumns="8">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000424" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000469" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="32" Alias="row_number">
@@ -441,7 +441,7 @@ ON (a.col = b.col);
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000424" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000469" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="8" Alias="col">
@@ -527,7 +527,7 @@ ON (a.col = b.col);
</dxl:Window>
<dxl:Window PartitionColumns="24">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000026" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000071" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="33" Alias="row_number">
@@ -540,7 +540,7 @@ ON (a.col = b.col);
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000026" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000071" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="24" Alias="col">
diff --git a/src/backend/gporca/data/dxl/minidump/InnerJoinReplicatedTableHashSpec.mdp b/src/backend/gporca/data/dxl/minidump/InnerJoinReplicatedTableHashSpec.mdp
index 725f6a8a40..fd2d4e3016 100644
--- a/src/backend/gporca/data/dxl/minidump/InnerJoinReplicatedTableHashSpec.mdp
+++ b/src/backend/gporca/data/dxl/minidump/InnerJoinReplicatedTableHashSpec.mdp
@@ -339,7 +339,7 @@ EXPLAIN SELECT b2, sum(c1) FROM t1, t2 WHERE a1 = b2 GROUP BY b2 ORDER BY b2;
<dxl:Plan Id="0" SpaceSize="255">
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000465" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000556" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="11" Alias="b2">
@@ -353,48 +353,48 @@ EXPLAIN SELECT b2, sum(c1) FROM t1, t2 WHERE a1 = b2 GROUP BY b2 ORDER BY b2;
<dxl:SortingColumnList>
<dxl:SortingColumn ColId="11" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
</dxl:SortingColumnList>
- <dxl:Sort SortDiscardDuplicates="false">
+ <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000421" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000511" Rows="1.000000" Width="12"/>
</dxl:Properties>
+ <dxl:GroupingColumns>
+ <dxl:GroupingColumn ColId="11"/>
+ </dxl:GroupingColumns>
<dxl:ProjList>
<dxl:ProjElem ColId="11" Alias="b2">
<dxl:Ident ColId="11" ColName="b2" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
<dxl:ProjElem ColId="20" Alias="sum">
- <dxl:Ident ColId="20" ColName="sum" TypeMdid="0.20.1.0"/>
+ <dxl:AggFunc AggMdid="0.2108.1.0" AggDistinct="false" AggStage="Normal" AggKind="n" AggArgTypes="23">
+ <dxl:ValuesList ParamType="aggargs">
+ <dxl:Ident ColId="2" ColName="c1" TypeMdid="0.23.1.0"/>
+ </dxl:ValuesList>
+ <dxl:ValuesList ParamType="aggdirectargs"/>
+ <dxl:ValuesList ParamType="aggorder"/>
+ <dxl:ValuesList ParamType="aggdistinct"/>
+ </dxl:AggFunc>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="11" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
+ <dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000421" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000501" Rows="1.000000" Width="8"/>
</dxl:Properties>
- <dxl:GroupingColumns>
- <dxl:GroupingColumn ColId="11"/>
- </dxl:GroupingColumns>
<dxl:ProjList>
+ <dxl:ProjElem ColId="2" Alias="c1">
+ <dxl:Ident ColId="2" ColName="c1" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
<dxl:ProjElem ColId="11" Alias="b2">
<dxl:Ident ColId="11" ColName="b2" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
- <dxl:ProjElem ColId="20" Alias="sum">
- <dxl:AggFunc AggMdid="0.2108.1.0" AggDistinct="false" AggStage="Normal" AggKind="n" AggArgTypes="23">
- <dxl:ValuesList ParamType="aggargs">
- <dxl:Ident ColId="2" ColName="c1" TypeMdid="0.23.1.0"/>
- </dxl:ValuesList>
- <dxl:ValuesList ParamType="aggdirectargs"/>
- <dxl:ValuesList ParamType="aggorder"/>
- <dxl:ValuesList ParamType="aggdistinct"/>
- </dxl:AggFunc>
- </dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:Sort SortDiscardDuplicates="false">
+ <dxl:SortingColumnList>
+ <dxl:SortingColumn ColId="11" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
+ </dxl:SortingColumnList>
+ <dxl:LimitCount/>
+ <dxl:LimitOffset/>
+ <dxl:RedistributeMotion InputSegments="0,1,2" OutputSegments="0,1,2">
<dxl:Properties>
<dxl:Cost StartupCost="0" TotalCost="862.000410" Rows="1.000000" Width="8"/>
</dxl:Properties>
@@ -407,14 +407,15 @@ EXPLAIN SELECT b2, sum(c1) FROM t1, t2 WHERE a1 = b2 GROUP BY b2 ORDER BY b2;
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="11" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:RedistributeMotion InputSegments="0,1,2" OutputSegments="0,1,2">
+ <dxl:SortingColumnList/>
+ <dxl:HashExprList>
+ <dxl:HashExpr Opfamily="0.1977.1.0">
+ <dxl:Ident ColId="11" ColName="b2" TypeMdid="0.23.1.0"/>
+ </dxl:HashExpr>
+ </dxl:HashExprList>
+ <dxl:HashJoin JoinType="Inner">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000410" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000398" Rows="1.000000" Width="8"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="2" Alias="c1">
@@ -425,88 +426,68 @@ EXPLAIN SELECT b2, sum(c1) FROM t1, t2 WHERE a1 = b2 GROUP BY b2 ORDER BY b2;
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList/>
- <dxl:HashExprList>
- <dxl:HashExpr Opfamily="0.1977.1.0">
+ <dxl:JoinFilter/>
+ <dxl:HashCondList>
+ <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
<dxl:Ident ColId="11" ColName="b2" TypeMdid="0.23.1.0"/>
- </dxl:HashExpr>
- </dxl:HashExprList>
- <dxl:HashJoin JoinType="Inner">
+ <dxl:Ident ColId="0" ColName="a1" TypeMdid="0.23.1.0"/>
+ </dxl:Comparison>
+ </dxl:HashCondList>
+ <dxl:TableScan>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000398" Rows="1.000000" Width="8"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000008" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
- <dxl:ProjElem ColId="2" Alias="c1">
- <dxl:Ident ColId="2" ColName="c1" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
<dxl:ProjElem ColId="11" Alias="b2">
<dxl:Ident ColId="11" ColName="b2" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:JoinFilter/>
- <dxl:HashCondList>
- <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
- <dxl:Ident ColId="11" ColName="b2" TypeMdid="0.23.1.0"/>
+ <dxl:TableDescriptor Mdid="6.16430.1.0" TableName="t2" LockMode="1">
+ <dxl:Columns>
+ <dxl:Column ColId="10" Attno="1" ColName="a2" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="11" Attno="2" ColName="b2" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="13" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
+ <dxl:Column ColId="14" Attno="-2" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="15" Attno="-3" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="16" Attno="-4" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="17" Attno="-5" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="18" Attno="-6" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
+ <dxl:Column ColId="19" Attno="-7" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:TableScan>
+ <dxl:TableScan>
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="431.000023" Rows="3.000000" Width="8"/>
+ </dxl:Properties>
+ <dxl:ProjList>
+ <dxl:ProjElem ColId="0" Alias="a1">
<dxl:Ident ColId="0" ColName="a1" TypeMdid="0.23.1.0"/>
- </dxl:Comparison>
- </dxl:HashCondList>
- <dxl:TableScan>
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000008" Rows="1.000000" Width="4"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="11" Alias="b2">
- <dxl:Ident ColId="11" ColName="b2" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:TableDescriptor Mdid="6.16430.1.0" TableName="t2" LockMode="1">
- <dxl:Columns>
- <dxl:Column ColId="10" Attno="1" ColName="a2" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="11" Attno="2" ColName="b2" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="13" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
- <dxl:Column ColId="14" Attno="-2" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="15" Attno="-3" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="16" Attno="-4" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="17" Attno="-5" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="18" Attno="-6" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
- <dxl:Column ColId="19" Attno="-7" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:TableScan>
- <dxl:TableScan>
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000023" Rows="3.000000" Width="8"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="0" Alias="a1">
- <dxl:Ident ColId="0" ColName="a1" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="2" Alias="c1">
- <dxl:Ident ColId="2" ColName="c1" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:TableDescriptor Mdid="6.16427.1.0" TableName="t1" LockMode="1">
- <dxl:Columns>
- <dxl:Column ColId="0" Attno="1" ColName="a1" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="2" Attno="3" ColName="c1" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="3" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
- <dxl:Column ColId="4" Attno="-2" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="5" Attno="-3" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="6" Attno="-4" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="7" Attno="-5" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="8" Attno="-6" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
- <dxl:Column ColId="9" Attno="-7" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:TableScan>
- </dxl:HashJoin>
- </dxl:RedistributeMotion>
- </dxl:Sort>
- </dxl:Aggregate>
- </dxl:Sort>
+ </dxl:ProjElem>
+ <dxl:ProjElem ColId="2" Alias="c1">
+ <dxl:Ident ColId="2" ColName="c1" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ </dxl:ProjList>
+ <dxl:Filter/>
+ <dxl:TableDescriptor Mdid="6.16427.1.0" TableName="t1" LockMode="1">
+ <dxl:Columns>
+ <dxl:Column ColId="0" Attno="1" ColName="a1" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="2" Attno="3" ColName="c1" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="3" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
+ <dxl:Column ColId="4" Attno="-2" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="5" Attno="-3" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="6" Attno="-4" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="7" Attno="-5" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="8" Attno="-6" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
+ <dxl:Column ColId="9" Attno="-7" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:TableScan>
+ </dxl:HashJoin>
+ </dxl:RedistributeMotion>
+ </dxl:Sort>
+ </dxl:Aggregate>
</dxl:GatherMotion>
</dxl:Plan>
</dxl:Thread>
diff --git a/src/backend/gporca/data/dxl/minidump/InsertSortDistributed2CoordinatorOnly.mdp b/src/backend/gporca/data/dxl/minidump/InsertSortDistributed2CoordinatorOnly.mdp
index e5e326a554..1793881d33 100644
--- a/src/backend/gporca/data/dxl/minidump/InsertSortDistributed2CoordinatorOnly.mdp
+++ b/src/backend/gporca/data/dxl/minidump/InsertSortDistributed2CoordinatorOnly.mdp
@@ -265,7 +265,7 @@ explain insert into CoordinatorOnly select * from distributedtable order by 1;
<dxl:Plan Id="0" SpaceSize="2">
<dxl:DMLInsert Columns="0,1,2" ActionCol="10" CtidCol="0" SegmentIdCol="0">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.078234" Rows="1.000000" Width="20"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.078461" Rows="1.000000" Width="20"/>
</dxl:Properties>
<dxl:DirectDispatchInfo/>
<dxl:ProjList>
@@ -295,7 +295,7 @@ explain insert into CoordinatorOnly select * from distributedtable order by 1;
</dxl:TableDescriptor>
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000109" Rows="1.000000" Width="20"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000336" Rows="1.000000" Width="20"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -315,7 +315,7 @@ explain insert into CoordinatorOnly select * from distributedtable order by 1;
<dxl:SortingColumnList/>
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000034" Rows="1.000000" Width="20"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000261" Rows="1.000000" Width="20"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
@@ -335,7 +335,7 @@ explain insert into CoordinatorOnly select * from distributedtable order by 1;
<dxl:OneTimeFilter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000021" Rows="1.000000" Width="20"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000248" Rows="1.000000" Width="20"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="a">
diff --git a/src/backend/gporca/data/dxl/minidump/Intersect-Volatile-Func.mdp b/src/backend/gporca/data/dxl/minidump/Intersect-Volatile-Func.mdp
index d08bd7d9e2..b6d2668b8e 100644
--- a/src/backend/gporca/data/dxl/minidump/Intersect-Volatile-Func.mdp
+++ b/src/backend/gporca/data/dxl/minidump/Intersect-Volatile-Func.mdp
@@ -112,7 +112,7 @@
<dxl:Plan Id="0" SpaceSize="476">
<dxl:HashJoin JoinType="Inner">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="0.000504" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="0.000594" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="?column?">
@@ -131,7 +131,7 @@
</dxl:HashCondList>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="0.000011" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="0.000057" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="1"/>
@@ -144,7 +144,7 @@
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="0.000005" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="0.000050" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="?column?">
@@ -185,7 +185,7 @@
</dxl:Aggregate>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="0.000111" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="0.000157" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="3"/>
@@ -198,7 +198,7 @@
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="0.000105" Rows="1.000000" Width="4"/>
+ <dxl:Cost StartupCost="0" TotalCost="0.000150" Rows="1.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="3" Alias="generate_series">
@@ -217,7 +217,7 @@
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="3" Alias="generate_series">
- <dxl:FuncExpr FuncId="0.1067.1.0" FuncRetSet="true" TypeMdid="0.23.1.0">
+ <dxl:FuncExpr FuncId="0.1067.1.0" FuncRetSet="true" TypeMdid="0.23.1.0" FuncVariadic="false">
<dxl:ConstValue TypeMdid="0.23.1.0" Value="1"/>
<dxl:ConstValue TypeMdid="0.23.1.0" Value="10"/>
</dxl:FuncExpr>
diff --git a/src/backend/gporca/data/dxl/minidump/JoinTinterval.mdp b/src/backend/gporca/data/dxl/minidump/JoinTinterval.mdp
index 5bc5a15ab5..37beda689f 100644
--- a/src/backend/gporca/data/dxl/minidump/JoinTinterval.mdp
+++ b/src/backend/gporca/data/dxl/minidump/JoinTinterval.mdp
@@ -305,7 +305,7 @@
<dxl:Plan Id="0" SpaceSize="54">
<dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000771" Rows="1.000000" Width="32"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.001043" Rows="1.000000" Width="32"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="16" Alias="five">
@@ -322,7 +322,7 @@
<dxl:OneTimeFilter/>
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000739" Rows="1.000000" Width="24"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.001011" Rows="1.000000" Width="24"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="f1">
@@ -339,7 +339,7 @@
</dxl:SortingColumnList>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000650" Rows="1.000000" Width="24"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000922" Rows="1.000000" Width="24"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="0" Alias="f1">
diff --git a/src/backend/gporca/data/dxl/minidump/LOJ-With-Agg.mdp b/src/backend/gporca/data/dxl/minidump/LOJ-With-Agg.mdp
index d91eef942c..da3bb3307a 100644
--- a/src/backend/gporca/data/dxl/minidump/LOJ-With-Agg.mdp
+++ b/src/backend/gporca/data/dxl/minidump/LOJ-With-Agg.mdp
@@ -278,7 +278,7 @@
<dxl:Plan Id="0" SpaceSize="42">
<dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000560" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000577" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="18" Alias="count">
@@ -292,17 +292,15 @@
<dxl:SortingColumnList/>
<dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000515" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000532" Rows="1.000000" Width="12"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="9"/>
</dxl:GroupingColumns>
<dxl:ProjList>
<dxl:ProjElem ColId="18" Alias="count">
- <dxl:AggFunc AggMdid="0.2803.1.0" AggDistinct="false" AggStage="Final" AggKind="n" AggArgTypes="">
- <dxl:ValuesList ParamType="aggargs">
- <dxl:Ident ColId="19" ColName="ColRef_0019" TypeMdid="0.20.1.0"/>
- </dxl:ValuesList>
+ <dxl:AggFunc AggMdid="0.2803.1.0" AggDistinct="false" AggStage="Normal" AggKind="n" AggArgTypes="">
+ <dxl:ValuesList ParamType="aggargs"/>
<dxl:ValuesList ParamType="aggdirectargs"/>
<dxl:ValuesList ParamType="aggorder"/>
<dxl:ValuesList ParamType="aggdistinct"/>
@@ -315,15 +313,12 @@
<dxl:Filter/>
<dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000501" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000522" Rows="2.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="9" Alias="c">
<dxl:Ident ColId="9" ColName="c" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
- <dxl:ProjElem ColId="19" Alias="ColRef_0019">
- <dxl:Ident ColId="19" ColName="ColRef_0019" TypeMdid="0.20.1.0"/>
- </dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
<dxl:SortingColumnList>
@@ -333,15 +328,12 @@
<dxl:LimitOffset/>
<dxl:RedistributeMotion InputSegments="0,1,2" OutputSegments="0,1,2">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000501" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000477" Rows="2.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="9" Alias="c">
<dxl:Ident ColId="9" ColName="c" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
- <dxl:ProjElem ColId="19" Alias="ColRef_0019">
- <dxl:Ident ColId="19" ColName="ColRef_0019" TypeMdid="0.20.1.0"/>
- </dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
<dxl:SortingColumnList/>
@@ -350,135 +342,70 @@
<dxl:Ident ColId="9" ColName="c" TypeMdid="0.23.1.0"/>
</dxl:HashExpr>
</dxl:HashExprList>
- <dxl:Result>
+ <dxl:HashJoin JoinType="Left">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000482" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.000452" Rows="2.000000" Width="4"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="9" Alias="c">
<dxl:Ident ColId="9" ColName="c" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
- <dxl:ProjElem ColId="19" Alias="ColRef_0019">
- <dxl:Ident ColId="19" ColName="ColRef_0019" TypeMdid="0.20.1.0"/>
- </dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:OneTimeFilter/>
- <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
+ <dxl:JoinFilter/>
+ <dxl:HashCondList>
+ <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
+ <dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
+ <dxl:Ident ColId="9" ColName="c" TypeMdid="0.23.1.0"/>
+ </dxl:Comparison>
+ </dxl:HashCondList>
+ <dxl:TableScan>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000482" Rows="1.000000" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.000021" Rows="1.000000" Width="4"/>
</dxl:Properties>
- <dxl:GroupingColumns>
- <dxl:GroupingColumn ColId="9"/>
- </dxl:GroupingColumns>
<dxl:ProjList>
- <dxl:ProjElem ColId="19" Alias="ColRef_0019">
- <dxl:AggFunc AggMdid="0.2803.1.0" AggDistinct="false" AggStage="Partial" AggKind="n" AggArgTypes="">
- <dxl:ValuesList ParamType="aggargs"/>
- <dxl:ValuesList ParamType="aggdirectargs"/>
- <dxl:ValuesList ParamType="aggorder"/>
- <dxl:ValuesList ParamType="aggdistinct"/>
- </dxl:AggFunc>
+ <dxl:ProjElem ColId="0" Alias="a">
+ <dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
+ </dxl:ProjList>
+ <dxl:Filter/>
+ <dxl:TableDescriptor Mdid="6.16875.1.0" TableName="foo">
+ <dxl:Columns>
+ <dxl:Column ColId="0" Attno="1" ColName="a" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="2" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
+ <dxl:Column ColId="3" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="4" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="5" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="6" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="7" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
+ <dxl:Column ColId="8" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:TableScan>
+ <dxl:TableScan>
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="431.000021" Rows="1.000000" Width="4"/>
+ </dxl:Properties>
+ <dxl:ProjList>
<dxl:ProjElem ColId="9" Alias="c">
<dxl:Ident ColId="9" ColName="c" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:Sort SortDiscardDuplicates="false">
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000472" Rows="2.000000" Width="4"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="9" Alias="c">
- <dxl:Ident ColId="9" ColName="c" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="9" SortOperatorMdid="0.97.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:RandomMotion InputSegments="0,1,2" OutputSegments="0,1,2">
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000472" Rows="2.000000" Width="4"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="9" Alias="c">
- <dxl:Ident ColId="9" ColName="c" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:SortingColumnList/>
- <dxl:HashJoin JoinType="Left">
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.000452" Rows="2.000000" Width="4"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="9" Alias="c">
- <dxl:Ident ColId="9" ColName="c" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:JoinFilter/>
- <dxl:HashCondList>
- <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
- <dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
- <dxl:Ident ColId="9" ColName="c" TypeMdid="0.23.1.0"/>
- </dxl:Comparison>
- </dxl:HashCondList>
- <dxl:TableScan>
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000021" Rows="1.000000" Width="4"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="0" Alias="a">
- <dxl:Ident ColId="0" ColName="a" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:TableDescriptor Mdid="6.16875.1.0" TableName="foo">
- <dxl:Columns>
- <dxl:Column ColId="0" Attno="1" ColName="a" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="2" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
- <dxl:Column ColId="3" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="4" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="5" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="6" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="7" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
- <dxl:Column ColId="8" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:TableScan>
- <dxl:TableScan>
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000021" Rows="1.000000" Width="4"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="9" Alias="c">
- <dxl:Ident ColId="9" ColName="c" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:TableDescriptor Mdid="6.16872.1.0" TableName="bar">
- <dxl:Columns>
- <dxl:Column ColId="9" Attno="1" ColName="c" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="11" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
- <dxl:Column ColId="12" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="13" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="14" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="15" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="16" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
- <dxl:Column ColId="17" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:TableScan>
- </dxl:HashJoin>
- </dxl:RandomMotion>
- </dxl:Sort>
- </dxl:Aggregate>
- </dxl:Result>
+ <dxl:TableDescriptor Mdid="6.16872.1.0" TableName="bar">
+ <dxl:Columns>
+ <dxl:Column ColId="9" Attno="1" ColName="c" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="11" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
+ <dxl:Column ColId="12" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="13" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="14" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="15" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="16" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
+ <dxl:Column ColId="17" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:TableScan>
+ </dxl:HashJoin>
</dxl:RedistributeMotion>
</dxl:Sort>
</dxl:Aggregate>
diff --git a/src/backend/gporca/data/dxl/minidump/LOJ_bb_mpph.mdp b/src/backend/gporca/data/dxl/minidump/LOJ_bb_mpph.mdp
index 6311f216a4..f3d1367a2c 100644
--- a/src/backend/gporca/data/dxl/minidump/LOJ_bb_mpph.mdp
+++ b/src/backend/gporca/data/dxl/minidump/LOJ_bb_mpph.mdp
@@ -5708,7 +5708,7 @@
<dxl:Plan Id="0" SpaceSize="26759194">
<dxl:Limit>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="2587.327611" Rows="1.000000" Width="24"/>
+ <dxl:Cost StartupCost="0" TotalCost="2587.328257" Rows="1.000000" Width="24"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="111" Alias="?column?">
@@ -5721,9 +5721,9 @@
<dxl:Ident ColId="110" ColName="count" TypeMdid="0.20.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
- <dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
+ <dxl:Sort SortDiscardDuplicates="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="2587.327587" Rows="1.000000" Width="24"/>
+ <dxl:Cost StartupCost="0" TotalCost="2587.328233" Rows="1.000000" Width="24"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="111" Alias="?column?">
@@ -5741,13 +5741,15 @@
<dxl:SortingColumn ColId="110" SortOperatorMdid="0.413.1.0" SortOperatorName=">" SortNullsFirst="true"/>
<dxl:SortingColumn ColId="1" SortOperatorMdid="0.1058.1.0" SortOperatorName="<" SortNullsFirst="false"/>
</dxl:SortingColumnList>
- <dxl:Result>
+ <dxl:LimitCount/>
+ <dxl:LimitOffset/>
+ <dxl:GatherMotion InputSegments="0,1,2" OutputSegments="-1">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="2587.327497" Rows="1.000000" Width="24"/>
+ <dxl:Cost StartupCost="0" TotalCost="2587.327961" Rows="1.000000" Width="24"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="111" Alias="?column?">
- <dxl:ConstValue TypeMdid="0.705.1.0" Value="bXBwaDIxAA=="/>
+ <dxl:Ident ColId="111" ColName="?column?" TypeMdid="0.705.1.0"/>
</dxl:ProjElem>
<dxl:ProjElem ColId="1" Alias="s_name">
<dxl:Ident ColId="1" ColName="s_name" TypeMdid="0.1042.1.0" TypeModifier="29"/>
@@ -5757,29 +5759,27 @@
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:OneTimeFilter/>
- <dxl:Sort SortDiscardDuplicates="false">
+ <dxl:SortingColumnList/>
+ <dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="2587.327489" Rows="1.000000" Width="34"/>
+ <dxl:Cost StartupCost="0" TotalCost="2587.327872" Rows="1.000000" Width="24"/>
</dxl:Properties>
<dxl:ProjList>
- <dxl:ProjElem ColId="110" Alias="count">
- <dxl:Ident ColId="110" ColName="count" TypeMdid="0.20.1.0"/>
+ <dxl:ProjElem ColId="111" Alias="?column?">
+ <dxl:ConstValue TypeMdid="0.705.1.0" Value="bXBwaDIxAA=="/>
</dxl:ProjElem>
<dxl:ProjElem ColId="1" Alias="s_name">
<dxl:Ident ColId="1" ColName="s_name" TypeMdid="0.1042.1.0" TypeModifier="29"/>
</dxl:ProjElem>
+ <dxl:ProjElem ColId="110" Alias="count">
+ <dxl:Ident ColId="110" ColName="count" TypeMdid="0.20.1.0"/>
+ </dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="110" SortOperatorMdid="0.413.1.0" SortOperatorName=">" SortNullsFirst="true"/>
- <dxl:SortingColumn ColId="1" SortOperatorMdid="0.1058.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
+ <dxl:OneTimeFilter/>
+ <dxl:Aggregate AggregationStrategy="Hashed" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="2587.327489" Rows="1.000000" Width="34"/>
+ <dxl:Cost StartupCost="0" TotalCost="2587.327864" Rows="1.000000" Width="34"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="1"/>
@@ -5800,9 +5800,9 @@
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
+ <dxl:Aggregate AggregationStrategy="Hashed" StreamSafe="false">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="2587.327449" Rows="1.000000" Width="34"/>
+ <dxl:Cost StartupCost="0" TotalCost="2587.327734" Rows="1.000000" Width="34"/>
</dxl:Properties>
<dxl:GroupingColumns>
<dxl:GroupingColumn ColId="1"/>
@@ -5817,9 +5817,9 @@
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:Sort SortDiscardDuplicates="false">
+ <dxl:RedistributeMotion InputSegments="0,1,2" OutputSegments="0,1,2">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="2587.327396" Rows="1.000000" Width="34"/>
+ <dxl:Cost StartupCost="0" TotalCost="2587.327467" Rows="1.000000" Width="34"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="s_name">
@@ -5830,16 +5830,20 @@
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="1" SortOperatorMdid="0.1058.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- <dxl:SortingColumn ColId="112" SortOperatorMdid="0.664.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:RedistributeMotion InputSegments="0,1,2" OutputSegments="0,1,2">
+ <dxl:SortingColumnList/>
+ <dxl:HashExprList>
+ <dxl:HashExpr>
+ <dxl:Ident ColId="1" ColName="s_name" TypeMdid="0.1042.1.0" TypeModifier="29"/>
+ </dxl:HashExpr>
+ </dxl:HashExprList>
+ <dxl:Aggregate AggregationStrategy="Hashed" StreamSafe="true">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="2587.327396" Rows="1.000000" Width="34"/>
+ <dxl:Cost StartupCost="0" TotalCost="2587.327413" Rows="1.000000" Width="34"/>
</dxl:Properties>
+ <dxl:GroupingColumns>
+ <dxl:GroupingColumn ColId="1"/>
+ <dxl:GroupingColumn ColId="112"/>
+ </dxl:GroupingColumns>
<dxl:ProjList>
<dxl:ProjElem ColId="1" Alias="s_name">
<dxl:Ident ColId="1" ColName="s_name" TypeMdid="0.1042.1.0" TypeModifier="29"/>
@@ -5849,80 +5853,171 @@
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList/>
- <dxl:HashExprList>
- <dxl:HashExpr>
- <dxl:Ident ColId="1" ColName="s_name" TypeMdid="0.1042.1.0" TypeModifier="29"/>
- </dxl:HashExpr>
- </dxl:HashExprList>
- <dxl:Aggregate AggregationStrategy="Sorted" StreamSafe="false">
+ <dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="2587.327342" Rows="1.000000" Width="34"/>
+ <dxl:Cost StartupCost="0" TotalCost="2587.327312" Rows="1.000000" Width="34"/>
</dxl:Properties>
- <dxl:GroupingColumns>
- <dxl:GroupingColumn ColId="1"/>
- <dxl:GroupingColumn ColId="112"/>
- </dxl:GroupingColumns>
<dxl:ProjList>
+ <dxl:ProjElem ColId="112" Alias="ColRef_0112">
+ <dxl:OpExpr OperatorName="||" OperatorMdid="0.654.1.0" OperatorType="0.25.1.0">
+ <dxl:CoerceViaIO TypeMdid="0.25.1.0" CoercionForm="1" Location="65">
+ <dxl:Ident ColId="41" ColName="l_orderkey" TypeMdid="0.20.1.0"/>
+ </dxl:CoerceViaIO>
+ <dxl:CoerceViaIO TypeMdid="0.25.1.0" CoercionForm="1" Location="88">
+ <dxl:Ident ColId="44" ColName="l_linenumber" TypeMdid="0.23.1.0"/>
+ </dxl:CoerceViaIO>
+ </dxl:OpExpr>
+ </dxl:ProjElem>
<dxl:ProjElem ColId="1" Alias="s_name">
<dxl:Ident ColId="1" ColName="s_name" TypeMdid="0.1042.1.0" TypeModifier="29"/>
</dxl:ProjElem>
- <dxl:ProjElem ColId="112" Alias="ColRef_0112">
- <dxl:Ident ColId="112" ColName="ColRef_0112" TypeMdid="0.25.1.0"/>
- </dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:Sort SortDiscardDuplicates="false">
+ <dxl:OneTimeFilter/>
+ <dxl:HashJoin JoinType="Inner">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="2587.327312" Rows="1.000000" Width="34"/>
+ <dxl:Cost StartupCost="0" TotalCost="2587.327300" Rows="1.000000" Width="38"/>
</dxl:Properties>
<dxl:ProjList>
- <dxl:ProjElem ColId="112" Alias="ColRef_0112">
- <dxl:Ident ColId="112" ColName="ColRef_0112" TypeMdid="0.25.1.0"/>
- </dxl:ProjElem>
<dxl:ProjElem ColId="1" Alias="s_name">
<dxl:Ident ColId="1" ColName="s_name" TypeMdid="0.1042.1.0" TypeModifier="29"/>
</dxl:ProjElem>
+ <dxl:ProjElem ColId="41" Alias="l_orderkey">
+ <dxl:Ident ColId="41" ColName="l_orderkey" TypeMdid="0.20.1.0"/>
+ </dxl:ProjElem>
+ <dxl:ProjElem ColId="44" Alias="l_linenumber">
+ <dxl:Ident ColId="44" ColName="l_linenumber" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:SortingColumnList>
- <dxl:SortingColumn ColId="1" SortOperatorMdid="0.1058.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- <dxl:SortingColumn ColId="112" SortOperatorMdid="0.664.1.0" SortOperatorName="<" SortNullsFirst="false"/>
- </dxl:SortingColumnList>
- <dxl:LimitCount/>
- <dxl:LimitOffset/>
- <dxl:Result>
+ <dxl:JoinFilter/>
+ <dxl:HashCondList>
+ <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
+ <dxl:Ident ColId="0" ColName="s_suppkey" TypeMdid="0.23.1.0"/>
+ <dxl:Ident ColId="43" ColName="l_suppkey" TypeMdid="0.23.1.0"/>
+ </dxl:Comparison>
+ </dxl:HashCondList>
+ <dxl:HashJoin JoinType="Inner">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="2587.327312" Rows="1.000000" Width="34"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.013278" Rows="2.380952" Width="30"/>
</dxl:Properties>
<dxl:ProjList>
- <dxl:ProjElem ColId="112" Alias="ColRef_0112">
- <dxl:OpExpr OperatorName="||" OperatorMdid="0.654.1.0" OperatorType="0.25.1.0">
- <dxl:CoerceViaIO TypeMdid="0.25.1.0" CoercionForm="1" Location="65">
- <dxl:Ident ColId="41" ColName="l_orderkey" TypeMdid="0.20.1.0"/>
- </dxl:CoerceViaIO>
- <dxl:CoerceViaIO TypeMdid="0.25.1.0" CoercionForm="1" Location="88">
- <dxl:Ident ColId="44" ColName="l_linenumber" TypeMdid="0.23.1.0"/>
- </dxl:CoerceViaIO>
- </dxl:OpExpr>
+ <dxl:ProjElem ColId="0" Alias="s_suppkey">
+ <dxl:Ident ColId="0" ColName="s_suppkey" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
<dxl:ProjElem ColId="1" Alias="s_name">
<dxl:Ident ColId="1" ColName="s_name" TypeMdid="0.1042.1.0" TypeModifier="29"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:OneTimeFilter/>
- <dxl:HashJoin JoinType="Inner">
+ <dxl:JoinFilter/>
+ <dxl:HashCondList>
+ <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
+ <dxl:Ident ColId="3" ColName="s_nationkey" TypeMdid="0.23.1.0"/>
+ <dxl:Ident ColId="30" ColName="n_nationkey" TypeMdid="0.23.1.0"/>
+ </dxl:Comparison>
+ </dxl:HashCondList>
+ <dxl:TableScan>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="2587.327300" Rows="1.000000" Width="38"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.003208" Rows="100.000000" Width="34"/>
</dxl:Properties>
<dxl:ProjList>
+ <dxl:ProjElem ColId="0" Alias="s_suppkey">
+ <dxl:Ident ColId="0" ColName="s_suppkey" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
<dxl:ProjElem ColId="1" Alias="s_name">
<dxl:Ident ColId="1" ColName="s_name" TypeMdid="0.1042.1.0" TypeModifier="29"/>
</dxl:ProjElem>
+ <dxl:ProjElem ColId="3" Alias="s_nationkey">
+ <dxl:Ident ColId="3" ColName="s_nationkey" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ </dxl:ProjList>
+ <dxl:Filter/>
+ <dxl:TableDescriptor Mdid="6.31274.1.0" TableName="heap_supplier">
+ <dxl:Columns>
+ <dxl:Column ColId="0" Attno="1" ColName="s_suppkey" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="1" Attno="2" ColName="s_name" TypeMdid="0.1042.1.0" TypeModifier="29" ColWidth="26"/>
+ <dxl:Column ColId="3" Attno="4" ColName="s_nationkey" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="7" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
+ <dxl:Column ColId="8" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="9" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="10" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="11" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="12" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
+ <dxl:Column ColId="13" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:TableScan>
+ <dxl:BroadcastMotion InputSegments="0,1,2" OutputSegments="0,1,2">
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="431.001182" Rows="3.000000" Width="4"/>
+ </dxl:Properties>
+ <dxl:ProjList>
+ <dxl:ProjElem ColId="30" Alias="n_nationkey">
+ <dxl:Ident ColId="30" ColName="n_nationkey" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ </dxl:ProjList>
+ <dxl:Filter/>
+ <dxl:SortingColumnList/>
+ <dxl:TableScan>
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="431.000967" Rows="1.000000" Width="4"/>
+ </dxl:Properties>
+ <dxl:ProjList>
+ <dxl:ProjElem ColId="30" Alias="n_nationkey">
+ <dxl:Ident ColId="30" ColName="n_nationkey" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ </dxl:ProjList>
+ <dxl:Filter>
+ <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.1054.1.0">
+ <dxl:Ident ColId="31" ColName="n_name" TypeMdid="0.1042.1.0" TypeModifier="29"/>
+ <dxl:ConstValue TypeMdid="0.1042.1.0" Value="AAAADk1PWkFNQklRVUU=" LintValue="217359228"/>
+ </dxl:Comparison>
+ </dxl:Filter>
+ <dxl:TableDescriptor Mdid="6.31259.1.0" TableName="heap_nation">
+ <dxl:Columns>
+ <dxl:Column ColId="30" Attno="1" ColName="n_nationkey" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="31" Attno="2" ColName="n_name" TypeMdid="0.1042.1.0" TypeModifier="29" ColWidth="26"/>
+ <dxl:Column ColId="34" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
+ <dxl:Column ColId="35" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="36" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="37" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="38" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="39" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
+ <dxl:Column ColId="40" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:TableScan>
+ </dxl:BroadcastMotion>
+ </dxl:HashJoin>
+ <dxl:BroadcastMotion InputSegments="0,1,2" OutputSegments="0,1,2">
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="1725.313323" Rows="3.000000" Width="16"/>
+ </dxl:Properties>
+ <dxl:ProjList>
+ <dxl:ProjElem ColId="41" Alias="l_orderkey">
+ <dxl:Ident ColId="41" ColName="l_orderkey" TypeMdid="0.20.1.0"/>
+ </dxl:ProjElem>
+ <dxl:ProjElem ColId="43" Alias="l_suppkey">
+ <dxl:Ident ColId="43" ColName="l_suppkey" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ <dxl:ProjElem ColId="44" Alias="l_linenumber">
+ <dxl:Ident ColId="44" ColName="l_linenumber" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
+ </dxl:ProjList>
+ <dxl:Filter/>
+ <dxl:SortingColumnList/>
+ <dxl:HashJoin JoinType="Inner">
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="1725.313037" Rows="1.000000" Width="16"/>
+ </dxl:Properties>
+ <dxl:ProjList>
<dxl:ProjElem ColId="41" Alias="l_orderkey">
<dxl:Ident ColId="41" ColName="l_orderkey" TypeMdid="0.20.1.0"/>
</dxl:ProjElem>
+ <dxl:ProjElem ColId="43" Alias="l_suppkey">
+ <dxl:Ident ColId="43" ColName="l_suppkey" TypeMdid="0.23.1.0"/>
+ </dxl:ProjElem>
<dxl:ProjElem ColId="44" Alias="l_linenumber">
<dxl:Ident ColId="44" ColName="l_linenumber" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
@@ -5930,124 +6025,104 @@
<dxl:Filter/>
<dxl:JoinFilter/>
<dxl:HashCondList>
- <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
- <dxl:Ident ColId="0" ColName="s_suppkey" TypeMdid="0.23.1.0"/>
- <dxl:Ident ColId="43" ColName="l_suppkey" TypeMdid="0.23.1.0"/>
+ <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.410.1.0">
+ <dxl:Ident ColId="14" ColName="o_orderkey" TypeMdid="0.20.1.0"/>
+ <dxl:Ident ColId="41" ColName="l_orderkey" TypeMdid="0.20.1.0"/>
</dxl:Comparison>
</dxl:HashCondList>
+ <dxl:TableScan>
+ <dxl:Properties>
+ <dxl:Cost StartupCost="0" TotalCost="431.058247" Rows="499.333333" Width="8"/>
+ </dxl:Properties>
+ <dxl:ProjList>
+ <dxl:ProjElem ColId="14" Alias="o_orderkey">
+ <dxl:Ident ColId="14" ColName="o_orderkey" TypeMdid="0.20.1.0"/>
+ </dxl:ProjElem>
+ </dxl:ProjList>
+ <dxl:Filter>
+ <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.1054.1.0">
+ <dxl:Ident ColId="16" ColName="o_orderstatus" TypeMdid="0.1042.1.0" TypeModifier="5"/>
+ <dxl:ConstValue TypeMdid="0.1042.1.0" Value="AAAABUY=" LintValue="160743980"/>
+ </dxl:Comparison>
+ </dxl:Filter>
+ <dxl:TableDescriptor Mdid="6.31262.1.0" TableName="heap_orders">
+ <dxl:Columns>
+ <dxl:Column ColId="14" Attno="1" ColName="o_orderkey" TypeMdid="0.20.1.0" ColWidth="8"/>
+ <dxl:Column ColId="16" Attno="3" ColName="o_orderstatus" TypeMdid="0.1042.1.0" TypeModifier="5" ColWidth="2"/>
+ <dxl:Column ColId="23" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
+ <dxl:Column ColId="24" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="25" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="26" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="27" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="28" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
+ <dxl:Column ColId="29" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
+ </dxl:Columns>
+ </dxl:TableDescriptor>
+ </dxl:TableScan>
<dxl:HashJoin JoinType="Inner">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.013278" Rows="2.380952" Width="30"/>
+ <dxl:Cost StartupCost="0" TotalCost="1294.224569" Rows="1.000000" Width="16"/>
</dxl:Properties>
<dxl:ProjList>
- <dxl:ProjElem ColId="0" Alias="s_suppkey">
- <dxl:Ident ColId="0" ColName="s_suppkey" TypeMdid="0.23.1.0"/>
+ <dxl:ProjElem ColId="41" Alias="l_orderkey">
+ <dxl:Ident ColId="41" ColName="l_orderkey" TypeMdid="0.20.1.0"/>
+ </dxl:ProjElem>
+ <dxl:ProjElem ColId="43" Alias="l_suppkey">
+ <dxl:Ident ColId="43" ColName="l_suppkey" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
- <dxl:ProjElem ColId="1" Alias="s_name">
- <dxl:Ident ColId="1" ColName="s_name" TypeMdid="0.1042.1.0" TypeModifier="29"/>
+ <dxl:ProjElem ColId="44" Alias="l_linenumber">
+ <dxl:Ident ColId="44" ColName="l_linenumber" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
- <dxl:JoinFilter/>
+ <dxl:JoinFilter>
+ <dxl:Comparison ComparisonOperator="<>" OperatorMdid="0.518.1.0">
+ <dxl:Ident ColId="66" ColName="l_suppkey" TypeMdid="0.23.1.0"/>
+ <dxl:Ident ColId="43" ColName="l_suppkey" TypeMdid="0.23.1.0"/>
+ </dxl:Comparison>
+ </dxl:JoinFilter>
<dxl:HashCondList>
- <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.96.1.0">
- <dxl:Ident ColId="3" ColName="s_nationkey" TypeMdid="0.23.1.0"/>
- <dxl:Ident ColId="30" ColName="n_nationkey" TypeMdid="0.23.1.0"/>
+ <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.410.1.0">
+ <dxl:Ident ColId="64" ColName="l_orderkey" TypeMdid="0.20.1.0"/>
+ <dxl:Ident ColId="41" ColName="l_orderkey" TypeMdid="0.20.1.0"/>
</dxl:Comparison>
</dxl:HashCondList>
<dxl:TableScan>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.003208" Rows="100.000000" Width="34"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.137578" Rows="2984.979105" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
- <dxl:ProjElem ColId="0" Alias="s_suppkey">
- <dxl:Ident ColId="0" ColName="s_suppkey" TypeMdid="0.23.1.0"/>
+ <dxl:ProjElem ColId="64" Alias="l_orderkey">
+ <dxl:Ident ColId="64" ColName="l_orderkey" TypeMdid="0.20.1.0"/>
</dxl:ProjElem>
- <dxl:ProjElem ColId="1" Alias="s_name">
- <dxl:Ident ColId="1" ColName="s_name" TypeMdid="0.1042.1.0" TypeModifier="29"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="3" Alias="s_nationkey">
- <dxl:Ident ColId="3" ColName="s_nationkey" TypeMdid="0.23.1.0"/>
+ <dxl:ProjElem ColId="66" Alias="l_suppkey">
+ <dxl:Ident ColId="66" ColName="l_suppkey" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
- <dxl:Filter/>
- <dxl:TableDescriptor Mdid="6.31274.1.0" TableName="heap_supplier">
+ <dxl:Filter>
+ <dxl:Not>
+ <dxl:IsNull>
+ <dxl:Ident ColId="64" ColName="l_orderkey" TypeMdid="0.20.1.0"/>
+ </dxl:IsNull>
+ </dxl:Not>
+ </dxl:Filter>
+ <dxl:TableDescriptor Mdid="6.31256.1.0" TableName="heap_lineitem">
<dxl:Columns>
- <dxl:Column ColId="0" Attno="1" ColName="s_suppkey" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="1" Attno="2" ColName="s_name" TypeMdid="0.1042.1.0" TypeModifier="29" ColWidth="26"/>
- <dxl:Column ColId="3" Attno="4" ColName="s_nationkey" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="7" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
- <dxl:Column ColId="8" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="9" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="10" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="11" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="12" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
- <dxl:Column ColId="13" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="64" Attno="1" ColName="l_orderkey" TypeMdid="0.20.1.0" ColWidth="8"/>
+ <dxl:Column ColId="66" Attno="3" ColName="l_suppkey" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="80" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
+ <dxl:Column ColId="81" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="82" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="83" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="84" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="85" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
+ <dxl:Column ColId="86" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
</dxl:Columns>
</dxl:TableDescriptor>
</dxl:TableScan>
- <dxl:BroadcastMotion InputSegments="0,1,2" OutputSegments="0,1,2">
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.001182" Rows="3.000000" Width="4"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="30" Alias="n_nationkey">
- <dxl:Ident ColId="30" ColName="n_nationkey" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:SortingColumnList/>
- <dxl:TableScan>
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.000967" Rows="1.000000" Width="4"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="30" Alias="n_nationkey">
- <dxl:Ident ColId="30" ColName="n_nationkey" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter>
- <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.1054.1.0">
- <dxl:Ident ColId="31" ColName="n_name" TypeMdid="0.1042.1.0" TypeModifier="29"/>
- <dxl:ConstValue TypeMdid="0.1042.1.0" Value="AAAADk1PWkFNQklRVUU=" LintValue="217359228"/>
- </dxl:Comparison>
- </dxl:Filter>
- <dxl:TableDescriptor Mdid="6.31259.1.0" TableName="heap_nation">
- <dxl:Columns>
- <dxl:Column ColId="30" Attno="1" ColName="n_nationkey" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="31" Attno="2" ColName="n_name" TypeMdid="0.1042.1.0" TypeModifier="29" ColWidth="26"/>
- <dxl:Column ColId="34" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
- <dxl:Column ColId="35" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="36" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="37" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="38" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="39" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
- <dxl:Column ColId="40" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:TableScan>
- </dxl:BroadcastMotion>
- </dxl:HashJoin>
- <dxl:BroadcastMotion InputSegments="0,1,2" OutputSegments="0,1,2">
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1725.313323" Rows="3.000000" Width="16"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="41" Alias="l_orderkey">
- <dxl:Ident ColId="41" ColName="l_orderkey" TypeMdid="0.20.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="43" Alias="l_suppkey">
- <dxl:Ident ColId="43" ColName="l_suppkey" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="44" Alias="l_linenumber">
- <dxl:Ident ColId="44" ColName="l_linenumber" TypeMdid="0.23.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter/>
- <dxl:SortingColumnList/>
- <dxl:HashJoin JoinType="Inner">
+ <dxl:Result>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1725.313037" Rows="1.000000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.733615" Rows="1.000000" Width="16"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="41" Alias="l_orderkey">
@@ -6060,46 +6135,15 @@
<dxl:Ident ColId="44" ColName="l_linenumber" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
- <dxl:Filter/>
- <dxl:JoinFilter/>
- <dxl:HashCondList>
- <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.410.1.0">
- <dxl:Ident ColId="14" ColName="o_orderkey" TypeMdid="0.20.1.0"/>
- <dxl:Ident ColId="41" ColName="l_orderkey" TypeMdid="0.20.1.0"/>
- </dxl:Comparison>
- </dxl:HashCondList>
- <dxl:TableScan>
- <dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.058247" Rows="499.333333" Width="8"/>
- </dxl:Properties>
- <dxl:ProjList>
- <dxl:ProjElem ColId="14" Alias="o_orderkey">
- <dxl:Ident ColId="14" ColName="o_orderkey" TypeMdid="0.20.1.0"/>
- </dxl:ProjElem>
- </dxl:ProjList>
- <dxl:Filter>
- <dxl:Comparison ComparisonOperator="=" OperatorMdid="0.1054.1.0">
- <dxl:Ident ColId="16" ColName="o_orderstatus" TypeMdid="0.1042.1.0" TypeModifier="5"/>
- <dxl:ConstValue TypeMdid="0.1042.1.0" Value="AAAABUY=" LintValue="160743980"/>
- </dxl:Comparison>
- </dxl:Filter>
- <dxl:TableDescriptor Mdid="6.31262.1.0" TableName="heap_orders">
- <dxl:Columns>
- <dxl:Column ColId="14" Attno="1" ColName="o_orderkey" TypeMdid="0.20.1.0" ColWidth="8"/>
- <dxl:Column ColId="16" Attno="3" ColName="o_orderstatus" TypeMdid="0.1042.1.0" TypeModifier="5" ColWidth="2"/>
- <dxl:Column ColId="23" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
- <dxl:Column ColId="24" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="25" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="26" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="27" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="28" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
- <dxl:Column ColId="29" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
- </dxl:Columns>
- </dxl:TableDescriptor>
- </dxl:TableScan>
- <dxl:HashJoin JoinType="Inner">
+ <dxl:Filter>
+ <dxl:IsNull>
+ <dxl:Ident ColId="87" ColName="l_orderkey" TypeMdid="0.20.1.0"/>
+ </dxl:IsNull>
+ </dxl:Filter>
+ <dxl:OneTimeFilter/>
+ <dxl:HashJoin JoinType="Left">
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="1294.224569" Rows="1.000000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="862.712622" Rows="1914.291369" Width="24"/>
</dxl:Properties>
<dxl:ProjList>
<dxl:ProjElem ColId="41" Alias="l_orderkey">
@@ -6111,193 +6155,109 @@
<dxl:ProjElem ColId="44" Alias="l_linenumber">
<dxl:Ident ColId="44" ColName="l_linenumber" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
+ <dxl:ProjElem ColId="87" Alias="l_orderkey">
+ <dxl:Ident ColId="87" ColName="l_orderkey" TypeMdid="0.20.1.0"/>
+ </dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter/>
<dxl:JoinFilter>
<dxl:Comparison ComparisonOperator="<>" OperatorMdid="0.518.1.0">
- <dxl:Ident ColId="66" ColName="l_suppkey" TypeMdid="0.23.1.0"/>
+ <dxl:Ident ColId="89" ColName="l_suppkey" TypeMdid="0.23.1.0"/>
<dxl:Ident ColId="43" ColName="l_suppkey" TypeMdid="0.23.1.0"/>
</dxl:Comparison>
</dxl:JoinFilter>
<dxl:HashCondList>
<dxl:Comparison ComparisonOperator="=" OperatorMdid="0.410.1.0">
- <dxl:Ident ColId="64" ColName="l_orderkey" TypeMdid="0.20.1.0"/>
<dxl:Ident ColId="41" ColName="l_orderkey" TypeMdid="0.20.1.0"/>
+ <dxl:Ident ColId="87" ColName="l_orderkey" TypeMdid="0.20.1.0"/>
</dxl:Comparison>
</dxl:HashCondList>
<dxl:TableScan>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="431.137578" Rows="2984.979105" Width="12"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.165872" Rows="1194.000000" Width="16"/>
</dxl:Properties>
<dxl:ProjList>
- <dxl:ProjElem ColId="64" Alias="l_orderkey">
- <dxl:Ident ColId="64" ColName="l_orderkey" TypeMdid="0.20.1.0"/>
+ <dxl:ProjElem ColId="41" Alias="l_orderkey">
+ <dxl:Ident ColId="41" ColName="l_orderkey" TypeMdid="0.20.1.0"/>
+ </dxl:ProjElem>
+ <dxl:ProjElem ColId="43" Alias="l_suppkey">
+ <dxl:Ident ColId="43" ColName="l_suppkey" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
- <dxl:ProjElem ColId="66" Alias="l_suppkey">
- <dxl:Ident ColId="66" ColName="l_suppkey" TypeMdid="0.23.1.0"/>
+ <dxl:ProjElem ColId="44" Alias="l_linenumber">
+ <dxl:Ident ColId="44" ColName="l_linenumber" TypeMdid="0.23.1.0"/>
</dxl:ProjElem>
</dxl:ProjList>
<dxl:Filter>
- <dxl:Not>
- <dxl:IsNull>
- <dxl:Ident ColId="64" ColName="l_orderkey" TypeMdid="0.20.1.0"/>
- </dxl:IsNull>
- </dxl:Not>
+ <dxl:Comparison ComparisonOperator=">" OperatorMdid="0.1097.1.0">
+ <dxl:Ident ColId="53" ColName="l_receiptdate" TypeMdid="0.1082.1.0"/>
+ <dxl:Ident ColId="52" ColName="l_commitdate" TypeMdid="0.1082.1.0"/>
+ </dxl:Comparison>
</dxl:Filter>
<dxl:TableDescriptor Mdid="6.31256.1.0" TableName="heap_lineitem">
<dxl:Columns>
- <dxl:Column ColId="64" Attno="1" ColName="l_orderkey" TypeMdid="0.20.1.0" ColWidth="8"/>
- <dxl:Column ColId="66" Attno="3" ColName="l_suppkey" TypeMdid="0.23.1.0" ColWidth="4"/>
- <dxl:Column ColId="80" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
- <dxl:Column ColId="81" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="82" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="83" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
- <dxl:Column ColId="84" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
- <dxl:Column ColId="85" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
- <dxl:Column ColId="86" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="41" Attno="1" ColName="l_orderkey" TypeMdid="0.20.1.0" ColWidth="8"/>
+ <dxl:Column ColId="43" Attno="3" ColName="l_suppkey" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="44" Attno="4" ColName="l_linenumber" TypeMdid="0.23.1.0" ColWidth="4"/>
+ <dxl:Column ColId="52" Attno="12" ColName="l_commitdate" TypeMdid="0.1082.1.0" ColWidth="4"/>
+ <dxl:Column ColId="53" Attno="13" ColName="l_receiptdate" TypeMdid="0.1082.1.0" ColWidth="4"/>
+ <dxl:Column ColId="57" Attno="-1" ColName="ctid" TypeMdid="0.27.1.0" ColWidth="6"/>
+ <dxl:Column ColId="58" Attno="-3" ColName="xmin" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="59" Attno="-4" ColName="cmin" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="60" Attno="-5" ColName="xmax" TypeMdid="0.28.1.0" ColWidth="4"/>
+ <dxl:Column ColId="61" Attno="-6" ColName="cmax" TypeMdid="0.29.1.0" ColWidth="4"/>
+ <dxl:Column ColId="62" Attno="-7" ColName="tableoid" TypeMdid="0.26.1.0" ColWidth="4"/>
+ <dxl:Column ColId="63" Attno="-8" ColName="gp_segment_id" TypeMdid="0.23.1.0" ColWidth="4"/>
</dxl:Columns>
</dxl:TableDescriptor>
</dxl:TableScan>
- <dxl:Result>
+ <dxl:TableScan>
<dxl:Properties>
- <dxl:Cost StartupCost="0" TotalCost="862.733615" Rows="1.000000" Width="16"/>
+ <dxl:Cost StartupCost="0" TotalCost="431.162911" Rows="1194.000000" Width="12"/>
</dxl:Properties>
<dxl:ProjList>
- <dxl:ProjElem ColId="41" Alias="l_orderkey">
- <dxl:Ident ColId="41" ColName="l_orderkey" TypeMdid="0.20.1.0"/>
- </dxl:ProjElem>
- <dxl:ProjElem ColId="43" Alias="l_suppkey">
... 13766 lines suppressed ...
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cloudberry.apache.org
For additional commands, e-mail: commits-help@cloudberry.apache.org