diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 576e04b4f..e07fdefdc 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -238,12 +238,12 @@ pgbackrest/test/test.pl --vm=none --dry-run P00 INFO: test begin on x86_64 - log level info P00 INFO: clean autogenerate code P00 INFO: builds required: bin ---> P00 INFO: 77 tests selected +--> P00 INFO: 79 tests selected - P00 INFO: P1-T01/77 - vm=none, module=common, test=error - [filtered 74 lines of output] - P00 INFO: P1-T76/77 - vm=none, module=performance, test=type - P00 INFO: P1-T77/77 - vm=none, module=performance, test=storage + P00 INFO: P1-T01/79 - vm=none, module=common, test=error + [filtered 76 lines of output] + P00 INFO: P1-T78/79 - vm=none, module=performance, test=type + P00 INFO: P1-T79/79 - vm=none, module=performance, test=storage --> P00 INFO: DRY RUN COMPLETED SUCCESSFULLY ``` @@ -264,35 +264,35 @@ pgbackrest/test/test.pl --vm=none --vm-out --module=common --test=wait P00 INFO: P1-T1/1 - vm=none, module=common, test=wait - 2023-03-20 00:52:17.889 P00 INFO: test command begin 2.45: [common/wait] --log-level=info --repo-path=/home/vagrant/test/repo --test-path=/home/vagrant/test --vm=none --vm-id=0 - 2023-03-20 00:52:20.376 P00 INFO: test command end: completed successfully (2487ms) + 2023-05-22 07:25:58.199 P00 INFO: test command begin 2.46: [common/wait] --log-level=info --repo-path=/home/vagrant/test/repo --test-path=/home/vagrant/test --vm=none --vm-id=0 + 2023-05-22 07:26:00.824 P00 INFO: test command end: completed successfully (2625ms) run 1 - waitNew(), waitMore, and waitFree() 000.009s L0018 expect AssertError: assertion 'waitTime <= 999999000' failed run 1/1 ------------- L0021 0ms wait - 001.775s 001.766s L0025 new wait - 001.785s 000.010s L0026 check remaining time - 001.786s 000.001s L0027 check wait time - 001.787s 000.001s L0028 check sleep time - 001.788s 000.001s L0029 check sleep prev time - 001.789s 000.001s L0030 no wait more - 001.794s 000.005s L0033 new wait = 0.2 sec - 001.795s 000.001s L0034 check remaining time - 001.796s 000.001s L0035 check wait time - 001.797s 000.001s L0036 check sleep time - 001.798s 000.001s L0037 check sleep prev time - 001.798s 000.000s L0038 check begin time - 001.997s 000.199s L0044 lower range check - 001.998s 000.001s L0045 upper range check - 001.999s 000.001s L0047 free wait - 002.000s 000.001s L0052 new wait = 1.1 sec - 002.002s 000.002s L0053 check wait time - 002.002s 000.000s L0054 check sleep time - 002.003s 000.001s L0055 check sleep prev time - 002.004s 000.001s L0056 check begin time - 003.102s 001.098s L0062 lower range check - 003.103s 000.001s L0063 upper range check - 003.103s 000.000s L0065 free wait + 001.799s 001.790s L0025 new wait + 001.810s 000.011s L0026 check remaining time + 001.811s 000.001s L0027 check wait time + 001.812s 000.001s L0028 check sleep time + 001.813s 000.001s L0029 check sleep prev time + 001.814s 000.001s L0030 no wait more + 001.820s 000.006s L0033 new wait = 0.2 sec + 001.822s 000.002s L0034 check remaining time + 001.823s 000.001s L0035 check wait time + 001.824s 000.001s L0036 check sleep time + 001.824s 000.000s L0037 check sleep prev time + 001.825s 000.001s L0038 check begin time + 002.022s 000.197s L0044 lower range check + 002.023s 000.001s L0045 upper range check + 002.024s 000.001s L0047 free wait + 002.026s 000.002s L0052 new wait = 1.1 sec + 002.027s 000.001s L0053 check wait time + 002.028s 000.001s L0054 check sleep time + 002.029s 000.001s L0055 check sleep prev time + 002.030s 000.001s L0056 check begin time + 003.128s 001.098s L0062 lower range check + 003.129s 000.001s L0063 upper range check + 003.130s 000.001s L0065 free wait TESTS COMPLETED SUCCESSFULLY @@ -337,7 +337,7 @@ pgbackrest/test/test.pl --vm-build --vm=u20 --- output --- P00 INFO: test begin on x86_64 - log level info - P00 INFO: Using cached pgbackrest/test:u20-base-20221220A image (2db467d873c0aff06335592c8a22b8441b5c6440) ... + P00 INFO: Building pgbackrest/test:u20-base image (31c2124ab0db03d97eb6324e12e22eb64eb4a3b8) ... P00 INFO: Building pgbackrest/test:u20-test image ... P00 INFO: Build Complete ``` diff --git a/README.md b/README.md index 7670af409..acb337b4f 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.45](https://github.com/pgbackrest/pgbackrest/releases/tag/release/2.45) is the current stable release. Release notes are on the [Releases](http://www.pgbackrest.org/release.html) page. +pgBackRest [v2.46](https://github.com/pgbackrest/pgbackrest/releases/tag/release/2.46) 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 888073bb1..38dc847f0 100644 --- a/doc/resource/exe.cache +++ b/doc/resource/exe.cache @@ -13,7 +13,7 @@ }, "type" : "host", "value" : { - "ip" : "172.17.0.8" + "ip" : "172.17.0.9" } }, { @@ -124,12 +124,12 @@ "P00 INFO: test begin on x86_64 - log level info", "P00 INFO: clean autogenerate code", "P00 INFO: builds required: bin", - "P00 INFO: 77 tests selected", + "P00 INFO: 79 tests selected", " ", - "P00 INFO: P1-T01/77 - vm=none, module=common, test=error", - " [filtered 74 lines of output]", - "P00 INFO: P1-T76/77 - vm=none, module=performance, test=type", - "P00 INFO: P1-T77/77 - vm=none, module=performance, test=storage", + "P00 INFO: P1-T01/79 - vm=none, module=common, test=error", + " [filtered 76 lines of output]", + "P00 INFO: P1-T78/79 - vm=none, module=performance, test=type", + "P00 INFO: P1-T79/79 - vm=none, module=performance, test=storage", "P00 INFO: DRY RUN COMPLETED SUCCESSFULLY" ] } @@ -160,35 +160,35 @@ " ", "P00 INFO: P1-T1/1 - vm=none, module=common, test=wait", " ", - " 2023-03-20 00:52:17.889 P00 INFO: test command begin 2.45: [common/wait] --log-level=info --repo-path=/home/vagrant/test/repo --test-path=/home/vagrant/test --vm=none --vm-id=0", - " 2023-03-20 00:52:20.376 P00 INFO: test command end: completed successfully (2487ms)", + " 2023-05-22 07:25:58.199 P00 INFO: test command begin 2.46: [common/wait] --log-level=info --repo-path=/home/vagrant/test/repo --test-path=/home/vagrant/test --vm=none --vm-id=0", + " 2023-05-22 07:26:00.824 P00 INFO: test command end: completed successfully (2625ms)", " run 1 - waitNew(), waitMore, and waitFree()", " 000.009s L0018 expect AssertError: assertion 'waitTime <= 999999000' failed", " ", " run 1/1 ------------- L0021 0ms wait", - " 001.775s 001.766s L0025 new wait", - " 001.785s 000.010s L0026 check remaining time", - " 001.786s 000.001s L0027 check wait time", - " 001.787s 000.001s L0028 check sleep time", - " 001.788s 000.001s L0029 check sleep prev time", - " 001.789s 000.001s L0030 no wait more", - " 001.794s 000.005s L0033 new wait = 0.2 sec", - " 001.795s 000.001s L0034 check remaining time", - " 001.796s 000.001s L0035 check wait time", - " 001.797s 000.001s L0036 check sleep time", - " 001.798s 000.001s L0037 check sleep prev time", - " 001.798s 000.000s L0038 check begin time", - " 001.997s 000.199s L0044 lower range check", - " 001.998s 000.001s L0045 upper range check", - " 001.999s 000.001s L0047 free wait", - " 002.000s 000.001s L0052 new wait = 1.1 sec", - " 002.002s 000.002s L0053 check wait time", - " 002.002s 000.000s L0054 check sleep time", - " 002.003s 000.001s L0055 check sleep prev time", - " 002.004s 000.001s L0056 check begin time", - " 003.102s 001.098s L0062 lower range check", - " 003.103s 000.001s L0063 upper range check", - " 003.103s 000.000s L0065 free wait", + " 001.799s 001.790s L0025 new wait", + " 001.810s 000.011s L0026 check remaining time", + " 001.811s 000.001s L0027 check wait time", + " 001.812s 000.001s L0028 check sleep time", + " 001.813s 000.001s L0029 check sleep prev time", + " 001.814s 000.001s L0030 no wait more", + " 001.820s 000.006s L0033 new wait = 0.2 sec", + " 001.822s 000.002s L0034 check remaining time", + " 001.823s 000.001s L0035 check wait time", + " 001.824s 000.001s L0036 check sleep time", + " 001.824s 000.000s L0037 check sleep prev time", + " 001.825s 000.001s L0038 check begin time", + " 002.022s 000.197s L0044 lower range check", + " 002.023s 000.001s L0045 upper range check", + " 002.024s 000.001s L0047 free wait", + " 002.026s 000.002s L0052 new wait = 1.1 sec", + " 002.027s 000.001s L0053 check wait time", + " 002.028s 000.001s L0054 check sleep time", + " 002.029s 000.001s L0055 check sleep prev time", + " 002.030s 000.001s L0056 check begin time", + " 003.128s 001.098s L0062 lower range check", + " 003.129s 000.001s L0063 upper range check", + " 003.130s 000.001s L0065 free wait", " ", " TESTS COMPLETED SUCCESSFULLY", "", @@ -247,7 +247,7 @@ "value" : { "output" : [ "P00 INFO: test begin on x86_64 - log level info", - "P00 INFO: Using cached pgbackrest/test:u20-base-20221220A image (2db467d873c0aff06335592c8a22b8441b5c6440) ...", + "P00 INFO: Building pgbackrest/test:u20-base image (31c2124ab0db03d97eb6324e12e22eb64eb4a3b8) ...", "P00 INFO: Building pgbackrest/test:u20-test image ...", "P00 INFO: Build Complete" ] @@ -320,10 +320,10 @@ }, { "key" : { - "id" : "build", + "id" : "sftp", "image" : "pgbackrest/doc:debian", - "name" : "build", - "option" : "-v /sys/fs/cgroup:/sys/fs/cgroup:rw -v /tmp/$(mktemp -d):/run", + "name" : "sftp-server", + "option" : "-m 512m -v /sys/fs/cgroup:/sys/fs/cgroup:rw -v /tmp/$(mktemp -d):/run", "os" : "debian", "update-hosts" : true }, @@ -332,11 +332,25 @@ "ip" : "172.17.0.4" } }, + { + "key" : { + "id" : "build", + "image" : "pgbackrest/doc:debian", + "name" : "build", + "option" : "-v /sys/fs/cgroup:/sys/fs/cgroup:rw -v /tmp/$(mktemp -d):/run", + "os" : "debian", + "update-hosts" : true + }, + "type" : "host", + "value" : { + "ip" : "172.17.0.5" + } + }, { "key" : { "bash-wrap" : true, "cmd" : [ - "sudo mkdir -p /build/pgbackrest-release-2.45" + "sudo mkdir -p /build/pgbackrest-release-2.46" ], "host" : "build", "load-env" : true, @@ -349,7 +363,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "sudo cp -r /pgbackrest/src /build/pgbackrest-release-2.45" + "sudo cp -r /pgbackrest/src /build/pgbackrest-release-2.46" ], "host" : "build", "load-env" : true, @@ -362,7 +376,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "sudo chown -R vagrant /build/pgbackrest-release-2.45" + "sudo chown -R vagrant /build/pgbackrest-release-2.46" ], "host" : "build", "load-env" : true, @@ -389,7 +403,7 @@ "bash-wrap" : true, "cmd" : [ "sudo apt-get install make gcc libpq-dev libssl-dev libxml2-dev pkg-config \\", - " liblz4-dev libzstd-dev libbz2-dev libz-dev libyaml-dev" + " liblz4-dev libzstd-dev libbz2-dev libz-dev libyaml-dev libssh2-1-dev" ], "cmd-extra" : "-y 2>&1", "host" : "build", @@ -403,7 +417,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "cd /build/pgbackrest-release-2.45/src && ./configure && make" + "cd /build/pgbackrest-release-2.46/src && ./configure && make" ], "cmd-extra" : "-j 4", "host" : "build", @@ -424,14 +438,14 @@ }, "type" : "host", "value" : { - "ip" : "172.17.0.5" + "ip" : "172.17.0.6" } }, { "key" : { "bash-wrap" : true, "cmd" : [ - "sudo apt-get install postgresql-client libxml2" + "sudo apt-get install postgresql-client libxml2 libssh2-1" ], "cmd-extra" : "-y 2>&1", "host" : "pg-primary", @@ -445,7 +459,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "sudo scp build:/build/pgbackrest-release-2.45/src/pgbackrest /usr/bin" + "sudo scp build:/build/pgbackrest-release-2.46/src/pgbackrest /usr/bin" ], "cmd-extra" : "2>&1", "host" : "pg-primary", @@ -573,7 +587,7 @@ "type" : "exe", "value" : { "output" : [ - "pgBackRest 2.45 - General help", + "pgBackRest 2.46 - General help", "", "Usage:", " pgbackrest [options] [command]", @@ -702,7 +716,7 @@ "type" : "exe", "value" : { "output" : [ - "pgBackRest 2.45 - 'backup' command - 'log-path' option help", + "pgBackRest 2.46 - 'backup' command - 'log-path' option help", "", "Path where log files are stored.", "", @@ -962,7 +976,7 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: stanza-create command begin 2.45: --exec-id=461-20763562 --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.46: --exec-id=1293-9c8dec9d --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" ] @@ -989,10 +1003,10 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: check command begin 2.45: --exec-id=470-f6bb199c --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.46: --exec-id=1303-2f6a9893 --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-3419e8be05f6bb0af685b36c577fea3da4ff3631.gz' on repo1", + "P00 INFO: WAL segment 000000010000000000000001 successfully archived to '/var/lib/pgbackrest/archive/demo/12-1/0000000100000000/000000010000000000000001-bb2c772aa709226fb6ba234631cab46147986aa7.gz' on repo1", "P00 INFO: check command end: completed successfully" ] } @@ -1049,16 +1063,16 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: backup command begin 2.45: --exec-id=501-a56c6229 --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.46: --exec-id=1332-41458450 --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 backup start: 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 = 20230320-004616F", - "P00 INFO: full backup size = 23.4MB, file total = 976", + "P00 INFO: new backup label = 20230522-071846F", + "P00 INFO: full backup size = 23.5MB, file total = 976", "P00 INFO: backup command end: completed successfully", - "P00 INFO: expire command begin 2.45: --exec-id=501-a56c6229 --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.46: --exec-id=1332-41458450 --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" ] } }, @@ -1076,7 +1090,7 @@ "type" : "exe", "value" : { "output" : [ - "20230320-004616F" + "20230522-071846F" ] } }, @@ -1104,10 +1118,10 @@ "output" : [ " [filtered 7 lines of output]", "P00 INFO: check archive for segment(s) 000000010000000000000004:000000010000000000000005", - "P00 INFO: new backup label = 20230320-004616F_20230320-004619D", + "P00 INFO: new backup label = 20230522-071846F_20230522-071851D", "P00 INFO: diff backup size = 8.3KB, file total = 976", "P00 INFO: backup command end: completed successfully", - "P00 INFO: expire command begin 2.45: --exec-id=530-b1b606e2 --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.46: --exec-id=1359-f7f6ae8d --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" ] } }, @@ -1139,18 +1153,18 @@ " db (current)", " wal archive min/max (12): 000000010000000000000001/000000010000000000000005", "", - " full backup: 20230320-004616F", - " timestamp start/stop: 2023-03-20 00:46:16 / 2023-03-20 00:46:18", + " full backup: 20230522-071846F", + " timestamp start/stop: 2023-05-22 07:18:46 / 2023-05-22 07:18:49", " wal start/stop: 000000010000000000000002 / 000000010000000000000003", - " database size: 23.4MB, database backup size: 23.4MB", + " database size: 23.5MB, database backup size: 23.5MB", " repo1: backup set size: 2.8MB, backup size: 2.8MB", "", - " diff backup: 20230320-004616F_20230320-004619D", - " timestamp start/stop: 2023-03-20 00:46:19 / 2023-03-20 00:46:21", + " diff backup: 20230522-071846F_20230522-071851D", + " timestamp start/stop: 2023-05-22 07:18:51 / 2023-05-22 07:18:52", " wal start/stop: 000000010000000000000004 / 000000010000000000000005", - " database size: 23.4MB, database backup size: 8.3KB", - " repo1: backup set size: 2.8MB, backup size: 480B", - " backup reference list: 20230320-004616F" + " database size: 23.5MB, database backup size: 8.3KB", + " repo1: backup set size: 2.8MB, backup size: 496B", + " backup reference list: 20230522-071846F" ] } }, @@ -1403,7 +1417,7 @@ "output" : [ " name | last_successful_backup | last_archived_wal ", "--------+------------------------+--------------------------", - " \"demo\" | 2023-03-20 00:46:21+00 | 000000010000000000000006", + " \"demo\" | 2023-05-22 07:18:52+00 | 000000010000000000000006", "(1 row)" ] } @@ -1437,7 +1451,7 @@ "type" : "exe", "value" : { "output" : [ - "1679273181" + "1684739932" ] } }, @@ -1528,9 +1542,6 @@ "host" : "pg-primary", "option" : { "global" : { - "beta" : { - "value" : "y" - }, "repo1-block" : { "value" : "y" } @@ -1544,7 +1555,6 @@ "pg1-path=/var/lib/postgresql/12/demo", "", "[global]", - "beta=y", "repo1-block=y", "repo1-bundle=y", "repo1-cipher-pass=zWaf6XtpjIVZC5444yXB+cgFDFl7MxGlgkZSaoPvTGirhPygu4jOKOXf9LO4vjfO", @@ -1586,7 +1596,7 @@ "type" : "exe", "value" : { "output" : [ - "20230320-004637F" + "20230522-071909F" ] } }, @@ -1594,7 +1604,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "sudo -u postgres pgbackrest --stanza=demo --set=20230320-004637F info" + "sudo -u postgres pgbackrest --stanza=demo --set=20230522-071909F info" ], "highlight" : { "filter" : false, @@ -1618,13 +1628,13 @@ " db (current)", " wal archive min/max (12): 000000020000000000000008/00000002000000000000000A", "", - " full backup: 20230320-004637F", - " timestamp start/stop: 2023-03-20 00:46:37 / 2023-03-20 00:46:40", + " full backup: 20230522-071909F", + " timestamp start/stop: 2023-05-22 07:19:09 / 2023-05-22 07:19:12", " wal start/stop: 000000020000000000000009 / 00000002000000000000000A", " lsn start/stop: 0/9000028 / 0/A000088", - " database size: 23.4MB, database backup size: 23.4MB", + " database size: 23.5MB, database backup size: 23.5MB", " repo1: backup size: 2.8MB", - " database list: postgres (13398)", + " database list: postgres (13427)", " annotation(s)", " key: value", " source: demo backup" @@ -1635,7 +1645,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "sudo -u postgres pgbackrest --stanza=demo --set=20230320-004637F \\", + "sudo -u postgres pgbackrest --stanza=demo --set=20230522-071909F \\", " --annotation=key= --annotation=new_key=new_value annotate" ], "host" : "pg-primary", @@ -1649,7 +1659,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "sudo -u postgres pgbackrest --stanza=demo --set=20230320-004637F info" + "sudo -u postgres pgbackrest --stanza=demo --set=20230522-071909F info" ], "highlight" : { "filter" : false, @@ -1673,13 +1683,13 @@ " db (current)", " wal archive min/max (12): 000000020000000000000008/00000002000000000000000A", "", - " full backup: 20230320-004637F", - " timestamp start/stop: 2023-03-20 00:46:37 / 2023-03-20 00:46:40", + " full backup: 20230522-071909F", + " timestamp start/stop: 2023-05-22 07:19:09 / 2023-05-22 07:19:12", " wal start/stop: 000000020000000000000009 / 00000002000000000000000A", " lsn start/stop: 0/9000028 / 0/A000088", - " database size: 23.4MB, database backup size: 23.4MB", + " database size: 23.5MB, database backup size: 23.5MB", " repo1: backup size: 2.8MB", - " database list: postgres (13398)", + " database list: postgres (13427)", " annotation(s)", " new_key: new_value", " source: demo backup" @@ -1705,7 +1715,6 @@ "pg1-path=/var/lib/postgresql/12/demo", "", "[global]", - "beta=y", "repo1-block=y", "repo1-bundle=y", "repo1-cipher-pass=zWaf6XtpjIVZC5444yXB+cgFDFl7MxGlgkZSaoPvTGirhPygu4jOKOXf9LO4vjfO", @@ -1730,7 +1739,7 @@ "filter" : true, "filter-context" : 2, "list" : [ - "archive retention on backup 20230320-004616F|remove archive" + "archive retention on backup 20230522-071846F|remove archive" ] }, "host" : "pg-primary", @@ -1742,8 +1751,8 @@ "value" : { "output" : [ " [filtered 988 lines of output]", - "P00 INFO: repo1: remove expired backup 20230320-004634F", - "P00 DETAIL: repo1: 12-1 archive retention on backup 20230320-004637F, start = 000000020000000000000009", + "P00 INFO: repo1: remove expired backup 20230522-071905F", + "P00 DETAIL: repo1: 12-1 archive retention on backup 20230522-071909F, start = 000000020000000000000009", "P00 INFO: repo1: 12-1 remove archive, start = 000000020000000000000008, stop = 000000020000000000000008", "P00 INFO: expire command end: completed successfully" ] @@ -1763,7 +1772,7 @@ "type" : "exe", "value" : { "output" : [ - "20230320-004642F" + "20230522-071914F" ] } }, @@ -1778,7 +1787,7 @@ "filter" : true, "filter-context" : 2, "list" : [ - "expire full backup set 20230320-004616F|archive retention on backup 20230320-004642F|remove archive" + "expire full backup set 20230522-071846F|archive retention on backup 20230522-071914F|remove archive" ] }, "host" : "pg-primary", @@ -1790,8 +1799,8 @@ "value" : { "output" : [ " [filtered 11 lines of output]", - "P00 INFO: repo1: expire full backup 20230320-004637F", - "P00 INFO: repo1: remove expired backup 20230320-004637F", + "P00 INFO: repo1: expire full backup 20230522-071909F", + "P00 INFO: repo1: remove expired backup 20230522-071909F", "P00 INFO: repo1: 12-1 remove archive, start = 000000020000000000000009, stop = 00000002000000000000000A", "P00 INFO: expire command end: completed successfully" ] @@ -1816,7 +1825,6 @@ "pg1-path=/var/lib/postgresql/12/demo", "", "[global]", - "beta=y", "repo1-block=y", "repo1-bundle=y", "repo1-cipher-pass=zWaf6XtpjIVZC5444yXB+cgFDFl7MxGlgkZSaoPvTGirhPygu4jOKOXf9LO4vjfO", @@ -1858,7 +1866,7 @@ "type" : "exe", "value" : { "output" : [ - "20230320-004646F_20230320-004650D" + "20230522-071918F_20230522-071922D" ] } }, @@ -1886,7 +1894,7 @@ "filter" : true, "filter-context" : 2, "list" : [ - "expire diff backup set 20230320-004646F_20230320-004650D" + "expire diff backup set 20230522-071918F_20230522-071922D" ] }, "host" : "pg-primary", @@ -1899,10 +1907,10 @@ "output" : [ " [filtered 10 lines of output]", "P00 INFO: backup command end: completed successfully", - "P00 INFO: expire command begin 2.45: --beta --exec-id=1064-390f525f --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 20230320-004646F_20230320-004650D, 20230320-004646F_20230320-004653I", - "P00 INFO: repo1: remove expired backup 20230320-004646F_20230320-004653I", - "P00 INFO: repo1: remove expired backup 20230320-004646F_20230320-004650D", + "P00 INFO: expire command begin 2.46: --exec-id=1852-47f02e0a --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 20230522-071918F_20230522-071922D, 20230522-071918F_20230522-071925I", + "P00 INFO: repo1: remove expired backup 20230522-071918F_20230522-071925I", + "P00 INFO: repo1: remove expired backup 20230522-071918F_20230522-071922D", "P00 INFO: expire command end: completed successfully" ] } @@ -1926,7 +1934,6 @@ "pg1-path=/var/lib/postgresql/12/demo", "", "[global]", - "beta=y", "repo1-block=y", "repo1-bundle=y", "repo1-cipher-pass=zWaf6XtpjIVZC5444yXB+cgFDFl7MxGlgkZSaoPvTGirhPygu4jOKOXf9LO4vjfO", @@ -1955,7 +1962,7 @@ "type" : "exe", "value" : { "output" : [ - "20230320-004646F_20230320-004655D" + "20230522-071918F_20230522-071928D" ] } }, @@ -1999,7 +2006,7 @@ " [filtered 6 lines of output]", "P00 INFO: backup stop archive = 000000020000000000000018, lsn = 0/18000050", "P00 INFO: check archive for segment(s) 000000020000000000000017:000000020000000000000018", - "P00 INFO: new backup label = 20230320-004646F_20230320-004658D", + "P00 INFO: new backup label = 20230522-071918F_20230522-071932D", "P00 INFO: diff backup size = 8.3KB, file total = 976", "P00 INFO: backup command end: completed successfully", " [filtered 2 lines of output]" @@ -2020,7 +2027,7 @@ "type" : "exe", "value" : { "output" : [ - "20230320-004646F_20230320-004658D" + "20230522-071918F_20230522-071932D" ] } }, @@ -2035,7 +2042,7 @@ "filter" : true, "filter-context" : 2, "list" : [ - "archive retention on backup 20230320-004646F_20230320-004655D|remove archive" + "archive retention on backup 20230522-071918F_20230522-071928D|remove archive" ] }, "host" : "pg-primary", @@ -2046,12 +2053,12 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: expire command begin 2.45: --beta --exec-id=1154-d420cced --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 20230320-004642F, start = 00000002000000000000000B, stop = 00000002000000000000000C", - "P00 DETAIL: repo1: 12-1 archive retention on backup 20230320-004646F, start = 00000002000000000000000D, stop = 00000002000000000000000E", - "P00 DETAIL: repo1: 12-1 archive retention on backup 20230320-004646F_20230320-004655D, start = 000000020000000000000014, stop = 000000020000000000000014", - "P00 DETAIL: repo1: 12-1 archive retention on backup 20230320-004646F_20230320-004658D, start = 000000020000000000000017", - "P00 INFO: repo1: 12-1 remove archive, start = 00000002000000000000000F, stop = 000000020000000000000013", + "P00 INFO: expire command begin 2.46: --exec-id=1937-5462ab40 --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 20230522-071914F, start = 00000002000000000000000B, stop = 00000002000000000000000C", + "P00 DETAIL: repo1: 12-1 archive retention on backup 20230522-071918F, start = 00000002000000000000000D, stop = 00000002000000000000000E", + "P00 DETAIL: repo1: 12-1 archive retention on backup 20230522-071918F_20230522-071928D, start = 000000020000000000000013, stop = 000000020000000000000014", + "P00 DETAIL: repo1: 12-1 archive retention on backup 20230522-071918F_20230522-071932D, start = 000000020000000000000017", + "P00 INFO: repo1: 12-1 remove archive, start = 00000002000000000000000F, stop = 000000020000000000000012", "P00 INFO: repo1: 12-1 remove archive, start = 000000020000000000000015, stop = 000000020000000000000016", "P00 INFO: expire command end: completed successfully" ] @@ -2098,13 +2105,13 @@ "P00 INFO: remove invalid files/links/paths from '/var/lib/postgresql/12/demo'", "P00 DETAIL: remove invalid file '/var/lib/postgresql/12/demo/backup_label.old'", "P00 DETAIL: remove invalid file '/var/lib/postgresql/12/demo/base/1/pg_internal.init'", - " [filtered 194 lines of output]", - "P01 DETAIL: restore file /var/lib/postgresql/12/demo/base/1/113 - exists and matches backup (bundle 20230320-004646F/1/920781, 8KB, 27.76%) checksum 86dec5ef018cbb5c309803e5d6adcaac23a1550a", - "P01 DETAIL: restore file /var/lib/postgresql/12/demo/base/1/112 - exists and matches backup (bundle 20230320-004646F/1/920869, 8KB, 27.79%) checksum 3e866c6a5eea1caf52cf417df33f238220897dcf", - "P01 DETAIL: restore file /var/lib/postgresql/12/demo/PG_VERSION - exists and matches backup (bundle 20230320-004646F/1/920957, 3B, 27.79%) checksum ad552e6dc057d1d825bf49df79d6b98eba846ebe", - "P01 DETAIL: restore file /var/lib/postgresql/12/demo/global/6115 - exists and matches backup (bundle 20230320-004646F/1/920981, 8KB, 27.83%) checksum 55f8977d3ef43e9987839954a5c54bd1197a05dd", - "P01 DETAIL: restore file /var/lib/postgresql/12/demo/global/6114 - exists and matches backup (bundle 20230320-004646F/1/921069, 8KB, 27.86%) checksum 16a3ad209caa20287ee8f223a64a2589228a205e", - " [filtered 824 lines of output]" + " [filtered 18 lines of output]", + "P01 DETAIL: restore file /var/lib/postgresql/12/demo/backup_label (259B, 0.00%) checksum 229b4de52f6883ebc72d97270b55cc6fc969a652", + "P01 DETAIL: restore file /var/lib/postgresql/12/demo/pg_multixact/members/0000 - exists and matches backup (bundle 20230522-071918F/1/0, 8KB, 0.03%) checksum 0631457264ff7f8d5fb1edc2c0211992a67c73e6", + "P01 DETAIL: restore file /var/lib/postgresql/12/demo/PG_VERSION - exists and matches backup (bundle 20230522-071918F/1/40, 3B, 0.03%) checksum ad552e6dc057d1d825bf49df79d6b98eba846ebe", + "P01 DETAIL: restore file /var/lib/postgresql/12/demo/global/pg_filenode.map - exists and matches backup (bundle 20230522-071918F/1/64, 512B, 0.04%) checksum 05ed0e142d7f6556d9f852f259ad47eb13718996", + "P01 DETAIL: restore file /var/lib/postgresql/12/demo/global/6115 - exists and matches backup (bundle 20230522-071918F/1/216, 8KB, 0.07%) checksum 02013533835bc72f68fc71fcb0d2b239e092244d", + " [filtered 1000 lines of output]" ] } }, @@ -2185,6 +2192,7 @@ "type" : "exe", "value" : { "output" : [ + "CREATE TABLE", "INSERT 0 1" ] } @@ -2204,6 +2212,7 @@ "type" : "exe", "value" : { "output" : [ + "CREATE TABLE", "INSERT 0 1" ] } @@ -2271,7 +2280,7 @@ "type" : "exe", "value" : { "output" : [ - "20230320-004646F_20230320-004707I" + "20230522-071918F_20230522-071941I" ] } }, @@ -2280,7 +2289,7 @@ "bash-wrap" : true, "cmd" : [ "sudo -u postgres pgbackrest --stanza=demo \\", - " --set=20230320-004646F_20230320-004707I info" + " --set=20230522-071918F_20230522-071941I info" ], "highlight" : { "filter" : true, @@ -2299,8 +2308,8 @@ "output" : [ " [filtered 12 lines of output]", " repo1: backup size: 1.9MB", - " backup reference list: 20230320-004646F, 20230320-004646F_20230320-004658D", - " database list: postgres (13398), test1 (32768), test2 (32769)" + " backup reference list: 20230522-071918F, 20230522-071918F_20230522-071932D", + " database list: postgres (13427), test1 (32768), test2 (32769)" ] } }, @@ -2464,8 +2473,8 @@ " oid | datname ", "-------+-----------", " 1 | template1", - " 13397 | template0", - " 13398 | postgres", + " 13426 | template0", + " 13427 | postgres", " 32769 | test2", "(4 rows)" ] @@ -2509,6 +2518,7 @@ "type" : "exe", "value" : { "output" : [ + " [filtered 4 lines of output]", " message ", "----------------", " Important Data", @@ -2543,7 +2553,7 @@ "type" : "exe", "value" : { "output" : [ - "2023-03-20 00:47:20.278871+00" + "2023-05-22 07:19:56.646322+00" ] } }, @@ -2585,7 +2595,9 @@ "type" : "exe", "value" : { "output" : [ - "ERROR: relation \"important_table\" does not exist", + "BEGIN", + "DROP TABLE", + "COMMITERROR: relation \"important_table\" does not exist", "LINE 1: ...le important_table; commit; select * from important_...", " ^" ] @@ -2609,7 +2621,7 @@ "bash-wrap" : true, "cmd" : [ "sudo -u postgres pgbackrest --stanza=demo --delta \\", - " --type=time \"--target=2023-03-20 00:47:20.278871+00\" \\", + " --type=time \"--target=2023-05-22 07:19:56.646322+00\" \\", " --target-action=promote restore" ], "host" : "pg-primary", @@ -2654,13 +2666,13 @@ "value" : { "output" : [ " [filtered 11 lines of output]", - "# Removed by pgBackRest restore on 2023-03-20 00:47:22 # recovery_target = 'immediate'", - "# Removed by pgBackRest restore on 2023-03-20 00:47:22 # recovery_target_action = 'promote'", - "# Removed by pgBackRest restore on 2023-03-20 00:47:22 # recovery_target_timeline = 'current'", + "# Removed by pgBackRest restore on 2023-05-22 07:19:58 # recovery_target = 'immediate'", + "# Removed by pgBackRest restore on 2023-05-22 07:19:58 # recovery_target_action = 'promote'", + "# Removed by pgBackRest restore on 2023-05-22 07:19:58 # recovery_target_timeline = 'current'", "", - "# Recovery settings generated by pgBackRest restore on 2023-03-20 00:47:22", + "# Recovery settings generated by pgBackRest restore on 2023-05-22 07:19:58", "restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'", - "recovery_target_time = '2023-03-20 00:47:20.278871+00'", + "recovery_target_time = '2023-05-22 07:19:56.646322+00'", "recovery_target_action = 'promote'" ] } @@ -2742,16 +2754,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 2023-03-20 00:47:17 UTC", - "LOG: starting point-in-time recovery to 2023-03-20 00:47:20.278871+00", + "LOG: database system was interrupted; last known up at 2023-05-22 07:19:52 UTC", + "LOG: starting point-in-time recovery to 2023-05-22 07:19:56.646322+00", "LOG: restored log file \"00000004.history\" from archive", "LOG: restored log file \"00000004000000000000001B\" from archive", " [filtered 2 lines of output]", "LOG: database system is ready to accept read only connections", "LOG: restored log file \"00000004000000000000001C\" from archive", - "LOG: recovery stopping before commit of transaction 496, time 2023-03-20 00:47:21.633932+00", + "LOG: recovery stopping before commit of transaction 496, time 2023-05-22 07:19:58.03874+00", "LOG: redo done at 0/1C019E88", - "LOG: last completed transaction was at log time 2023-03-20 00:47:18.896381+00", + "LOG: last completed transaction was at log time 2023-05-22 07:19:55.307254+00", "LOG: selected new timeline ID: 5", "LOG: archive recovery complete", " [filtered 2 lines of output]" @@ -2783,7 +2795,9 @@ "type" : "exe", "value" : { "output" : [ - "ERROR: relation \"important_table\" does not exist", + "BEGIN", + "DROP TABLE", + "COMMITERROR: relation \"important_table\" does not exist", "LINE 1: ...le important_table; commit; select * from important_...", " ^" ] @@ -2816,7 +2830,7 @@ "type" : "exe", "value" : { "output" : [ - "20230320-004646F_20230320-004728I" + "20230522-071918F_20230522-072005I" ] } }, @@ -2830,7 +2844,7 @@ "filter" : false, "filter-context" : 2, "list" : [ - "20230320-004646F_20230320-004728I" + "20230522-071918F_20230522-072005I" ] }, "host" : "pg-primary", @@ -2848,45 +2862,45 @@ " db (current)", " wal archive min/max (12): 00000002000000000000000B/00000005000000000000001D", "", - " full backup: 20230320-004642F", - " timestamp start/stop: 2023-03-20 00:46:42 / 2023-03-20 00:46:45", + " full backup: 20230522-071914F", + " timestamp start/stop: 2023-05-22 07:19:14 / 2023-05-22 07:19:17", " wal start/stop: 00000002000000000000000B / 00000002000000000000000C", - " database size: 23.4MB, database backup size: 23.4MB", + " database size: 23.5MB, database backup size: 23.5MB", " repo1: backup size: 2.8MB", "", - " full backup: 20230320-004646F", - " timestamp start/stop: 2023-03-20 00:46:46 / 2023-03-20 00:46:49", + " full backup: 20230522-071918F", + " timestamp start/stop: 2023-05-22 07:19:18 / 2023-05-22 07:19:21", " wal start/stop: 00000002000000000000000D / 00000002000000000000000E", - " database size: 23.4MB, database backup size: 23.4MB", + " database size: 23.5MB, database backup size: 23.5MB", " repo1: backup size: 2.8MB", "", - " diff backup: 20230320-004646F_20230320-004658D", - " timestamp start/stop: 2023-03-20 00:46:58 / 2023-03-20 00:46:59", + " diff backup: 20230522-071918F_20230522-071932D", + " timestamp start/stop: 2023-05-22 07:19:32 / 2023-05-22 07:19:33", " wal start/stop: 000000020000000000000017 / 000000020000000000000018", - " database size: 23.4MB, database backup size: 8.3KB", + " database size: 23.5MB, database backup size: 8.3KB", " repo1: backup size: 480B", - " backup reference list: 20230320-004646F", + " backup reference list: 20230522-071918F", "", - " incr backup: 20230320-004646F_20230320-004707I", - " timestamp start/stop: 2023-03-20 00:47:07 / 2023-03-20 00:47:08", + " incr backup: 20230522-071918F_20230522-071941I", + " timestamp start/stop: 2023-05-22 07:19:41 / 2023-05-22 07:19:44", " wal start/stop: 00000003000000000000001A / 00000003000000000000001A", - " database size: 38.7MB, database backup size: 15.8MB", + " database size: 38.8MB, database backup size: 15.8MB", " repo1: backup size: 1.9MB", - " backup reference list: 20230320-004646F, 20230320-004646F_20230320-004658D", + " backup reference list: 20230522-071918F, 20230522-071918F_20230522-071932D", "", - " diff backup: 20230320-004646F_20230320-004717D", - " timestamp start/stop: 2023-03-20 00:47:17 / 2023-03-20 00:47:18", + " diff backup: 20230522-071918F_20230522-071952D", + " timestamp start/stop: 2023-05-22 07:19:52 / 2023-05-22 07:19:54", " wal start/stop: 00000004000000000000001B / 00000004000000000000001B", - " database size: 31MB, database backup size: 8.2MB", - " repo1: backup size: 972.3KB", - " backup reference list: 20230320-004646F", + " database size: 31.1MB, database backup size: 8.2MB", + " repo1: backup size: 970.8KB", + " backup reference list: 20230522-071918F", "", - " incr backup: 20230320-004646F_20230320-004728I", - " timestamp start/stop: 2023-03-20 00:47:28 / 2023-03-20 00:47:30", + " incr backup: 20230522-071918F_20230522-072005I", + " timestamp start/stop: 2023-05-22 07:20:05 / 2023-05-22 07:20:07", " wal start/stop: 00000005000000000000001D / 00000005000000000000001D", - " database size: 31MB, database backup size: 2.2MB", - " repo1: backup size: 25KB", - " backup reference list: 20230320-004646F, 20230320-004646F_20230320-004717D" + " database size: 31.1MB, database backup size: 2.2MB", + " repo1: backup size: 25.0KB", + " backup reference list: 20230522-071918F, 20230522-071918F_20230522-071952D" ] } }, @@ -2908,8 +2922,8 @@ "bash-wrap" : true, "cmd" : [ "sudo -u postgres pgbackrest --stanza=demo --delta \\", - " --set=20230320-004646F_20230320-004728I \\", - " --type=time \"--target=2023-03-20 00:47:20.278871+00\" --target-action=promote restore" + " --set=20230522-071918F_20230522-072005I \\", + " --type=time \"--target=2023-05-22 07:19:56.646322+00\" --target-action=promote restore" ], "host" : "pg-primary", "load-env" : true, @@ -3006,17 +3020,17 @@ "type" : "exe", "value" : { "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 2023-03-20 00:47:29 UTC", - "LOG: starting point-in-time recovery to 2023-03-20 00:47:20.278871+00", + " [filtered 4 lines of output]", + "LOG: database system was interrupted; last known up at 2023-05-22 07:20:05 UTC", + "FATAL: the database system is starting up", + "LOG: starting point-in-time recovery to 2023-05-22 07:19:56.646322+00", "LOG: restored log file \"00000005.history\" from archive", "LOG: restored log file \"00000005000000000000001D\" from archive", "LOG: redo starts at 0/1D000028", "LOG: consistent recovery state reached at 0/1D000100", "LOG: database system is ready to accept read only connections", "LOG: redo done at 0/1D000100", - " [filtered 7 lines of output]" + " [filtered 6 lines of output]" ] } }, @@ -3038,7 +3052,7 @@ "bash-wrap" : true, "cmd" : [ "sudo -u postgres pgbackrest --stanza=demo --delta \\", - " --type=time \"--target=2023-03-20 00:47:20.278871+00\" \\", + " --type=time \"--target=2023-05-22 07:19:56.646322+00\" \\", " --target-action=promote restore" ], "host" : "pg-primary", @@ -3139,15 +3153,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 2023-03-20 00:47:20.278871+00", + "LOG: starting point-in-time recovery to 2023-05-22 07:19:56.646322+00", "LOG: restored log file \"00000006.history\" from archive", "LOG: restored log file \"00000004000000000000001B\" from archive", " [filtered 4 lines of output]", "LOG: database system is ready to accept read only connections", "LOG: restored log file \"00000005000000000000001C\" from archive", - "LOG: recovery stopping before commit of transaction 497, time 2023-03-20 00:47:28.120713+00", + "LOG: recovery stopping before commit of transaction 497, time 2023-05-22 07:20:04.672994+00", "LOG: redo done at 0/1C022530", - "LOG: last completed transaction was at log time 2023-03-20 00:47:18.896381+00", + "LOG: last completed transaction was at log time 2023-05-22 07:19:55.307254+00", "LOG: selected new timeline ID: 7", "LOG: archive recovery complete", " [filtered 2 lines of output]" @@ -3191,7 +3205,6 @@ "pg1-path=/var/lib/postgresql/12/demo", "", "[global]", - "beta=y", "process-max=4", "repo1-block=y", "repo1-bundle=y", @@ -3289,16 +3302,16 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: backup command begin 2.45: --beta --exec-id=1973-5c0839fc --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-block --repo1-bundle --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.46: --exec-id=2698-bdabf29f --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-block --repo1-bundle --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 backup start: backup begins after the requested immediate checkpoint completes", "P00 INFO: backup start archive = 00000007000000000000001D, lsn = 0/1D000028", " [filtered 3 lines of output]", "P00 INFO: check archive for segment(s) 00000007000000000000001D:00000007000000000000001D", - "P00 INFO: new backup label = 20230320-004746F", - "P00 INFO: full backup size = 31MB, file total = 1282", + "P00 INFO: new backup label = 20230522-072022F", + "P00 INFO: full backup size = 31.1MB, file total = 1282", "P00 INFO: backup command end: completed successfully", - "P00 INFO: expire command begin 2.45: --beta --exec-id=1973-5c0839fc --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.46: --exec-id=2698-bdabf29f --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" ] } }, @@ -3345,7 +3358,6 @@ "pg1-path=/var/lib/postgresql/12/demo", "", "[global]", - "beta=y", "process-max=4", "repo1-block=y", "repo1-bundle=y", @@ -3451,16 +3463,16 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: backup command begin 2.45: --beta --exec-id=2042-9d6ca8c9 --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-block --repo1-bundle --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.46: --exec-id=2765-17204c7a --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-block --repo1-bundle --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 backup start: backup begins after the requested immediate checkpoint completes", "P00 INFO: backup start archive = 00000007000000000000001F, lsn = 0/1F000028", " [filtered 3 lines of output]", "P00 INFO: check archive for segment(s) 00000007000000000000001F:00000007000000000000001F", - "P00 INFO: new backup label = 20230320-004756F", - "P00 INFO: full backup size = 31MB, file total = 1282", + "P00 INFO: new backup label = 20230522-072033F", + "P00 INFO: full backup size = 31.1MB, file total = 1282", "P00 INFO: backup command end: completed successfully", - "P00 INFO: expire command begin 2.45: --beta --exec-id=2042-9d6ca8c9 --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.46: --exec-id=2765-17204c7a --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" ] } }, @@ -3473,17 +3485,29 @@ "process-max" : { "value" : "4" }, - "repo4-gcs-bucket" : { - "value" : "demo-bucket" - }, - "repo4-gcs-key" : { - "value" : "/etc/pgbackrest/gcs-key.json" + "repo4-bundle" : { + "value" : "y" }, "repo4-path" : { "value" : "/demo-repo" }, + "repo4-sftp-host" : { + "value" : "sftp-server" + }, + "repo4-sftp-host-key-hash-type" : { + "value" : "sha1" + }, + "repo4-sftp-host-user" : { + "value" : "postgres" + }, + "repo4-sftp-private-key-file" : { + "value" : "/var/lib/postgresql/.ssh/id_rsa_sftp" + }, + "repo4-sftp-public-key-file" : { + "value" : "/var/lib/postgresql/.ssh/id_rsa_sftp.pub" + }, "repo4-type" : { - "value" : "gcs" + "value" : "sftp" } } } @@ -3495,7 +3519,6 @@ "pg1-path=/var/lib/postgresql/12/demo", "", "[global]", - "beta=y", "process-max=4", "repo1-block=y", "repo1-bundle=y", @@ -3518,10 +3541,206 @@ "repo3-s3-key-secret=verySecretKey1", "repo3-s3-region=us-east-1", "repo3-type=s3", - "repo4-gcs-bucket=demo-bucket", - "repo4-gcs-key=/etc/pgbackrest/gcs-key.json", + "repo4-bundle=y", "repo4-path=/demo-repo", - "repo4-type=gcs", + "repo4-sftp-host=sftp-server", + "repo4-sftp-host-key-hash-type=sha1", + "repo4-sftp-host-user=postgres", + "repo4-sftp-private-key-file=/var/lib/postgresql/.ssh/id_rsa_sftp", + "repo4-sftp-public-key-file=/var/lib/postgresql/.ssh/id_rsa_sftp.pub", + "repo4-type=sftp", + "start-fast=y", + "", + "[global:archive-push]", + "compress-level=3" + ] + } + }, + { + "key" : { + "bash-wrap" : true, + "cmd" : [ + "sudo -u postgres ssh-keygen -f /var/lib/postgresql/.ssh/id_rsa_sftp \\", + " -t rsa -b 4096 -N \"\" -m PEM" + ], + "host" : "pg-primary", + "load-env" : true, + "output" : false, + "run-as-user" : null + }, + "type" : "exe" + }, + { + "key" : { + "bash-wrap" : true, + "cmd" : [ + "sudo -u postgres mkdir -m 750 -p /var/lib/postgresql/.ssh" + ], + "host" : "sftp-server", + "load-env" : true, + "output" : false, + "run-as-user" : null + }, + "type" : "exe" + }, + { + "key" : { + "bash-wrap" : true, + "cmd" : [ + "mkdir -m 750 -p /demo-repo && chown postgres:postgres /demo-repo" + ], + "host" : "sftp-server", + "load-env" : true, + "output" : false, + "run-as-user" : "root" + }, + "type" : "exe" + }, + { + "key" : { + "bash-wrap" : true, + "cmd" : [ + "(sudo ssh root@pg-primary cat /var/lib/postgresql/.ssh/id_rsa_sftp.pub) | \\", + " sudo -u postgres tee -a /var/lib/postgresql/.ssh/authorized_keys" + ], + "host" : "sftp-server", + "load-env" : true, + "output" : false, + "run-as-user" : "root" + }, + "type" : "exe" + }, + { + "key" : { + "bash-wrap" : true, + "cmd" : [ + "sudo -u postgres pgbackrest --stanza=demo --log-level-console=info stanza-create" + ], + "highlight" : { + "filter" : true, + "filter-context" : 2, + "list" : [ + "completed successfully" + ] + }, + "host" : "pg-primary", + "load-env" : true, + "output" : true, + "run-as-user" : null + }, + "type" : "exe", + "value" : { + "output" : [ + " [filtered 6 lines of output]", + "P00 INFO: stanza 'demo' already exists on repo3 and is valid", + "P00 INFO: stanza-create for stanza 'demo' on repo4", + "P00 INFO: stanza-create command end: completed successfully" + ] + } + }, + { + "key" : { + "bash-wrap" : true, + "cmd" : [ + "sudo -u postgres pgbackrest --stanza=demo --repo=4 \\", + " --log-level-console=info backup" + ], + "highlight" : { + "filter" : true, + "filter-context" : 2, + "list" : [ + "no prior backup exists|full backup size" + ] + }, + "host" : "pg-primary", + "load-env" : true, + "output" : true, + "run-as-user" : null + }, + "type" : "exe", + "value" : { + "output" : [ + "P00 INFO: backup command begin 2.46: --exec-id=2833-95c95600 --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/postgresql/12/demo --process-max=4 --repo=4 --repo2-azure-account= --repo2-azure-container=demo-container --repo2-azure-key= --repo1-block --repo1-bundle --repo4-bundle --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo2-path=/demo-repo --repo3-path=/demo-repo --repo4-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 --repo4-sftp-host=sftp-server --repo4-sftp-host-key-hash-type=sha1 --repo4-sftp-host-user=postgres --repo4-sftp-private-key-file=/var/lib/postgresql/.ssh/id_rsa_sftp --repo4-sftp-public-key-file=/var/lib/postgresql/.ssh/id_rsa_sftp.pub --repo2-type=azure --repo3-type=s3 --repo4-type=sftp --stanza=demo --start-fast", + "P00 WARN: option 'repo4-retention-full' is not set for 'repo4-retention-full-type=count', the repository may run out of space", + " HINT: to retain full backups indefinitely (without warning), set option 'repo4-retention-full' to the maximum.", + "P00 WARN: no prior backup exists, incr backup has been changed to full", + "P00 INFO: execute non-exclusive backup start: backup begins after the requested immediate checkpoint completes", + "P00 INFO: backup start archive = 000000070000000000000021, lsn = 0/21000028", + " [filtered 3 lines of output]", + "P00 INFO: check archive for segment(s) 000000070000000000000021:000000070000000000000021", + "P00 INFO: new backup label = 20230522-072047F", + "P00 INFO: full backup size = 31.1MB, file total = 1282", + "P00 INFO: backup command end: completed successfully", + "P00 INFO: expire command begin 2.46: --exec-id=2833-95c95600 --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo=4 --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 --repo4-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 --repo4-sftp-host=sftp-server --repo4-sftp-host-key-hash-type=sha1 --repo4-sftp-host-user=postgres --repo4-sftp-private-key-file=/var/lib/postgresql/.ssh/id_rsa_sftp --repo4-sftp-public-key-file=/var/lib/postgresql/.ssh/id_rsa_sftp.pub --repo2-type=azure --repo3-type=s3 --repo4-type=sftp --stanza=demo", + "P00 INFO: expire command end: completed successfully" + ] + } + }, + { + "key" : { + "file" : "/etc/pgbackrest/pgbackrest.conf", + "host" : "pg-primary", + "option" : { + "global" : { + "process-max" : { + "value" : "4" + }, + "repo5-gcs-bucket" : { + "value" : "demo-bucket" + }, + "repo5-gcs-key" : { + "value" : "/etc/pgbackrest/gcs-key.json" + }, + "repo5-path" : { + "value" : "/demo-repo" + }, + "repo5-type" : { + "value" : "gcs" + } + } + } + }, + "type" : "cfg-pgbackrest", + "value" : { + "config" : [ + "[demo]", + "pg1-path=/var/lib/postgresql/12/demo", + "", + "[global]", + "process-max=4", + "repo1-block=y", + "repo1-bundle=y", + "repo1-cipher-pass=zWaf6XtpjIVZC5444yXB+cgFDFl7MxGlgkZSaoPvTGirhPygu4jOKOXf9LO4vjfO", + "repo1-cipher-type=aes-256-cbc", + "repo1-path=/var/lib/pgbackrest", + "repo1-retention-diff=2", + "repo1-retention-full=2", + "repo2-azure-account=pgbackrest", + "repo2-azure-container=demo-container", + "repo2-azure-key=YXpLZXk=", + "repo2-path=/demo-repo", + "repo2-retention-full=4", + "repo2-type=azure", + "repo3-path=/demo-repo", + "repo3-retention-full=4", + "repo3-s3-bucket=demo-bucket", + "repo3-s3-endpoint=s3.us-east-1.amazonaws.com", + "repo3-s3-key=accessKey1", + "repo3-s3-key-secret=verySecretKey1", + "repo3-s3-region=us-east-1", + "repo3-type=s3", + "repo4-bundle=y", + "repo4-path=/demo-repo", + "repo4-sftp-host=sftp-server", + "repo4-sftp-host-key-hash-type=sha1", + "repo4-sftp-host-user=postgres", + "repo4-sftp-private-key-file=/var/lib/postgresql/.ssh/id_rsa_sftp", + "repo4-sftp-public-key-file=/var/lib/postgresql/.ssh/id_rsa_sftp.pub", + "repo4-type=sftp", + "repo5-gcs-bucket=demo-bucket", + "repo5-gcs-key=/etc/pgbackrest/gcs-key.json", + "repo5-path=/demo-repo", + "repo5-type=gcs", "start-fast=y", "", "[global:archive-push]", @@ -3563,7 +3782,7 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: stop command begin 2.45: --beta --exec-id=2092-54db3fa2 --log-level-console=info --log-level-stderr=off --no-log-timestamp --stanza=demo", + "P00 INFO: stop command begin 2.46: --exec-id=2898-690c0752 --log-level-console=info --log-level-stderr=off --no-log-timestamp --stanza=demo", "P00 INFO: stop command end: completed successfully" ] } @@ -3590,7 +3809,7 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: stanza-delete command begin 2.45: --beta --exec-id=2101-e0cbebe1 --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.46: --exec-id=2906-b079f1d8 --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 --repo5-gcs-bucket=demo-bucket --repo5-gcs-key= --repo1-path=/var/lib/pgbackrest --repo2-path=/demo-repo --repo3-path=/demo-repo --repo4-path=/demo-repo --repo5-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 --repo4-sftp-host=sftp-server --repo4-sftp-host-key-hash-type=sha1 --repo4-sftp-host-user=postgres --repo4-sftp-private-key-file=/var/lib/postgresql/.ssh/id_rsa_sftp --repo4-sftp-public-key-file=/var/lib/postgresql/.ssh/id_rsa_sftp.pub --repo2-type=azure --repo3-type=s3 --repo4-type=sftp --repo5-type=gcs --stanza=demo", "P00 INFO: stanza-delete command end: completed successfully" ] } @@ -3619,7 +3838,7 @@ }, "type" : "host", "value" : { - "ip" : "172.17.0.6" + "ip" : "172.17.0.7" } }, { @@ -3639,7 +3858,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "sudo apt-get install postgresql-client libxml2" + "sudo apt-get install postgresql-client libxml2 libssh2-1" ], "cmd-extra" : "-y 2>&1", "host" : "repository", @@ -3653,7 +3872,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "sudo scp build:/build/pgbackrest-release-2.45/src/pgbackrest /usr/bin" + "sudo scp build:/build/pgbackrest-release-2.46/src/pgbackrest /usr/bin" ], "cmd-extra" : "2>&1", "host" : "repository", @@ -4210,18 +4429,18 @@ " cipher: none", "", " db (current)", - " wal archive min/max (12): 000000080000000000000025/000000080000000000000027", + " wal archive min/max (12): 000000080000000000000028/00000008000000000000002A", "", - " full backup: 20230320-004833F", - " timestamp start/stop: 2023-03-20 00:48:33 / 2023-03-20 00:48:38", - " wal start/stop: 000000080000000000000025 / 000000080000000000000025", - " database size: 31MB, database backup size: 31MB", + " full backup: 20230522-072203F", + " timestamp start/stop: 2023-05-22 07:22:03 / 2023-05-22 07:22:08", + " wal start/stop: 000000080000000000000028 / 000000080000000000000028", + " database size: 31.1MB, database backup size: 31.1MB", " repo1: backup set size: 3.7MB, backup size: 3.7MB", "", - " full backup: 20230320-004840F", - " timestamp start/stop: 2023-03-20 00:48:40 / 2023-03-20 00:48:44", - " wal start/stop: 000000080000000000000026 / 000000080000000000000027", - " database size: 31MB, database backup size: 31MB", + " full backup: 20230522-072210F", + " timestamp start/stop: 2023-05-22 07:22:10 / 2023-05-22 07:22:14", + " wal start/stop: 000000080000000000000029 / 00000008000000000000002A", + " database size: 31.1MB, database backup size: 31.1MB", " repo1: backup set size: 3.7MB, backup size: 3.7MB" ] } @@ -4363,14 +4582,14 @@ }, "type" : "host", "value" : { - "ip" : "172.17.0.7" + "ip" : "172.17.0.8" } }, { "key" : { "bash-wrap" : true, "cmd" : [ - "sudo apt-get install postgresql-client libxml2" + "sudo apt-get install postgresql-client libxml2 libssh2-1" ], "cmd-extra" : "-y 2>&1", "host" : "pg-standby", @@ -4384,7 +4603,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "sudo scp build:/build/pgbackrest-release-2.45/src/pgbackrest /usr/bin" + "sudo scp build:/build/pgbackrest-release-2.46/src/pgbackrest /usr/bin" ], "cmd-extra" : "2>&1", "host" : "pg-standby", @@ -4666,27 +4885,27 @@ "# Do not edit this file manually!", "# It will be overwritten by the ALTER SYSTEM command.", "", - "# Recovery settings generated by pgBackRest restore on 2023-03-20 00:46:23", + "# Recovery settings generated by pgBackRest restore on 2023-05-22 07:18:55", "restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'", "", - "# Recovery settings generated by pgBackRest restore on 2023-03-20 00:47:00", + "# Recovery settings generated by pgBackRest restore on 2023-05-22 07:19:34", "restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'", "", - "# Recovery settings generated by pgBackRest restore on 2023-03-20 00:47:10", + "# Recovery settings generated by pgBackRest restore on 2023-05-22 07:19:45", "restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'", - "# Removed by pgBackRest restore on 2023-03-20 00:47:38 # recovery_target = 'immediate'", - "# Removed by pgBackRest restore on 2023-03-20 00:47:38 # recovery_target_action = 'promote'", - "# Removed by pgBackRest restore on 2023-03-20 00:47:38 # recovery_target_timeline = 'current'", + "# Removed by pgBackRest restore on 2023-05-22 07:20:14 # recovery_target = 'immediate'", + "# Removed by pgBackRest restore on 2023-05-22 07:20:14 # recovery_target_action = 'promote'", + "# Removed by pgBackRest restore on 2023-05-22 07:20:14 # recovery_target_timeline = 'current'", "", - "# Recovery settings generated by pgBackRest restore on 2023-03-20 00:47:38", + "# Recovery settings generated by pgBackRest restore on 2023-05-22 07:20:14", "restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'", - "# Removed by pgBackRest restore on 2023-03-20 00:48:27 # recovery_target_time = '2023-03-20 00:47:20.278871+00'", - "# Removed by pgBackRest restore on 2023-03-20 00:48:27 # recovery_target_action = 'promote'", + "# Removed by pgBackRest restore on 2023-05-22 07:21:57 # recovery_target_time = '2023-05-22 07:19:56.646322+00'", + "# Removed by pgBackRest restore on 2023-05-22 07:21:57 # recovery_target_action = 'promote'", "", - "# Recovery settings generated by pgBackRest restore on 2023-03-20 00:48:27", + "# Recovery settings generated by pgBackRest restore on 2023-05-22 07:21:57", "restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'", "", - "# Recovery settings generated by pgBackRest restore on 2023-03-20 00:49:00", + "# Recovery settings generated by pgBackRest restore on 2023-05-22 07:22:33", "restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'" ] } @@ -4799,13 +5018,13 @@ "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 2023-03-20 00:48:40 UTC", + "LOG: database system was interrupted; last known up at 2023-05-22 07:22:10 UTC", "LOG: entering standby mode", "LOG: restored log file \"00000008.history\" from archive", - "LOG: restored log file \"000000080000000000000026\" from archive", - "LOG: redo starts at 0/26000028", - "LOG: restored log file \"000000080000000000000027\" from archive", - "LOG: consistent recovery state reached at 0/27000088", + "LOG: restored log file \"000000080000000000000029\" from archive", + "LOG: redo starts at 0/29000028", + "LOG: restored log file \"00000008000000000000002A\" from archive", + "LOG: consistent recovery state reached at 0/2A000088", "LOG: database system is ready to accept read only connections" ] } @@ -4836,6 +5055,7 @@ "type" : "exe", "value" : { "output" : [ + " [filtered 4 lines of output]", " message ", "----------------", " Important Data", @@ -4887,7 +5107,7 @@ "output" : [ " pg_switch_wal | current_timestamp ", "---------------+-------------------------------", - " 0/280217D8 | 2023-03-20 00:49:08.175432+00", + " 0/2B0217D8 | 2023-05-22 07:22:41.731188+00", "(1 row)" ] } @@ -4916,7 +5136,7 @@ "output" : [ " message | current_timestamp ", "----------------+-------------------------------", - " Important Data | 2023-03-20 00:49:09.102645+00", + " Important Data | 2023-05-22 07:22:42.492517+00", "(1 row)" ] } @@ -4942,7 +5162,7 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: check command begin 2.45: --exec-id=529-7d019347 --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.46: --exec-id=1346-cc7c7a60 --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" @@ -4973,7 +5193,7 @@ "bash-wrap" : true, "cmd" : [ "sudo -u postgres sh -c 'echo \\", - " \"host replication replicator 172.17.0.7/32 md5\" \\", + " \"host replication replicator 172.17.0.8/32 md5\" \\", " >> /etc/postgresql/12/demo/pg_hba.conf'" ], "host" : "pg-primary", @@ -5003,7 +5223,7 @@ "option" : { "demo" : { "recovery-option" : { - "value" : "primary_conninfo=host=172.17.0.5 port=5432 user=replicator" + "value" : "primary_conninfo=host=172.17.0.6 port=5432 user=replicator" } } } @@ -5013,7 +5233,7 @@ "config" : [ "[demo]", "pg1-path=/var/lib/postgresql/12/demo", - "recovery-option=primary_conninfo=host=172.17.0.5 port=5432 user=replicator", + "recovery-option=primary_conninfo=host=172.17.0.6 port=5432 user=replicator", "", "[global]", "log-level-file=detail", @@ -5026,7 +5246,7 @@ "bash-wrap" : true, "cmd" : [ "sudo -u postgres sh -c 'echo \\", - " \"172.17.0.5:*:replication:replicator:jw8s0F4\" \\", + " \"172.17.0.6:*:replication:replicator:jw8s0F4\" \\", " >> /var/lib/postgresql/.pgpass'" ], "host" : "pg-standby", @@ -5092,28 +5312,28 @@ "# Do not edit this file manually!", "# It will be overwritten by the ALTER SYSTEM command.", "", - "# Recovery settings generated by pgBackRest restore on 2023-03-20 00:46:23", + "# Recovery settings generated by pgBackRest restore on 2023-05-22 07:18:55", "restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'", "", - "# Recovery settings generated by pgBackRest restore on 2023-03-20 00:47:00", + "# Recovery settings generated by pgBackRest restore on 2023-05-22 07:19:34", "restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'", "", - "# Recovery settings generated by pgBackRest restore on 2023-03-20 00:47:10", + "# Recovery settings generated by pgBackRest restore on 2023-05-22 07:19:45", "restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'", - "# Removed by pgBackRest restore on 2023-03-20 00:47:38 # recovery_target = 'immediate'", - "# Removed by pgBackRest restore on 2023-03-20 00:47:38 # recovery_target_action = 'promote'", - "# Removed by pgBackRest restore on 2023-03-20 00:47:38 # recovery_target_timeline = 'current'", + "# Removed by pgBackRest restore on 2023-05-22 07:20:14 # recovery_target = 'immediate'", + "# Removed by pgBackRest restore on 2023-05-22 07:20:14 # recovery_target_action = 'promote'", + "# Removed by pgBackRest restore on 2023-05-22 07:20:14 # recovery_target_timeline = 'current'", "", - "# Recovery settings generated by pgBackRest restore on 2023-03-20 00:47:38", + "# Recovery settings generated by pgBackRest restore on 2023-05-22 07:20:14", "restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'", - "# Removed by pgBackRest restore on 2023-03-20 00:48:27 # recovery_target_time = '2023-03-20 00:47:20.278871+00'", - "# Removed by pgBackRest restore on 2023-03-20 00:48:27 # recovery_target_action = 'promote'", + "# Removed by pgBackRest restore on 2023-05-22 07:21:57 # recovery_target_time = '2023-05-22 07:19:56.646322+00'", + "# Removed by pgBackRest restore on 2023-05-22 07:21:57 # recovery_target_action = 'promote'", "", - "# Recovery settings generated by pgBackRest restore on 2023-03-20 00:48:27", + "# Recovery settings generated by pgBackRest restore on 2023-05-22 07:21:57", "restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'", "", - "# Recovery settings generated by pgBackRest restore on 2023-03-20 00:49:12", - "primary_conninfo = 'host=172.17.0.5 port=5432 user=replicator'", + "# Recovery settings generated by pgBackRest restore on 2023-05-22 07:22:46", + "primary_conninfo = 'host=172.17.0.6 port=5432 user=replicator'", "restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'" ] } @@ -5180,8 +5400,8 @@ "output" : [ " [filtered 11 lines of output]", "LOG: database system is ready to accept read only connections", - "LOG: restored log file \"000000080000000000000028\" from archive", - "LOG: started streaming WAL from primary at 0/29000000 on timeline 8" + "LOG: restored log file \"00000008000000000000002B\" from archive", + "LOG: started streaming WAL from primary at 0/2C000000 on timeline 8" ] } }, @@ -5211,9 +5431,10 @@ "type" : "exe", "value" : { "output" : [ + " [filtered 4 lines of output]", " message | current_timestamp ", "----------------+-------------------------------", - " Important Data | 2023-03-20 00:49:19.115786+00", + " Important Data | 2023-05-22 07:22:52.975608+00", "(1 row)" ] } @@ -5242,7 +5463,7 @@ "output" : [ " message | current_timestamp ", "----------------+-------------------------------", - " Important Data | 2023-03-20 00:49:19.463549+00", + " Important Data | 2023-05-22 07:22:53.315644+00", "(1 row)" ] } @@ -5374,7 +5595,7 @@ "config" : [ "[demo]", "pg1-path=/var/lib/postgresql/12/demo", - "recovery-option=primary_conninfo=host=172.17.0.5 port=5432 user=replicator", + "recovery-option=primary_conninfo=host=172.17.0.6 port=5432 user=replicator", "", "[global]", "archive-async=y", @@ -5473,10 +5694,10 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: check command begin 2.45: --exec-id=2722-706e5611 --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.46: --exec-id=3506-c32a6a2f --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 00000008000000000000002E successfully archived to '/var/lib/pgbackrest/archive/demo/12-1/0000000800000000/00000008000000000000002E-00c3bc658ffd39df2650ca7edd9038740861b1b9.gz' on repo1", + "P00 INFO: WAL segment 000000080000000000000031 successfully archived to '/var/lib/pgbackrest/archive/demo/12-1/0000000800000000/000000080000000000000031-0eb5806630c812bcd295cedd94bdbb17aaac9a30.gz' on repo1", "P00 INFO: check command end: completed successfully" ] } @@ -5503,19 +5724,19 @@ "value" : { "output" : [ "-------------------PROCESS START-------------------", - "P00 INFO: archive-push:async command begin 2.45: [/var/lib/postgresql/12/demo/pg_wal] --archive-async --exec-id=2707-82656d03 --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 begin 2.46: [/var/lib/postgresql/12/demo/pg_wal] --archive-async --exec-id=3493-f7517ac1 --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: 00000008000000000000002C", + "P01 DETAIL: pushed WAL file '00000008000000000000002C' to the archive", "P00 INFO: archive-push:async command end: completed successfully", "", "-------------------PROCESS START-------------------", - "P00 INFO: archive-push:async command begin 2.45: [/var/lib/postgresql/12/demo/pg_wal] --archive-async --exec-id=2726-98a13ea0 --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 5 WAL file(s) to archive: 00000008000000000000002A...00000008000000000000002E", - "P01 DETAIL: pushed WAL file '00000008000000000000002A' to the archive", - "P02 DETAIL: pushed WAL file '00000008000000000000002B' to the archive", - "P01 DETAIL: pushed WAL file '00000008000000000000002C' to the archive", - "P02 DETAIL: pushed WAL file '00000008000000000000002D' to the archive", - "P01 DETAIL: pushed WAL file '00000008000000000000002E' to the archive", + "P00 INFO: archive-push:async command begin 2.46: [/var/lib/postgresql/12/demo/pg_wal] --archive-async --exec-id=3510-64859191 --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 5 WAL file(s) to archive: 00000008000000000000002D...000000080000000000000031", + "P01 DETAIL: pushed WAL file '00000008000000000000002D' to the archive", + "P02 DETAIL: pushed WAL file '00000008000000000000002E' to the archive", + "P01 DETAIL: pushed WAL file '00000008000000000000002F' to the archive", + "P02 DETAIL: pushed WAL file '000000080000000000000030' to the archive", + "P01 DETAIL: pushed WAL file '000000080000000000000031' to the archive", "P00 INFO: archive-push:async command end: completed successfully" ] } @@ -5555,23 +5776,23 @@ "value" : { "output" : [ "-------------------PROCESS START-------------------", - "P00 INFO: archive-get:async command begin 2.45: [000000080000000000000026, 000000080000000000000027, 000000080000000000000028, 000000080000000000000029, 00000008000000000000002A, 00000008000000000000002B, 00000008000000000000002C, 00000008000000000000002D] --archive-async --exec-id=755-45c32bd0 --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: 000000080000000000000026...00000008000000000000002D", - "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", - "P00 DETAIL: unable to find 000000080000000000000029 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.45: [000000080000000000000029, 00000008000000000000002A, 00000008000000000000002B, 00000008000000000000002C, 00000008000000000000002D, 00000008000000000000002E, 00000008000000000000002F, 000000080000000000000030] --archive-async --exec-id=799-e427a956 --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.46: [000000080000000000000029, 00000008000000000000002A, 00000008000000000000002B, 00000008000000000000002C, 00000008000000000000002D, 00000008000000000000002E, 00000008000000000000002F, 000000080000000000000030] --archive-async --exec-id=1557-0e4b6cc9 --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: 000000080000000000000029...000000080000000000000030", "P01 DETAIL: found 000000080000000000000029 in the repo1: 12-1 archive", "P02 DETAIL: found 00000008000000000000002A in the repo1: 12-1 archive", - "P02 DETAIL: found 00000008000000000000002C in the repo1: 12-1 archive", "P01 DETAIL: found 00000008000000000000002B in the repo1: 12-1 archive", + "P00 DETAIL: unable to find 00000008000000000000002C 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.46: [00000008000000000000002C, 00000008000000000000002D, 00000008000000000000002E, 00000008000000000000002F, 000000080000000000000030, 000000080000000000000031, 000000080000000000000032, 000000080000000000000033] --archive-async --exec-id=1601-a62a66ac --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: 00000008000000000000002C...000000080000000000000033", + "P01 DETAIL: found 00000008000000000000002C in the repo1: 12-1 archive", "P02 DETAIL: found 00000008000000000000002D in the repo1: 12-1 archive", "P01 DETAIL: found 00000008000000000000002E in the repo1: 12-1 archive", - "P00 DETAIL: unable to find 00000008000000000000002F in the archive", + "P02 DETAIL: found 00000008000000000000002F in the repo1: 12-1 archive", + "P01 DETAIL: found 000000080000000000000030 in the repo1: 12-1 archive", + "P02 DETAIL: found 000000080000000000000031 in the repo1: 12-1 archive", + "P00 DETAIL: unable to find 000000080000000000000032 in the archive", "P00 INFO: archive-get:async command end: completed successfully", " [filtered 11 lines of output]" ] @@ -5656,15 +5877,17 @@ "output" : [ " [filtered 2 lines of output]", "P00 INFO: execute non-exclusive backup start: backup begins after the requested immediate checkpoint completes", - "P00 INFO: backup start archive = 000000080000000000000030, lsn = 0/30000028", - "P00 INFO: wait for replay on the standby to reach 0/30000028", - "P00 INFO: replay on the standby reached 0/30000028", - "P00 INFO: check archive for prior segment 00000008000000000000002F", - "P01 DETAIL: backup file pg-primary:/var/lib/postgresql/12/demo/global/pg_control (8KB, 0.34%) checksum ade6ef105574ef2adef3a8fe71413489063b317e", - "P01 DETAIL: backup file pg-primary:/var/lib/postgresql/12/demo/pg_logical/replorigin_checkpoint (8B, 0.34%) checksum 347fc8f2df71bd4436e38bd1516ccd7ea0d46532", - "P02 DETAIL: backup file pg-standby:/var/lib/postgresql/12/demo/base/13398/2608 (456KB, 19.86%) checksum 0c65314eecd364f4111fec0c7e04c636668c6582", - "P03 DETAIL: backup file pg-standby:/var/lib/postgresql/12/demo/base/13398/1249 (440KB, 38.69%) checksum 49e448102e9359162dc2492c108bad130e64a12e", - " [filtered 1293 lines of output]" + "P00 INFO: backup start archive = 000000080000000000000033, lsn = 0/33000028", + "P00 INFO: wait for replay on the standby to reach 0/33000028", + "P00 INFO: replay on the standby reached 0/33000028", + "P00 INFO: check archive for prior segment 000000080000000000000032", + "P01 DETAIL: backup file pg-primary:/var/lib/postgresql/12/demo/global/pg_control (8KB, 0.34%) checksum 4b4ec7598e758bf68ba96f64545321f0ec68dbe1", + "P03 DETAIL: backup file pg-standby:/var/lib/postgresql/12/demo/base/13427/1249 (440KB, 19.17%) checksum 871a14e98b1b33e75b0fbe18db5c4e91b4719422", + "P04 DETAIL: backup file pg-standby:/var/lib/postgresql/12/demo/base/13427/2674 (344KB, 33.90%) checksum 10b8e11916b3cebbf9d60a372d46364b0a179845", + "P01 DETAIL: backup file pg-primary:/var/lib/postgresql/12/demo/pg_logical/replorigin_checkpoint (8B, 33.90%) checksum 347fc8f2df71bd4436e38bd1516ccd7ea0d46532", + "P02 DETAIL: backup file pg-standby:/var/lib/postgresql/12/demo/base/13427/2608 (456KB, 53.42%) checksum ac7fd711a15aaa6dbb5535a7846e5e82aa62f6c1", + "P03 DETAIL: backup file pg-standby:/var/lib/postgresql/12/demo/base/13427/2673 (280KB, 65.41%) checksum 588a56b17ce753ac9b60ddc50482246ee1bf9140", + " [filtered 1291 lines of output]" ] } }, @@ -5850,7 +6073,7 @@ "config" : [ "[demo]", "pg1-path=/var/lib/postgresql/14/demo", - "recovery-option=primary_conninfo=host=172.17.0.5 port=5432 user=replicator", + "recovery-option=primary_conninfo=host=172.17.0.6 port=5432 user=replicator", "", "[global]", "archive-async=y", @@ -5940,7 +6163,7 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: stanza-upgrade command begin 2.45: --exec-id=3167-71bf23ad --log-level-console=info --log-level-file=detail --log-level-stderr=off --no-log-timestamp --no-online --pg1-path=/var/lib/postgresql/14/demo --repo1-host=repository --stanza=demo", + "P00 INFO: stanza-upgrade command begin 2.46: --exec-id=3937-487e22c8 --log-level-console=info --log-level-file=detail --log-level-stderr=off --no-log-timestamp --no-online --pg1-path=/var/lib/postgresql/14/demo --repo1-host=repository --stanza=demo", "P00 INFO: stanza-upgrade for stanza 'demo' on repo1", "P00 INFO: stanza-upgrade command end: completed successfully" ] @@ -6193,10 +6416,10 @@ }, { "key" : { - "id" : "build", + "id" : "sftp", "image" : "pgbackrest/doc:rhel", - "name" : "build", - "option" : "-v /sys/fs/cgroup:/sys/fs/cgroup:rw -v /tmp/$(mktemp -d):/run", + "name" : "sftp-server", + "option" : "-m 512m -v /sys/fs/cgroup:/sys/fs/cgroup:rw -v /tmp/$(mktemp -d):/run", "os" : "rhel", "update-hosts" : true }, @@ -6205,11 +6428,25 @@ "ip" : "172.17.0.4" } }, + { + "key" : { + "id" : "build", + "image" : "pgbackrest/doc:rhel", + "name" : "build", + "option" : "-v /sys/fs/cgroup:/sys/fs/cgroup:rw -v /tmp/$(mktemp -d):/run", + "os" : "rhel", + "update-hosts" : true + }, + "type" : "host", + "value" : { + "ip" : "172.17.0.5" + } + }, { "key" : { "bash-wrap" : true, "cmd" : [ - "sudo mkdir -p /build/pgbackrest-release-2.45" + "sudo mkdir -p /build/pgbackrest-release-2.46" ], "host" : "build", "load-env" : true, @@ -6222,7 +6459,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "sudo cp -r /pgbackrest/src /build/pgbackrest-release-2.45" + "sudo cp -r /pgbackrest/src /build/pgbackrest-release-2.46" ], "host" : "build", "load-env" : true, @@ -6235,7 +6472,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "sudo chown -R vagrant /build/pgbackrest-release-2.45" + "sudo chown -R vagrant /build/pgbackrest-release-2.46" ], "host" : "build", "load-env" : true, @@ -6248,8 +6485,8 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "sudo yum install make gcc postgresql11-devel \\", - " openssl-devel libxml2-devel lz4-devel libzstd-devel bzip2-devel libyaml-devel" + "sudo yum install make gcc postgresql11-devel openssl-devel \\", + " libxml2-devel lz4-devel libzstd-devel bzip2-devel libyaml-devel libssh2-devel" ], "cmd-extra" : "-y 2>&1", "host" : "build", @@ -6263,7 +6500,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "cd /build/pgbackrest-release-2.45/src && ./configure && make" + "cd /build/pgbackrest-release-2.46/src && ./configure && make" ], "cmd-extra" : "-j 4", "host" : "build", @@ -6284,14 +6521,14 @@ }, "type" : "host", "value" : { - "ip" : "172.17.0.5" + "ip" : "172.17.0.6" } }, { "key" : { "bash-wrap" : true, "cmd" : [ - "sudo yum install postgresql-libs" + "sudo yum install postgresql-libs libssh2" ], "cmd-extra" : "-y 2>&1", "host" : "pg-primary", @@ -6305,7 +6542,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "sudo scp build:/build/pgbackrest-release-2.45/src/pgbackrest /usr/bin" + "sudo scp build:/build/pgbackrest-release-2.46/src/pgbackrest /usr/bin" ], "cmd-extra" : "2>&1", "host" : "pg-primary", @@ -6433,7 +6670,7 @@ "type" : "exe", "value" : { "output" : [ - "pgBackRest 2.45 - General help", + "pgBackRest 2.46 - General help", "", "Usage:", " pgbackrest [options] [command]", @@ -6559,7 +6796,7 @@ "type" : "exe", "value" : { "output" : [ - "pgBackRest 2.45 - 'backup' command - 'log-path' option help", + "pgBackRest 2.46 - 'backup' command - 'log-path' option help", "", "Path where log files are stored.", "", @@ -6820,7 +7057,7 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: stanza-create command begin 2.45: --exec-id=1168-f5648d23 --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/11/data --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --stanza=demo", + "P00 INFO: stanza-create command begin 2.46: --exec-id=1193-ecbb7bdf --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/11/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" ] @@ -6847,10 +7084,10 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: check command begin 2.45: --exec-id=1196-e4a07eca --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/11/data --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --stanza=demo", + "P00 INFO: check command begin 2.46: --exec-id=1221-7a9c0b10 --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/11/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/11-1/0000000100000000/000000010000000000000001-715d3d5b01dc6afb9cf62cd200998e91d53a6441.gz' on repo1", + "P00 INFO: WAL segment 000000010000000000000001 successfully archived to '/var/lib/pgbackrest/archive/demo/11-1/0000000100000000/000000010000000000000001-d0f2e349d0d53579db8fed02456225f90828036b.gz' on repo1", "P00 INFO: check command end: completed successfully" ] } @@ -6907,16 +7144,16 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: backup command begin 2.45: --exec-id=1269-e822df80 --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/11/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.46: --exec-id=1295-3b151ca4 --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/11/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 backup start: 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 = 20230320-003926F", - "P00 INFO: full backup size = 22.7MB, file total = 952", + "P00 INFO: new backup label = 20230522-071033F", + "P00 INFO: full backup size = 22.8MB, file total = 952", "P00 INFO: backup command end: completed successfully", - "P00 INFO: expire command begin 2.45: --exec-id=1269-e822df80 --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.46: --exec-id=1295-3b151ca4 --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" ] } }, @@ -6934,7 +7171,7 @@ "type" : "exe", "value" : { "output" : [ - "20230320-003926F" + "20230522-071033F" ] } }, @@ -6962,10 +7199,10 @@ "output" : [ " [filtered 7 lines of output]", "P00 INFO: check archive for segment(s) 000000010000000000000004:000000010000000000000005", - "P00 INFO: new backup label = 20230320-003926F_20230320-003931D", + "P00 INFO: new backup label = 20230522-071033F_20230522-071038D", "P00 INFO: diff backup size = 8.8KB, file total = 952", "P00 INFO: backup command end: completed successfully", - "P00 INFO: expire command begin 2.45: --exec-id=1331-04ccff29 --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.46: --exec-id=1357-ca0c8d90 --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" ] } }, @@ -6997,18 +7234,18 @@ " db (current)", " wal archive min/max (11): 000000010000000000000001/000000010000000000000005", "", - " full backup: 20230320-003926F", - " timestamp start/stop: 2023-03-20 00:39:26 / 2023-03-20 00:39:29", + " full backup: 20230522-071033F", + " timestamp start/stop: 2023-05-22 07:10:33 / 2023-05-22 07:10:37", " wal start/stop: 000000010000000000000002 / 000000010000000000000003", - " database size: 22.7MB, database backup size: 22.7MB", + " database size: 22.8MB, database backup size: 22.8MB", " repo1: backup set size: 2.7MB, backup size: 2.7MB", "", - " diff backup: 20230320-003926F_20230320-003931D", - " timestamp start/stop: 2023-03-20 00:39:31 / 2023-03-20 00:39:33", + " diff backup: 20230522-071033F_20230522-071038D", + " timestamp start/stop: 2023-05-22 07:10:38 / 2023-05-22 07:10:39", " wal start/stop: 000000010000000000000004 / 000000010000000000000005", - " database size: 22.7MB, database backup size: 8.8KB", + " database size: 22.8MB, database backup size: 8.8KB", " repo1: backup set size: 2.7MB, backup size: 752B", - " backup reference list: 20230320-003926F" + " backup reference list: 20230522-071033F" ] } }, @@ -7075,9 +7312,9 @@ "value" : { "output" : [ " [filtered 12 lines of output]", - "Mar 20 00:39:34 pg-primary systemd[1]: postgresql-11.service: Main process exited, code=exited, status=2/INVALIDARGUMENT", - "Mar 20 00:39:34 pg-primary systemd[1]: postgresql-11.service: Failed with result 'exit-code'.", - "Mar 20 00:39:34 pg-primary systemd[1]: Failed to start PostgreSQL 11 database server." + "May 22 07:10:40 pg-primary systemd[1]: postgresql-11.service: Main process exited, code=exited, status=2/INVALIDARGUMENT", + "May 22 07:10:40 pg-primary systemd[1]: postgresql-11.service: Failed with result 'exit-code'.", + "May 22 07:10:40 pg-primary systemd[1]: Failed to start PostgreSQL 11 database server." ] } }, @@ -7274,7 +7511,7 @@ "output" : [ " name | last_successful_backup | last_archived_wal ", "--------+------------------------+--------------------------", - " \"demo\" | 2023-03-20 00:39:33+00 | 000000010000000000000006", + " \"demo\" | 2023-05-22 07:10:39+00 | 000000010000000000000005", "(1 row)" ] } @@ -7347,9 +7584,6 @@ "host" : "pg-primary", "option" : { "global" : { - "beta" : { - "value" : "y" - }, "repo1-block" : { "value" : "y" } @@ -7363,7 +7597,6 @@ "pg1-path=/var/lib/pgsql/11/data", "", "[global]", - "beta=y", "repo1-block=y", "repo1-bundle=y", "repo1-cipher-pass=zWaf6XtpjIVZC5444yXB+cgFDFl7MxGlgkZSaoPvTGirhPygu4jOKOXf9LO4vjfO", @@ -7405,7 +7638,7 @@ "type" : "exe", "value" : { "output" : [ - "20230320-003945F" + "20230522-071052F" ] } }, @@ -7413,7 +7646,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "sudo -u postgres pgbackrest --stanza=demo --set=20230320-003945F info" + "sudo -u postgres pgbackrest --stanza=demo --set=20230522-071052F info" ], "highlight" : { "filter" : false, @@ -7435,13 +7668,13 @@ " cipher: aes-256-cbc", "", " db (current)", - " wal archive min/max (11): 000000020000000000000008/00000002000000000000000A", + " wal archive min/max (11): 000000020000000000000007/000000020000000000000009", "", - " full backup: 20230320-003945F", - " timestamp start/stop: 2023-03-20 00:39:45 / 2023-03-20 00:39:48", - " wal start/stop: 000000020000000000000009 / 00000002000000000000000A", - " lsn start/stop: 0/9000028 / 0/A000050", - " database size: 22.7MB, database backup size: 22.7MB", + " full backup: 20230522-071052F", + " timestamp start/stop: 2023-05-22 07:10:52 / 2023-05-22 07:10:55", + " wal start/stop: 000000020000000000000008 / 000000020000000000000009", + " lsn start/stop: 0/8000028 / 0/9000050", + " database size: 22.8MB, database backup size: 22.8MB", " repo1: backup size: 2.7MB", " database list: postgres (13090)", " annotation(s)", @@ -7454,7 +7687,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "sudo -u postgres pgbackrest --stanza=demo --set=20230320-003945F \\", + "sudo -u postgres pgbackrest --stanza=demo --set=20230522-071052F \\", " --annotation=key= --annotation=new_key=new_value annotate" ], "host" : "pg-primary", @@ -7468,7 +7701,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "sudo -u postgres pgbackrest --stanza=demo --set=20230320-003945F info" + "sudo -u postgres pgbackrest --stanza=demo --set=20230522-071052F info" ], "highlight" : { "filter" : false, @@ -7490,13 +7723,13 @@ " cipher: aes-256-cbc", "", " db (current)", - " wal archive min/max (11): 000000020000000000000008/00000002000000000000000A", + " wal archive min/max (11): 000000020000000000000007/000000020000000000000009", "", - " full backup: 20230320-003945F", - " timestamp start/stop: 2023-03-20 00:39:45 / 2023-03-20 00:39:48", - " wal start/stop: 000000020000000000000009 / 00000002000000000000000A", - " lsn start/stop: 0/9000028 / 0/A000050", - " database size: 22.7MB, database backup size: 22.7MB", + " full backup: 20230522-071052F", + " timestamp start/stop: 2023-05-22 07:10:52 / 2023-05-22 07:10:55", + " wal start/stop: 000000020000000000000008 / 000000020000000000000009", + " lsn start/stop: 0/8000028 / 0/9000050", + " database size: 22.8MB, database backup size: 22.8MB", " repo1: backup size: 2.7MB", " database list: postgres (13090)", " annotation(s)", @@ -7524,7 +7757,6 @@ "pg1-path=/var/lib/pgsql/11/data", "", "[global]", - "beta=y", "repo1-block=y", "repo1-bundle=y", "repo1-cipher-pass=zWaf6XtpjIVZC5444yXB+cgFDFl7MxGlgkZSaoPvTGirhPygu4jOKOXf9LO4vjfO", @@ -7549,7 +7781,7 @@ "filter" : true, "filter-context" : 2, "list" : [ - "archive retention on backup 20230320-003926F|remove archive" + "archive retention on backup 20230522-071033F|remove archive" ] }, "host" : "pg-primary", @@ -7561,9 +7793,9 @@ "value" : { "output" : [ " [filtered 964 lines of output]", - "P00 INFO: repo1: remove expired backup 20230320-003941F", - "P00 DETAIL: repo1: 11-1 archive retention on backup 20230320-003945F, start = 000000020000000000000009", - "P00 INFO: repo1: 11-1 remove archive, start = 000000020000000000000008, stop = 000000020000000000000008", + "P00 INFO: repo1: remove expired backup 20230522-071047F", + "P00 DETAIL: repo1: 11-1 archive retention on backup 20230522-071052F, start = 000000020000000000000008", + "P00 INFO: repo1: 11-1 remove archive, start = 000000020000000000000007, stop = 000000020000000000000007", "P00 INFO: expire command end: completed successfully" ] } @@ -7582,7 +7814,7 @@ "type" : "exe", "value" : { "output" : [ - "20230320-003950F" + "20230522-071057F" ] } }, @@ -7597,7 +7829,7 @@ "filter" : true, "filter-context" : 2, "list" : [ - "expire full backup set 20230320-003926F|archive retention on backup 20230320-003950F|remove archive" + "expire full backup set 20230522-071033F|archive retention on backup 20230522-071057F|remove archive" ] }, "host" : "pg-primary", @@ -7609,9 +7841,9 @@ "value" : { "output" : [ " [filtered 11 lines of output]", - "P00 INFO: repo1: expire full backup 20230320-003945F", - "P00 INFO: repo1: remove expired backup 20230320-003945F", - "P00 INFO: repo1: 11-1 remove archive, start = 000000020000000000000009, stop = 00000002000000000000000A", + "P00 INFO: repo1: expire full backup 20230522-071052F", + "P00 INFO: repo1: remove expired backup 20230522-071052F", + "P00 INFO: repo1: 11-1 remove archive, start = 000000020000000000000008, stop = 00000002000000000000000A", "P00 INFO: expire command end: completed successfully" ] } @@ -7635,7 +7867,6 @@ "pg1-path=/var/lib/pgsql/11/data", "", "[global]", - "beta=y", "repo1-block=y", "repo1-bundle=y", "repo1-cipher-pass=zWaf6XtpjIVZC5444yXB+cgFDFl7MxGlgkZSaoPvTGirhPygu4jOKOXf9LO4vjfO", @@ -7677,7 +7908,7 @@ "type" : "exe", "value" : { "output" : [ - "20230320-003954F_20230320-003958D" + "20230522-071101F_20230522-071105D" ] } }, @@ -7705,7 +7936,7 @@ "filter" : true, "filter-context" : 2, "list" : [ - "expire diff backup set 20230320-003954F_20230320-003958D" + "expire diff backup set 20230522-071101F_20230522-071105D" ] }, "host" : "pg-primary", @@ -7718,10 +7949,10 @@ "output" : [ " [filtered 10 lines of output]", "P00 INFO: backup command end: completed successfully", - "P00 INFO: expire command begin 2.45: --beta --exec-id=2377-4ceba337 --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 20230320-003954F_20230320-003958D, 20230320-003954F_20230320-004001I", - "P00 INFO: repo1: remove expired backup 20230320-003954F_20230320-004001I", - "P00 INFO: repo1: remove expired backup 20230320-003954F_20230320-003958D", + "P00 INFO: expire command begin 2.46: --exec-id=2408-0a2fbb02 --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 20230522-071101F_20230522-071105D, 20230522-071101F_20230522-071108I", + "P00 INFO: repo1: remove expired backup 20230522-071101F_20230522-071108I", + "P00 INFO: repo1: remove expired backup 20230522-071101F_20230522-071105D", "P00 INFO: expire command end: completed successfully" ] } @@ -7745,7 +7976,6 @@ "pg1-path=/var/lib/pgsql/11/data", "", "[global]", - "beta=y", "repo1-block=y", "repo1-bundle=y", "repo1-cipher-pass=zWaf6XtpjIVZC5444yXB+cgFDFl7MxGlgkZSaoPvTGirhPygu4jOKOXf9LO4vjfO", @@ -7774,7 +8004,7 @@ "type" : "exe", "value" : { "output" : [ - "20230320-003954F_20230320-004004D" + "20230522-071101F_20230522-071111D" ] } }, @@ -7816,10 +8046,10 @@ "value" : { "output" : [ " [filtered 6 lines of output]", - "P00 INFO: backup stop archive = 000000020000000000000018, lsn = 0/18000050", - "P00 INFO: check archive for segment(s) 000000020000000000000017:000000020000000000000018", - "P00 INFO: new backup label = 20230320-003954F_20230320-004008D", - "P00 INFO: diff backup size = 11.0KB, file total = 952", + "P00 INFO: backup stop archive = 000000020000000000000017, lsn = 0/17000050", + "P00 INFO: check archive for segment(s) 000000020000000000000016:000000020000000000000017", + "P00 INFO: new backup label = 20230522-071101F_20230522-071115D", + "P00 INFO: diff backup size = 10.8KB, file total = 952", "P00 INFO: backup command end: completed successfully", " [filtered 2 lines of output]" ] @@ -7839,7 +8069,7 @@ "type" : "exe", "value" : { "output" : [ - "20230320-003954F_20230320-004008D" + "20230522-071101F_20230522-071115D" ] } }, @@ -7854,7 +8084,7 @@ "filter" : true, "filter-context" : 2, "list" : [ - "archive retention on backup 20230320-003954F_20230320-004004D|remove archive" + "archive retention on backup 20230522-071101F_20230522-071111D|remove archive" ] }, "host" : "pg-primary", @@ -7865,13 +8095,13 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: expire command begin 2.45: --beta --exec-id=2574-73bd2d5b --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: 11-1 archive retention on backup 20230320-003950F, start = 00000002000000000000000B, stop = 00000002000000000000000C", - "P00 DETAIL: repo1: 11-1 archive retention on backup 20230320-003954F, start = 00000002000000000000000D, stop = 00000002000000000000000E", - "P00 DETAIL: repo1: 11-1 archive retention on backup 20230320-003954F_20230320-004004D, start = 000000020000000000000013, stop = 000000020000000000000014", - "P00 DETAIL: repo1: 11-1 archive retention on backup 20230320-003954F_20230320-004008D, start = 000000020000000000000017", - "P00 INFO: repo1: 11-1 remove archive, start = 00000002000000000000000F, stop = 000000020000000000000012", - "P00 INFO: repo1: 11-1 remove archive, start = 000000020000000000000015, stop = 000000020000000000000016", + "P00 INFO: expire command begin 2.46: --exec-id=2607-59896d6f --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: 11-1 archive retention on backup 20230522-071057F, start = 00000002000000000000000B, stop = 00000002000000000000000B", + "P00 DETAIL: repo1: 11-1 archive retention on backup 20230522-071101F, start = 00000002000000000000000C, stop = 00000002000000000000000D", + "P00 DETAIL: repo1: 11-1 archive retention on backup 20230522-071101F_20230522-071111D, start = 000000020000000000000012, stop = 000000020000000000000013", + "P00 DETAIL: repo1: 11-1 archive retention on backup 20230522-071101F_20230522-071115D, start = 000000020000000000000016", + "P00 INFO: repo1: 11-1 remove archive, start = 00000002000000000000000E, stop = 000000020000000000000011", + "P00 INFO: repo1: 11-1 remove archive, start = 000000020000000000000014, stop = 000000020000000000000015", "P00 INFO: expire command end: completed successfully" ] } @@ -8084,7 +8314,7 @@ "type" : "exe", "value" : { "output" : [ - "20230320-003954F_20230320-004017I" + "20230522-071101F_20230522-071124I" ] } }, @@ -8093,7 +8323,7 @@ "bash-wrap" : true, "cmd" : [ "sudo -u postgres pgbackrest --stanza=demo \\", - " --set=20230320-003954F_20230320-004017I info" + " --set=20230522-071101F_20230522-071124I info" ], "highlight" : { "filter" : true, @@ -8112,7 +8342,7 @@ "output" : [ " [filtered 12 lines of output]", " repo1: backup size: 1.8MB", - " backup reference list: 20230320-003954F, 20230320-003954F_20230320-004008D", + " backup reference list: 20230522-071101F, 20230522-071101F_20230522-071115D", " database list: postgres (13090), test1 (32768), test2 (32769)" ] } @@ -8356,7 +8586,7 @@ "type" : "exe", "value" : { "output" : [ - "2023-03-20 00:40:30.698142+00" + "2023-05-22 07:11:36.747045+00" ] } }, @@ -8422,7 +8652,7 @@ "bash-wrap" : true, "cmd" : [ "sudo -u postgres pgbackrest --stanza=demo --delta \\", - " --type=time \"--target=2023-03-20 00:40:30.698142+00\" \\", + " --type=time \"--target=2023-05-22 07:11:36.747045+00\" \\", " --target-action=promote restore" ], "host" : "pg-primary", @@ -8466,9 +8696,9 @@ "type" : "exe", "value" : { "output" : [ - "# Recovery settings generated by pgBackRest restore on 2023-03-20 00:40:32", + "# Recovery settings generated by pgBackRest restore on 2023-05-22 07:11:39", "restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'", - "recovery_target_time = '2023-03-20 00:40:30.698142+00'", + "recovery_target_time = '2023-05-22 07:11:36.747045+00'", "recovery_target_action = 'promote'" ] } @@ -8548,16 +8778,16 @@ "type" : "exe", "value" : { "output" : [ - "LOG: database system was interrupted; last known up at 2023-03-20 00:40:27 UTC", - "LOG: starting point-in-time recovery to 2023-03-20 00:40:30.698142+00", + "LOG: database system was interrupted; last known up at 2023-05-22 07:11:32 UTC", + "LOG: starting point-in-time recovery to 2023-05-22 07:11:36.747045+00", "LOG: restored log file \"00000004.history\" from archive", - "LOG: restored log file \"00000004000000000000001B\" from archive", + "LOG: restored log file \"00000004000000000000001A\" from archive", " [filtered 2 lines of output]", "LOG: database system is ready to accept read only connections", - "LOG: restored log file \"00000004000000000000001C\" from archive", - "LOG: recovery stopping before commit of transaction 578, time 2023-03-20 00:40:32.11458+00", - "LOG: redo done at 0/1C017C50", - "LOG: last completed transaction was at log time 2023-03-20 00:40:29.267464+00", + "LOG: restored log file \"00000004000000000000001B\" from archive", + "LOG: recovery stopping before commit of transaction 578, time 2023-05-22 07:11:38.196418+00", + "LOG: redo done at 0/1B017CF8", + "LOG: last completed transaction was at log time 2023-05-22 07:11:35.303821+00", "LOG: selected new timeline ID: 5", "LOG: archive recovery complete", "LOG: database system is ready to accept connections" @@ -8622,7 +8852,7 @@ "type" : "exe", "value" : { "output" : [ - "20230320-003954F_20230320-004037I" + "20230522-071101F_20230522-071143I" ] } }, @@ -8636,7 +8866,7 @@ "filter" : false, "filter-context" : 2, "list" : [ - "20230320-003954F_20230320-004037I" + "20230522-071101F_20230522-071143I" ] }, "host" : "pg-primary", @@ -8652,47 +8882,47 @@ " cipher: aes-256-cbc", "", " db (current)", - " wal archive min/max (11): 00000002000000000000000B/00000005000000000000001D", + " wal archive min/max (11): 00000002000000000000000B/00000005000000000000001C", "", - " full backup: 20230320-003950F", - " timestamp start/stop: 2023-03-20 00:39:50 / 2023-03-20 00:39:53", - " wal start/stop: 00000002000000000000000B / 00000002000000000000000C", - " database size: 22.7MB, database backup size: 22.7MB", + " full backup: 20230522-071057F", + " timestamp start/stop: 2023-05-22 07:10:57 / 2023-05-22 07:11:00", + " wal start/stop: 00000002000000000000000B / 00000002000000000000000B", + " database size: 22.8MB, database backup size: 22.8MB", " repo1: backup size: 2.7MB", "", - " full backup: 20230320-003954F", - " timestamp start/stop: 2023-03-20 00:39:54 / 2023-03-20 00:39:57", - " wal start/stop: 00000002000000000000000D / 00000002000000000000000E", - " database size: 22.7MB, database backup size: 22.7MB", + " full backup: 20230522-071101F", + " timestamp start/stop: 2023-05-22 07:11:01 / 2023-05-22 07:11:04", + " wal start/stop: 00000002000000000000000C / 00000002000000000000000D", + " database size: 22.8MB, database backup size: 22.8MB", " repo1: backup size: 2.7MB", "", - " diff backup: 20230320-003954F_20230320-004008D", - " timestamp start/stop: 2023-03-20 00:40:08 / 2023-03-20 00:40:10", - " wal start/stop: 000000020000000000000017 / 000000020000000000000018", - " database size: 22.7MB, database backup size: 11.0KB", - " repo1: backup size: 936B", - " backup reference list: 20230320-003954F", + " diff backup: 20230522-071101F_20230522-071115D", + " timestamp start/stop: 2023-05-22 07:11:15 / 2023-05-22 07:11:17", + " wal start/stop: 000000020000000000000016 / 000000020000000000000017", + " database size: 22.8MB, database backup size: 10.8KB", + " repo1: backup size: 952B", + " backup reference list: 20230522-071101F", "", - " incr backup: 20230320-003954F_20230320-004017I", - " timestamp start/stop: 2023-03-20 00:40:17 / 2023-03-20 00:40:20", - " wal start/stop: 00000003000000000000001A / 00000003000000000000001A", - " database size: 37.5MB, database backup size: 15.3MB", + " incr backup: 20230522-071101F_20230522-071124I", + " timestamp start/stop: 2023-05-22 07:11:24 / 2023-05-22 07:11:25", + " wal start/stop: 000000030000000000000019 / 000000030000000000000019", + " database size: 37.6MB, database backup size: 15.3MB", " repo1: backup size: 1.8MB", - " backup reference list: 20230320-003954F, 20230320-003954F_20230320-004008D", + " backup reference list: 20230522-071101F, 20230522-071101F_20230522-071115D", "", - " diff backup: 20230320-003954F_20230320-004026D", - " timestamp start/stop: 2023-03-20 00:40:26 / 2023-03-20 00:40:28", - " wal start/stop: 00000004000000000000001B / 00000004000000000000001B", - " database size: 30.1MB, database backup size: 7.9MB", - " repo1: backup size: 933.8KB", - " backup reference list: 20230320-003954F", + " diff backup: 20230522-071101F_20230522-071132D", + " timestamp start/stop: 2023-05-22 07:11:32 / 2023-05-22 07:11:34", + " wal start/stop: 00000004000000000000001A / 00000004000000000000001A", + " database size: 30.2MB, database backup size: 7.9MB", + " repo1: backup size: 931.4KB", + " backup reference list: 20230522-071101F", "", - " incr backup: 20230320-003954F_20230320-004037I", - " timestamp start/stop: 2023-03-20 00:40:37 / 2023-03-20 00:40:39", - " wal start/stop: 00000005000000000000001D / 00000005000000000000001D", - " database size: 30.1MB, database backup size: 2.1MB", - " repo1: backup size: 26.2KB", - " backup reference list: 20230320-003954F, 20230320-003954F_20230320-004026D" + " incr backup: 20230522-071101F_20230522-071143I", + " timestamp start/stop: 2023-05-22 07:11:43 / 2023-05-22 07:11:45", + " wal start/stop: 00000005000000000000001C / 00000005000000000000001C", + " database size: 30.2MB, database backup size: 2.1MB", + " repo1: backup size: 26.1KB", + " backup reference list: 20230522-071101F, 20230522-071101F_20230522-071132D" ] } }, @@ -8714,8 +8944,8 @@ "bash-wrap" : true, "cmd" : [ "sudo -u postgres pgbackrest --stanza=demo --delta \\", - " --set=20230320-003954F_20230320-004037I \\", - " --type=time \"--target=2023-03-20 00:40:30.698142+00\" --target-action=promote restore" + " --set=20230522-071101F_20230522-071143I \\", + " --type=time \"--target=2023-05-22 07:11:36.747045+00\" --target-action=promote restore" ], "host" : "pg-primary", "load-env" : true, @@ -8812,14 +9042,14 @@ "type" : "exe", "value" : { "output" : [ - "LOG: database system was interrupted; last known up at 2023-03-20 00:40:37 UTC", - "LOG: starting point-in-time recovery to 2023-03-20 00:40:30.698142+00", + "LOG: database system was interrupted; last known up at 2023-05-22 07:11:44 UTC", + "LOG: starting point-in-time recovery to 2023-05-22 07:11:36.747045+00", "LOG: restored log file \"00000005.history\" from archive", - "LOG: restored log file \"00000005000000000000001D\" from archive", - "LOG: redo starts at 0/1D000028", - "LOG: consistent recovery state reached at 0/1D0000F8", + "LOG: restored log file \"00000005000000000000001C\" from archive", + "LOG: redo starts at 0/1C000028", + "LOG: consistent recovery state reached at 0/1C0000F8", "LOG: database system is ready to accept read only connections", - "LOG: redo done at 0/1D0000F8", + "LOG: redo done at 0/1C0000F8", " [filtered 6 lines of output]" ] } @@ -8842,7 +9072,7 @@ "bash-wrap" : true, "cmd" : [ "sudo -u postgres pgbackrest --stanza=demo --delta \\", - " --type=time \"--target=2023-03-20 00:40:30.698142+00\" \\", + " --type=time \"--target=2023-05-22 07:11:36.747045+00\" \\", " --target-action=promote restore" ], "host" : "pg-primary", @@ -8940,16 +9170,16 @@ "type" : "exe", "value" : { "output" : [ - "LOG: database system was interrupted; last known up at 2023-03-20 00:40:27 UTC", - "LOG: starting point-in-time recovery to 2023-03-20 00:40:30.698142+00", + "LOG: database system was interrupted; last known up at 2023-05-22 07:11:32 UTC", + "LOG: starting point-in-time recovery to 2023-05-22 07:11:36.747045+00", "LOG: restored log file \"00000004.history\" from archive", - "LOG: restored log file \"00000004000000000000001B\" from archive", + "LOG: restored log file \"00000004000000000000001A\" from archive", " [filtered 2 lines of output]", "LOG: database system is ready to accept read only connections", - "LOG: restored log file \"00000004000000000000001C\" from archive", - "LOG: recovery stopping before commit of transaction 578, time 2023-03-20 00:40:32.11458+00", - "LOG: redo done at 0/1C017C50", - "LOG: last completed transaction was at log time 2023-03-20 00:40:29.267464+00", + "LOG: restored log file \"00000004000000000000001B\" from archive", + "LOG: recovery stopping before commit of transaction 578, time 2023-05-22 07:11:38.196418+00", + "LOG: redo done at 0/1B017CF8", + "LOG: last completed transaction was at log time 2023-05-22 07:11:35.303821+00", "LOG: restored log file \"00000005.history\" from archive", "LOG: restored log file \"00000006.history\" from archive", " [filtered 3 lines of output]" @@ -8993,7 +9223,6 @@ "pg1-path=/var/lib/pgsql/11/data", "", "[global]", - "beta=y", "process-max=4", "repo1-block=y", "repo1-bundle=y", @@ -9091,16 +9320,16 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: backup command begin 2.45: --beta --exec-id=4353-56705304 --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/11/data --process-max=4 --repo=2 --repo2-azure-account= --repo2-azure-container=demo-container --repo2-azure-key= --repo1-block --repo1-bundle --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.46: --exec-id=4387-8c59ccdf --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/11/data --process-max=4 --repo=2 --repo2-azure-account= --repo2-azure-container=demo-container --repo2-azure-key= --repo1-block --repo1-bundle --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 backup start: backup begins after the requested immediate checkpoint completes", - "P00 INFO: backup start archive = 00000007000000000000001D, lsn = 0/1D000028", + "P00 INFO: backup start archive = 00000007000000000000001C, lsn = 0/1C000028", " [filtered 3 lines of output]", - "P00 INFO: check archive for segment(s) 00000007000000000000001D:00000007000000000000001D", - "P00 INFO: new backup label = 20230320-004050F", - "P00 INFO: full backup size = 30.1MB, file total = 1250", + "P00 INFO: check archive for segment(s) 00000007000000000000001C:00000007000000000000001C", + "P00 INFO: new backup label = 20230522-071157F", + "P00 INFO: full backup size = 30.2MB, file total = 1250", "P00 INFO: backup command end: completed successfully", - "P00 INFO: expire command begin 2.45: --beta --exec-id=4353-56705304 --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.46: --exec-id=4387-8c59ccdf --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" ] } }, @@ -9147,7 +9376,6 @@ "pg1-path=/var/lib/pgsql/11/data", "", "[global]", - "beta=y", "process-max=4", "repo1-block=y", "repo1-bundle=y", @@ -9253,16 +9481,16 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: backup command begin 2.45: --beta --exec-id=4512-692b2373 --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/11/data --process-max=4 --repo=3 --repo2-azure-account= --repo2-azure-container=demo-container --repo2-azure-key= --repo1-block --repo1-bundle --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.46: --exec-id=4546-11600093 --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/11/data --process-max=4 --repo=3 --repo2-azure-account= --repo2-azure-container=demo-container --repo2-azure-key= --repo1-block --repo1-bundle --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 backup start: backup begins after the requested immediate checkpoint completes", - "P00 INFO: backup start archive = 00000007000000000000001F, lsn = 0/1F000028", + "P00 INFO: backup start archive = 00000007000000000000001E, lsn = 0/1E000028", " [filtered 3 lines of output]", - "P00 INFO: check archive for segment(s) 00000007000000000000001F:00000007000000000000001F", - "P00 INFO: new backup label = 20230320-004100F", - "P00 INFO: full backup size = 30.1MB, file total = 1250", + "P00 INFO: check archive for segment(s) 00000007000000000000001E:00000007000000000000001E", + "P00 INFO: new backup label = 20230522-071208F", + "P00 INFO: full backup size = 30.2MB, file total = 1250", "P00 INFO: backup command end: completed successfully", - "P00 INFO: expire command begin 2.45: --beta --exec-id=4512-692b2373 --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.46: --exec-id=4546-11600093 --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" ] } }, @@ -9275,17 +9503,29 @@ "process-max" : { "value" : "4" }, - "repo4-gcs-bucket" : { - "value" : "demo-bucket" - }, - "repo4-gcs-key" : { - "value" : "/etc/pgbackrest/gcs-key.json" + "repo4-bundle" : { + "value" : "y" }, "repo4-path" : { "value" : "/demo-repo" }, + "repo4-sftp-host" : { + "value" : "sftp-server" + }, + "repo4-sftp-host-key-hash-type" : { + "value" : "sha1" + }, + "repo4-sftp-host-user" : { + "value" : "postgres" + }, + "repo4-sftp-private-key-file" : { + "value" : "/var/lib/pgsql/.ssh/id_rsa_sftp" + }, + "repo4-sftp-public-key-file" : { + "value" : "/var/lib/pgsql/.ssh/id_rsa_sftp.pub" + }, "repo4-type" : { - "value" : "gcs" + "value" : "sftp" } } } @@ -9297,7 +9537,6 @@ "pg1-path=/var/lib/pgsql/11/data", "", "[global]", - "beta=y", "process-max=4", "repo1-block=y", "repo1-bundle=y", @@ -9320,10 +9559,206 @@ "repo3-s3-key-secret=verySecretKey1", "repo3-s3-region=us-east-1", "repo3-type=s3", - "repo4-gcs-bucket=demo-bucket", - "repo4-gcs-key=/etc/pgbackrest/gcs-key.json", + "repo4-bundle=y", "repo4-path=/demo-repo", - "repo4-type=gcs", + "repo4-sftp-host=sftp-server", + "repo4-sftp-host-key-hash-type=sha1", + "repo4-sftp-host-user=postgres", + "repo4-sftp-private-key-file=/var/lib/pgsql/.ssh/id_rsa_sftp", + "repo4-sftp-public-key-file=/var/lib/pgsql/.ssh/id_rsa_sftp.pub", + "repo4-type=sftp", + "start-fast=y", + "", + "[global:archive-push]", + "compress-level=3" + ] + } + }, + { + "key" : { + "bash-wrap" : true, + "cmd" : [ + "sudo -u postgres ssh-keygen -f /var/lib/pgsql/.ssh/id_rsa_sftp \\", + " -t rsa -b 4096 -N \"\" -m PEM" + ], + "host" : "pg-primary", + "load-env" : true, + "output" : false, + "run-as-user" : null + }, + "type" : "exe" + }, + { + "key" : { + "bash-wrap" : true, + "cmd" : [ + "sudo -u postgres mkdir -m 750 -p /var/lib/pgsql/.ssh" + ], + "host" : "sftp-server", + "load-env" : true, + "output" : false, + "run-as-user" : null + }, + "type" : "exe" + }, + { + "key" : { + "bash-wrap" : true, + "cmd" : [ + "mkdir -m 750 -p /demo-repo && chown postgres:postgres /demo-repo" + ], + "host" : "sftp-server", + "load-env" : true, + "output" : false, + "run-as-user" : "root" + }, + "type" : "exe" + }, + { + "key" : { + "bash-wrap" : true, + "cmd" : [ + "(sudo ssh root@pg-primary cat /var/lib/pgsql/.ssh/id_rsa_sftp.pub) | \\", + " sudo -u postgres tee -a /var/lib/pgsql/.ssh/authorized_keys" + ], + "host" : "sftp-server", + "load-env" : true, + "output" : false, + "run-as-user" : "root" + }, + "type" : "exe" + }, + { + "key" : { + "bash-wrap" : true, + "cmd" : [ + "sudo -u postgres pgbackrest --stanza=demo --log-level-console=info stanza-create" + ], + "highlight" : { + "filter" : true, + "filter-context" : 2, + "list" : [ + "completed successfully" + ] + }, + "host" : "pg-primary", + "load-env" : true, + "output" : true, + "run-as-user" : null + }, + "type" : "exe", + "value" : { + "output" : [ + " [filtered 6 lines of output]", + "P00 INFO: stanza 'demo' already exists on repo3 and is valid", + "P00 INFO: stanza-create for stanza 'demo' on repo4", + "P00 INFO: stanza-create command end: completed successfully" + ] + } + }, + { + "key" : { + "bash-wrap" : true, + "cmd" : [ + "sudo -u postgres pgbackrest --stanza=demo --repo=4 \\", + " --log-level-console=info backup" + ], + "highlight" : { + "filter" : true, + "filter-context" : 2, + "list" : [ + "no prior backup exists|full backup size" + ] + }, + "host" : "pg-primary", + "load-env" : true, + "output" : true, + "run-as-user" : null + }, + "type" : "exe", + "value" : { + "output" : [ + "P00 INFO: backup command begin 2.46: --exec-id=4705-115cce6b --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/11/data --process-max=4 --repo=4 --repo2-azure-account= --repo2-azure-container=demo-container --repo2-azure-key= --repo1-block --repo1-bundle --repo4-bundle --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo1-path=/var/lib/pgbackrest --repo2-path=/demo-repo --repo3-path=/demo-repo --repo4-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 --repo4-sftp-host=sftp-server --repo4-sftp-host-key-hash-type=sha1 --repo4-sftp-host-user=postgres --repo4-sftp-private-key-file=/var/lib/pgsql/.ssh/id_rsa_sftp --repo4-sftp-public-key-file=/var/lib/pgsql/.ssh/id_rsa_sftp.pub --repo2-type=azure --repo3-type=s3 --repo4-type=sftp --stanza=demo --start-fast", + "P00 WARN: option 'repo4-retention-full' is not set for 'repo4-retention-full-type=count', the repository may run out of space", + " HINT: to retain full backups indefinitely (without warning), set option 'repo4-retention-full' to the maximum.", + "P00 WARN: no prior backup exists, incr backup has been changed to full", + "P00 INFO: execute non-exclusive backup start: backup begins after the requested immediate checkpoint completes", + "P00 INFO: backup start archive = 000000070000000000000020, lsn = 0/20000028", + " [filtered 3 lines of output]", + "P00 INFO: check archive for segment(s) 000000070000000000000020:000000070000000000000020", + "P00 INFO: new backup label = 20230522-071226F", + "P00 INFO: full backup size = 30.2MB, file total = 1250", + "P00 INFO: backup command end: completed successfully", + "P00 INFO: expire command begin 2.46: --exec-id=4705-115cce6b --log-level-console=info --log-level-stderr=off --no-log-timestamp --repo=4 --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 --repo4-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 --repo4-sftp-host=sftp-server --repo4-sftp-host-key-hash-type=sha1 --repo4-sftp-host-user=postgres --repo4-sftp-private-key-file=/var/lib/pgsql/.ssh/id_rsa_sftp --repo4-sftp-public-key-file=/var/lib/pgsql/.ssh/id_rsa_sftp.pub --repo2-type=azure --repo3-type=s3 --repo4-type=sftp --stanza=demo", + "P00 INFO: expire command end: completed successfully" + ] + } + }, + { + "key" : { + "file" : "/etc/pgbackrest/pgbackrest.conf", + "host" : "pg-primary", + "option" : { + "global" : { + "process-max" : { + "value" : "4" + }, + "repo5-gcs-bucket" : { + "value" : "demo-bucket" + }, + "repo5-gcs-key" : { + "value" : "/etc/pgbackrest/gcs-key.json" + }, + "repo5-path" : { + "value" : "/demo-repo" + }, + "repo5-type" : { + "value" : "gcs" + } + } + } + }, + "type" : "cfg-pgbackrest", + "value" : { + "config" : [ + "[demo]", + "pg1-path=/var/lib/pgsql/11/data", + "", + "[global]", + "process-max=4", + "repo1-block=y", + "repo1-bundle=y", + "repo1-cipher-pass=zWaf6XtpjIVZC5444yXB+cgFDFl7MxGlgkZSaoPvTGirhPygu4jOKOXf9LO4vjfO", + "repo1-cipher-type=aes-256-cbc", + "repo1-path=/var/lib/pgbackrest", + "repo1-retention-diff=2", + "repo1-retention-full=2", + "repo2-azure-account=pgbackrest", + "repo2-azure-container=demo-container", + "repo2-azure-key=YXpLZXk=", + "repo2-path=/demo-repo", + "repo2-retention-full=4", + "repo2-type=azure", + "repo3-path=/demo-repo", + "repo3-retention-full=4", + "repo3-s3-bucket=demo-bucket", + "repo3-s3-endpoint=s3.us-east-1.amazonaws.com", + "repo3-s3-key=accessKey1", + "repo3-s3-key-secret=verySecretKey1", + "repo3-s3-region=us-east-1", + "repo3-type=s3", + "repo4-bundle=y", + "repo4-path=/demo-repo", + "repo4-sftp-host=sftp-server", + "repo4-sftp-host-key-hash-type=sha1", + "repo4-sftp-host-user=postgres", + "repo4-sftp-private-key-file=/var/lib/pgsql/.ssh/id_rsa_sftp", + "repo4-sftp-public-key-file=/var/lib/pgsql/.ssh/id_rsa_sftp.pub", + "repo4-type=sftp", + "repo5-gcs-bucket=demo-bucket", + "repo5-gcs-key=/etc/pgbackrest/gcs-key.json", + "repo5-path=/demo-repo", + "repo5-type=gcs", "start-fast=y", "", "[global:archive-push]", @@ -9365,7 +9800,7 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: stop command begin 2.45: --beta --exec-id=4625-25496c11 --log-level-console=info --log-level-stderr=off --no-log-timestamp --stanza=demo", + "P00 INFO: stop command begin 2.46: --exec-id=4834-23548fa5 --log-level-console=info --log-level-stderr=off --no-log-timestamp --stanza=demo", "P00 INFO: stop command end: completed successfully" ] } @@ -9392,7 +9827,7 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: stanza-delete command begin 2.45: --beta --exec-id=4652-8b838ec1 --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/11/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.46: --exec-id=4861-1391c23b --log-level-console=info --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/11/data --repo=1 --repo2-azure-account= --repo2-azure-container=demo-container --repo2-azure-key= --repo1-cipher-pass= --repo1-cipher-type=aes-256-cbc --repo5-gcs-bucket=demo-bucket --repo5-gcs-key= --repo1-path=/var/lib/pgbackrest --repo2-path=/demo-repo --repo3-path=/demo-repo --repo4-path=/demo-repo --repo5-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 --repo4-sftp-host=sftp-server --repo4-sftp-host-key-hash-type=sha1 --repo4-sftp-host-user=postgres --repo4-sftp-private-key-file=/var/lib/pgsql/.ssh/id_rsa_sftp --repo4-sftp-public-key-file=/var/lib/pgsql/.ssh/id_rsa_sftp.pub --repo2-type=azure --repo3-type=s3 --repo4-type=sftp --repo5-type=gcs --stanza=demo", "P00 INFO: stanza-delete command end: completed successfully" ] } @@ -9421,7 +9856,7 @@ }, "type" : "host", "value" : { - "ip" : "172.17.0.6" + "ip" : "172.17.0.7" } }, { @@ -9454,7 +9889,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "sudo yum install postgresql-libs" + "sudo yum install postgresql-libs libssh2" ], "cmd-extra" : "-y 2>&1", "host" : "repository", @@ -9468,7 +9903,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "sudo scp build:/build/pgbackrest-release-2.45/src/pgbackrest /usr/bin" + "sudo scp build:/build/pgbackrest-release-2.46/src/pgbackrest /usr/bin" ], "cmd-extra" : "2>&1", "host" : "repository", @@ -10242,18 +10677,18 @@ " cipher: none", "", " db (current)", - " wal archive min/max (11): 000000080000000000000025/000000080000000000000027", + " wal archive min/max (11): 000000080000000000000027/000000080000000000000029", "", - " full backup: 20230320-004210F", - " timestamp start/stop: 2023-03-20 00:42:10 / 2023-03-20 00:42:14", - " wal start/stop: 000000080000000000000025 / 000000080000000000000025", - " database size: 30.1MB, database backup size: 30.1MB", + " full backup: 20230522-071417F", + " timestamp start/stop: 2023-05-22 07:14:17 / 2023-05-22 07:14:21", + " wal start/stop: 000000080000000000000027 / 000000080000000000000027", + " database size: 30.2MB, database backup size: 30.2MB", " repo1: backup set size: 3.6MB, backup size: 3.6MB", "", - " full backup: 20230320-004216F", - " timestamp start/stop: 2023-03-20 00:42:16 / 2023-03-20 00:42:19", - " wal start/stop: 000000080000000000000026 / 000000080000000000000027", - " database size: 30.1MB, database backup size: 30.1MB", + " full backup: 20230522-071423F", + " timestamp start/stop: 2023-05-22 07:14:23 / 2023-05-22 07:14:27", + " wal start/stop: 000000080000000000000028 / 000000080000000000000029", + " database size: 30.2MB, database backup size: 30.2MB", " repo1: backup set size: 3.6MB, backup size: 3.6MB" ] } @@ -10395,14 +10830,14 @@ }, "type" : "host", "value" : { - "ip" : "172.17.0.7" + "ip" : "172.17.0.8" } }, { "key" : { "bash-wrap" : true, "cmd" : [ - "sudo yum install postgresql-libs" + "sudo yum install postgresql-libs libssh2" ], "cmd-extra" : "-y 2>&1", "host" : "pg-standby", @@ -10416,7 +10851,7 @@ "key" : { "bash-wrap" : true, "cmd" : [ - "sudo scp build:/build/pgbackrest-release-2.45/src/pgbackrest /usr/bin" + "sudo scp build:/build/pgbackrest-release-2.46/src/pgbackrest /usr/bin" ], "cmd-extra" : "2>&1", "host" : "pg-standby", @@ -10769,7 +11204,7 @@ "type" : "exe", "value" : { "output" : [ - "# Recovery settings generated by pgBackRest restore on 2023-03-20 00:43:08", + "# Recovery settings generated by pgBackRest restore on 2023-05-22 07:15:23", "restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'", "standby_mode = 'on'" ] @@ -10885,13 +11320,13 @@ "type" : "exe", "value" : { "output" : [ - "LOG: database system was interrupted; last known up at 2023-03-20 00:42:16 UTC", + "LOG: database system was interrupted; last known up at 2023-05-22 07:14:23 UTC", "LOG: entering standby mode", "LOG: restored log file \"00000008.history\" from archive", - "LOG: restored log file \"000000080000000000000026\" from archive", - "LOG: redo starts at 0/26000028", - "LOG: restored log file \"000000080000000000000027\" from archive", - "LOG: consistent recovery state reached at 0/27000050", + "LOG: restored log file \"000000080000000000000028\" from archive", + "LOG: redo starts at 0/28000028", + "LOG: restored log file \"000000080000000000000029\" from archive", + "LOG: consistent recovery state reached at 0/29000050", "LOG: database system is ready to accept read only connections" ] } @@ -10971,9 +11406,9 @@ "type" : "exe", "value" : { "output" : [ - " pg_switch_wal | current_timestamp ", - "---------------+-------------------------------", - " 0/2801AD40 | 2023-03-20 00:43:13.418946+00", + " pg_switch_wal | current_timestamp ", + "---------------+------------------------------", + " 0/2A01ADE0 | 2023-05-22 07:15:28.25673+00", "(1 row)" ] } @@ -11002,7 +11437,7 @@ "output" : [ " message | current_timestamp ", "----------------+-------------------------------", - " Important Data | 2023-03-20 00:43:15.379395+00", + " Important Data | 2023-05-22 07:15:30.233857+00", "(1 row)" ] } @@ -11028,7 +11463,7 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: check command begin 2.45: --exec-id=1314-f150c6bf --log-level-console=info --log-level-file=detail --log-level-stderr=off --no-log-timestamp --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: check command begin 2.46: --exec-id=1330-15279990 --log-level-console=info --log-level-file=detail --log-level-stderr=off --no-log-timestamp --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: check repo1 (standby)", "P00 INFO: switch wal not performed because this is a standby", "P00 INFO: check command end: completed successfully" @@ -11059,7 +11494,7 @@ "bash-wrap" : true, "cmd" : [ "sudo -u postgres sh -c 'echo \\", - " \"host replication replicator 172.17.0.7/32 md5\" \\", + " \"host replication replicator 172.17.0.8/32 md5\" \\", " >> /var/lib/pgsql/11/data/pg_hba.conf'" ], "host" : "pg-primary", @@ -11089,7 +11524,7 @@ "option" : { "demo" : { "recovery-option" : { - "value" : "primary_conninfo=host=172.17.0.5 port=5432 user=replicator" + "value" : "primary_conninfo=host=172.17.0.6 port=5432 user=replicator" } } } @@ -11099,7 +11534,7 @@ "config" : [ "[demo]", "pg1-path=/var/lib/pgsql/11/data", - "recovery-option=primary_conninfo=host=172.17.0.5 port=5432 user=replicator", + "recovery-option=primary_conninfo=host=172.17.0.6 port=5432 user=replicator", "", "[global]", "log-level-file=detail", @@ -11121,7 +11556,7 @@ "bash-wrap" : true, "cmd" : [ "sudo -u postgres sh -c 'echo \\", - " \"172.17.0.5:*:replication:replicator:jw8s0F4\" \\", + " \"172.17.0.6:*:replication:replicator:jw8s0F4\" \\", " >> /var/lib/pgsql/.pgpass'" ], "host" : "pg-standby", @@ -11184,8 +11619,8 @@ "type" : "exe", "value" : { "output" : [ - "# Recovery settings generated by pgBackRest restore on 2023-03-20 00:43:18", - "primary_conninfo = 'host=172.17.0.5 port=5432 user=replicator'", + "# Recovery settings generated by pgBackRest restore on 2023-05-22 07:15:33", + "primary_conninfo = 'host=172.17.0.6 port=5432 user=replicator'", "restore_command = 'pgbackrest --stanza=demo archive-get %f \"%p\"'", "standby_mode = 'on'" ] @@ -11275,8 +11710,8 @@ "output" : [ " [filtered 7 lines of output]", "LOG: database system is ready to accept read only connections", - "LOG: restored log file \"000000080000000000000028\" from archive", - "LOG: started streaming WAL from primary at 0/29000000 on timeline 8" + "LOG: restored log file \"00000008000000000000002A\" from archive", + "LOG: started streaming WAL from primary at 0/2B000000 on timeline 8" ] } }, @@ -11308,7 +11743,7 @@ "output" : [ " message | current_timestamp ", "----------------+-------------------------------", - " Important Data | 2023-03-20 00:43:23.167124+00", + " Important Data | 2023-05-22 07:15:38.240173+00", "(1 row)" ] } @@ -11337,7 +11772,7 @@ "output" : [ " message | current_timestamp ", "----------------+-------------------------------", - " Important Data | 2023-03-20 00:43:23.435956+00", + " Important Data | 2023-05-22 07:15:38.609104+00", "(1 row)" ] } @@ -11478,7 +11913,7 @@ "config" : [ "[demo]", "pg1-path=/var/lib/pgsql/11/data", - "recovery-option=primary_conninfo=host=172.17.0.5 port=5432 user=replicator", + "recovery-option=primary_conninfo=host=172.17.0.6 port=5432 user=replicator", "", "[global]", "archive-async=y", @@ -11586,10 +12021,10 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: check command begin 2.45: --exec-id=5686-3863f998 --log-level-console=info --log-level-file=detail --log-level-stderr=off --no-log-timestamp --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: check command begin 2.46: --exec-id=5898-f1dcb584 --log-level-console=info --log-level-file=detail --log-level-stderr=off --no-log-timestamp --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: check repo1 configuration (primary)", "P00 INFO: check repo1 archive for WAL (primary)", - "P00 INFO: WAL segment 00000008000000000000002E successfully archived to '/var/lib/pgbackrest/archive/demo/11-1/0000000800000000/00000008000000000000002E-5c8d049dff0bec6ed1197632722e3da3a5bae448.gz' on repo1", + "P00 INFO: WAL segment 000000080000000000000030 successfully archived to '/var/lib/pgbackrest/archive/demo/11-1/0000000800000000/000000080000000000000030-c88c76b1d034f39a697b2aa6e8c1dd1a3a0e0cc5.gz' on repo1", "P00 INFO: check command end: completed successfully" ] } @@ -11616,26 +12051,26 @@ "value" : { "output" : [ "-------------------PROCESS START-------------------", - "P00 INFO: archive-push:async command begin 2.45: [/var/lib/pgsql/11/data/pg_wal] --archive-async --exec-id=5655-ac1d7c8f --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/11/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 INFO: archive-push:async command begin 2.46: [/var/lib/pgsql/11/data/pg_wal] --archive-async --exec-id=5868-503aefa9 --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/11/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: 00000008000000000000002B", + "P01 DETAIL: pushed WAL file '00000008000000000000002B' 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.45: [/var/lib/pgsql/11/data/pg_wal] --archive-async --exec-id=5688-5894f44b --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/11/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: 00000008000000000000002A...00000008000000000000002D", - "P01 DETAIL: pushed WAL file '00000008000000000000002A' to the archive", - "P02 DETAIL: pushed WAL file '00000008000000000000002B' to the archive", - "P01 DETAIL: pushed WAL file '00000008000000000000002C' to the archive", + "P00 INFO: archive-push:async command begin 2.46: [/var/lib/pgsql/11/data/pg_wal] --archive-async --exec-id=5900-2da0dbf6 --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/11/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: 00000008000000000000002C...00000008000000000000002F", "P02 DETAIL: pushed WAL file '00000008000000000000002D' to the archive", + "P01 DETAIL: pushed WAL file '00000008000000000000002C' to the archive", + "P02 DETAIL: pushed WAL file '00000008000000000000002E' to the archive", + "P01 DETAIL: pushed WAL file '00000008000000000000002F' 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.45: [/var/lib/pgsql/11/data/pg_wal] --archive-async --exec-id=5696-41f49095 --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/11/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: 00000008000000000000002E", - "P01 DETAIL: pushed WAL file '00000008000000000000002E' to the archive", + "P00 INFO: archive-push:async command begin 2.46: [/var/lib/pgsql/11/data/pg_wal] --archive-async --exec-id=5908-72a9bbb4 --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/11/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: 000000080000000000000030", + "P01 DETAIL: pushed WAL file '000000080000000000000030' 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" ] @@ -11676,25 +12111,25 @@ "value" : { "output" : [ "-------------------PROCESS START-------------------", - "P00 INFO: archive-get:async command begin 2.45: [000000080000000000000026, 000000080000000000000027, 000000080000000000000028, 000000080000000000000029, 00000008000000000000002A, 00000008000000000000002B, 00000008000000000000002C, 00000008000000000000002D] --archive-async --exec-id=1857-5f559961 --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/11/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: 000000080000000000000026...00000008000000000000002D", - "P01 DETAIL: found 000000080000000000000026 in the repo1: 11-1 archive", - "P02 DETAIL: found 000000080000000000000027 in the repo1: 11-1 archive", + "P00 INFO: archive-get:async command begin 2.46: [000000080000000000000028, 000000080000000000000029, 00000008000000000000002A, 00000008000000000000002B, 00000008000000000000002C, 00000008000000000000002D, 00000008000000000000002E, 00000008000000000000002F] --archive-async --exec-id=1877-8bdf5179 --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/11/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: 000000080000000000000028...00000008000000000000002F", "P01 DETAIL: found 000000080000000000000028 in the repo1: 11-1 archive", - "P00 DETAIL: unable to find 000000080000000000000029 in the archive", + "P02 DETAIL: found 000000080000000000000029 in the repo1: 11-1 archive", + "P01 DETAIL: found 00000008000000000000002A in the repo1: 11-1 archive", + "P00 DETAIL: unable to find 00000008000000000000002B 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.45: [000000080000000000000029, 00000008000000000000002A, 00000008000000000000002B, 00000008000000000000002C, 00000008000000000000002D, 00000008000000000000002E, 00000008000000000000002F, 000000080000000000000030] --archive-async --exec-id=1904-e26bebee --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/11/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: 000000080000000000000029...000000080000000000000030", - "P01 DETAIL: found 000000080000000000000029 in the repo1: 11-1 archive", - "P02 DETAIL: found 00000008000000000000002A in the repo1: 11-1 archive", + "P00 INFO: archive-get:async command begin 2.46: [00000008000000000000002B, 00000008000000000000002C, 00000008000000000000002D, 00000008000000000000002E, 00000008000000000000002F, 000000080000000000000030, 000000080000000000000031, 000000080000000000000032] --archive-async --exec-id=1925-a893587d --log-level-console=off --log-level-file=detail --log-level-stderr=off --no-log-timestamp --pg1-path=/var/lib/pgsql/11/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: 00000008000000000000002B...000000080000000000000032", "P01 DETAIL: found 00000008000000000000002B in the repo1: 11-1 archive", "P02 DETAIL: found 00000008000000000000002C in the repo1: 11-1 archive", - "P01 DETAIL: found 00000008000000000000002D in the repo1: 11-1 archive", "P02 DETAIL: found 00000008000000000000002E in the repo1: 11-1 archive", - "P00 DETAIL: unable to find 00000008000000000000002F in the archive", + "P01 DETAIL: found 00000008000000000000002D in the repo1: 11-1 archive", + "P01 DETAIL: found 000000080000000000000030 in the repo1: 11-1 archive", + "P02 DETAIL: found 00000008000000000000002F in the repo1: 11-1 archive", + "P00 DETAIL: unable to find 000000080000000000000031 in the archive", "P00 DETAIL: statistics: {\"socket.client\":{\"total\":1},\"socket.session\":{\"total\":1},\"tls.client\":{\"total\":1},\"tls.session\":{\"total\":1}}", - " [filtered 7 lines of output]" + " [filtered 14 lines of output]" ] } }, @@ -11802,20 +12237,20 @@ "output" : [ " [filtered 2 lines of output]", "P00 INFO: execute non-exclusive backup start: backup begins after the requested immediate checkpoint completes", - "P00 INFO: backup start archive = 000000080000000000000030, lsn = 0/30000028", - "P00 INFO: wait for replay on the standby to reach 0/30000028", - "P00 INFO: replay on the standby reached 0/30000028", - "P00 INFO: check archive for prior segment 00000008000000000000002F", - "P01 DETAIL: backup file pg-primary:/var/lib/pgsql/11/data/global/pg_control (8KB, 0.35%) checksum bc68e59887a39b844fb2fe3bb7d3987a669fae1e", - "P02 DETAIL: backup file pg-standby:/var/lib/pgsql/11/data/base/13090/2608 (448KB, 20.12%) checksum 3d3ba4b79938f34bb431f12947117447448e3fe8", - "P03 DETAIL: backup file pg-standby:/var/lib/pgsql/11/data/base/13090/1249 (392KB, 37.42%) checksum 370f08256a15998b54f9454003620b4bb92b1719", - "P04 DETAIL: backup file pg-standby:/var/lib/pgsql/11/data/base/13090/2674 (368KB, 53.66%) checksum f252b519694e673ddcb296c2c8cf23486fee8a33", - "P01 DETAIL: backup file pg-primary:/var/lib/pgsql/11/data/log/postgresql.log (5.6KB, 53.91%) checksum 2c6947c784862525e43e37a0cd3bee0d473f3a83", - "P01 DETAIL: backup file pg-primary:/var/lib/pgsql/11/data/pg_hba.conf (4.2KB, 54.10%) checksum 12abee43e7eabfb3ff6239f3fc9bc3598293557d", - "P01 DETAIL: backup file pg-primary:/var/lib/pgsql/11/data/current_logfiles (26B, 54.10%) checksum 78a9f5c10960f0d91fcd313937469824861795a2", - "P01 DETAIL: backup file pg-primary:/var/lib/pgsql/11/data/pg_logical/replorigin_checkpoint (8B, 54.10%) checksum 347fc8f2df71bd4436e38bd1516ccd7ea0d46532", - "P02 DETAIL: backup file pg-standby:/var/lib/pgsql/11/data/base/13090/2673 (320KB, 68.22%) checksum 2173a629dc4cfcfd04aa44ab5a33a9a0f72b3b73", - "P03 DETAIL: backup file pg-standby:/var/lib/pgsql/11/data/base/13090/2658 (112KB, 73.16%) checksum 5f695dec4d61cbe6a3e0dd25daa7a5ae6caa515b", + "P00 INFO: backup start archive = 000000080000000000000032, lsn = 0/32000028", + "P00 INFO: wait for replay on the standby to reach 0/32000028", + "P00 INFO: replay on the standby reached 0/32000028", + "P00 INFO: check archive for prior segment 000000080000000000000031", + "P01 DETAIL: backup file pg-primary:/var/lib/pgsql/11/data/log/postgresql.log (11KB, 0.48%) checksum 2bef2dd4507052c5ab8b1812b8da46df14f211fb", + "P02 DETAIL: backup file pg-standby:/var/lib/pgsql/11/data/base/13090/2608 (448KB, 20.06%) checksum a2efc3aea9306abb1a349d504ffa02886deb2dfe", + "P03 DETAIL: backup file pg-standby:/var/lib/pgsql/11/data/base/13090/1249 (392KB, 37.20%) checksum 86de308c9ecc1d8ba27d400a8f73e57eebcd0274", + "P04 DETAIL: backup file pg-standby:/var/lib/pgsql/11/data/base/13090/2674 (368KB, 53.29%) checksum 16b5b111d7332a201af1e532d75339b26785e9de", + "P01 DETAIL: backup file pg-primary:/var/lib/pgsql/11/data/global/pg_control (8KB, 53.64%) checksum 048b1bd32d3f314c968ce5e3b73f263479b163f3", + "P01 DETAIL: backup file pg-primary:/var/lib/pgsql/11/data/pg_hba.conf (4.2KB, 53.82%) checksum 13e45749bf9da31a1abaf998ad5fe419b219bbcb", + "P01 DETAIL: backup file pg-primary:/var/lib/pgsql/11/data/current_logfiles (26B, 53.83%) checksum 78a9f5c10960f0d91fcd313937469824861795a2", + "P01 DETAIL: backup file pg-primary:/var/lib/pgsql/11/data/pg_logical/replorigin_checkpoint (8B, 53.83%) checksum 347fc8f2df71bd4436e38bd1516ccd7ea0d46532", + "P02 DETAIL: backup file pg-standby:/var/lib/pgsql/11/data/base/13090/2673 (336KB, 68.52%) checksum ba78c2cb852bfd4490404a46480c9c6a1bc88a48", + "P03 DETAIL: backup file pg-standby:/var/lib/pgsql/11/data/base/13090/2658 (112KB, 73.41%) checksum 0af35361edf4220f8d71c8055ea55441df317c29", " [filtered 1257 lines of output]" ] } @@ -12002,7 +12437,7 @@ "config" : [ "[demo]", "pg1-path=/var/lib/pgsql/12/data", - "recovery-option=primary_conninfo=host=172.17.0.5 port=5432 user=replicator", + "recovery-option=primary_conninfo=host=172.17.0.6 port=5432 user=replicator", "", "[global]", "archive-async=y", @@ -12114,7 +12549,7 @@ "type" : "exe", "value" : { "output" : [ - "P00 INFO: stanza-upgrade command begin 2.45: --exec-id=6209-79c041b2 --log-level-console=info --log-level-file=detail --log-level-stderr=off --no-log-timestamp --no-online --pg1-path=/var/lib/pgsql/12/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.46: --exec-id=6421-6f7b7c25 --log-level-console=info --log-level-file=detail --log-level-stderr=off --no-log-timestamp --no-online --pg1-path=/var/lib/pgsql/12/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" ] diff --git a/doc/resource/git-history.cache b/doc/resource/git-history.cache index b815c467c..058156542 100644 --- a/doc/resource/git-history.cache +++ b/doc/resource/git-history.cache @@ -1,4 +1,287 @@ [ + { + "commit": "a28b72c62431bcf9df02791219d9d6f5d0e60b54", + "date": "2023-05-18 09:32:44 +0300", + "subject": "Add warning about using recovery type=none." + }, + { + "commit": "c61115e8adccd17d8afb6bd527fb6a396ec6b72a", + "date": "2023-05-15 17:46:41 +0300", + "subject": "Add bundling and block incremental to stress testing.", + "body": "This makes the stress testing more robust and provides additional testing for important features." + }, + { + "commit": "87087fac231d2110160b3219daee3f9fb91aec02", + "date": "2023-05-13 19:16:16 +0300", + "subject": "SFTP support for repository storage." + }, + { + "commit": "0c1f823e7a3abf1cadb44de3832ec1ddb2da7ec8", + "date": "2023-05-12 15:46:04 +0300", + "subject": "Add note about running stanza-create on already-created repositories." + }, + { + "commit": "c7ac17330405510e56243e967d108b8d3b387ce0", + "date": "2023-05-10 09:22:26 +0300", + "subject": "Increase check timeouts in real/all integration tests.", + "body": "The prior timeouts were a bit aggressive and were causing timeouts in the Azure tests. There have also been occasional timeouts in other storage drivers.\n\nThe performance of CI environments is pretty variable so increased timeouts should make the tests more stable." + }, + { + "commit": "2fc641383709ce1f91f35bb1edf4e7c1ab0f4eb3", + "date": "2023-05-06 12:16:58 +0300", + "subject": "Fix typos in test titles." + }, + { + "commit": "6f250bf6860054397181f5678220faaa6574993e", + "date": "2023-05-06 12:15:21 +0300", + "subject": "Fix groupId type in StorageInfo.", + "body": "gid_t is the correct type but there was no bug because uid_t and gid_t have the same underlying type." + }, + { + "commit": "ad9196cb49ce86cef678e453046803fb2be2cf70", + "date": "2023-05-05 10:08:49 +0300", + "subject": "Update Debian user guide to build on Ubuntu 20.04.", + "body": "Ubuntu 18.04 will be EOL at the end of the month so update to a newer version." + }, + { + "commit": "023d3c99d8d00497501b21fb20b07f71ea49ee40", + "date": "2023-05-04 08:52:31 +0300", + "subject": "Fix incorrect commit hash in 2f322e2a." + }, + { + "commit": "2f322e2a49f20ff3036db6382363efb40246922e", + "date": "2023-05-03 09:49:24 +0300", + "subject": "Add efac3474 (remove double spacing) to .git-blame-ignore-revs." + }, + { + "commit": "d49907239eb37c3e4e905f97543824181a1bd406", + "date": "2023-05-03 09:37:59 +0300", + "subject": "Remove double spaces missed in 1bd5530a." + }, + { + "commit": "efac3474cffc4f01154c13cc358601c4c98bcd42", + "date": "2023-05-02 12:59:20 +0300", + "subject": "Add 1bd5530a (remove double spacing) to .git-blame-ignore-revs." + }, + { + "commit": "1bd5530a59cd8ddbabc279802d1ede4f8fbd5314", + "date": "2023-05-02 12:57:12 +0300", + "subject": "Remove double spaces from comments and documentation.", + "body": "Double spaces have fallen out of favor in recent years because they no longer contribute to readability.\n\nWe have been using single spaces and editing related paragraphs for some time, but now it seems best to update the remaining instances to avoid churn in unrelated commits and to make it clearer what spacing contributors should use." + }, + { + "commit": "5ea7b91bf9ab57a29778d2332c0971e84f14c4c6", + "date": "2023-05-02 12:07:28 +0300", + "subject": "Remove extraneous space from error messages." + }, + { + "commit": "9637d9449091632f158f8e2be8afbad4bda200fc", + "date": "2023-05-02 09:37:42 +0300", + "subject": "Use boolean variant constants where possible instead of redeclaring." + }, + { + "commit": "822f2a584260a012b833455a7a2bd1c8487e3010", + "date": "2023-05-01 19:26:48 +0300", + "subject": "Finalize block incremental feature.", + "body": "Remove beta status and update documentation to remove beta references and warnings.\r\n\r\nThe repo-block-* sub-options have been marked internal. Most users will be best off with the default behavior and we may still decide to change these options for remove them in the future." + }, + { + "commit": "c510046dd77c40487d2d6c659834927a3bab1106", + "date": "2023-05-01 14:27:56 +0300", + "subject": "Remove extraneous spaces in user guide." + }, + { + "commit": "dd4e52679ecdc43539bd038b5aa9bd4ff9055cbf", + "date": "2023-04-27 23:29:12 +0300", + "subject": "Removing chunking and block numbers from incremental block list.", + "body": "These were intended to allow the block list to be scanned without reading the map but were never utilized. They were left in \"just in case\" and because they did not seem to be doing any harm.\r\n\r\nIn fact, it is better not to have the block numbers because this allows us set the block size at a future time as long as it is a factor of the super block size. One way this could be useful is to store older files without super blocks or a map in the full backup and then build a map for them if the file gets modified in a diff/incr backup. This would require reading the file from the full backup to build the map but it would be more space efficient and we could make more intelligent decisions about block size. It would also be possible to change the block size even if one had already been selected in a prior backup.\r\n\r\nOmitting the block numbers makes the chunking unnecessary since there is now no way to make sense of the block list without the map. Also, we might want to build maps for unchunked block lists, i.e. files that were copied normally." + }, + { + "commit": "3fc3690dd77ef5fa032abb006558184164db53ec", + "date": "2023-04-27 10:30:50 +0300", + "subject": "PostgreSQL 16 support.", + "body": "Add catalog version and WAL magic for PostgreSQL 16.\r\n\r\nThe GUC to force parallel mode has be renamed so update that in the tests." + }, + { + "commit": "39059dc4e7a74e6473099eefeed4e9e0efe65e60", + "date": "2023-04-26 15:00:36 +0300", + "subject": "Remove extra linefeed." + }, + { + "commit": "3ff88ffbb495fd669e9a361478e60192930ee0a1", + "date": "2023-04-25 11:52:28 +0300", + "subject": "Avoid chown() on recovery files during restore.", + "body": "The chown() was already skipped on the files restored from the repository but the same logic was not applied to the generated recovery files, probably because chown'ing a few recovery files does not have performance implications. Use the same logic for recovery files to determined if they need to be chown'd.\r\n\r\nUltimately this behavior is pretty hard to test, so add a fail safe into the Posix driver that will skip chown if the permissions are already as required." + }, + { + "commit": "750ab8e55c276fa0127d19961a59fec254e24c61", + "date": "2023-04-21 16:21:10 +0300", + "subject": "Add MacOS back to CirrusCI.", + "body": "9e29c01 removed MacOS testing due to breaking changes in the update to arm on the platform.\n\nUpdate the scripts to correctly work with the version of Homebrew deployed with the arm images." + }, + { + "commit": "23d7d67d4961c9bb38d73ef1c409369303276846", + "date": "2023-04-21 15:08:59 +0300", + "subject": "Fix missing void parameter." + }, + { + "commit": "f5e6bc26983396ec51c6579aade37db39807f3a5", + "date": "2023-04-20 13:24:12 +0300", + "subject": "Allow page header checks to be skipped.", + "body": "These checks cause false negatives for page checksum verification when the page is encrypted because pd_upper might end up as 0 in the encrypted data. This issue is rare but reproducible given a large enough cluster.\r\n\r\nMake these checks optional, but leave them enabled by default." + }, + { + "commit": "8240eb5da57d2950ebbd3492c163b4e0151d3cb7", + "date": "2023-04-16 17:41:27 +0300", + "subject": "Autogenerate PostgreSQL versions.", + "body": "This will make adding/removing versions of PostgreSQL more reliable." + }, + { + "commit": "a05bf6bb15ba7f7e4b610dbb84e87ebcd359dd38", + "date": "2023-04-16 17:32:24 +0300", + "subject": "Rename PG_VERSION_*_STR constants to PG_VERSION_*_Z.", + "body": "This is more consistent with other zero-terminated string constants and also has the benefit of being shorter." + }, + { + "commit": "75254c9285e70913920af9ab6e9f362bc4d11d7d", + "date": "2023-04-11 16:28:29 +0400", + "subject": "Parameterize configLoad() as cfgLoadP().", + "body": "There is one existing optional parameter and there are more to come." + }, + { + "commit": "d6cb3de17afff0a9c57f312455a5ca3cf202cba6", + "date": "2023-04-11 14:50:59 +0400", + "subject": "Update command/check module to recent coding standards.", + "body": "Add const as appropriate and remove an unneeded declaration." + }, + { + "commit": "a9c5cd9749f6b5ae1005453b1039d91f37fb245b", + "date": "2023-04-11 12:46:00 +0400", + "subject": "Update command/backup module to recent coding standards.", + "body": "Add const as appropriate and avoid setting results to NULL if the result will definitely be set later on." + }, + { + "commit": "f33e1cfb1600643820a1ae76bdeb15c62ac1fcc7", + "date": "2023-04-06 11:38:18 +0400", + "subject": "Add error retry detail for HTTP retries.", + "body": "This should make it clearer when retries have happened and for how long." + }, + { + "commit": "df419b34b55a15a902ff5cc1912aaebc7e023738", + "date": "2023-04-06 11:03:46 +0400", + "subject": "Improve retry error messages.", + "body": "Centralize the code to allow it to be used in more places and update the protocol/server module to use the new code.\n\nSince the time measurements make testing difficult, also add time and errorRetry harnesses to allow specific data to be used for testing. In the case of errorRetry, the production behavior is turned off by default during testing and only enabled for the errorRetry test module." + }, + { + "commit": "801e396dace2a4d9f4125ef0e751c90dc0cc644a", + "date": "2023-04-06 10:38:49 +0400", + "subject": "Move error modules to common/error directory.", + "body": "There are already enough files to warrant a separate directory and more are coming.\n\nAlso remove extraneous includes." + }, + { + "commit": "ff98636e41b8ad14babe1e9fa1fdc15aad2244cd", + "date": "2023-04-06 08:22:14 +0400", + "subject": "Update 32-bit CI host to Debian 10 from Ubuntu 18.04.", + "body": "Ubuntu 18.04 will be EOL before the next release, so update to the oldest available Debian version.\n\nAlso fix one incorrect return value type, a test cast, and adjust some test timeouts." + }, + { + "commit": "a9f39857cf7d8c0eda9f5f19f3d4c9497d4d47f2", + "date": "2023-04-05 11:24:53 +0400", + "subject": "Remove unused strOS parameter in Common::HostTest." + }, + { + "commit": "8f7f73e4af916bf1bc6a0cb72be35b7061b297df", + "date": "2023-03-30 17:46:25 +0500", + "subject": "Sleep using nanosleep() instead of select().", + "body": "This is a safer way to sleep due to select's not-portable interaction with signals.\n\nBased on https://git.postgresql.org/gitweb/?p=postgresql.git;a=commitdiff;h=a948e49e2ef11815be0b211723bfc5b53b7f75a8 from the PostgreSQL project." + }, + { + "commit": "2cfbee903a0a16d1fdeca52dbf6e775cdcddcc74", + "date": "2023-03-30 15:43:37 +0500", + "subject": "Use Buffer object for page buffer in PageChecksum filter.", + "body": "This avoids the object needing to support allocations." + }, + { + "commit": "3dbf518c3a9df538ca110039758fbfe161e3f714", + "date": "2023-03-30 14:50:46 +0500", + "subject": "Convert XmlNode from allocation to object.", + "body": "This makes memory accounting more accurate and objects that use Xml no longer need to allow allocations." + }, + { + "commit": "047472144b5fd92425225700aa11b351044244e5", + "date": "2023-03-30 14:42:20 +0500", + "subject": "Remove allocations from common crypto module.", + "body": "The allocations are better done with a struct and Buffer object." + }, + { + "commit": "84ca7b9b2713b6d36d15d592e78942d8e1ac8a35", + "date": "2023-03-30 11:42:22 +0500", + "subject": "Cleanup for objects that do not require allocations.", + "body": "A lot of these are left over from when object interfaces required allocations (changed in f6e30736 and 9ca9c8e4). Others are likely copy/paste errors.\n\nThis saves some space in the mem context and makes it clear that no allocations will be made." + }, + { + "commit": "fe0fd71be2e9754491cbbdcde79e7a7cc87f2e7b", + "date": "2023-03-30 10:00:58 +0500", + "subject": "Convert the result of zNewFmt() into an object.", + "body": "The result is not intended to be freed directly so this makes memory tracking more accurate. Fix a few places where memory was leaking after a call to zNewFmt().\n\nAlso update an assert to make it clearer." + }, + { + "commit": "295b53e8453b4ac4889b62bc1c7f1d6b78b09421", + "date": "2023-03-28 16:24:43 +0600", + "subject": "Update Github actions to new versions.", + "body": "These updates remove various deprecation warnings." + }, + { + "commit": "b111599badccb1c196a224e3d6ac8657b8d172a2", + "date": "2023-03-28 15:05:18 +0600", + "subject": "Simplify object creation with OBJ_NEW_BEGIN() macro.", + "body": "Eliminate the boilerplate of declaring this and assigning memory to it, which is the same for the vast majority of object creations.\n\nKeep the old version of the macro as OBJ_NEW_BASE_BEGIN() for a few exceptions in the core code and (mostly) in the tests." + }, + { + "commit": "91f9301b9d0026ee72875d943e0ed01b14ec887b", + "date": "2023-03-27 16:42:35 +0600", + "subject": "Fix command/manifest unit test title." + }, + { + "commit": "9ca9c8e4c97b60a4cceef1c6f9fcb93e413e15d7", + "date": "2023-03-27 14:32:37 +0600", + "subject": "Improve interface handling in remaining modules.", + "body": "As in f6e30736, make the interface object the parent of the driver object rather than the interface being allocated directly in the driver object. Allow exceptions to this general rule for objects that need to retain ownership of their interfaces." + }, + { + "commit": "5f001248cce08137a601ce5671aa67d26bfdd366", + "date": "2023-03-25 14:59:47 +0700", + "subject": "Fix indentation in config.yaml." + }, + { + "commit": "8ff956ad7e8608dd7582825521105c289b249810", + "date": "2023-03-25 14:07:31 +0700", + "subject": "Add lock module initialization.", + "body": "Each call to lockAcquireP() passed enough information to initialize the lock system. This was somewhat inefficient and as locks become more complicated it will lead to more code duplication. Since a process can only take one type of lock it makes sense to do most of the initialization up front.\n\nAlso reduce the log level of lockRelease() since it is only called at exit and the lock will be released in any case." + }, + { + "commit": "f1caecc4ff38557cf81314738ac83d420d8bcf23", + "date": "2023-03-24 10:34:42 +0800", + "subject": "Convert lockAcquire() to lockAcquireP().", + "body": "This makes a few current parameters optional and allows for more optional parameters with less code churn." + }, + { + "commit": "c8ec114c8cb392d227fa267c62d11cc6b4fb9677", + "date": "2023-03-21 12:29:45 +0800", + "subject": "Add reference filter and output to manifest command.", + "body": "This allows the file list to be filtered by reference. The reference is output when it is not the default reference for the backup." + }, + { + "commit": "1807bfcff5550bb40fa4f92dee1e15580a0b752d", + "date": "2023-03-21 12:22:47 +0800", + "subject": "Clear buffer limit when buffer is limited to allocated size.", + "body": "This minor optimization automatically clears the limit flag when limit is set to allocated size. This has no impact on the current code but will simplify a future commit where a conditional bufLimitClear() is being used." + }, + { + "commit": "5b5786c082b698e637bd44b9f06fbca5e4e4cc21", + "date": "2023-03-20 10:25:44 +0800", + "subject": "Begin v2.46 development." + }, { "commit": "6ad79d16ca638b7ccdc81b5530a39007b8e01aed", "date": "2023-03-20 09:37:23 +0800", diff --git a/doc/xml/auto/metric-coverage-report.auto.xml b/doc/xml/auto/metric-coverage-report.auto.xml index f91fe5902..233d6ff3c 100644 --- a/doc/xml/auto/metric-coverage-report.auto.xml +++ b/doc/xml/auto/metric-coverage-report.auto.xml @@ -2,7 +2,7 @@ build/common 17/17 (100.0%) 38/38 (100.0%) - 208/208 (100.0%) + 206/206 (100.0%) @@ -28,9 +28,9 @@ build/postgres - 6/6 (100.0%) - 52/52 (100.0%) - 123/123 (100.0%) + 8/8 (100.0%) + 60/60 (100.0%) + 151/151 (100.0%) @@ -58,28 +58,28 @@ command/archive/get 9/9 (100.0%) 196/196 (100.0%) - 469/469 (100.0%) + 468/468 (100.0%) command/archive/push 12/12 (100.0%) 132/132 (100.0%) - 411/411 (100.0%) + 410/410 (100.0%) command/backup 50/50 (100.0%) - 754/754 (100.0%) - 1851/1851 (100.0%) + 758/758 (100.0%) + 1834/1834 (100.0%) command/check 8/8 (100.0%) 62/62 (100.0%) - 137/137 (100.0%) + 136/136 (100.0%) @@ -133,9 +133,9 @@ command/restore - 33/33 (100.0%) - 688/688 (100.0%) - 1419/1419 (100.0%) + 34/34 (100.0%) + 684/684 (100.0%) + 1430/1430 (100.0%) @@ -161,9 +161,9 @@ common - 183/183 (100.0%) - 692/692 (100.0%) - 2117/2117 (100.0%) + 154/154 (100.0%) + 640/640 (100.0%) + 1972/1972 (100.0%) @@ -177,105 +177,112 @@ common/compress/bz2 13/13 (100.0%) 20/20 (100.0%) - 180/180 (100.0%) + 173/173 (100.0%) common/compress/gz 13/13 (100.0%) 26/26 (100.0%) - 182/182 (100.0%) + 174/174 (100.0%) common/compress/lz4 15/15 (100.0%) 24/24 (100.0%) - 186/186 (100.0%) + 179/179 (100.0%) common/compress/zst 13/13 (100.0%) 12/12 (100.0%) - 153/153 (100.0%) + 146/146 (100.0%) common/crypto 32/32 (100.0%) 88/88 (100.0%) - 555/555 (100.0%) + 540/540 (100.0%) + + + + common/error + 32/32 (100.0%) + 54/54 (100.0%) + 166/166 (100.0%) common/io - 60/60 (100.0%) - 182/182 (100.0%) - 768/768 (100.0%) + 58/58 (100.0%) + 174/174 (100.0%) + 724/724 (100.0%) common/io/filter - 35/35 (100.0%) - 106/106 (100.0%) - 453/453 (100.0%) + 31/31 (100.0%) + 92/92 (100.0%) + 385/385 (100.0%) common/io/http 47/47 (100.0%) 248/248 (100.0%) - 722/722 (100.0%) + 706/706 (100.0%) common/io/socket 22/22 (100.0%) 34/34 (100.0%) - 291/291 (100.0%) + 282/282 (100.0%) common/io/tls 34/34 (100.0%) 98/98 (100.0%) - 518/518 (100.0%) + 509/509 (100.0%) common/type - 321/321 (100.0%) - 844/844 (100.0%) - 4179/4179 (100.0%) + 320/320 (100.0%) + 846/846 (100.0%) + 4136/4136 (100.0%) config 86/86 (100.0%) - 930/930 (100.0%) - 1772/1772 (100.0%) + 934/934 (100.0%) + 1775/1775 (100.0%) db 24/24 (100.0%) 116/116 (100.0%) - 444/444 (100.0%) + 442/442 (100.0%) info 92/92 (100.0%) 932/932 (100.0%) - 2482/2482 (100.0%) + 2470/2470 (100.0%) postgres 32/32 (100.0%) 110/110 (100.0%) - 394/394 (100.0%) + 392/392 (100.0%) @@ -288,22 +295,22 @@ protocol 55/55 (100.0%) - 230/230 (100.0%) - 979/979 (100.0%) + 228/228 (100.0%) + 962/962 (100.0%) storage 53/53 (100.0%) 226/226 (100.0%) - 813/813 (100.0%) + 805/805 (100.0%) storage/azure 25/25 (100.0%) 110/110 (100.0%) - 531/531 (100.0%) + 525/525 (100.0%) @@ -317,33 +324,40 @@ storage/gcs 32/32 (100.0%) 116/116 (100.0%) - 659/659 (100.0%) + 653/653 (100.0%) storage/posix - 26/26 (100.0%) - 159/160 (99.38%) - 482/482 (100.0%) + 28/28 (100.0%) + 167/168 (99.40%) + 483/483 (100.0%) storage/remote 35/35 (100.0%) 118/118 (100.0%) - 809/809 (100.0%) + 802/802 (100.0%) storage/s3 30/30 (100.0%) 142/142 (100.0%) - 724/724 (100.0%) + 718/718 (100.0%) + + + + storage/sftp + 24/24 (100.0%) + 336/336 (100.0%) + 621/621 (100.0%) TOTAL - 1574/1574 (100.0%) - 9575/9576 (99.99%) - 29471/29471 (100.0%) + 1599/1599 (100.0%) + 9911/9912 (99.99%) + 29835/29835 (100.0%) \ No newline at end of file diff --git a/doc/xml/release.xml b/doc/xml/release.xml index d85f0a898..3905b4fd5 100644 --- a/doc/xml/release.xml +++ b/doc/xml/release.xml @@ -14,7 +14,7 @@ - + diff --git a/meson.build b/meson.build index ea36c9870..7378ebba5 100644 --- a/meson.build +++ b/meson.build @@ -4,7 +4,7 @@ project( 'pgbackrest', ['c'], - version: '2.46dev', + version: '2.46', license: 'MIT', meson_version: '>=0.45', default_options: [ diff --git a/src/build/configure.ac b/src/build/configure.ac index 212f659fa..5a1618a0b 100644 --- a/src/build/configure.ac +++ b/src/build/configure.ac @@ -1,7 +1,7 @@ # Initialize configuration # ---------------------------------------------------------------------------------------------------------------------------------- AC_PREREQ([2.71]) -AC_INIT([pgBackRest], [2.46dev]) +AC_INIT([pgBackRest], [2.46]) AC_CONFIG_SRCDIR([version.h]) AC_CONFIG_AUX_DIR(build) diff --git a/src/configure b/src/configure index 4ebc9925b..90d594acc 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.71 for pgBackRest 2.46dev. +# Generated by GNU Autoconf 2.71 for pgBackRest 2.46. # # # Copyright (C) 1992-1996, 1998-2017, 2020-2021 Free Software Foundation, @@ -607,8 +607,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='pgBackRest' PACKAGE_TARNAME='pgbackrest' -PACKAGE_VERSION='2.46dev' -PACKAGE_STRING='pgBackRest 2.46dev' +PACKAGE_VERSION='2.46' +PACKAGE_STRING='pgBackRest 2.46' PACKAGE_BUGREPORT='' PACKAGE_URL='' @@ -1272,7 +1272,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.46dev to adapt to many kinds of systems. +\`configure' configures pgBackRest 2.46 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1319,7 +1319,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of pgBackRest 2.46dev:";; + short | recursive ) echo "Configuration of pgBackRest 2.46:";; esac cat <<\_ACEOF @@ -1414,7 +1414,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -pgBackRest configure 2.46dev +pgBackRest configure 2.46 generated by GNU Autoconf 2.71 Copyright (C) 2021 Free Software Foundation, Inc. @@ -1570,7 +1570,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.46dev, which was +It was created by pgBackRest $as_me 2.46, which was generated by GNU Autoconf 2.71. Invocation command line was $ $0$ac_configure_args_raw @@ -4930,7 +4930,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.46dev, which was +This file was extended by pgBackRest $as_me 2.46, which was generated by GNU Autoconf 2.71. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -4994,7 +4994,7 @@ ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config='$ac_cs_config_escaped' ac_cs_version="\\ -pgBackRest config.status 2.46dev +pgBackRest config.status 2.46 configured by $0, generated by GNU Autoconf 2.71, with options \\"\$ac_cs_config\\" @@ -5698,4 +5698,4 @@ if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then printf "%s\n" "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} fi -# Generated from src/build/configure.ac sha1 60bcd5099f8e4bfc1e900636b46fc25312c9729f +# Generated from src/build/configure.ac sha1 3c8e146142446b04fb8455821fee2a2221536e7d diff --git a/src/version.h b/src/version.h index c908d3c41..ad9535b07 100644 --- a/src/version.h +++ b/src/version.h @@ -33,6 +33,6 @@ will be invalid unless migration functions are written. /*********************************************************************************************************************************** Software version ***********************************************************************************************************************************/ -#define PROJECT_VERSION "2.46dev" +#define PROJECT_VERSION "2.46" #endif diff --git a/test/code-count/file-type.yaml b/test/code-count/file-type.yaml index 7a04ab1dd..13dda1d57 100644 --- a/test/code-count/file-type.yaml +++ b/test/code-count/file-type.yaml @@ -879,6 +879,14 @@ src/common/error/error.h: class: core type: c/h +src/common/error/retry.c: + class: core + type: c + +src/common/error/retry.h: + class: core + type: c/h + src/common/exec.c: class: core type: c @@ -1579,6 +1587,10 @@ src/postgres/meson.build: class: build type: meson +src/postgres/version.auto.h: + class: core/auto + type: c/h + src/postgres/version.h: class: core type: c/h @@ -2083,6 +2095,10 @@ test/lib/pgBackRestTest/Env/Host/HostS3Test.pm: class: test/harness type: perl +test/lib/pgBackRestTest/Env/Host/HostSftpTest.pm: + class: test/harness + type: perl + test/lib/pgBackRestTest/Env/HostEnvTest.pm: class: test/harness type: perl @@ -2187,6 +2203,14 @@ test/src/common/harnessError.h: class: test/harness type: c/h +test/src/common/harnessErrorRetry.c: + class: test/harness + type: c + +test/src/common/harnessErrorRetry.h: + class: test/harness + type: c/h + test/src/common/harnessFork.h: class: test/harness type: c/h @@ -2199,19 +2223,19 @@ test/src/common/harnessInfo.h: class: test/harness type: c/h -test/src/common/harnessIo.c: +test/src/common/harnessLibSsh2.c: class: test/harness type: c -test/src/common/harnessIo.h: +test/src/common/harnessLibSsh2.h: class: test/harness type: c/h -test/src/common/harnessLibssh2.c: +test/src/common/harnessLock.c: class: test/harness type: c -test/src/common/harnessLibssh2.h: +test/src/common/harnessLock.h: class: test/harness type: c/h @@ -2287,6 +2311,10 @@ test/src/common/harnessPostgres/harness150.c: class: test/harness type: c +test/src/common/harnessPostgres/harness160.c: + class: test/harness + type: c + test/src/common/harnessPostgres/harnessVersion.intern.h: class: test/harness type: c/h @@ -2315,6 +2343,14 @@ test/src/common/harnessServer.h: class: test/harness type: c/h +test/src/common/harnessSocket.c: + class: test/harness + type: c + +test/src/common/harnessSocket.h: + class: test/harness + type: c/h + test/src/common/harnessStackTrace.c: class: test/harness type: c @@ -2351,6 +2387,14 @@ test/src/common/harnessTest.intern.h: class: test/harness type: c/h +test/src/common/harnessTime.c: + class: test/harness + type: c + +test/src/common/harnessTime.h: + class: test/harness + type: c/h + test/src/config/load.c: class: test/harness type: c @@ -2499,6 +2543,10 @@ test/src/module/common/encodeTest.c: class: test/module type: c +test/src/module/common/errorRetryTest.c: + class: test/module + type: c + test/src/module/common/errorTest.c: class: test/module type: c