BUG #18217: ALTER TABLE IF EXISTS not being honored with DROP CONSTRAINT IF EXISTS

From: PG Bug reporting form <noreply(at)postgresql(dot)org>
To: pgsql-bugs(at)lists(dot)postgresql(dot)org
Cc: david(at)buildingfootprintusa(dot)com
Subject: BUG #18217: ALTER TABLE IF EXISTS not being honored with DROP CONSTRAINT IF EXISTS
Date: 2023-11-29 14:59:59
Message-ID: 18217-c7180ab143091145@postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

The following bug has been logged on the website:

Bug reference: 18217
Logged by: David Moss
Email address: david(at)buildingfootprintusa(dot)com
PostgreSQL version: 15.2
Operating system: PostgreSQL 15.2 on x86_64-pc-linux-gnu
Description:

I found this issue from running pg_restore with flags to clean and "if
exists". pg_restore returns an error code which is generated from a query
of the following form:

ALTER TABLE IF EXISTS ONLY public.foo DROP CONSTRAINT IF EXISTS foo_pkey

In pg_admin this reports:

ERROR: relation "public.foo" does not exist
SQL state: 42P01

Running this same query in a 15.1 instance returns the expected behavior:

NOTICE: relation "foo" does not exist, skipping
ALTER TABLE
Query returned successfully in 48 msec.

More detailed version info:

PostgreSQL 15.2 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 7.3.1 20180712
(Red Hat 7.3.1-12), 64-bit
vs.
PostgreSQL 15.1, compiled by Visual C++ build 1914, 64-bit

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Tom Lane 2023-11-29 16:14:00 Re: BUG #18217: ALTER TABLE IF EXISTS not being honored with DROP CONSTRAINT IF EXISTS
Previous Message Laurenz Albe 2023-11-29 10:58:43 Re: BUG #18216: Unaccent function is unable to remove accents (diacritic signs) from Japanese character 'ド'