Fix up pg_dump's handling of per-attribute compression options.

Tom Lane <tgl@sss.pgh.pa.us>

Commit: aa25d1089ac00bbc3f97d2efe8f54c3d4beed5d1
Author: Tom Lane <tgl@sss.pgh.pa.us>
Date: 2021-03-20T19:01:10Z
Releases: 14.0
Fix up pg_dump's handling of per-attribute compression options.

The approach used in commit bbe0a81db would've been disastrous for
portability of dumps.  Instead handle non-default compression options
in separate ALTER TABLE commands.  This reduces chatter for the
common case where most columns are compressed the same way, and it
makes it possible to restore the dump to a server that lacks any
knowledge of per-attribute compression options (so long as you're
willing to ignore syntax errors from the ALTER TABLE commands).

There's a whole lot left to do to mop up after bbe0a81db, but
I'm fast-tracking this part because we need to see if it's
enough to make the buildfarm's cross-version-upgrade tests happy.

Justin Pryzby and Tom Lane

Discussion: https://postgr.es/m/20210119190720.GL8560@telsasoft.com

Files

Discussion