From: Amit Kapila Date: Fri, 21 Oct 2022 06:38:14 +0000 (+0530) Subject: Add CHECK_FOR_INTERRUPTS while restoring changes during decoding. X-Git-Tag: REL_11_18~11 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=5c51afe23d6580955b0c386ad0604e8d6ad6a49b;p=thirdparty%2Fpostgresql.git 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 --- diff --git a/src/backend/replication/logical/reorderbuffer.c b/src/backend/replication/logical/reorderbuffer.c index c292238a875..b72f43678bd 100644 --- a/src/backend/replication/logical/reorderbuffer.c +++ b/src/backend/replication/logical/reorderbuffer.c @@ -2586,6 +2586,8 @@ ReorderBufferRestoreChanges(ReorderBuffer *rb, ReorderBufferTXN *txn, int readBytes; ReorderBufferDiskChange *ondisk; + CHECK_FOR_INTERRUPTS(); + if (*fd == -1) { char path[MAXPGPATH];