flush_before_walreceiver_exit_v1.patch
application/octet-stream
Filename: flush_before_walreceiver_exit_v1.patch
Type: application/octet-stream
Part: 0
Message:
Bug in walreceiver
Patch
Same data as JSON:
GET /api/v1/attachments/:id/patch
the parsed metadata as JSON — format, series position, per-file stats; never the diff bytes.
API reference →
Format: context
Series: patch v1
| File | + | − |
|---|---|---|
| src/backend/replication/walreceiver.c | 3 | 0 |
*** a/src/backend/replication/walreceiver.c --- b/src/backend/replication/walreceiver.c *************** *** 324,329 **** WalRcvDie(int code, Datum arg) --- 324,332 ---- /* use volatile pointer to prevent code rearrangement */ volatile WalRcvData *walrcv = WalRcv; + /* Ensure that all WAL records received are flushed to disk */ + XLogWalRcvFlush(); + SpinLockAcquire(&walrcv->mutex); Assert(walrcv->walRcvState == WALRCV_RUNNING || walrcv->walRcvState == WALRCV_STOPPING);