Why is RegisterPredicateLockingXid called while holding XidGenLock?

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Why is RegisterPredicateLockingXid called while holding XidGenLock?
Дата
Msg-id 1617.1304651560@sss.pgh.pa.us
обсуждение исходный текст
Ответы Re: Why is RegisterPredicateLockingXid called while holding XidGenLock?
Список pgsql-hackers
Inquiring minds want to know ...

This seems like a pretty lousy place to do it, first because of the
contention hit from holding that high-traffic lock any longer than
necessary, and second because every added chance for error between
ExtendCLOG() and TransactionIdAdvance(ShmemVariableCache->nextXid)
gives us another way to fail in the way recently mentioned by Joe
Conway:
http://archives.postgresql.org/message-id/4DBE4E7D.80501@joeconway.com

Even if it's actually necessary to set up that data structure while
holding XidGenLock, I would *really* like the call to not be exactly
where it is.
        regards, tom lane


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

Предыдущее
От: Robert Haas
Дата:
Сообщение: Re: Backpatching of "Teach the regular expression functions to do case-insensitive matching"
Следующее
От: Tom Lane
Дата:
Сообщение: Re: clog_redo causing very long recovery time