ExecMergeMatched-thinko.patch
text/plain
Filename: ExecMergeMatched-thinko.patch
Type: text/plain
Part: 0
Patch
Format: unified
| File | + | − |
|---|---|---|
| src/backend/executor/execMerge.c | 7 | 6 |
diff --git a/src/backend/executor/execMerge.c b/src/backend/executor/execMerge.c
index d39ddd3034..2ed041644f 100644
--- a/src/backend/executor/execMerge.c
+++ b/src/backend/executor/execMerge.c
@@ -174,6 +174,12 @@ ExecMergeMatched(ModifyTableState *mtstate, EState *estate,
ListCell *l;
TupleTableSlot *saved_slot = slot;
+ /*
+ * If there are not WHEN MATCHED actions, we are done.
+ */
+ if (resultRelInfo->ri_mergeState->matchedActionStates == NIL)
+ return true;
+
if (mtstate->mt_partition_tuple_routing)
{
Datum datum;
@@ -220,12 +226,7 @@ ExecMergeMatched(ModifyTableState *mtstate, EState *estate,
*/
mergeMatchedActionStates =
resultRelInfo->ri_mergeState->matchedActionStates;
-
- /*
- * If there are not WHEN MATCHED actions, we are done.
- */
- if (mergeMatchedActionStates == NIL)
- return true;
+ Assert(mergeMatchedActionStates != NIL);
/*
* Make tuple and any needed join variables available to ExecQual and