pgsql: Fix relfilenodemap.c's handling of cache invalidations.

Поиск
Список
Период
Сортировка
От Robert Haas
Тема pgsql: Fix relfilenodemap.c's handling of cache invalidations.
Дата
Msg-id E1Vgcqa-0005Ou-Mz@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Fix relfilenodemap.c's handling of cache invalidations.

The old code entered a new hash table entry first, then scanned
pg_class to determine what value to fill in, and then populated the
entry.  This fails to work properly if a cache invalidation happens
as a result of opening pg_class.  Repair.

Along the way, get rid of the idea of blowing away the entire hash
table as a method of processing invalidations.  Instead, just delete
all the entries one by one.  This is probably not quite as cheap but
it's simpler, and shouldn't happen often.

Andres Freund

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/c46c803f8ad4ba80472b280703983ecf8021099e

Modified Files
--------------
src/backend/utils/cache/relfilenodemap.c |  189 ++++++++++++++++--------------
1 file changed, 100 insertions(+), 89 deletions(-)


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

Предыдущее
От: Bruce Momjian
Дата:
Сообщение: pgsql: docs: clarify MVCC introduction to allow for per-statement snap
Следующее
От: Andrew Dunstan
Дата:
Сообщение: pgsql: Fix isolation check for MSVC to handle recent changes.