Re: ATTACH/DETACH partitions and locking
Pavel Luzanov <p.luzanov@postgrespro.ru>
From: Pavel Luzanov <p.luzanov@postgrespro.ru>
To: Alvaro Herrera <alvherre@2ndquadrant.com>
Cc: pgsql-docs@lists.postgresql.org
Date: 2019-06-14T11:35:01Z
Lists: pgsql-docs
On 13.06.2019 23:07, Alvaro Herrera wrote: > On 2019-Jun-13, Pavel Luzanov wrote: > >> Hello, >> >> According to patch[1] and after playing with v12 beta1 I think that this >> item can be dropped from "5.11.3. Implementation Using Inheritance" section >> of v12 docs: >> >> "Some operations require a stronger lock when using declarative partitioning >> than when using table inheritance. For example, adding or removing a >> partition to or from a partitioned table requires taking an ACCESS EXCLUSIVE >> lock on the parent table, whereas a SHARE UPDATE EXCLUSIVE lock is enough in >> the case of regular inheritance." > Hmm ... while you're correct that ALTER TABLE ATTACH PARTITION no longer > uses AccessExclusive lock, ALTER TABLE DETACH PARTITION continues to. > So we could remove the "adding to" bit of the paragraph, but not remove > it completely. > > https://www.postgresql.org/message-id/CA%2BTgmoY13KQZF-%3DHNTrt9UYWYx3_oYOQpu9ioNT49jGgiDpUEA%40mail.gmail.com You are right, I missed the point with DETACH. Does it make sense to change this way? "Some operations require a stronger lock when using declarative partitioning than when using table inheritance. For example, removing a partition from a partitioned table requires taking an ACCESS EXCLUSIVE lock on the parent table, whereas a SHARE UPDATE EXCLUSIVE lock is enough in the case of regular inheritance." ----- Pavel Luzanov Postgres Professional: http://www.postgrespro.com The Russian Postgres Company
Commits
-
doc: Adding a partition does not require Access Exclusive lock
- e2a19a6d2536 12.4 landed
- e1218f59ea4c 13.0 landed