Skip to content

Commit cfc5e90

Browse files
authored
Merge branch 'postgres:master' into main
2 parents dbd503d + c1ff2d8 commit cfc5e90

File tree

1,559 files changed

+233524
-139744
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,559 files changed

+233524
-139744
lines changed

.cirrus.tasks.yml

Lines changed: 32 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ task:
6565
CPUS: 4
6666
BUILD_JOBS: 8
6767
TEST_JOBS: 8
68-
IMAGE_FAMILY: pg-ci-bullseye
68+
IMAGE_FAMILY: pg-ci-bookworm
6969
CCACHE_DIR: ${CIRRUS_WORKING_DIR}/ccache_dir
7070
# no options enabled, should be small
7171
CCACHE_MAXSIZE: "150M"
@@ -133,9 +133,10 @@ task:
133133
DISK_SIZE: 50
134134

135135
CCACHE_DIR: /tmp/ccache_dir
136-
CPPFLAGS: -DRELCACHE_FORCE_RELEASE -DCOPY_PARSE_PLAN_TREES -DWRITE_READ_PARSE_PLAN_TREES -DRAW_EXPRESSION_COVERAGE_TEST -DENFORCE_REGRESSION_TEST_NAME_RESTRICTIONS
136+
CPPFLAGS: -DRELCACHE_FORCE_RELEASE -DENFORCE_REGRESSION_TEST_NAME_RESTRICTIONS
137137
CFLAGS: -Og -ggdb
138138

139+
PG_TEST_INITDB_EXTRA_OPTS: -c debug_copy_parse_plan_trees=on -c debug_write_read_parse_plan_trees=on -c debug_raw_expression_coverage_test=on
139140
PG_TEST_PG_UPGRADE_MODE: --link
140141

141142
<<: *freebsd_task_template
@@ -243,7 +244,7 @@ task:
243244
CPUS: 4
244245
BUILD_JOBS: 4
245246
TEST_JOBS: 8 # experimentally derived to be a decent choice
246-
IMAGE_FAMILY: pg-ci-bullseye
247+
IMAGE_FAMILY: pg-ci-bookworm
247248

248249
CCACHE_DIR: /tmp/ccache_dir
249250
DEBUGINFOD_URLS: "https://debuginfod.debian.net"
@@ -272,6 +273,8 @@ task:
272273
LDFLAGS: $SANITIZER_FLAGS
273274
CC: ccache gcc
274275
CXX: ccache g++
276+
# GCC emits a warning for llvm-14, so switch to a newer one.
277+
LLVM_CONFIG: llvm-config-16
275278

276279
LINUX_CONFIGURE_FEATURES: *LINUX_CONFIGURE_FEATURES
277280
LINUX_MESON_FEATURES: *LINUX_MESON_FEATURES
@@ -314,10 +317,11 @@ task:
314317
#DEBIAN_FRONTEND=noninteractive apt-get -y install ...
315318
316319
matrix:
317-
- name: Linux - Debian Bullseye - Autoconf
320+
- name: Linux - Debian Bookworm - Autoconf
318321

319322
env:
320323
SANITIZER_FLAGS: -fsanitize=address
324+
PG_TEST_PG_COMBINEBACKUP_MODE: --copy-file-range
321325

322326
# Normally, the "relation segment" code basically has no coverage in our
323327
# tests, because we (quite reasonably) don't generate tables large
@@ -334,7 +338,7 @@ task:
334338
\
335339
${LINUX_CONFIGURE_FEATURES} \
336340
\
337-
CLANG="ccache clang"
341+
CLANG="ccache clang-16"
338342
EOF
339343
build_script: su postgres -c "make -s -j${BUILD_JOBS} world-bin"
340344
upload_caches: ccache
@@ -348,7 +352,7 @@ task:
348352
on_failure:
349353
<<: *on_failure_ac
350354

351-
- name: Linux - Debian Bullseye - Meson
355+
- name: Linux - Debian Bookworm - Meson
352356

