Re: slow queries over information schema.tables

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: slow queries over information schema.tables
Дата
Msg-id 17422.1544118632@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Re: slow queries over information schema.tables  (Robert Haas <robertmhaas@gmail.com>)
Ответы Re: slow queries over information schema.tables  (Robert Haas <robertmhaas@gmail.com>)
Список pgsql-hackers
Robert Haas <robertmhaas@gmail.com> writes:
> On Thu, Dec 6, 2018 at 12:03 PM Tom Lane <tgl@sss.pgh.pa.us> wrote:
>> [ further experimentation... ]  It looks like if you prepare
>> a query and then just execute it repeatedly in one transaction,
>> you'd not reach AIM (as long as you were getting generic plans).
>> Possibly that's a gap worth closing.

> If we called it at the start of every query, couldn't we dispense with
> the call in relation_openrv_extended()?

No.  You need to do AIM *after* obtaining the lock, else you still
have the race condition that you can execute a query on a table
without being aware of recent DDL on it.

What we could possibly do to close the gap cited above is to have
plancache.c's CheckCachedPlan force an AIM call if it notices that
the plan it wants to re-use has a non-empty PlanInvalItems list.
If it does not, then there is nothing that AIM would cause invalidation
for anyway.  This still leaves us with a query-duration-sized race
condition window for DDL on functions and domains, but not any larger
than that.

            regards, tom lane


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

Предыдущее
От: Lætitia Avrot
Дата:
Сообщение: Alter table documentation page (again)
Следующее
От: Alvaro Herrera
Дата:
Сообщение: Re: Alter table documentation page (again)