This is an automated email from the ASF dual-hosted git repository.

maxyang pushed a change to branch main
in repository https://gitbox.apache.org/repos/asf/cloudberry.git


    from 572f755fc0 Set `dismiss_stale_reviews: false` in .asf.yaml
     new a153b4a3f2 FIXME : Allow SPE plans to show "Partitions selected: 1 
(out of 5)"
     new ff274c55a9 Store aggregate replication safety info in catalog
     new 07de611941 [ORCA] Use catalog to determine replication safe functions
     new d0d363e4e5 Support HashIndexes in Orca
     new 33e24882cb Fix bogus ORCA plan joining CTE and replicated table 
(#14896)
     new dababb3773 Prevent duplicate filter issue
     new c3c0aef401 Fix duplicate filter due to operator argument order (#15111)
     new 0d20361a39 Remove unused xforms
     new 15c1c54332 Add support for foreign partitions in Orca (#14890)
     new 1cabe2714e Fix 2 compiler warnings.
     new 525b87facb Disable GUC optimizer_penalize_broadcast_threshold when set 
to 0 (#15209)
     new a9e7888578 Orca FIXME: Add checks to ensure plans with part selectors 
are valid (#15083)
     new 142353684b Fix COPY when executed via fdw on coordinator as executor 
(#14846)
     new 8d4b9d3ff5 Fix: cherry-pick DynamicForeignscan
     new 5168873c3c Fix icw test cases generted from cherry-pick 
DynamicForeignscan

The 15 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 contrib/file_fdw/expected/.gitignore               |    3 +
 contrib/file_fdw/input/gp_file_fdw.source          |   20 +
 contrib/file_fdw/output/file_fdw_optimizer.source  |   22 +-
 contrib/file_fdw/output/gp_file_fdw.source         |   91 +-
 .../file_fdw/output/gp_file_fdw_optimizer.source   |  145 +++
 contrib/postgres_fdw/postgres_fdw.c                |    2 +-
 src/backend/catalog/pg_aggregate.c                 |    2 +
 src/backend/cdb/cdbplan.c                          |   17 +-
 src/backend/commands/aggregatecmds.c               |    4 +
 src/backend/commands/copyfrom.c                    |   16 +
 src/backend/commands/explain.c                     |  117 +-
 src/backend/commands/explain_gp.c                  |    5 +-
 src/backend/executor/Makefile                      |    3 +-
 src/backend/executor/execAmi.c                     |   12 +-
 src/backend/executor/execProcnode.c                |   10 +
 src/backend/executor/nodeDynamicBitmapHeapscan.c   |    2 +-
 ...deDynamicSeqscan.c => nodeDynamicForeignscan.c} |  141 ++-
 src/backend/executor/nodeDynamicSeqscan.c          |    2 +-
 src/backend/executor/nodeForeignscan.c             |   17 +-
 src/backend/foreign/foreign.c                      |    2 +-
 src/backend/gpopt/config/CConfigParamMapping.cpp   |    7 +
 src/backend/gpopt/gpdbwrappers.cpp                 |   23 +
 .../gpopt/translate/CTranslatorDXLToPlStmt.cpp     |  180 +++
 .../gpopt/translate/CTranslatorQueryToDXL.cpp      |   44 +-
 .../gpopt/translate/CTranslatorRelcacheToDXL.cpp   |   63 +-
 src/backend/gpopt/translate/CTranslatorUtils.cpp   |   17 +
 .../dxl/expressiontests/LOJ-TO-InnerJoin-Q1.xml    |    8 +
 .../dxl/expressiontests/LOJ-TO-InnerJoin-Q11.xml   |    8 +
 .../dxl/expressiontests/LOJ-TO-InnerJoin-Q12.xml   |    8 +
 .../dxl/expressiontests/LOJ-TO-InnerJoin-Q13.xml   |    8 +
 .../dxl/expressiontests/LOJ-TO-InnerJoin-Q14.xml   |    8 +
 .../dxl/expressiontests/LOJ-TO-InnerJoin-Q15.xml   |    8 +
 .../dxl/expressiontests/LOJ-TO-InnerJoin-Q8.xml    |    8 +
 .../dxl/expressiontests/LOJ-TO-InnerJoin-Q9.xml    |    8 +
 .../WinFunc-OuterRef-Partition-Order-Query.xml     |    8 +
 .../WinFunc-OuterRef-Partition-Query.xml           |    8 +
 .../dxl/minidump/AggonExternalTableNoMotion.mdp    |    2 +-
 .../minidump/AnySubqueryWithSubqueryInScalar.mdp   |    8 +
 .../dxl/minidump/AnySubqueryWithVolatileFunc.mdp   |   12 +
 .../gporca/data/dxl/minidump/BRINScan-Or.mdp       |   48 +
 .../data/dxl/minidump/BitmapBoolOp-DeepTree2.mdp   |   12 +
 .../minidump/BitmapIndexApply-Basic-SelfJoin.mdp   |    2 +-
 .../minidump/BitmapIndexApply-Basic-TwoTables.mdp  |    2 +-
 .../BitmapIndexApply-Complex-Condition.mdp         |   10 +-
 .../BitmapIndexApply-InnerSelect-Basic.mdp         |    2 +-
 .../BitmapIndexApply-InnerSelect-PartTable.mdp     |    2 +-
 .../dxl/minidump/BitmapIndexApply-PartTable.mdp    |    2 +-
 .../dxl/minidump/BitmapIndexNLJWithProject.mdp     |    2 +-
 .../minidump/BitmapIndexNLJWithProjectNoFilt.mdp   |    2 +-
 .../dxl/minidump/BitmapIndexNLOJWithProject.mdp    |    2 +-
 .../minidump/BitmapIndexNLOJWithProjectNonPart.mdp |   10 +-
 .../gporca/data/dxl/minidump/BitmapIndexScan.mdp   |    2 +-
 .../minidump/BtreeIndexNLJWithProjectNoPart.mdp    |   10 +-
 .../dxl/minidump/BtreeIndexNLOJWithProject.mdp     |    2 +-
 src/backend/gporca/data/dxl/minidump/CTE-4.mdp     |    2 +-
 .../gporca/data/dxl/minidump/CTE15HAReplicated.mdp |  673 ++++++++++
 .../gporca/data/dxl/minidump/CTE15Replicated.mdp   |  703 +++++++++++
 .../gporca/data/dxl/minidump/CTE2HAReplicated.mdp  |  750 +++++++++++
 .../gporca/data/dxl/minidump/CTE2Replicated.mdp    |  780 ++++++++++++
 .../gporca/data/dxl/minidump/CollapseNot.mdp       |   12 +
 .../dxl/minidump/Correlation-With-Casting-1.mdp    |    2 +-
 .../dxl/minidump/Correlation-With-Casting-2.mdp    |    2 +-
 .../dxl/minidump/DML-With-WindowFunc-OuterRef.mdp  |    8 +
 .../gporca/data/dxl/minidump/DPE-SemiJoin.mdp      |    8 +
 .../data/dxl/minidump/Date-TimeStamp-HashJoin.mdp  |    8 +
 .../data/dxl/minidump/DirectDispatch-IndexScan.mdp |    8 +
 ...rectDispatch-SingleCol-Disjunction-Negative.mdp |    8 +
 ...nge-Cost4.mdp => DisableBroadcastThreshold.mdp} | 1301 ++++++++++----------
 .../data/dxl/minidump/DynamicBitmapIndexScan.mdp   |    2 +-
 .../gporca/data/dxl/minidump/EquivClassesLimit.mdp |    8 +
 .../gporca/data/dxl/minidump/ExternalTable1.mdp    |    2 +-
 .../gporca/data/dxl/minidump/ExternalTable2.mdp    |    2 +-
 .../gporca/data/dxl/minidump/ExternalTable3.mdp    |    2 +-
 .../gporca/data/dxl/minidump/ExternalTable4.mdp    |    2 +-
 .../data/dxl/minidump/ExternalTableWithFilter.mdp  |    2 +-
 .../data/dxl/minidump/ExtractPredicateFromDisj.mdp |    8 +
 ...ExtractPredicateFromDisjWithComputedColumns.mdp |    8 +
 ...eous-Partitioned.mdp => ForeignPartUniform.mdp} |  187 ++-
 .../gporca/data/dxl/minidump/GroupByOuterRef.mdp   |    8 +
 .../gporca/data/dxl/minidump/HJN-DeeperOuter.mdp   |   29 +
 ...an-NoDistKeyInIndex.mdp => Hash-BitmapScan.mdp} |  196 +--
 ...can-NoDistKeyInIndex.mdp => Hash-IndexScan.mdp} |  182 +--
 .../minidump/Index-Join-With-Subquery-In-Pred.mdp  |    2 +-
 ...dexApply-Heterogeneous-BothSidesPartitioned.mdp |    2 +-
 .../dxl/minidump/IndexApply-Heterogeneous-DTS.mdp  |    2 +-
 .../minidump/IndexApply-Heterogeneous-NoDTS.mdp    |    2 +-
 .../minidump/IndexApply-IndexOnMasterOnlyTable.mdp |    2 +-
 .../dxl/minidump/IndexApply-InnerSelect-Basic.mdp  |    2 +-
 .../IndexApply-InnerSelect-Heterogeneous-DTS.mdp   |    2 +-
 .../minidump/IndexApply-InnerSelect-PartTable.mdp  |    2 +-
 .../dxl/minidump/IndexApply-LeftOuter-NLJoin.mdp   |    2 +-
 ...pply-MultiDistKeys-IncompletePDS-3-DistCols.mdp |   10 +-
 .../data/dxl/minidump/IndexApply-PartTable.mdp     |    2 +-
 .../minidump/IndexApply1-CalibratedCostModel.mdp   |    2 +-
 .../gporca/data/dxl/minidump/IndexApply1.mdp       |    2 +-
 .../gporca/data/dxl/minidump/IndexApply2.mdp       |    2 +-
 .../gporca/data/dxl/minidump/IndexApply3.mdp       |    2 +-
 .../gporca/data/dxl/minidump/IndexApply4.mdp       |    2 +-
 ...verlappingHeterogenousIndex-ANDPredicate-AO.mdp |   12 +
 ...rlappingHeterogenousIndex-ANDPredicate-HEAP.mdp |   12 +
 ...pingHomogenousIndexesOnRoot-ANDPredicate-AO.mdp |   12 +
 ...ppingHomogenousIndexesOnRoot-ORPredicate-AO.mdp |   12 +
 ...OverlappingHeterogenousIndex-ORPredicate-AO.mdp |   12 +
 ...pingHomogenousIndexesOnRoot-ANDPredicate-AO.mdp |   12 +
 ...ppingHomogenousIndexesOnRoot-ORPredicate-AO.mdp |   12 +
 .../gporca/data/dxl/minidump/IndexScan-AndedIn.mdp |   12 +
 .../data/dxl/minidump/IndexScan-ORPredsAOPart.mdp  |   12 +
 .../data/dxl/minidump/InferPredicatesForLimit.mdp  |   12 +
 .../data/dxl/minidump/InferPredicatesForPartSQ.mdp |   12 +
 .../minidump/InferPredicatesFromExistsSubquery.mdp |   12 +
 .../dxl/minidump/InferPredicatesJoinSubquery.mdp   |   12 +
 .../dxl/minidump/InferPredicatesMultiColumns.mdp   |   12 +
 .../gporca/data/dxl/minidump/InsertAssertSort.mdp  |    2 +-
 .../gporca/data/dxl/minidump/InsertProjectSort.mdp |    2 +-
 .../data/dxl/minidump/Join-INDF-NoBroadcast.mdp    |    2 +-
 .../minidump/Join-INDF-Nulls-Not-Collocated.mdp    |    2 +-
 .../dxl/minidump/Join_OuterChild_DistUniversal.mdp |    8 +
 .../data/dxl/minidump/LOJ-DynBitmapIndex.mdp       |    2 +-
 .../dxl/minidump/LOJ-DynBitmapIndexWithSelect.mdp  |    2 +-
 .../minidump/LOJ-IndexApply-CompsiteKey-Equiv.mdp  |    2 +-
 .../LOJ-IndexApply-CompsiteKey-NoMotion.mdp        |    2 +-
 .../LOJ-IndexApply-DistKey-Multiple-Predicates.mdp |    2 +-
 .../minidump/LOJ-IndexApply-MasterOnly-Table.mdp   |    2 +-
 .../LOJ-IndexApply-MultiDistKeys-IndexKeys.mdp     |    2 +-
 .../dxl/minidump/LOJ-IndexApply-MultiIndexes.mdp   |   18 +-
 .../LOJ-IndexApply-Negative-NonEqual-Predicate.mdp |    2 +-
 .../dxl/minidump/LOJ-IndexApply-NonDistKey.mdp     |    2 +-
 .../LOJ-IndexApply-WithComplexPredicates.mdp       |    2 +-
 .../dxl/minidump/LeftJoin-With-Pred-On-Inner2.mdp  |    8 +
 .../dxl/minidump/LogicalIndexGetDroppedCols.mdp    |   17 +
 .../data/dxl/minidump/MultipleIndexPredicate.mdp   |   12 +
 .../data/dxl/minidump/NLJ-DistCol-No-Broadcast.mdp |    2 +-
 .../dxl/minidump/NLJ-EqAllCol-No-Broadcast.mdp     |    2 +-
 .../NLJ-EqDistCol-InEqNonDistCol-No-Broadcast.mdp  |    2 +-
 .../NLJ-InEqDistCol-EqNonDistCol-Redistribute.mdp  |    2 +-
 .../dxl/minidump/NestedNLJWithBlockingSpool.mdp    |    2 +-
 ...ngHomogenousIndexesOnRoot-ANDPredicate-HEAP.mdp |   12 +
 .../NotWellDefinedDisjunctConjunctPredicates.mdp   |   16 +
 ...ngHomogenousIndexesOnRoot-ANDPredicate-HEAP.mdp |   12 +
 ...ed.mdp => PartForeignDifferentExecLocation.mdp} |  518 ++++----
 .../dxl/minidump/PartForeignDifferentServer.mdp    |  565 +++++++++
 ...eneous-Partitioned.mdp => PartForeignMixed.mdp} |  267 ++--
 ...ive-IndexApply2.mdp => PartForeignMixedDPE.mdp} |  844 ++++++-------
 ...ive-IndexApply2.mdp => PartForeignMixedSPE.mdp} |  720 +++++------
 ...s-Partitioned.mdp => PartForeignUniformSPE.mdp} |  221 ++--
 .../gporca/data/dxl/minidump/PartTbl-DPE.mdp       |    2 +-
 .../gporca/data/dxl/minidump/PartTbl-HJ5.mdp       |    2 +-
 .../data/dxl/minidump/PartTbl-IsNullPredicate.mdp  |   24 +
 .../dxl/minidump/PartTbl-MultiWayJoinWithDPE.mdp   |    8 +
 .../PartTbl-SPE-DynamicTableScan-Range-Cost3.mdp   |   24 +
 .../gporca/data/dxl/minidump/PartTbl-SQAny.mdp     |   13 +
 .../data/dxl/minidump/ProjectWithTextConstant.mdp  |    2 +-
 ... => PushConstantSelectPredicateThruJoin-11.mdp} |  381 +++---
 ... => PushConstantSelectPredicateThruJoin-12.mdp} |  365 +++---
 ... => PushConstantSelectPredicateThruJoin-13.mdp} |  369 +++---
 ... => PushConstantSelectPredicateThruJoin-14.mdp} |  507 ++++----
 ... => PushConstantSelectPredicateThruJoin-15.mdp} |  497 ++++----
 .../dxl/minidump/PushFilterToSemiJoinLeftChild.mdp |    8 +
 .../dxl/minidump/PushGbBelowJoin-NegativeCase.mdp  |    8 +
 .../minidump/PushSelectWithOuterRefBelowUnion.mdp  |    8 +
 .../data/dxl/minidump/ReplicatedTableGroupBy.mdp   |    2 +-
 .../minidump/ReplicatedTableWithAggNoMotion.mdp    |    2 +-
 .../minidump/SemiJoinWithWindowsFuncInSubquery.mdp |    8 +
 .../data/dxl/minidump/Subq2OuterRef2InJoin.mdp     |    8 +
 .../dxl/minidump/Subq2OuterRefMultiLevelInOn.mdp   |    8 +
 .../data/dxl/minidump/Subq2PartialDecorrelate.mdp  |    8 +
 .../data/dxl/minidump/TimeStamp-Date-HashJoin.mdp  |    8 +
 .../minidump/Union-OuterRefs-Casting-Output.mdp    |   17 +
 .../gporca/data/dxl/minidump/UnionOfDQAQueries.mdp |    2 +-
 .../gporca/data/dxl/minidump/UnnestSQJoins.mdp     |    8 +
 .../gporca/data/dxl/parse_tests/q26-Metadata.xml   |   10 +-
 src/backend/gporca/data/dxl/search/strategy0.xml   |    4 +-
 .../gporca/libgpdbcost/src/CCostModelGPDB.cpp      |    9 +-
 .../include/gpopt/base/CPartitionPropagationSpec.h |    5 +
 .../gporca/libgpopt/include/gpopt/base/CUtils.h    |    8 +-
 ...calForeignGet.h => CLogicalDynamicForeignGet.h} |   89 +-
 .../include/gpopt/operators/CLogicalDynamicGet.h   |   21 +-
 .../libgpopt/include/gpopt/operators/COperator.h   |    3 +
 ...ForeignScan.h => CPhysicalDynamicForeignScan.h} |   75 +-
 .../include/gpopt/operators/CScalarAggFunc.h       |   13 +-
 .../include/gpopt/translate/CTranslatorExprToDXL.h |   13 +
 .../gporca/libgpopt/include/gpopt/xforms/CXform.h  |    8 +-
 ...> CXformDynamicForeignGet2DynamicForeignScan.h} |   31 +-
 .../xforms/CXformDynamicGet2DynamicTableScan.h     |    8 +-
 .../CXformExpandDynamicGetWithForeignPartitions.h  |  114 ++
 .../gpopt/xforms/CXformInnerJoin2HashJoin.h        |   71 --
 .../include/gpopt/xforms/CXformInnerJoin2NLJoin.h  |   71 --
 .../gporca/libgpopt/include/gpopt/xforms/xforms.h  |    4 +-
 .../src/base/CPartitionPropagationSpec.cpp         |   28 +
 src/backend/gporca/libgpopt/src/base/CUtils.cpp    |  103 +-
 .../src/operators/CExpressionPreprocessor.cpp      |   15 +-
 .../gporca/libgpopt/src/operators/CLogical.cpp     |    5 +-
 .../src/operators/CLogicalDynamicForeignGet.cpp    |  156 +++
 .../libgpopt/src/operators/CLogicalDynamicGet.cpp  |   40 +-
 .../libgpopt/src/operators/CLogicalUnion.cpp       |   12 -
 .../src/operators/COrderedAggPreprocessor.cpp      |    2 +-
 .../src/operators/CPhysicalDynamicForeignScan.cpp  |  138 +++
 .../src/operators/CPhysicalDynamicScan.cpp         |    1 +
 .../libgpopt/src/operators/CPhysicalFilter.cpp     |   11 +
 .../src/operators/CPhysicalForeignScan.cpp         |    8 +-
 .../libgpopt/src/operators/CPhysicalMotion.cpp     |    6 +-
 .../src/operators/CPhysicalPartitionSelector.cpp   |   12 +-
 .../libgpopt/src/operators/CPhysicalSequence.cpp   |   17 +
 .../libgpopt/src/operators/CPhysicalSpool.cpp      |    7 +-
 .../libgpopt/src/operators/CPredicateUtils.cpp     |    4 +
 .../libgpopt/src/operators/CScalarAggFunc.cpp      |    5 +-
 .../libgpopt/src/operators/CScalarProjectList.cpp  |    8 +-
 src/backend/gporca/libgpopt/src/operators/Makefile |    2 +
 .../src/translate/CTranslatorDXLToExpr.cpp         |   27 +-
 .../src/translate/CTranslatorExprToDXL.cpp         |  129 ++
 src/backend/gporca/libgpopt/src/xforms/CXform.cpp  |    4 -
 ...CXformDynamicForeignGet2DynamicForeignScan.cpp} |   51 +-
 .../xforms/CXformDynamicGet2DynamicTableScan.cpp   |   13 +
 .../gporca/libgpopt/src/xforms/CXformEagerAgg.cpp  |    4 +-
 ...CXformExpandDynamicGetWithForeignPartitions.cpp |  252 ++++
 .../gporca/libgpopt/src/xforms/CXformFactory.cpp   |    6 +-
 .../src/xforms/CXformImplementInnerJoin.cpp        |    4 +-
 .../src/xforms/CXformInnerJoin2HashJoin.cpp        |   79 --
 .../libgpopt/src/xforms/CXformInnerJoin2NLJoin.cpp |   79 --
 .../src/xforms/CXformSelect2DynamicIndexGet.cpp    |    8 +
 .../gporca/libgpopt/src/xforms/CXformSplitDQA.cpp  |   12 +-
 .../libgpopt/src/xforms/CXformSplitGbAgg.cpp       |    6 +-
 .../gporca/libgpopt/src/xforms/CXformUtils.cpp     |   21 +-
 .../xforms/CxformSelect2DynamicBitmapBoolOp.cpp    |   10 +-
 src/backend/gporca/libgpopt/src/xforms/Makefile    |    4 +-
 .../libgpos/include/gpos/common/CDynamicPtrArray.h |    5 +-
 .../gporca/libgpos/include/gpos/common/CHashMap.h  |    5 +
 .../include/naucrates/dxl/operators/CDXLOperator.h |    1 +
 ...ableScan.h => CDXLPhysicalDynamicForeignScan.h} |   54 +-
 ...bleScan.h => CParseHandlerDynamicForeignScan.h} |   30 +-
 .../naucrates/dxl/parser/CParseHandlerFactory.h    |    5 +
 .../naucrates/dxl/parser/CParseHandlerMDGPDBAgg.h  |    3 +
 .../naucrates/dxl/parser/CParseHandlerMDRelation.h |    3 +
 .../include/naucrates/dxl/parser/parsehandlers.h   |    1 +
 .../include/naucrates/dxl/xml/dxltokens.h          |    9 +-
 .../include/naucrates/md/CMDAggregateGPDB.h        |   13 +-
 .../include/naucrates/md/CMDRelationCtasGPDB.h     |    6 +
 .../include/naucrates/md/CMDRelationGPDB.h         |   26 +-
 .../include/naucrates/md/IMDAggregate.h            |    3 +
 .../libnaucrates/include/naucrates/md/IMDIndex.h   |    1 +
 .../include/naucrates/md/IMDRelation.h             |    3 +
 .../include/naucrates/traceflags/traceflags.h      |    6 +
 .../libnaucrates/src/md/CMDAggregateGPDB.cpp       |   11 +-
 .../gporca/libnaucrates/src/md/CMDIdGPDB.cpp       |    2 -
 .../gporca/libnaucrates/src/md/CMDIndexGPDB.cpp    |    3 +-
 .../gporca/libnaucrates/src/md/CMDRelationGPDB.cpp |   17 +-
 .../gporca/libnaucrates/src/md/IMDIndex.cpp        |    2 +
 .../src/operators/CDXLOperatorFactory.cpp          |    5 +
 ...Scan.cpp => CDXLPhysicalDynamicForeignScan.cpp} |   56 +-
 .../gporca/libnaucrates/src/operators/Makefile     |    1 +
 ...can.cpp => CParseHandlerDynamicForeignScan.cpp} |   45 +-
 .../src/parser/CParseHandlerFactory.cpp            |   11 +
 .../src/parser/CParseHandlerMDGPDBAgg.cpp          |   15 +-
 .../src/parser/CParseHandlerMDRelation.cpp         |   14 +-
 .../gporca/libnaucrates/src/parser/Makefile        |    1 +
 .../gporca/libnaucrates/src/xml/dxltokens.cpp      |   10 +-
 src/backend/gporca/server/CMakeLists.txt           |   15 +-
 .../gporca/server/src/unittest/CTestUtils.cpp      |   12 +-
 .../src/unittest/gpopt/minidump/CCTETest.cpp       |    6 +-
 .../src/unittest/gpopt/minidump/CICGTest.cpp       |    3 +-
 .../unittest/gpopt/search/CSearchStrategyTest.cpp  |    2 +-
 .../unittest/gpopt/xforms/CXformFactoryTest.cpp    |    4 +-
 src/backend/nodes/copyfuncs.c                      |   42 +-
 src/backend/nodes/outfast.c                        |    3 +
 src/backend/nodes/outfuncs.c                       |   27 +-
 src/backend/nodes/readfast.c                       |    3 +
 src/backend/nodes/readfuncs.c                      |   31 +-
 src/backend/optimizer/util/walkers.c               |    1 +
 src/backend/utils/cache/lsyscache.c                |   25 +
 src/backend/utils/misc/guc_gp.c                    |    4 +-
 src/bin/pg_dump/pg_dump.c                          |   12 +
 src/include/catalog/catversion.h                   |    2 +-
 src/include/catalog/pg_aggregate.dat               |  213 ++--
 src/include/catalog/pg_aggregate.h                 |    4 +
 src/include/executor/nodeDynamicForeignscan.h      |   23 +
 src/include/executor/nodeForeignscan.h             |    2 +
 src/include/gpopt/gpdbwrappers.h                   |    4 +
 .../gpopt/translate/CTranslatorDXLToPlStmt.h       |    8 +
 src/include/gpopt/translate/CTranslatorUtils.h     |    4 +
 src/include/nodes/execnodes.h                      |   47 +-
 src/include/nodes/nodes.h                          |    2 +
 src/include/nodes/plannodes.h                      |   27 +
 src/include/utils/lsyscache.h                      |    1 +
 .../isolation2/expected/lockmodes_optimizer.out    |   32 +-
 src/test/regress/data/part1.csv                    |    4 +
 src/test/regress/data/part2.csv                    |    4 +
 src/test/regress/expected/.gitignore               |    2 +
 src/test/regress/expected/aggregates_optimizer.out |    2 +-
 src/test/regress/expected/bfv_index.out            |  311 +++++
 src/test/regress/expected/bfv_index_optimizer.out  |  299 +++++
 .../regress/expected/create_index_optimizer.out    |   10 +-
 src/test/regress/expected/dpe_optimizer.out        |   64 +-
 src/test/regress/expected/gp_aggregates_costs.out  |   40 +
 .../expected/gp_aggregates_costs_optimizer.out     |   38 +
 src/test/regress/expected/gporca.out               |  162 +--
 src/test/regress/expected/gporca_optimizer.out     |  230 ++--
 .../regress/expected/groupingsets_optimizer.out    |   19 +-
 src/test/regress/expected/hash_index.out           |    2 +
 src/test/regress/expected/inherit_optimizer.out    |   20 +-
 src/test/regress/expected/join_optimizer.out       |    2 +-
 .../regress/expected/olap_window_seq_optimizer.out |   94 +-
 .../expected/orca_static_pruning_optimizer.out     |   16 +-
 src/test/regress/expected/partition_optimizer.out  |   16 +-
 .../regress/expected/partition_prune_optimizer.out |  132 +-
 .../regress/expected/qp_dropped_cols_optimizer.out |    2 +-
 src/test/regress/expected/qp_orca_fallback.out     |   24 +-
 .../expected/qp_orca_fallback_optimizer.out        |   30 +-
 .../regress/expected/subselect_gp_optimizer.out    |   81 +-
 src/test/regress/expected/subselect_optimizer.out  |    4 +-
 .../regress/expected/with_clause_optimizer.out     |    4 +-
 src/test/regress/greenplum_schedule                |    2 +-
 src/test/regress/input/part_external_table.source  |  131 ++
 src/test/regress/output/part_external_table.source |  414 +++++++
 .../output/part_external_table_optimizer.source    |  410 ++++++
 src/test/regress/sql/.gitignore                    |    1 +
 src/test/regress/sql/bfv_index.sql                 |  117 ++
 src/test/regress/sql/gp_aggregates_costs.sql       |   21 +
 src/test/regress/sql/gporca.sql                    |   37 +-
 src/test/regress/sql/hash_index.sql                |    3 +
 src/test/regress/sql/qp_orca_fallback.sql          |    4 +-
 320 files changed, 12633 insertions(+), 4746 deletions(-)
 create mode 100644 contrib/file_fdw/output/gp_file_fdw_optimizer.source
 copy src/backend/executor/{nodeDynamicSeqscan.c => nodeDynamicForeignscan.c} 
