Thread: pgsql: tableam: Add pg_dump support.

pgsql: tableam: Add pg_dump support.

From
Andres Freund
Date:
tableam: Add pg_dump support.

This adds pg_dump support for table AMs in a similar manner to how
tablespaces are handled. That is, instead of specifying the AM for
every CREATE TABLE etc, emit SET default_table_access_method
statements. That makes it easier to change the AM for all/most tables
in a dump, and allows restore to succeed even if some AM is not
available.

This increases the dump archive version, as a tables/matview's AM
needs to be tracked therein.

Author: Dimitri Dolgov, Andres Freund
Discussion:
    https://postgr.es/m/20180703070645.wchpu5muyto5n647@alap3.anarazel.de
    https://postgr.es/m/20190304234700.w5tmhducs5wxgzls@alap3.anarazel.de

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/3b925e905de3204ffef64fa4d53dd7bbac1a143f

Modified Files
--------------
src/bin/pg_dump/pg_backup_archiver.c | 57 +++++++++++++++++++++++++++++++++-
src/bin/pg_dump/pg_backup_archiver.h |  6 +++-
src/bin/pg_dump/pg_dump.c            | 22 +++++++++++--
src/bin/pg_dump/pg_dump.h            |  1 +
src/bin/pg_dump/t/002_pg_dump.pl     | 60 ++++++++++++++++++++++++++++++++++++
5 files changed, 142 insertions(+), 4 deletions(-)


Re: pgsql: tableam: Add pg_dump support.

From
Tom Lane
Date:
Andres Freund <andres@anarazel.de> writes:
> tableam: Add pg_dump support.

This or a nearby patch broke cross-version pg_upgrade, according to the
buildfarm.

            regards, tom lane


Re: pgsql: tableam: Add pg_dump support.

From
Andres Freund
Date:
Hi,

On 2019-03-06 20:32:22 -0500, Tom Lane wrote:
> Andres Freund <andres@anarazel.de> writes:
> > tableam: Add pg_dump support.
> 
> This or a nearby patch broke cross-version pg_upgrade, according to the
> buildfarm.

Yea, I started a thread about it:
https://www.postgresql.org/message-id/20190306204104.yle5jfbnqkcwykni%40alap3.anarazel.de

In short, I think this was basically not this patch's fault, it just
added an assertion that coincidentally triggered for the changes in
https://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=807ae415c54628ade937cb209f0fc9913e6b0cf5
et al. When pg_upgrading from pre v12, we're creating a partitioned
table that doesn't have a relfilenode, but does have a toast table.

Greetings,

Andres Freund


Re: pgsql: tableam: Add pg_dump support.

From
Tom Lane
Date:
Andres Freund <andres@anarazel.de> writes:
> On 2019-03-06 20:32:22 -0500, Tom Lane wrote:
>> This or a nearby patch broke cross-version pg_upgrade, according to the
>> buildfarm.

> Yea, I started a thread about it:
> https://www.postgresql.org/message-id/20190306204104.yle5jfbnqkcwykni%40alap3.anarazel.de

Oh, I missed that --- sorry for the noise.

            regards, tom lane