Fix crash in pg_replication_slot_advance

We were trying to use a LSN variable after releasing its containing slot
structure.

Reported by: tushar
Author: amul sul
Reviewed-by: Petr Jelinek, Masahiko Sawada
Discussion: https://postgr.es/m/94ba999c-f76a-0423-6523-b8d531dfe4c7@enterprisedb.com
This commit is contained in:
Alvaro Herrera 2018-02-19 18:00:53 -03:00
parent 159efe4af4
commit 6f1d723b63
1 changed files with 1 additions and 2 deletions

View File

@ -480,8 +480,7 @@ pg_replication_slot_advance(PG_FUNCTION_ARGS)
(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
errmsg("cannot move slot to %X/%X, minimum is %X/%X",
(uint32) (moveto >> 32), (uint32) moveto,
(uint32) (MyReplicationSlot->data.confirmed_flush >> 32),
(uint32) (MyReplicationSlot->data.confirmed_flush))));
(uint32) (startlsn >> 32), (uint32) startlsn)));
}
if (OidIsValid(MyReplicationSlot->data.database))