Hello On 2019-Jan-23, Amit Langote wrote:
> It seems that ATExecDetachPartition misses to mark a child's primary key > constraint entry (if any) as local (conislocal=true, coninhcount=0), which > causes this: > > create table p (a int primary key) partition by list (a); > create table p2 partition of p for values in (2); > alter table p detach partition p2; > alter table p2 drop constraint p2_pkey ; > ERROR: cannot drop inherited constraint "p2_pkey" of relation "p2" Ugh. I suppose unique keys would have the same problem, so the check for indisprimary is wrong. Other than that, looks correct. -- Álvaro Herrera https://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services