(59%)
 create mode 100644 src/backend/gporca/data/dxl/minidump/CTE15HAReplicated.mdp
 create mode 100644 src/backend/gporca/data/dxl/minidump/CTE15Replicated.mdp
 create mode 100644 src/backend/gporca/data/dxl/minidump/CTE2HAReplicated.mdp
 create mode 100644 src/backend/gporca/data/dxl/minidump/CTE2Replicated.mdp
 copy 
src/backend/gporca/data/dxl/minidump/{PartTbl-SPE-DynamicTableScan-Range-Cost4.mdp
 => DisableBroadcastThreshold.mdp} (80%)
 copy src/backend/gporca/data/dxl/minidump/{DTS-Hetrogeneous-Partitioned.mdp => 
ForeignPartUniform.mdp} (71%)
 copy src/backend/gporca/data/dxl/minidump/{IndexOnlyScan-NoDistKeyInIndex.mdp 
=> Hash-BitmapScan.mdp} (71%)
 copy src/backend/gporca/data/dxl/minidump/{IndexOnlyScan-NoDistKeyInIndex.mdp 
=> Hash-IndexScan.mdp} (75%)
 copy src/backend/gporca/data/dxl/minidump/{DTS-Hetrogeneous-Partitioned.mdp => 
PartForeignDifferentExecLocation.mdp} (50%)
 create mode 100644 
