Bug#1053346: bullseye-pu: package postgresql-common/225+deb11u1
Package: release.debian.org
Severity: normal
Tags: bullseye
User: release.debian.org@packages.debian.org
Usertags: pu
X-Debbugs-Cc: postgresql-common@packages.debian.org
Control: affects -1 + src:postgresql-common
Hi,
I've uploaded a new postgresql-common package to bullseye that fixes
the autopktest tests on salsa-ci and ci.debian.net. (Test-only
changes.)
* Fix t/085 to correctly prepare the test environment
* Tell ./testsuite to continue testing even when one test fails
* Change debian/gitlab-ci.yml to use the standard pipeline
The result is mostly green:
https://salsa.debian.org/postgresql/postgresql-common/-/pipelines/585893
(The lintian error is an dependency on lsb-base that I don't want to
touch in oldstable.)
Please unblock postgresql-common/225+deb11u1
Thanks,
Christoph
Control files: lines which differ (wdiff format)
------------------------------------------------
Vcs-Git: https://salsa.debian.org/postgresql/postgresql-common.git {+-b bullseye+}
diff -Nru postgresql-common-225/debian/changelog postgresql-common-225+deb11u1/debian/changelog
--- postgresql-common-225/debian/changelog 2021-02-02 15:40:25.000000000 +0100
+++ postgresql-common-225+deb11u1/debian/changelog 2023-10-02 10:20:47.000000000 +0200
@@ -1,3 +1,11 @@
+postgresql-common (225+deb11u1) bullseye; urgency=medium
+
+ * t/085_pg_ctl.conf.t: sudo and salsa-ci set the core file size hard limit
+ to 0 by default, undo that. (Salsa: postgresql/postgresql#2)
+ * testsuite: Run all tests even when one is failing.
+
+ -- Christoph Berg <myon@debian.org> Mon, 02 Oct 2023 10:20:47 +0200
+
postgresql-common (225) unstable; urgency=medium
* pg_lsclusters, cluster_info: Show cluster managed by pacemaker or patroni.
diff -Nru postgresql-common-225/debian/control postgresql-common-225+deb11u1/debian/control
--- postgresql-common-225/debian/control 2020-10-22 14:15:09.000000000 +0200
+++ postgresql-common-225+deb11u1/debian/control 2023-10-02 10:20:47.000000000 +0200
@@ -8,7 +8,7 @@
Peter Eisentraut <petere@debian.org>,
Standards-Version: 4.4.0
Rules-Requires-Root: no
-Vcs-Git: https://salsa.debian.org/postgresql/postgresql-common.git
+Vcs-Git: https://salsa.debian.org/postgresql/postgresql-common.git -b bullseye
Vcs-Browser: https://salsa.debian.org/postgresql/postgresql-common
Build-Depends:
debhelper (>= 9),
diff -Nru postgresql-common-225/debian/gitlab-ci.yml postgresql-common-225+deb11u1/debian/gitlab-ci.yml
--- postgresql-common-225/debian/gitlab-ci.yml 2020-09-30 09:27:36.000000000 +0200
+++ postgresql-common-225+deb11u1/debian/gitlab-ci.yml 2023-10-02 10:20:47.000000000 +0200
@@ -1,44 +1,5 @@
-.debian_script: &debian_script
- - $SUDO apt-get update
- - $SUDO apt-get -o DPkg::Options::=--force-confnew dist-upgrade -y
- - $SUDO apt-get install -y build-essential fakeroot debhelper libreadline-dev dh-systemd
- - rm -f ../*.deb ../*.dsc ../*.buildinfo ../*.changes ../*.tar.*
- - dpkg-buildpackage -uc -us -rfakeroot
- - ( set -x; for deb in ../*.deb; do dpkg-deb --info $deb; dpkg-deb --contents $deb; done )
- - ( set -x; $SUDO dpkg --force-confmiss --force-confnew -i ../*.deb || { $SUDO apt-get install -fy; $SUDO dpkg --force-confmiss --force-confnew -i ../*.deb; } )
- - dpkg -l postgresql\* | cat
- - $SUDO ./cleanpg
- - cd /usr/share/postgresql-common && $SUDO ./testsuite -v "$(./supported-versions)" -i
+include:
+ - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/recipes/debian.yml
-sid:
- image: debian:unstable
- script: *debian_script
- variables:
- SKIP_IPV6: 1
-
-buster:
- tags:
- - buster
- script: *debian_script
- variables:
- SUDO: sudo
-
-stretch:
- tags:
- - stretch
- script: *debian_script
- variables:
- SUDO: sudo
-
-centos7:
- tags:
- - centos7
- script:
- - sudo yum install -y rpm-build centos-release-scl epel-release # for llvm
- - make rpmremove
- - make rpmbuild
- - rpm -ql pgdg-redhat-repo > /dev/null || sudo yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
- - sudo yum -y update
- - make rpminstall
- - sudo ./cleanpg
- - cd /usr/share/postgresql-common && sudo ./testsuite -v "$(./supported-versions)" -i
+variables:
+ RELEASE: 'bullseye'
diff -Nru postgresql-common-225/t/085_pg_ctl.conf.t postgresql-common-225+deb11u1/t/085_pg_ctl.conf.t
--- postgresql-common-225/t/085_pg_ctl.conf.t 2019-11-15 19:58:53.000000000 +0100
+++ postgresql-common-225+deb11u1/t/085_pg_ctl.conf.t 2023-10-02 10:20:47.000000000 +0200
@@ -6,7 +6,7 @@
use TestLib;
use PgCommon;
-use Test::More tests => $MAJORS[-1] >= '8.3' ? 29 : 1;
+use Test::More tests => $MAJORS[-1] >= '8.3' ? 33 : 1;
# Do test with newest version
my $v = $MAJORS[-1];
@@ -15,38 +15,37 @@
exit 0;
}
-is ((system "pg_createcluster $v main >/dev/null"), 0, "pg_createcluster $v main");
+# enable core dumps
+# sudo and salsa-ci set the hard limit to 0 by default, undo that
+is_program_out 0, "prlimit --core=0:unlimited --pid=$$", 0, '', "set core file size to unlimited";
+is_program_out 'postgres', "sh -c 'ulimit -Hc'", 0, "unlimited\n", "core file size is unlimited";
+# create cluster
+is ((system "pg_createcluster $v main >/dev/null"), 0, "pg_createcluster $v main");
ok (-f "/etc/postgresql/$v/main/pg_ctl.conf", "/etc/postgresql/$v/main/pg_ctl.conf exists");
# Default behaviour, core size=0
-is_program_out 'postgres', "pg_ctlcluster $v main start", 0, '', "starting cluster";
-
+is_program_out 0, "pg_ctlcluster $v main start", 0, '', "starting cluster as root";
is_program_out 'postgres', "xargs -i awk '/core/ {print \$5}' /proc/{}/limits < /var/run/postgresql/$v-main.pid", 0, "0\n", "soft core size is 0";
+my $hard_limit = `xargs -i awk '/core/ {print \$6}' /proc/{}/limits < /var/run/postgresql/$v-main.pid`;
+chomp $hard_limit;
+note "hard core file size limit of root-started postgres process is $hard_limit";
# -c in pg_ctl.conf, core size=unlimited
ok (set_cluster_pg_ctl_conf($v, 'main', '-c'), "set pg_ctl default option to -c");
-
-is_program_out 'postgres', "pg_ctlcluster $v main restart", 0, '', "restarting cluster";
-
-is_program_out 'postgres', "xargs -i awk '/core/ {print \$5}' /proc/{}/limits < /var/run/postgresql/$v-main.pid", 0, "unlimited\n", "soft core size is unlimited";
+is_program_out 0, "pg_ctlcluster $v main restart", 0, '', "restarting cluster as root";
+is_program_out 'postgres', "xargs -i awk '/core/ {print \$5}' /proc/{}/limits < /var/run/postgresql/$v-main.pid", 0, "$hard_limit\n", "soft core size is $hard_limit";
# Back to default behaviour, core size=0
-
+is_program_out 0, "pg_ctlcluster $v main stop", 0, '', "stopping cluster";
ok (set_cluster_pg_ctl_conf($v, 'main', ''), "restored pg_ctl default option");
-is_program_out 'postgres', "pg_ctlcluster $v main restart", 0, '', "restarting cluster";
-
-is_program_out 'postgres', "xargs -i awk '/core/ {print \$5}' /proc/{}/limits < /var/run/postgresql/$v-main.pid", 0, "0\n", "soft core size is 0";
-
# pg_ctl -c, core size=unlimited
-
-is_program_out 'postgres', "pg_ctlcluster $v main restart -- -c", 0, '', "restarting cluster with -c on the command line";
-
+is_program_out 'postgres', "pg_ctlcluster $v main start -- -c", 0, '', "starting cluster with -c on the command line as postgres";
is_program_out 'postgres', "xargs -i awk '/core/ {print \$5}' /proc/{}/limits < /var/run/postgresql/$v-main.pid", 0, "unlimited\n", "soft core size is unlimited";
+is_program_out 'postgres', "pg_ctlcluster $v main stop", 0, '', "stopping cluster";
is ((system "pg_dropcluster $v main --stop"), 0, 'dropping cluster');
-
check_clean;
# vim: filetype=perl
diff -Nru postgresql-common-225/testsuite postgresql-common-225+deb11u1/testsuite
--- postgresql-common-225/testsuite 2020-10-22 14:13:18.000000000 +0200
+++ postgresql-common-225+deb11u1/testsuite 2023-10-02 10:20:47.000000000 +0200
@@ -200,14 +200,23 @@
for T; do
TBASE=${T##*/}
[ "${FROM:-}" ] && [ "${TBASE%%_*}" -lt "${FROM:-}" ] && continue
- echo "=== Running test $TBASE ... ==="
+ echo "### PostgreSQL test $TBASE ###"
perl -I. $T || {
EXIT=$?
+ FAILED_TESTS="${FAILED_TESTS:-} $T"
if [ "${FAILURE:-}" ]; then
echo "*** $TBASE failed with status $EXIT, dropping you into a shell in the testbed ***"
${SHELL:-/bin/sh}
fi
- exit $EXIT
}
+ echo "### End test $TBASE ###"
+ echo
done
done
+
+if [ "${FAILED_TESTS:-}" ]; then
+ echo "Failed tests: $FAILED_TESTS"
+ echo
+fi
+
+exit ${EXIT:-0}
Reply to: