Re: pg_get_expr locking

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: pg_get_expr locking
Дата
Msg-id 789503.1707319590@sss.pgh.pa.us
обсуждение исходный текст
Ответ на pg_get_expr locking  (Peter Eisentraut <peter@eisentraut.org>)
Ответы Re: pg_get_expr locking  (Peter Eisentraut <peter@eisentraut.org>)
Список pgsql-hackers
Peter Eisentraut <peter@eisentraut.org> writes:
> The function pg_get_expr(), which is used in various system views and 
> information schema views, does not appear to lock the table passed as 
> the second argument, and so appears to be liable to fail if there is a 
> concurrent drop of the table.  There is a (probable) case of this being 
> discussed at [0].  I also see various mentions of this issue in the 
> commit logs, mostly related to pg_dump.

> Is there a reason there is no locking?  Performance?

I think we have a general rule that you shouldn't be able to take
locks on relations you have no privileges for, so pg_get_expr would
need to verify privileges if it locked the rel.  At least for
pg_dump's purposes, that cure would be about as bad as the disease.

> What workaround should we use if there are conflicts created by 
> concurrent regression tests?  Just move the tests around a bit until the 
> issue goes away?

Why would a test be applying pg_get_expr to a table it doesn't
control?

            regards, tom lane



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

Предыдущее
От: Stephen Frost
Дата:
Сообщение: Re: Set log_lock_waits=on by default
Следующее
От: Bharath Rupireddy
Дата:
Сообщение: Re: Printing backtrace of postgres processes