OSDN Git Service

pg_dump -z has gotten rather thoroughly broken in the last couple
authorBruce Momjian <bruce@momjian.us>
Sun, 19 Jul 1998 05:24:51 +0000 (05:24 +0000)
committerBruce Momjian <bruce@momjian.us>
Sun, 19 Jul 1998 05:24:51 +0000 (05:24 +0000)
commit916710fc914b94995438fee36f4480b17ce420ed
tree9c5c03f013de220781f400a4449a9f215389e0b5
parentb41468dad25833a2dc0be5cdb4dec4b6c2418779
pg_dump -z has gotten rather thoroughly broken in the last couple
of days --- it was emitting stuff like
REVOKE ALL on 'table' from PUBLIC; GRANT ALL on "table" to
"Public"; neither of which work.  While I was at it I
cleaned up a few other things:

* \connect commands are issued only in -z mode.  In this way,
reloading a pg_dump script made without -z will generate a simple
database wholly owned by the invoking user, rather than a mishmash
of tables owned by various people but lacking in access rights.
(Analogy: cp versus cp -p.)

* \connect commands are issued just before COPY FROM stdin commands;
without this, reloading a database containing non-world-writable
tables tended to fail because the COPY was not necessarily attempted
as the table owner.

* Redundant \connect commands are suppressed (each one costs a
backend launch, so...).

* Man page updated (-z wasn't ever documented).

The first two items were discussed in a pgsql-hackers thread around
6 May 98 ("An item for the TODO list: pg_dump and multiple table
owners") but no one had bothered to deal with 'em yet.

regards, tom lane
src/bin/pg_dump/pg_dump.c
src/man/pg_dump.1