summaryrefslogtreecommitdiff
path: root/src/include
diff options
context:
space:
mode:
authorHeikki Linnakangas <heikki.linnakangas@iki.fi>2023-11-28 11:59:09 +0200
committerHeikki Linnakangas <heikki.linnakangas@iki.fi>2023-11-28 11:59:50 +0200
commit2873fbfe0d6500a45a316d2d42414a432a96e9f1 (patch)
treea1af9db7655d103a0f8b189c4f999befd3a6dc45 /src/include
parentfef92f9ba10175bab6af4307c54ce450a592a2e7 (diff)
Fix assertions with RI triggers in heap_update and heap_delete.
If the tuple being updated is not visible to the crosscheck snapshot, we return TM_Updated but the assertions would not hold in that case. Move them to before the cross-check. Fixes bug #17893. Backpatch to all supported versions. Author: Alexander Lakhin Backpatch-through: 12 Discussion: https://www.postgresql.org/message-id/17893-35847009eec517b5%40postgresql.org
Diffstat (limited to 'src/include')
-rw-r--r--src/include/access/tableam.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/include/access/tableam.h b/src/include/access/tableam.h
index fe869c6c184..5d0431a21b5 100644
--- a/src/include/access/tableam.h
+++ b/src/include/access/tableam.h
@@ -1455,8 +1455,8 @@ table_multi_insert(Relation rel, TupleTableSlot **slots, int nslots,
* TM_BeingModified (the last only possible if wait == false).
*
* In the failure cases, the routine fills *tmfd with the tuple's t_ctid,
- * t_xmax, and, if possible, and, if possible, t_cmax. See comments for
- * struct TM_FailureData for additional info.
+ * t_xmax, and, if possible, t_cmax. See comments for struct
+ * TM_FailureData for additional info.
*/
static inline TM_Result
table_tuple_delete(Relation rel, ItemPointer tid, CommandId cid,