pg_dump should use current_database() instead of PQdb()

From: Peter Eisentraut <peter(dot)eisentraut(at)2ndquadrant(dot)com>
To: pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: pg_dump should use current_database() instead of PQdb()
Date: 2018-04-10 16:40:17
Message-ID: b6ffa98b-7566-6465-19d5-7e7f3278307c@2ndquadrant.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

A report from a pgbouncer user revealed that running pg_dump -C/--create
does not work through a connection proxy if the virtual database name on
the proxy does not match the real database name on the database server.
That's because pg_dump looks up the database to be dumped using the
information from PQdb(). It should be using current_database() instead.
(The code was quite likely written before current_database() was
available (PG 7.3)).

See attached patch.

There are a few other uses of PQdb() in pg_dump, but I think those are
OK because they relate to connection information.

--
Peter Eisentraut http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

Attachment Content-Type Size
0001-pg_dump-Use-current_database-instead-of-PQdb.patch text/plain 7.2 KB

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2018-04-10 16:49:38 Re: pg_dump should use current_database() instead of PQdb()
Previous Message Robert Haas 2018-04-10 16:40:12 Re: [HACKERS] Moving relation extension locks out of heavyweight lock manager