src/backend/gporca/data/dxl/minidump/PartForeignDifferentServer.mdp
 copy src/backend/gporca/data/dxl/minidump/{DTS-Hetrogeneous-Partitioned.mdp => 
PartForeignMixed.mdp} (55%)
 copy src/backend/gporca/data/dxl/minidump/{Negative-IndexApply2.mdp => 
PartForeignMixedDPE.mdp} (56%)
 copy src/backend/gporca/data/dxl/minidump/{Negative-IndexApply2.mdp => 
PartForeignMixedSPE.mdp} (52%)
 copy src/backend/gporca/data/dxl/minidump/{DTS-Hetrogeneous-Partitioned.mdp => 
PartForeignUniformSPE.mdp} (66%)
 copy src/backend/gporca/data/dxl/minidump/{InferPredicatesBCC-vc-txt.mdp => 
PushConstantSelectPredicateThruJoin-11.mdp} (61%)
 copy src/backend/gporca/data/dxl/minidump/{InferPredicatesBCC-vc-txt.mdp => 
PushConstantSelectPredicateThruJoin-12.mdp} (62%)
 copy src/backend/gporca/data/dxl/minidump/{SqlFuncNullReject.mdp => 
PushConstantSelectPredicateThruJoin-13.mdp} (57%)
 copy 
