BUG #16514: pg_dump v12 puts CREATE SCHEMA public statement into the backup file - Mailing list pgsql-bugs

From PG Bug reporting form
Subject BUG #16514: pg_dump v12 puts CREATE SCHEMA public statement into the backup file
Date
Msg-id 16514-3f214ab4550eb8fd@postgresql.org
Whole thread Raw
Responses Re: BUG #16514: pg_dump v12 puts CREATE SCHEMA public statement into the backup file
List pgsql-bugs
The following bug has been logged on the website:

Bug reference:      16514
Logged by:          Kirill Kravtsov
Email address:      kravtsov.k@gmail.com
PostgreSQL version: 12.3
Operating system:   CentOS 7
Description:

I’m experiencing some weird behaviour of pg_dump: based on this thread
https://www.postgresql.org/message-id/flat/20849.1541638465%40sss.pgh.pa.us#744c293b37793dea0f6e60676c3f3210
, starting from v11 pg_dump should not include CREATE SCHEMA public
statements to the dump. However, if I run pg_dump v12 with --schema public ,
it still adds that line to the backup file, which breaks the ability to
restore from it

$ /usr/pgsql-12/bin/pg_dump -d db --schema public --schema-only | grep
'CREATE SCHEMA'
CREATE SCHEMA public;

Without specifying a schema it works as expected:
$ /usr/pgsql-12/bin/pg_dump -d db --schema-only | grep 'CREATE SCHEMA'
CREATE SCHEMA admin;
CREATE SCHEMA stats;

When attempting to restore from such a backup, the following error occurs:

pg_restore: while PROCESSING TOC:
pg_restore: from TOC entry 12; 2615 2200 SCHEMA public postgres
pg_restore: error: could not execute query: ERROR:  schema "public" already
exists
Command was: CREATE SCHEMA public;


pgsql-bugs by date:

Previous
From: PG Bug reporting form
Date:
Subject: BUG #16513: Postgresql HA Cluster
Next
From: Jose Alcantara
Date:
Subject: Problem with pgadm4