aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAmit Kapila <akapila@postgresql.org>2022-08-23 10:08:43 +0530
committerAmit Kapila <akapila@postgresql.org>2022-08-23 10:08:43 +0530
commit42681dffafa2f9dea3e034d0c29a3f1a7b3b07e8 (patch)
treef1569665b65c617b9b0cd2ca0bef780456121a83
parent045ec347857b66e8a494b2c12126a6d476702065 (diff)
downloadpostgresql-42681dffafa2f9dea3e034d0c29a3f1a7b3b07e8.tar.gz
postgresql-42681dffafa2f9dea3e034d0c29a3f1a7b3b07e8.zip
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 8da5f9089c7..8971df140b8 100644
--- a/src/backend/replication/logical/reorderbuffer.c
+++ b/src/backend/replication/logical/reorderbuffer.c
@@ -2085,6 +2085,8 @@ ReorderBufferProcessTXN(ReorderBuffer *rb, ReorderBufferTXN *txn,
Relation relation = NULL;
Oid reloid;
+ CHECK_FOR_INTERRUPTS();
+
/*
* We can't call start stream callback before processing first
* change.