From 5249b89a2e94fdbb45461faaf2e1b0304b986ac7 Mon Sep 17 00:00:00 2001 From: David Steele Date: Sun, 6 Mar 2022 10:30:59 -0600 Subject: [PATCH] v2.38: Minor Bug Fixes and Improvements MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit IMPORTANT NOTE: Repository size reported by the info command is now entirely based on what pgBackRest has written to storage. Previously, in certain cases, pgBackRest could detect if additional compression was being applied by the storage but this is no longer supported. Bug Fixes: * Retry errors in S3 batch file delete. (Reviewed by Reid Thompson. Reported by Alex Richman.) * Allow case-insensitive matching of HTTP connection header values. (Reviewed by Reid Thompson. Reported by Rémi Vidier.) Features: * Add support for AWS S3 server-side encryption using KMS. (Contributed by Christoph Berg. Reviewed by David Steele, Tharindu Amila.) * Add archive-missing-retry option. (Reviewed by Stefan Fercot.) * Add backup type filter to info command. (Contributed by Stefan Fercot. Reviewed by David Steele.) Improvements: * Retry on page validation failure during backup. (Reviewed by Stephen Frost, David Christensen.) * Handle TLS servers that do not close connections gracefully. (Reviewed by Rémi Vidier, David Christensen, Stephen Frost.) * Add backup LSNs to info command output. (Contributed by Stefan Fercot. Reviewed by David Steele.) * Automatically strip trailing slashes for repo-ls paths. (Contributed by David Christensen. Reviewed by David Steele.) * Do not retry fatal errors. (Reviewed by Reid Thompson.) * Remove support for PostgreSQL 8.3/8.4. (Reviewed by Reid Thompson, Stefan Fercot.) * Remove logic that tried to determine additional file system compression. (Reviewed by Reid Thompson, Stefan Fercot.) Documentation Bug Fixes: * Move repo options in TLS documentation to the global section. (Reported by Anton Kurochkin.) * Remove unused backup-standby option from stanza commands. (Reported by Stefan Fercot.) * Fix typos in help and release notes. (Fixed by Daniel Gustafsson. Reviewed by David Steele.) Documentation Improvements: * Add aliveness check to systemd service configuration. (Suggested by Yogesh Sharma.) * Add FAQ explaining WAL archive suffix. (Contributed by Stefan Fercot. Reviewed by David Steele.) * Note that replications slots are not restored. (Contributed by Reid Thompson. Reviewed by David Steele, Stefan Fercot. Suggested by Christophe Courtois.) --- CONTRIBUTING.md | 10 +- README.md | 2 +- doc/resource/exe.cache | 1062 +++++++++--------- doc/resource/git-history.cache | 413 +++++++ doc/xml/auto/metric-coverage-report.auto.xml | 124 +- doc/xml/release.xml | 2 +- src/build/configure.ac | 2 +- src/configure | 20 +- src/version.h | 2 +- test/code-count/file-type.yaml | 8 - 10 files changed, 1011 insertions(+), 634 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 2ac68190c..37fa5c0ec 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -242,12 +242,12 @@ pgbackrest/test/test.pl --vm=none --dry-run P00 INFO: test begin on x86_64 - log level info P00 INFO: configure build P00 INFO: builds required: bin ---> P00 INFO: 74 tests selected +--> P00 INFO: 72 tests selected - P00 INFO: P1-T01/74 - vm=none, module=common, test=error - [filtered 71 lines of output] - P00 INFO: P1-T73/74 - vm=none, module=performance, test=type - P00 INFO: P1-T74/74 - vm=none, module=performance, test=storage + P00 INFO: P1-T01/72 - vm=none, module=common, test=error + [filtered 69 lines of output] + P00 INFO: P1-T71/72 - vm=none, module=performance, test=type + P00 INFO: P1-T72/72 - vm=none, module=performance, test=storage --> P00 INFO: DRY RUN COMPLETED SUCCESSFULLY ``` diff --git a/README.md b/README.md index 00e0d374d..db895835a 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ pgBackRest aims to be a reliable, easy-to-use backup and restore solution that can seamlessly scale up to the largest databases and workloads by utilizing algorithms that are optimized for database-specific requirements. -pgBackRest [v2.37](https://github.com/pgbackrest/pgbackrest/releases/tag/release/2.37) is the current stable release. Release notes are on the [Releases](http://www.pgbackrest.org/release.html) page. +pgBackRest [v2.38](https://github.com/pgbackrest/pgbackrest/releases/tag/release/2.38) is the current stable release. Release notes are on the [Releases](http://www.pgbackrest.org/release.html) page. Please find us on [GitHub](https://github.com/pgbackrest/pgbackrest) and give us a star if you like pgBackRest! diff --git a/doc/resource/exe.cache b/doc/resource/exe.cache index 0a4a5d367..a0143c12f 100644 --- a/doc/resource/exe.cache +++ b/doc/resource/exe.cache @@ -124,12 +124,12 @@ "P00 INFO: test begin on x86_64 - log level info", "P00 INFO: configure build", "P00 INFO: builds required: bin", - "P00 INFO: 74 tests selected", + "P00 INFO: 72 tests selected", " ", - "P00 INFO: P1-T01/74 - vm=none, module=common, test=error", - " [filtered 71 lines of output]", - "P00 INFO: P1-T73/74 - vm=none, module=performance, test=type", - "P00 INFO: P1-T74/74 - vm=none, module=performance, test=storage", + "P00 INFO: P1-T01/72 - vm=none, module=common, test=error", + " [filtered 69 lines of output]", + "P00 INFO: P1-T71/72 - vm=none, module=performance, test=type", + "P00 INFO: P1-T72/72 - vm=none, module=performance, test=storage", "P00 INFO: DRY RUN COMPLETED SUCCESSFULLY" ] } @@ -305,7 +305,7 @@ { "key" : { "id" : "s3", - "image" : "minio/minio", + "image" : "minio/minio:RELEASE.2022-01-28T02-28-16Z", "name" : "s3-server", "option" : "-m 128m -v {[host-repo-path]}/doc/resource/fake-cert/s3-server.crt:/root/.minio/certs/public.crt:ro -v {[host-repo-path]}/doc/resource/fake-cert/s3-server.key:/root/.minio/certs/private.key:ro -e MINIO_REGION=us-east-1 -e MINIO_DOMAIN=s3.us-east-1.amazonaws.com -e MINIO_BROWSER=off -e MINIO_ACCESS_KEY=accessKey1 -e MINIO_SECRET_KEY=verySecretKey1", "os" : "debian", @@ -335,7 +335,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "sudo mkdir -p /build/pgbackrest-release-2.37" + "sudo mkdir -p /build/pgbackrest-release-2.38" ], "host" : "build", "load-env" : true, @@ -348,7 +348,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "sudo cp -r /pgbackrest/src /build/pgbackrest-release-2.37" + "sudo cp -r /pgbackrest/src /build/pgbackrest-release-2.38" ], "host" : "build", "load-env" : true, @@ -361,7 +361,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "sudo chown -R vagrant /build/pgbackrest-release-2.37" + "sudo chown -R vagrant /build/pgbackrest-release-2.38" ], "host" : "build", "load-env" : true, @@ -402,7 +402,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "cd /build/pgbackrest-release-2.37/src && ./configure && make" + "cd /build/pgbackrest-release-2.38/src && ./configure && make" ], "cmd-extra" : "-j 4", "host" : "build", @@ -444,7 +444,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "sudo scp build:/build/pgbackrest-release-2.37/src/pgbackrest /usr/bin" + "sudo scp build:/build/pgbackrest-release-2.38/src/pgbackrest /usr/bin" ], "cmd-extra" : "2>&1", "host" : "pg-primary", @@ -572,7 +572,7 @@ "type" : "exe", "value" : { "output" : [ - "pgBackRest 2.37 - General help", + "pgBackRest 2.38 - General help", "", "Usage:", " pgbackrest [options] [command]", @@ -639,7 +639,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "echo 'shared_buffers = 16MB' >> /etc/postgresql/12/demo/postgresql.conf" + "cat /root/postgresql.common.conf >> /etc/postgresql/12/demo/postgresql.conf" ], "host" : "pg-primary", "load-env" : true, @@ -648,41 +648,6 @@ }, "type" : "exe" }, - { - "key" : { - "file" : "/etc/postgresql/12/demo/postgresql.conf", - "host" : "pg-primary", - "option" : { - "listen_addresses" : { - "value" : "'*'" - } - } - }, - "type" : "cfg-postgresql", - "value" : { - "config" : [ - "listen_addresses = '*'" - ] - } - }, - { - "key" : { - "file" : "/etc/postgresql/12/demo/postgresql.conf", - "host" : "pg-primary", - "option" : { - "log_line_prefix" : { - "value" : "''" - } - } - }, - "type" : "cfg-postgresql", - "value" : { - "config" : [ - "listen_addresses = '*'", - "log_line_prefix = ''" - ] - } - }, { "key" : { "file" : "/etc/pgbackrest/pgbackrest.conf", @@ -734,7 +699,7 @@ "type" : "exe", "value" : { "output" : [ - "pgBackRest 2.37 - 'backup' command - 'log-path' option help", + "pgBackRest 2.38 - 'backup' command - 'log-path' option help", "", "Path where log files are stored.", "", @@ -832,8 +797,6 @@ "config" : [ "archive_command = 'pgbackrest --stanza=demo archive-push %p'", "archive_mode = on", - "listen_addresses = '*'", - "log_line_prefix = ''", "max_wal_senders = 3", "wal_level = replica" ] @@ -865,6 +828,31 @@ }, "type" : "exe" }, + { + "key" : { + "bash-wrap" : true, + "cmd" : [ + "sudo -u postgres psql -c \" \\", + " create or replace function create_test_table(prefix int, scale int, data bool) returns void as \\$\\$ \\", + " declare \\", + " index int; \\", + " begin \\", + " for index in 1 .. scale loop \\", + " execute 'create table test_' || prefix || '_' || index || ' (id int)'; \\", + " \\", + " if data then \\", + " execute 'insert into test_' || prefix || '_' || index || ' values (' || (prefix * index) || ')'; \\", + " end if; \\", + " end loop; \\", + " end \\$\\$ LANGUAGE plpgsql;\"" + ], + "host" : "pg-primary", + "load-env" : true, + "output" : false, + "run-as-user" : null + }, + "type" : "exe" + }, { "key" : { "file" : "/etc/pgbackrest/pgbackrest.conf", @@ -971,7 +959,7 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: stanza-create command begin 2.37: --exec-id=1293-896bc18e --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --stanza=demo", + "P00 INFO: stanza-create command begin 2.38: --exec-id=1353-61b8040a --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --stanza=demo", "P00 INFO: stanza-create for stanza 'demo' on repo1", "P00 INFO: stanza-create command end: completed successfully" ] @@ -998,10 +986,10 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: check command begin 2.37: --exec-id=1302-851f6789 --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --stanza=demo", + "P00 INFO: check command begin 2.38: --exec-id=1364-72e7f2f8 --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --stanza=demo", "P00 INFO: check repo1 configuration (primary)", "P00 INFO: check repo1 archive for WAL (primary)", - "P00 INFO: WAL segment 000000010000000000000001 successfully archived to '/var/lib/pgbackrest/archive/demo/12-1/0000000100000000/000000010000000000000001-573dbc22811c4f0055caa67a7cf20c9b1d4a5a35.gz' on repo1", + "P00 INFO: WAL segment 000000010000000000000001 successfully archived to '/var/lib/pgbackrest/archive/demo/12-1/0000000100000000/000000010000000000000001-3aea70531f42c93d4601c38bcd1f60b0b8ebb92a.gz' on repo1", "P00 INFO: check command end: completed successfully" ] } @@ -1058,16 +1046,16 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: backup command begin 2.37: --exec-id=1330-32ed25fb --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-full=2 --stanza=demo --start-fast", + "P00 INFO: backup command begin 2.38: --exec-id=1400-cdd3205f --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-full=2 --stanza=demo --start-fast", "P00 WARN: no prior backup exists, incr backup has been changed to full", "P00 INFO: execute non-exclusive pg_start_backup(): backup begins after the requested immediate checkpoint completes", "P00 INFO: backup start archive = 000000010000000000000002, lsn = 0/2000028", " [filtered 3 lines of output]", "P00 INFO: check archive for segment(s) 000000010000000000000002:000000010000000000000003", - "P00 INFO: new backup label = 20211231-195532F", + "P00 INFO: new backup label = 20220306-155001F", "P00 INFO: full backup size = 23.4MB, file total = 976", "P00 INFO: backup command end: completed successfully", - "P00 INFO: expire command begin 2.37: --exec-id=1330-32ed25fb --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-full=2 --stanza=demo" + "P00 INFO: expire command begin 2.38: --exec-id=1400-cdd3205f --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-full=2 --stanza=demo" ] } }, @@ -1085,7 +1073,7 @@ "type" : "exe", "value" : { "output" : [ - "20211231-195532F" + "20220306-155001F" ] } }, @@ -1113,10 +1101,10 @@ "output" : [ " [filtered 7 lines of output]", "P00 INFO: check archive for segment(s) 000000010000000000000004:000000010000000000000005", - "P00 INFO: new backup label = 20211231-195532F_20211231-195538D", + "P00 INFO: new backup label = 20220306-155001F_20220306-155006D", "P00 INFO: diff backup size = 8.3KB, file total = 976", "P00 INFO: backup command end: completed successfully", - "P00 INFO: expire command begin 2.37: --exec-id=1357-bbff90c0 --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-full=2 --stanza=demo" + "P00 INFO: expire command begin 2.38: --exec-id=1430-d1de1763 --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-full=2 --stanza=demo" ] } }, @@ -1148,18 +1136,18 @@ " db (current)", " wal archive min/max (12): 000000010000000000000001/000000010000000000000005", "", - " full backup: 20211231-195532F", - " timestamp start/stop: 2021-12-31 19:55:32 / 2021-12-31 19:55:36", + " full backup: 20220306-155001F", + " timestamp start/stop: 2022-03-06 15:50:01 / 2022-03-06 15:50:05", " wal start/stop: 000000010000000000000002 / 000000010000000000000003", " database size: 23.4MB, database backup size: 23.4MB", " repo1: backup set size: 2.8MB, backup size: 2.8MB", "", - " diff backup: 20211231-195532F_20211231-195538D", - " timestamp start/stop: 2021-12-31 19:55:38 / 2021-12-31 19:55:40", + " diff backup: 20220306-155001F_20220306-155006D", + " timestamp start/stop: 2022-03-06 15:50:06 / 2022-03-06 15:50:08", " wal start/stop: 000000010000000000000004 / 000000010000000000000005", " database size: 23.4MB, database backup size: 8.3KB", - " repo1: backup set size: 2.8MB, backup size: 496B", - " backup reference list: 20211231-195532F" + " repo1: backup set size: 2.8MB, backup size: 480B", + " backup reference list: 20220306-155001F" ] } }, @@ -1412,7 +1400,7 @@ "output" : [ " name | last_successful_backup | last_archived_wal ", "--------+------------------------+--------------------------", - " \"demo\" | 2021-12-31 19:55:40+00 | 000000010000000000000005", + " \"demo\" | 2022-03-06 15:50:08+00 | 000000010000000000000005", "(1 row)" ] } @@ -1446,7 +1434,7 @@ "type" : "exe", "value" : { "output" : [ - "1640980540" + "1646581808" ] } }, @@ -1510,7 +1498,7 @@ "filter" : true, "filter-context" : 2, "list" : [ - "archive retention on backup 20211231-195532F|remove archive" + "archive retention on backup 20220306-155001F|remove archive" ] }, "host" : "pg-primary", @@ -1523,8 +1511,8 @@ "output" : [ " [filtered 985 lines of output]", "P00 INFO: backup command end: completed successfully", - "P00 INFO: expire command begin 2.37: --exec-id=1625-0be930da --log-level-console=detail --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-full=2 --stanza=demo", - "P00 DETAIL: repo1: 12-1 archive retention on backup 20211231-195532F, start = 000000010000000000000002", + "P00 INFO: expire command begin 2.38: --exec-id=1738-a85be91e --log-level-console=detail --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-full=2 --stanza=demo", + "P00 DETAIL: repo1: 12-1 archive retention on backup 20220306-155001F, start = 000000010000000000000002", "P00 INFO: repo1: 12-1 remove archive, start = 000000010000000000000001, stop = 000000010000000000000001", "P00 INFO: expire command end: completed successfully" ] @@ -1544,7 +1532,7 @@ "type" : "exe", "value" : { "output" : [ - "20211231-195604F" + "20220306-155021F" ] } }, @@ -1559,7 +1547,7 @@ "filter" : true, "filter-context" : 2, "list" : [ - "expire full backup set 20211231-195532F|archive retention on backup 20211231-195604F|remove archive" + "expire full backup set 20220306-155001F|archive retention on backup 20220306-155021F|remove archive" ] }, "host" : "pg-primary", @@ -1572,10 +1560,10 @@ "output" : [ " [filtered 9 lines of output]", "P00 INFO: backup command end: completed successfully", - "P00 INFO: expire command begin 2.37: --exec-id=1652-b7ac48aa --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-full=2 --stanza=demo", - "P00 INFO: repo1: expire full backup set 20211231-195532F, 20211231-195532F_20211231-195538D", - "P00 INFO: repo1: remove expired backup 20211231-195532F_20211231-195538D", - "P00 INFO: repo1: remove expired backup 20211231-195532F", + "P00 INFO: expire command begin 2.38: --exec-id=1770-9967a6d8 --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-full=2 --stanza=demo", + "P00 INFO: repo1: expire full backup set 20220306-155001F, 20220306-155001F_20220306-155006D", + "P00 INFO: repo1: remove expired backup 20220306-155001F_20220306-155006D", + "P00 INFO: repo1: remove expired backup 20220306-155001F", "P00 INFO: repo1: 12-1 remove archive, start = 0000000100000000, stop = 000000020000000000000006", "P00 INFO: expire command end: completed successfully" ] @@ -1639,7 +1627,7 @@ "type" : "exe", "value" : { "output" : [ - "20211231-195609F_20211231-195615D" + "20220306-155026F_20220306-155030D" ] } }, @@ -1667,7 +1655,7 @@ "filter" : true, "filter-context" : 2, "list" : [ - "expire diff backup set 20211231-195609F_20211231-195615D" + "expire diff backup set 20220306-155026F_20220306-155030D" ] }, "host" : "pg-primary", @@ -1680,10 +1668,10 @@ "output" : [ " [filtered 10 lines of output]", "P00 INFO: backup command end: completed successfully", - "P00 INFO: expire command begin 2.37: --exec-id=1729-c585e461 --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-diff=1 --repo1-retention-full=2 --stanza=demo", - "P00 INFO: repo1: expire diff backup set 20211231-195609F_20211231-195615D, 20211231-195609F_20211231-195619I", - "P00 INFO: repo1: remove expired backup 20211231-195609F_20211231-195619I", - "P00 INFO: repo1: remove expired backup 20211231-195609F_20211231-195615D", + "P00 INFO: expire command begin 2.38: --exec-id=1861-710ac72b --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-diff=1 --repo1-retention-full=2 --stanza=demo", + "P00 INFO: repo1: expire diff backup set 20220306-155026F_20220306-155030D, 20220306-155026F_20220306-155032I", + "P00 INFO: repo1: remove expired backup 20220306-155026F_20220306-155032I", + "P00 INFO: repo1: remove expired backup 20220306-155026F_20220306-155030D", "P00 INFO: expire command end: completed successfully" ] } @@ -1733,7 +1721,7 @@ "type" : "exe", "value" : { "output" : [ - "20211231-195609F_20211231-195621D" + "20220306-155026F_20220306-155035D" ] } }, @@ -1777,7 +1765,7 @@ " [filtered 6 lines of output]", "P00 INFO: backup stop archive = 000000020000000000000013, lsn = 0/13000050", "P00 INFO: check archive for segment(s) 000000020000000000000012:000000020000000000000013", - "P00 INFO: new backup label = 20211231-195609F_20211231-195627D", + "P00 INFO: new backup label = 20220306-155026F_20220306-155039D", "P00 INFO: diff backup size = 8.3KB, file total = 976", "P00 INFO: backup command end: completed successfully", " [filtered 2 lines of output]" @@ -1798,7 +1786,7 @@ "type" : "exe", "value" : { "output" : [ - "20211231-195609F_20211231-195627D" + "20220306-155026F_20220306-155039D" ] } }, @@ -1813,7 +1801,7 @@ "filter" : true, "filter-context" : 2, "list" : [ - "archive retention on backup 20211231-195609F_20211231-195621D|remove archive" + "archive retention on backup 20220306-155026F_20220306-155035D|remove archive" ] }, "host" : "pg-primary", @@ -1824,11 +1812,11 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: expire command begin 2.37: --exec-id=1812-3bf5f31c --log-level-console=detail --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-archive=1 --repo1-retention-archive-type=diff --repo1-retention-diff=2 --repo1-retention-full=2 --stanza=demo", - "P00 DETAIL: repo1: 12-1 archive retention on backup 20211231-195604F, start = 000000020000000000000007, stop = 000000020000000000000007", - "P00 DETAIL: repo1: 12-1 archive retention on backup 20211231-195609F, start = 000000020000000000000008, stop = 000000020000000000000009", - "P00 DETAIL: repo1: 12-1 archive retention on backup 20211231-195609F_20211231-195621D, start = 00000002000000000000000E, stop = 00000002000000000000000F", - "P00 DETAIL: repo1: 12-1 archive retention on backup 20211231-195609F_20211231-195627D, start = 000000020000000000000012", + "P00 INFO: expire command begin 2.38: --exec-id=1968-5fa9fc93 --log-level-console=detail --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-archive=1 --repo1-retention-archive-type=diff --repo1-retention-diff=2 --repo1-retention-full=2 --stanza=demo", + "P00 DETAIL: repo1: 12-1 archive retention on backup 20220306-155021F, start = 000000020000000000000007, stop = 000000020000000000000007", + "P00 DETAIL: repo1: 12-1 archive retention on backup 20220306-155026F, start = 000000020000000000000008, stop = 000000020000000000000009", + "P00 DETAIL: repo1: 12-1 archive retention on backup 20220306-155026F_20220306-155035D, start = 00000002000000000000000E, stop = 00000002000000000000000F", + "P00 DETAIL: repo1: 12-1 archive retention on backup 20220306-155026F_20220306-155039D, start = 000000020000000000000012", "P00 INFO: repo1: 12-1 remove archive, start = 00000002000000000000000A, stop = 00000002000000000000000D", "P00 INFO: repo1: 12-1 remove archive, start = 000000020000000000000010, stop = 000000020000000000000011", "P00 INFO: expire command end: completed successfully" @@ -2013,7 +2001,7 @@ "type" : "exe", "value" : { "output" : [ - "24576" + "32768" ] } }, @@ -2021,7 +2009,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "sudo -u postgres du -sh /var/lib/postgresql/12/demo/base/24576" + "sudo -u postgres du -sh /var/lib/postgresql/12/demo/base/32768" ], "host" : "pg-primary", "load-env" : true, @@ -2031,7 +2019,7 @@ "type" : "exe", "value" : { "output" : [ - "7.8M\t/var/lib/postgresql/12/demo/base/24576" + "7.8M\t/var/lib/postgresql/12/demo/base/32768" ] } }, @@ -2049,7 +2037,7 @@ "type" : "exe", "value" : { "output" : [ - "20211231-195609F_20211231-195642I" + "20220306-155026F_20220306-155048I" ] } }, @@ -2058,7 +2046,7 @@ "bash-wrap" : true, "cmd" : [ "sudo -u postgres pgbackrest --stanza=demo \\", - " --set=20211231-195609F_20211231-195642I info" + " --set=20220306-155026F_20220306-155048I info" ], "highlight" : { "filter" : true, @@ -2075,10 +2063,10 @@ "type" : "exe", "value" : { "output" : [ - " [filtered 11 lines of output]", + " [filtered 12 lines of output]", " repo1: backup set size: 4.7MB, backup size: 1.9MB", - " backup reference list: 20211231-195609F, 20211231-195609F_20211231-195627D", - " database list: postgres (13398), test1 (24576), test2 (24577)" + " backup reference list: 20220306-155026F, 20220306-155026F_20220306-155039D", + " database list: postgres (13398), test1 (32768), test2 (32769)" ] } }, @@ -2178,7 +2166,7 @@ "type" : "exe", "value" : { "output" : [ - "psql: error: connection to server on socket \"/var/run/postgresql/.s.PGSQL.5432\" failed: FATAL: relation mapping file \"base/24576/pg_filenode.map\" contains invalid data" + "psql: error: connection to server on socket \"/var/run/postgresql/.s.PGSQL.5432\" failed: FATAL: relation mapping file \"base/32768/pg_filenode.map\" contains invalid data" ] } }, @@ -2186,7 +2174,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "sudo -u postgres du -sh /var/lib/postgresql/12/demo/base/24576" + "sudo -u postgres du -sh /var/lib/postgresql/12/demo/base/32768" ], "host" : "pg-primary", "load-env" : true, @@ -2196,7 +2184,7 @@ "type" : "exe", "value" : { "output" : [ - "16K\t/var/lib/postgresql/12/demo/base/24576" + "16K\t/var/lib/postgresql/12/demo/base/32768" ] } }, @@ -2244,7 +2232,7 @@ " 1 | template1", " 13397 | template0", " 13398 | postgres", - " 24577 | test2", + " 32769 | test2", "(4 rows)" ] } @@ -2321,7 +2309,7 @@ "type" : "exe", "value" : { "output" : [ - "2021-12-31 19:57:03.172377+00" + "2022-03-06 15:51:04.010329+00" ] } }, @@ -2387,7 +2375,7 @@ "bash-wrap" : true, "cmd" : [ "sudo -u postgres pgbackrest --stanza=demo --delta \\", - " --type=time \"--target=2021-12-31 19:57:03.172377+00\" \\", + " --type=time \"--target=2022-03-06 15:51:04.010329+00\" \\", " --target-action=promote restore" ], "host" : "pg-primary", @@ -2432,9 +2420,9 @@ "value" : { "output" : [ " [filtered 14 lines of output]", - "# Recovery settings generated by pgBackRest restore on 2021-12-31 19:57:07", + "# Recovery settings generated by pgBackRest restore on 2022-03-06 15:51:06", "restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'", - "recovery_target_time = '2021-12-31 19:57:03.172377+00'", + "recovery_target_time = '2022-03-06 15:51:04.010329+00'", "recovery_target_action = 'promote'" ] } @@ -2516,16 +2504,16 @@ "output" : [ " [filtered 3 lines of output]", "LOG: listening on Unix socket \"/var/run/postgresql/.s.PGSQL.5432\"", - "LOG: database system was interrupted; last known up at 2021-12-31 19:56:58 UTC", - "LOG: starting point-in-time recovery to 2021-12-31 19:57:03.172377+00", + "LOG: database system was interrupted; last known up at 2022-03-06 15:51:00 UTC", + "LOG: starting point-in-time recovery to 2022-03-06 15:51:04.010329+00", "LOG: restored log file \"00000004.history\" from archive", "LOG: restored log file \"000000040000000000000016\" from archive", " [filtered 2 lines of output]", "LOG: database system is ready to accept read only connections", "LOG: restored log file \"000000040000000000000017\" from archive", - "LOG: recovery stopping before commit of transaction 495, time 2021-12-31 19:57:05.396152+00", - "LOG: redo done at 0/17019E10", - "LOG: last completed transaction was at log time 2021-12-31 19:57:00.903751+00", + "LOG: recovery stopping before commit of transaction 496, time 2022-03-06 15:51:05.378634+00", + "LOG: redo done at 0/17019E88", + "LOG: last completed transaction was at log time 2022-03-06 15:51:02.651754+00", "LOG: selected new timeline ID: 5", "LOG: archive recovery complete", " [filtered 2 lines of output]" @@ -2590,7 +2578,7 @@ "type" : "exe", "value" : { "output" : [ - "20211231-195609F_20211231-195716I" + "20220306-155026F_20220306-155112I" ] } }, @@ -2604,7 +2592,7 @@ "filter" : false, "filter-context" : 2, "list" : [ - "20211231-195609F_20211231-195716I" + "20220306-155026F_20220306-155112I" ] }, "host" : "pg-primary", @@ -2622,45 +2610,45 @@ " db (current)", " wal archive min/max (12): 000000020000000000000007/000000050000000000000018", "", - " full backup: 20211231-195604F", - " timestamp start/stop: 2021-12-31 19:56:04 / 2021-12-31 19:56:07", + " full backup: 20220306-155021F", + " timestamp start/stop: 2022-03-06 15:50:21 / 2022-03-06 15:50:24", " wal start/stop: 000000020000000000000007 / 000000020000000000000007", " database size: 23.4MB, database backup size: 23.4MB", " repo1: backup set size: 2.8MB, backup size: 2.8MB", "", - " full backup: 20211231-195609F", - " timestamp start/stop: 2021-12-31 19:56:09 / 2021-12-31 19:56:13", + " full backup: 20220306-155026F", + " timestamp start/stop: 2022-03-06 15:50:26 / 2022-03-06 15:50:28", " wal start/stop: 000000020000000000000008 / 000000020000000000000009", " database size: 23.4MB, database backup size: 23.4MB", " repo1: backup set size: 2.8MB, backup size: 2.8MB", "", - " diff backup: 20211231-195609F_20211231-195627D", - " timestamp start/stop: 2021-12-31 19:56:27 / 2021-12-31 19:56:29", + " diff backup: 20220306-155026F_20220306-155039D", + " timestamp start/stop: 2022-03-06 15:50:39 / 2022-03-06 15:50:40", " wal start/stop: 000000020000000000000012 / 000000020000000000000013", " database size: 23.4MB, database backup size: 8.3KB", " repo1: backup set size: 2.8MB, backup size: 512B", - " backup reference list: 20211231-195609F", + " backup reference list: 20220306-155026F", "", - " incr backup: 20211231-195609F_20211231-195642I", - " timestamp start/stop: 2021-12-31 19:56:42 / 2021-12-31 19:56:44", + " incr backup: 20220306-155026F_20220306-155048I", + " timestamp start/stop: 2022-03-06 15:50:48 / 2022-03-06 15:50:51", " wal start/stop: 000000030000000000000015 / 000000030000000000000015", " database size: 38.7MB, database backup size: 15.8MB", " repo1: backup set size: 4.7MB, backup size: 1.9MB", - " backup reference list: 20211231-195609F, 20211231-195609F_20211231-195627D", + " backup reference list: 20220306-155026F, 20220306-155026F_20220306-155039D", "", - " diff backup: 20211231-195609F_20211231-195658D", - " timestamp start/stop: 2021-12-31 19:56:58 / 2021-12-31 19:57:00", + " diff backup: 20220306-155026F_20220306-155100D", + " timestamp start/stop: 2022-03-06 15:51:00 / 2022-03-06 15:51:02", " wal start/stop: 000000040000000000000016 / 000000040000000000000016", " database size: 31MB, database backup size: 8.2MB", " repo1: backup set size: 3.8MB, backup size: 1011.1KB", - " backup reference list: 20211231-195609F", + " backup reference list: 20220306-155026F", "", - " incr backup: 20211231-195609F_20211231-195716I", - " timestamp start/stop: 2021-12-31 19:57:16 / 2021-12-31 19:57:18", + " incr backup: 20220306-155026F_20220306-155112I", + " timestamp start/stop: 2022-03-06 15:51:12 / 2022-03-06 15:51:14", " wal start/stop: 000000050000000000000018 / 000000050000000000000018", " database size: 31MB, database backup size: 2.2MB", " repo1: backup set size: 3.8MB, backup size: 234KB", - " backup reference list: 20211231-195609F, 20211231-195609F_20211231-195658D" + " backup reference list: 20220306-155026F, 20220306-155026F_20220306-155100D" ] } }, @@ -2682,8 +2670,8 @@ "bash-wrap" : true, "cmd" : [ "sudo -u postgres pgbackrest --stanza=demo --delta \\", - " --set=20211231-195609F_20211231-195716I \\", - " --type=time \"--target=2021-12-31 19:57:03.172377+00\" --target-action=promote restore" + " --set=20220306-155026F_20220306-155112I \\", + " --type=time \"--target=2022-03-06 15:51:04.010329+00\" --target-action=promote restore" ], "host" : "pg-primary", "load-env" : true, @@ -2782,8 +2770,8 @@ "output" : [ " [filtered 3 lines of output]", "LOG: listening on Unix socket \"/var/run/postgresql/.s.PGSQL.5432\"", - "LOG: database system was interrupted; last known up at 2021-12-31 19:57:17 UTC", - "LOG: starting point-in-time recovery to 2021-12-31 19:57:03.172377+00", + "LOG: database system was interrupted; last known up at 2022-03-06 15:51:13 UTC", + "LOG: starting point-in-time recovery to 2022-03-06 15:51:04.010329+00", "LOG: restored log file \"00000005.history\" from archive", "LOG: restored log file \"000000050000000000000018\" from archive", "LOG: redo starts at 0/18000028", @@ -2812,7 +2800,7 @@ "bash-wrap" : true, "cmd" : [ "sudo -u postgres pgbackrest --stanza=demo --delta \\", - " --type=time \"--target=2021-12-31 19:57:03.172377+00\" \\", + " --type=time \"--target=2022-03-06 15:51:04.010329+00\" \\", " --target-action=promote restore" ], "host" : "pg-primary", @@ -2913,15 +2901,15 @@ " [filtered 5 lines of output]", "LOG: restored log file \"00000005.history\" from archive", "LOG: restored log file \"00000006.history\" from archive", - "LOG: starting point-in-time recovery to 2021-12-31 19:57:03.172377+00", + "LOG: starting point-in-time recovery to 2022-03-06 15:51:04.010329+00", "LOG: restored log file \"00000006.history\" from archive", "LOG: restored log file \"000000040000000000000016\" from archive", " [filtered 4 lines of output]", "LOG: database system is ready to accept read only connections", "LOG: restored log file \"000000050000000000000017\" from archive", - "LOG: recovery stopping before commit of transaction 496, time 2021-12-31 19:57:15.721973+00", - "LOG: redo done at 0/17022440", - "LOG: last completed transaction was at log time 2021-12-31 19:57:00.903751+00", + "LOG: recovery stopping before commit of transaction 497, time 2022-03-06 15:51:11.947526+00", + "LOG: redo done at 0/17022530", + "LOG: last completed transaction was at log time 2022-03-06 15:51:02.651754+00", "LOG: selected new timeline ID: 7", "LOG: archive recovery complete", " [filtered 2 lines of output]" @@ -3060,16 +3048,16 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: backup command begin 2.37: --exec-id=2571-9dfe952d --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --process-max=4 --repo=2 --repo2-azure-account= --repo2-azure-container=demo-container --repo2-azure-key= --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo2-path=/demo-repo --repo1-retention-diff=2 --repo1-retention-full=2 --repo2-retention-full=4 --repo2-type=azure --stanza=demo --start-fast", + "P00 INFO: backup command begin 2.38: --exec-id=2850-261f6fb8 --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --process-max=4 --repo=2 --repo2-azure-account= --repo2-azure-container=demo-container --repo2-azure-key= --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo2-path=/demo-repo --repo1-retention-diff=2 --repo1-retention-full=2 --repo2-retention-full=4 --repo2-type=azure --stanza=demo --start-fast", "P00 WARN: no prior backup exists, incr backup has been changed to full", "P00 INFO: execute non-exclusive pg_start_backup(): backup begins after the requested immediate checkpoint completes", "P00 INFO: backup start archive = 000000070000000000000018, lsn = 0/18000028", " [filtered 3 lines of output]", "P00 INFO: check archive for segment(s) 000000070000000000000018:000000070000000000000018", - "P00 INFO: new backup label = 20211231-195743F", + "P00 INFO: new backup label = 20220306-155130F", "P00 INFO: full backup size = 31MB, file total = 1282", "P00 INFO: backup command end: completed successfully", - "P00 INFO: expire command begin 2.37: --exec-id=2571-9dfe952d --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo=2 --repo2-azure-account= --repo2-azure-container=demo-container --repo2-azure-key= --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo2-path=/demo-repo --repo1-retention-diff=2 --repo1-retention-full=2 --repo2-retention-full=4 --repo2-type=azure --stanza=demo" + "P00 INFO: expire command begin 2.38: --exec-id=2850-261f6fb8 --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo=2 --repo2-azure-account= --repo2-azure-container=demo-container --repo2-azure-key= --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo2-path=/demo-repo --repo1-retention-diff=2 --repo1-retention-full=2 --repo2-retention-full=4 --repo2-type=azure --stanza=demo" ] } }, @@ -3219,16 +3207,16 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: backup command begin 2.37: --exec-id=2636-5e500c5a --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --process-max=4 --repo=3 --repo2-azure-account= --repo2-azure-container=demo-container --repo2-azure-key= --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo2-path=/demo-repo --repo3-path=/demo-repo --repo1-retention-diff=2 --repo1-retention-full=2 --repo2-retention-full=4 --repo3-retention-full=4 --repo3-s3-bucket=demo-bucket --repo3-s3-endpoint=s3.us-east-1.amazonaws.com --repo3-s3-key= --repo3-s3-key-secret= --repo3-s3-region=us-east-1 --repo2-type=azure --repo3-type=s3 --stanza=demo --start-fast", + "P00 INFO: backup command begin 2.38: --exec-id=2927-f38c54e7 --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --process-max=4 --repo=3 --repo2-azure-account= --repo2-azure-container=demo-container --repo2-azure-key= --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo2-path=/demo-repo --repo3-path=/demo-repo --repo1-retention-diff=2 --repo1-retention-full=2 --repo2-retention-full=4 --repo3-retention-full=4 --repo3-s3-bucket=demo-bucket --repo3-s3-endpoint=s3.us-east-1.amazonaws.com --repo3-s3-key= --repo3-s3-key-secret= --repo3-s3-region=us-east-1 --repo2-type=azure --repo3-type=s3 --stanza=demo --start-fast", "P00 WARN: no prior backup exists, incr backup has been changed to full", "P00 INFO: execute non-exclusive pg_start_backup(): backup begins after the requested immediate checkpoint completes", - "P00 INFO: backup start archive = 000000070000000000000019, lsn = 0/19000028", + "P00 INFO: backup start archive = 00000007000000000000001A, lsn = 0/1A000028", " [filtered 3 lines of output]", - "P00 INFO: check archive for segment(s) 000000070000000000000019:00000007000000000000001A", - "P00 INFO: new backup label = 20211231-195800F", + "P00 INFO: check archive for segment(s) 00000007000000000000001A:00000007000000000000001A", + "P00 INFO: new backup label = 20220306-155140F", "P00 INFO: full backup size = 31MB, file total = 1282", "P00 INFO: backup command end: completed successfully", - "P00 INFO: expire command begin 2.37: --exec-id=2636-5e500c5a --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo=3 --repo2-azure-account= --repo2-azure-container=demo-container --repo2-azure-key= --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo2-path=/demo-repo --repo3-path=/demo-repo --repo1-retention-diff=2 --repo1-retention-full=2 --repo2-retention-full=4 --repo3-retention-full=4 --repo3-s3-bucket=demo-bucket --repo3-s3-endpoint=s3.us-east-1.amazonaws.com --repo3-s3-key= --repo3-s3-key-secret= --repo3-s3-region=us-east-1 --repo2-type=azure --repo3-type=s3 --stanza=demo" + "P00 INFO: expire command begin 2.38: --exec-id=2927-f38c54e7 --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo=3 --repo2-azure-account= --repo2-azure-container=demo-container --repo2-azure-key= --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo2-path=/demo-repo --repo3-path=/demo-repo --repo1-retention-diff=2 --repo1-retention-full=2 --repo2-retention-full=4 --repo3-retention-full=4 --repo3-s3-bucket=demo-bucket --repo3-s3-endpoint=s3.us-east-1.amazonaws.com --repo3-s3-key= --repo3-s3-key-secret= --repo3-s3-region=us-east-1 --repo2-type=azure --repo3-type=s3 --stanza=demo" ] } }, @@ -3328,7 +3316,7 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: stop command begin 2.37: --exec-id=2684-91d01886 --log-level-console=info --log-level-stderr=off --no-log-timestamp --stanza=demo", + "P00 INFO: stop command begin 2.38: --exec-id=2981-23c4e31d --log-level-console=info --log-level-stderr=off --no-log-timestamp --stanza=demo", "P00 INFO: stop command end: completed successfully" ] } @@ -3355,7 +3343,7 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: stanza-delete command begin 2.37: --exec-id=2692-aa1d1fa5 --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --repo=1 --repo2-azure-account= --repo2-azure-container=demo-container --repo2-azure-key= --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo4-gcs-bucket=demo-bucket --repo4-gcs-key= --repo1-path=/var/lib/pgbackrest --repo2-path=/demo-repo --repo3-path=/demo-repo --repo4-path=/demo-repo --repo3-s3-bucket=demo-bucket --repo3-s3-endpoint=s3.us-east-1.amazonaws.com --repo3-s3-key= --repo3-s3-key-secret= --repo3-s3-region=us-east-1 --repo2-type=azure --repo3-type=s3 --repo4-type=gcs --stanza=demo", + "P00 INFO: stanza-delete command begin 2.38: --exec-id=2990-7fce0c61 --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --repo=1 --repo2-azure-account= --repo2-azure-container=demo-container --repo2-azure-key= --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo4-gcs-bucket=demo-bucket --repo4-gcs-key= --repo1-path=/var/lib/pgbackrest --repo2-path=/demo-repo --repo3-path=/demo-repo --repo4-path=/demo-repo --repo3-s3-bucket=demo-bucket --repo3-s3-endpoint=s3.us-east-1.amazonaws.com --repo3-s3-key= --repo3-s3-key-secret= --repo3-s3-region=us-east-1 --repo2-type=azure --repo3-type=s3 --repo4-type=gcs --stanza=demo", "P00 INFO: stanza-delete command end: completed successfully" ] } @@ -3418,7 +3406,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "sudo scp build:/build/pgbackrest-release-2.37/src/pgbackrest /usr/bin" + "sudo scp build:/build/pgbackrest-release-2.38/src/pgbackrest /usr/bin" ], "cmd-extra" : "2>&1", "host" : "repository", @@ -3977,15 +3965,15 @@ " db (current)", " wal archive min/max (12): 000000080000000000000020/000000080000000000000022", "", - " full backup: 20211231-195910F", - " timestamp start/stop: 2021-12-31 19:59:10 / 2021-12-31 19:59:15", + " full backup: 20220306-155221F", + " timestamp start/stop: 2022-03-06 15:52:21 / 2022-03-06 15:52:26", " wal start/stop: 000000080000000000000020 / 000000080000000000000020", " database size: 31MB, database backup size: 31MB", " repo1: backup set size: 3.7MB, backup size: 3.7MB", "", - " full backup: 20211231-195919F", - " timestamp start/stop: 2021-12-31 19:59:19 / 2021-12-31 19:59:25", - " wal start/stop: 000000080000000000000022 / 000000080000000000000022", + " full backup: 20220306-155228F", + " timestamp start/stop: 2022-03-06 15:52:28 / 2022-03-06 15:52:31", + " wal start/stop: 000000080000000000000021 / 000000080000000000000022", " database size: 31MB, database backup size: 31MB", " repo1: backup set size: 3.7MB, backup size: 3.7MB" ] @@ -4026,7 +4014,7 @@ "type" : "exe", "value" : { "output" : [ - "P00 WARN: unable to check pg-1: [StopError] raised from remote-0 ssh protocol on 'pg-primary': stop file exists for all stanzas", + "P00 WARN: unable to check pg1: [StopError] raised from remote-0 ssh protocol on 'pg-primary': stop file exists for all stanzas", "P00 ERROR: [056]: unable to find primary cluster - cannot proceed" ] } @@ -4097,7 +4085,7 @@ "type" : "exe", "value" : { "output" : [ - "P00 WARN: unable to check pg-1: [StopError] raised from remote-0 ssh protocol on 'pg-primary': stop file exists for stanza demo", + "P00 WARN: unable to check pg1: [StopError] raised from remote-0 ssh protocol on 'pg-primary': stop file exists for stanza demo", "P00 ERROR: [056]: unable to find primary cluster - cannot proceed" ] } @@ -4147,7 +4135,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "sudo scp build:/build/pgbackrest-release-2.37/src/pgbackrest /usr/bin" + "sudo scp build:/build/pgbackrest-release-2.38/src/pgbackrest /usr/bin" ], "cmd-extra" : "2>&1", "host" : "pg-standby", @@ -4429,26 +4417,26 @@ "# Do not edit this file manually!", "# It will be overwritten by the ALTER SYSTEM command.", "", - "# Recovery settings generated by pgBackRest restore on 2021-12-31 19:55:45", + "# Recovery settings generated by pgBackRest restore on 2022-03-06 15:50:11", "restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'", "", - "# Recovery settings generated by pgBackRest restore on 2021-12-31 19:56:32", + "# Recovery settings generated by pgBackRest restore on 2022-03-06 15:50:42", "restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'", "", - "# Recovery settings generated by pgBackRest restore on 2021-12-31 19:56:49", + "# Recovery settings generated by pgBackRest restore on 2022-03-06 15:50:53", "restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'", - "# Removed by pgBackRest restore on 2021-12-31 19:57:31 # recovery_target = 'immediate'", - "# Removed by pgBackRest restore on 2021-12-31 19:57:31 # recovery_target_action = 'promote'", + "# Removed by pgBackRest restore on 2022-03-06 15:51:22 # recovery_target = 'immediate'", + "# Removed by pgBackRest restore on 2022-03-06 15:51:22 # recovery_target_action = 'promote'", "", - "# Recovery settings generated by pgBackRest restore on 2021-12-31 19:57:31", + "# Recovery settings generated by pgBackRest restore on 2022-03-06 15:51:22", "restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'", - "# Removed by pgBackRest restore on 2021-12-31 19:59:02 # recovery_target_time = '2021-12-31 19:57:03.172377+00'", - "# Removed by pgBackRest restore on 2021-12-31 19:59:02 # recovery_target_action = 'promote'", + "# Removed by pgBackRest restore on 2022-03-06 15:52:15 # recovery_target_time = '2022-03-06 15:51:04.010329+00'", + "# Removed by pgBackRest restore on 2022-03-06 15:52:15 # recovery_target_action = 'promote'", "", - "# Recovery settings generated by pgBackRest restore on 2021-12-31 19:59:02", + "# Recovery settings generated by pgBackRest restore on 2022-03-06 15:52:15", "restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'", "", - "# Recovery settings generated by pgBackRest restore on 2021-12-31 20:00:00", + "# Recovery settings generated by pgBackRest restore on 2022-03-06 15:52:48", "restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'" ] } @@ -4457,7 +4445,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "echo 'shared_buffers = 16MB' >> /etc/postgresql/12/demo/postgresql.conf" + "cat /root/postgresql.common.conf >> /etc/postgresql/12/demo/postgresql.conf" ], "host" : "pg-standby", "load-env" : true, @@ -4480,12 +4468,6 @@ "hot_standby" : { "value" : "on" }, - "log_filename" : { - "value" : "'postgresql.log'" - }, - "log_line_prefix" : { - "value" : "''" - }, "max_wal_senders" : { "value" : "3" }, @@ -4500,8 +4482,6 @@ "archive_command = 'pgbackrest --stanza=demo archive-push %p'", "archive_mode = on", "hot_standby = on", - "log_filename = 'postgresql.log'", - "log_line_prefix = ''", "max_wal_senders = 3", "wal_level = replica" ] @@ -4567,14 +4547,15 @@ "type" : "exe", "value" : { "output" : [ - " [filtered 4 lines of output]", + " [filtered 3 lines of output]", "LOG: listening on Unix socket \"/var/run/postgresql/.s.PGSQL.5432\"", - "LOG: database system was interrupted; last known up at 2021-12-31 19:59:19 UTC", + "LOG: database system was interrupted; last known up at 2022-03-06 15:52:28 UTC", "LOG: entering standby mode", "LOG: restored log file \"00000008.history\" from archive", + "LOG: restored log file \"000000080000000000000021\" from archive", + "LOG: redo starts at 0/21000028", "LOG: restored log file \"000000080000000000000022\" from archive", - "LOG: redo starts at 0/22000028", - "LOG: consistent recovery state reached at 0/22000100", + "LOG: consistent recovery state reached at 0/22000050", "LOG: database system is ready to accept read only connections" ] } @@ -4656,7 +4637,7 @@ "output" : [ " pg_switch_wal | current_timestamp ", "---------------+-------------------------------", - " 0/23021750 | 2021-12-31 20:00:14.253018+00", + " 0/23021810 | 2022-03-06 15:52:56.262844+00", "(1 row)" ] } @@ -4685,7 +4666,7 @@ "output" : [ " message | current_timestamp ", "----------------+-------------------------------", - " Important Data | 2021-12-31 20:00:17.565198+00", + " Important Data | 2022-03-06 15:52:56.899599+00", "(1 row)" ] } @@ -4711,7 +4692,7 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: check command begin 2.37: --exec-id=1338-239cb6ec --log-level-console=info --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --repo1-host=repository --stanza=demo", + "P00 INFO: check command begin 2.38: --exec-id=1407-7558bec6 --log-level-console=info --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --repo1-host=repository --stanza=demo", "P00 INFO: check repo1 (standby)", "P00 INFO: switch wal not performed because this is a standby", "P00 INFO: check command end: completed successfully" @@ -4861,26 +4842,26 @@ "# Do not edit this file manually!", "# It will be overwritten by the ALTER SYSTEM command.", "", - "# Recovery settings generated by pgBackRest restore on 2021-12-31 19:55:45", + "# Recovery settings generated by pgBackRest restore on 2022-03-06 15:50:11", "restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'", "", - "# Recovery settings generated by pgBackRest restore on 2021-12-31 19:56:32", + "# Recovery settings generated by pgBackRest restore on 2022-03-06 15:50:42", "restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'", "", - "# Recovery settings generated by pgBackRest restore on 2021-12-31 19:56:49", + "# Recovery settings generated by pgBackRest restore on 2022-03-06 15:50:53", "restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'", - "# Removed by pgBackRest restore on 2021-12-31 19:57:31 # recovery_target = 'immediate'", - "# Removed by pgBackRest restore on 2021-12-31 19:57:31 # recovery_target_action = 'promote'", + "# Removed by pgBackRest restore on 2022-03-06 15:51:22 # recovery_target = 'immediate'", + "# Removed by pgBackRest restore on 2022-03-06 15:51:22 # recovery_target_action = 'promote'", "", - "# Recovery settings generated by pgBackRest restore on 2021-12-31 19:57:31", + "# Recovery settings generated by pgBackRest restore on 2022-03-06 15:51:22", "restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'", - "# Removed by pgBackRest restore on 2021-12-31 19:59:02 # recovery_target_time = '2021-12-31 19:57:03.172377+00'", - "# Removed by pgBackRest restore on 2021-12-31 19:59:02 # recovery_target_action = 'promote'", + "# Removed by pgBackRest restore on 2022-03-06 15:52:15 # recovery_target_time = '2022-03-06 15:51:04.010329+00'", + "# Removed by pgBackRest restore on 2022-03-06 15:52:15 # recovery_target_action = 'promote'", "", - "# Recovery settings generated by pgBackRest restore on 2021-12-31 19:59:02", + "# Recovery settings generated by pgBackRest restore on 2022-03-06 15:52:15", "restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'", "", - "# Recovery settings generated by pgBackRest restore on 2021-12-31 20:00:26", + "# Recovery settings generated by pgBackRest restore on 2022-03-06 15:53:00", "primary_conninfo = 'host=172.17.0.5 port=5432 user=replicator'", "restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'" ] @@ -4981,7 +4962,7 @@ "output" : [ " message | current_timestamp ", "----------------+-------------------------------", - " Important Data | 2021-12-31 20:00:34.575889+00", + " Important Data | 2022-03-06 15:53:06.979124+00", "(1 row)" ] } @@ -5010,7 +4991,7 @@ "output" : [ " message | current_timestamp ", "----------------+-------------------------------", - " Important Data | 2021-12-31 20:00:35.482415+00", + " Important Data | 2022-03-06 15:53:07.228004+00", "(1 row)" ] } @@ -5241,10 +5222,10 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: check command begin 2.37: --exec-id=3279-1d1209e9 --log-level-console=info --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --repo1-host=repository --stanza=demo", + "P00 INFO: check command begin 2.38: --exec-id=3630-cef43c21 --log-level-console=info --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --repo1-host=repository --stanza=demo", "P00 INFO: check repo1 configuration (primary)", "P00 INFO: check repo1 archive for WAL (primary)", - "P00 INFO: WAL segment 000000080000000000000029 successfully archived to '/var/lib/pgbackrest/archive/demo/12-1/0000000800000000/000000080000000000000029-45c70258c3af934d29956e009b6f211e949dcb1a.gz' on repo1", + "P00 INFO: WAL segment 000000080000000000000029 successfully archived to '/var/lib/pgbackrest/archive/demo/12-1/0000000800000000/000000080000000000000029-906559069a8bed3a75267bc0b69ba1af5c608cf8.gz' on repo1", "P00 INFO: check command end: completed successfully" ] } @@ -5271,13 +5252,13 @@ "value" : { "output" : [ "-------------------PROCESS START-------------------", - "P00 INFO: archive-push:async command begin 2.37: [/var/lib/postgresql/12/demo/pg_wal] --archive-async --exec-id=3265-085154e0 --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --process-max=2 --repo1-host=repository --spool-path=/var/spool/pgbackrest --stanza=demo", + "P00 INFO: archive-push:async command begin 2.38: [/var/lib/postgresql/12/demo/pg_wal] --archive-async --exec-id=3615-e3669d33 --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --process-max=2 --repo1-host=repository --spool-path=/var/spool/pgbackrest --stanza=demo", "P00 INFO: push 1 WAL file(s) to archive: 000000080000000000000024", "P01 DETAIL: pushed WAL file '000000080000000000000024' to the archive", "P00 INFO: archive-push:async command end: completed successfully", "", "-------------------PROCESS START-------------------", - "P00 INFO: archive-push:async command begin 2.37: [/var/lib/postgresql/12/demo/pg_wal] --archive-async --exec-id=3283-c2b7f5b4 --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --process-max=2 --repo1-host=repository --spool-path=/var/spool/pgbackrest --stanza=demo", + "P00 INFO: archive-push:async command begin 2.38: [/var/lib/postgresql/12/demo/pg_wal] --archive-async --exec-id=3633-a32f5183 --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --process-max=2 --repo1-host=repository --spool-path=/var/spool/pgbackrest --stanza=demo", "P00 INFO: push 4 WAL file(s) to archive: 000000080000000000000025...000000080000000000000028", "P02 DETAIL: pushed WAL file '000000080000000000000026' to the archive", "P01 DETAIL: pushed WAL file '000000080000000000000025' to the archive", @@ -5286,7 +5267,7 @@ "P00 INFO: archive-push:async command end: completed successfully", "", "-------------------PROCESS START-------------------", - "P00 INFO: archive-push:async command begin 2.37: [/var/lib/postgresql/12/demo/pg_wal] --archive-async --exec-id=3299-b52ab60e --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --process-max=2 --repo1-host=repository --spool-path=/var/spool/pgbackrest --stanza=demo", + "P00 INFO: archive-push:async command begin 2.38: [/var/lib/postgresql/12/demo/pg_wal] --archive-async --exec-id=3649-07aa6201 --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --process-max=2 --repo1-host=repository --spool-path=/var/spool/pgbackrest --stanza=demo", "P00 INFO: push 1 WAL file(s) to archive: 000000080000000000000029", "P01 DETAIL: pushed WAL file '000000080000000000000029' to the archive", "P00 INFO: archive-push:async command end: completed successfully" @@ -5328,34 +5309,25 @@ "value" : { "output" : [ "-------------------PROCESS START-------------------", - "P00 INFO: archive-get:async command begin 2.37: [000000080000000000000022, 000000080000000000000023, 000000080000000000000024, 000000080000000000000025, 000000080000000000000026, 000000080000000000000027, 000000080000000000000028, 000000080000000000000029] --archive-async --exec-id=1548-7fe4e456 --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --process-max=2 --repo1-host=repository --spool-path=/var/spool/pgbackrest --stanza=demo", - "P00 INFO: get 8 WAL file(s) from archive: 000000080000000000000022...000000080000000000000029", - "P01 DETAIL: found 000000080000000000000022 in the repo1: 12-1 archive", + "P00 INFO: archive-get:async command begin 2.38: [000000080000000000000021, 000000080000000000000022, 000000080000000000000023, 000000080000000000000024, 000000080000000000000025, 000000080000000000000026, 000000080000000000000027, 000000080000000000000028] --archive-async --exec-id=1650-6d02b74d --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --process-max=2 --repo1-host=repository --spool-path=/var/spool/pgbackrest --stanza=demo", + "P00 INFO: get 8 WAL file(s) from archive: 000000080000000000000021...000000080000000000000028", + "P02 DETAIL: found 000000080000000000000022 in the repo1: 12-1 archive", + "P01 DETAIL: found 000000080000000000000021 in the repo1: 12-1 archive", "P02 DETAIL: found 000000080000000000000023 in the repo1: 12-1 archive", "P00 DETAIL: unable to find 000000080000000000000024 in the archive", "P00 INFO: archive-get:async command end: completed successfully", " [filtered 14 lines of output]", - "P00 INFO: archive-get:async command begin 2.37: [000000080000000000000024, 000000080000000000000025, 000000080000000000000026, 000000080000000000000027, 000000080000000000000028, 000000080000000000000029, 00000008000000000000002A, 00000008000000000000002B] --archive-async --exec-id=1590-245d7f0f --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --process-max=2 --repo1-host=repository --spool-path=/var/spool/pgbackrest --stanza=demo", + "P00 INFO: archive-get:async command begin 2.38: [000000080000000000000024, 000000080000000000000025, 000000080000000000000026, 000000080000000000000027, 000000080000000000000028, 000000080000000000000029, 00000008000000000000002A, 00000008000000000000002B] --archive-async --exec-id=1694-184298fa --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --process-max=2 --repo1-host=repository --spool-path=/var/spool/pgbackrest --stanza=demo", "P00 INFO: get 8 WAL file(s) from archive: 000000080000000000000024...00000008000000000000002B", "P01 DETAIL: found 000000080000000000000024 in the repo1: 12-1 archive", - "P00 DETAIL: unable to find 000000080000000000000025 in the archive", - "P00 INFO: archive-get:async command end: completed successfully", - " [filtered 2 lines of output]", - "P00 INFO: archive-get:async command begin 2.37: [000000080000000000000025, 000000080000000000000026, 000000080000000000000027, 000000080000000000000028, 000000080000000000000029, 00000008000000000000002A, 00000008000000000000002B, 00000008000000000000002C] --archive-async --exec-id=1598-571f7ef0 --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --process-max=2 --repo1-host=repository --spool-path=/var/spool/pgbackrest --stanza=demo", - "P00 INFO: get 8 WAL file(s) from archive: 000000080000000000000025...00000008000000000000002C", - "P02 DETAIL: found 000000080000000000000026 in the repo1: 12-1 archive", - "P01 DETAIL: found 000000080000000000000025 in the repo1: 12-1 archive", - "P00 DETAIL: unable to find 000000080000000000000027 in the archive", - "P00 INFO: archive-get:async command end: completed successfully", - " [filtered 2 lines of output]", - "P00 INFO: archive-get:async command begin 2.37: [000000080000000000000027, 000000080000000000000028, 000000080000000000000029, 00000008000000000000002A, 00000008000000000000002B, 00000008000000000000002C, 00000008000000000000002D, 00000008000000000000002E] --archive-async --exec-id=1607-3bece536 --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --process-max=2 --repo1-host=repository --spool-path=/var/spool/pgbackrest --stanza=demo", - "P00 INFO: get 8 WAL file(s) from archive: 000000080000000000000027...00000008000000000000002E", - "P02 DETAIL: found 000000080000000000000028 in the repo1: 12-1 archive", - "P01 DETAIL: found 000000080000000000000027 in the repo1: 12-1 archive", + "P02 DETAIL: found 000000080000000000000025 in the repo1: 12-1 archive", + "P01 DETAIL: found 000000080000000000000026 in the repo1: 12-1 archive", + "P02 DETAIL: found 000000080000000000000027 in the repo1: 12-1 archive", + "P01 DETAIL: found 000000080000000000000028 in the repo1: 12-1 archive", "P02 DETAIL: found 000000080000000000000029 in the repo1: 12-1 archive", "P00 DETAIL: unable to find 00000008000000000000002A in the archive", "P00 INFO: archive-get:async command end: completed successfully", - " [filtered 17 lines of output]" + " [filtered 11 lines of output]" ] } }, @@ -5442,10 +5414,10 @@ "P00 INFO: wait for replay on the standby to reach 0/2B000028", "P00 INFO: replay on the standby reached 0/2B000028", "P00 INFO: check archive for prior segment 00000008000000000000002A", - "P01 DETAIL: backup file pg-primary:/var/lib/postgresql/12/demo/global/pg_control (8KB, 0%) checksum 35e8a0c90ca17e4ad572c965bc503b3559890160", + "P01 DETAIL: backup file pg-primary:/var/lib/postgresql/12/demo/global/pg_control (8KB, 0%) checksum 9023ede738ec31ef0abe1fa2a0d76bebab408db6", "P01 DETAIL: backup file pg-primary:/var/lib/postgresql/12/demo/pg_logical/replorigin_checkpoint (8B, 0%) checksum 347fc8f2df71bd4436e38bd1516ccd7ea0d46532", - "P02 DETAIL: backup file pg-standby:/var/lib/postgresql/12/demo/base/13398/2608 (456KB, 19%) checksum c5379fa0a0da3e312f114d08ef381e27802113f2", - "P03 DETAIL: backup file pg-standby:/var/lib/postgresql/12/demo/base/13398/1249 (440KB, 38%) checksum 276c6ea0633afcf173bcb10ac3d0f6a1936b9502", + "P02 DETAIL: backup file pg-standby:/var/lib/postgresql/12/demo/base/13398/2608 (456KB, 19%) checksum fc03d2c5d58b40e77f08c05d1cbba5a03b61809d", + "P03 DETAIL: backup file pg-standby:/var/lib/postgresql/12/demo/base/13398/1249 (440KB, 38%) checksum 2065b9cd5601fda0f28426e111e83eb23d5fc02b", " [filtered 1293 lines of output]" ] } @@ -5541,6 +5513,19 @@ ] } }, + { + "key" : { + "bash-wrap" : true, + "cmd" : [ + "cat /root/postgresql.common.conf >> /etc/postgresql/13/demo/postgresql.conf" + ], + "host" : "pg-primary", + "load-env" : true, + "output" : false, + "run-as-user" : "root" + }, + "type" : "exe" + }, { "key" : { "file" : "/etc/postgresql/13/demo/postgresql.conf", @@ -5552,18 +5537,9 @@ "archive_mode" : { "value" : "on" }, - "listen_addresses" : { - "value" : "'*'" - }, - "log_line_prefix" : { - "value" : "''" - }, "max_wal_senders" : { "value" : "3" }, - "port" : { - "value" : "5432" - }, "wal_level" : { "value" : "replica" } @@ -5574,10 +5550,7 @@ "config" : [ "archive_command = 'pgbackrest --stanza=demo archive-push %p'", "archive_mode = on", - "listen_addresses = '*'", - "log_line_prefix = ''", "max_wal_senders = 3", - "port = 5432", "wal_level = replica" ] } @@ -5721,7 +5694,7 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: stanza-upgrade command begin 2.37: --exec-id=3670-e88b2f92 --log-level-console=info --log-level-file=detail --log-level-stderr=off --no-log-timestamp --no-online --pg1-path=/var/lib/postgresql/13/demo --repo1-host=repository --stanza=demo", + "P00 INFO: stanza-upgrade command begin 2.38: --exec-id=4054-c8933201 --log-level-console=info --log-level-file=detail --log-level-stderr=off --no-log-timestamp --no-online --pg1-path=/var/lib/postgresql/13/demo --repo1-host=repository --stanza=demo", "P00 INFO: stanza-upgrade for stanza 'demo' on repo1", "P00 INFO: stanza-upgrade command end: completed successfully" ] @@ -5819,7 +5792,7 @@ "type" : "exe", "value" : { "output" : [ - "P00 WARN: unable to check pg-2: [DbConnectError] raised from remote-0 ssh protocol on 'pg-standby': unable to connect to 'dbname='postgres' port=5432': connection to server on socket \"/var/run/postgresql/.s.PGSQL.5432\" failed: No such file or directory", + "P00 WARN: unable to check pg2: [DbConnectError] raised from remote-0 ssh protocol on 'pg-standby': unable to connect to 'dbname='postgres' port=5432': connection to server on socket \"/var/run/postgresql/.s.PGSQL.5432\" failed: No such file or directory", " \tIs the server running locally and accepting connections on that socket?" ] } @@ -5960,7 +5933,7 @@ { "key" : { "id" : "s3", - "image" : "minio/minio", + "image" : "minio/minio:RELEASE.2022-01-28T02-28-16Z", "name" : "s3-server", "option" : "-m 128m -v {[host-repo-path]}/doc/resource/fake-cert/s3-server.crt:/root/.minio/certs/public.crt:ro -v {[host-repo-path]}/doc/resource/fake-cert/s3-server.key:/root/.minio/certs/private.key:ro -e MINIO_REGION=us-east-1 -e MINIO_DOMAIN=s3.us-east-1.amazonaws.com -e MINIO_BROWSER=off -e MINIO_ACCESS_KEY=accessKey1 -e MINIO_SECRET_KEY=verySecretKey1", "os" : "rhel", @@ -5990,7 +5963,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "sudo mkdir -p /build/pgbackrest-release-2.37" + "sudo mkdir -p /build/pgbackrest-release-2.38" ], "host" : "build", "load-env" : true, @@ -6003,7 +5976,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "sudo cp -r /pgbackrest/src /build/pgbackrest-release-2.37" + "sudo cp -r /pgbackrest/src /build/pgbackrest-release-2.38" ], "host" : "build", "load-env" : true, @@ -6016,7 +5989,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "sudo chown -R vagrant /build/pgbackrest-release-2.37" + "sudo chown -R vagrant /build/pgbackrest-release-2.38" ], "host" : "build", "load-env" : true, @@ -6044,7 +6017,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "cd /build/pgbackrest-release-2.37/src && ./configure && make" + "cd /build/pgbackrest-release-2.38/src && ./configure && make" ], "cmd-extra" : "-j 4", "host" : "build", @@ -6086,7 +6059,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "sudo scp build:/build/pgbackrest-release-2.37/src/pgbackrest /usr/bin" + "sudo scp build:/build/pgbackrest-release-2.38/src/pgbackrest /usr/bin" ], "cmd-extra" : "2>&1", "host" : "pg-primary", @@ -6214,7 +6187,7 @@ "type" : "exe", "value" : { "output" : [ - "pgBackRest 2.37 - General help", + "pgBackRest 2.38 - General help", "", "Usage:", " pgbackrest [options] [command]", @@ -6261,7 +6234,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "echo 'shared_buffers = 16MB' >> /var/lib/pgsql/10/data/postgresql.conf" + "cat /root/postgresql.common.conf >> /var/lib/pgsql/10/data/postgresql.conf" ], "host" : "pg-primary", "load-env" : true, @@ -6270,41 +6243,6 @@ }, "type" : "exe" }, - { - "key" : { - "file" : "/var/lib/pgsql/10/data/postgresql.conf", - "host" : "pg-primary", - "option" : { - "listen_addresses" : { - "value" : "'*'" - } - } - }, - "type" : "cfg-postgresql", - "value" : { - "config" : [ - "listen_addresses = '*'" - ] - } - }, - { - "key" : { - "file" : "/var/lib/pgsql/10/data/postgresql.conf", - "host" : "pg-primary", - "option" : { - "log_line_prefix" : { - "value" : "''" - } - } - }, - "type" : "cfg-postgresql", - "value" : { - "config" : [ - "listen_addresses = '*'", - "log_line_prefix = ''" - ] - } - }, { "key" : { "file" : "/var/lib/pgsql/10/data/postgresql.conf", @@ -6318,9 +6256,7 @@ "type" : "cfg-postgresql", "value" : { "config" : [ - "listen_addresses = '*'", - "log_filename = 'postgresql.log'", - "log_line_prefix = ''" + "log_filename = 'postgresql.log'" ] } }, @@ -6375,7 +6311,7 @@ "type" : "exe", "value" : { "output" : [ - "pgBackRest 2.37 - 'backup' command - 'log-path' option help", + "pgBackRest 2.38 - 'backup' command - 'log-path' option help", "", "Path where log files are stored.", "", @@ -6473,9 +6409,7 @@ "config" : [ "archive_command = 'pgbackrest --stanza=demo archive-push %p'", "archive_mode = on", - "listen_addresses = '*'", "log_filename = 'postgresql.log'", - "log_line_prefix = ''", "max_wal_senders = 3", "wal_level = replica" ] @@ -6507,6 +6441,31 @@ }, "type" : "exe" }, + { + "key" : { + "bash-wrap" : true, + "cmd" : [ + "sudo -u postgres psql -c \" \\", + " create or replace function create_test_table(prefix int, scale int, data bool) returns void as \\$\\$ \\", + " declare \\", + " index int; \\", + " begin \\", + " for index in 1 .. scale loop \\", + " execute 'create table test_' || prefix || '_' || index || ' (id int)'; \\", + " \\", + " if data then \\", + " execute 'insert into test_' || prefix || '_' || index || ' values (' || (prefix * index) || ')'; \\", + " end if; \\", + " end loop; \\", + " end \\$\\$ LANGUAGE plpgsql;\"" + ], + "host" : "pg-primary", + "load-env" : true, + "output" : false, + "run-as-user" : null + }, + "type" : "exe" + }, { "key" : { "file" : "/etc/pgbackrest/pgbackrest.conf", @@ -6613,7 +6572,7 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: stanza-create command begin 2.37: --exec-id=952-6f56cb91 --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --stanza=demo", + "P00 INFO: stanza-create command begin 2.38: --exec-id=1105-a5f9af42 --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --stanza=demo", "P00 INFO: stanza-create for stanza 'demo' on repo1", "P00 INFO: stanza-create command end: completed successfully" ] @@ -6640,10 +6599,10 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: check command begin 2.37: --exec-id=977-a8bdb38d --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --stanza=demo", + "P00 INFO: check command begin 2.38: --exec-id=1132-6eb7c46d --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --stanza=demo", "P00 INFO: check repo1 configuration (primary)", "P00 INFO: check repo1 archive for WAL (primary)", - "P00 INFO: WAL segment 000000010000000000000001 successfully archived to '/var/lib/pgbackrest/archive/demo/10-1/0000000100000000/000000010000000000000001-84287fe4b534f0cb6a7a693e206d5fddde3af7cb.gz' on repo1", + "P00 INFO: WAL segment 000000010000000000000001 successfully archived to '/var/lib/pgbackrest/archive/demo/10-1/0000000100000000/000000010000000000000001-c1880edf6b0208ff8529a5bbcf0c7a0f95727017.gz' on repo1", "P00 INFO: check command end: completed successfully" ] } @@ -6700,16 +6659,16 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: backup command begin 2.37: --exec-id=1041-336b8131 --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-full=2 --stanza=demo --start-fast", + "P00 INFO: backup command begin 2.38: --exec-id=1203-108e58c4 --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-full=2 --stanza=demo --start-fast", "P00 WARN: no prior backup exists, incr backup has been changed to full", "P00 INFO: execute non-exclusive pg_start_backup(): backup begins after the requested immediate checkpoint completes", "P00 INFO: backup start archive = 000000010000000000000002, lsn = 0/2000028", " [filtered 3 lines of output]", "P00 INFO: check archive for segment(s) 000000010000000000000002:000000010000000000000003", - "P00 INFO: new backup label = 20211231-194304F", + "P00 INFO: new backup label = 20220306-154349F", "P00 INFO: full backup size = 22.5MB, file total = 949", "P00 INFO: backup command end: completed successfully", - "P00 INFO: expire command begin 2.37: --exec-id=1041-336b8131 --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-full=2 --stanza=demo" + "P00 INFO: expire command begin 2.38: --exec-id=1203-108e58c4 --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-full=2 --stanza=demo" ] } }, @@ -6727,7 +6686,7 @@ "type" : "exe", "value" : { "output" : [ - "20211231-194304F" + "20220306-154349F" ] } }, @@ -6755,10 +6714,10 @@ "output" : [ " [filtered 7 lines of output]", "P00 INFO: check archive for segment(s) 000000010000000000000004:000000010000000000000005", - "P00 INFO: new backup label = 20211231-194304F_20211231-194310D", + "P00 INFO: new backup label = 20220306-154349F_20220306-154353D", "P00 INFO: diff backup size = 8.8KB, file total = 949", "P00 INFO: backup command end: completed successfully", - "P00 INFO: expire command begin 2.37: --exec-id=1096-e5efad67 --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-full=2 --stanza=demo" + "P00 INFO: expire command begin 2.38: --exec-id=1263-4805fd6a --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-full=2 --stanza=demo" ] } }, @@ -6790,18 +6749,18 @@ " db (current)", " wal archive min/max (10): 000000010000000000000001/000000010000000000000005", "", - " full backup: 20211231-194304F", - " timestamp start/stop: 2021-12-31 19:43:04 / 2021-12-31 19:43:08", + " full backup: 20220306-154349F", + " timestamp start/stop: 2022-03-06 15:43:49 / 2022-03-06 15:43:52", " wal start/stop: 000000010000000000000002 / 000000010000000000000003", " database size: 22.5MB, database backup size: 22.5MB", " repo1: backup set size: 2.7MB, backup size: 2.7MB", "", - " diff backup: 20211231-194304F_20211231-194310D", - " timestamp start/stop: 2021-12-31 19:43:10 / 2021-12-31 19:43:12", + " diff backup: 20220306-154349F_20220306-154353D", + " timestamp start/stop: 2022-03-06 15:43:53 / 2022-03-06 15:43:55", " wal start/stop: 000000010000000000000004 / 000000010000000000000005", " database size: 22.5MB, database backup size: 8.8KB", " repo1: backup set size: 2.7MB, backup size: 752B", - " backup reference list: 20211231-194304F" + " backup reference list: 20220306-154349F" ] } }, @@ -6868,9 +6827,9 @@ "value" : { "output" : [ " [filtered 12 lines of output]", - "Dec 31 19:43:15 pg-primary systemd[1]: postgresql-10.service: Main process exited, code=exited, status=2/INVALIDARGUMENT", - "Dec 31 19:43:15 pg-primary systemd[1]: postgresql-10.service: Failed with result 'exit-code'.", - "Dec 31 19:43:15 pg-primary systemd[1]: Failed to start PostgreSQL 10 database server." + "Mar 06 15:43:56 pg-primary systemd[1]: postgresql-10.service: Main process exited, code=exited, status=2/INVALIDARGUMENT", + "Mar 06 15:43:56 pg-primary systemd[1]: postgresql-10.service: Failed with result 'exit-code'.", + "Mar 06 15:43:56 pg-primary systemd[1]: Failed to start PostgreSQL 10 database server." ] } }, @@ -7067,7 +7026,7 @@ "output" : [ " name | last_successful_backup | last_archived_wal ", "--------+------------------------+--------------------------", - " \"demo\" | 2021-12-31 19:43:12+00 | 000000010000000000000005", + " \"demo\" | 2022-03-06 15:43:55+00 | 000000010000000000000005", "(1 row)" ] } @@ -7113,7 +7072,7 @@ "filter" : true, "filter-context" : 2, "list" : [ - "archive retention on backup 20211231-194304F|remove archive" + "archive retention on backup 20220306-154349F|remove archive" ] }, "host" : "pg-primary", @@ -7126,8 +7085,8 @@ "output" : [ " [filtered 958 lines of output]", "P00 INFO: backup command end: completed successfully", - "P00 INFO: expire command begin 2.37: --exec-id=1555-052ad819 --log-level-console=detail --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-full=2 --stanza=demo", - "P00 DETAIL: repo1: 10-1 archive retention on backup 20211231-194304F, start = 000000010000000000000002", + "P00 INFO: expire command begin 2.38: --exec-id=1767-6fe05c25 --log-level-console=detail --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-full=2 --stanza=demo", + "P00 DETAIL: repo1: 10-1 archive retention on backup 20220306-154349F, start = 000000010000000000000002", "P00 INFO: repo1: 10-1 remove archive, start = 000000010000000000000001, stop = 000000010000000000000001", "P00 INFO: expire command end: completed successfully" ] @@ -7147,7 +7106,7 @@ "type" : "exe", "value" : { "output" : [ - "20211231-194327F" + "20220306-154403F" ] } }, @@ -7162,7 +7121,7 @@ "filter" : true, "filter-context" : 2, "list" : [ - "expire full backup set 20211231-194304F|archive retention on backup 20211231-194327F|remove archive" + "expire full backup set 20220306-154349F|archive retention on backup 20220306-154403F|remove archive" ] }, "host" : "pg-primary", @@ -7175,10 +7134,10 @@ "output" : [ " [filtered 9 lines of output]", "P00 INFO: backup command end: completed successfully", - "P00 INFO: expire command begin 2.37: --exec-id=1610-9b83d72f --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-full=2 --stanza=demo", - "P00 INFO: repo1: expire full backup set 20211231-194304F, 20211231-194304F_20211231-194310D", - "P00 INFO: repo1: remove expired backup 20211231-194304F_20211231-194310D", - "P00 INFO: repo1: remove expired backup 20211231-194304F", + "P00 INFO: expire command begin 2.38: --exec-id=1826-5340bdb7 --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-full=2 --stanza=demo", + "P00 INFO: repo1: expire full backup set 20220306-154349F, 20220306-154349F_20220306-154353D", + "P00 INFO: repo1: remove expired backup 20220306-154349F_20220306-154353D", + "P00 INFO: repo1: remove expired backup 20220306-154349F", "P00 INFO: repo1: 10-1 remove archive, start = 0000000100000000, stop = 000000020000000000000006", "P00 INFO: expire command end: completed successfully" ] @@ -7242,7 +7201,7 @@ "type" : "exe", "value" : { "output" : [ - "20211231-194333F_20211231-194340D" + "20220306-154407F_20220306-154412D" ] } }, @@ -7270,7 +7229,7 @@ "filter" : true, "filter-context" : 2, "list" : [ - "expire diff backup set 20211231-194333F_20211231-194340D" + "expire diff backup set 20220306-154407F_20220306-154412D" ] }, "host" : "pg-primary", @@ -7283,10 +7242,10 @@ "output" : [ " [filtered 10 lines of output]", "P00 INFO: backup command end: completed successfully", - "P00 INFO: expire command begin 2.37: --exec-id=1761-d5f40afa --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-diff=1 --repo1-retention-full=2 --stanza=demo", - "P00 INFO: repo1: expire diff backup set 20211231-194333F_20211231-194340D, 20211231-194333F_20211231-194343I", - "P00 INFO: repo1: remove expired backup 20211231-194333F_20211231-194343I", - "P00 INFO: repo1: remove expired backup 20211231-194333F_20211231-194340D", + "P00 INFO: expire command begin 2.38: --exec-id=1991-f827a85f --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-diff=1 --repo1-retention-full=2 --stanza=demo", + "P00 INFO: repo1: expire diff backup set 20220306-154407F_20220306-154412D, 20220306-154407F_20220306-154414I", + "P00 INFO: repo1: remove expired backup 20220306-154407F_20220306-154414I", + "P00 INFO: repo1: remove expired backup 20220306-154407F_20220306-154412D", "P00 INFO: expire command end: completed successfully" ] } @@ -7336,7 +7295,7 @@ "type" : "exe", "value" : { "output" : [ - "20211231-194333F_20211231-194345D" + "20220306-154407F_20220306-154416D" ] } }, @@ -7380,8 +7339,8 @@ " [filtered 6 lines of output]", "P00 INFO: backup stop archive = 000000020000000000000013, lsn = 0/13000050", "P00 INFO: check archive for segment(s) 000000020000000000000012:000000020000000000000013", - "P00 INFO: new backup label = 20211231-194333F_20211231-194351D", - "P00 INFO: diff backup size = 10.6KB, file total = 949", + "P00 INFO: new backup label = 20220306-154407F_20220306-154419D", + "P00 INFO: diff backup size = 10.4KB, file total = 949", "P00 INFO: backup command end: completed successfully", " [filtered 2 lines of output]" ] @@ -7401,7 +7360,7 @@ "type" : "exe", "value" : { "output" : [ - "20211231-194333F_20211231-194351D" + "20220306-154407F_20220306-154419D" ] } }, @@ -7416,7 +7375,7 @@ "filter" : true, "filter-context" : 2, "list" : [ - "archive retention on backup 20211231-194333F_20211231-194345D|remove archive" + "archive retention on backup 20220306-154407F_20220306-154416D|remove archive" ] }, "host" : "pg-primary", @@ -7427,11 +7386,11 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: expire command begin 2.37: --exec-id=1936-5402b1a3 --log-level-console=detail --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-archive=1 --repo1-retention-archive-type=diff --repo1-retention-diff=2 --repo1-retention-full=2 --stanza=demo", - "P00 DETAIL: repo1: 10-1 archive retention on backup 20211231-194327F, start = 000000020000000000000007, stop = 000000020000000000000007", - "P00 DETAIL: repo1: 10-1 archive retention on backup 20211231-194333F, start = 000000020000000000000008, stop = 000000020000000000000009", - "P00 DETAIL: repo1: 10-1 archive retention on backup 20211231-194333F_20211231-194345D, start = 00000002000000000000000E, stop = 00000002000000000000000F", - "P00 DETAIL: repo1: 10-1 archive retention on backup 20211231-194333F_20211231-194351D, start = 000000020000000000000012", + "P00 INFO: expire command begin 2.38: --exec-id=2182-85d5811b --log-level-console=detail --log-level-stderr=off --no-log-timestamp --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo1-retention-archive=1 --repo1-retention-archive-type=diff --repo1-retention-diff=2 --repo1-retention-full=2 --stanza=demo", + "P00 DETAIL: repo1: 10-1 archive retention on backup 20220306-154403F, start = 000000020000000000000007, stop = 000000020000000000000007", + "P00 DETAIL: repo1: 10-1 archive retention on backup 20220306-154407F, start = 000000020000000000000008, stop = 000000020000000000000009", + "P00 DETAIL: repo1: 10-1 archive retention on backup 20220306-154407F_20220306-154416D, start = 00000002000000000000000E, stop = 00000002000000000000000F", + "P00 DETAIL: repo1: 10-1 archive retention on backup 20220306-154407F_20220306-154419D, start = 000000020000000000000012", "P00 INFO: repo1: 10-1 remove archive, start = 00000002000000000000000A, stop = 00000002000000000000000D", "P00 INFO: repo1: 10-1 remove archive, start = 000000020000000000000010, stop = 000000020000000000000011", "P00 INFO: expire command end: completed successfully" @@ -7610,7 +7569,7 @@ "type" : "exe", "value" : { "output" : [ - "24576" + "32768" ] } }, @@ -7618,7 +7577,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "sudo -u postgres du -sh /var/lib/pgsql/10/data/base/24576" + "sudo -u postgres du -sh /var/lib/pgsql/10/data/base/32768" ], "host" : "pg-primary", "load-env" : true, @@ -7628,7 +7587,7 @@ "type" : "exe", "value" : { "output" : [ - "7.5M\t/var/lib/pgsql/10/data/base/24576" + "7.5M\t/var/lib/pgsql/10/data/base/32768" ] } }, @@ -7646,7 +7605,7 @@ "type" : "exe", "value" : { "output" : [ - "20211231-194333F_20211231-194405I" + "20220306-154407F_20220306-154426I" ] } }, @@ -7655,7 +7614,7 @@ "bash-wrap" : true, "cmd" : [ "sudo -u postgres pgbackrest --stanza=demo \\", - " --set=20211231-194333F_20211231-194405I info" + " --set=20220306-154407F_20220306-154426I info" ], "highlight" : { "filter" : true, @@ -7672,10 +7631,10 @@ "type" : "exe", "value" : { "output" : [ - " [filtered 11 lines of output]", - " repo1: backup set size: 4.5MB, backup size: 1.8MB", - " backup reference list: 20211231-194333F, 20211231-194333F_20211231-194351D", - " database list: postgres (13017), test1 (24576), test2 (24577)" + " [filtered 12 lines of output]", + " repo1: backup set size: 4.4MB, backup size: 1.8MB", + " backup reference list: 20220306-154407F, 20220306-154407F_20220306-154419D", + " database list: postgres (13017), test1 (32768), test2 (32769)" ] } }, @@ -7775,7 +7734,7 @@ "type" : "exe", "value" : { "output" : [ - "psql: FATAL: relation mapping file \"base/24576/pg_filenode.map\" contains invalid data" + "psql: FATAL: relation mapping file \"base/32768/pg_filenode.map\" contains invalid data" ] } }, @@ -7783,7 +7742,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "sudo -u postgres du -sh /var/lib/pgsql/10/data/base/24576" + "sudo -u postgres du -sh /var/lib/pgsql/10/data/base/32768" ], "host" : "pg-primary", "load-env" : true, @@ -7793,7 +7752,7 @@ "type" : "exe", "value" : { "output" : [ - "16K\t/var/lib/pgsql/10/data/base/24576" + "16K\t/var/lib/pgsql/10/data/base/32768" ] } }, @@ -7841,7 +7800,7 @@ " 1 | template1", " 13016 | template0", " 13017 | postgres", - " 24577 | test2", + " 32769 | test2", "(4 rows)" ] } @@ -7918,7 +7877,7 @@ "type" : "exe", "value" : { "output" : [ - "2021-12-31 19:44:27.079264+00" + "2022-03-06 15:44:39.614274+00" ] } }, @@ -7984,7 +7943,7 @@ "bash-wrap" : true, "cmd" : [ "sudo -u postgres pgbackrest --stanza=demo --delta \\", - " --type=time \"--target=2021-12-31 19:44:27.079264+00\" \\", + " --type=time \"--target=2022-03-06 15:44:39.614274+00\" \\", " --target-action=promote restore" ], "host" : "pg-primary", @@ -8028,9 +7987,9 @@ "type" : "exe", "value" : { "output" : [ - "# Recovery settings generated by pgBackRest restore on 2021-12-31 19:44:31", + "# Recovery settings generated by pgBackRest restore on 2022-03-06 15:44:41", "restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'", - "recovery_target_time = '2021-12-31 19:44:27.079264+00'", + "recovery_target_time = '2022-03-06 15:44:39.614274+00'", "recovery_target_action = 'promote'" ] } @@ -8110,16 +8069,16 @@ "type" : "exe", "value" : { "output" : [ - "LOG: database system was interrupted; last known up at 2021-12-31 19:44:21 UTC", - "LOG: starting point-in-time recovery to 2021-12-31 19:44:27.079264+00", + "LOG: database system was interrupted; last known up at 2022-03-06 15:44:35 UTC", + "LOG: starting point-in-time recovery to 2022-03-06 15:44:39.614274+00", "LOG: restored log file \"00000004.history\" from archive", "LOG: restored log file \"000000040000000000000016\" from archive", " [filtered 2 lines of output]", "LOG: database system is ready to accept read only connections", "LOG: restored log file \"000000040000000000000017\" from archive", - "LOG: recovery stopping before commit of transaction 564, time 2021-12-31 19:44:29.264483+00", - "LOG: redo done at 0/17021810", - "LOG: last completed transaction was at log time 2021-12-31 19:44:24.848796+00", + "LOG: recovery stopping before commit of transaction 565, time 2022-03-06 15:44:41.00658+00", + "LOG: redo done at 0/17020B28", + "LOG: last completed transaction was at log time 2022-03-06 15:44:38.189828+00", "LOG: selected new timeline ID: 5", "LOG: archive recovery complete", "LOG: database system is ready to accept connections" @@ -8184,7 +8143,7 @@ "type" : "exe", "value" : { "output" : [ - "20211231-194333F_20211231-194438I" + "20220306-154407F_20220306-154446I" ] } }, @@ -8198,7 +8157,7 @@ "filter" : false, "filter-context" : 2, "list" : [ - "20211231-194333F_20211231-194438I" + "20220306-154407F_20220306-154446I" ] }, "host" : "pg-primary", @@ -8216,45 +8175,45 @@ " db (current)", " wal archive min/max (10): 000000020000000000000007/000000050000000000000018", "", - " full backup: 20211231-194327F", - " timestamp start/stop: 2021-12-31 19:43:27 / 2021-12-31 19:43:31", + " full backup: 20220306-154403F", + " timestamp start/stop: 2022-03-06 15:44:03 / 2022-03-06 15:44:06", " wal start/stop: 000000020000000000000007 / 000000020000000000000007", " database size: 22.5MB, database backup size: 22.5MB", " repo1: backup set size: 2.7MB, backup size: 2.7MB", "", - " full backup: 20211231-194333F", - " timestamp start/stop: 2021-12-31 19:43:33 / 2021-12-31 19:43:37", + " full backup: 20220306-154407F", + " timestamp start/stop: 2022-03-06 15:44:07 / 2022-03-06 15:44:10", " wal start/stop: 000000020000000000000008 / 000000020000000000000009", " database size: 22.5MB, database backup size: 22.5MB", " repo1: backup set size: 2.7MB, backup size: 2.7MB", "", - " diff backup: 20211231-194333F_20211231-194351D", - " timestamp start/stop: 2021-12-31 19:43:51 / 2021-12-31 19:43:53", + " diff backup: 20220306-154407F_20220306-154419D", + " timestamp start/stop: 2022-03-06 15:44:19 / 2022-03-06 15:44:20", " wal start/stop: 000000020000000000000012 / 000000020000000000000013", - " database size: 22.5MB, database backup size: 10.6KB", - " repo1: backup set size: 2.7MB, backup size: 992B", - " backup reference list: 20211231-194333F", + " database size: 22.5MB, database backup size: 10.4KB", + " repo1: backup set size: 2.7MB, backup size: 976B", + " backup reference list: 20220306-154407F", "", - " incr backup: 20211231-194333F_20211231-194405I", - " timestamp start/stop: 2021-12-31 19:44:05 / 2021-12-31 19:44:08", + " incr backup: 20220306-154407F_20220306-154426I", + " timestamp start/stop: 2022-03-06 15:44:26 / 2022-03-06 15:44:29", " wal start/stop: 000000030000000000000015 / 000000030000000000000015", - " database size: 37.2MB, database backup size: 15.2MB", - " repo1: backup set size: 4.5MB, backup size: 1.8MB", - " backup reference list: 20211231-194333F, 20211231-194333F_20211231-194351D", + " database size: 37.1MB, database backup size: 15.1MB", + " repo1: backup set size: 4.4MB, backup size: 1.8MB", + " backup reference list: 20220306-154407F, 20220306-154407F_20220306-154419D", "", - " diff backup: 20211231-194333F_20211231-194421D", - " timestamp start/stop: 2021-12-31 19:44:21 / 2021-12-31 19:44:24", + " diff backup: 20220306-154407F_20220306-154435D", + " timestamp start/stop: 2022-03-06 15:44:35 / 2022-03-06 15:44:37", " wal start/stop: 000000040000000000000016 / 000000040000000000000016", - " database size: 29.9MB, database backup size: 7.8MB", - " repo1: backup set size: 3.6MB, backup size: 952.3KB", - " backup reference list: 20211231-194333F", + " database size: 29.8MB, database backup size: 7.8MB", + " repo1: backup set size: 3.6MB, backup size: 952KB", + " backup reference list: 20220306-154407F", "", - " incr backup: 20211231-194333F_20211231-194438I", - " timestamp start/stop: 2021-12-31 19:44:38 / 2021-12-31 19:44:40", + " incr backup: 20220306-154407F_20220306-154446I", + " timestamp start/stop: 2022-03-06 15:44:46 / 2022-03-06 15:44:48", " wal start/stop: 000000050000000000000018 / 000000050000000000000018", - " database size: 29.9MB, database backup size: 2.1MB", - " repo1: backup set size: 3.6MB, backup size: 218.7KB", - " backup reference list: 20211231-194333F, 20211231-194333F_20211231-194421D" + " database size: 29.8MB, database backup size: 2MB", + " repo1: backup set size: 3.6MB, backup size: 218.4KB", + " backup reference list: 20220306-154407F, 20220306-154407F_20220306-154435D" ] } }, @@ -8276,8 +8235,8 @@ "bash-wrap" : true, "cmd" : [ "sudo -u postgres pgbackrest --stanza=demo --delta \\", - " --set=20211231-194333F_20211231-194438I \\", - " --type=time \"--target=2021-12-31 19:44:27.079264+00\" --target-action=promote restore" + " --set=20220306-154407F_20220306-154446I \\", + " --type=time \"--target=2022-03-06 15:44:39.614274+00\" --target-action=promote restore" ], "host" : "pg-primary", "load-env" : true, @@ -8374,8 +8333,8 @@ "type" : "exe", "value" : { "output" : [ - "LOG: database system was interrupted; last known up at 2021-12-31 19:44:38 UTC", - "LOG: starting point-in-time recovery to 2021-12-31 19:44:27.079264+00", + "LOG: database system was interrupted; last known up at 2022-03-06 15:44:46 UTC", + "LOG: starting point-in-time recovery to 2022-03-06 15:44:39.614274+00", "LOG: restored log file \"00000005.history\" from archive", "LOG: restored log file \"000000050000000000000018\" from archive", "LOG: redo starts at 0/18000028", @@ -8404,7 +8363,7 @@ "bash-wrap" : true, "cmd" : [ "sudo -u postgres pgbackrest --stanza=demo --delta \\", - " --type=time \"--target=2021-12-31 19:44:27.079264+00\" \\", + " --type=time \"--target=2022-03-06 15:44:39.614274+00\" \\", " --target-action=promote restore" ], "host" : "pg-primary", @@ -8502,16 +8461,16 @@ "type" : "exe", "value" : { "output" : [ - "LOG: database system was interrupted; last known up at 2021-12-31 19:44:21 UTC", - "LOG: starting point-in-time recovery to 2021-12-31 19:44:27.079264+00", + "LOG: database system was interrupted; last known up at 2022-03-06 15:44:35 UTC", + "LOG: starting point-in-time recovery to 2022-03-06 15:44:39.614274+00", "LOG: restored log file \"00000004.history\" from archive", "LOG: restored log file \"000000040000000000000016\" from archive", " [filtered 2 lines of output]", "LOG: database system is ready to accept read only connections", "LOG: restored log file \"000000040000000000000017\" from archive", - "LOG: recovery stopping before commit of transaction 564, time 2021-12-31 19:44:29.264483+00", - "LOG: redo done at 0/17021810", - "LOG: last completed transaction was at log time 2021-12-31 19:44:24.848796+00", + "LOG: recovery stopping before commit of transaction 565, time 2022-03-06 15:44:41.00658+00", + "LOG: redo done at 0/17020B28", + "LOG: last completed transaction was at log time 2022-03-06 15:44:38.189828+00", "LOG: restored log file \"00000005.history\" from archive", "LOG: restored log file \"00000006.history\" from archive", " [filtered 3 lines of output]" @@ -8650,16 +8609,16 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: backup command begin 2.37: --exec-id=3515-0d0165d7 --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --process-max=4 --repo=2 --repo2-azure-account= --repo2-azure-container=demo-container --repo2-azure-key= --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo2-path=/demo-repo --repo1-retention-diff=2 --repo1-retention-full=2 --repo2-retention-full=4 --repo2-type=azure --stanza=demo --start-fast", + "P00 INFO: backup command begin 2.38: --exec-id=3878-cb8964ab --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --process-max=4 --repo=2 --repo2-azure-account= --repo2-azure-container=demo-container --repo2-azure-key= --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo2-path=/demo-repo --repo1-retention-diff=2 --repo1-retention-full=2 --repo2-retention-full=4 --repo2-type=azure --stanza=demo --start-fast", "P00 WARN: no prior backup exists, incr backup has been changed to full", "P00 INFO: execute non-exclusive pg_start_backup(): backup begins after the requested immediate checkpoint completes", "P00 INFO: backup start archive = 000000070000000000000018, lsn = 0/18000028", " [filtered 3 lines of output]", "P00 INFO: check archive for segment(s) 000000070000000000000018:000000070000000000000018", - "P00 INFO: new backup label = 20211231-194501F", - "P00 INFO: full backup size = 29.9MB, file total = 1246", + "P00 INFO: new backup label = 20220306-154500F", + "P00 INFO: full backup size = 29.8MB, file total = 1246", "P00 INFO: backup command end: completed successfully", - "P00 INFO: expire command begin 2.37: --exec-id=3515-0d0165d7 --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo=2 --repo2-azure-account= --repo2-azure-container=demo-container --repo2-azure-key= --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo2-path=/demo-repo --repo1-retention-diff=2 --repo1-retention-full=2 --repo2-retention-full=4 --repo2-type=azure --stanza=demo" + "P00 INFO: expire command begin 2.38: --exec-id=3878-cb8964ab --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo=2 --repo2-azure-account= --repo2-azure-container=demo-container --repo2-azure-key= --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo2-path=/demo-repo --repo1-retention-diff=2 --repo1-retention-full=2 --repo2-retention-full=4 --repo2-type=azure --stanza=demo" ] } }, @@ -8809,16 +8768,16 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: backup command begin 2.37: --exec-id=3655-556e7ff2 --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --process-max=4 --repo=3 --repo2-azure-account= --repo2-azure-container=demo-container --repo2-azure-key= --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo2-path=/demo-repo --repo3-path=/demo-repo --repo1-retention-diff=2 --repo1-retention-full=2 --repo2-retention-full=4 --repo3-retention-full=4 --repo3-s3-bucket=demo-bucket --repo3-s3-endpoint=s3.us-east-1.amazonaws.com --repo3-s3-key= --repo3-s3-key-secret= --repo3-s3-region=us-east-1 --repo2-type=azure --repo3-type=s3 --stanza=demo --start-fast", + "P00 INFO: backup command begin 2.38: --exec-id=4032-8a6a7fa7 --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --process-max=4 --repo=3 --repo2-azure-account= --repo2-azure-container=demo-container --repo2-azure-key= --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo2-path=/demo-repo --repo3-path=/demo-repo --repo1-retention-diff=2 --repo1-retention-full=2 --repo2-retention-full=4 --repo3-retention-full=4 --repo3-s3-bucket=demo-bucket --repo3-s3-endpoint=s3.us-east-1.amazonaws.com --repo3-s3-key= --repo3-s3-key-secret= --repo3-s3-region=us-east-1 --repo2-type=azure --repo3-type=s3 --stanza=demo --start-fast", "P00 WARN: no prior backup exists, incr backup has been changed to full", "P00 INFO: execute non-exclusive pg_start_backup(): backup begins after the requested immediate checkpoint completes", - "P00 INFO: backup start archive = 000000070000000000000019, lsn = 0/19000028", + "P00 INFO: backup start archive = 00000007000000000000001A, lsn = 0/1A000028", " [filtered 3 lines of output]", - "P00 INFO: check archive for segment(s) 000000070000000000000019:00000007000000000000001A", - "P00 INFO: new backup label = 20211231-194519F", - "P00 INFO: full backup size = 29.9MB, file total = 1246", + "P00 INFO: check archive for segment(s) 00000007000000000000001A:00000007000000000000001A", + "P00 INFO: new backup label = 20220306-154510F", + "P00 INFO: full backup size = 29.8MB, file total = 1246", "P00 INFO: backup command end: completed successfully", - "P00 INFO: expire command begin 2.37: --exec-id=3655-556e7ff2 --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo=3 --repo2-azure-account= --repo2-azure-container=demo-container --repo2-azure-key= --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo2-path=/demo-repo --repo3-path=/demo-repo --repo1-retention-diff=2 --repo1-retention-full=2 --repo2-retention-full=4 --repo3-retention-full=4 --repo3-s3-bucket=demo-bucket --repo3-s3-endpoint=s3.us-east-1.amazonaws.com --repo3-s3-key= --repo3-s3-key-secret= --repo3-s3-region=us-east-1 --repo2-type=azure --repo3-type=s3 --stanza=demo" + "P00 INFO: expire command begin 2.38: --exec-id=4032-8a6a7fa7 --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo=3 --repo2-azure-account= --repo2-azure-container=demo-container --repo2-azure-key= --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo2-path=/demo-repo --repo3-path=/demo-repo --repo1-retention-diff=2 --repo1-retention-full=2 --repo2-retention-full=4 --repo3-retention-full=4 --repo3-s3-bucket=demo-bucket --repo3-s3-endpoint=s3.us-east-1.amazonaws.com --repo3-s3-key= --repo3-s3-key-secret= --repo3-s3-region=us-east-1 --repo2-type=azure --repo3-type=s3 --stanza=demo" ] } }, @@ -8918,7 +8877,7 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: stop command begin 2.37: --exec-id=3749-8d7b18b8 --log-level-console=info --log-level-stderr=off --no-log-timestamp --stanza=demo", + "P00 INFO: stop command begin 2.38: --exec-id=4143-079a89cb --log-level-console=info --log-level-stderr=off --no-log-timestamp --stanza=demo", "P00 INFO: stop command end: completed successfully" ] } @@ -8945,7 +8904,7 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: stanza-delete command begin 2.37: --exec-id=3773-1ad02626 --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --repo=1 --repo2-azure-account= --repo2-azure-container=demo-container --repo2-azure-key= --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo4-gcs-bucket=demo-bucket --repo4-gcs-key= --repo1-path=/var/lib/pgbackrest --repo2-path=/demo-repo --repo3-path=/demo-repo --repo4-path=/demo-repo --repo3-s3-bucket=demo-bucket --repo3-s3-endpoint=s3.us-east-1.amazonaws.com --repo3-s3-key= --repo3-s3-key-secret= --repo3-s3-region=us-east-1 --repo2-type=azure --repo3-type=s3 --repo4-type=gcs --stanza=demo", + "P00 INFO: stanza-delete command begin 2.38: --exec-id=4170-abce9319 --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --repo=1 --repo2-azure-account= --repo2-azure-container=demo-container --repo2-azure-key= --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo4-gcs-bucket=demo-bucket --repo4-gcs-key= --repo1-path=/var/lib/pgbackrest --repo2-path=/demo-repo --repo3-path=/demo-repo --repo4-path=/demo-repo --repo3-s3-bucket=demo-bucket --repo3-s3-endpoint=s3.us-east-1.amazonaws.com --repo3-s3-key= --repo3-s3-key-secret= --repo3-s3-region=us-east-1 --repo2-type=azure --repo3-type=s3 --repo4-type=gcs --stanza=demo", "P00 INFO: stanza-delete command end: completed successfully" ] } @@ -9021,7 +8980,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "sudo scp build:/build/pgbackrest-release-2.37/src/pgbackrest /usr/bin" + "sudo scp build:/build/pgbackrest-release-2.38/src/pgbackrest /usr/bin" ], "cmd-extra" : "2>&1", "host" : "repository", @@ -9281,18 +9240,6 @@ "demo" : { "pg1-path" : { "value" : "/var/lib/pgsql/10/data" - }, - "repo1-host-ca-file" : { - "value" : "/etc/pgbackrest/cert/ca.crt" - }, - "repo1-host-cert-file" : { - "value" : "/etc/pgbackrest/cert/client.crt" - }, - "repo1-host-key-file" : { - "value" : "/etc/pgbackrest/cert/client.key" - }, - "repo1-host-type" : { - "value" : "tls" } }, "global" : { @@ -9308,6 +9255,18 @@ "repo1-host" : { "value" : "repository" }, + "repo1-host-ca-file" : { + "value" : "/etc/pgbackrest/cert/ca.crt" + }, + "repo1-host-cert-file" : { + "value" : "/etc/pgbackrest/cert/client.crt" + }, + "repo1-host-key-file" : { + "value" : "/etc/pgbackrest/cert/client.key" + }, + "repo1-host-type" : { + "value" : "tls" + }, "tls-server-address" : { "value" : "*" }, @@ -9332,14 +9291,14 @@ "config" : [ "[demo]", "pg1-path=/var/lib/pgsql/10/data", - "repo1-host-ca-file=/etc/pgbackrest/cert/ca.crt", - "repo1-host-cert-file=/etc/pgbackrest/cert/client.crt", - "repo1-host-key-file=/etc/pgbackrest/cert/client.key", - "repo1-host-type=tls", "", "[global]", "log-level-file=detail", "repo1-host=repository", + "repo1-host-ca-file=/etc/pgbackrest/cert/ca.crt", + "repo1-host-cert-file=/etc/pgbackrest/cert/client.crt", + "repo1-host-key-file=/etc/pgbackrest/cert/client.key", + "repo1-host-type=tls", "tls-server-address=*", "tls-server-auth=pgbackrest-client=demo", "tls-server-ca-file=/etc/pgbackrest/cert/ca.crt", @@ -9398,6 +9357,8 @@ " echo 'RestartSec=1' | tee -a /etc/systemd/system/pgbackrest.service && \\", " echo 'User=pgbackrest' | tee -a /etc/systemd/system/pgbackrest.service && \\", " echo 'ExecStart=/usr/bin/pgbackrest server' | tee -a /etc/systemd/system/pgbackrest.service && \\", + " echo 'ExecStartPost=/bin/sleep 3' | tee -a /etc/systemd/system/pgbackrest.service && \\", + " echo 'ExecStartPost=/bin/bash -c \"[ ! -z $MAINPID ]\"' | tee -a /etc/systemd/system/pgbackrest.service && \\", " echo 'ExecReload=kill -HUP $MAINPID' | tee -a /etc/systemd/system/pgbackrest.service && \\", " echo '' | tee -a /etc/systemd/system/pgbackrest.service && \\", " echo '[Install]' | tee -a /etc/systemd/system/pgbackrest.service && \\", @@ -9435,6 +9396,8 @@ "RestartSec=1", "User=pgbackrest", "ExecStart=/usr/bin/pgbackrest server", + "ExecStartPost=/bin/sleep 3", + "ExecStartPost=/bin/bash -c \"[ ! -z $MAINPID ]\"", "ExecReload=kill -HUP $MAINPID", "", "[Install]", @@ -9519,6 +9482,8 @@ " echo 'RestartSec=1' | tee -a /etc/systemd/system/pgbackrest.service && \\", " echo 'User=postgres' | tee -a /etc/systemd/system/pgbackrest.service && \\", " echo 'ExecStart=/usr/bin/pgbackrest server' | tee -a /etc/systemd/system/pgbackrest.service && \\", + " echo 'ExecStartPost=/bin/sleep 3' | tee -a /etc/systemd/system/pgbackrest.service && \\", + " echo 'ExecStartPost=/bin/bash -c \"[ ! -z $MAINPID ]\"' | tee -a /etc/systemd/system/pgbackrest.service && \\", " echo 'ExecReload=kill -HUP $MAINPID' | tee -a /etc/systemd/system/pgbackrest.service && \\", " echo '' | tee -a /etc/systemd/system/pgbackrest.service && \\", " echo '[Install]' | tee -a /etc/systemd/system/pgbackrest.service && \\", @@ -9556,6 +9521,8 @@ "RestartSec=1", "User=postgres", "ExecStart=/usr/bin/pgbackrest server", + "ExecStartPost=/bin/sleep 3", + "ExecStartPost=/bin/bash -c \"[ ! -z $MAINPID ]\"", "ExecReload=kill -HUP $MAINPID", "", "[Install]", @@ -9787,18 +9754,18 @@ " cipher: none", "", " db (current)", - " wal archive min/max (10): 000000080000000000000021/000000080000000000000023", + " wal archive min/max (10): 000000080000000000000020/000000080000000000000022", "", - " full backup: 20211231-194712F", - " timestamp start/stop: 2021-12-31 19:47:12 / 2021-12-31 19:47:17", - " wal start/stop: 000000080000000000000021 / 000000080000000000000021", - " database size: 29.9MB, database backup size: 29.9MB", + " full backup: 20220306-154611F", + " timestamp start/stop: 2022-03-06 15:46:11 / 2022-03-06 15:46:16", + " wal start/stop: 000000080000000000000020 / 000000080000000000000020", + " database size: 29.8MB, database backup size: 29.8MB", " repo1: backup set size: 3.5MB, backup size: 3.5MB", "", - " full backup: 20211231-194720F", - " timestamp start/stop: 2021-12-31 19:47:20 / 2021-12-31 19:47:25", - " wal start/stop: 000000080000000000000022 / 000000080000000000000023", - " database size: 29.9MB, database backup size: 29.9MB", + " full backup: 20220306-154617F", + " timestamp start/stop: 2022-03-06 15:46:17 / 2022-03-06 15:46:20", + " wal start/stop: 000000080000000000000021 / 000000080000000000000022", + " database size: 29.8MB, database backup size: 29.8MB", " repo1: backup set size: 3.5MB, backup size: 3.5MB" ] } @@ -9838,7 +9805,7 @@ "type" : "exe", "value" : { "output" : [ - "P00 WARN: unable to check pg-1: [StopError] raised from remote-0 tls protocol on 'pg-primary': stop file exists for all stanzas", + "P00 WARN: unable to check pg1: [StopError] raised from remote-0 tls protocol on 'pg-primary': stop file exists for all stanzas", "P00 ERROR: [056]: unable to find primary cluster - cannot proceed" ] } @@ -9909,7 +9876,7 @@ "type" : "exe", "value" : { "output" : [ - "P00 WARN: unable to check pg-1: [StopError] raised from remote-0 tls protocol on 'pg-primary': stop file exists for stanza demo", + "P00 WARN: unable to check pg1: [StopError] raised from remote-0 tls protocol on 'pg-primary': stop file exists for stanza demo", "P00 ERROR: [056]: unable to find primary cluster - cannot proceed" ] } @@ -9959,7 +9926,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "sudo scp build:/build/pgbackrest-release-2.37/src/pgbackrest /usr/bin" + "sudo scp build:/build/pgbackrest-release-2.38/src/pgbackrest /usr/bin" ], "cmd-extra" : "2>&1", "host" : "pg-standby", @@ -10081,18 +10048,6 @@ "demo" : { "pg1-path" : { "value" : "/var/lib/pgsql/10/data" - }, - "repo1-host-ca-file" : { - "value" : "/etc/pgbackrest/cert/ca.crt" - }, - "repo1-host-cert-file" : { - "value" : "/etc/pgbackrest/cert/client.crt" - }, - "repo1-host-key-file" : { - "value" : "/etc/pgbackrest/cert/client.key" - }, - "repo1-host-type" : { - "value" : "tls" } }, "global" : { @@ -10108,6 +10063,18 @@ "repo1-host" : { "value" : "repository" }, + "repo1-host-ca-file" : { + "value" : "/etc/pgbackrest/cert/ca.crt" + }, + "repo1-host-cert-file" : { + "value" : "/etc/pgbackrest/cert/client.crt" + }, + "repo1-host-key-file" : { + "value" : "/etc/pgbackrest/cert/client.key" + }, + "repo1-host-type" : { + "value" : "tls" + }, "tls-server-address" : { "value" : "*" }, @@ -10131,14 +10098,14 @@ "config" : [ "[demo]", "pg1-path=/var/lib/pgsql/10/data", - "repo1-host-ca-file=/etc/pgbackrest/cert/ca.crt", - "repo1-host-cert-file=/etc/pgbackrest/cert/client.crt", - "repo1-host-key-file=/etc/pgbackrest/cert/client.key", - "repo1-host-type=tls", "", "[global]", "log-level-file=detail", "repo1-host=repository", + "repo1-host-ca-file=/etc/pgbackrest/cert/ca.crt", + "repo1-host-cert-file=/etc/pgbackrest/cert/client.crt", + "repo1-host-key-file=/etc/pgbackrest/cert/client.key", + "repo1-host-type=tls", "tls-server-address=*", "tls-server-auth=pgbackrest-client=demo", "tls-server-ca-file=/etc/pgbackrest/cert/ca.crt", @@ -10197,6 +10164,8 @@ " echo 'RestartSec=1' | tee -a /etc/systemd/system/pgbackrest.service && \\", " echo 'User=postgres' | tee -a /etc/systemd/system/pgbackrest.service && \\", " echo 'ExecStart=/usr/bin/pgbackrest server' | tee -a /etc/systemd/system/pgbackrest.service && \\", + " echo 'ExecStartPost=/bin/sleep 3' | tee -a /etc/systemd/system/pgbackrest.service && \\", + " echo 'ExecStartPost=/bin/bash -c \"[ ! -z $MAINPID ]\"' | tee -a /etc/systemd/system/pgbackrest.service && \\", " echo 'ExecReload=kill -HUP $MAINPID' | tee -a /etc/systemd/system/pgbackrest.service && \\", " echo '' | tee -a /etc/systemd/system/pgbackrest.service && \\", " echo '[Install]' | tee -a /etc/systemd/system/pgbackrest.service && \\", @@ -10234,6 +10203,8 @@ "RestartSec=1", "User=postgres", "ExecStart=/usr/bin/pgbackrest server", + "ExecStartPost=/bin/sleep 3", + "ExecStartPost=/bin/bash -c \"[ ! -z $MAINPID ]\"", "ExecReload=kill -HUP $MAINPID", "", "[Install]", @@ -10308,7 +10279,7 @@ "type" : "exe", "value" : { "output" : [ - "# Recovery settings generated by pgBackRest restore on 2021-12-31 19:47:54", + "# Recovery settings generated by pgBackRest restore on 2022-03-06 15:47:01", "restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'", "standby_mode = 'on'" ] @@ -10318,7 +10289,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "echo 'shared_buffers = 16MB' >> /var/lib/pgsql/10/data/postgresql.conf" + "cat /root/postgresql.common.conf >> /var/lib/pgsql/10/data/postgresql.conf" ], "host" : "pg-standby", "load-env" : true, @@ -10344,9 +10315,6 @@ "log_filename" : { "value" : "'postgresql.log'" }, - "log_line_prefix" : { - "value" : "''" - }, "max_wal_senders" : { "value" : "3" }, @@ -10362,7 +10330,6 @@ "archive_mode = on", "hot_standby = on", "log_filename = 'postgresql.log'", - "log_line_prefix = ''", "max_wal_senders = 3", "wal_level = replica" ] @@ -10428,13 +10395,13 @@ "type" : "exe", "value" : { "output" : [ - "LOG: database system was interrupted; last known up at 2021-12-31 19:47:20 UTC", + "LOG: database system was interrupted; last known up at 2022-03-06 15:46:18 UTC", "LOG: entering standby mode", "LOG: restored log file \"00000008.history\" from archive", + "LOG: restored log file \"000000080000000000000021\" from archive", + "LOG: redo starts at 0/21000028", "LOG: restored log file \"000000080000000000000022\" from archive", - "LOG: redo starts at 0/22000028", - "LOG: restored log file \"000000080000000000000023\" from archive", - "LOG: consistent recovery state reached at 0/23000088", + "LOG: consistent recovery state reached at 0/22000050", "LOG: database system is ready to accept read only connections" ] } @@ -10516,7 +10483,7 @@ "output" : [ " pg_switch_wal | current_timestamp ", "---------------+-------------------------------", - " 0/2402B9C0 | 2021-12-31 19:48:05.183178+00", + " 0/2302ACF0 | 2022-03-06 15:47:06.267771+00", "(1 row)" ] } @@ -10543,9 +10510,9 @@ "type" : "exe", "value" : { "output" : [ - " message | current_timestamp ", - "----------------+-------------------------------", - " Important Data | 2021-12-31 19:48:09.980843+00", + " message | current_timestamp ", + "----------------+------------------------------", + " Important Data | 2022-03-06 15:47:08.30542+00", "(1 row)" ] } @@ -10571,7 +10538,7 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: check command begin 2.37: --exec-id=1003-f1cf9bb3 --log-level-console=info --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --repo1-host=repository --repo1-host-ca-file=/etc/pgbackrest/cert/ca.crt --repo1-host-cert-file=/etc/pgbackrest/cert/client.crt --repo1-host-key-file=/etc/pgbackrest/cert/client.key --repo1-host-type=tls --stanza=demo", + "P00 INFO: check command begin 2.38: --exec-id=1250-dbce0fe1 --log-level-console=info --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --repo1-host=repository --repo1-host-ca-file=/etc/pgbackrest/cert/ca.crt --repo1-host-cert-file=/etc/pgbackrest/cert/client.crt --repo1-host-key-file=/etc/pgbackrest/cert/client.key --repo1-host-type=tls --stanza=demo", "P00 INFO: check repo1 (standby)", "P00 INFO: switch wal not performed because this is a standby", "P00 INFO: check command end: completed successfully" @@ -10643,14 +10610,14 @@ "[demo]", "pg1-path=/var/lib/pgsql/10/data", "recovery-option=primary_conninfo=host=172.17.0.5 port=5432 user=replicator", - "repo1-host-ca-file=/etc/pgbackrest/cert/ca.crt", - "repo1-host-cert-file=/etc/pgbackrest/cert/client.crt", - "repo1-host-key-file=/etc/pgbackrest/cert/client.key", - "repo1-host-type=tls", "", "[global]", "log-level-file=detail", "repo1-host=repository", + "repo1-host-ca-file=/etc/pgbackrest/cert/ca.crt", + "repo1-host-cert-file=/etc/pgbackrest/cert/client.crt", + "repo1-host-key-file=/etc/pgbackrest/cert/client.key", + "repo1-host-type=tls", "tls-server-address=*", "tls-server-auth=pgbackrest-client=demo", "tls-server-ca-file=/etc/pgbackrest/cert/ca.crt", @@ -10727,7 +10694,7 @@ "type" : "exe", "value" : { "output" : [ - "# Recovery settings generated by pgBackRest restore on 2021-12-31 19:48:19", + "# Recovery settings generated by pgBackRest restore on 2022-03-06 15:47:11", "primary_conninfo = 'host=172.17.0.5 port=5432 user=replicator'", "restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'", "standby_mode = 'on'" @@ -10751,7 +10718,6 @@ "archive_mode = on", "hot_standby = on", "log_filename = 'postgresql.log'", - "log_line_prefix = ''", "max_wal_senders = 3", "wal_level = replica" ] @@ -10819,8 +10785,8 @@ "output" : [ " [filtered 7 lines of output]", "LOG: database system is ready to accept read only connections", - "LOG: restored log file \"000000080000000000000024\" from archive", - "LOG: started streaming WAL from primary at 0/25000000 on timeline 8" + "LOG: restored log file \"000000080000000000000023\" from archive", + "LOG: started streaming WAL from primary at 0/24000000 on timeline 8" ] } }, @@ -10852,7 +10818,7 @@ "output" : [ " message | current_timestamp ", "----------------+-------------------------------", - " Important Data | 2021-12-31 19:48:26.841094+00", + " Important Data | 2022-03-06 15:47:15.878472+00", "(1 row)" ] } @@ -10881,7 +10847,7 @@ "output" : [ " message | current_timestamp ", "----------------+-------------------------------", - " Important Data | 2021-12-31 19:48:28.277963+00", + " Important Data | 2022-03-06 15:47:16.187884+00", "(1 row)" ] } @@ -10968,15 +10934,15 @@ "config" : [ "[demo]", "pg1-path=/var/lib/pgsql/10/data", - "repo1-host-ca-file=/etc/pgbackrest/cert/ca.crt", - "repo1-host-cert-file=/etc/pgbackrest/cert/client.crt", - "repo1-host-key-file=/etc/pgbackrest/cert/client.key", - "repo1-host-type=tls", "", "[global]", "archive-async=y", "log-level-file=detail", "repo1-host=repository", + "repo1-host-ca-file=/etc/pgbackrest/cert/ca.crt", + "repo1-host-cert-file=/etc/pgbackrest/cert/client.crt", + "repo1-host-key-file=/etc/pgbackrest/cert/client.key", + "repo1-host-type=tls", "spool-path=/var/spool/pgbackrest", "tls-server-address=*", "tls-server-auth=pgbackrest-client=demo", @@ -11023,15 +10989,15 @@ "[demo]", "pg1-path=/var/lib/pgsql/10/data", "recovery-option=primary_conninfo=host=172.17.0.5 port=5432 user=replicator", - "repo1-host-ca-file=/etc/pgbackrest/cert/ca.crt", - "repo1-host-cert-file=/etc/pgbackrest/cert/client.crt", - "repo1-host-key-file=/etc/pgbackrest/cert/client.key", - "repo1-host-type=tls", "", "[global]", "archive-async=y", "log-level-file=detail", "repo1-host=repository", + "repo1-host-ca-file=/etc/pgbackrest/cert/ca.crt", + "repo1-host-cert-file=/etc/pgbackrest/cert/client.crt", + "repo1-host-key-file=/etc/pgbackrest/cert/client.key", + "repo1-host-type=tls", "spool-path=/var/spool/pgbackrest", "tls-server-address=*", "tls-server-auth=pgbackrest-client=demo", @@ -11130,10 +11096,10 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: check command begin 2.37: --exec-id=4666-24f1e367 --log-level-console=info --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --repo1-host=repository --repo1-host-ca-file=/etc/pgbackrest/cert/ca.crt --repo1-host-cert-file=/etc/pgbackrest/cert/client.crt --repo1-host-key-file=/etc/pgbackrest/cert/client.key --repo1-host-type=tls --stanza=demo", + "P00 INFO: check command begin 2.38: --exec-id=5166-085cdcf5 --log-level-console=info --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --repo1-host=repository --repo1-host-ca-file=/etc/pgbackrest/cert/ca.crt --repo1-host-cert-file=/etc/pgbackrest/cert/client.crt --repo1-host-key-file=/etc/pgbackrest/cert/client.key --repo1-host-type=tls --stanza=demo", "P00 INFO: check repo1 configuration (primary)", "P00 INFO: check repo1 archive for WAL (primary)", - "P00 INFO: WAL segment 00000008000000000000002A successfully archived to '/var/lib/pgbackrest/archive/demo/10-1/0000000800000000/00000008000000000000002A-91572e10bbcc68d082fb476a0b8492bb395f500f.gz' on repo1", + "P00 INFO: WAL segment 000000080000000000000029 successfully archived to '/var/lib/pgbackrest/archive/demo/10-1/0000000800000000/000000080000000000000029-6e44e8cd8a0e548e812774cf44623d1c519167c1.gz' on repo1", "P00 INFO: check command end: completed successfully" ] } @@ -11160,26 +11126,26 @@ "value" : { "output" : [ "-------------------PROCESS START-------------------", - "P00 INFO: archive-push:async command begin 2.37: [/var/lib/pgsql/10/data/pg_wal] --archive-async --exec-id=4638-a7372d44 --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --process-max=2 --repo1-host=repository --repo1-host-ca-file=/etc/pgbackrest/cert/ca.crt --repo1-host-cert-file=/etc/pgbackrest/cert/client.crt --repo1-host-key-file=/etc/pgbackrest/cert/client.key --repo1-host-type=tls --spool-path=/var/spool/pgbackrest --stanza=demo", - "P00 INFO: push 1 WAL file(s) to archive: 000000080000000000000025", + "P00 INFO: archive-push:async command begin 2.38: [/var/lib/pgsql/10/data/pg_wal] --archive-async --exec-id=5130-03c34363 --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --process-max=2 --repo1-host=repository --repo1-host-ca-file=/etc/pgbackrest/cert/ca.crt --repo1-host-cert-file=/etc/pgbackrest/cert/client.crt --repo1-host-key-file=/etc/pgbackrest/cert/client.key --repo1-host-type=tls --spool-path=/var/spool/pgbackrest --stanza=demo", + "P00 INFO: push 1 WAL file(s) to archive: 000000080000000000000024", + "P01 DETAIL: pushed WAL file '000000080000000000000024' to the archive", + "P00 DETAIL: statistics: {\"socket.client\":{\"total\":1},\"socket.session\":{\"total\":1},\"tls.client\":{\"total\":1},\"tls.session\":{\"total\":1}}", + "P00 INFO: archive-push:async command end: completed successfully", + "", + "-------------------PROCESS START-------------------", + "P00 INFO: archive-push:async command begin 2.38: [/var/lib/pgsql/10/data/pg_wal] --archive-async --exec-id=5137-c77bf390 --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --process-max=2 --repo1-host=repository --repo1-host-ca-file=/etc/pgbackrest/cert/ca.crt --repo1-host-cert-file=/etc/pgbackrest/cert/client.crt --repo1-host-key-file=/etc/pgbackrest/cert/client.key --repo1-host-type=tls --spool-path=/var/spool/pgbackrest --stanza=demo", + "P00 INFO: push 4 WAL file(s) to archive: 000000080000000000000025...000000080000000000000028", + "P02 DETAIL: pushed WAL file '000000080000000000000026' to the archive", "P01 DETAIL: pushed WAL file '000000080000000000000025' to the archive", - "P00 DETAIL: statistics: {\"socket.client\":{\"total\":1},\"socket.session\":{\"total\":1},\"tls.client\":{\"total\":1},\"tls.session\":{\"total\":1}}", - "P00 INFO: archive-push:async command end: completed successfully", - "", - "-------------------PROCESS START-------------------", - "P00 INFO: archive-push:async command begin 2.37: [/var/lib/pgsql/10/data/pg_wal] --archive-async --exec-id=4668-f9468f12 --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --process-max=2 --repo1-host=repository --repo1-host-ca-file=/etc/pgbackrest/cert/ca.crt --repo1-host-cert-file=/etc/pgbackrest/cert/client.crt --repo1-host-key-file=/etc/pgbackrest/cert/client.key --repo1-host-type=tls --spool-path=/var/spool/pgbackrest --stanza=demo", - "P00 INFO: push 4 WAL file(s) to archive: 000000080000000000000026...000000080000000000000029", - "P01 DETAIL: pushed WAL file '000000080000000000000026' to the archive", - "P02 DETAIL: pushed WAL file '000000080000000000000027' to the archive", "P01 DETAIL: pushed WAL file '000000080000000000000028' to the archive", - "P02 DETAIL: pushed WAL file '000000080000000000000029' to the archive", + "P02 DETAIL: pushed WAL file '000000080000000000000027' to the archive", "P00 DETAIL: statistics: {\"socket.client\":{\"total\":1},\"socket.session\":{\"total\":1},\"tls.client\":{\"total\":1},\"tls.session\":{\"total\":1}}", "P00 INFO: archive-push:async command end: completed successfully", "", "-------------------PROCESS START-------------------", - "P00 INFO: archive-push:async command begin 2.37: [/var/lib/pgsql/10/data/pg_wal] --archive-async --exec-id=4676-d80866d0 --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --process-max=2 --repo1-host=repository --repo1-host-ca-file=/etc/pgbackrest/cert/ca.crt --repo1-host-cert-file=/etc/pgbackrest/cert/client.crt --repo1-host-key-file=/etc/pgbackrest/cert/client.key --repo1-host-type=tls --spool-path=/var/spool/pgbackrest --stanza=demo", - "P00 INFO: push 1 WAL file(s) to archive: 00000008000000000000002A", - "P01 DETAIL: pushed WAL file '00000008000000000000002A' to the archive", + "P00 INFO: archive-push:async command begin 2.38: [/var/lib/pgsql/10/data/pg_wal] --archive-async --exec-id=5171-6e9f52cd --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --process-max=2 --repo1-host=repository --repo1-host-ca-file=/etc/pgbackrest/cert/ca.crt --repo1-host-cert-file=/etc/pgbackrest/cert/client.crt --repo1-host-key-file=/etc/pgbackrest/cert/client.key --repo1-host-type=tls --spool-path=/var/spool/pgbackrest --stanza=demo", + "P00 INFO: push 1 WAL file(s) to archive: 000000080000000000000029", + "P01 DETAIL: pushed WAL file '000000080000000000000029' to the archive", "P00 DETAIL: statistics: {\"socket.client\":{\"total\":1},\"socket.session\":{\"total\":1},\"tls.client\":{\"total\":1},\"tls.session\":{\"total\":1}}", "P00 INFO: archive-push:async command end: completed successfully" ] @@ -11220,23 +11186,23 @@ "value" : { "output" : [ "-------------------PROCESS START-------------------", - "P00 INFO: archive-get:async command begin 2.37: [000000080000000000000022, 000000080000000000000023, 000000080000000000000024, 000000080000000000000025, 000000080000000000000026, 000000080000000000000027, 000000080000000000000028, 000000080000000000000029] --archive-async --exec-id=1485-81fe8c6f --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --process-max=2 --repo1-host=repository --repo1-host-ca-file=/etc/pgbackrest/cert/ca.crt --repo1-host-cert-file=/etc/pgbackrest/cert/client.crt --repo1-host-key-file=/etc/pgbackrest/cert/client.key --repo1-host-type=tls --spool-path=/var/spool/pgbackrest --stanza=demo", - "P00 INFO: get 8 WAL file(s) from archive: 000000080000000000000022...000000080000000000000029", - "P01 DETAIL: found 000000080000000000000022 in the repo1: 10-1 archive", - "P02 DETAIL: found 000000080000000000000023 in the repo1: 10-1 archive", - "P01 DETAIL: found 000000080000000000000024 in the repo1: 10-1 archive", - "P00 DETAIL: unable to find 000000080000000000000025 in the archive", + "P00 INFO: archive-get:async command begin 2.38: [000000080000000000000021, 000000080000000000000022, 000000080000000000000023, 000000080000000000000024, 000000080000000000000025, 000000080000000000000026, 000000080000000000000027, 000000080000000000000028] --archive-async --exec-id=1768-d6c0dd76 --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --process-max=2 --repo1-host=repository --repo1-host-ca-file=/etc/pgbackrest/cert/ca.crt --repo1-host-cert-file=/etc/pgbackrest/cert/client.crt --repo1-host-key-file=/etc/pgbackrest/cert/client.key --repo1-host-type=tls --spool-path=/var/spool/pgbackrest --stanza=demo", + "P00 INFO: get 8 WAL file(s) from archive: 000000080000000000000021...000000080000000000000028", + "P01 DETAIL: found 000000080000000000000021 in the repo1: 10-1 archive", + "P02 DETAIL: found 000000080000000000000022 in the repo1: 10-1 archive", + "P01 DETAIL: found 000000080000000000000023 in the repo1: 10-1 archive", + "P00 DETAIL: unable to find 000000080000000000000024 in the archive", "P00 DETAIL: statistics: {\"socket.client\":{\"total\":1},\"socket.session\":{\"total\":1},\"tls.client\":{\"total\":1},\"tls.session\":{\"total\":1}}", " [filtered 24 lines of output]", - "P00 INFO: archive-get:async command begin 2.37: [000000080000000000000025, 000000080000000000000026, 000000080000000000000027, 000000080000000000000028, 000000080000000000000029, 00000008000000000000002A, 00000008000000000000002B, 00000008000000000000002C] --archive-async --exec-id=1505-c945be79 --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --process-max=2 --repo1-host=repository --repo1-host-ca-file=/etc/pgbackrest/cert/ca.crt --repo1-host-cert-file=/etc/pgbackrest/cert/client.crt --repo1-host-key-file=/etc/pgbackrest/cert/client.key --repo1-host-type=tls --spool-path=/var/spool/pgbackrest --stanza=demo", - "P00 INFO: get 8 WAL file(s) from archive: 000000080000000000000025...00000008000000000000002C", - "P01 DETAIL: found 000000080000000000000025 in the repo1: 10-1 archive", - "P02 DETAIL: found 000000080000000000000026 in the repo1: 10-1 archive", - "P01 DETAIL: found 000000080000000000000027 in the repo1: 10-1 archive", - "P02 DETAIL: found 000000080000000000000028 in the repo1: 10-1 archive", - "P01 DETAIL: found 000000080000000000000029 in the repo1: 10-1 archive", - "P02 DETAIL: found 00000008000000000000002A in the repo1: 10-1 archive", - "P00 DETAIL: unable to find 00000008000000000000002B in the archive", + "P00 INFO: archive-get:async command begin 2.38: [000000080000000000000024, 000000080000000000000025, 000000080000000000000026, 000000080000000000000027, 000000080000000000000028, 000000080000000000000029, 00000008000000000000002A, 00000008000000000000002B] --archive-async --exec-id=1814-5445fd95 --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/10/data --process-max=2 --repo1-host=repository --repo1-host-ca-file=/etc/pgbackrest/cert/ca.crt --repo1-host-cert-file=/etc/pgbackrest/cert/client.crt --repo1-host-key-file=/etc/pgbackrest/cert/client.key --repo1-host-type=tls --spool-path=/var/spool/pgbackrest --stanza=demo", + "P00 INFO: get 8 WAL file(s) from archive: 000000080000000000000024...00000008000000000000002B", + "P01 DETAIL: found 000000080000000000000024 in the repo1: 10-1 archive", + "P02 DETAIL: found 000000080000000000000025 in the repo1: 10-1 archive", + "P01 DETAIL: found 000000080000000000000026 in the repo1: 10-1 archive", + "P02 DETAIL: found 000000080000000000000027 in the repo1: 10-1 archive", + "P01 DETAIL: found 000000080000000000000028 in the repo1: 10-1 archive", + "P02 DETAIL: found 000000080000000000000029 in the repo1: 10-1 archive", + "P00 DETAIL: unable to find 00000008000000000000002A in the archive", "P00 DETAIL: statistics: {\"socket.client\":{\"total\":1},\"socket.session\":{\"total\":1},\"tls.client\":{\"total\":1},\"tls.session\":{\"total\":1}}", " [filtered 14 lines of output]" ] @@ -11346,21 +11312,22 @@ "output" : [ " [filtered 2 lines of output]", "P00 INFO: execute non-exclusive pg_start_backup(): backup begins after the requested immediate checkpoint completes", - "P00 INFO: backup start archive = 00000008000000000000002C, lsn = 0/2C000028", - "P00 INFO: wait for replay on the standby to reach 0/2C000028", - "P00 INFO: replay on the standby reached 0/2C000028", - "P00 INFO: check archive for prior segment 00000008000000000000002B", - "P01 DETAIL: backup file pg-primary:/var/lib/pgsql/10/data/global/pg_control (8KB, 0%) checksum e796914fe27be239cc661ddb5b86a893ffcd1473", - "P02 DETAIL: backup file pg-standby:/var/lib/pgsql/10/data/base/13017/2608 (440KB, 19%) checksum e717affd3b3f4a27eaf400f668c98108998f5a0f", - "P03 DETAIL: backup file pg-standby:/var/lib/pgsql/10/data/base/13017/1249 (392KB, 36%) checksum 42cb2ebdf4a3d5bb7a20ef360a2ce7ed9f96068c", - "P04 DETAIL: backup file pg-standby:/var/lib/pgsql/10/data/base/13017/2674 (368KB, 52%) checksum 43f17b5d5a0f8fad15d1acf09b0df35cb269cd9f", - "P01 DETAIL: backup file pg-primary:/var/lib/pgsql/10/data/log/postgresql.log (6KB, 52%) checksum daedeede97741d6a3011aaadca7f0f8db81f0d15", - "P01 DETAIL: backup file pg-primary:/var/lib/pgsql/10/data/pg_hba.conf (4.2KB, 52%) checksum 12abee43e7eabfb3ff6239f3fc9bc3598293557d", - "P01 DETAIL: backup file pg-primary:/var/lib/pgsql/10/data/current_logfiles (26B, 52%) checksum 78a9f5c10960f0d91fcd313937469824861795a2", - "P01 DETAIL: backup file pg-primary:/var/lib/pgsql/10/data/pg_logical/replorigin_checkpoint (8B, 52%) checksum 347fc8f2df71bd4436e38bd1516ccd7ea0d46532", - "P02 DETAIL: backup file pg-standby:/var/lib/pgsql/10/data/base/13017/2673 (328KB, 66%) checksum 0835d0b60054ed006e0d61f016d235f60a8a695f", - "P03 DETAIL: backup file pg-standby:/var/lib/pgsql/10/data/base/13017/2658 (112KB, 71%) checksum d56cd71531fe675d759c3d6ad4a6b3ab20c5bc87", - " [filtered 1253 lines of output]" + "P00 INFO: backup start archive = 00000008000000000000002B, lsn = 0/2B000028", + "P00 INFO: wait for replay on the standby to reach 0/2B000028", + "P00 INFO: replay on the standby reached 0/2B000028", + "P00 INFO: check archive for prior segment 00000008000000000000002A", + "P01 DETAIL: backup file pg-primary:/var/lib/pgsql/10/data/global/pg_control (8KB, 0%) checksum 9793727878cb0c433513c518639aeca0976b0c40", + "P02 DETAIL: backup file pg-standby:/var/lib/pgsql/10/data/base/13017/2608 (440KB, 19%) checksum 639d26af55ab065b62807a9b335717590ef042a6", + "P03 DETAIL: backup file pg-standby:/var/lib/pgsql/10/data/base/13017/1249 (392KB, 36%) checksum 4fabe6d362ad39cae875205efc2869d9e2336074", + "P04 DETAIL: backup file pg-standby:/var/lib/pgsql/10/data/base/13017/2674 (376KB, 52%) checksum 46241fd9e3dfa65b61fc776c1f93be310c4be741", + "P01 DETAIL: backup file pg-primary:/var/lib/pgsql/10/data/log/postgresql.log (5.6KB, 52%) checksum 5994cab7c43790f977957aeee2524099724e8176", + "P01 DETAIL: backup file pg-primary:/var/lib/pgsql/10/data/pg_hba.conf (4.2KB, 53%) checksum 12abee43e7eabfb3ff6239f3fc9bc3598293557d", + "P02 DETAIL: backup file pg-standby:/var/lib/pgsql/10/data/base/13017/2673 (312KB, 66%) checksum 1ccf3cbf84ad99b9ac0fdade3cc577b43de34bc9", + "P01 DETAIL: backup file pg-primary:/var/lib/pgsql/10/data/current_logfiles (26B, 66%) checksum 78a9f5c10960f0d91fcd313937469824861795a2", + "P01 DETAIL: backup file pg-primary:/var/lib/pgsql/10/data/pg_logical/replorigin_checkpoint (8B, 66%) checksum 347fc8f2df71bd4436e38bd1516ccd7ea0d46532", + "P03 DETAIL: backup file pg-standby:/var/lib/pgsql/10/data/base/13017/2658 (112KB, 71%) checksum 5bccf9bafd1279ed457dc47f1bdf8264f1ea8cfc", + "P04 DETAIL: backup file pg-standby:/var/lib/pgsql/10/data/base/13017/1259 (88KB, 75%) checksum a53f44b610eece971e2fb39ca2058f1ad4f73964", + " [filtered 1252 lines of output]" ] } }, @@ -11442,6 +11409,19 @@ ] } }, + { + "key" : { + "bash-wrap" : true, + "cmd" : [ + "cat /root/postgresql.common.conf >> /var/lib/pgsql/11/data/postgresql.conf" + ], + "host" : "pg-primary", + "load-env" : true, + "output" : false, + "run-as-user" : "root" + }, + "type" : "exe" + }, { "key" : { "file" : "/var/lib/pgsql/11/data/postgresql.conf", @@ -11453,18 +11433,12 @@ "archive_mode" : { "value" : "on" }, - "listen_addresses" : { - "value" : "'*'" - }, - "log_line_prefix" : { - "value" : "''" + "log_filename" : { + "value" : "'postgresql.log'" }, "max_wal_senders" : { "value" : "3" }, - "port" : { - "value" : "5432" - }, "wal_level" : { "value" : "replica" } @@ -11475,10 +11449,8 @@ "config" : [ "archive_command = 'pgbackrest --stanza=demo archive-push %p'", "archive_mode = on", - "listen_addresses = '*'", - "log_line_prefix = ''", + "log_filename = 'postgresql.log'", "max_wal_senders = 3", - "port = 5432", "wal_level = replica" ] } @@ -11500,15 +11472,15 @@ "config" : [ "[demo]", "pg1-path=/var/lib/pgsql/11/data", - "repo1-host-ca-file=/etc/pgbackrest/cert/ca.crt", - "repo1-host-cert-file=/etc/pgbackrest/cert/client.crt", - "repo1-host-key-file=/etc/pgbackrest/cert/client.key", - "repo1-host-type=tls", "", "[global]", "archive-async=y", "log-level-file=detail", "repo1-host=repository", + "repo1-host-ca-file=/etc/pgbackrest/cert/ca.crt", + "repo1-host-cert-file=/etc/pgbackrest/cert/client.crt", + "repo1-host-key-file=/etc/pgbackrest/cert/client.key", + "repo1-host-type=tls", "spool-path=/var/spool/pgbackrest", "tls-server-address=*", "tls-server-auth=pgbackrest-client=demo", @@ -11542,15 +11514,15 @@ "[demo]", "pg1-path=/var/lib/pgsql/11/data", "recovery-option=primary_conninfo=host=172.17.0.5 port=5432 user=replicator", - "repo1-host-ca-file=/etc/pgbackrest/cert/ca.crt", - "repo1-host-cert-file=/etc/pgbackrest/cert/client.crt", - "repo1-host-key-file=/etc/pgbackrest/cert/client.key", - "repo1-host-type=tls", "", "[global]", "archive-async=y", "log-level-file=detail", "repo1-host=repository", + "repo1-host-ca-file=/etc/pgbackrest/cert/ca.crt", + "repo1-host-cert-file=/etc/pgbackrest/cert/client.crt", + "repo1-host-key-file=/etc/pgbackrest/cert/client.key", + "repo1-host-type=tls", "spool-path=/var/spool/pgbackrest", "tls-server-address=*", "tls-server-auth=pgbackrest-client=demo", @@ -11653,7 +11625,7 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: stanza-upgrade command begin 2.37: --exec-id=5116-27923273 --log-level-console=info --log-level-file=detail --log-level-stderr=off --no-log-timestamp --no-online --pg1-path=/var/lib/pgsql/11/data --repo1-host=repository --repo1-host-ca-file=/etc/pgbackrest/cert/ca.crt --repo1-host-cert-file=/etc/pgbackrest/cert/client.crt --repo1-host-key-file=/etc/pgbackrest/cert/client.key --repo1-host-type=tls --stanza=demo", + "P00 INFO: stanza-upgrade command begin 2.38: --exec-id=5667-4dda77c0 --log-level-console=info --log-level-file=detail --log-level-stderr=off --no-log-timestamp --no-online --pg1-path=/var/lib/pgsql/11/data --repo1-host=repository --repo1-host-ca-file=/etc/pgbackrest/cert/ca.crt --repo1-host-cert-file=/etc/pgbackrest/cert/client.crt --repo1-host-key-file=/etc/pgbackrest/cert/client.key --repo1-host-type=tls --stanza=demo", "P00 INFO: stanza-upgrade for stanza 'demo' on repo1", "P00 INFO: stanza-upgrade command end: completed successfully" ] @@ -11751,7 +11723,7 @@ "type" : "exe", "value" : { "output" : [ - "P00 WARN: unable to check pg-2: [DbConnectError] raised from remote-0 tls protocol on 'pg-standby': unable to connect to 'dbname='postgres' port=5432': could not connect to server: No such file or directory", + "P00 WARN: unable to check pg2: [DbConnectError] raised from remote-0 tls protocol on 'pg-standby': unable to connect to 'dbname='postgres' port=5432': could not connect to server: No such file or directory", " \tIs the server running locally and accepting", " \tconnections on Unix domain socket \"/var/run/postgresql/.s.PGSQL.5432\"?" ] diff --git a/doc/resource/git-history.cache b/doc/resource/git-history.cache index 9506f8558..eff5b88f7 100644 --- a/doc/resource/git-history.cache +++ b/doc/resource/git-history.cache @@ -1,4 +1,417 @@ [ + { + "commit": "59a5373cf85e4ad0057b592bfe855495384dfcbd", + "date": "2022-03-02 11:38:52 -0600", + "subject": "Handle TLS servers that do not close connections gracefully.", + "body": "Some TLS server implementations will simply close the socket rather than correctly closing the TLS connection. This causes problems when connection: close is specified with no content-length or chunked encoding and we are forced to read to EOF. It is hard to know if this is a real EOF or a network error.\r\n\r\nIn cases where we can parse the content and (hopefully) ensure it is correct, allow the closed socket to serve as EOF. This is not ideal, but the change in 8e1807c means that currently working servers with this issue will stop working after 2.35 is installed, which seems too risky." + }, + { + "commit": "f1bdf3e04b07dc9a2eaa1fdbe5278cc18371e868", + "date": "2022-03-02 10:59:06 -0600", + "subject": "Add aliveness check to systemd service configuration.", + "body": "If the pgbackrest service service fails to start then the user will get an error. However, retries will continue in the background." + }, + { + "commit": "a66ec8d549b8f1f7b38682ad90281f1fcbb2748a", + "date": "2022-03-02 10:22:15 -0600", + "subject": "Revert PGDG yum repo workaround for aarch64.", + "body": "da0f3a855 used a workaround to get the documentation building on aarch64 but recent changes to the PGDG yum repo have broken this workaround. Installing the regular way still doesn't work, either.\n\nReverting for now to get the CI pipeline working again." + }, + { + "commit": "fb5051fde74bcfde85fa3b9a452a1df693e79db9", + "date": "2022-02-26 13:50:30 -0600", + "subject": "Use vagrant user in the Docker container.", + "body": "This is a bit of legacy from the current Vagrant environment used to do the release, but since it is not as easy to change the user in Vagrant, just make the Docker environment conform.\n\nThis allows documentation to be built in a Vagrant environment (or any environment with the same user name) and to be deployed in a Docker environment." + }, + { + "commit": "f716e98ad0e9eda94da973211e5f54e88c2c1aed", + "date": "2022-02-26 11:31:52 -0600", + "subject": "Suppress errors when there is stderr output for Docker builds.", + "body": "Docker outputs build info to stderr even when the build is successful. This seems to be especially true on Mac M1.\n\nContainerTest.pm already does this suppression so add it the other places where containers are built." + }, + { + "commit": "53de3e3aeb71f8209f56167941df35bbfcb7cdc9", + "date": "2022-02-26 11:17:05 -0600", + "subject": "Move repo options in TLS documentation to the global section.", + "body": "These options were mistakenly added to the stanza section, which works in certain cases, but is not best practice." + }, + { + "commit": "98d525dba43ba259ff7989746b8e5be3382c189d", + "date": "2022-02-25 14:03:09 -0600", + "subject": "Add FAQ explaining WAL archive suffix." + }, + { + "commit": "b33cabe08c33e29eb8aef65dd46b2c1f3cf2d186", + "date": "2022-02-25 10:51:40 -0600", + "subject": "Allow case-insensitive matching of HTTP connection header values.", + "body": "The specification allows values for the connection header to be case-insensitive. See https://www.rfc-editor.org/rfc/rfc7230#section-6.1." + }, + { + "commit": "632071232344a1160ef932d6e0d65eb3149ed226", + "date": "2022-02-23 13:53:02 -0600", + "subject": "Automatically strip trailing slashes for repo-ls paths.", + "body": "Trailing slashes in at least some of the repository storage types were preventing repo-ls from displaying any content (presumably due to storage-specific behavior).\r\n\r\nSince the path with the slash should be equivalent to the path without the slash, just remove it if provided by the user." + }, + { + "commit": "53f1b2520434221c01caf92e052403a28c455c1b", + "date": "2022-02-23 13:17:14 -0600", + "subject": "Improve validation of zero pages.", + "body": "Checking that pd_upper == 0 is not enough since this field may be corrupted. Still use pd_upper as a quick check, but when it is zero proceed to check the rest of the page to ensure it is also all zeroes." + }, + { + "commit": "9eec98c61302121134d2067326dbd2cd0f2f0b9c", + "date": "2022-02-23 12:05:53 -0600", + "subject": "Retry on page checksum validation failure during backup.", + "body": "Rather than attempting to filter page checksum failures by LSN, just retry when there is a page checksum failure. If the page has not changed since the last read report it as an error. If the page has changed, then PostgreSQL must be modifying the page so we can ignore the error because a full page write (and possibly updates) will be in the WAL.\r\n\r\nAlso remove tests made redundant by the test merge in b4897077." + }, + { + "commit": "5c332a0b100d5a5180b3d95bd90d4d7b521b42db", + "date": "2022-02-23 11:23:32 -0600", + "subject": "Fix release note attribution in cacfdd94 and f798458e." + }, + { + "commit": "f798458e1d18fc8a866b49a4cfa0cb73536cbd41", + "date": "2022-02-23 10:29:17 -0600", + "subject": "Disconnect help.auto.c from build-help in Makefile.", + "body": "When there was an issue with the system library path during building, the build-help rule would fail during executing ./build-help with the effect that main.c wouldn't build.\r\n\r\nBreak out help.auto.c generation from the build-help stage to allow it to be re-executed when the library path has been corrected." + }, + { + "commit": "67bdf07e6969f8160347e895454bf729c9165884", + "date": "2022-02-23 10:26:39 -0600", + "subject": "Add XML to invalid XML error message.", + "body": "There have been cases where pgBackRest has failed on invalid XML but it is not possible to determine what was wrong with the XML.\n\nThis will only work for XML up to about 8KiB (which is the error message limit) but it should work in most cases." + }, + { + "commit": "10038db9c9f2b4753c3821e0b246fa8626527184", + "date": "2022-02-23 09:14:27 -0600", + "subject": "Add archive-missing-retry option.", + "body": "Retry a WAL segment that was previously reported as missing by the archive-get command. This prevents notifications in the spool path from a prior restore from being used and possibly causing a recovery failure if consistency has not been reached.\r\n\r\nDisabling this option allows PostgreSQL to more reliably recognize when the end of the WAL in the archive has been reached, which permits it to switch over to streaming from the primary. With retries enabled, a steady stream of WAL being archived will cause PostgreSQL to continue getting WAL from the archive rather than switch to streaming.\r\n\r\nWhen disabling this option it is important to ensure that the spool path for the stanza is empty. The restore command does this automatically if the spool path is configured at restore time. Otherwise, it is up to the user to ensure the spool path is empty." + }, + { + "commit": "cacfdd94d74307285b1b590ec0977d7db3142d0d", + "date": "2022-02-23 08:01:38 -0600", + "subject": "Fix typos in help and release notes." + }, + { + "commit": "e2eb3ebacce18e9c0c2f74457a646142a0eace3d", + "date": "2022-02-20 17:45:41 -0600", + "subject": "Most recent news for postgresql.org." + }, + { + "commit": "e6e1122dbcf5e667d683295f7e7e45de4bbf56bd", + "date": "2022-02-20 16:45:07 -0600", + "subject": "Pass file by reference in manifestFileAdd().", + "body": "Coverity complained that this pass by value was inefficient:\n\nCID 376402: Performance inefficiencies (PASS_BY_VALUE)\nPassing parameter file of type \"ManifestFile\" (size 136 bytes) by value.\n\nThis was completely intentional since it gives us a copy of the struct that we can change without bothering the caller. However, updating fields is fine and may benefit the caller at some future data, and in any case does no harm now.\n\nAnd as usual it is easier not to fight with Coverity." + }, + { + "commit": "b4897077937ee4571ba719276a44d5db0a75510e", + "date": "2022-02-18 17:50:05 -0600", + "subject": "Move command/backup-common tests in the command/backup module.", + "body": "As much as possible it is better to get coverage with more realistic tests. Merging these modules will allow the page checksum code to be covered with real backups." + }, + { + "commit": "efc09db7b9ece6e7b7f92538d56d6ab7b9798f8f", + "date": "2022-02-17 07:25:12 -0600", + "subject": "Limit files that can be bundled.", + "body": "Limit which files can be added to bundles, which allows resume to work reasonably well. On resume, the bundles are removed and any remaining file is eligible to be to be resumed.\r\n\r\nAlso reduce the bundle-size default to 20MiB. This is pretty arbitrary, but a smaller default seems better." + }, + { + "commit": "34d649579eb3bd1530aa99f0ed1879e7d3125424", + "date": "2022-02-14 13:24:14 -0600", + "subject": "Bundle files in the repository during backup.", + "body": "Bundle (combine) smaller files during backup to reduce the number of files written to the repository (enable with --bundle). Reducing the number of files is a benefit on all file systems, but especially so on object stores such as S3 that have a high file creation cost. Another benefit is that zero-length files are only stored as metadata in the manifest.\r\n\r\nFiles are batched up to bundle-size and then compressed/encrypted individually and stored sequentially in the bundle. The bundle id and offset of each file is stored in the manifest so files can be retrieved randomly without needing to read the entire bundle. Files are ordered by timestamp descending when being assigned to bundles to reduce the amount of random access that needs to be done. The idea is that bundles with older files can be read in their entirety on restore and only bundles with newer files will get fragmented.\r\n\r\nBundles are a custom format with metadata stored in the manifest. Tar was considered but it is too limited a format, the major issue being that the size of the file must be known in advance and that is very contrary to how pgBackRest works, especially once we introduce page-level incremental backups.\r\n\r\nBundles are stored numbered in the bundle directory. Some files may still end up in pg_data if they are added after the backup is complete. backup_label is an example.\r\n\r\nCurrently, only the backup command works in batches. The restore and verify commands use the offsets to pull individual files out of the bundle. It seems better to finalize how this is going to work before optimizing the other commands. Even as is, this is a major step forward, and all commands function with bundling.\r\n\r\nOne caveat: resume is currently not supported when bundle is enabled." + }, + { + "commit": "8046f0630715015d5adcced570c54e9a183c0e73", + "date": "2022-02-14 11:07:02 -0600", + "subject": "Do not retry fatal errors.", + "body": "There is some evidence that retrying fatal errors, especially out of memory errors, may cause lockups. It makes sense to report fatal errors as quickly as possible and bypass retries. This may or not fix the lockup issue but it is worth doing either way.\r\n\r\nFor now, the only fatal errors will be AssertError and MemoryError." + }, + { + "commit": "8d0cce66f83abc1ff02a985ec3f0d7e285c09d72", + "date": "2022-02-13 15:19:31 -0600", + "subject": "Use normal error for protocol module error retry test.", + "body": "Asserts will not be retried in a future commit, so adjust this test now to use non-assert errors." + }, + { + "commit": "8573a2df14d0bfd5578333b68147cc12c93c6f96", + "date": "2022-02-13 15:11:59 -0600", + "subject": "Improve protocol module error test for protocolClientFree().", + "body": "Using an assert here was never ideal and won't work once we start handling fatal errors differently." + }, + { + "commit": "551e5bc6f67c91cf1e11da0cefe24f9650353adc", + "date": "2022-02-11 08:11:39 -0600", + "subject": "Retry errors in S3 batch file delete.", + "body": "If the entire batch failed it would be retried, but individual file errors were not retried. This could cause pgBackRest to terminate during expiration or when removing an unresumable backup.\r\n\r\nRather than retry the entire batch, delete the errored files individually to take advantage of the HTTP retry rather than adding a new retry loop. These errors seem rare enough that it should not be a performance issue." + }, + { + "commit": "b26097f8d8a7e2af6e9a21576994cbb47110c6f4", + "date": "2022-02-09 10:18:39 -0600", + "subject": "Add backup type filter to info command.", + "body": "Support --type option in the info command to display only a specific backup type." + }, + { + "commit": "cb630ffe3b5c819b5e97ac11d5974000bd44d632", + "date": "2022-02-09 09:32:23 -0600", + "subject": "Remove logic that tried to determine additional file system compression.", + "body": "In theory, the additional stat() call after a file has been copied to the repo can determine if additional compression has been applied by the file system. However, it has been a very long time since we tested this in practice. There are currently no unit tests that accurately test this feature since it requires a compressed file system like ZFS to work, which never seemed worth the extra cost.\r\n\r\nIt can also add a lot of time to backups if there are a large quantity of small files.\r\n\r\nIn addition, it stands as a blocker for combining files for small file support since it is no longer possible to get per-file sizes from the viewpoint of the file system. There are several ways this could be reworked but none of them are easy while at the same time maintaining current info functionality.\r\n\r\nIt doesn't seem worth keeping an untested feature that will only work in some special cases (if it still works) when it is blocking development." + }, + { + "commit": "755bfc4d4015a68fa06890d1d62515b8bbbc3a64", + "date": "2022-02-07 08:14:28 -0600", + "subject": "Fix invalid file descriptor being passed to close().", + "body": "Coverity pointed out that a negative number could be passed to close(), which means the lock file would not get closed until the process ended. Proper execution does not require the file to be closed, but it is better to correctly free resources that are no longer needed." + }, + { + "commit": "5cbb4a3e6b13598b90cae46fad28c31604f9f094", + "date": "2022-02-04 15:55:24 -0600", + "subject": "Remove unused backup-standby option from stanza commands." + }, + { + "commit": "7dd657b7dd163ded9fbf7caef37eea7e08bc5a37", + "date": "2022-02-04 12:48:50 -0600", + "subject": "Simplify filename construction in command/verify module.", + "body": "Remove some duplicated code by tracking the backup label and constructing the filename only when needed." + }, + { + "commit": "b1da4e84e8b1fda0299931dbcb9b057ce0d3ce64", + "date": "2022-02-02 14:39:39 -0600", + "subject": "Revert Minio to prior release.", + "body": "The most recent release of Minio has broken CI builds but there is no logging to indicate what is wrong.\n\nFor now, just use the prior release to get CI builds working again. This kind if breakage is not uncommon for Minio but they usually resolve it in the next release." + }, + { + "commit": "9b2f10dbb49a8b869cef2c419d9957ed4c550016", + "date": "2022-01-31 16:48:28 -0600", + "subject": "Refactor lock code.", + "body": "Update lock code to use standard common/io functions and module patterns. This module was developed before the common/io module existed and our patterns had stabilized." + }, + { + "commit": "22734eb376b3183924cb7794f9111c1eeb5d92d6", + "date": "2022-01-31 10:03:56 -0600", + "subject": "Add ioBufferReadNewOpen() and ioBufferWriteNewOpen().", + "body": "These are convenience functions to make the code a bit more compact where possible." + }, + { + "commit": "e62e6664d3654dd63ae2eda64f981a6936b822d3", + "date": "2022-01-26 13:26:22 -0600", + "subject": "Remove release note about the default port being provisional.", + "body": "The default port has now been approved by IANA." + }, + { + "commit": "cf5b3a302f0835be993a7f795038d4d676cd6f01", + "date": "2022-01-26 13:22:31 -0600", + "subject": "Fix language in rh7 test container for aarch64.", + "body": "The /etc/profile.d/lang.sh script was causing issues but it does not exist on amd64, so it seems the easiest thing was to remove it.\n\nFix how 32-bit VMs are determined now that another 64-bit architecture has been added.\n\nAnd remove some obsolete VM hashes." + }, + { + "commit": "da0f3a85535df3389c5023afc637124acc6405d3", + "date": "2022-01-26 10:15:14 -0600", + "subject": "Download correct key on aarch64 in the user guide.", + "body": "The default key that gets installed is for amd64. This is only required for RHEL8 it seems, so something is definitely amiss." + }, + { + "commit": "e4df5b7d3846134832b9315e22786f679d63a46b", + "date": "2022-01-24 15:21:07 -0600", + "subject": "Simplify manifest file defaults.", + "body": "Previously manifest load required two passes through the file list, one to load the data and one to set the defaults. This required each file to be packed twice.\r\n\r\nInstead simply note that the file value is default and then set the file defaults when they are loaded from the manifest. This is made possible by the different internal/external representations for files so the same method cannot be applied to paths and links.\r\n\r\nThis change seems to resolve the performance issues noted in 61ce586 but there is no obvious reason why." + }, + { + "commit": "044138fbb19f02ec433e52c42684b1ecc616c624", + "date": "2022-01-23 15:07:13 -0500", + "subject": "Centralize common PostgreSQL options in the user guide.", + "body": "Centralize these options so they are consistent across clusters.\n\nAlso, there were some options that the user doesn't really need to see, .e.g. log_line_prefix. These can be set in advance so they don't need to be part of the documentation." + }, + { + "commit": "13623d6ee50794e87ceac37c61e72ba3a92ad8b6", + "date": "2022-01-23 13:53:52 -0500", + "subject": "Create create_test_table() function earlier in user guide.", + "body": "This function (which creates lots of tables) is generally useful for testing (not just stress testing) so create it as soon as the cluster is created.\n\nAlso add the data parameter which will insert a single row into the table so the file on disk is not zero bytes." + }, + { + "commit": "ca13f11b4a3858587c7055b0b2b4a8b396dd8451", + "date": "2022-01-22 17:20:25 -0500", + "subject": "Optimization for jsonFromStrInternal().", + "body": "This is an extremely hot code path when saving the manifest so every little bit helps." + }, + { + "commit": "61ce58692f3092b72833b6e9ee87037f45b3b702", + "date": "2022-01-21 17:05:07 -0500", + "subject": "Pack manifest file structs to save memory.", + "body": "Manifests with a very large number of files can use a considerable amount of memory. There are a lot of zeroes in the data so it can be stored more efficiently by using base-128 varint encoding for the integers and storing the strings in the same allocation.\r\n\r\nThe downside is that the data needs to be unpacked in order to be used, but in most cases this seems fast enough (about 10% slower than before) except for saving the manifest, which is 10% slower up to 10 million files and then gets about 5x slower by 100 million (two minutes on my M1 Mac). Profiling does not show this slowdown so I wonder if this is related to the change in memory layout. Curiously, the function that increased most was jsonFromStrInternal(), which was not modified. That gives more weight to the idea that there is some kind of memory issue going on here and one hopes that servers would be less affected. Either way, they largest use cases we have seen are for about 6 million files so if we can improve that case I believe we will be better off.\r\n\r\nFurther analysis showed that most of the time was taken up writing the size and timestamp fields, which makes almost no sense. The same amount of time was used if they were hard-coded to 0, which points to some odd memory issue on the M1 architecture.\r\n\r\nThis change has been planned for a while, but the particular impetus at this time is that small file support requires additional fields that would increase manifest memory usage by about 20%, even if the feature is not used.\r\n\r\nNote that the Pack code has been updated to use the new varint encoder, but the decoder remains separate because it needs to fetch one byte at a time." + }, + { + "commit": "575ae77c0dee12b932469d479b2e45dbaf389737", + "date": "2022-01-21 15:57:22 -0500", + "subject": "Convert varNewUInt64() to VARUINT64() where possible in manifest.", + "body": "VARUINT64() does not require memory to be allocated from the mem context so should be used when possible." + }, + { + "commit": "4a73a0286387f3f2185f3f193f9c20ed0d7d926d", + "date": "2022-01-21 15:22:48 -0500", + "subject": "Simplify manifest defaults.", + "body": "Manifest defaults for user, group, and mode were previously generated by scanning the data to find the most common values. This was very accurate but slow and complicated. It could also lead to surprising changes in the manifest when a default value suddenly changed.\r\n\r\nInstead, use the $PGDATA path to generate defaults. In the vast majority of cases the same user/group should own all the path/files and the default file mode is easily derived from the path mode. There may be some edge cases where this generates larger manifests, but in general it reduces time and complexity when saving the manifest.\r\n\r\nRemove the MCV code since it is longer longer used." + }, + { + "commit": "b0db4b8ff00db913cb69308017a56155d6070830", + "date": "2022-01-21 08:52:51 -0500", + "subject": "Simplify base path mode in mock/all integration tests.", + "body": "Change the mode back to 0700 earlier to reduce churn in the expect logs.\n\nThis will be especially important in a future commit that gets the defaults exclusively from the base path." + }, + { + "commit": "8c062e1af824c3dc80ff94b3df8d433f95e88d0f", + "date": "2022-01-20 14:01:10 -0500", + "subject": "Remove primary flag from manifest.", + "body": "This flag was only being used by the backup command after manifestNewBuild() and had no other uses. There was a time when it was important for integration testing but the unit tests now fulfill this role.\r\n\r\nSince backup is the only code concerned with the primary flag, move the code into the backup module.\r\n\r\nWe don't have any cross-version testing but this change was tested manually with the most recent version of pgBackRest to make sure it was tolerant of the missing primary info. When an older version of pgBackRest loads a newer manifest the primary flag will always be set to false, which is fine since it is not used." + }, + { + "commit": "16559d9e421c66596d21b047c8afe1b2c96ccd82", + "date": "2022-01-20 08:41:05 -0500", + "subject": "Use the PG_FILE_POSTMTRPID constant where appropriate.", + "body": "Do the same in Perl with the MANIFEST_FILE_POSTMTRPID constant." + }, + { + "commit": "4ca0590a51a665535fbba903b8f55e10557b606a", + "date": "2022-01-20 08:06:42 -0500", + "subject": "Refactor backupProcessQueue() to use BackupJobData struct.", + "body": "BackupJobData has several members that backupProcessQueue() needs so it is more efficient to use them rather than passing them separately or getting them from the configuration." + }, + { + "commit": "e21ba7c92bc15e9314eefa80cef8f17cf2f0e224", + "date": "2022-01-18 17:40:53 -0500", + "subject": "Remove extra spaces." + }, + { + "commit": "f84909f85f7dfb202ac812c67665cc590a5acad4", + "date": "2022-01-18 17:26:30 -0500", + "subject": "Fix issue with Posix read offset handling after an error.", + "body": "Coverity pointed out that -1 could be passed to lseek() (added in a79034ae) after a file failed to open because it is missing. Overall it seems simpler to enclose the success code in an else block to prevent any repeats of this mistake in the future.\n\nThis was not an active bug because there are currently no cases where we do read offsets in a file that is allowed to be missing.\n\nAlso remove the result flag since it is easier to just check that the file descriptor is valid." + }, + { + "commit": "91721e391a4d83a405a0d1be31b854312f9f157d", + "date": "2022-01-17 15:39:31 -0500", + "subject": "Fix typo." + }, + { + "commit": "b791f1c82f53fa16866837d4544b58243c682f7f", + "date": "2022-01-15 14:33:38 -0500", + "subject": "Implement restore ownership without updating manifest internals.", + "body": "Updating the manifest this way was not a great idea because it broke abstraction for the object. This meant certain changes to the interface and internals were not possible because the code was modifying internal manifest data.\n\nInstead track the user replacements entirely in the restore module.\n\nThis also has the benefit of eliminating a pass over the manifest path/file/link lists." + }, + { + "commit": "3097acd73a21b630aa5352be57a82b031930f96b", + "date": "2022-01-13 08:46:14 -0500", + "subject": "Add support for AWS S3 server-side encryption using KMS.", + "body": "AWS S3 integrates with AWS Key Management Service (AWS KMS) to provide server side encryption of S3 objects. This integration protects objects under encryption keys that never leave AWS KMS unencrypted." + }, + { + "commit": "92ea3e05fb43e5272a19fb1e3208412b75008c24", + "date": "2022-01-11 19:15:09 -0500", + "subject": "cfgOptionGroupName() replacement missed in aced5d47." + }, + { + "commit": "a79034ae2f6a8ec66b84c62ab6cd4042d2c1a249", + "date": "2022-01-11 14:42:53 -0500", + "subject": "Add read range to all storage drivers.", + "body": "The range feature allows reading out an arbitrary chunk of a file and will be important for efficient small file support.\r\n\r\nNow that all drivers are required to support ranges remove the storageFeatureLimitRead feature flag that was implemented only by the Posix driver." + }, + { + "commit": "2fd100bf12760a4bb1996fb464ae54b5c379988e", + "date": "2022-01-10 17:40:18 -0500", + "subject": "Rename ConfigOptionGroupData.indexDisplay to indexName.", + "body": "This is more consistent with the function name and purpose." + }, + { + "commit": "2cddbbdee01391ef0885f9262f3acc488382eee2", + "date": "2022-01-10 17:20:48 -0500", + "subject": "Remove obsolete cfgOptionHostPort()/cfgOptionIdxHostPort().", + "body": "These functions were made obsolete by the refactor in 6a124584." + }, + { + "commit": "7c627c12b735345cc3d733ae66a52b1fe0030e47", + "date": "2022-01-10 17:00:58 -0500", + "subject": "Refactor option and option group config structs.", + "body": "This allows individual structs to be assigned to variables to make the code easier to read and perhaps a bit more efficient." + }, + { + "commit": "aeecb500f54561f7d52fa1b637f7f6e1f7a668de", + "date": "2022-01-10 14:47:29 -0500", + "subject": "Improve implementation of cfgOptionIdxName().", + "body": "Cache option names after they are generated rather than regenerating them each time." + }, + { + "commit": "aced5d47ed8e57ca7f36f92fe068f80b66f81649", + "date": "2022-01-10 09:10:06 -0500", + "subject": "Replace cfgOptionGroupIdxToKey() with cfgOptionGroupName().", + "body": "Do the replacement anywhere cfgOptionGroupIdxToKey() is being used to construct a group name in a message. cfgOptionGroupName() is better for this case since it also includes the name of the group so that it does not need to be repeated in each message." + }, + { + "commit": "9657f1b32519272edaaefd379355137afd554e82", + "date": "2022-01-09 19:53:05 -0500", + "subject": "Dynamically allocate index to key index map.", + "body": "Now the config/config module has no notion of max option indexes. The config/parse still needs the max but this will be removed at a later date." + }, + { + "commit": "e4b48eb430a564184ab739908df55813dd970aa4", + "date": "2022-01-09 19:43:44 -0500", + "subject": "Fix inconsistent group display names in messages.", + "body": "In other instances there are no dashes, e.g. repo1 or pg1. Make these messages match." + }, + { + "commit": "5f78a5fc18120c67cb8a68f83a4fb9bcf96982e2", + "date": "2022-01-09 13:19:43 -0500", + "subject": "Add ioCopy().", + "body": "Functionality to copy from IoRead to IoWrite is frequently used so centralize it. This also simplifies coverage testing in places where a loop was required before." + }, + { + "commit": "47954774c6cc70a6fc9a6c8836d82a87e341ea11", + "date": "2022-01-09 10:11:00 -0500", + "subject": "Combine encrypted backupFile() tests with unencrypted tests.", + "body": "This makes it easier to comment out all the tests while developing without getting unused variable errors." + }, + { + "commit": "d866dd5c297dc046581134a108032cf9694cae0e", + "date": "2022-01-07 14:09:58 -0500", + "subject": "Add backup LSNs to info command output.", + "body": "The backup LSNs are useful for performing LSN-based PITR. LSNs will not be displayed in the general text output (without --set) because they are probably not useful enough to deserve their own line." + }, + { + "commit": "bb4b30ddd3f80c246c565eb4769efc82b9509648", + "date": "2022-01-06 15:34:04 -0500", + "subject": "Remove support for PostgreSQL 8.3/8.4.", + "body": "There is no evidence that users need 8.3/8.4 anymore but it does cost us in terms of development and testing, especially now that we have a number of new backup/restore features planned.\r\n\r\nIt seems to make sense to remove this support now. If there are users who need to use/migrate from these versions they can use an older version of pgBackRest." + }, + { + "commit": "ef62ef23799f081582295f1f3e8a92691b628f53", + "date": "2022-01-06 14:24:32 -0500", + "subject": "Fix comment missed in 6bd280f7." + }, + { + "commit": "fdbeb8e7d64754d35dd30e4f871834756c5d77ca", + "date": "2022-01-06 14:22:56 -0500", + "subject": "Fix typo in error message." + }, + { + "commit": "a82f0179cdd5742e5c5b1e0bdfd23166753fdb38", + "date": "2022-01-04 16:11:27 -0500", + "subject": "Note that replications slots are not restored.", + "body": "Update documentation and help to note that replication slots are not restored and reference the PostgreSQL documentation to explain why." + }, + { + "commit": "226cfbdcde55ca384e74d7d1348c447eecd079fa", + "date": "2022-01-04 15:48:00 -0500", + "subject": "Fix typo." + }, + { + "commit": "591a72c59ec403341d29eaafe3030f4651732192", + "date": "2022-01-03 08:57:05 -0500", + "subject": "Update config.guess and config.sub to latest versions." + }, + { + "commit": "75e4580919ed139f00db7c4c3141dbefc3da131b", + "date": "2022-01-03 08:52:25 -0500", + "subject": "Begin v2.38 development." + }, { "commit": "f18f2d9991da29533ad8e9859074c4f39185420f", "date": "2022-01-03 08:43:55 -0500", diff --git a/doc/xml/auto/metric-coverage-report.auto.xml b/doc/xml/auto/metric-coverage-report.auto.xml index ec51d2d70..505104585 100644 --- a/doc/xml/auto/metric-coverage-report.auto.xml +++ b/doc/xml/auto/metric-coverage-report.auto.xml @@ -15,15 +15,15 @@ build/error 6/6 (100.0%) - 18/18 (100.0%) - 64/64 (100.0%) + 26/26 (100.0%) + 77/77 (100.0%) build/help 12/12 (100.0%) 126/126 (100.0%) - 232/232 (100.0%) + 231/231 (100.0%) @@ -43,22 +43,22 @@ command/archive/get 9/9 (100.0%) - 192/192 (100.0%) - 468/468 (100.0%) + 196/196 (100.0%) + 469/469 (100.0%) command/archive/push 12/12 (100.0%) 130/130 (100.0%) - 407/407 (100.0%) + 406/406 (100.0%) command/backup - 35/35 (100.0%) - 484/484 (100.0%) - 1172/1172 (100.0%) + 36/36 (100.0%) + 544/544 (100.0%) + 1244/1244 (100.0%) @@ -71,8 +71,8 @@ command/control 4/4 (100.0%) - 34/34 (100.0%) - 64/64 (100.0%) + 30/30 (100.0%) + 62/62 (100.0%) @@ -92,8 +92,8 @@ command/info 12/12 (100.0%) - 304/304 (100.0%) - 654/654 (100.0%) + 320/320 (100.0%) + 664/664 (100.0%) @@ -114,21 +114,21 @@ command/repo 8/8 (100.0%) 108/108 (100.0%) - 213/213 (100.0%) + 207/207 (100.0%) command/restore - 27/27 (100.0%) - 506/506 (100.0%) - 1034/1034 (100.0%) + 28/28 (100.0%) + 504/504 (100.0%) + 1059/1059 (100.0%) command/server 6/6 (100.0%) 24/24 (100.0%) - 87/87 (100.0%) + 88/88 (100.0%) @@ -141,15 +141,15 @@ command/verify 20/20 (100.0%) - 268/268 (100.0%) - 702/702 (100.0%) + 276/276 (100.0%) + 723/723 (100.0%) common - 169/169 (100.0%) - 548/548 (100.0%) - 1866/1866 (100.0%) + 173/173 (100.0%) + 554/554 (100.0%) + 1907/1907 (100.0%) @@ -163,56 +163,56 @@ common/compress/bz2 13/13 (100.0%) 20/20 (100.0%) - 176/176 (100.0%) + 173/173 (100.0%) common/compress/gz 13/13 (100.0%) 22/22 (100.0%) - 168/168 (100.0%) + 165/165 (100.0%) common/compress/lz4 15/15 (100.0%) 24/24 (100.0%) - 180/180 (100.0%) + 177/177 (100.0%) common/compress/zst 13/13 (100.0%) 12/12 (100.0%) - 150/150 (100.0%) + 146/146 (100.0%) common/crypto 28/28 (100.0%) 80/80 (100.0%) - 486/486 (100.0%) + 485/485 (100.0%) common/io - 52/52 (100.0%) - 152/152 (100.0%) - 640/640 (100.0%) + 53/53 (100.0%) + 154/154 (100.0%) + 654/654 (100.0%) common/io/filter 31/31 (100.0%) 92/92 (100.0%) - 390/390 (100.0%) + 388/388 (100.0%) common/io/http - 45/45 (100.0%) - 240/240 (100.0%) - 695/695 (100.0%) + 47/47 (100.0%) + 250/250 (100.0%) + 717/717 (100.0%) @@ -225,43 +225,43 @@ common/io/tls 34/34 (100.0%) - 98/98 (100.0%) + 102/102 (100.0%) 514/514 (100.0%) common/type - 282/282 (100.0%) - 802/802 (100.0%) - 3640/3640 (100.0%) + 281/281 (100.0%) + 794/794 (100.0%) + 3631/3631 (100.0%) config - 88/88 (100.0%) - 874/874 (100.0%) - 1716/1716 (100.0%) + 87/87 (100.0%) + 878/878 (100.0%) + 1715/1715 (100.0%) db 24/24 (100.0%) - 128/128 (100.0%) - 429/429 (100.0%) + 122/122 (100.0%) + 425/425 (100.0%) info - 88/88 (100.0%) - 770/770 (100.0%) - 2249/2249 (100.0%) + 92/92 (100.0%) + 790/790 (100.0%) + 2316/2316 (100.0%) postgres 30/30 (100.0%) - 96/96 (100.0%) - 367/367 (100.0%) + 94/94 (100.0%) + 365/365 (100.0%) @@ -275,21 +275,21 @@ protocol 55/55 (100.0%) 232/232 (100.0%) - 938/938 (100.0%) + 939/939 (100.0%) storage 48/48 (100.0%) - 224/224 (100.0%) - 705/705 (100.0%) + 222/222 (100.0%) + 697/697 (100.0%) storage/azure 24/24 (100.0%) - 106/106 (100.0%) - 505/505 (100.0%) + 108/108 (100.0%) + 511/511 (100.0%) @@ -303,33 +303,33 @@ storage/gcs 31/31 (100.0%) 116/116 (100.0%) - 634/634 (100.0%) + 638/638 (100.0%) storage/posix 26/26 (100.0%) 153/154 (99.35%) - 473/473 (100.0%) + 474/474 (100.0%) storage/remote 31/31 (100.0%) 96/96 (100.0%) - 737/737 (100.0%) + 741/741 (100.0%) storage/s3 29/29 (100.0%) - 134/134 (100.0%) - 677/677 (100.0%) + 140/140 (100.0%) + 691/691 (100.0%) TOTAL - 1442/1442 (100.0%) - 8385/8386 (99.99%) - 26113/26113 (100.0%) + 1453/1453 (100.0%) + 8511/8512 (99.99%) + 26380/26380 (100.0%) \ No newline at end of file diff --git a/doc/xml/release.xml b/doc/xml/release.xml index f2a390e29..ce1f7ff17 100644 --- a/doc/xml/release.xml +++ b/doc/xml/release.xml @@ -14,7 +14,7 @@ - +

IMPORTANT NOTE: Repository size reported by the info command is now entirely based on what has written to storage. Previously, in certain cases, could detect if additional compression was being applied by the storage but this is no longer supported.

diff --git a/src/build/configure.ac b/src/build/configure.ac index 2ffc70119..cdecc0ed3 100644 --- a/src/build/configure.ac +++ b/src/build/configure.ac @@ -1,7 +1,7 @@ # Initialize configuration # ---------------------------------------------------------------------------------------------------------------------------------- AC_PREREQ([2.69]) -AC_INIT([pgBackRest], [2.38dev]) +AC_INIT([pgBackRest], [2.38]) AC_CONFIG_SRCDIR([version.h]) AC_CONFIG_AUX_DIR(build) diff --git a/src/configure b/src/configure index 033b58c52..d636db1df 100755 --- a/src/configure +++ b/src/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for pgBackRest 2.38dev. +# Generated by GNU Autoconf 2.69 for pgBackRest 2.38. # # # Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc. @@ -577,8 +577,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='pgBackRest' PACKAGE_TARNAME='pgbackrest' -PACKAGE_VERSION='2.38dev' -PACKAGE_STRING='pgBackRest 2.38dev' +PACKAGE_VERSION='2.38' +PACKAGE_STRING='pgBackRest 2.38' PACKAGE_BUGREPORT='' PACKAGE_URL='' @@ -1252,7 +1252,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures pgBackRest 2.38dev to adapt to many kinds of systems. +\`configure' configures pgBackRest 2.38 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1299,7 +1299,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of pgBackRest 2.38dev:";; + short | recursive ) echo "Configuration of pgBackRest 2.38:";; esac cat <<\_ACEOF @@ -1394,7 +1394,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -pgBackRest configure 2.38dev +pgBackRest configure 2.38 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -1692,7 +1692,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by pgBackRest $as_me 2.38dev, which was +It was created by pgBackRest $as_me 2.38, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -4906,7 +4906,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by pgBackRest $as_me 2.38dev, which was +This file was extended by pgBackRest $as_me 2.38, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -4968,7 +4968,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -pgBackRest config.status 2.38dev +pgBackRest config.status 2.38 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" @@ -5672,4 +5672,4 @@ if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} fi -# Generated from src/build/configure.ac sha1 ca60b6d3c93762f506d3f8eab2730186e1e9be3f +# Generated from src/build/configure.ac sha1 4732fecc4f531bd4e14cf99d185d32c8cd344142 diff --git a/src/version.h b/src/version.h index 5f182ecab..2a78f1c7b 100644 --- a/src/version.h +++ b/src/version.h @@ -33,6 +33,6 @@ repository will be invalid unless migration functions are written. /*********************************************************************************************************************************** Software version ***********************************************************************************************************************************/ -#define PROJECT_VERSION "2.38dev" +#define PROJECT_VERSION "2.38" #endif diff --git a/test/code-count/file-type.yaml b/test/code-count/file-type.yaml index b1950db95..5a46fa6f5 100644 --- a/test/code-count/file-type.yaml +++ b/test/code-count/file-type.yaml @@ -2155,10 +2155,6 @@ test/src/module/command/archivePushTest.c: class: test/module type: c -test/src/module/command/backupCommonTest.c: - class: test/module - type: c - test/src/module/command/backupTest.c: class: test/module type: c @@ -2323,10 +2319,6 @@ test/src/module/common/typeListTest.c: class: test/module type: c -test/src/module/common/typeMcvTest.c: - class: test/module - type: c - test/src/module/common/typeObjectTest.c: class: test/module type: c