Re: Some other CLOBBER_CACHE_ALWAYS culprits

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: Some other CLOBBER_CACHE_ALWAYS culprits
Дата
Msg-id 2193375.1621025596@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Re: Some other CLOBBER_CACHE_ALWAYS culprits  (Andres Freund <andres@anarazel.de>)
Ответы Re: Some other CLOBBER_CACHE_ALWAYS culprits  (Andres Freund <andres@anarazel.de>)
Re: Some other CLOBBER_CACHE_ALWAYS culprits  (Alvaro Herrera <alvherre@alvh.no-ip.org>)
Список pgsql-hackers
Andres Freund <andres@anarazel.de> writes:
> In essence, debug_invalidate_system_caches_always=1 in some important aspects
> behaves like debug_invalidate_system_caches_always=3, due to the syscache
> involvement.

Yeah.  I think it's important to test those recursive invalidation
scenarios, but it could likely be done more selectively.

> What about having a mode where each "nesting" level of SearchCatCacheMiss
> allows only one interior InvalidateSystemCaches()?

An idea I'd been toying with was to make invals probabilistic, that is
there would be X% chance of an inval being forced at any particular
opportunity.  Then you could dial X up or down to make a tradeoff
between speed and the extent of coverage you get from a single run.
(Over time, you could expect pretty complete coverage even with X
not very close to 1, I think.)

This could be extended to what you're thinking about by reducing X
(according to some rule or other) for each level of cache-flush
recursion.  The argument to justify that is that recursive cache
flushes are VERY repetitive, so that even a small probability will
add up to full coverage of those code paths fairly quickly.

I've not worked out the math to justify any specific proposal
along this line, though.

            regards, tom lane



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

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: OOM in spgist insert
Следующее
От: Andres Freund
Дата:
Сообщение: Re: Some other CLOBBER_CACHE_ALWAYS culprits