353357
env:
354358
CCACHE_MAXSIZE: "400M" # tests two different builds
@@ -375,7 +379,7 @@ task:
375379
${LINUX_MESON_FEATURES} \
376380
-Dllvm=disabled \
377381
--pkg-config-path /usr/lib/i386-linux-gnu/pkgconfig/ \
378-
-DPERL=perl5.32-i386-linux-gnu \
382+
-DPERL=perl5.36-i386-linux-gnu \
379383
-DPG_TEST_EXTRA="$PG_TEST_EXTRA" \
380384
build-32
381385
EOF
@@ -411,7 +415,7 @@ task:
411415

412416

413417
task:
414-
name: macOS - Ventura - Meson
418+
name: macOS - Sonoma - Meson
415419

416420
env:
417421
CPUS: 4 # always get that much for cirrusci macOS instances
@@ -420,7 +424,7 @@ task:
420424
# work OK. See
421425
# https://postgr.es/m/20220927040208.l3shfcidovpzqxfh%40awork3.anarazel.de
422426
TEST_JOBS: 8
423-
IMAGE: ghcr.io/cirruslabs/macos-ventura-base:latest
427+
IMAGE: ghcr.io/cirruslabs/macos-runner:sonoma
424428

425429
CIRRUS_WORKING_DIR: ${HOME}/pgsql/
426430
CCACHE_DIR: ${HOME}/ccache
@@ -432,6 +436,7 @@ task:
432436
CXXFLAGS: -Og -ggdb
433437

434438
PG_TEST_PG_UPGRADE_MODE: --clone
439+
PG_TEST_PG_COMBINEBACKUP_MODE: --clone
435440

436441
<<: *macos_task_template
437442

@@ -460,6 +465,13 @@ task:
460465
# updates macports every time.
461466
macports_cache:
462467
folder: ${MACPORTS_CACHE}
468+
fingerprint_script: |
469+
# Include the OS major version in the cache key. If the OS image changes
470+
# to a different major version, we need to reinstall.
471+
sw_vers -productVersion | sed 's/\..*//'
472+
# Also start afresh if we change our MacPorts install script.
473+
md5 src/tools/ci/ci_macports_packages.sh
474+
reupload_on_changes: true
463475
setup_additional_packages_script: |
464476
sh src/tools/ci/ci_macports_packages.sh \
465477
ccache \
@@ -520,6 +532,7 @@ WINDOWS_ENVIRONMENT_BASE: &WINDOWS_ENVIRONMENT_BASE
520532
PG_TEST_USE_UNIX_SOCKETS: 1
521533
PG_REGRESS_SOCK_DIR: "c:/cirrus/"
522534
DISK_SIZE: 50
535+
IMAGE_FAMILY: pg-ci-windows-ci
523536

524537
sysinfo_script: |
525538
chcp
@@ -543,7 +556,6 @@ task:
543556
# given that it explicitly prevents crash dumps from working...
544557
# 0x8001 is SEM_FAILCRITICALERRORS | SEM_NOOPENFILEERRORBOX
545558
CIRRUS_WINDOWS_ERROR_MODE: 0x8001
546-
IMAGE_FAMILY: pg-ci-windows-ci-vs-2019
547559

548560
<<: *windows_task_template
549561

@@ -604,7 +616,6 @@ task:
604616
# Start bash in current working directory
605617
CHERE_INVOKING: 1
606618
BASH: C:\msys64\usr\bin\bash.exe -l
607-
IMAGE_FAMILY: pg-ci-windows-ci-mingw64
608619

609620
<<: *windows_task_template
610621

@@ -652,7 +663,7 @@ task:
652663
env:
653664
CPUS: 4
654665
BUILD_JOBS: 4
655-
IMAGE_FAMILY: pg-ci-bullseye
666+
IMAGE_FAMILY: pg-ci-bookworm
656667

657668
# Use larger ccache cache, as this task compiles with multiple compilers /
658669
# flag combinations
@@ -662,6 +673,9 @@ task:
662673
LINUX_CONFIGURE_FEATURES: *LINUX_CONFIGURE_FEATURES
663674
LINUX_MESON_FEATURES: *LINUX_MESON_FEATURES
664675

676+
# GCC emits a warning for llvm-14, so switch to a newer one.
677+
LLVM_CONFIG: llvm-config-16
678+
665679
<<: *linux_task_template
666680

667681
sysinfo_script: |
@@ -697,7 +711,7 @@ task:
697711
--cache gcc.cache \
698712
--enable-dtrace \
699713
${LINUX_CONFIGURE_FEATURES} \
700-
CC="ccache gcc" CXX="ccache g++" CLANG="ccache clang"
714+
CC="ccache gcc" CXX="ccache g++" CLANG="ccache clang-16"
701715
make -s -j${BUILD_JOBS} clean
702716
time make -s -j${BUILD_JOBS} world-bin
703717
@@ -708,7 +722,7 @@ task:
708722
--cache gcc.cache \
709723
--enable-cassert \
710724
${LINUX_CONFIGURE_FEATURES} \
711-
CC="ccache gcc" CXX="ccache g++" CLANG="ccache clang"
725+
CC="ccache gcc" CXX="ccache g++" CLANG="ccache clang-16"
712726
make -s -j${BUILD_JOBS} clean
713727
time make -s -j${BUILD_JOBS} world-bin
714728
@@ -718,7 +732,7 @@ task:
718732
time ./configure \
719733
--cache clang.cache \
720734
${LINUX_CONFIGURE_FEATURES} \
721-
CC="ccache clang" CXX="ccache clang++" CLANG="ccache clang"
735+
CC="ccache clang" CXX="ccache clang++-16" CLANG="ccache clang-16"
722736
make -s -j${BUILD_JOBS} clean
723737
time make -s -j${BUILD_JOBS} world-bin
724738
@@ -730,7 +744,7 @@ task:
730744
--enable-cassert \
731745
--enable-dtrace \
732746
${LINUX_CONFIGURE_FEATURES} \
733-
CC="ccache clang" CXX="ccache clang++" CLANG="ccache clang"
747+
CC="ccache clang" CXX="ccache clang++-16" CLANG="ccache clang-16"
734748
make -s -j${BUILD_JOBS} clean
735749
time make -s -j${BUILD_JOBS} world-bin
736750
@@ -754,9 +768,7 @@ task:
754768
docs_build_script: |
755769
time ./configure \
756770
--cache gcc.cache \
757-
CC="ccache gcc" \
758-
CXX="ccache g++" \
759-
CLANG="ccache clang"
771+
CC="ccache gcc" CXX="ccache g++" CLANG="ccache clang-16"
760772
make -s -j${BUILD_JOBS} clean
761773
time make -s -j${BUILD_JOBS} -C doc
762774
@@ -775,7 +787,7 @@ task:
775787
${LINUX_CONFIGURE_FEATURES} \
776788
--without-icu \
777789
--quiet \
778-
CC="gcc" CXX"=g++" CLANG="clang"
790+
CC="gcc" CXX"=g++" CLANG="clang-16"
779791
make -s -j${BUILD_JOBS} clean
780792
time make -s headerscheck EXTRAFLAGS='-fmax-errors=10'
781793
headers_cpluspluscheck_script: |

.git-blame-ignore-revs

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,30 @@
1414
#
1515
# $ git log --pretty=format:"%H # %cd%n# %s" $PGINDENTGITHASH -1 --date=iso
1616

17+
7229ebe011dff3f418251a4836f6d098923aa1e1 # 2024-08-26 16:16:12 -0700
18+
# Fix identation.
19+
20+
2b03cfeea47834913ff769124f4deba88140f662 # 2024-08-21 09:58:11 -0400
21+
# Fix pgindent damage
22+
23+
97add39c038bbdb9082b416ddf04cd20b0d20bf5 # 2024-08-15 11:41:46 -0400
24+
# Clean up indentation and whitespace inconsistencies in ecpg.
25+
26+
8de5ca1dc9fa809102acd1983ee19159d0bc469f # 2024-08-12 10:57:03 +0300
27+
# Fix bad indentation introduced in commit f011e82c2c
28+
29+
c883453cb29cb40c1e59c3c54d159c5e744da8a9 # 2024-07-26 12:00:04 -0400
30+
# Fix indentation.
31+
32+
47ecbfdfcc71e41d7dcc35f0be04f8adbe88397f # 2024-07-15 15:17:04 -0700
33+
# Fix bad indentation introduced in 43cd30bcd1c
34+
35+
b48f275f18d7da4f4863888ad047cbd699698880 # 2024-06-28 10:51:05 -0400
36+
# pgindent, because I forgot to do that.
37+
38+
da256a4a7fdcca35fe7ca808686ad3de6ee22306 # 2024-05-14 16:34:50 -0400
39+
# Pre-beta mechanical code beautification.
40+
1741
64e401b62b1559d617db5c1e1070d7a05e794c27 # 2024-03-25 14:18:33 +0100
1842
# Fix indentation from a11f330b5
1943

