Peter Rozsa has uploaded this change for review. ( 
http://gerrit.cloudera.org:8080/21988


Change subject: IMPALA-13362: Implement WHEN NOT MATCHED BY SOURCE syntax for 
MERGE statement
......................................................................

IMPALA-13362: Implement WHEN NOT MATCHED BY SOURCE syntax for MERGE statement

This change adds support for a new MERGE clause that covers the
condition when the source statements rows do not match the target
tables rows. Example: MERGE INTO target t using source s on t.id = s.id
WHEN NOT MATCHED BY SOURCE THEN UPDATE set t.column = "a";

This change also adds support to use WHEN NOT MATCHED BY TARGET
explicitly, this is equivalent to  WHEN NOT MATCHED.

Tests:
 - Parser tests for the new language elements.
 - Analyzer and planner test for WHEN NOT MATCHED BY SOURCE/TARGET
   clauses.
 - E2E tests for WHEN NOT MATCHED BY SOURCE clause.

Change-Id: Ia0e0607682a616ef6ad9eccf499dc0c5c9278c5f
---
M be/src/exec/iceberg-merge-node.cc
M be/src/exec/iceberg-merge-node.h
M common/thrift/PlanNodes.thrift
M fe/src/main/cup/sql-parser.cup
M fe/src/main/java/org/apache/impala/analysis/MergeCase.java
M fe/src/main/java/org/apache/impala/analysis/MergeDelete.java
M fe/src/main/java/org/apache/impala/analysis/MergeInsert.java
M fe/src/main/java/org/apache/impala/analysis/MergeStmt.java
M fe/src/main/java/org/apache/impala/analysis/MergeUpdate.java
M fe/src/main/java/org/apache/impala/planner/IcebergMergeNode.java
M fe/src/test/java/org/apache/impala/analysis/AnalyzeModifyStmtsTest.java
M fe/src/test/java/org/apache/impala/analysis/ParserTest.java
M testdata/workloads/functional-planner/queries/PlannerTest/iceberg-merge.test
M testdata/workloads/functional-query/queries/QueryTest/iceberg-merge.test
14 files changed, 360 insertions(+), 105 deletions(-)



  git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/88/21988/1
--
To view, visit http://gerrit.cloudera.org:8080/21988
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: Ia0e0607682a616ef6ad9eccf499dc0c5c9278c5f
Gerrit-Change-Number: 21988
Gerrit-PatchSet: 1
Gerrit-Owner: Peter Rozsa <[email protected]>

Reply via email to