On 2024-Apr-15, Justin Pryzby wrote:
> Here's a couple more issues affecting upgrades from v16 to v17.
>
> postgres=# CREATE TABLE a(i int NOT NULL); CREATE TABLE b(i int PRIMARY KEY) INHERITS (a);
> pg_restore: error: could not execute query: ERROR: constraint "pgdump_throwaway_notnull_0" of relation "b" does not
exist
>
> postgres=# CREATE TABLE a(i int CONSTRAINT a NOT NULL PRIMARY KEY); CREATE TABLE b()INHERITS(a); ALTER TABLE b ADD
CONSTRAINTpkb PRIMARY KEY (i);
> pg_restore: error: could not execute query: ERROR: cannot drop inherited constraint "pgdump_throwaway_notnull_0" of
relation"b"
I pushed a fix now, and it should also cover these two issues, which
required only minor changes over what I posted yesterday. Also, thank
you for pointing out that the patch also fixed Andrew's problem. It
did, except there was a locking problem which required an additional
tweak.
Thanks for reporting these.
--
Álvaro Herrera Breisgau, Deutschland — https://www.EnterpriseDB.com/
"At least to kernel hackers, who really are human, despite occasional
rumors to the contrary" (LWN.net)