pgsql: Remove AELs from subxids correctly on standby
От | Simon Riggs |
---|---|
Тема | pgsql: Remove AELs from subxids correctly on standby |
Дата | |
Msg-id | E1fUAwW-0002Yk-In@gemulon.postgresql.org обсуждение исходный текст |
Список | pgsql-committers |
Remove AELs from subxids correctly on standby Issues relate only to subtransactions that hold AccessExclusiveLocks when replayed on standby. Prior to PG10, aborting subtransactions that held an AccessExclusiveLock failed to release the lock until top level commit or abort. 49bff5300d527 fixed that. However, 49bff5300d527 also introduced a similar bug where subtransaction commit would fail to release an AccessExclusiveLock, leaving the lock to be removed sometimes early and sometimes late. This commit fixes that bug also. Backpatch to PG10 needed. Tested by observation. Note need for multi-node isolationtester to improve test coverage for this and other HS cases. Reported-by: Simon Riggs Author: Simon Riggs Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/15378c1a15390a2b4c315f19f1644af46c7e3a15 Modified Files -------------- src/backend/access/transam/xact.c | 6 ++---- src/backend/storage/ipc/procarray.c | 5 +---- src/backend/storage/ipc/standby.c | 24 +++--------------------- src/include/storage/standby.h | 2 +- 4 files changed, 7 insertions(+), 30 deletions(-)
В списке pgsql-committers по дате отправления: