This is an automated email from the ASF dual-hosted git repository.
godfrey pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/flink.git
from 8ac7e9724a6 [FLINK-27619][sql] fix use wrong constant for over window.
add bca84305750 [FLINK-28570][table-planner] Extends FlinkRelOptUtil to
support print upsertKey info
add 5daebae30b9 [FLINK-28570][table-planner] Append upsertMaterialize info
by a simpler way of overriding the explainTerms method for StreamPhysicalSink
add 512e4e0f2de [FLINK-28570][table-planner] Introduces a base class
StreamPhysicalGroupWindowAggregateBase for all related sub-classes
add a4189170dce [FLINK-28570][table-planner] Extracts common attributes
into StreamPhysicalGroupAggregateBase for all sub-classes
add fa3aa8f3759 [FLINK-28570][table-planner] Optimize upsertKey inference
for lookup join and fix ConnectorCatalogTable lost pk on stream source
add fd6c1cc96ce [FLINK-28570][table-planner] Introduces a
StreamNonDeterministicPlanResolver to validate and try to solve (lookup join
only) the non-deterministic updates problem which may cause wrong result or
error
No new revisions were added by this update.
Summary of changes:
.../generated/optimizer_config_configuration.html | 18 +-
.../table/api/config/OptimizerConfigOptions.java | 50 +
.../flink/table/catalog/ConnectorCatalogTable.java | 4 +
.../plan/nodes/exec/batch/BatchExecLookupJoin.java | 15 +-
.../nodes/exec/common/CommonExecLookupJoin.java | 195 +-
.../nodes/exec/stream/StreamExecLookupJoin.java | 43 +-
...StreamNonDeterministicPhysicalPlanResolver.java | 193 ++
.../StreamNonDeterministicUpdatePlanVisitor.java | 978 ++++++
.../table/planner/plan/utils/LookupJoinUtil.java | 31 +-
.../table/planner/delegation/StreamPlanner.scala | 3 +-
.../metadata/FlinkRelMdModifiedMonotonicity.scala | 6 +-
.../plan/metadata/FlinkRelMdUniqueKeys.scala | 40 +-
.../plan/metadata/FlinkRelMdUpsertKeys.scala | 28 +-
.../nodes/physical/common/CommonPhysicalJoin.scala | 12 +
.../physical/common/CommonPhysicalLookupJoin.scala | 112 +-
.../stream/StreamPhysicalCorrelateBase.scala | 6 +-
.../StreamPhysicalGlobalGroupAggregate.scala | 6 +-
.../StreamPhysicalGlobalWindowAggregate.scala | 16 +-
.../stream/StreamPhysicalGroupAggregate.scala | 6 +-
.../stream/StreamPhysicalGroupAggregateBase.scala | 6 +-
.../StreamPhysicalGroupTableAggregateBase.scala | 8 +-
.../StreamPhysicalGroupWindowAggregateBase.scala | 16 +-
.../StreamPhysicalIncrementalGroupAggregate.scala | 11 +-
.../nodes/physical/stream/StreamPhysicalJoin.scala | 13 -
.../stream/StreamPhysicalLocalGroupAggregate.scala | 6 +-
.../StreamPhysicalLocalWindowAggregate.scala | 8 +-
.../physical/stream/StreamPhysicalLookupJoin.scala | 36 +-
.../stream/StreamPhysicalOverAggregate.scala | 2 +-
.../stream/StreamPhysicalOverAggregateBase.scala | 2 +-
.../StreamPhysicalPythonGroupAggregate.scala | 6 +-
.../nodes/physical/stream/StreamPhysicalRank.scala | 2 +-
.../nodes/physical/stream/StreamPhysicalSink.scala | 22 +-
.../stream/StreamPhysicalWindowAggregate.scala | 16 +-
...ala => StreamPhysicalWindowAggregateBase.scala} | 27 +-
.../stream/StreamPhysicalWindowDeduplicate.scala | 4 +-
.../StreamCommonSubGraphBasedOptimizer.scala | 3 +
.../table/planner/plan/utils/FlinkRelOptUtil.scala | 6 +-
.../table/planner/plan/utils/FlinkRexUtil.scala | 49 +
.../planner/plan/utils/RelTreeWriterImpl.scala | 20 +-
.../nodes/exec/operator/StreamOperatorNameTest.xml | 4 +-
.../testJoinTemporalTable.out | 3 +-
...testJoinTemporalTableWithProjectionPushDown.out | 3 +-
.../plan/stream/sql/NonDeterministicDagTest.xml | 3105 ++++++++++++++++++++
.../table/planner/plan/stream/sql/RankTest.xml | 6 +-
.../planner/plan/stream/sql/agg/AggregateTest.xml | 4 +-
.../planner/plan/stream/sql/join/JoinTest.xml | 4 +-
.../plan/stream/sql/join/TemporalJoinTest.xml | 2 +-
.../plan/metadata/FlinkRelMdHandlerTestBase.scala | 12 +-
.../plan/metadata/FlinkRelMdUniqueKeysTest.scala | 15 +
.../plan/metadata/FlinkRelMdUpsertKeysTest.scala | 14 +
.../plan/stream/sql/NonDeterministicDagTest.scala | 1670 +++++++++++
.../plan/stream/sql/join/LookupJoinTest.scala | 38 +-
.../planner/plan/utils/FlinkRelOptUtilTest.scala | 50 +-
53 files changed, 6725 insertions(+), 230 deletions(-)
create mode 100644
flink-table/flink-table-planner/src/main/java/org/apache/flink/table/planner/plan/optimize/StreamNonDeterministicPhysicalPlanResolver.java
create mode 100644
flink-table/flink-table-planner/src/main/java/org/apache/flink/table/planner/plan/optimize/StreamNonDeterministicUpdatePlanVisitor.java
copy
flink-table/flink-table-planner/src/main/scala/org/apache/flink/table/planner/plan/nodes/physical/stream/{StreamPhysicalCalcBase.scala
=> StreamPhysicalWindowAggregateBase.scala} (63%)
create mode 100644
flink-table/flink-table-planner/src/test/resources/org/apache/flink/table/planner/plan/stream/sql/NonDeterministicDagTest.xml
create mode 100644
flink-table/flink-table-planner/src/test/scala/org/apache/flink/table/planner/plan/stream/sql/NonDeterministicDagTest.scala