src/backend/gporca/data/dxl/minidump/{InferPredicatesFromExistsSubquery.mdp => 
PushConstantSelectPredicateThruJoin-14.mdp} (53%)
 copy 
src/backend/gporca/data/dxl/minidump/{PushConstantSelectPredicateThruJoin-7.mdp 
=> PushConstantSelectPredicateThruJoin-15.mdp} (55%)
 copy src/backend/gporca/libgpopt/include/gpopt/operators/{CLogicalForeignGet.h 
=> CLogicalDynamicForeignGet.h} (51%)
 copy 
src/backend/gporca/libgpopt/include/gpopt/operators/{CPhysicalForeignScan.h => 
CPhysicalDynamicForeignScan.h} (51%)
 copy 
src/backend/gporca/libgpopt/include/gpopt/xforms/{CXformForeignGet2ForeignScan.h
 => CXformDynamicForeignGet2DynamicForeignScan.h} (51%)
 create mode 100644 
src/backend/gporca/libgpopt/include/gpopt/xforms/CXformExpandDynamicGetWithForeignPartitions.h
 delete mode 100644 
src/backend/gporca/libgpopt/include/gpopt/xforms/CXformInnerJoin2HashJoin.h
 delete mode 100644 
src/backend/gporca/libgpopt/include/gpopt/xforms/CXformInnerJoin2NLJoin.h
 create mode 100644 
src/backend/gporca/libgpopt/src/operators/CLogicalDynamicForeignGet.cpp
 create mode 100644 
src/backend/gporca/libgpopt/src/operators/CPhysicalDynamicForeignScan.cpp
 copy 
src/backend/gporca/libgpopt/src/xforms/{CXformDynamicGet2DynamicTableScan.cpp 
=> CXformDynamicForeignGet2DynamicForeignScan.cpp} (55%)
 create mode 100644 
src/backend/gporca/libgpopt/src/xforms/CXformExpandDynamicGetWithForeignPartitions.cpp
 delete mode 100644 
src/backend/gporca/libgpopt/src/xforms/CXformInnerJoin2HashJoin.cpp
 delete mode 100644 
src/backend/gporca/libgpopt/src/xforms/CXformInnerJoin2NLJoin.cpp
 copy 
src/backend/gporca/libnaucrates/include/naucrates/dxl/operators/{CDXLPhysicalDynamicTableScan.h
 => CDXLPhysicalDynamicForeignScan.h} (56%)
 copy 
src/backend/gporca/libnaucrates/include/naucrates/dxl/parser/{CParseHandlerDynamicTableScan.h
 => CParseHandlerDynamicForeignScan.h} (62%)
 copy 
src/backend/gporca/libnaucrates/src/operators/{CDXLPhysicalDynamicTableScan.cpp 
=> CDXLPhysicalDynamicForeignScan.cpp} (68%)
 copy 
src/backend/gporca/libnaucrates/src/parser/{CParseHandlerDynamicTableScan.cpp 
=> CParseHandlerDynamicForeignScan.cpp} (80%)
 create mode 100644 src/include/executor/nodeDynamicForeignscan.h
 create mode 100644 src/test/regress/data/part1.csv
 create mode 100644 src/test/regress/data/part2.csv
 create mode 100644 src/test/regress/input/part_external_table.source
 create mode 100644 src/test/regress/output/part_external_table.source
 create mode 100644 src/test/regress/output/part_external_table_optimizer.source


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to