[ADMIN] Lock a viewe

Поиск
Список
Период
Сортировка
От Gaetano Mendola
Тема [ADMIN] Lock a viewe
Дата
Msg-id CAJycT5rFswAFAykB7aZve7ZF=dm_coTpp2Bb7a4SQmRYqoL7sA@mail.gmail.com
обсуждение исходный текст
Ответы Re: [ADMIN] Lock a viewe
Re: [ADMIN] Lock a viewe
Список pgsql-admin
Hi,
I was wondering if there is a clean view to lock the usage of a view.

Basically during a schema migration, with applications still running a typical
schema change is:

BEGIN;
ALTER TABLE x ADD COLUMN (a INTEGER);
CREATE OR REPLACE VIEW v_x
AS 
SELECT a,b FROM x;
COMMIT;

now the issue is that if an application performs a:

SELECT * from v_x;

between the ALTER and the view redefinition then a deadlock happens.

I'm preventing this issue doing a:

ALTER VIEW v_x ALTER COLUMN b DROP DEFAULT; 
(anyway there was no default on the view)
before the ALTER TABLE, that's basically reorders the locks sequence
avoiding the dead lock.

Is there a clean way to achieve it without the "hack"?


GM







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

Предыдущее
От: xu jian
Дата:
Сообщение: [ADMIN] 答复: Does special index type have index bloat issue? for instance gist, gin, brin?
Следующее
От: neos@olansoft.com
Дата:
Сообщение: [ADMIN] Too long startup time after crash.