pgsql: Fix failure with lock mode used for custom relation options
От | Michael Paquier |
---|---|
Тема | pgsql: Fix failure with lock mode used for custom relation options |
Дата | |
Msg-id | E1iCvqJ-0000SK-5d@gemulon.postgresql.org обсуждение исходный текст |
Список | pgsql-committers |
Fix failure with lock mode used for custom relation options In-core relation options can use a custom lock mode since 47167b7, that has lowered the lock available for some autovacuum parameters. However it forgot to consider custom relation options. This causes failures with ALTER TABLE SET when changing a custom relation option, as its lock is not defined. The existing APIs to define a custom reloption does not allow to define a custom lock mode, so enforce its initialization to AccessExclusiveMode which should be safe enough in all cases. An upcoming patch will extend the existing APIs to allow a custom lock mode to be defined. The problem can be reproduced with bloom indexes, so add a test there. Reported-by: Nikolay Sharplov Analyzed-by: Thomas Munro, Michael Paquier Author: Michael Paquier Reviewed-by: Kuntal Ghosh Discussion: https://postgr.es/m/20190920013831.GD1844@paquier.xyz Backpatch-through: 9.6 Branch ------ REL9_6_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/98b5c37852967bd28b1f102d4ac9bd0025e7c87d Modified Files -------------- contrib/bloom/expected/bloom.out | 1 + contrib/bloom/sql/bloom.sql | 1 + src/backend/access/common/reloptions.c | 7 +++++++ 3 files changed, 9 insertions(+)
В списке pgsql-committers по дате отправления: