pgsql: pg_upgrade: Improve one log message
pg_upgrade: Improve one log message The parenthesized plural is unnecessary here and inconsistent with nearby similar messages. Branch -- REL_16_STABLE Details --- https://git.postgresql.org/pg/commitdiff/8fa09a11c994b85a4f4e6c09c5465f561b17c22b Modified Files -- src/bin/pg_upgrade/check.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
pgsql: pg_upgrade: Improve one log message
pg_upgrade: Improve one log message The parenthesized plural is unnecessary here and inconsistent with nearby similar messages. Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/f9f3bea168496990037c55dd6961010e1acbba92 Modified Files -- src/bin/pg_upgrade/check.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
pgsql: do: PG 16 relnotes: clarify last seq/index view names
do: PG 16 relnotes: clarify last seq/index view names Backpatch-through: 16 only Branch -- REL_16_STABLE Details --- https://git.postgresql.org/pg/commitdiff/7d8e7036177a9fce94a6b99a5a12d65568556fde Modified Files -- doc/src/sgml/release-16.sgml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
pgsql: Meson: check for pg_config_paths.h left over from make
Meson: check for pg_config_paths.h left over from make The meson build scripts attempt to find files left over from configure and fail, mentioning that "make maintainer-clean" should be run to remove these. This seems to have been done for files generated from configure. pg_config_paths.h is generated during the actual make build, so seems to have been missed. This would result in compilation using the wrong pg_config_paths.h file. Here we just add this file to generated_sources_ac so that meson errors out if pg_config_paths.h exists. Likely this wasn't noticed before because make maintainer-clean will remove pg_config_paths.h, however, people using the MSVC build scripts are more likely to run into issues and they have to manually remove these files and pg_config_paths.h wasn't listed as a conflicting file to remove in the meson log. Backpatch-through: 16, where meson support was added Discussion: https://postgr.es/m/caaphdvqjyoxzfmlkaowkfee7lor9_e6ua6ynmx9r8nxstcs...@mail.gmail.com Branch -- REL_16_STABLE Details --- https://git.postgresql.org/pg/commitdiff/5a16984ff1f3556f4bd29723e11d3594f41db90b Modified Files -- src/port/meson.build | 3 +++ 1 file changed, 3 insertions(+)
pgsql: Meson: check for pg_config_paths.h left over from make
Meson: check for pg_config_paths.h left over from make The meson build scripts attempt to find files left over from configure and fail, mentioning that "make maintainer-clean" should be run to remove these. This seems to have been done for files generated from configure. pg_config_paths.h is generated during the actual make build, so seems to have been missed. This would result in compilation using the wrong pg_config_paths.h file. Here we just add this file to generated_sources_ac so that meson errors out if pg_config_paths.h exists. Likely this wasn't noticed before because make maintainer-clean will remove pg_config_paths.h, however, people using the MSVC build scripts are more likely to run into issues and they have to manually remove these files and pg_config_paths.h wasn't listed as a conflicting file to remove in the meson log. Backpatch-through: 16, where meson support was added Discussion: https://postgr.es/m/caaphdvqjyoxzfmlkaowkfee7lor9_e6ua6ynmx9r8nxstcs...@mail.gmail.com Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/6ff385f20c4ed2af707d523ceb2bea694668c123 Modified Files -- src/port/meson.build | 3 +++ 1 file changed, 3 insertions(+)
pgsql: ci: Make compute resources for CI configurable
ci: Make compute resources for CI configurable See prior commit for an explanation for the goal of the change and why it had to be split into two commits. Reviewed-by: Daniel Gustafsson Reviewed-by: Nazir Bilal Yavuz Discussion: https://postgr.es/m/20230808021541.7lbzdefvma7qm...@awork3.anarazel.de Backpatch: 15-, where CI support was added Branch -- REL_16_STABLE Details --- https://git.postgresql.org/pg/commitdiff/e8a8cd05d4b9533cf5bff0f4a4ee83a40df62875 Modified Files -- .cirrus.tasks.yml | 45 - .cirrus.yml | 73 + src/tools/ci/README | 17 + 3 files changed, 90 insertions(+), 45 deletions(-)
pgsql: ci: Prepare to make compute resources for CI configurable
ci: Prepare to make compute resources for CI configurable cirrus-ci will soon restrict the amount of free resources every user gets (as have many other CI providers). For most users of CI that should not be an issue. But e.g. for cfbot it will be an issue. To allow configuring different resources on a per-repository basis, introduce infrastructure for overriding the task execution environment. Unfortunately this is not entirely trivial, as yaml anchors have to be defined before their use, and cirrus-ci only allows injecting additional contents at the end of .cirrus.yml. To deal with that, move the definition of the CI tasks to .cirrus.tasks.yml. The main .cirrus.yml is loaded first, then, if defined, the file referenced by the REPO_CI_CONFIG_GIT_URL variable, will be added, followed by the contents of .cirrus.tasks.yml. That allows REPO_CI_CONFIG_GIT_URL to override the yaml anchors defined in .cirrus.yml. Unfortunately git's default merge / rebase strategy does not handle copied files, just renamed ones. To avoid painful rebasing over this change, this commit just renames .cirrus.yml to .cirrus.tasks.yml, without adding a new .cirrus.yml. That's done in the followup commit, which moves the relevant portion of .cirrus.tasks.yml to .cirrus.yml. Until that is done, REPO_CI_CONFIG_GIT_URL does not fully work. The subsequent commit adds documentation for how to configure custom compute resources to src/tools/ci/README Reviewed-by: Daniel Gustafsson Reviewed-by: Nazir Bilal Yavuz Discussion: https://postgr.es/m/20230808021541.7lbzdefvma7qm...@awork3.anarazel.de Backpatch: 15-, where CI support was added Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/19cc96503d23c79900162396077a900e7507c4d3 Modified Files -- .cirrus.star | 63 .cirrus.yml => .cirrus.tasks.yml | 0 2 files changed, 63 insertions(+)
pgsql: ci: Prepare to make compute resources for CI configurable
ci: Prepare to make compute resources for CI configurable cirrus-ci will soon restrict the amount of free resources every user gets (as have many other CI providers). For most users of CI that should not be an issue. But e.g. for cfbot it will be an issue. To allow configuring different resources on a per-repository basis, introduce infrastructure for overriding the task execution environment. Unfortunately this is not entirely trivial, as yaml anchors have to be defined before their use, and cirrus-ci only allows injecting additional contents at the end of .cirrus.yml. To deal with that, move the definition of the CI tasks to .cirrus.tasks.yml. The main .cirrus.yml is loaded first, then, if defined, the file referenced by the REPO_CI_CONFIG_GIT_URL variable, will be added, followed by the contents of .cirrus.tasks.yml. That allows REPO_CI_CONFIG_GIT_URL to override the yaml anchors defined in .cirrus.yml. Unfortunately git's default merge / rebase strategy does not handle copied files, just renamed ones. To avoid painful rebasing over this change, this commit just renames .cirrus.yml to .cirrus.tasks.yml, without adding a new .cirrus.yml. That's done in the followup commit, which moves the relevant portion of .cirrus.tasks.yml to .cirrus.yml. Until that is done, REPO_CI_CONFIG_GIT_URL does not fully work. The subsequent commit adds documentation for how to configure custom compute resources to src/tools/ci/README Reviewed-by: Daniel Gustafsson Reviewed-by: Nazir Bilal Yavuz Discussion: https://postgr.es/m/20230808021541.7lbzdefvma7qm...@awork3.anarazel.de Backpatch: 15-, where CI support was added Branch -- REL_16_STABLE Details --- https://git.postgresql.org/pg/commitdiff/9ed46c78a3625001a863bbcbfd5f1c696c1def46 Modified Files -- .cirrus.star | 63 .cirrus.yml => .cirrus.tasks.yml | 0 2 files changed, 63 insertions(+)
pgsql: ci: Make compute resources for CI configurable
ci: Make compute resources for CI configurable See prior commit for an explanation for the goal of the change and why it had to be split into two commits. Reviewed-by: Daniel Gustafsson Reviewed-by: Nazir Bilal Yavuz Discussion: https://postgr.es/m/20230808021541.7lbzdefvma7qm...@awork3.anarazel.de Backpatch: 15-, where CI support was added Branch -- REL_15_STABLE Details --- https://git.postgresql.org/pg/commitdiff/e4693c68a497129ea3913148027a6cee3b522d5d Modified Files -- .cirrus.tasks.yml | 45 - .cirrus.yml | 73 + src/tools/ci/README | 17 + 3 files changed, 90 insertions(+), 45 deletions(-)
pgsql: ci: Prepare to make compute resources for CI configurable
ci: Prepare to make compute resources for CI configurable cirrus-ci will soon restrict the amount of free resources every user gets (as have many other CI providers). For most users of CI that should not be an issue. But e.g. for cfbot it will be an issue. To allow configuring different resources on a per-repository basis, introduce infrastructure for overriding the task execution environment. Unfortunately this is not entirely trivial, as yaml anchors have to be defined before their use, and cirrus-ci only allows injecting additional contents at the end of .cirrus.yml. To deal with that, move the definition of the CI tasks to .cirrus.tasks.yml. The main .cirrus.yml is loaded first, then, if defined, the file referenced by the REPO_CI_CONFIG_GIT_URL variable, will be added, followed by the contents of .cirrus.tasks.yml. That allows REPO_CI_CONFIG_GIT_URL to override the yaml anchors defined in .cirrus.yml. Unfortunately git's default merge / rebase strategy does not handle copied files, just renamed ones. To avoid painful rebasing over this change, this commit just renames .cirrus.yml to .cirrus.tasks.yml, without adding a new .cirrus.yml. That's done in the followup commit, which moves the relevant portion of .cirrus.tasks.yml to .cirrus.yml. Until that is done, REPO_CI_CONFIG_GIT_URL does not fully work. The subsequent commit adds documentation for how to configure custom compute resources to src/tools/ci/README Reviewed-by: Daniel Gustafsson Reviewed-by: Nazir Bilal Yavuz Discussion: https://postgr.es/m/20230808021541.7lbzdefvma7qm...@awork3.anarazel.de Backpatch: 15-, where CI support was added Branch -- REL_15_STABLE Details --- https://git.postgresql.org/pg/commitdiff/284465e1b95ef5f561b0fadead2468c0c63c0f82 Modified Files -- .cirrus.star | 63 .cirrus.yml => .cirrus.tasks.yml | 0 2 files changed, 63 insertions(+)
pgsql: ci: Make compute resources for CI configurable
ci: Make compute resources for CI configurable See prior commit for an explanation for the goal of the change and why it had to be split into two commits. Reviewed-by: Daniel Gustafsson Reviewed-by: Nazir Bilal Yavuz Discussion: https://postgr.es/m/20230808021541.7lbzdefvma7qm...@awork3.anarazel.de Backpatch: 15-, where CI support was added Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/a28166df8c5a00ec3d9b3550a4f6598593ebf873 Modified Files -- .cirrus.tasks.yml | 45 - .cirrus.yml | 73 + src/tools/ci/README | 17 + 3 files changed, 90 insertions(+), 45 deletions(-)
pgsql: Bump catversion for to_bin() and to_oct().
Bump catversion for to_bin() and to_oct(). Missed in 260a1f18da. Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/d7f249020a11a87cedad04fb071f3287321d5f20 Modified Files -- src/include/catalog/catversion.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
pgsql: Cache by-reference missing values in a long lived context
Cache by-reference missing values in a long lived context Attribute missing values might be needed past the lifetime of the tuple descriptors from which they are extracted. To avoid possibly using pointers for by-reference values which might thus be left dangling, we cache a datumCopy'd version of the datum in the TopMemoryContext. Since we first search for the value this only needs to be done once per session for any such value. Original complaint from Tom Lane, idea for mitigation by Andrew Dunstan, tweaked by Tom Lane. Backpatch to version 11 where missing values were introduced. Discussion: https://postgr.es/m/1306569.1687978...@sss.pgh.pa.us Branch -- REL_11_STABLE Details --- https://git.postgresql.org/pg/commitdiff/2d13dab048a7e0777875529620f81d32ce57dfd8 Modified Files -- src/backend/access/common/heaptuple.c | 91 ++- src/tools/pgindent/typedefs.list | 1 + 2 files changed, 91 insertions(+), 1 deletion(-)
pgsql: ci: Move execution method of tasks into yaml templates
ci: Move execution method of tasks into yaml templates This is done in preparation for making the compute resources for CI configurable. It also looks cleaner. Reviewed-by: Daniel Gustafsson Discussion: https://postgr.es/m/20230808021541.7lbzdefvma7qm...@awork3.anarazel.de Backpatch: 15-, where CI support was added Branch -- REL_16_STABLE Details --- https://git.postgresql.org/pg/commitdiff/cad461b044b521c5f80d180194d6e27dce82c424 Modified Files -- .cirrus.yml | 85 + 1 file changed, 57 insertions(+), 28 deletions(-)
pgsql: ci: Don't specify amount of memory
ci: Don't specify amount of memory The number of CPUs is the cost-determining factor. Most instance types that run tests have more memory/core than what we specified, there's no real benefit in wasting that. Reviewed-by: Daniel Gustafsson Discussion: https://postgr.es/m/20230808021541.7lbzdefvma7qm...@awork3.anarazel.de Backpatch: 15-, where CI support was added Branch -- REL_16_STABLE Details --- https://git.postgresql.org/pg/commitdiff/5581a9a3953020dd9df18ffd00b788f296bd60e0 Modified Files -- .cirrus.yml | 4 1 file changed, 4 deletions(-)
pgsql: ci: Don't specify amount of memory
ci: Don't specify amount of memory The number of CPUs is the cost-determining factor. Most instance types that run tests have more memory/core than what we specified, there's no real benefit in wasting that. Reviewed-by: Daniel Gustafsson Discussion: https://postgr.es/m/20230808021541.7lbzdefvma7qm...@awork3.anarazel.de Backpatch: 15-, where CI support was added Branch -- REL_15_STABLE Details --- https://git.postgresql.org/pg/commitdiff/89daa5ae307a56017ce47e7dc652284ce547012a Modified Files -- .cirrus.yml | 3 --- 1 file changed, 3 deletions(-)
pgsql: ci: Use VMs for SanityCheck and CompilerWarnings
ci: Use VMs for SanityCheck and CompilerWarnings The main reason for this change is to reduce different ways of executing tasks, making it easier to use custom compute resources for cfbot. A secondary benefit is that the tasks seem slightly faster this way, apparently the increased startup overhead is outweighed by reduced runtime overhead. Reviewed-by: Daniel Gustafsson Discussion: https://postgr.es/m/20230808021541.7lbzdefvma7qm...@awork3.anarazel.de Backpatch: 15-, where CI support was added Branch -- REL_15_STABLE Details --- https://git.postgresql.org/pg/commitdiff/4fdfd0629d77af19582ca4d59c0e7fe99619f048 Modified Files -- .cirrus.yml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-)
pgsql: ci: Don't specify amount of memory
ci: Don't specify amount of memory The number of CPUs is the cost-determining factor. Most instance types that run tests have more memory/core than what we specified, there's no real benefit in wasting that. Reviewed-by: Daniel Gustafsson Discussion: https://postgr.es/m/20230808021541.7lbzdefvma7qm...@awork3.anarazel.de Backpatch: 15-, where CI support was added Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/794e14e219c7997c7f59ea8b7923daee95d2a3a6 Modified Files -- .cirrus.yml | 4 1 file changed, 4 deletions(-)
pgsql: ci: Use VMs for SanityCheck and CompilerWarnings
ci: Use VMs for SanityCheck and CompilerWarnings The main reason for this change is to reduce different ways of executing tasks, making it easier to use custom compute resources for cfbot. A secondary benefit is that the tasks seem slightly faster this way, apparently the increased startup overhead is outweighed by reduced runtime overhead. Reviewed-by: Daniel Gustafsson Discussion: https://postgr.es/m/20230808021541.7lbzdefvma7qm...@awork3.anarazel.de Backpatch: 15-, where CI support was added Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/b2c91d841f1f58f6f553d9e6832fdfaedec00402 Modified Files -- .cirrus.yml | 14 ++ 1 file changed, 6 insertions(+), 8 deletions(-)
pgsql: ci: Move execution method of tasks into yaml templates
ci: Move execution method of tasks into yaml templates This is done in preparation for making the compute resources for CI configurable. It also looks cleaner. Reviewed-by: Daniel Gustafsson Discussion: https://postgr.es/m/20230808021541.7lbzdefvma7qm...@awork3.anarazel.de Backpatch: 15-, where CI support was added Branch -- REL_15_STABLE Details --- https://git.postgresql.org/pg/commitdiff/462f4df0a86d2c497a1739f386835d246ea8645e Modified Files -- .cirrus.yml | 77 +++-- 1 file changed, 55 insertions(+), 22 deletions(-)
pgsql: ci: Use VMs for SanityCheck and CompilerWarnings
ci: Use VMs for SanityCheck and CompilerWarnings The main reason for this change is to reduce different ways of executing tasks, making it easier to use custom compute resources for cfbot. A secondary benefit is that the tasks seem slightly faster this way, apparently the increased startup overhead is outweighed by reduced runtime overhead. Reviewed-by: Daniel Gustafsson Discussion: https://postgr.es/m/20230808021541.7lbzdefvma7qm...@awork3.anarazel.de Backpatch: 15-, where CI support was added Branch -- REL_16_STABLE Details --- https://git.postgresql.org/pg/commitdiff/f518c909ead1be7c88ee1f53db13bdef7c50d1ca Modified Files -- .cirrus.yml | 14 ++ 1 file changed, 6 insertions(+), 8 deletions(-)
pgsql: ci: Move execution method of tasks into yaml templates
ci: Move execution method of tasks into yaml templates This is done in preparation for making the compute resources for CI configurable. It also looks cleaner. Reviewed-by: Daniel Gustafsson Discussion: https://postgr.es/m/20230808021541.7lbzdefvma7qm...@awork3.anarazel.de Backpatch: 15-, where CI support was added Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/119ee6ab1b0081e339cac08d18ae625fcc77bcd1 Modified Files -- .cirrus.yml | 85 + 1 file changed, 57 insertions(+), 28 deletions(-)
Re: pgsql: Add to_bin() and to_oct().
On Thu, 24 Aug 2023 at 02:50, Nathan Bossart wrote: > > Add to_bin() and to_oct(). src/include/catalog/pg_proc.dat | 12 + Did this maybe miss a catversion bump? David
pgsql: Avoid use of Perl getprotobyname
Avoid use of Perl getprotobyname getprotobyname returns undefined on some CI machines. It's not clear why. The code overall still works, but it raises a warning. In PostgreSQL C code, we always call socket() with 0 for the protocol argument, so we should be able to do the same in Perl (since the Perl documentation says that the arguments of the socket function are the same as in C). So do that, to avoid the issue. Reviewed-by: Andrew Dunstan Discussion: https://www.postgresql.org/message-id/flat/06f899fd-1826-05ab-42d6-adeb1fd5e200%40eisentraut.org Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/01226c682ce6cc130c1057fcd5b0f24b2b622d39 Modified Files -- src/test/perl/PostgreSQL/Test/Cluster.pm | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)
pgsql: Fix _bt_allequalimage() call within critical section.
Fix _bt_allequalimage() call within critical section. _bt_allequalimage() does complicated things, so it's not OK to call it in a critical section. Per buildfarm failure on 'prion', which uses -DRELCACHE_FORCE_RELEASE -DCATCACHE_FORCE_RELEASE options. Discussion: https://www.postgresql.org/message-id/6e5bbc08-cdfc-b2b3-9e23-1a914b985...@iki.fi Backpatch-through: 16, like commit ccadf73163 that introduced this Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/bf8bf6d0bddbbaa9dc6c27b383f026273064d2a2 Modified Files -- src/backend/access/nbtree/nbtree.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
pgsql: Fix _bt_allequalimage() call within critical section.
Fix _bt_allequalimage() call within critical section. _bt_allequalimage() does complicated things, so it's not OK to call it in a critical section. Per buildfarm failure on 'prion', which uses -DRELCACHE_FORCE_RELEASE -DCATCACHE_FORCE_RELEASE options. Discussion: https://www.postgresql.org/message-id/6e5bbc08-cdfc-b2b3-9e23-1a914b985...@iki.fi Backpatch-through: 16, like commit ccadf73163 that introduced this Branch -- REL_16_STABLE Details --- https://git.postgresql.org/pg/commitdiff/c3b874c431bc5d1399c011e9e5ce1e30b756f930 Modified Files -- src/backend/access/nbtree/nbtree.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
pgsql: Add to_bin() and to_oct().
Add to_bin() and to_oct(). This commit introduces functions for converting numbers to their equivalent binary and octal representations. Also, the base conversion code for these functions and to_hex() has been moved to a common helper function. Co-authored-by: Eric Radman Reviewed-by: Ian Barwick, Dag Lem, Vignesh C, Tom Lane, Peter Eisentraut, Kirk Wolak, Vik Fearing, John Naylor, Dean Rasheed Discussion: https://postgr.es/m/Y6IyTQQ/TsD5wnsH%40vm3.eradman.com Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/260a1f18dae8729f99cefe4e1f759193fd6bedd0 Modified Files -- doc/src/sgml/func.sgml| 59 +++- src/backend/utils/adt/varlena.c | 86 --- src/include/catalog/pg_proc.dat | 12 + src/test/regress/expected/strings.out | 62 - src/test/regress/sql/strings.sql | 15 +- 5 files changed, 204 insertions(+), 30 deletions(-)
pgsql: Use the buffer cache when initializing an unlogged index.
Use the buffer cache when initializing an unlogged index. Some of the ambuildempty functions used smgrwrite() directly, followed by smgrimmedsync(). A few small problems with that: Firstly, one is supposed to use smgrextend() when extending a relation, not smgrwrite(). It doesn't make much difference in production builds. smgrextend() updates the relation size cache, so you miss that, but that's harmless because we never use the cached relation size of an init fork. But if you compile with CHECK_WRITE_VS_EXTEND, you get an assertion failure. Secondly, the smgrwrite() calls were performed before WAL-logging, so the page image written to disk had 0/0 as the LSN, not the LSN of the WAL record. That's also harmless in practice, but seems sloppy. Thirdly, it's better to use the buffer cache, because then you don't need to smgrimmedsync() the relation to disk, which adds latency. Bypassing the cache makes sense for bulk operations like index creation, but not when you're just initializing an empty index. Creation of unlogged tables is hardly performance bottleneck in any real world applications, but nevertheless. Backpatch to v16, but no further. These issues should be harmless in practice, so better to not rock the boat in older branches. Reviewed-by: Robert Haas Discussion: https://www.postgresql.org/message-id/6e5bbc08-cdfc-b2b3-9e23-1a914b985...@iki.fi Branch -- REL_16_STABLE Details --- https://git.postgresql.org/pg/commitdiff/6bc1fd4e60e9556ba5e04710049fdf42e3134f47 Modified Files -- contrib/bloom/blinsert.c | 29 ++ contrib/bloom/bloom.h | 2 +- contrib/bloom/blutils.c | 8 ++-- src/backend/access/nbtree/nbtree.c| 41 ++-- src/backend/access/spgist/spginsert.c | 71 --- 5 files changed, 62 insertions(+), 89 deletions(-)
pgsql: Use the buffer cache when initializing an unlogged index.
Use the buffer cache when initializing an unlogged index. Some of the ambuildempty functions used smgrwrite() directly, followed by smgrimmedsync(). A few small problems with that: Firstly, one is supposed to use smgrextend() when extending a relation, not smgrwrite(). It doesn't make much difference in production builds. smgrextend() updates the relation size cache, so you miss that, but that's harmless because we never use the cached relation size of an init fork. But if you compile with CHECK_WRITE_VS_EXTEND, you get an assertion failure. Secondly, the smgrwrite() calls were performed before WAL-logging, so the page image written to disk had 0/0 as the LSN, not the LSN of the WAL record. That's also harmless in practice, but seems sloppy. Thirdly, it's better to use the buffer cache, because then you don't need to smgrimmedsync() the relation to disk, which adds latency. Bypassing the cache makes sense for bulk operations like index creation, but not when you're just initializing an empty index. Creation of unlogged tables is hardly performance bottleneck in any real world applications, but nevertheless. Backpatch to v16, but no further. These issues should be harmless in practice, so better to not rock the boat in older branches. Reviewed-by: Robert Haas Discussion: https://www.postgresql.org/message-id/6e5bbc08-cdfc-b2b3-9e23-1a914b985...@iki.fi Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/ccadf73163ca88bdaa74b8223d4dde05d17f550b Modified Files -- contrib/bloom/blinsert.c | 29 ++ contrib/bloom/bloom.h | 2 +- contrib/bloom/blutils.c | 8 ++-- src/backend/access/nbtree/nbtree.c| 41 ++-- src/backend/access/spgist/spginsert.c | 71 --- 5 files changed, 62 insertions(+), 89 deletions(-)
pgsql: doc: Replace list of drivers and PLs with wiki link
doc: Replace list of drivers and PLs with wiki link The list of external language drivers and procedural languages was never complete or exhaustive, and rather than attempting to manage it the content has migrated to the wiki. This replaces the tables altogether with links to the wiki as we regularly get requests for adding various projects, which we reject without any clear policy for why or how the content should be managed. The threads linked to below are the most recent discussions about this, the archives contain many more. Backpatch to all supported branches since the list on the wiki applies to all branches. Author: Jonathan Katz Discussion: https://postgr.es/m/169165415312.635.10247434927885764...@wrigleys.postgresql.org Discussion: https://postgr.es/m/169177958824.635.11087800083040275...@wrigleys.postgresql.org Backpatch-through: v11 Branch -- REL_11_STABLE Details --- https://git.postgresql.org/pg/commitdiff/c176d97895be92ceb1454a3b7e14bffe7b7da364 Modified Files -- doc/src/sgml/external-projects.sgml | 158 1 file changed, 18 insertions(+), 140 deletions(-)
pgsql: doc: Replace list of drivers and PLs with wiki link
doc: Replace list of drivers and PLs with wiki link The list of external language drivers and procedural languages was never complete or exhaustive, and rather than attempting to manage it the content has migrated to the wiki. This replaces the tables altogether with links to the wiki as we regularly get requests for adding various projects, which we reject without any clear policy for why or how the content should be managed. The threads linked to below are the most recent discussions about this, the archives contain many more. Backpatch to all supported branches since the list on the wiki applies to all branches. Author: Jonathan Katz Discussion: https://postgr.es/m/169165415312.635.10247434927885764...@wrigleys.postgresql.org Discussion: https://postgr.es/m/169177958824.635.11087800083040275...@wrigleys.postgresql.org Backpatch-through: v11 Branch -- REL_12_STABLE Details --- https://git.postgresql.org/pg/commitdiff/2607380c955d2b8a8a6e06ced7ec2007705e102d Modified Files -- doc/src/sgml/external-projects.sgml | 158 1 file changed, 18 insertions(+), 140 deletions(-)
pgsql: doc: Replace list of drivers and PLs with wiki link
doc: Replace list of drivers and PLs with wiki link The list of external language drivers and procedural languages was never complete or exhaustive, and rather than attempting to manage it the content has migrated to the wiki. This replaces the tables altogether with links to the wiki as we regularly get requests for adding various projects, which we reject without any clear policy for why or how the content should be managed. The threads linked to below are the most recent discussions about this, the archives contain many more. Backpatch to all supported branches since the list on the wiki applies to all branches. Author: Jonathan Katz Discussion: https://postgr.es/m/169165415312.635.10247434927885764...@wrigleys.postgresql.org Discussion: https://postgr.es/m/169177958824.635.11087800083040275...@wrigleys.postgresql.org Backpatch-through: v11 Branch -- REL_13_STABLE Details --- https://git.postgresql.org/pg/commitdiff/07e70143b89097f5f6aff0c2aaa913a4f42500fa Modified Files -- doc/src/sgml/external-projects.sgml | 158 1 file changed, 18 insertions(+), 140 deletions(-)
pgsql: doc: Replace list of drivers and PLs with wiki link
doc: Replace list of drivers and PLs with wiki link The list of external language drivers and procedural languages was never complete or exhaustive, and rather than attempting to manage it the content has migrated to the wiki. This replaces the tables altogether with links to the wiki as we regularly get requests for adding various projects, which we reject without any clear policy for why or how the content should be managed. The threads linked to below are the most recent discussions about this, the archives contain many more. Backpatch to all supported branches since the list on the wiki applies to all branches. Author: Jonathan Katz Discussion: https://postgr.es/m/169165415312.635.10247434927885764...@wrigleys.postgresql.org Discussion: https://postgr.es/m/169177958824.635.11087800083040275...@wrigleys.postgresql.org Backpatch-through: v11 Branch -- REL_14_STABLE Details --- https://git.postgresql.org/pg/commitdiff/832be40c4912703d41317f853e7f552b4b0708ec Modified Files -- doc/src/sgml/external-projects.sgml | 158 1 file changed, 18 insertions(+), 140 deletions(-)
pgsql: doc: Replace list of drivers and PLs with wiki link
doc: Replace list of drivers and PLs with wiki link The list of external language drivers and procedural languages was never complete or exhaustive, and rather than attempting to manage it the content has migrated to the wiki. This replaces the tables altogether with links to the wiki as we regularly get requests for adding various projects, which we reject without any clear policy for why or how the content should be managed. The threads linked to below are the most recent discussions about this, the archives contain many more. Backpatch to all supported branches since the list on the wiki applies to all branches. Author: Jonathan Katz Discussion: https://postgr.es/m/169165415312.635.10247434927885764...@wrigleys.postgresql.org Discussion: https://postgr.es/m/169177958824.635.11087800083040275...@wrigleys.postgresql.org Backpatch-through: v11 Branch -- REL_15_STABLE Details --- https://git.postgresql.org/pg/commitdiff/f4f63577b665f85916c8ec85ec70b7fd8a8cad1d Modified Files -- doc/src/sgml/external-projects.sgml | 158 1 file changed, 18 insertions(+), 140 deletions(-)
pgsql: doc: Replace list of drivers and PLs with wiki link
doc: Replace list of drivers and PLs with wiki link The list of external language drivers and procedural languages was never complete or exhaustive, and rather than attempting to manage it the content has migrated to the wiki. This replaces the tables altogether with links to the wiki as we regularly get requests for adding various projects, which we reject without any clear policy for why or how the content should be managed. The threads linked to below are the most recent discussions about this, the archives contain many more. Backpatch to all supported branches since the list on the wiki applies to all branches. Author: Jonathan Katz Discussion: https://postgr.es/m/169165415312.635.10247434927885764...@wrigleys.postgresql.org Discussion: https://postgr.es/m/169177958824.635.11087800083040275...@wrigleys.postgresql.org Backpatch-through: v11 Branch -- REL_16_STABLE Details --- https://git.postgresql.org/pg/commitdiff/5fd424c87a86dd19d6cb15a18d1662ffc7368de1 Modified Files -- doc/src/sgml/external-projects.sgml | 158 1 file changed, 18 insertions(+), 140 deletions(-)
pgsql: doc: Replace list of drivers and PLs with wiki link
doc: Replace list of drivers and PLs with wiki link The list of external language drivers and procedural languages was never complete or exhaustive, and rather than attempting to manage it the content has migrated to the wiki. This replaces the tables altogether with links to the wiki as we regularly get requests for adding various projects, which we reject without any clear policy for why or how the content should be managed. The threads linked to below are the most recent discussions about this, the archives contain many more. Backpatch to all supported branches since the list on the wiki applies to all branches. Author: Jonathan Katz Discussion: https://postgr.es/m/169165415312.635.10247434927885764...@wrigleys.postgresql.org Discussion: https://postgr.es/m/169177958824.635.11087800083040275...@wrigleys.postgresql.org Backpatch-through: v11 Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/ee99330a0b39c47a7ac44c6c8fdd74e3da841ba5 Modified Files -- doc/src/sgml/external-projects.sgml | 158 1 file changed, 18 insertions(+), 140 deletions(-)
Re: pgsql: Fix pg_dump assertion failure when dumping pg_catalog.
On 22.08.23 22:08, Jeff Davis wrote: Fix pg_dump assertion failure when dumping pg_catalog. Commit 396d348b04 did not account for the default collation. Also, use pg_log_warning() instead of Assert(). Looking at this: pg_log_warning("invalid collation \"%s\"", qcollname); qcollname is already a quoted identifier, so this message would be doubly quoted. Maybe you should use collinfo->dobj.name in the messages. Also, for pg_fatal("unrecognized collation provider '%c'", collprovider[0]); use double quotes.
pgsql: doc: Add more ICU rules examples
doc: Add more ICU rules examples In particular, add an example EBCDIC collation. Author: Daniel Verite Discussion: https://www.postgresql.org/message-id/flat/35cc1684-e516-4a01-a256-351632d47...@manitou-mail.org Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/17ec2c5dfa8dc6fee3df749d214238d34ee681c9 Modified Files -- doc/src/sgml/charset.sgml | 58 +- doc/src/sgml/ref/create_collation.sgml | 13 +++- doc/src/sgml/ref/create_database.sgml | 4 +-- 3 files changed, 62 insertions(+), 13 deletions(-)
pgsql: doc: Add more ICU rules examples
doc: Add more ICU rules examples In particular, add an example EBCDIC collation. Author: Daniel Verite Discussion: https://www.postgresql.org/message-id/flat/35cc1684-e516-4a01-a256-351632d47...@manitou-mail.org Branch -- REL_16_STABLE Details --- https://git.postgresql.org/pg/commitdiff/103df207a71e74d64173edcb7bacec872933755b Modified Files -- doc/src/sgml/charset.sgml | 58 +- doc/src/sgml/ref/create_collation.sgml | 13 +++- doc/src/sgml/ref/create_database.sgml | 4 +-- 3 files changed, 62 insertions(+), 13 deletions(-)
pgsql: Fix wording in comment
Fix wording in comment The comment for the DSM_OP_CREATE paramater read "the a new handle" which is confusing. Fix by rewording to indicate what the parameter means for DSM_OP_CREATE. Reported-by: Junwang Zhao Discussion: https://postgr.es/m/caeg8a3j2bc197ym-m_ykoxb9ox2enn-qnkneosaohysw2nc...@mail.gmail.com Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/27a36f79b6d15cb2b267d16084007aa9d6917aec Modified Files -- src/backend/storage/ipc/dsm_impl.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
pgsql: pg_upgrade: Avoid shadowing global var in function
pg_upgrade: Avoid shadowing global var in function The new_cluster parameter in check_for_new_tablespace_dir was shadowing the globally defined new_cluster variable, causing compiler warnings when running with -Wshadow. The function is only applicable to the new cluster, so remove the parameter rather than rename to match check_new_cluster_is_empty which also only applies to the new cluster. Author: Peter Smith Discussion: https://postgr.es/m/cahut+pvs_phlntwy1ytgxv0o1twm4ivckbqfzpoqrdsm2ce...@mail.gmail.com Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/d0e408313536d4d4a0fb4516f2596adbe06a0e60 Modified Files -- src/bin/pg_upgrade/check.c | 8 1 file changed, 4 insertions(+), 4 deletions(-)