pgsql: Advance old-segment horizon properly after slot invalidation
От | Alvaro Herrera |
---|---|
Тема | pgsql: Advance old-segment horizon properly after slot invalidation |
Дата | |
Msg-id | E1m4QQK-0007R7-KD@gemulon.postgresql.org обсуждение исходный текст |
Список | pgsql-committers |
Advance old-segment horizon properly after slot invalidation When some slots are invalidated due to the max_slot_wal_keep_size limit, the old segment horizon should move forward to stay within the limit. However, in commit c6550776394e we forgot to call KeepLogSeg again to recompute the horizon after invalidating replication slots. In cases where other slots remained, the limits would be recomputed eventually for other reasons, but if all slots were invalidated, the limits would not move at all afterwards. Repair. Backpatch to 13 where the feature was introduced. Author: Kyotaro Horiguchi <horikyota.ntt@gmail.com> Reported-by: Marcin Krupowicz <mk@071.ovh> Discussion: https://postgr.es/m/17103-004130e8f27782c9@postgresql.org Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/ead9e51e82363a0e492d56aee83ed11b3759a615 Modified Files -------------- src/backend/access/transam/xlog.c | 26 +++++++++++++++++++++++-- src/backend/replication/slot.c | 26 ++++++++++++++++++++++--- src/include/replication/slot.h | 2 +- src/test/recovery/t/019_replslot_limit.pl | 32 +++++++++++++++++++++++++------ 4 files changed, 74 insertions(+), 12 deletions(-)
В списке pgsql-committers по дате отправления: