Re: pg_restore causing deadlocks on partitioned tables

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: pg_restore causing deadlocks on partitioned tables
Дата
Msg-id 1020278.1600093048@sss.pgh.pa.us
обсуждение исходный текст
Ответ на pg_restore causing deadlocks on partitioned tables  (Domagoj Smoljanovic <domagoj.smoljanovic@oradian.com>)
Ответы Re: pg_restore causing deadlocks on partitioned tables
Список pgsql-hackers
Domagoj Smoljanovic <domagoj.smoljanovic@oradian.com> writes:
> I have pg_restore running in parallel (3 or more) and processing large amount of data that is in partitioned tables.
Howeverit seems that sometime deadlock appears when one process is trying to process primary key on parent table while
datastill hasn’t been loaded into partitions. And acquires Exclusive Lock on the whole table. Then another process
comesand tries to load one of the partitions with SharedLock but it fails. 

> This of course doesn’t happen always; depending on the course of actions of the pg_restore. But often enough to cause
frustration.

> Process 15858 waits for AccessShareLock on relation 233358134 of database 233346697; blocked by process 15861.
> Process 15861 waits for AccessExclusiveLock on relation 233374757 of database 233346697; blocked by process 15858.
> Process 15858: TRUNCATE TABLE ONLY myschema."myTable:2020-09-01";
> Process 15861: ALTER TABLE ONLY myschema."myTable" ADD CONSTRAINT "pk_myTable" PRIMARY KEY ("ID", date);

Hm, this seems related to 2ba5b2db7, but not the same thing.
Alvaro, any thoughts?

            regards, tom lane



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

Предыдущее
От: Konstantin Knizhnik
Дата:
Сообщение: Re: On login trigger: take three
Следующее
От: Justin Pryzby
Дата:
Сообщение: Re: 回复:how to create index concurrently on partitioned table