Diff of the two buildlogs: -- --- b1/build.log 2024-05-16 06:29:41.373602523 +0000 +++ b2/build.log 2024-05-16 06:32:06.635426945 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Wed May 15 18:26:25 -12 2024 -I: pbuilder-time-stamp: 1715840785 +I: Current time: Thu Jun 19 02:52:44 +14 2025 +I: pbuilder-time-stamp: 1750251164 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/trixie-reproducible-base.tgz] I: copying local configuration @@ -25,52 +25,84 @@ dpkg-source: info: unpacking pgl-ddl-deploy_2.2.1-1.debian.tar.xz I: Not using root during the build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/478642/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/1890778/tmp/hooks/D01_modify_environment starting +debug: Running on codethink03-arm64. +I: Changing host+domainname to test build reproducibility +I: Adding a custom variable just for the fun of it... +I: Changing /bin/sh to bash +'/bin/sh' -> '/bin/bash' +lrwxrwxrwx 1 root root 9 Jun 18 12:52 /bin/sh -> /bin/bash +I: Setting pbuilder2's login shell to /bin/bash +I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other +I: user script /srv/workspace/pbuilder/1890778/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/1890778/tmp/hooks/D02_print_environment starting I: set - BUILDDIR='/build/reproducible-path' - BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other' - BUILDUSERNAME='pbuilder1' - BUILD_ARCH='arm64' - DEBIAN_FRONTEND='noninteractive' + BASH=/bin/sh + BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath + BASH_ALIASES=() + BASH_ARGC=() + BASH_ARGV=() + BASH_CMDS=() + BASH_LINENO=([0]="12" [1]="0") + BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:. + BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment") + BASH_VERSINFO=([0]="5" [1]="2" [2]="21" [3]="1" [4]="release" [5]="aarch64-unknown-linux-gnu") + BASH_VERSION='5.2.21(1)-release' + BUILDDIR=/build/reproducible-path + BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' + BUILDUSERNAME=pbuilder2 + BUILD_ARCH=arm64 + DEBIAN_FRONTEND=noninteractive DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=12 ' - DISTRIBUTION='trixie' - HOME='/root' - HOST_ARCH='arm64' + DIRSTACK=() + DISTRIBUTION=trixie + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=aarch64 + HOST_ARCH=arm64 IFS=' ' - INVOCATION_ID='399eb0c5af7b4102ad609c380fa05a8b' - LANG='C' - LANGUAGE='en_US:en' - LC_ALL='C' - MAIL='/var/mail/root' - OPTIND='1' - PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games' - PBCURRENTCOMMANDLINEOPERATION='build' - PBUILDER_OPERATION='build' - PBUILDER_PKGDATADIR='/usr/share/pbuilder' - PBUILDER_PKGLIBDIR='/usr/lib/pbuilder' - PBUILDER_SYSCONFDIR='/etc' - PPID='478642' - PS1='# ' - PS2='> ' + INVOCATION_ID=8cf829bec4c8488f958c00cf24ac0360 + LANG=C + LANGUAGE=nl_BE:nl + LC_ALL=C + MACHTYPE=aarch64-unknown-linux-gnu + MAIL=/var/mail/root + OPTERR=1 + OPTIND=1 + OSTYPE=linux-gnu + PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path + PBCURRENTCOMMANDLINEOPERATION=build + PBUILDER_OPERATION=build + PBUILDER_PKGDATADIR=/usr/share/pbuilder + PBUILDER_PKGLIBDIR=/usr/lib/pbuilder + PBUILDER_SYSCONFDIR=/etc + PIPESTATUS=([0]="0") + POSIXLY_CORRECT=y + PPID=1890778 PS4='+ ' - PWD='/' - SHELL='/bin/bash' - SHLVL='2' - SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.7J4xl9aG/pbuilderrc_5B9K --distribution trixie --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/trixie-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.7J4xl9aG/b1 --logfile b1/build.log pgl-ddl-deploy_2.2.1-1.dsc' - SUDO_GID='109' - SUDO_UID='104' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' - http_proxy='http://192.168.101.4:3128' + PWD=/ + SHELL=/bin/bash + SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix + SHLVL=3 + SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.7J4xl9aG/pbuilderrc_lfER --distribution trixie --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/trixie-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.7J4xl9aG/b2 --logfile b2/build.log pgl-ddl-deploy_2.2.1-1.dsc' + SUDO_GID=109 + SUDO_UID=104 + SUDO_USER=jenkins + TERM=unknown + TZ=/usr/share/zoneinfo/Etc/GMT-14 + UID=0 + USER=root + _='I: set' + http_proxy=http://192.168.101.4:3128 I: uname -a - Linux codethink02-arm64 6.1.0-21-cloud-arm64 #1 SMP Debian 6.1.90-1 (2024-05-03) aarch64 GNU/Linux + Linux i-capture-the-hostname 6.1.0-21-cloud-arm64 #1 SMP Debian 6.1.90-1 (2024-05-03) aarch64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 May 15 11:24 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/478642/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Jun 15 17:48 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/1890778/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -223,7 +255,7 @@ Get: 109 http://deb.debian.org/debian trixie/main arm64 postgresql-plpython3-16 arm64 16.3-1 [106 kB] Get: 110 http://deb.debian.org/debian trixie/main arm64 postgresql-pltcl-16 arm64 16.3-1 [39.1 kB] Get: 111 http://deb.debian.org/debian trixie/main arm64 postgresql-all all 260 [11.9 kB] -Fetched 170 MB in 2s (95.7 MB/s) +Fetched 170 MB in 1s (138 MB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package libjson-perl. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 19744 files and directories currently installed.) @@ -596,8 +628,8 @@ Setting up tzdata (2024a-4) ... Current default time zone: 'Etc/UTC' -Local time is now: Thu May 16 06:27:26 UTC 2024. -Universal Time is now: Thu May 16 06:27:26 UTC 2024. +Local time is now: Wed Jun 18 12:53:27 UTC 2025. +Universal Time is now: Wed Jun 18 12:53:27 UTC 2025. Run 'dpkg-reconfigure tzdata' if you wish to change it. Setting up autotools-dev (20220109.1) ... @@ -642,11 +674,6 @@ Setting up dh-autoreconf (20) ... Setting up libxml2-dev:arm64 (2.9.14+dfsg-1.3+b3) ... Setting up ssl-cert (1.1.2) ... -hostname: Name or service not known -make-ssl-cert: Could not get FQDN, using 'codethink02-arm64'. -make-ssl-cert: You may want to fix your /etc/hosts and/or DNS setup and run -make-ssl-cert: 'make-ssl-cert generate-default-snakeoil --force-overwrite' -make-ssl-cert: again. Setting up libgssapi-krb5-2:arm64 (1.20.1-6+b1) ... Setting up ucf (3.0043+nmu1) ... Setting up libreadline8t64:arm64 (8.2-4) ... @@ -703,7 +730,7 @@ selecting dynamic shared memory implementation ... posix selecting default max_connections ... 100 selecting default shared_buffers ... 128MB -selecting default time zone ... /usr/share/zoneinfo/Etc/GMT+12 +selecting default time zone ... /usr/share/zoneinfo/Etc/GMT-14 creating configuration files ... ok running bootstrap script ... ok performing post-bootstrap initialization ... ok @@ -731,7 +758,11 @@ Building tag database... -> Finished parsing the build-deps I: Building the package -I: Running cd /build/reproducible-path/pgl-ddl-deploy-2.2.1/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S > ../pgl-ddl-deploy_2.2.1-1_source.changes +I: user script /srv/workspace/pbuilder/1890778/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for trixie +I: user script /srv/workspace/pbuilder/1890778/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/pgl-ddl-deploy-2.2.1/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S > ../pgl-ddl-deploy_2.2.1-1_source.changes dpkg-buildpackage: info: source package pgl-ddl-deploy dpkg-buildpackage: info: source version 2.2.1-1 dpkg-buildpackage: info: source distribution unstable @@ -802,111 +833,259 @@ ### PostgreSQL 16 installcheck ### Creating new PostgreSQL cluster 16/regress ... Warning: connection to the database failed, disabling startup checks: -psql: error: connection to server on socket "/tmp/.s.PGSQL.5432" failed: FATAL: role "pbuilder1" does not exist +psql: error: connection to server on socket "/tmp/.s.PGSQL.5432" failed: FATAL: role "pbuilder2" does not exist make[2]: Entering directory '/build/reproducible-path/pgl-ddl-deploy-2.2.1' echo "# +++ regress install-check in +++" && /usr/lib/postgresql/16/lib/pgxs/src/makefiles/../../src/test/regress/pg_regress --inputdir=./ --bindir='/usr/lib/postgresql/16/bin' --dbname=contrib_regression 01_create_ext 02_setup 03_add_configs 04_deploy 04_deploy_update 05_allowed 06_multi 07_edges 08_ignored 09_unsupported 10_no_create_user 11_override 12_sql_command_tags 13_transaction 15_new_set_behavior 16_multi_set_tags 17_include_only_repset_tables_1 18_include_only_repset_tables_2 19_include_only_repset_tables_3 20_include_only_repset_tables_4 21_unprivileged_users 22_is_deployed 23_1_4_features 24_sub_retries 25_1_5_features 26_new_setup 27_raise_message 28_1_6_features 29_create_ext 30_setup 31_add_configs 32_deploy_update 33_allowed 34_multi 35_edges 36_ignored 37_unsupported 38_no_create_user 39_override 40_sql_command_tags 41_transaction 43_new_set_behavior 44_multi_set_tags 45_include_only_repset_tables_1 46_include_only_repset_tables_2 47_include_only_repset_tables_3 48_include_only_repset_tables_4 49_unprivileged_users 50_is_deployed 51_1_4_features 52_sub_retries 53_1_5_features 54_new_setup 55_raise_message 56_1_6_features 57_native_features # +++ regress install-check in +++ # using postmaster on localhost, port 5432 # could not set core size: disallowed by hard limit -ok 1 - 01_create_ext 247 ms -ok 2 - 02_setup 116 ms -ok 3 - 03_add_configs 79 ms -ok 4 - 04_deploy 376 ms -ok 5 - 04_deploy_update 876 ms -ok 6 - 05_allowed 1072 ms -ok 7 - 06_multi 2573 ms -ok 8 - 07_edges 254 ms -ok 9 - 08_ignored 143 ms -ok 10 - 09_unsupported 186 ms -ok 11 - 10_no_create_user 188 ms -ok 12 - 11_override 124 ms -ok 13 - 12_sql_command_tags 115 ms -ok 14 - 13_transaction 432 ms -ok 15 - 15_new_set_behavior 560 ms -ok 16 - 16_multi_set_tags 440 ms -ok 17 - 17_include_only_repset_tables_1 289 ms -ok 18 - 18_include_only_repset_tables_2 273 ms -ok 19 - 19_include_only_repset_tables_3 458 ms -ok 20 - 20_include_only_repset_tables_4 639 ms -ok 21 - 21_unprivileged_users 165 ms -ok 22 - 22_is_deployed 899 ms -ok 23 - 23_1_4_features 606 ms -ok 24 - 24_sub_retries 448 ms -ok 25 - 25_1_5_features 25828 ms -ok 26 - 26_new_setup 371 ms -ok 27 - 27_raise_message 55 ms -ok 28 - 28_1_6_features 195 ms -ok 29 - 29_create_ext 256 ms -ok 30 - 30_setup 141 ms -ok 31 - 31_add_configs 144 ms -ok 32 - 32_deploy_update 557 ms -ok 33 - 33_allowed 748 ms -ok 34 - 34_multi 2088 ms -ok 35 - 35_edges 277 ms -ok 36 - 36_ignored 209 ms -ok 37 - 37_unsupported 213 ms -ok 38 - 38_no_create_user 116 ms -ok 39 - 39_override 108 ms -ok 40 - 40_sql_command_tags 71 ms -ok 41 - 41_transaction 274 ms -ok 42 - 43_new_set_behavior 316 ms -ok 43 - 44_multi_set_tags 239 ms -ok 44 - 45_include_only_repset_tables_1 164 ms -ok 45 - 46_include_only_repset_tables_2 138 ms -ok 46 - 47_include_only_repset_tables_3 451 ms -ok 47 - 48_include_only_repset_tables_4 596 ms -ok 48 - 49_unprivileged_users 157 ms -ok 49 - 50_is_deployed 636 ms -ok 50 - 51_1_4_features 438 ms -ok 51 - 52_sub_retries 451 ms -ok 52 - 53_1_5_features 26014 ms -ok 53 - 54_new_setup 308 ms -ok 54 - 55_raise_message 105 ms -ok 55 - 56_1_6_features 307 ms -ok 56 - 57_native_features 308 ms +ok 1 - 01_create_ext 105 ms +ok 2 - 02_setup 63 ms +ok 3 - 03_add_configs 40 ms +ok 4 - 04_deploy 180 ms +ok 5 - 04_deploy_update 282 ms +ok 6 - 05_allowed 393 ms +ok 7 - 06_multi 1238 ms +ok 8 - 07_edges 132 ms +ok 9 - 08_ignored 115 ms +ok 10 - 09_unsupported 118 ms +ok 11 - 10_no_create_user 50 ms +ok 12 - 11_override 28 ms +ok 13 - 12_sql_command_tags 31 ms +ok 14 - 13_transaction 163 ms +ok 15 - 15_new_set_behavior 150 ms +ok 16 - 16_multi_set_tags 153 ms +ok 17 - 17_include_only_repset_tables_1 115 ms +ok 18 - 18_include_only_repset_tables_2 130 ms +ok 19 - 19_include_only_repset_tables_3 207 ms +ok 20 - 20_include_only_repset_tables_4 519 ms +ok 21 - 21_unprivileged_users 146 ms +ok 22 - 22_is_deployed 605 ms +ok 23 - 23_1_4_features 484 ms +ok 24 - 24_sub_retries 327 ms +not ok 25 - 25_1_5_features 21103 ms +ok 26 - 26_new_setup 344 ms +ok 27 - 27_raise_message 64 ms +ok 28 - 28_1_6_features 211 ms +ok 29 - 29_create_ext 259 ms +ok 30 - 30_setup 90 ms +ok 31 - 31_add_configs 95 ms +ok 32 - 32_deploy_update 466 ms +ok 33 - 33_allowed 775 ms +ok 34 - 34_multi 2535 ms +ok 35 - 35_edges 305 ms +ok 36 - 36_ignored 272 ms +ok 37 - 37_unsupported 297 ms +ok 38 - 38_no_create_user 191 ms +ok 39 - 39_override 73 ms +ok 40 - 40_sql_command_tags 136 ms +ok 41 - 41_transaction 571 ms +ok 42 - 43_new_set_behavior 447 ms +ok 43 - 44_multi_set_tags 455 ms +ok 44 - 45_include_only_repset_tables_1 359 ms +ok 45 - 46_include_only_repset_tables_2 271 ms +ok 46 - 47_include_only_repset_tables_3 312 ms +ok 47 - 48_include_only_repset_tables_4 530 ms +ok 48 - 49_unprivileged_users 119 ms +ok 49 - 50_is_deployed 854 ms +ok 50 - 51_1_4_features 795 ms +ok 51 - 52_sub_retries 376 ms +not ok 52 - 53_1_5_features 21136 ms +ok 53 - 54_new_setup 399 ms +ok 54 - 55_raise_message 62 ms +ok 55 - 56_1_6_features 227 ms +ok 56 - 57_native_features 238 ms 1..56 -# All 56 tests passed. +# 2 of 56 tests failed. +# The differences that caused some tests to fail can be viewed in the file "/build/reproducible-path/pgl-ddl-deploy-2.2.1/regression.diffs". +# A copy of the test summary that you see above is saved in the file "/build/reproducible-path/pgl-ddl-deploy-2.2.1/regression.out". +make[2]: *** [/usr/lib/postgresql/16/lib/pgxs/src/makefiles/pgxs.mk:436: installcheck] Error 1 make[2]: Leaving directory '/build/reproducible-path/pgl-ddl-deploy-2.2.1' +*** /tmp/pg_virtualenv.8CWIzT/log/postgresql-16-regress.log (last 100 lines) *** + RESET session_replication_role; + ELSE + SELECT COUNT(1) INTO v_ct FROM pgl_ddl_deploy.subscriber_logs; + PERFORM verify_count(v_ct, 0); + END IF; + + END$$; +2025-06-19 02:55:03.811 /USR/SHARE/ZONEINFO/ETC/GMT [1945892] postgres@contrib_regression LOG: ct: 3 +2025-06-19 02:55:03.811 /USR/SHARE/ZONEINFO/ETC/GMT [1945892] postgres@contrib_regression CONTEXT: PL/pgSQL function verify_count(integer,integer) line 4 at RAISE + SQL statement "SELECT verify_count(v_ct, 3)" + PL/pgSQL function inline_code_block line 13 at PERFORM +2025-06-19 02:55:03.811 /USR/SHARE/ZONEINFO/ETC/GMT [1945892] postgres@contrib_regression STATEMENT: DO $$ + DECLARE v_ct INT; + BEGIN + + IF current_setting('server_version_num')::INT >= 100000 THEN + SELECT COUNT(1) INTO v_ct FROM information_schema.columns WHERE table_name = 'nativerox'; + PERFORM verify_count(v_ct, 2); + SELECT COUNT(1) INTO v_ct FROM pgl_ddl_deploy.subscriber_logs; + PERFORM verify_count(v_ct, 1); + PERFORM pgl_ddl_deploy.retry_all_subscriber_logs(); + SELECT (SELECT COUNT(1) FROM pgl_ddl_deploy.subscriber_logs WHERE NOT succeeded) + + (SELECT COUNT(1) FROM pgl_ddl_deploy.subscriber_logs WHERE error_message ~* 'No subscription to publication mock exists') INTO v_ct; + PERFORM verify_count(v_ct, 3); + -- test for duplicate avoidance with multiple subscriptions + SELECT COUNT(1) INTO v_ct FROM pgl_ddl_deploy.queue; + PERFORM verify_count(v_ct, 3); + SET session_replication_role TO replica; + INSERT INTO pgl_ddl_deploy.queue SELECT * FROM pgl_ddl_deploy.queue; + SELECT COUNT(1) INTO v_ct FROM pgl_ddl_deploy.queue; + PERFORM verify_count(v_ct, 3); + RESET session_replication_role; + ELSE + SELECT COUNT(1) INTO v_ct FROM pgl_ddl_deploy.subscriber_logs; + PERFORM verify_count(v_ct, 0); + END IF; + + END$$; +2025-06-19 02:55:03.811 /USR/SHARE/ZONEINFO/ETC/GMT [1945892] postgres@contrib_regression LOG: ct: 3 +2025-06-19 02:55:03.811 /USR/SHARE/ZONEINFO/ETC/GMT [1945892] postgres@contrib_regression CONTEXT: PL/pgSQL function verify_count(integer,integer) line 4 at RAISE + SQL statement "SELECT verify_count(v_ct, 3)" + PL/pgSQL function inline_code_block line 16 at PERFORM +2025-06-19 02:55:03.811 /USR/SHARE/ZONEINFO/ETC/GMT [1945892] postgres@contrib_regression STATEMENT: DO $$ + DECLARE v_ct INT; + BEGIN + + IF current_setting('server_version_num')::INT >= 100000 THEN + SELECT COUNT(1) INTO v_ct FROM information_schema.columns WHERE table_name = 'nativerox'; + PERFORM verify_count(v_ct, 2); + SELECT COUNT(1) INTO v_ct FROM pgl_ddl_deploy.subscriber_logs; + PERFORM verify_count(v_ct, 1); + PERFORM pgl_ddl_deploy.retry_all_subscriber_logs(); + SELECT (SELECT COUNT(1) FROM pgl_ddl_deploy.subscriber_logs WHERE NOT succeeded) + + (SELECT COUNT(1) FROM pgl_ddl_deploy.subscriber_logs WHERE error_message ~* 'No subscription to publication mock exists') INTO v_ct; + PERFORM verify_count(v_ct, 3); + -- test for duplicate avoidance with multiple subscriptions + SELECT COUNT(1) INTO v_ct FROM pgl_ddl_deploy.queue; + PERFORM verify_count(v_ct, 3); + SET session_replication_role TO replica; + INSERT INTO pgl_ddl_deploy.queue SELECT * FROM pgl_ddl_deploy.queue; + SELECT COUNT(1) INTO v_ct FROM pgl_ddl_deploy.queue; + PERFORM verify_count(v_ct, 3); + RESET session_replication_role; + ELSE + SELECT COUNT(1) INTO v_ct FROM pgl_ddl_deploy.subscriber_logs; + PERFORM verify_count(v_ct, 0); + END IF; + + END$$; +2025-06-19 02:55:03.812 /USR/SHARE/ZONEINFO/ETC/GMT [1945892] postgres@contrib_regression LOG: ct: 3 +2025-06-19 02:55:03.812 /USR/SHARE/ZONEINFO/ETC/GMT [1945892] postgres@contrib_regression CONTEXT: PL/pgSQL function verify_count(integer,integer) line 4 at RAISE + SQL statement "SELECT verify_count(v_ct, 3)" + PL/pgSQL function inline_code_block line 20 at PERFORM +2025-06-19 02:55:03.812 /USR/SHARE/ZONEINFO/ETC/GMT [1945892] postgres@contrib_regression STATEMENT: DO $$ + DECLARE v_ct INT; + BEGIN + + IF current_setting('server_version_num')::INT >= 100000 THEN + SELECT COUNT(1) INTO v_ct FROM information_schema.columns WHERE table_name = 'nativerox'; + PERFORM verify_count(v_ct, 2); + SELECT COUNT(1) INTO v_ct FROM pgl_ddl_deploy.subscriber_logs; + PERFORM verify_count(v_ct, 1); + PERFORM pgl_ddl_deploy.retry_all_subscriber_logs(); + SELECT (SELECT COUNT(1) FROM pgl_ddl_deploy.subscriber_logs WHERE NOT succeeded) + + (SELECT COUNT(1) FROM pgl_ddl_deploy.subscriber_logs WHERE error_message ~* 'No subscription to publication mock exists') INTO v_ct; + PERFORM verify_count(v_ct, 3); + -- test for duplicate avoidance with multiple subscriptions + SELECT COUNT(1) INTO v_ct FROM pgl_ddl_deploy.queue; + PERFORM verify_count(v_ct, 3); + SET session_replication_role TO replica; + INSERT INTO pgl_ddl_deploy.queue SELECT * FROM pgl_ddl_deploy.queue; + SELECT COUNT(1) INTO v_ct FROM pgl_ddl_deploy.queue; + PERFORM verify_count(v_ct, 3); + RESET session_replication_role; + ELSE + SELECT COUNT(1) INTO v_ct FROM pgl_ddl_deploy.subscriber_logs; + PERFORM verify_count(v_ct, 0); + END IF; + + END$$; Dropping cluster 16/regress ... -make[2]: Entering directory '/build/reproducible-path/pgl-ddl-deploy-2.2.1' -rm -f pgl_ddl_deploy.so ddl_deparse.so pgl_ddl_deploy.o ddl_deparse.o \ - pgl_ddl_deploy.bc ddl_deparse.bc -rm -rf results/ regression.diffs regression.out tmp_check/ tmp_check_iso/ log/ output_iso/ -make[2]: Leaving directory '/build/reproducible-path/pgl-ddl-deploy-2.2.1' -### End 16 installcheck ### +**** regression.diffs **** +diff -U3 /build/reproducible-path/pgl-ddl-deploy-2.2.1/expected/25_1_5_features.out /build/reproducible-path/pgl-ddl-deploy-2.2.1/results/25_1_5_features.out +--- /build/reproducible-path/pgl-ddl-deploy-2.2.1/expected/25_1_5_features.out 2023-11-30 10:12:27.000000000 +1400 ++++ /build/reproducible-path/pgl-ddl-deploy-2.2.1/results/25_1_5_features.out 2025-06-19 02:54:29.416893238 +1400 +@@ -324,21 +324,18 @@ + id | bla + ----+----- + 1 | 1 +- 2 | 1 +-(2 rows) ++(1 row) + + DROP TABLE public.bar CASCADE; + SELECT signal, successful, state, query, reported + FROM pgl_ddl_deploy.killed_blockers + ORDER BY signal, query; +- signal | successful | state | query | reported +------------+------------+---------------------+---------------------------------------------------------------------+---------- +- cancel | t | active | BEGIN; SELECT * FROM public.foo; SELECT pg_sleep(30); | f +- cancel | t | idle in transaction | SELECT * FROM public.foo; | f +- terminate | t | active | BEGIN; ALTER TABLE public.foo DROP COLUMN bar; SELECT pg_sleep(30); | f +- terminate | t | active | BEGIN; SELECT * FROM public.foo; SELECT pg_sleep(30); | f +- terminate | t | idle in transaction | SELECT * FROM public.foo; | f +-(5 rows) ++ signal | successful | state | query | reported ++-----------+------------+--------+---------------------------------------------------------------------+---------- ++ cancel | t | active | BEGIN; SELECT * FROM public.foo; SELECT pg_sleep(30); | f ++ terminate | t | active | BEGIN; ALTER TABLE public.foo DROP COLUMN bar; SELECT pg_sleep(30); | f ++ terminate | t | active | BEGIN; SELECT * FROM public.foo; SELECT pg_sleep(30); | f ++(3 rows) + + SELECT pg_sleep(1); + pg_sleep +diff -U3 /build/reproducible-path/pgl-ddl-deploy-2.2.1/expected/53_1_5_features.out /build/reproducible-path/pgl-ddl-deploy-2.2.1/results/53_1_5_features.out +--- /build/reproducible-path/pgl-ddl-deploy-2.2.1/expected/53_1_5_features.out 2023-11-30 10:12:27.000000000 +1400 ++++ /build/reproducible-path/pgl-ddl-deploy-2.2.1/results/53_1_5_features.out 2025-06-19 02:55:02.748893238 +1400 +@@ -324,21 +324,18 @@ + id | bla + ----+----- + 1 | 1 +- 2 | 1 +-(2 rows) ++(1 row) + + DROP TABLE public.bar CASCADE; + SELECT signal, successful, state, query, reported + FROM pgl_ddl_deploy.killed_blockers + ORDER BY signal, query; +- signal | successful | state | query | reported +------------+------------+---------------------+---------------------------------------------------------------------+---------- +- cancel | t | active | BEGIN; SELECT * FROM public.foo; SELECT pg_sleep(30); | f +- cancel | t | idle in transaction | SELECT * FROM public.foo; | f +- terminate | t | active | BEGIN; ALTER TABLE public.foo DROP COLUMN bar; SELECT pg_sleep(30); | f +- terminate | t | active | BEGIN; SELECT * FROM public.foo; SELECT pg_sleep(30); | f +- terminate | t | idle in transaction | SELECT * FROM public.foo; | f +-(5 rows) ++ signal | successful | state | query | reported ++-----------+------------+--------+---------------------------------------------------------------------+---------- ++ cancel | t | active | BEGIN; SELECT * FROM public.foo; SELECT pg_sleep(30); | f ++ terminate | t | active | BEGIN; ALTER TABLE public.foo DROP COLUMN bar; SELECT pg_sleep(30); | f ++ terminate | t | active | BEGIN; SELECT * FROM public.foo; SELECT pg_sleep(30); | f ++(3 rows) + + SELECT pg_sleep(1); + pg_sleep +### End 16 installcheck (FAILED with exit code 1) ### +make[1]: *** [debian/rules:4: override_dh_pgxs_test] Error 1 make[1]: Leaving directory '/build/reproducible-path/pgl-ddl-deploy-2.2.1' - dh_strip_nondeterminism - dh_compress - dh_fixperms - dh_missing - dh_dwz -a - dh_strip -a - dh_makeshlibs -a - dh_shlibdeps -a - dh_installdeb - dh_gencontrol -dpkg-gencontrol: warning: Depends field of package postgresql-16-pgl-ddl-deploy: substitution variable ${shlibs:Depends} used, but is not defined -dpkg-gencontrol: warning: package postgresql-16-pgl-ddl-deploy: substitution variable ${postgresql:Depends} unused, but is defined -dpkg-gencontrol: warning: Depends field of package postgresql-16-pgl-ddl-deploy: substitution variable ${shlibs:Depends} used, but is not defined -dpkg-gencontrol: warning: package postgresql-16-pgl-ddl-deploy: substitution variable ${postgresql:Depends} unused, but is defined - dh_md5sums - dh_builddeb -dpkg-deb: building package 'postgresql-16-pgl-ddl-deploy' in '../postgresql-16-pgl-ddl-deploy_2.2.1-1_arm64.deb'. -dpkg-deb: building package 'postgresql-16-pgl-ddl-deploy-dbgsym' in '../postgresql-16-pgl-ddl-deploy-dbgsym_2.2.1-1_arm64.deb'. - dpkg-genbuildinfo --build=binary -O../pgl-ddl-deploy_2.2.1-1_arm64.buildinfo - dpkg-genchanges --build=binary -O../pgl-ddl-deploy_2.2.1-1_arm64.changes -dpkg-genchanges: info: binary-only upload (no source code included) - dpkg-source --after-build . -dpkg-buildpackage: info: binary-only upload (no source included) -dpkg-genchanges: info: including full source code in upload +make: *** [debian/rules:9: binary] Error 2 +dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2 I: copying local configuration +E: Failed autobuilding of package +I: user script /srv/workspace/pbuilder/1890778/tmp/hooks/C01_cleanup starting +debug output: disk usage on i-capture-the-hostname at Wed Jun 18 12:55:04 UTC 2025 +Filesystem Size Used Avail Use% Mounted on +tmpfs 30G 0 30G 0% /dev/shm + +I: user script /srv/workspace/pbuilder/1890778/tmp/hooks/C01_cleanup finished I: unmounting dev/ptmx filesystem I: unmounting dev/pts filesystem I: unmounting dev/shm filesystem I: unmounting proc filesystem I: unmounting sys filesystem I: cleaning the build env -I: removing directory /srv/workspace/pbuilder/478642 and its subdirectories -I: Current time: Wed May 15 18:29:40 -12 2024 -I: pbuilder-time-stamp: 1715840980 +I: removing directory /srv/workspace/pbuilder/1890778 and its subdirectories