diff options
author | Michael Paquier <michael@paquier.xyz> | 2021-05-19 09:38:48 +0900 |
---|---|---|
committer | Michael Paquier <michael@paquier.xyz> | 2021-05-19 09:38:48 +0900 |
commit | 694da1983e9569b2a2f96cd786ead6b8dba31f1d (patch) | |
tree | 30fa67bdfae2bc824611406c1bfedc8b60102211 | |
parent | 2e7c17837064297f25c427d58154dce8d4287302 (diff) | |
download | postgresql-694da1983e9569b2a2f96cd786ead6b8dba31f1d.tar.gz postgresql-694da1983e9569b2a2f96cd786ead6b8dba31f1d.zip |
Add --no-toast-compression to pg_dumpall
This is an oversight from bbe0a81d, where the equivalent option exists
in pg_dump. This is useful to be able to reset the compression methods
cluster-wide when restoring the data based on default_toast_compression.
Reviewed-by: Daniel Gustafsson, Tom Lane
Discussion: https://postgr.es/m/YKHC+qCJvzCRVCpY@paquier.xyz
-rw-r--r-- | doc/src/sgml/ref/pg_dumpall.sgml | 12 | ||||
-rw-r--r-- | src/bin/pg_dump/pg_dumpall.c | 5 |
2 files changed, 17 insertions, 0 deletions
diff --git a/doc/src/sgml/ref/pg_dumpall.sgml b/doc/src/sgml/ref/pg_dumpall.sgml index 3c2f9c774f7..805c47d5c1e 100644 --- a/doc/src/sgml/ref/pg_dumpall.sgml +++ b/doc/src/sgml/ref/pg_dumpall.sgml @@ -459,6 +459,18 @@ PostgreSQL documentation </varlistentry> <varlistentry> + <term><option>--no-toast-compression</option></term> + <listitem> + <para> + Do not output commands to set <acronym>TOAST</acronym> compression + methods. + With this option, all objects will be created using whichever + compression method is the default during restore. + </para> + </listitem> + </varlistentry> + + <varlistentry> <term><option>--no-unlogged-table-data</option></term> <listitem> <para> diff --git a/src/bin/pg_dump/pg_dumpall.c b/src/bin/pg_dump/pg_dumpall.c index 007a3d0f9a3..c29101704a5 100644 --- a/src/bin/pg_dump/pg_dumpall.c +++ b/src/bin/pg_dump/pg_dumpall.c @@ -77,6 +77,7 @@ static int no_comments = 0; static int no_publications = 0; static int no_security_labels = 0; static int no_subscriptions = 0; +static int no_toast_compression = 0; static int no_unlogged_table_data = 0; static int no_role_passwords = 0; static int server_version; @@ -144,6 +145,7 @@ main(int argc, char *argv[]) {"no-security-labels", no_argument, &no_security_labels, 1}, {"no-subscriptions", no_argument, &no_subscriptions, 1}, {"no-sync", no_argument, NULL, 4}, + {"no-toast-compression", no_argument, &no_toast_compression, 1}, {"no-unlogged-table-data", no_argument, &no_unlogged_table_data, 1}, {"on-conflict-do-nothing", no_argument, &on_conflict_do_nothing, 1}, {"rows-per-insert", required_argument, NULL, 7}, @@ -428,6 +430,8 @@ main(int argc, char *argv[]) appendPQExpBufferStr(pgdumpopts, " --no-security-labels"); if (no_subscriptions) appendPQExpBufferStr(pgdumpopts, " --no-subscriptions"); + if (no_toast_compression) + appendPQExpBufferStr(pgdumpopts, " --no-toast-compression"); if (no_unlogged_table_data) appendPQExpBufferStr(pgdumpopts, " --no-unlogged-table-data"); if (on_conflict_do_nothing) @@ -651,6 +655,7 @@ help(void) printf(_(" --no-subscriptions do not dump subscriptions\n")); printf(_(" --no-sync do not wait for changes to be written safely to disk\n")); printf(_(" --no-tablespaces do not dump tablespace assignments\n")); + printf(_(" --no-toast-compression do not dump TOAST compression methods\n")); printf(_(" --no-unlogged-table-data do not dump unlogged table data\n")); printf(_(" --on-conflict-do-nothing add ON CONFLICT DO NOTHING to INSERT commands\n")); printf(_(" --quote-all-identifiers quote all identifiers, even if not key words\n")); |