Re: [GENERAL] pg_dump -s dumps data?!

Andrew Dunstan <andrew@dunslane.net>

From: Andrew Dunstan <andrew@dunslane.net>
To: Tom Lane <tgl@sss.pgh.pa.us>, depesz@depesz.com, Adrian Klaver <adrian.klaver@gmail.com>, Dimitri Fontaine <dimitri@2ndQuadrant.fr>, pgsql-hackers@postgresql.org
Date: 2012-01-31T20:23:02Z
Lists: pgsql-hackers

Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Add --section option to pg_dump and pg_restore.

  2. Add --exclude-table-data option to pg_dump.


On 01/31/2012 03:02 PM, Martijn van Oosterhout wrote:
> On Mon, Jan 30, 2012 at 11:18:31PM -0500, Tom Lane wrote:
>> I don't recall that we thought very hard about what should happen when
>> pg_dump switches are used to produce a selective dump, but ISTM
>> reasonable that if it's "user data" then it should be dumped only if
>> data in a regular user table would be.  So I agree it's pretty broken
>> that "pg_dump -t foo" will dump data belonging to a config table not
>> selected by the -t switch.  I think this should be changed in both HEAD
>> and 9.1 (note that HEAD will presumably return to the 9.1 behavior once
>> that --exclude-table-data patch gets fixed).
> Perhaps a better way of dealing with this is providing a way of dumping
> extensions explicitly. Then you could say:
>
> pg_dump --extension=postgis -s
>
> to get the data. And you can use all the normal pg_dump options for
> controlling the output. The flag currently used to seperate the table
> schema from the table content could then interact logically. Another
> way perhaps:
>
> pg_dump --extension-postgis=data-only
> pg_dump --extension-postgis=schema
> pg_dump --extension-postgis=all
> pg_dump --extension-postgis=none
>

This one won't fly. We use option processing that requires that the 
option names to be known at compile time, so you can't embed an 
arbitrary extension name in there.

cheers

andrew