On 20.02.2013 16:19, Heikki Linnakangas wrote:
~/pgsql.92stable$ bin/createdb "foo=bar"
~/pgsql.92stable$ bin/pg_dumpall > /dev/null
pg_dump: [archiver (db)] connection to database "(null)" failed: invalid
connection option "foo"
pg_dumpall: pg_dump failed on database "foo=bar", exiting

There are two bugs above:

1. When pg_dumpall passes the database name to pg_dump as a command line
argument, pg_dump interprets it as a connection string if it contains =.

Fixed this by passing the database name to pg_dump as a connection string. That way pg_dump doesn't interpret the database name. So now pg_dumpall calls pg_dump like this:

pg_dump ... "dbname='foo'"

instead of just

pg_dump ... "foo"

2. When you pass an invalid connection string to pg_dump, it passes a
NULL pointer to printf when constructing the error message. It shows as
"(null)" above, but would segfault on other platforms.

Fixed by printing an empty string instead of passing NULL to fprintf.

- Heikki


--
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs

Reply via email to