pgsql: Avoid using a fake relcache entry to own an SmgrRelation.

Поиск
Список
Период
Сортировка
От Robert Haas
Тема pgsql: Avoid using a fake relcache entry to own an SmgrRelation.
Дата
Msg-id E1oMUCq-000QeD-AL@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Avoid using a fake relcache entry to own an SmgrRelation.

If an error occurs before we close the fake relcache entry, the the
fake relcache entry will be destroyed by the SmgrRelation will
survive until end of transaction. Its smgr_owner pointer ends up
pointing to already-freed memory.

The original reason for using a fake relcache entry here was to try
to avoid reusing an SMgrRelation across a relevant invalidation. To
avoid that problem, just call smgropen() again each time we need a
reference to it. Hopefully someday we will come up with a more
elegant approach, but accessing uninitialized memory is bad so let's
do this for now.

Dilip Kumar, reviewed by Andres Freund and Tom Lane. Report by
Justin Pryzby.

Discussion: http://postgr.es/m/20220802175043.GA13682@telsasoft.com
Discussion: http://postgr.es/m/CAFiTN-vSFeE6_W9z698XNtFROOA_nSqUXWqLcG0emob_kJ+dEQ@mail.gmail.com

Branch
------
REL_15_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/1b94f8f232f681890680a866f79dce649a78bd2d

Modified Files
--------------
src/backend/commands/dbcommands.c   | 15 +++--------
src/backend/storage/buffer/bufmgr.c | 51 +++++++++++++++++--------------------
2 files changed, 28 insertions(+), 38 deletions(-)


В списке pgsql-committers по дате отправления:

Предыдущее
От: Alvaro Herrera
Дата:
Сообщение: pgsql: MERGE docs adjustments
Следующее
От: Bruce Momjian
Дата:
Сообщение: pgsql: doc: clarify DROP EXTENSION dependent members text