From: | Justin Pryzby <pryzby(at)telsasoft(dot)com> |
---|---|
To: | Alvaro Herrera <alvherre(at)2ndquadrant(dot)com> |
Cc: | Michael Paquier <michael(at)paquier(dot)xyz>, Robert Haas <robertmhaas(at)gmail(dot)com>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: update ALTER TABLE with ATTACH PARTITION lock mode (docs) |
Date: | 2019-10-29 03:56:33 |
Message-ID: | 20191029035633.GR23808@telsasoft.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Mon, Oct 28, 2019 at 12:06:44PM -0300, Alvaro Herrera wrote:
> On 2019-Oct-28, Michael Paquier wrote:
>
> > On Sun, Oct 27, 2019 at 07:12:07PM -0500, Justin Pryzby wrote:
> > > commit #898e5e32 (Allow ATTACH PARTITION with only ShareUpdateExclusiveLock)
> > > updates ddl.sgml but not alter_table.sgml, which only says:
> > >
> > > https://www.postgresql.org/docs/12/release-12.html
> > > |An ACCESS EXCLUSIVE lock is held unless explicitly noted.
> >
> > + <para>
> > + Attaching a partition acquires a <literal>SHARE UPDATE EXCLUSIVE</literal>
> > + lock on the partitioned table, in addition to an
> > + <literal>ACCESS EXCLUSIVE</literal> lock on the partition.
> > + </para>
> > Updating the docs of ALTER TABLE sounds like a good idea. This
> > sentence looks fine to me. Perhaps others have suggestions?
>
> Doesn't the command also acquire a lock on the default partition if
> there is one? It sounds worth noting.
I suppose it should something other than partition(ed), since partitions can be
partitioned, too...
Attaching a partition acquires a <literal>SHARE UPDATE EXCLUSIVE</literal>
lock on the parent table, in addition to
<literal>ACCESS EXCLUSIVE</literal> locks on the child table and the
<literal>DEFAULT</literal> partition (if any).
Thanks,
Justin
From | Date | Subject | |
---|---|---|---|
Next Message | Wyatt Alt | 2019-10-29 04:00:24 | [BUG] Partition creation fails after dropping a column and adding a partial index |
Previous Message | Dilip Kumar | 2019-10-29 03:49:14 | Re: Typos and inconsistencies in code |