pgsql: Don't destroy SMgrRelations at relcache invalidation
От
Heikki Linnakangas
Тема
pgsql: Don't destroy SMgrRelations at relcache invalidation
Дата
Msg-id
E1rjZmw-003BJJ-7C@gemulon.postgresql.org
Список
Don't destroy SMgrRelations at relcache invalidation With commit 21d9c3ee4e, SMgrRelations remain valid until end of transaction (or longer if they're "pinned"). Relcache invalidation can happen in the middle of a transaction, so we must not destroy them at relcache invalidation anymore. This was revealed by failures in the 'constraints' test in buildfarm animals using -DCLOBBER_CACHE_ALWAYS. That started failing with commit 8af2565248, which was the first commit that started to rely on an SMgrRelation living until end of transaction. Diagnosed-by: Tomas Vondra, Thomas Munro Reviewed-by: Thomas Munro Discussion: https://www.postgresql.org/message-id/CA%2BhUKGK%2B5DOmLaBp3Z7C4S-Yv6yoROvr1UncjH2S1ZbPT8D%2BZg%40mail.gmail.com Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/af0e7deb4a1c369bb8154ac55f085d6a93fe5c35 Modified Files -------------- src/backend/storage/smgr/smgr.c | 2 -- src/backend/utils/cache/relcache.c | 10 +++------- 2 files changed, 3 insertions(+), 9 deletions(-)
В списке pgsql-committers по дате отправления
От: David Rowley
Дата:
От: Heikki Linnakangas
Дата: