pgsql: Pre branch pgindent / pgperltidy run
Pre branch pgindent / pgperltidy run Along the way make a slight adjustment to src/include/utils/queryjumble.h to avoid an unused typedef. Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/e1c1c30f635390b6a3ae4993e8cac213a33e6e3f Modified Files -- src/backend/access/heap/hio.c| 4 +-- src/backend/catalog/genbki.pl| 10 src/backend/catalog/heap.c | 2 +- src/backend/executor/nodeModifyTable.c | 21 src/backend/replication/logical/reorderbuffer.c | 4 +-- src/backend/replication/logical/tablesync.c | 2 +- src/backend/replication/pgoutput/pgoutput.c | 3 ++- src/backend/storage/ipc/procarray.c | 2 +- src/bin/pgbench/t/001_pgbench_with_server.pl | 6 ++--- src/include/nodes/execnodes.h| 2 +- src/include/utils/queryjumble.h | 4 +-- src/test/perl/PostgresNode.pm| 4 +-- src/test/recovery/t/005_replay_delay.pl | 32 src/test/recovery/t/025_stuck_on_old_timeline.pl | 20 +-- src/test/subscription/t/001_rep_changes.pl | 23 +++-- src/test/subscription/t/010_truncate.pl | 9 +++ src/test/subscription/t/013_partition.pl | 3 ++- src/test/subscription/t/020_messages.pl | 9 --- src/tools/pgindent/typedefs.list | 10 +--- 19 files changed, 94 insertions(+), 76 deletions(-)
pgsql: Branch REL_14_STABLE was created
Branch REL_14_STABLE was created. View: https://git.postgresql.org/pg/shortlog/refs/heads/REL_14_STABLE
pgsql: Stamp HEAD as 15devel.
Stamp HEAD as 15devel. Let the hacking begin ... Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/596b5af1d3675b58d4018acd64217e2f627da3e4 Modified Files -- configure| 18 +- configure.ac |2 +- doc/src/sgml/filelist.sgml |2 +- doc/src/sgml/release-14.sgml | 4034 -- doc/src/sgml/release-15.sgml | 16 + doc/src/sgml/release.sgml|2 +- src/tools/git_changelog |2 +- src/tools/version_stamp.pl |2 +- 8 files changed, 30 insertions(+), 4048 deletions(-)
pgsql: Add pgindent commit to git-blame-ignore-revs file.
Add pgindent commit to git-blame-ignore-revs file. Add entry for recent commit e1c1c30f. Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/ba135fa537ab5c2fca0d589c826ebb3ecf98b2f1 Modified Files -- .git-blame-ignore-revs | 5 - 1 file changed, 4 insertions(+), 1 deletion(-)
Re: pgsql: Add pgindent commit to git-blame-ignore-revs file.
On 6/28/21 12:26 PM, Peter Geoghegan wrote: > Add pgindent commit to git-blame-ignore-revs file. > > Add entry for recent commit e1c1c30f. > Hmm, did I miss something or do we need to update some instructions somewhere? cheers andrew -- Andrew Dunstan EDB: https://www.enterprisedb.com
Re: pgsql: Pre branch pgindent / pgperltidy run
On Mon, Jun 28, 2021 at 8:08 AM Andrew Dunstan wrote: > Pre branch pgindent / pgperltidy run We recently started maintaining a file that lists ignorable commits -- commits that git-blame ignores to produce more helpful output (when an individual hacker opts in). See: https://postgr.es/m/CAH2-Wz=cVh3GHTP6SdLU-Gnmt2zRdF8vZkcrFdSzXQ=whbw...@mail.gmail.com I went ahead and committed a new entry into .git-blame-ignore-revs for this pgindent commit just now. Probably something that you should do in passing next time. Thanks -- Peter Geoghegan
Re: pgsql: Add pgindent commit to git-blame-ignore-revs file.
On Mon, Jun 28, 2021 at 9:31 AM Andrew Dunstan wrote: > Hmm, did I miss something or do we need to update some instructions > somewhere? (Responded on the other committers thread just now too.) I did update the instructions in commit 8e638845, but perhaps I omitted to update something. What do you think? -- Peter Geoghegan
pgsql: Don't depend on -fwrapv semantics in pgbench's random() function
Don't depend on -fwrapv semantics in pgbench's random() function. Instead use the common/int.h functions to check for integer overflow in a more C-standard-compliant fashion. This is motivated by recent failures on buildfarm member moonjelly, where it appears that development-tip gcc is optimizing without regard to the -fwrapv switch. Presumably that's a gcc bug that will be fixed soon, but we might as well install cleaner coding here rather than wait. (This does not address the question of whether we'll ever be able to get rid of using -fwrapv. Testing shows that this spot is the only place where doing so creates visible regression test failures, but unfortunately that proves very little.) Back-patch to v12. The common/int.h functions exist in v11, but that branch doesn't use them in any client-side code. I judge that this case isn't interesting enough in the real world to take even a small risk of issues from being the first such use. Tom Lane and Fabien Coelho Discussion: https://postgr.es/m/73927.1624815...@sss.pgh.pa.us Branch -- REL_14_STABLE Details --- https://git.postgresql.org/pg/commitdiff/203c5aaaba56715168c1e80a45d4929120c9281b Modified Files -- src/bin/pgbench/pgbench.c | 8 +--- 1 file changed, 5 insertions(+), 3 deletions(-)
pgsql: Don't depend on -fwrapv semantics in pgbench's random() function
Don't depend on -fwrapv semantics in pgbench's random() function. Instead use the common/int.h functions to check for integer overflow in a more C-standard-compliant fashion. This is motivated by recent failures on buildfarm member moonjelly, where it appears that development-tip gcc is optimizing without regard to the -fwrapv switch. Presumably that's a gcc bug that will be fixed soon, but we might as well install cleaner coding here rather than wait. (This does not address the question of whether we'll ever be able to get rid of using -fwrapv. Testing shows that this spot is the only place where doing so creates visible regression test failures, but unfortunately that proves very little.) Back-patch to v12. The common/int.h functions exist in v11, but that branch doesn't use them in any client-side code. I judge that this case isn't interesting enough in the real world to take even a small risk of issues from being the first such use. Tom Lane and Fabien Coelho Discussion: https://postgr.es/m/73927.1624815...@sss.pgh.pa.us Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/01697e92a460b10fde43707b29391c8deb69573e Modified Files -- src/bin/pgbench/pgbench.c | 8 +--- 1 file changed, 5 insertions(+), 3 deletions(-)
pgsql: Don't depend on -fwrapv semantics in pgbench's random() function
Don't depend on -fwrapv semantics in pgbench's random() function. Instead use the common/int.h functions to check for integer overflow in a more C-standard-compliant fashion. This is motivated by recent failures on buildfarm member moonjelly, where it appears that development-tip gcc is optimizing without regard to the -fwrapv switch. Presumably that's a gcc bug that will be fixed soon, but we might as well install cleaner coding here rather than wait. (This does not address the question of whether we'll ever be able to get rid of using -fwrapv. Testing shows that this spot is the only place where doing so creates visible regression test failures, but unfortunately that proves very little.) Back-patch to v12. The common/int.h functions exist in v11, but that branch doesn't use them in any client-side code. I judge that this case isn't interesting enough in the real world to take even a small risk of issues from being the first such use. Tom Lane and Fabien Coelho Discussion: https://postgr.es/m/73927.1624815...@sss.pgh.pa.us Branch -- REL_12_STABLE Details --- https://git.postgresql.org/pg/commitdiff/3fd334795e268ad49a48bde8fdba69b9a19f08cb Modified Files -- src/bin/pgbench/pgbench.c | 8 +--- 1 file changed, 5 insertions(+), 3 deletions(-)
pgsql: Don't depend on -fwrapv semantics in pgbench's random() function
Don't depend on -fwrapv semantics in pgbench's random() function. Instead use the common/int.h functions to check for integer overflow in a more C-standard-compliant fashion. This is motivated by recent failures on buildfarm member moonjelly, where it appears that development-tip gcc is optimizing without regard to the -fwrapv switch. Presumably that's a gcc bug that will be fixed soon, but we might as well install cleaner coding here rather than wait. (This does not address the question of whether we'll ever be able to get rid of using -fwrapv. Testing shows that this spot is the only place where doing so creates visible regression test failures, but unfortunately that proves very little.) Back-patch to v12. The common/int.h functions exist in v11, but that branch doesn't use them in any client-side code. I judge that this case isn't interesting enough in the real world to take even a small risk of issues from being the first such use. Tom Lane and Fabien Coelho Discussion: https://postgr.es/m/73927.1624815...@sss.pgh.pa.us Branch -- REL_13_STABLE Details --- https://git.postgresql.org/pg/commitdiff/be567deb3ac952e41edc81b8c08a0dc6115c5f62 Modified Files -- src/bin/pgbench/pgbench.c | 8 +--- 1 file changed, 5 insertions(+), 3 deletions(-)
Re: pgsql: Add pgindent commit to git-blame-ignore-revs file.
On 2021-Jun-28, Peter Geoghegan wrote: > On Mon, Jun 28, 2021 at 9:31 AM Andrew Dunstan wrote: > > Hmm, did I miss something or do we need to update some instructions > > somewhere? > > (Responded on the other committers thread just now too.) > > I did update the instructions in commit 8e638845, but perhaps I > omitted to update something. What do you think? I think it would be useful to have the "git log" instructions in src/tools/RELEASE_CHANGES, not just in the .git-blame-ignore-revs file itself. ... and now that I look at running that command, I notice that the date format it generates for me is different from what it did for you: e1c1c30f635390b6a3ae4993e8cac213a33e6e3f # Mon Jun 28 11:05:54 2021 -0400 # Pre branch pgindent / pgperltidy run This is what you committed: +e1c1c30f635390b6a3ae4993e8cac213a33e6e3f # 2021-06-28 11:05:54 -0400 +# Pre branch pgindent / pgperltidy run Is it worth documenting whatever is causing the output to be this? I'm sure many of us would be bothered if the date format was not always the same in future entries. -- Álvaro Herrera Valdivia, Chile "Linux transformó mi computadora, de una `máquina para hacer cosas', en un aparato realmente entretenido, sobre el cual cada día aprendo algo nuevo" (Jaime Salinas)
Re: pgsql: Add pgindent commit to git-blame-ignore-revs file.
Peter Geoghegan writes: > On Mon, Jun 28, 2021 at 9:31 AM Andrew Dunstan wrote: >> Hmm, did I miss something or do we need to update some instructions >> somewhere? > I did update the instructions in commit 8e638845, but perhaps I > omitted to update something. What do you think? The instructions for "Starting a New Development Cycle" perhaps need a specific "see src/tools/pgindent/README". I'd be inclined to remove the separate mention of .git-blame-ignore-revs from "Pre-Beta Tasks", too. If you didn't read pgindent/README you might miss more than just this. regards, tom lane
Re: pgsql: Add pgindent commit to git-blame-ignore-revs file.
On Mon, Jun 28, 2021 at 9:43 AM Alvaro Herrera wrote: > ... and now that I look at running that command, I notice that the date > format it generates for me is different from what it did for you: This is because our global git configs differ. > Is it worth documenting whatever is causing the output to be this? > I'm sure many of us would be bothered if the date format was not always > the same in future entries. I handled this in passing by making the instructions specify "--date=iso", just for consistency. It's now: git log --pretty=format:"%H # %cd %n# %s" $PGINDENTGITHASH -1 --date=iso This shows the pgindent-commit author's timestamp in the author's own timezone, plus ISO format. I believe that this addresses your concern. I'll consider the question of changing exactly how things are documented and hook into the release process separately, in my response to Tom. -- Peter Geoghegan
pgsql: Don't use abort(3) in libpq's fe-print.c.
Don't use abort(3) in libpq's fe-print.c. Causing a core dump on out-of-memory seems pretty unfriendly, and surely is far outside the expected behavior of a general-purpose library. Just print an error message (as we did already) and return. These functions unfortunately don't have an error return convention, but code using them is probably just looking for a quick-n-dirty print method and wouldn't bother to check anyway. Although these functions are semi-deprecated, it still seems appropriate to back-patch this. In passing, also back-patch b90e6cef1, just to reduce cosmetic differences between the branches. Discussion: https://postgr.es/m/3122443.1624735...@sss.pgh.pa.us Branch -- REL_13_STABLE Details --- https://git.postgresql.org/pg/commitdiff/1603deca34ef403fc40d471ba6512d9f170ba7b5 Modified Files -- src/interfaces/libpq/fe-print.c | 81 - 1 file changed, 47 insertions(+), 34 deletions(-)
pgsql: Don't use abort(3) in libpq's fe-print.c.
Don't use abort(3) in libpq's fe-print.c. Causing a core dump on out-of-memory seems pretty unfriendly, and surely is far outside the expected behavior of a general-purpose library. Just print an error message (as we did already) and return. These functions unfortunately don't have an error return convention, but code using them is probably just looking for a quick-n-dirty print method and wouldn't bother to check anyway. Although these functions are semi-deprecated, it still seems appropriate to back-patch this. In passing, also back-patch b90e6cef1, just to reduce cosmetic differences between the branches. Discussion: https://postgr.es/m/3122443.1624735...@sss.pgh.pa.us Branch -- REL_12_STABLE Details --- https://git.postgresql.org/pg/commitdiff/240d56fc4351a6729ec9ddf94a3d338a1e4868ab Modified Files -- src/interfaces/libpq/fe-print.c | 81 - 1 file changed, 47 insertions(+), 34 deletions(-)
pgsql: Don't use abort(3) in libpq's fe-print.c.
Don't use abort(3) in libpq's fe-print.c. Causing a core dump on out-of-memory seems pretty unfriendly, and surely is far outside the expected behavior of a general-purpose library. Just print an error message (as we did already) and return. These functions unfortunately don't have an error return convention, but code using them is probably just looking for a quick-n-dirty print method and wouldn't bother to check anyway. Although these functions are semi-deprecated, it still seems appropriate to back-patch this. In passing, also back-patch b90e6cef1, just to reduce cosmetic differences between the branches. Discussion: https://postgr.es/m/3122443.1624735...@sss.pgh.pa.us Branch -- REL_14_STABLE Details --- https://git.postgresql.org/pg/commitdiff/cf1f545bf281d3dcb7b44e6b7f21a9369024fbf0 Modified Files -- src/interfaces/libpq/fe-print.c | 81 - 1 file changed, 47 insertions(+), 34 deletions(-)
pgsql: Don't use abort(3) in libpq's fe-print.c.
Don't use abort(3) in libpq's fe-print.c. Causing a core dump on out-of-memory seems pretty unfriendly, and surely is far outside the expected behavior of a general-purpose library. Just print an error message (as we did already) and return. These functions unfortunately don't have an error return convention, but code using them is probably just looking for a quick-n-dirty print method and wouldn't bother to check anyway. Although these functions are semi-deprecated, it still seems appropriate to back-patch this. In passing, also back-patch b90e6cef1, just to reduce cosmetic differences between the branches. Discussion: https://postgr.es/m/3122443.1624735...@sss.pgh.pa.us Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/6f5d9bce57a7bb29ba61f0bf4fd465a26de9fc28 Modified Files -- src/interfaces/libpq/fe-print.c | 81 - 1 file changed, 47 insertions(+), 34 deletions(-)
pgsql: Don't use abort(3) in libpq's fe-print.c.
Don't use abort(3) in libpq's fe-print.c. Causing a core dump on out-of-memory seems pretty unfriendly, and surely is far outside the expected behavior of a general-purpose library. Just print an error message (as we did already) and return. These functions unfortunately don't have an error return convention, but code using them is probably just looking for a quick-n-dirty print method and wouldn't bother to check anyway. Although these functions are semi-deprecated, it still seems appropriate to back-patch this. In passing, also back-patch b90e6cef1, just to reduce cosmetic differences between the branches. Discussion: https://postgr.es/m/3122443.1624735...@sss.pgh.pa.us Branch -- REL9_6_STABLE Details --- https://git.postgresql.org/pg/commitdiff/b54be47cdc2d225d8134b197edae9c075146e76d Modified Files -- src/interfaces/libpq/fe-print.c | 85 - 1 file changed, 49 insertions(+), 36 deletions(-)
pgsql: Don't use abort(3) in libpq's fe-print.c.
Don't use abort(3) in libpq's fe-print.c. Causing a core dump on out-of-memory seems pretty unfriendly, and surely is far outside the expected behavior of a general-purpose library. Just print an error message (as we did already) and return. These functions unfortunately don't have an error return convention, but code using them is probably just looking for a quick-n-dirty print method and wouldn't bother to check anyway. Although these functions are semi-deprecated, it still seems appropriate to back-patch this. In passing, also back-patch b90e6cef1, just to reduce cosmetic differences between the branches. Discussion: https://postgr.es/m/3122443.1624735...@sss.pgh.pa.us Branch -- REL_10_STABLE Details --- https://git.postgresql.org/pg/commitdiff/06a2b2fe55807c120b1e27bc6043244518c7de65 Modified Files -- src/interfaces/libpq/fe-print.c | 85 - 1 file changed, 49 insertions(+), 36 deletions(-)
pgsql: Don't use abort(3) in libpq's fe-print.c.
Don't use abort(3) in libpq's fe-print.c. Causing a core dump on out-of-memory seems pretty unfriendly, and surely is far outside the expected behavior of a general-purpose library. Just print an error message (as we did already) and return. These functions unfortunately don't have an error return convention, but code using them is probably just looking for a quick-n-dirty print method and wouldn't bother to check anyway. Although these functions are semi-deprecated, it still seems appropriate to back-patch this. In passing, also back-patch b90e6cef1, just to reduce cosmetic differences between the branches. Discussion: https://postgr.es/m/3122443.1624735...@sss.pgh.pa.us Branch -- REL_11_STABLE Details --- https://git.postgresql.org/pg/commitdiff/34c24e5a4337abf9d385558f6beaafb92d3a919d Modified Files -- src/interfaces/libpq/fe-print.c | 85 - 1 file changed, 49 insertions(+), 36 deletions(-)
Re: pgsql: Add pgindent commit to git-blame-ignore-revs file.
On Mon, Jun 28, 2021 at 9:47 AM Tom Lane wrote: > The instructions for "Starting a New Development Cycle" perhaps need > a specific "see src/tools/pgindent/README". I'd be inclined to > remove the separate mention of .git-blame-ignore-revs from "Pre-Beta > Tasks", too. If you didn't read pgindent/README you might miss > more than just this. How about the approach taken in the attached patch? I think that leaving the snippet on adding new entries to the file at the top of the file is the right approach. I haven't changed that. I do point this out explicitly, though. -- Peter Geoghegan 0001-Improve-.git-blame-ignore-revs-release-workflow.patch Description: Binary data
Re: pgsql: Add pgindent commit to git-blame-ignore-revs file.
Peter Geoghegan writes: > On Mon, Jun 28, 2021 at 9:47 AM Tom Lane wrote: >> The instructions for "Starting a New Development Cycle" perhaps need >> a specific "see src/tools/pgindent/README". I'd be inclined to >> remove the separate mention of .git-blame-ignore-revs from "Pre-Beta >> Tasks", too. If you didn't read pgindent/README you might miss >> more than just this. > How about the approach taken in the attached patch? WFM. regards, tom lane
pgsql: Improve pgindent release workflow.
Improve pgindent release workflow. Update RELEASE_CHANGES to direct the reader towards completing the steps outlined in the pgindent README, both as a pre-beta task and as a task to be performed when starting a new development cycle. This makes it less likely that somebody will miss updating the .git-blame-ignore-revs file when running pgindent against the tree as a routine release change task. Author: Peter Geoghegan Reviewed-By: Tom Lane Discussion: https://postgr.es/m/CAH2-Wz=2pjf4as8dwecarsxxlkganymq-s0uegqhhbhhqdk...@mail.gmail.com Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/bc49ab3c277b6b478bdad80c1ae36f926a33b4a6 Modified Files -- src/tools/RELEASE_CHANGES | 8 ++-- src/tools/pgindent/README | 3 ++- 2 files changed, 4 insertions(+), 7 deletions(-)
Re: pgsql: Add pgindent commit to git-blame-ignore-revs file.
On Mon, Jun 28, 2021 at 12:53 PM Tom Lane wrote: > > How about the approach taken in the attached patch? > > WFM. Pushed. Thanks. -- Peter Geoghegan
pgsql: Doc: further updates for RELEASE_CHANGES process notes.
Doc: further updates for RELEASE_CHANGES process notes. Mention expectations for email notifications of appropriate lists when a branch is made or retired. (I've been doing that informally for years, but it's better to have it written down.) Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/14b2ffaf7ffdd199937e8bcba8b459da5491bcb6 Modified Files -- src/tools/RELEASE_CHANGES | 14 -- 1 file changed, 12 insertions(+), 2 deletions(-)
pgsql: doc: Improve PG14 release notes
doc: Improve PG14 release notes Mostly markup improvements. Reported-by: Justin Pryzby Discussion: https://postgr.es/m/20210625230456.gp29...@telsasoft.com Backpatch-through: 14 only Branch -- REL_14_STABLE Details --- https://git.postgresql.org/pg/commitdiff/caa0f07d2d4b69cd53b5bf7c847d9d65eadbbfee Modified Files -- doc/src/sgml/release-14.sgml | 77 +--- 1 file changed, 43 insertions(+), 34 deletions(-)
pgsql: Remove XLogFileInit() ability to unlink a pre-existing file.
Remove XLogFileInit() ability to unlink a pre-existing file. Only initdb used it. initdb refuses to operate on a non-empty directory and generally does not cope with pre-existing files of other kinds. Hence, use the opportunity to simplify. Discussion: https://postgr.es/m/20210202151416.gb3304...@rfd.leadboat.com Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/421484f79c0b80209fa766eb00dbc2453a753273 Modified Files -- src/backend/access/transam/xlog.c | 61 ++- src/backend/replication/walreceiver.c | 5 ++- src/include/access/xlog.h | 2 +- 3 files changed, 28 insertions(+), 40 deletions(-)
pgsql: Dump public schema ownership and security labels.
Dump public schema ownership and security labels. As a side effect, this corrects dumps of public schema ACLs in databases where the DBA dropped and recreated that schema. Reviewed by Asif Rehman. Discussion: https://postgr.es/m/20201229134924.ga1431...@rfd.leadboat.com Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/a7a7be1f2fa6b9f0f48e69f12256d8f588af729b Modified Files -- src/bin/pg_dump/dumputils.c | 15 +++-- src/bin/pg_dump/dumputils.h | 1 + src/bin/pg_dump/pg_backup_archiver.c| 21 --- src/bin/pg_dump/pg_dump.c | 98 + src/bin/pg_dump/pg_dump.h | 2 + src/bin/pg_dump/t/002_pg_dump.pl| 75 -- src/test/modules/test_pg_dump/t/001_base.pl | 8 +++ 7 files changed, 177 insertions(+), 43 deletions(-)
pgsql: Remove XLogFileInit() ability to skip ControlFileLock.
Remove XLogFileInit() ability to skip ControlFileLock. Cold paths, initdb and end-of-recovery, used it. Don't optimize them. Discussion: https://postgr.es/m/20210202151416.gb3304...@rfd.leadboat.com Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/c53c6b98d38a4d238b2fe2ddcea63c33b0a61376 Modified Files -- src/backend/access/transam/xlog.c | 46 +++ src/backend/replication/walreceiver.c | 2 +- src/include/access/xlog.h | 2 +- 3 files changed, 16 insertions(+), 34 deletions(-)
pgsql: Don't ERROR on PreallocXlogFiles() race condition.
Don't ERROR on PreallocXlogFiles() race condition. Before a restartpoint finishes PreallocXlogFiles(), a startup process KeepFileRestoredFromArchive() call can unlink the preallocated segment. If a CHECKPOINT sql command had elicited the restartpoint experiencing the race condition, that sql command failed. Moreover, the restartpoint omitted its log_checkpoints message and some inessential resource reclamation. Prevent the ERROR by skipping open() of the segment. Since these consequences are so minor, no back-patch. Discussion: https://postgr.es/m/20210202151416.gb3304...@rfd.leadboat.com Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/2b3e4672f7602a6bb46a0735a1b41b635508b290 Modified Files -- src/backend/access/transam/xlog.c | 79 +-- src/backend/replication/walreceiver.c | 4 +- src/include/access/xlog.h | 2 +- 3 files changed, 58 insertions(+), 27 deletions(-)
pgsql: Skip WAL recycling and preallocation during archive recovery.
Skip WAL recycling and preallocation during archive recovery. The previous commit addressed the chief consequences of a race condition between InstallXLogFileSegment() and KeepFileRestoredFromArchive(). Fix three lesser consequences. A spurious durable_rename_excl() LOG message remained possible. KeepFileRestoredFromArchive() wasted the proceeds of WAL recycling and preallocation. Finally, XLogFileInitInternal() could return a descriptor for a file that KeepFileRestoredFromArchive() had already unlinked. That felt like a recipe for future bugs. Discussion: https://postgr.es/m/20210202151416.gb3304...@rfd.leadboat.com Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/cc2c7d65fc27e877c9f407587b0b92d46cd6dd16 Modified Files -- src/backend/access/transam/xlog.c | 65 ++- 1 file changed, 57 insertions(+), 8 deletions(-)
pgsql: In XLogFileInit(), fix *use_existent postcondition to suit calle
In XLogFileInit(), fix *use_existent postcondition to suit callers. Infrequently, the mismatch caused log_checkpoints messages and TRACE_POSTGRESQL_CHECKPOINT_DONE() to witness an "added" count too high by one. Since that consequence is so minor, no back-patch. Discussion: https://postgr.es/m/20210202151416.gb3304...@rfd.leadboat.com Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/85656bc3050f0846f53de95768b0f9f9df410560 Modified Files -- src/backend/access/transam/xlog.c | 13 ++--- 1 file changed, 6 insertions(+), 7 deletions(-)
pgsql: Dump COMMENT ON SCHEMA public.
Dump COMMENT ON SCHEMA public. As we do for other attributes of the public schema, omit the COMMENT command when its payload would match what initdb had installed. For dumps that do carry this new COMMENT command, non-superusers restoring them are likely to get an error. Reviewed by Asif Rehman. Discussion: https://postgr.es/m/ab48a34c-60f6-e388-502a-3e5fe46a2...@postgresfriends.org Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/7ac10f692054e2690aa6f80efdd98bd283c94b10 Modified Files -- src/bin/pg_dump/pg_dump.c| 84 src/bin/pg_dump/t/002_pg_dump.pl | 14 +- src/include/catalog/pg_namespace.dat | 1 + 3 files changed, 79 insertions(+), 20 deletions(-)
pgsql: Add support for LZ4 with compression of full-page writes in WAL
Add support for LZ4 with compression of full-page writes in WAL The logic is implemented so as there can be a choice in the compression used when building a WAL record, and an extra per-record bit is used to track down if a block is compressed with PGLZ, LZ4 or nothing. wal_compression, the existing parameter, is changed to an enum with support for the following backward-compatible values: - "off", the default, to not use compression. - "pglz" or "on", to compress FPWs with PGLZ. - "lz4", the new mode, to compress FPWs with LZ4. Benchmarking has showed that LZ4 outclasses easily PGLZ. ZSTD would be also an interesting choice, but going just with LZ4 for now makes the patch minimalistic as toast compression is already able to use LZ4, so there is no need to worry about any build-related needs for this implementation. Author: Andrey Borodin, Justin Pryzby Reviewed-by: Dilip Kumar, Michael Paquier Discussion: https://postgr.es/m/3037310d-ecb7-4bf1-af20-01c10bb33...@yandex-team.ru Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/4035cd5d4eee4dae797bfc77ab07f8dcd8781b41 Modified Files -- doc/src/sgml/config.sgml | 14 +++-- doc/src/sgml/install-windows.sgml | 2 +- doc/src/sgml/installation.sgml| 5 +- doc/src/sgml/standalone-profile.xsl | 4 ++ src/backend/access/transam/xlog.c | 2 +- src/backend/access/transam/xloginsert.c | 73 +++ src/backend/access/transam/xlogreader.c | 58 - src/backend/utils/misc/guc.c | 36 + src/backend/utils/misc/postgresql.conf.sample | 3 +- src/bin/pg_waldump/pg_waldump.c | 19 +-- src/include/access/xlog.h | 10 +++- src/include/access/xlogrecord.h | 16 +++--- src/tools/pgindent/typedefs.list | 1 + 13 files changed, 191 insertions(+), 52 deletions(-)
pgsql: Fix compilation warning in xloginsert.c
Fix compilation warning in xloginsert.c This is reproducible with gcc using at least -O0. The last checks validating the compression of a block could not be reached with this variable not set, but let's be clean. Oversight in 4035cd5, per buildfarm member lapwing. Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/47f514dd9a0022a04d321b627b2e991cb85396e2 Modified Files -- src/backend/access/transam/xloginsert.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
Re: pgsql: Add support for LZ4 with compression of full-page writes in WAL
Michael Paquier writes: > Add support for LZ4 with compression of full-page writes in WAL Should this not have included a bump of XLOG_PAGE_MAGIC? regards, tom lane
pgsql: Bump XLOG_PAGE_MAGIC for format changes related to FPW compressi
Bump XLOG_PAGE_MAGIC for format changes related to FPW compression Oversight in 4035cd5, spotted by Tom Lane. Discussion: https://postgr.es/m/365778.1624941...@sss.pgh.pa.us Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/445e36ad4e14480a3c97d0f973a3532912424e85 Modified Files -- src/include/access/xlog_internal.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
Re: pgsql: Add support for LZ4 with compression of full-page writes in WAL
On Tue, Jun 29, 2021 at 12:40:13AM -0400, Tom Lane wrote: > Should this not have included a bump of XLOG_PAGE_MAGIC? It should, thanks! Fixed now. -- Michael signature.asc Description: PGP signature
pgsql: Add index OID macro argument to DECLARE_INDEX
Add index OID macro argument to DECLARE_INDEX Instead of defining symbols such as AmOidIndexId explicitly, include them as an argument of DECLARE_INDEX() and have genbki.pl generate the way as the table OID symbols from the CATALOG() declaration. Reviewed-by: John Naylor Discussion: https://www.postgresql.org/message-id/flat/ccef1e46-a404-25b1-9b4c-85f2c08e1f28%40enterprisedb.com Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/6a6389a08b228aa6bd21ced7a9c5151bf6f7f0a2 Modified Files -- src/backend/catalog/Catalog.pm| 5 +++-- src/backend/catalog/genbki.pl | 8 src/backend/utils/cache/syscache.c| 4 ++-- src/include/catalog/genbki.h | 6 +++--- src/include/catalog/pg_aggregate.h| 3 +-- src/include/catalog/pg_am.h | 6 ++ src/include/catalog/pg_amop.h | 9 +++-- src/include/catalog/pg_amproc.h | 6 ++ src/include/catalog/pg_attrdef.h | 6 ++ src/include/catalog/pg_attribute.h| 6 ++ src/include/catalog/pg_auth_members.h | 6 ++ src/include/catalog/pg_authid.h | 6 ++ src/include/catalog/pg_cast.h | 6 ++ src/include/catalog/pg_class.h| 9 +++-- src/include/catalog/pg_collation.h| 6 ++ src/include/catalog/pg_constraint.h | 15 +-- src/include/catalog/pg_conversion.h | 9 +++-- src/include/catalog/pg_database.h | 6 ++ src/include/catalog/pg_db_role_setting.h | 3 +-- src/include/catalog/pg_default_acl.h | 6 ++ src/include/catalog/pg_depend.h | 6 ++ src/include/catalog/pg_description.h | 3 +-- src/include/catalog/pg_enum.h | 9 +++-- src/include/catalog/pg_event_trigger.h| 6 ++ src/include/catalog/pg_extension.h| 6 ++ src/include/catalog/pg_foreign_data_wrapper.h | 6 ++ src/include/catalog/pg_foreign_server.h | 6 ++ src/include/catalog/pg_foreign_table.h| 3 +-- src/include/catalog/pg_index.h| 6 ++ src/include/catalog/pg_inherits.h | 6 ++ src/include/catalog/pg_init_privs.h | 3 +-- src/include/catalog/pg_language.h | 6 ++ src/include/catalog/pg_largeobject.h | 3 +-- src/include/catalog/pg_largeobject_metadata.h | 3 +-- src/include/catalog/pg_namespace.h| 6 ++ src/include/catalog/pg_opclass.h | 6 ++ src/include/catalog/pg_operator.h | 6 ++ src/include/catalog/pg_opfamily.h | 6 ++ src/include/catalog/pg_partitioned_table.h| 3 +-- src/include/catalog/pg_policy.h | 6 ++ src/include/catalog/pg_proc.h | 6 ++ src/include/catalog/pg_publication.h | 6 ++ src/include/catalog/pg_publication_rel.h | 6 ++ src/include/catalog/pg_range.h| 8 ++-- src/include/catalog/pg_replication_origin.h | 6 ++ src/include/catalog/pg_rewrite.h | 6 ++ src/include/catalog/pg_seclabel.h | 3 +-- src/include/catalog/pg_sequence.h | 3 +-- src/include/catalog/pg_shdepend.h | 6 ++ src/include/catalog/pg_shdescription.h| 3 +-- src/include/catalog/pg_shseclabel.h | 3 +-- src/include/catalog/pg_statistic.h| 3 +-- src/include/catalog/pg_statistic_ext.h| 9 +++-- src/include/catalog/pg_statistic_ext_data.h | 3 +-- src/include/catalog/pg_subscription.h | 6 ++ src/include/catalog/pg_subscription_rel.h | 3 +-- src/include/catalog/pg_tablespace.h | 6 ++ src/include/catalog/pg_transform.h| 6 ++ src/include/catalog/pg_trigger.h | 9 +++-- src/include/catalog/pg_ts_config.h| 6 ++ src/include/catalog/pg_ts_config_map.h| 3 +-- src/include/catalog/pg_ts_dict.h | 6 ++ src/include/catalog/pg_ts_parser.h| 6 ++ src/include/catalog/pg_ts_template.h | 6 ++ src/include/catalog/pg_type.h | 6 ++ src/include/catalog/pg_user_mapping.h | 6 ++ 66 files changed, 133 insertions(+), 243 deletions(-)