.github/CODE_OF_CONDUCT.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
The PostgreSQL code of conduct can be found at
2+
<https://www.postgresql.org/about/policies/coc/>.

.github/CONTRIBUTING.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
For information about contributing to PostgreSQL, see
2+
<https://www.postgresql.org/developer/>.

.github/SECURITY.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
For information about reporting security issues, see
2+
<https://www.postgresql.org/support/security/>.

GNUmakefile.in

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,9 @@ update-unicode: | submake-generated-headers submake-libpgport
8787
distdir = postgresql-$(VERSION)
8888
dummy = =install=
8989

90+
# git revision to be packaged
91+
PG_GIT_REVISION = HEAD
92+
9093
GIT = git
9194

9295
dist: $(distdir).tar.gz $(distdir).tar.bz2
@@ -102,10 +105,10 @@ distdir-location:
102105
# on, Unix machines.
103106

104107
$(distdir).tar.gz:
105-
$(GIT) -C $(srcdir) -c core.autocrlf=false archive --format tar.gz -9 --prefix $(distdir)/ HEAD -o $(abs_top_builddir)/$@
108+
$(GIT) -C $(srcdir) -c core.autocrlf=false archive --format tar.gz -9 --prefix $(distdir)/ $(PG_GIT_REVISION) -o $(abs_top_builddir)/$@
106109

107110
$(distdir).tar.bz2:
108-
$(GIT) -C $(srcdir) -c core.autocrlf=false -c tar.tar.bz2.command='$(BZIP2) -c' archive --format tar.bz2 --prefix $(distdir)/ HEAD -o $(abs_top_builddir)/$@
111+
$(GIT) -C $(srcdir) -c core.autocrlf=false -c tar.tar.bz2.command='$(BZIP2) -c' archive --format tar.bz2 --prefix $(distdir)/ $(PG_GIT_REVISION) -o $(abs_top_builddir)/$@
109112

110113
distcheck: dist
111114
rm -rf $(dummy)

config/llvm.m4

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ AC_DEFUN([PGAC_LLVM_SUPPORT],
1313
AC_REQUIRE([AC_PROG_AWK])
1414
1515
AC_ARG_VAR(LLVM_CONFIG, [path to llvm-config command])
16-
PGAC_PATH_PROGS(LLVM_CONFIG, llvm-config llvm-config-17 llvm-config-16 llvm-config-15 llvm-config-14 llvm-config-13 llvm-config-12 llvm-config-11 llvm-config-10)
16+
PGAC_PATH_PROGS(LLVM_CONFIG, llvm-config)
1717
1818
# no point continuing if llvm wasn't found
1919
if test -z "$LLVM_CONFIG"; then
@@ -32,7 +32,7 @@ AC_DEFUN([PGAC_LLVM_SUPPORT],
3232
3333
# need clang to create some bitcode files
3434
AC_ARG_VAR(CLANG, [path to clang compiler to generate bitcode])
35-
PGAC_PATH_PROGS(CLANG, clang clang-17 clang-16 clang-15 clang-14 clang-13 clang-12 clang-11 clang-10)
35+
PGAC_PATH_PROGS(CLANG, clang)
3636
if test -z "$CLANG"; then
3737
AC_MSG_ERROR([clang not found, but required when compiling --with-llvm, specify with CLANG=])
3838
fi

0 commit comments

Comments
 (0)