aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAmit Kapila <akapila@postgresql.org>2022-10-21 12:43:28 +0530
committerAmit Kapila <akapila@postgresql.org>2022-10-21 12:43:28 +0530
commit10eaa975018f7ea88f5d0af5af40b2d3749b3ca8 (patch)
tree9f8c12e4f3487264495bed477b7c7e10eed996fc
parent343afa9671060c3d6482d1252207a64cc5ddd23d (diff)
downloadpostgresql-10eaa975018f7ea88f5d0af5af40b2d3749b3ca8.tar.gz
postgresql-10eaa975018f7ea88f5d0af5af40b2d3749b3ca8.zip
Add CHECK_FOR_INTERRUPTS while restoring changes during decoding.
Previously in commit 42681dffaf, we added CFI during decoding changes but missed another similar case that can happen while restoring changes spilled to disk back into memory in a loop. Reported-by: Robert Haas Author: Amit Kapila Backpatch-through: 10 Discussion: https://postgr.es/m/CA+TgmoaLObg0QbstbC8ykDwOdD1bDkr4AbPpB=0DPgA2JW0mFg@mail.gmail.com
-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 5d42283b566..ea37b0bbe88 100644
--- a/src/backend/replication/logical/reorderbuffer.c
+++ b/src/backend/replication/logical/reorderbuffer.c
@@ -4110,6 +4110,8 @@ ReorderBufferRestoreChanges(ReorderBuffer *rb, ReorderBufferTXN *txn,
int readBytes;
ReorderBufferDiskChange *ondisk;
+ CHECK_FOR_INTERRUPTS();
+
if (*fd == -1)
{
char path[MAXPGPATH];