summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAmit Kapila2022-08-23 03:12:51 +0000
committerAmit Kapila2022-08-23 03:12:51 +0000
commit51e9469a41ad04838285a40dc6aacdb45b9749b9 (patch)
tree5dd5684ec6d66c81114988057a7a394bd1b77653
parent116f20f926564cd4645f8d2f49fd0dfd0ad1f897 (diff)
Add CHECK_FOR_INTERRUPTS while decoding changes.
While decoding changes in a loop, if we skip all the changes there is no CFI making the loop uninterruptible. Reported-by: Whale Song and Andrey Borodin Bug: 17580 Author: Masahiko Sawada Reviwed-by: Amit Kapila Backpatch-through: 10 Discussion: https://postgr.es/m/17580-849c1d5b6d7eb422@postgresql.org Discussion: https://postgr.es/m/B319ECD6-9A28-4CDF-A8F4-3591E0BF2369@yandex-team.ru
-rw-r--r--src/backend/replication/logical/reorderbuffer.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/backend/replication/logical/reorderbuffer.c b/src/backend/replication/logical/reorderbuffer.c
index 6c9b5dbced8..1e297abf8d6 100644
--- a/src/backend/replication/logical/reorderbuffer.c
+++ b/src/backend/replication/logical/reorderbuffer.c
@@ -1517,6 +1517,8 @@ ReorderBufferCommit(ReorderBuffer *rb, TransactionId xid,
Relation relation = NULL;
Oid reloid;
+ CHECK_FOR_INTERRUPTS();
+
switch (change->action)
{
case REORDER_BUFFER_CHANGE_INTERNAL_SPEC_CONFIRM: