0s autopkgtest [12:17:27]: starting date and time: 2024-03-22 12:17:27+0000 0s autopkgtest [12:17:27]: git checkout: 4a1cd702 l/adt_testbed: don't blame the testbed for unsolvable build deps 0s autopkgtest [12:17:27]: host juju-7f2275-prod-proposed-migration-environment-2; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.6mqteti0/out --timeout-copy=6000 --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --setup-commands /home/ubuntu/autopkgtest/setup-commands/setup-testbed --apt-pocket=proposed=src:sphinx --apt-upgrade patroni --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 --env=ADT_TEST_TRIGGERS=sphinx/7.2.6-6 -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor autopkgtest --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-2@bos02-s390x-9.secgroup --name adt-noble-s390x-patroni-20240322-121727-juju-7f2275-prod-proposed-migration-environment-2 --image adt/ubuntu-noble-s390x-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-2 --net-id=net_prod-proposed-migration -e TERM=linux -e ''"'"'http_proxy=http://squid.internal:3128'"'"'' -e ''"'"'https_proxy=http://squid.internal:3128'"'"'' -e ''"'"'no_proxy=127.0.0.1,127.0.1.1,login.ubuntu.com,localhost,localdomain,novalocal,internal,archive.ubuntu.com,ports.ubuntu.com,security.ubuntu.com,ddebs.ubuntu.com,changelogs.ubuntu.com,launchpadlibrarian.net,launchpadcontent.net,launchpad.net,10.24.0.0/24,keystone.ps5.canonical.com,objectstorage.prodstack5.canonical.com'"'"'' --mirror=http://ftpmaster.internal/ubuntu/ 84s autopkgtest [12:18:51]: testbed dpkg architecture: s390x 84s autopkgtest [12:18:51]: testbed apt version: 2.7.12 84s autopkgtest [12:18:51]: @@@@@@@@@@@@@@@@@@@@ test bed setup 85s Get:1 http://ftpmaster.internal/ubuntu noble-proposed InRelease [117 kB] 86s Get:2 http://ftpmaster.internal/ubuntu noble-proposed/main Sources [496 kB] 86s Get:3 http://ftpmaster.internal/ubuntu noble-proposed/universe Sources [3807 kB] 86s Get:4 http://ftpmaster.internal/ubuntu noble-proposed/restricted Sources [6540 B] 86s Get:5 http://ftpmaster.internal/ubuntu noble-proposed/multiverse Sources [54.0 kB] 86s Get:6 http://ftpmaster.internal/ubuntu noble-proposed/main s390x Packages [665 kB] 86s Get:7 http://ftpmaster.internal/ubuntu noble-proposed/main s390x c-n-f Metadata [3032 B] 86s Get:8 http://ftpmaster.internal/ubuntu noble-proposed/restricted s390x Packages [1372 B] 86s Get:9 http://ftpmaster.internal/ubuntu noble-proposed/restricted s390x c-n-f Metadata [116 B] 86s Get:10 http://ftpmaster.internal/ubuntu noble-proposed/universe s390x Packages [3992 kB] 86s Get:11 http://ftpmaster.internal/ubuntu noble-proposed/universe s390x c-n-f Metadata [7292 B] 86s Get:12 http://ftpmaster.internal/ubuntu noble-proposed/multiverse s390x Packages [45.1 kB] 86s Get:13 http://ftpmaster.internal/ubuntu noble-proposed/multiverse s390x c-n-f Metadata [116 B] 89s Fetched 9195 kB in 3s (3269 kB/s) 89s Reading package lists... 92s Reading package lists... 92s Building dependency tree... 92s Reading state information... 92s Calculating upgrade... 92s The following packages will be upgraded: 92s cloud-init debianutils fonts-ubuntu-console python3-markupsafe 93s 4 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 93s Need to get 719 kB of archives. 93s After this operation, 11.3 kB disk space will be freed. 93s Get:1 http://ftpmaster.internal/ubuntu noble/main s390x debianutils s390x 5.17 [90.1 kB] 93s Get:2 http://ftpmaster.internal/ubuntu noble/main s390x fonts-ubuntu-console all 0.869+git20240321-0ubuntu1 [18.7 kB] 93s Get:3 http://ftpmaster.internal/ubuntu noble/main s390x python3-markupsafe s390x 2.1.5-1build1 [12.8 kB] 93s Get:4 http://ftpmaster.internal/ubuntu noble/main s390x cloud-init all 24.1.2-0ubuntu1 [597 kB] 93s Preconfiguring packages ... 93s Fetched 719 kB in 1s (1434 kB/s) 93s (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 ... 52171 files and directories currently installed.) 93s Preparing to unpack .../debianutils_5.17_s390x.deb ... 93s Unpacking debianutils (5.17) over (5.16) ... 93s Setting up debianutils (5.17) ... 94s (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 ... 52171 files and directories currently installed.) 94s Preparing to unpack .../fonts-ubuntu-console_0.869+git20240321-0ubuntu1_all.deb ... 94s Unpacking fonts-ubuntu-console (0.869+git20240321-0ubuntu1) over (0.869-0ubuntu1) ... 94s Preparing to unpack .../python3-markupsafe_2.1.5-1build1_s390x.deb ... 94s Unpacking python3-markupsafe (2.1.5-1build1) over (2.1.5-1) ... 94s Preparing to unpack .../cloud-init_24.1.2-0ubuntu1_all.deb ... 94s Unpacking cloud-init (24.1.2-0ubuntu1) over (24.1.1-0ubuntu1) ... 94s Setting up fonts-ubuntu-console (0.869+git20240321-0ubuntu1) ... 94s Setting up cloud-init (24.1.2-0ubuntu1) ... 96s Setting up python3-markupsafe (2.1.5-1build1) ... 96s Processing triggers for man-db (2.12.0-3) ... 97s Processing triggers for rsyslog (8.2312.0-3ubuntu3) ... 97s Reading package lists... 98s Building dependency tree... 98s Reading state information... 98s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 98s Unknown architecture, assuming PC-style ttyS0 98s sh: Attempting to set up Debian/Ubuntu apt sources automatically 98s sh: Distribution appears to be Ubuntu 99s Reading package lists... 100s Building dependency tree... 100s Reading state information... 100s eatmydata is already the newest version (131-1). 100s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 100s Reading package lists... 100s Building dependency tree... 100s Reading state information... 100s dbus is already the newest version (1.14.10-4ubuntu1). 100s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 100s Reading package lists... 100s Building dependency tree... 100s Reading state information... 101s rng-tools-debian is already the newest version (2.4). 101s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 101s Reading package lists... 101s Building dependency tree... 101s Reading state information... 101s The following packages will be REMOVED: 101s cloud-init* python3-configobj* python3-debconf* 101s 0 upgraded, 0 newly installed, 3 to remove and 0 not upgraded. 101s After this operation, 3256 kB disk space will be freed. 102s (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 ... 52170 files and directories currently installed.) 102s Removing cloud-init (24.1.2-0ubuntu1) ... 102s Removing python3-configobj (5.0.8-3) ... 102s Removing python3-debconf (1.5.86) ... 102s Processing triggers for man-db (2.12.0-3) ... 103s (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 ... 51781 files and directories currently installed.) 103s Purging configuration files for cloud-init (24.1.2-0ubuntu1) ... 103s dpkg: warning: while removing cloud-init, directory '/etc/cloud/cloud.cfg.d' not empty so not removed 103s Processing triggers for rsyslog (8.2312.0-3ubuntu3) ... 103s invoke-rc.d: policy-rc.d denied execution of try-restart. 103s Reading package lists... 104s Building dependency tree... 104s Reading state information... 104s linux-generic is already the newest version (6.8.0-11.11+1). 104s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 104s Hit:1 http://ftpmaster.internal/ubuntu noble InRelease 104s Hit:2 http://ftpmaster.internal/ubuntu noble-updates InRelease 104s Hit:3 http://ftpmaster.internal/ubuntu noble-security InRelease 106s Reading package lists... 106s Reading package lists... 106s Building dependency tree... 106s Reading state information... 107s Calculating upgrade... 107s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 107s Reading package lists... 107s Building dependency tree... 107s Reading state information... 107s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 107s autopkgtest [12:19:14]: rebooting testbed after setup commands that affected boot 126s autopkgtest [12:19:33]: testbed running kernel: Linux 6.8.0-11-generic #11-Ubuntu SMP Tue Feb 13 23:45:46 UTC 2024 129s autopkgtest [12:19:36]: @@@@@@@@@@@@@@@@@@@@ apt-source patroni 131s Get:1 http://ftpmaster.internal/ubuntu noble/universe patroni 3.2.2-2 (dsc) [2873 B] 131s Get:2 http://ftpmaster.internal/ubuntu noble/universe patroni 3.2.2-2 (tar) [1121 kB] 131s Get:3 http://ftpmaster.internal/ubuntu noble/universe patroni 3.2.2-2 (diff) [22.9 kB] 132s gpgv: Signature made Tue Feb 6 14:38:55 2024 UTC 132s gpgv: using RSA key 5C48FE6157F49179597087C64C5A6BAB12D2A7AE 132s gpgv: Can't check signature: No public key 132s dpkg-source: warning: cannot verify inline signature for ./patroni_3.2.2-2.dsc: no acceptable signature found 132s autopkgtest [12:19:39]: testing package patroni version 3.2.2-2 132s autopkgtest [12:19:39]: build not needed 132s autopkgtest [12:19:39]: test acceptance-etcd3: preparing testbed 136s Reading package lists... 136s Building dependency tree... 136s Reading state information... 136s Starting pkgProblemResolver with broken count: 0 136s Starting 2 pkgProblemResolver with broken count: 0 136s Done 137s The following additional packages will be installed: 137s etcd-server fonts-font-awesome fonts-lato libio-pty-perl libipc-run-perl 137s libjs-jquery libjs-sphinxdoc libjs-underscore libjson-perl libllvm17 libpq5 137s libtime-duration-perl libtimedate-perl libxslt1.1 moreutils patroni 137s patroni-doc postgresql postgresql-16 postgresql-client-16 137s postgresql-client-common postgresql-common python3-behave python3-cdiff 137s python3-click python3-colorama python3-coverage python3-dateutil 137s python3-dnspython python3-etcd python3-parse python3-parse-type 137s python3-prettytable python3-psutil python3-psycopg2 python3-wcwidth 137s sphinx-rtd-theme-common ssl-cert 137s Suggested packages: 137s etcd-client vip-manager haproxy postgresql-doc postgresql-doc-16 137s python-coverage-doc python3-trio python3-aioquic python3-h2 python3-httpx 137s python3-httpcore etcd python-psycopg2-doc 137s Recommended packages: 137s javascript-common libjson-xs-perl 137s The following NEW packages will be installed: 137s autopkgtest-satdep etcd-server fonts-font-awesome fonts-lato libio-pty-perl 137s libipc-run-perl libjs-jquery libjs-sphinxdoc libjs-underscore libjson-perl 137s libllvm17 libpq5 libtime-duration-perl libtimedate-perl libxslt1.1 moreutils 137s patroni patroni-doc postgresql postgresql-16 postgresql-client-16 137s postgresql-client-common postgresql-common python3-behave python3-cdiff 137s python3-click python3-colorama python3-coverage python3-dateutil 137s python3-dnspython python3-etcd python3-parse python3-parse-type 137s python3-prettytable python3-psutil python3-psycopg2 python3-wcwidth 137s sphinx-rtd-theme-common ssl-cert 137s 0 upgraded, 39 newly installed, 0 to remove and 0 not upgraded. 137s Need to get 64.5 MB/64.5 MB of archives. 137s After this operation, 270 MB of additional disk space will be used. 137s Get:1 /tmp/autopkgtest.yyH96f/1-autopkgtest-satdep.deb autopkgtest-satdep s390x 0 [764 B] 137s Get:2 http://ftpmaster.internal/ubuntu noble/main s390x fonts-lato all 2.015-1 [2781 kB] 138s Get:3 http://ftpmaster.internal/ubuntu noble/main s390x libjson-perl all 4.10000-1 [81.9 kB] 138s Get:4 http://ftpmaster.internal/ubuntu noble/main s390x postgresql-client-common all 257 [36.2 kB] 138s Get:5 http://ftpmaster.internal/ubuntu noble/main s390x ssl-cert all 1.1.2ubuntu1 [17.8 kB] 138s Get:6 http://ftpmaster.internal/ubuntu noble/main s390x postgresql-common all 257 [162 kB] 138s Get:7 http://ftpmaster.internal/ubuntu noble/universe s390x etcd-server s390x 3.4.30-1 [7779 kB] 139s Get:8 http://ftpmaster.internal/ubuntu noble/main s390x fonts-font-awesome all 5.0.10+really4.7.0~dfsg-4.1 [516 kB] 139s Get:9 http://ftpmaster.internal/ubuntu noble/main s390x libio-pty-perl s390x 1:1.20-1 [31.2 kB] 139s Get:10 http://ftpmaster.internal/ubuntu noble/main s390x libipc-run-perl all 20231003.0-1 [92.1 kB] 139s Get:11 http://ftpmaster.internal/ubuntu noble/main s390x libjs-jquery all 3.6.1+dfsg+~3.5.14-1 [328 kB] 139s Get:12 http://ftpmaster.internal/ubuntu noble/main s390x libjs-underscore all 1.13.4~dfsg+~1.11.4-3 [118 kB] 139s Get:13 http://ftpmaster.internal/ubuntu noble/main s390x libjs-sphinxdoc all 7.2.6-4 [149 kB] 139s Get:14 http://ftpmaster.internal/ubuntu noble/main s390x libllvm17 s390x 1:17.0.6-5build1 [31.2 MB] 141s Get:15 http://ftpmaster.internal/ubuntu noble/main s390x libpq5 s390x 16.2-1 [143 kB] 141s Get:16 http://ftpmaster.internal/ubuntu noble/main s390x libtime-duration-perl all 1.21-2 [12.3 kB] 141s Get:17 http://ftpmaster.internal/ubuntu noble/main s390x libtimedate-perl all 2.3300-2 [34.0 kB] 141s Get:18 http://ftpmaster.internal/ubuntu noble/main s390x libxslt1.1 s390x 1.1.35-1 [157 kB] 141s Get:19 http://ftpmaster.internal/ubuntu noble/universe s390x moreutils s390x 0.69-1 [57.4 kB] 141s Get:20 http://ftpmaster.internal/ubuntu noble/universe s390x python3-cdiff all 1.0-1.1 [16.4 kB] 141s Get:21 http://ftpmaster.internal/ubuntu noble/main s390x python3-colorama all 0.4.6-4 [32.1 kB] 141s Get:22 http://ftpmaster.internal/ubuntu noble/main s390x python3-click all 8.1.6-1 [79.0 kB] 141s Get:23 http://ftpmaster.internal/ubuntu noble/main s390x python3-dateutil all 2.8.2-3 [79.2 kB] 141s Get:24 http://ftpmaster.internal/ubuntu noble/main s390x python3-wcwidth all 0.2.5+dfsg1-1.1ubuntu1 [22.5 kB] 141s Get:25 http://ftpmaster.internal/ubuntu noble/main s390x python3-prettytable all 3.6.0-1 [33.1 kB] 141s Get:26 http://ftpmaster.internal/ubuntu noble/main s390x python3-psutil s390x 5.9.8-1 [195 kB] 141s Get:27 http://ftpmaster.internal/ubuntu noble/main s390x python3-psycopg2 s390x 2.9.9-1 [180 kB] 141s Get:28 http://ftpmaster.internal/ubuntu noble/main s390x python3-dnspython all 2.6.1-1ubuntu1 [163 kB] 141s Get:29 http://ftpmaster.internal/ubuntu noble/universe s390x python3-etcd all 0.4.5-4 [31.9 kB] 141s Get:30 http://ftpmaster.internal/ubuntu noble/universe s390x patroni all 3.2.2-2 [253 kB] 141s Get:31 http://ftpmaster.internal/ubuntu noble/main s390x sphinx-rtd-theme-common all 2.0.0+dfsg-1 [1012 kB] 142s Get:32 http://ftpmaster.internal/ubuntu noble/universe s390x patroni-doc all 3.2.2-2 [476 kB] 142s Get:33 http://ftpmaster.internal/ubuntu noble/main s390x postgresql-client-16 s390x 16.2-1 [1295 kB] 142s Get:34 http://ftpmaster.internal/ubuntu noble/main s390x postgresql-16 s390x 16.2-1 [16.7 MB] 142s Get:35 http://ftpmaster.internal/ubuntu noble/main s390x postgresql all 16+257 [11.4 kB] 142s Get:36 http://ftpmaster.internal/ubuntu noble/universe s390x python3-parse all 1.19.0-0.2 [18.1 kB] 142s Get:37 http://ftpmaster.internal/ubuntu noble/universe s390x python3-parse-type all 0.6.2-1 [22.7 kB] 142s Get:38 http://ftpmaster.internal/ubuntu noble/universe s390x python3-behave all 1.2.6-5 [98.4 kB] 142s Get:39 http://ftpmaster.internal/ubuntu noble/universe s390x python3-coverage s390x 7.3.2-0ubuntu1 [147 kB] 143s Preconfiguring packages ... 143s Fetched 64.5 MB in 6s (11.5 MB/s) 143s Selecting previously unselected package fonts-lato. 143s (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 ... 51726 files and directories currently installed.) 143s Preparing to unpack .../00-fonts-lato_2.015-1_all.deb ... 143s Unpacking fonts-lato (2.015-1) ... 143s Selecting previously unselected package libjson-perl. 143s Preparing to unpack .../01-libjson-perl_4.10000-1_all.deb ... 143s Unpacking libjson-perl (4.10000-1) ... 143s Selecting previously unselected package postgresql-client-common. 143s Preparing to unpack .../02-postgresql-client-common_257_all.deb ... 143s Unpacking postgresql-client-common (257) ... 143s Selecting previously unselected package ssl-cert. 143s Preparing to unpack .../03-ssl-cert_1.1.2ubuntu1_all.deb ... 143s Unpacking ssl-cert (1.1.2ubuntu1) ... 143s Selecting previously unselected package postgresql-common. 143s Preparing to unpack .../04-postgresql-common_257_all.deb ... 143s Adding 'diversion of /usr/bin/pg_config to /usr/bin/pg_config.libpq-dev by postgresql-common' 143s Unpacking postgresql-common (257) ... 143s Selecting previously unselected package etcd-server. 143s Preparing to unpack .../05-etcd-server_3.4.30-1_s390x.deb ... 143s Unpacking etcd-server (3.4.30-1) ... 143s Selecting previously unselected package fonts-font-awesome. 143s Preparing to unpack .../06-fonts-font-awesome_5.0.10+really4.7.0~dfsg-4.1_all.deb ... 143s Unpacking fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ... 144s Selecting previously unselected package libio-pty-perl. 144s Preparing to unpack .../07-libio-pty-perl_1%3a1.20-1_s390x.deb ... 144s Unpacking libio-pty-perl (1:1.20-1) ... 144s Selecting previously unselected package libipc-run-perl. 144s Preparing to unpack .../08-libipc-run-perl_20231003.0-1_all.deb ... 144s Unpacking libipc-run-perl (20231003.0-1) ... 144s Selecting previously unselected package libjs-jquery. 144s Preparing to unpack .../09-libjs-jquery_3.6.1+dfsg+~3.5.14-1_all.deb ... 144s Unpacking libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 144s Selecting previously unselected package libjs-underscore. 144s Preparing to unpack .../10-libjs-underscore_1.13.4~dfsg+~1.11.4-3_all.deb ... 144s Unpacking libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 144s Selecting previously unselected package libjs-sphinxdoc. 144s Preparing to unpack .../11-libjs-sphinxdoc_7.2.6-4_all.deb ... 144s Unpacking libjs-sphinxdoc (7.2.6-4) ... 144s Selecting previously unselected package libllvm17:s390x. 144s Preparing to unpack .../12-libllvm17_1%3a17.0.6-5build1_s390x.deb ... 144s Unpacking libllvm17:s390x (1:17.0.6-5build1) ... 145s Selecting previously unselected package libpq5:s390x. 145s Preparing to unpack .../13-libpq5_16.2-1_s390x.deb ... 145s Unpacking libpq5:s390x (16.2-1) ... 145s Selecting previously unselected package libtime-duration-perl. 145s Preparing to unpack .../14-libtime-duration-perl_1.21-2_all.deb ... 145s Unpacking libtime-duration-perl (1.21-2) ... 145s Selecting previously unselected package libtimedate-perl. 145s Preparing to unpack .../15-libtimedate-perl_2.3300-2_all.deb ... 145s Unpacking libtimedate-perl (2.3300-2) ... 145s Selecting previously unselected package libxslt1.1:s390x. 145s Preparing to unpack .../16-libxslt1.1_1.1.35-1_s390x.deb ... 145s Unpacking libxslt1.1:s390x (1.1.35-1) ... 145s Selecting previously unselected package moreutils. 145s Preparing to unpack .../17-moreutils_0.69-1_s390x.deb ... 145s Unpacking moreutils (0.69-1) ... 145s Selecting previously unselected package python3-cdiff. 145s Preparing to unpack .../18-python3-cdiff_1.0-1.1_all.deb ... 145s Unpacking python3-cdiff (1.0-1.1) ... 145s Selecting previously unselected package python3-colorama. 145s Preparing to unpack .../19-python3-colorama_0.4.6-4_all.deb ... 145s Unpacking python3-colorama (0.4.6-4) ... 145s Selecting previously unselected package python3-click. 145s Preparing to unpack .../20-python3-click_8.1.6-1_all.deb ... 145s Unpacking python3-click (8.1.6-1) ... 145s Selecting previously unselected package python3-dateutil. 145s Preparing to unpack .../21-python3-dateutil_2.8.2-3_all.deb ... 145s Unpacking python3-dateutil (2.8.2-3) ... 145s Selecting previously unselected package python3-wcwidth. 145s Preparing to unpack .../22-python3-wcwidth_0.2.5+dfsg1-1.1ubuntu1_all.deb ... 145s Unpacking python3-wcwidth (0.2.5+dfsg1-1.1ubuntu1) ... 145s Selecting previously unselected package python3-prettytable. 145s Preparing to unpack .../23-python3-prettytable_3.6.0-1_all.deb ... 145s Unpacking python3-prettytable (3.6.0-1) ... 145s Selecting previously unselected package python3-psutil. 145s Preparing to unpack .../24-python3-psutil_5.9.8-1_s390x.deb ... 145s Unpacking python3-psutil (5.9.8-1) ... 145s Selecting previously unselected package python3-psycopg2. 145s Preparing to unpack .../25-python3-psycopg2_2.9.9-1_s390x.deb ... 145s Unpacking python3-psycopg2 (2.9.9-1) ... 145s Selecting previously unselected package python3-dnspython. 145s Preparing to unpack .../26-python3-dnspython_2.6.1-1ubuntu1_all.deb ... 145s Unpacking python3-dnspython (2.6.1-1ubuntu1) ... 145s Selecting previously unselected package python3-etcd. 145s Preparing to unpack .../27-python3-etcd_0.4.5-4_all.deb ... 145s Unpacking python3-etcd (0.4.5-4) ... 145s Selecting previously unselected package patroni. 145s Preparing to unpack .../28-patroni_3.2.2-2_all.deb ... 145s Unpacking patroni (3.2.2-2) ... 145s Selecting previously unselected package sphinx-rtd-theme-common. 145s Preparing to unpack .../29-sphinx-rtd-theme-common_2.0.0+dfsg-1_all.deb ... 145s Unpacking sphinx-rtd-theme-common (2.0.0+dfsg-1) ... 145s Selecting previously unselected package patroni-doc. 145s Preparing to unpack .../30-patroni-doc_3.2.2-2_all.deb ... 145s Unpacking patroni-doc (3.2.2-2) ... 145s Selecting previously unselected package postgresql-client-16. 145s Preparing to unpack .../31-postgresql-client-16_16.2-1_s390x.deb ... 145s Unpacking postgresql-client-16 (16.2-1) ... 145s Selecting previously unselected package postgresql-16. 145s Preparing to unpack .../32-postgresql-16_16.2-1_s390x.deb ... 145s Unpacking postgresql-16 (16.2-1) ... 146s Selecting previously unselected package postgresql. 146s Preparing to unpack .../33-postgresql_16+257_all.deb ... 146s Unpacking postgresql (16+257) ... 146s Selecting previously unselected package python3-parse. 146s Preparing to unpack .../34-python3-parse_1.19.0-0.2_all.deb ... 146s Unpacking python3-parse (1.19.0-0.2) ... 146s Selecting previously unselected package python3-parse-type. 146s Preparing to unpack .../35-python3-parse-type_0.6.2-1_all.deb ... 146s Unpacking python3-parse-type (0.6.2-1) ... 146s Selecting previously unselected package python3-behave. 146s Preparing to unpack .../36-python3-behave_1.2.6-5_all.deb ... 146s Unpacking python3-behave (1.2.6-5) ... 146s Selecting previously unselected package python3-coverage. 146s Preparing to unpack .../37-python3-coverage_7.3.2-0ubuntu1_s390x.deb ... 146s Unpacking python3-coverage (7.3.2-0ubuntu1) ... 146s Selecting previously unselected package autopkgtest-satdep. 146s Preparing to unpack .../38-1-autopkgtest-satdep.deb ... 146s Unpacking autopkgtest-satdep (0) ... 146s Setting up postgresql-client-common (257) ... 146s Setting up fonts-lato (2.015-1) ... 146s Setting up libio-pty-perl (1:1.20-1) ... 146s Setting up python3-colorama (0.4.6-4) ... 146s Setting up python3-cdiff (1.0-1.1) ... 146s Setting up libpq5:s390x (16.2-1) ... 146s Setting up python3-coverage (7.3.2-0ubuntu1) ... 146s Setting up python3-click (8.1.6-1) ... 147s Setting up python3-psutil (5.9.8-1) ... 147s Setting up python3-wcwidth (0.2.5+dfsg1-1.1ubuntu1) ... 147s Setting up ssl-cert (1.1.2ubuntu1) ... 148s Created symlink /etc/systemd/system/multi-user.target.wants/ssl-cert.service → /usr/lib/systemd/system/ssl-cert.service. 148s Setting up python3-psycopg2 (2.9.9-1) ... 148s Setting up libipc-run-perl (20231003.0-1) ... 148s Setting up libtime-duration-perl (1.21-2) ... 148s Setting up libtimedate-perl (2.3300-2) ... 148s Setting up python3-dnspython (2.6.1-1ubuntu1) ... 149s Setting up python3-parse (1.19.0-0.2) ... 149s Setting up libjson-perl (4.10000-1) ... 149s Setting up libxslt1.1:s390x (1.1.35-1) ... 149s Setting up python3-dateutil (2.8.2-3) ... 149s Setting up etcd-server (3.4.30-1) ... 149s info: Selecting UID from range 100 to 999 ... 149s 149s info: Selecting GID from range 100 to 999 ... 149s info: Adding system user `etcd' (UID 107) ... 149s info: Adding new group `etcd' (GID 113) ... 149s info: Adding new user `etcd' (UID 107) with group `etcd' ... 149s info: Creating home directory `/var/lib/etcd/' ... 150s Created symlink /etc/systemd/system/etcd2.service → /usr/lib/systemd/system/etcd.service. 150s Created symlink /etc/systemd/system/multi-user.target.wants/etcd.service → /usr/lib/systemd/system/etcd.service. 151s Setting up libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 151s Setting up python3-prettytable (3.6.0-1) ... 151s Setting up libllvm17:s390x (1:17.0.6-5build1) ... 151s Setting up fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ... 151s Setting up sphinx-rtd-theme-common (2.0.0+dfsg-1) ... 151s Setting up libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 151s Setting up moreutils (0.69-1) ... 151s Setting up python3-etcd (0.4.5-4) ... 151s Setting up postgresql-client-16 (16.2-1) ... 152s update-alternatives: using /usr/share/postgresql/16/man/man1/psql.1.gz to provide /usr/share/man/man1/psql.1.gz (psql.1.gz) in auto mode 152s Setting up python3-parse-type (0.6.2-1) ... 152s Setting up postgresql-common (257) ... 152s 152s Creating config file /etc/postgresql-common/createcluster.conf with new version 152s Building PostgreSQL dictionaries from installed myspell/hunspell packages... 152s Removing obsolete dictionary files: 153s Created symlink /etc/systemd/system/multi-user.target.wants/postgresql.service → /usr/lib/systemd/system/postgresql.service. 154s Setting up libjs-sphinxdoc (7.2.6-4) ... 154s Setting up python3-behave (1.2.6-5) ... 154s /usr/lib/python3/dist-packages/behave/formatter/ansi_escapes.py:57: SyntaxWarning: invalid escape sequence '\[' 154s _ANSI_ESCAPE_PATTERN = re.compile(u"\x1b\[\d+[mA]", re.UNICODE) 154s /usr/lib/python3/dist-packages/behave/matchers.py:267: SyntaxWarning: invalid escape sequence '\d' 154s """Registers a custom type that will be available to "parse" 154s Setting up patroni (3.2.2-2) ... 154s Created symlink /etc/systemd/system/multi-user.target.wants/patroni.service → /usr/lib/systemd/system/patroni.service. 155s Setting up postgresql-16 (16.2-1) ... 156s Creating new PostgreSQL cluster 16/main ... 156s /usr/lib/postgresql/16/bin/initdb -D /var/lib/postgresql/16/main --auth-local peer --auth-host scram-sha-256 --no-instructions 156s The files belonging to this database system will be owned by user "postgres". 156s This user must also own the server process. 156s 156s The database cluster will be initialized with locale "C.UTF-8". 156s The default database encoding has accordingly been set to "UTF8". 156s The default text search configuration will be set to "english". 156s 156s Data page checksums are disabled. 156s 156s fixing permissions on existing directory /var/lib/postgresql/16/main ... ok 156s creating subdirectories ... ok 156s selecting dynamic shared memory implementation ... posix 156s selecting default max_connections ... 100 156s selecting default shared_buffers ... 128MB 156s selecting default time zone ... Etc/UTC 156s creating configuration files ... ok 156s running bootstrap script ... ok 156s performing post-bootstrap initialization ... ok 156s syncing data to disk ... ok 160s Setting up patroni-doc (3.2.2-2) ... 160s Setting up postgresql (16+257) ... 160s Setting up autopkgtest-satdep (0) ... 160s Processing triggers for man-db (2.12.0-3) ... 161s Processing triggers for libc-bin (2.39-0ubuntu2) ... 164s (Reading database ... 55088 files and directories currently installed.) 164s Removing autopkgtest-satdep (0) ... 165s autopkgtest [12:20:12]: test acceptance-etcd3: debian/tests/acceptance etcd3 165s autopkgtest [12:20:12]: test acceptance-etcd3: [----------------------- 165s dpkg-architecture: warning: cannot determine CC system type, falling back to default (native compilation) 165s ++ ls -1r /usr/lib/postgresql/ 165s + for PG_VERSION in $(ls -1r /usr/lib/postgresql/) 165s ### PostgreSQL 16 acceptance-etcd3 ### 165s + echo '### PostgreSQL 16 acceptance-etcd3 ###' 165s + '[' 16 == 10 ']' 165s + SKIP= 165s + bash -c 'set -o pipefail; ETCD_UNSUPPORTED_ARCH=s390x DCS=etcd3 PATH=/usr/lib/postgresql/16/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin behave | ts' 166s Mar 22 12:20:13 Feature: basic replication # features/basic_replication.feature:1 166s Mar 22 12:20:13 We should check that the basic bootstrapping, replication and failover works. 166s Mar 22 12:20:13 Scenario: check replication of a single table # features/basic_replication.feature:4 166s Mar 22 12:20:13 Given I start postgres0 # features/steps/basic_replication.py:8 170s Mar 22 12:20:17 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 171s Mar 22 12:20:18 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 171s Mar 22 12:20:18 When I issue a PATCH request to http://127.0.0.1:8008/config with {"ttl": 20, "synchronous_mode": true} # features/steps/patroni_api.py:71 171s Mar 22 12:20:18 Then I receive a response code 200 # features/steps/patroni_api.py:98 171s Mar 22 12:20:18 When I start postgres1 # features/steps/basic_replication.py:8 175s Mar 22 12:20:22 And I configure and start postgres2 with a tag replicatefrom postgres0 # features/steps/cascading_replication.py:7 179s Mar 22 12:20:26 And "sync" key in DCS has leader=postgres0 after 20 seconds # features/steps/cascading_replication.py:23 179s Mar 22 12:20:26 And I add the table foo to postgres0 # features/steps/basic_replication.py:49 179s Mar 22 12:20:26 Then table foo is present on postgres1 after 20 seconds # features/steps/basic_replication.py:89 180s Mar 22 12:20:27 Then table foo is present on postgres2 after 20 seconds # features/steps/basic_replication.py:89 183s Mar 22 12:20:30 183s Mar 22 12:20:30 Scenario: check restart of sync replica # features/basic_replication.feature:17 183s Mar 22 12:20:30 Given I shut down postgres2 # features/steps/basic_replication.py:29 184s Mar 22 12:20:31 Then "sync" key in DCS has sync_standby=postgres1 after 5 seconds # features/steps/cascading_replication.py:23 184s Mar 22 12:20:31 When I start postgres2 # features/steps/basic_replication.py:8 187s Mar 22 12:20:34 And I shut down postgres1 # features/steps/basic_replication.py:29 190s Mar 22 12:20:37 Then "sync" key in DCS has sync_standby=postgres2 after 10 seconds # features/steps/cascading_replication.py:23 191s Mar 22 12:20:38 When I start postgres1 # features/steps/basic_replication.py:8 194s Mar 22 12:20:41 Then "members/postgres1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 195s Mar 22 12:20:42 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 195s Mar 22 12:20:42 And Status code on GET http://127.0.0.1:8009/async is 200 after 3 seconds # features/steps/patroni_api.py:142 196s Mar 22 12:20:42 196s Mar 22 12:20:42 Scenario: check stuck sync replica # features/basic_replication.feature:28 196s Mar 22 12:20:42 Given I issue a PATCH request to http://127.0.0.1:8008/config with {"pause": true, "maximum_lag_on_syncnode": 15000000, "postgresql": {"parameters": {"synchronous_commit": "remote_apply"}}} # features/steps/patroni_api.py:71 196s Mar 22 12:20:43 Then I receive a response code 200 # features/steps/patroni_api.py:98 196s Mar 22 12:20:43 And I create table on postgres0 # features/steps/basic_replication.py:69 196s Mar 22 12:20:43 And table mytest is present on postgres1 after 2 seconds # features/steps/basic_replication.py:89 197s Mar 22 12:20:44 And table mytest is present on postgres2 after 2 seconds # features/steps/basic_replication.py:89 197s Mar 22 12:20:44 When I pause wal replay on postgres2 # features/steps/basic_replication.py:58 197s Mar 22 12:20:44 And I load data on postgres0 # features/steps/basic_replication.py:80 198s Mar 22 12:20:45 Then "sync" key in DCS has sync_standby=postgres1 after 15 seconds # features/steps/cascading_replication.py:23 201s Mar 22 12:20:48 And I resume wal replay on postgres2 # features/steps/basic_replication.py:58 201s Mar 22 12:20:48 And Status code on GET http://127.0.0.1:8009/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 201s Mar 22 12:20:48 And Status code on GET http://127.0.0.1:8010/async is 200 after 3 seconds # features/steps/patroni_api.py:142 201s Mar 22 12:20:48 When I issue a PATCH request to http://127.0.0.1:8008/config with {"pause": null, "maximum_lag_on_syncnode": -1, "postgresql": {"parameters": {"synchronous_commit": "on"}}} # features/steps/patroni_api.py:71 201s Mar 22 12:20:48 Then I receive a response code 200 # features/steps/patroni_api.py:98 201s Mar 22 12:20:48 And I drop table on postgres0 # features/steps/basic_replication.py:69 201s Mar 22 12:20:48 201s Mar 22 12:20:48 Scenario: check multi sync replication # features/basic_replication.feature:44 201s Mar 22 12:20:48 Given I issue a PATCH request to http://127.0.0.1:8008/config with {"synchronous_node_count": 2} # features/steps/patroni_api.py:71 201s Mar 22 12:20:48 Then I receive a response code 200 # features/steps/patroni_api.py:98 201s Mar 22 12:20:48 Then "sync" key in DCS has sync_standby=postgres1,postgres2 after 10 seconds # features/steps/cascading_replication.py:23 205s Mar 22 12:20:52 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 205s Mar 22 12:20:52 And Status code on GET http://127.0.0.1:8009/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 205s Mar 22 12:20:52 When I issue a PATCH request to http://127.0.0.1:8008/config with {"synchronous_node_count": 1} # features/steps/patroni_api.py:71 205s Mar 22 12:20:52 Then I receive a response code 200 # features/steps/patroni_api.py:98 205s Mar 22 12:20:52 And I shut down postgres1 # features/steps/basic_replication.py:29 208s Mar 22 12:20:55 Then "sync" key in DCS has sync_standby=postgres2 after 10 seconds # features/steps/cascading_replication.py:23 209s Mar 22 12:20:56 When I start postgres1 # features/steps/basic_replication.py:8 212s Mar 22 12:20:59 Then "members/postgres1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 213s Mar 22 12:21:00 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 213s Mar 22 12:21:00 And Status code on GET http://127.0.0.1:8009/async is 200 after 3 seconds # features/steps/patroni_api.py:142 214s Mar 22 12:21:01 214s Mar 22 12:21:01 Scenario: check the basic failover in synchronous mode # features/basic_replication.feature:59 214s Mar 22 12:21:01 Given I run patronictl.py pause batman # features/steps/patroni_api.py:86 215s Mar 22 12:21:02 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 215s Mar 22 12:21:02 When I sleep for 2 seconds # features/steps/patroni_api.py:39 217s Mar 22 12:21:04 And I shut down postgres0 # features/steps/basic_replication.py:29 218s Mar 22 12:21:05 And I run patronictl.py resume batman # features/steps/patroni_api.py:86 220s Mar 22 12:21:07 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 220s Mar 22 12:21:07 And postgres2 role is the primary after 24 seconds # features/steps/basic_replication.py:101 238s Mar 22 12:21:25 And Response on GET http://127.0.0.1:8010/history contains recovery after 10 seconds # features/steps/patroni_api.py:156 240s Mar 22 12:21:27 And there is a postgres2_cb.log with "on_role_change master batman" in postgres2 data directory # features/steps/cascading_replication.py:12 240s Mar 22 12:21:27 When I issue a PATCH request to http://127.0.0.1:8010/config with {"synchronous_mode": null, "master_start_timeout": 0} # features/steps/patroni_api.py:71 240s Mar 22 12:21:27 Then I receive a response code 200 # features/steps/patroni_api.py:98 240s Mar 22 12:21:27 When I add the table bar to postgres2 # features/steps/basic_replication.py:49 240s Mar 22 12:21:27 Then table bar is present on postgres1 after 20 seconds # features/steps/basic_replication.py:89 242s Mar 22 12:21:29 And Response on GET http://127.0.0.1:8010/config contains master_start_timeout after 10 seconds # features/steps/patroni_api.py:156 242s Mar 22 12:21:29 242s Mar 22 12:21:29 Scenario: check rejoin of the former primary with pg_rewind # features/basic_replication.feature:75 242s Mar 22 12:21:29 Given I add the table splitbrain to postgres0 # features/steps/basic_replication.py:49 242s Mar 22 12:21:29 And I start postgres0 # features/steps/basic_replication.py:8 242s Mar 22 12:21:29 Then postgres0 role is the secondary after 20 seconds # features/steps/basic_replication.py:101 250s Mar 22 12:21:37 When I add the table buz to postgres2 # features/steps/basic_replication.py:49 250s Mar 22 12:21:37 Then table buz is present on postgres0 after 20 seconds # features/steps/basic_replication.py:89 251s Mar 22 12:21:38 251s Mar 22 12:21:38 @reject-duplicate-name 251s Mar 22 12:21:38 Scenario: check graceful rejection when two nodes have the same name # features/basic_replication.feature:83 251s Mar 22 12:21:38 Given I start duplicate postgres0 on port 8011 # features/steps/basic_replication.py:13 253s Mar 22 12:21:40 Then there is one of ["Can't start; there is already a node named 'postgres0' running"] CRITICAL in the dup-postgres0 patroni log after 5 seconds # features/steps/basic_replication.py:117 258s Mar 22 12:21:45 258s Mar 22 12:21:45 Feature: cascading replication # features/cascading_replication.feature:1 258s Mar 22 12:21:45 We should check that patroni can do base backup and streaming from the replica 258s Mar 22 12:21:45 Scenario: check a base backup and streaming replication from a replica # features/cascading_replication.feature:4 258s Mar 22 12:21:45 Given I start postgres0 # features/steps/basic_replication.py:8 262s Mar 22 12:21:49 And postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 263s Mar 22 12:21:50 And I configure and start postgres1 with a tag clonefrom true # features/steps/cascading_replication.py:7 266s Mar 22 12:21:53 And replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:108 267s Mar 22 12:21:54 And I create label with "postgres0" in postgres0 data directory # features/steps/cascading_replication.py:18 267s Mar 22 12:21:54 And I create label with "postgres1" in postgres1 data directory # features/steps/cascading_replication.py:18 267s Mar 22 12:21:54 And "members/postgres1" key in DCS has state=running after 12 seconds # features/steps/cascading_replication.py:23 267s Mar 22 12:21:54 And I configure and start postgres2 with a tag replicatefrom postgres1 # features/steps/cascading_replication.py:7 270s Mar 22 12:21:57 Then replication works from postgres0 to postgres2 after 30 seconds # features/steps/basic_replication.py:108 271s Mar 22 12:21:58 And there is a label with "postgres1" in postgres2 data directory # features/steps/cascading_replication.py:12 276s Mar 22 12:22:03 276s Mar 22 12:22:03 Feature: citus # features/citus.feature:1 276s Mar 22 12:22:03 We should check that coordinator discovers and registers workers and clients don't have errors when worker cluster switches over 276s Mar 22 12:22:03 Scenario: check that worker cluster is registered in the coordinator # features/citus.feature:4 276s Mar 22 12:22:03 Given I start postgres0 in citus group 0 # None 276s Mar 22 12:22:03 And I start postgres2 in citus group 1 # None 276s Mar 22 12:22:03 Then postgres0 is a leader in a group 0 after 10 seconds # None 276s Mar 22 12:22:03 And postgres2 is a leader in a group 1 after 10 seconds # None 276s Mar 22 12:22:03 When I start postgres1 in citus group 0 # None 276s Mar 22 12:22:03 And I start postgres3 in citus group 1 # None 276s Mar 22 12:22:03 Then replication works from postgres0 to postgres1 after 15 seconds # None 276s Mar 22 12:22:03 Then replication works from postgres2 to postgres3 after 15 seconds # None 276s Mar 22 12:22:03 And postgres0 is registered in the postgres0 as the primary in group 0 after 5 seconds # None 276s Mar 22 12:22:03 And postgres2 is registered in the postgres0 as the primary in group 1 after 5 seconds # None 276s SKIP FEATURE citus: Citus extenstion isn't available 276s SKIP Scenario check that worker cluster is registered in the coordinator: Citus extenstion isn't available 276s SKIP Scenario coordinator failover updates pg_dist_node: Citus extenstion isn't available 276s SKIP Scenario worker switchover doesn't break client queries on the coordinator: Citus extenstion isn't available 276s SKIP Scenario worker primary restart doesn't break client queries on the coordinator: Citus extenstion isn't available 276s SKIP Scenario check that in-flight transaction is rolled back after timeout when other workers need to change pg_dist_node: Citus extenstion isn't available 276s Mar 22 12:22:03 276s Mar 22 12:22:03 Scenario: coordinator failover updates pg_dist_node # features/citus.feature:16 276s Mar 22 12:22:03 Given I run patronictl.py failover batman --group 0 --candidate postgres1 --force # None 276s Mar 22 12:22:03 Then postgres1 role is the primary after 10 seconds # None 276s Mar 22 12:22:03 And "members/postgres0" key in a group 0 in DCS has state=running after 15 seconds # None 276s Mar 22 12:22:03 And replication works from postgres1 to postgres0 after 15 seconds # None 276s Mar 22 12:22:03 And postgres1 is registered in the postgres2 as the primary in group 0 after 5 seconds # None 276s Mar 22 12:22:03 And "sync" key in a group 0 in DCS has sync_standby=postgres0 after 15 seconds # None 276s Mar 22 12:22:03 When I run patronictl.py switchover batman --group 0 --candidate postgres0 --force # None 276s Mar 22 12:22:03 Then postgres0 role is the primary after 10 seconds # None 276s Mar 22 12:22:03 And replication works from postgres0 to postgres1 after 15 seconds # None 276s Mar 22 12:22:03 And postgres0 is registered in the postgres2 as the primary in group 0 after 5 seconds # None 276s Mar 22 12:22:03 And "sync" key in a group 0 in DCS has sync_standby=postgres1 after 15 seconds # None 276s Mar 22 12:22:03 276s Mar 22 12:22:03 Scenario: worker switchover doesn't break client queries on the coordinator # features/citus.feature:29 276s Mar 22 12:22:03 Given I create a distributed table on postgres0 # None 276s Mar 22 12:22:03 And I start a thread inserting data on postgres0 # None 276s Mar 22 12:22:03 When I run patronictl.py switchover batman --group 1 --force # None 276s Mar 22 12:22:03 Then I receive a response returncode 0 # None 276s Mar 22 12:22:03 And postgres3 role is the primary after 10 seconds # None 276s Mar 22 12:22:03 And "members/postgres2" key in a group 1 in DCS has state=running after 15 seconds # None 276s Mar 22 12:22:03 And replication works from postgres3 to postgres2 after 15 seconds # None 276s Mar 22 12:22:03 And postgres3 is registered in the postgres0 as the primary in group 1 after 5 seconds # None 276s Mar 22 12:22:03 And "sync" key in a group 1 in DCS has sync_standby=postgres2 after 15 seconds # None 276s Mar 22 12:22:03 And a thread is still alive # None 276s Mar 22 12:22:03 When I run patronictl.py switchover batman --group 1 --force # None 276s Mar 22 12:22:03 Then I receive a response returncode 0 # None 276s Mar 22 12:22:03 And postgres2 role is the primary after 10 seconds # None 276s Mar 22 12:22:03 And replication works from postgres2 to postgres3 after 15 seconds # None 276s Mar 22 12:22:03 And postgres2 is registered in the postgres0 as the primary in group 1 after 5 seconds # None 276s Mar 22 12:22:03 And "sync" key in a group 1 in DCS has sync_standby=postgres3 after 15 seconds # None 276s Mar 22 12:22:03 And a thread is still alive # None 276s Mar 22 12:22:03 When I stop a thread # None 276s Mar 22 12:22:03 Then a distributed table on postgres0 has expected rows # None 276s Mar 22 12:22:03 276s Mar 22 12:22:03 Scenario: worker primary restart doesn't break client queries on the coordinator # features/citus.feature:50 276s Mar 22 12:22:03 Given I cleanup a distributed table on postgres0 # None 276s Mar 22 12:22:03 And I start a thread inserting data on postgres0 # None 276s Mar 22 12:22:03 When I run patronictl.py restart batman postgres2 --group 1 --force # None 276s Mar 22 12:22:03 Then I receive a response returncode 0 # None 276s Mar 22 12:22:03 And postgres2 role is the primary after 10 seconds # None 276s Mar 22 12:22:03 And replication works from postgres2 to postgres3 after 15 seconds # None 276s Mar 22 12:22:03 And postgres2 is registered in the postgres0 as the primary in group 1 after 5 seconds # None 276s Mar 22 12:22:03 And a thread is still alive # None 276s Mar 22 12:22:03 When I stop a thread # None 276s Mar 22 12:22:03 Then a distributed table on postgres0 has expected rows # None 276s Mar 22 12:22:03 276s Mar 22 12:22:03 Scenario: check that in-flight transaction is rolled back after timeout when other workers need to change pg_dist_node # features/citus.feature:62 276s Mar 22 12:22:03 Given I start postgres4 in citus group 2 # None 276s Mar 22 12:22:03 Then postgres4 is a leader in a group 2 after 10 seconds # None 276s Mar 22 12:22:03 And "members/postgres4" key in a group 2 in DCS has role=master after 3 seconds # None 276s Mar 22 12:22:03 When I run patronictl.py edit-config batman --group 2 -s ttl=20 --force # None 276s Mar 22 12:22:03 Then I receive a response returncode 0 # None 276s Mar 22 12:22:03 And I receive a response output "+ttl: 20" # None 276s Mar 22 12:22:03 Then postgres4 is registered in the postgres2 as the primary in group 2 after 5 seconds # None 276s Mar 22 12:22:03 When I shut down postgres4 # None 276s Mar 22 12:22:03 Then there is a transaction in progress on postgres0 changing pg_dist_node after 5 seconds # None 276s Mar 22 12:22:03 When I run patronictl.py restart batman postgres2 --group 1 --force # None 276s Mar 22 12:22:03 Then a transaction finishes in 20 seconds # None 276s Mar 22 12:22:03 276s Mar 22 12:22:03 Feature: custom bootstrap # features/custom_bootstrap.feature:1 276s Mar 22 12:22:03 We should check that patroni can bootstrap a new cluster from a backup 276s Mar 22 12:22:03 Scenario: clone existing cluster using pg_basebackup # features/custom_bootstrap.feature:4 276s Mar 22 12:22:03 Given I start postgres0 # features/steps/basic_replication.py:8 279s Mar 22 12:22:06 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 281s Mar 22 12:22:08 When I add the table foo to postgres0 # features/steps/basic_replication.py:49 281s Mar 22 12:22:08 And I start postgres1 in a cluster batman1 as a clone of postgres0 # features/steps/custom_bootstrap.py:6 285s Mar 22 12:22:12 Then postgres1 is a leader of batman1 after 10 seconds # features/steps/custom_bootstrap.py:16 286s Mar 22 12:22:13 Then table foo is present on postgres1 after 10 seconds # features/steps/basic_replication.py:89 286s Mar 22 12:22:13 286s Mar 22 12:22:13 Scenario: make a backup and do a restore into a new cluster # features/custom_bootstrap.feature:12 286s Mar 22 12:22:13 Given I add the table bar to postgres1 # features/steps/basic_replication.py:49 286s Mar 22 12:22:13 And I do a backup of postgres1 # features/steps/custom_bootstrap.py:25 287s Mar 22 12:22:14 When I start postgres2 in a cluster batman2 from backup # features/steps/custom_bootstrap.py:11 291s Mar 22 12:22:18 Then postgres2 is a leader of batman2 after 30 seconds # features/steps/custom_bootstrap.py:16 292s Mar 22 12:22:19 And table bar is present on postgres2 after 10 seconds # features/steps/basic_replication.py:89 298s Mar 22 12:22:25 298s Mar 22 12:22:25 Feature: dcs failsafe mode # features/dcs_failsafe_mode.feature:1 298s Mar 22 12:22:25 We should check the basic dcs failsafe mode functioning 298s Mar 22 12:22:25 Scenario: check failsafe mode can be successfully enabled # features/dcs_failsafe_mode.feature:4 298s Mar 22 12:22:25 Given I start postgres0 # features/steps/basic_replication.py:8 302s Mar 22 12:22:29 And postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 303s Mar 22 12:22:30 Then "config" key in DCS has ttl=30 after 10 seconds # features/steps/cascading_replication.py:23 303s Mar 22 12:22:30 When I issue a PATCH request to http://127.0.0.1:8008/config with {"loop_wait": 2, "ttl": 20, "retry_timeout": 3, "failsafe_mode": true} # features/steps/patroni_api.py:71 303s Mar 22 12:22:30 Then I receive a response code 200 # features/steps/patroni_api.py:98 303s Mar 22 12:22:30 And Response on GET http://127.0.0.1:8008/failsafe contains postgres0 after 10 seconds # features/steps/patroni_api.py:156 304s Mar 22 12:22:31 When I issue a GET request to http://127.0.0.1:8008/failsafe # features/steps/patroni_api.py:61 304s Mar 22 12:22:31 Then I receive a response code 200 # features/steps/patroni_api.py:98 304s Mar 22 12:22:31 And I receive a response postgres0 http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:98 304s Mar 22 12:22:31 When I issue a PATCH request to http://127.0.0.1:8008/config with {"postgresql": {"parameters": {"wal_level": "logical"}},"slots":{"dcs_slot_1": null,"postgres0":null}} # features/steps/patroni_api.py:71 305s Mar 22 12:22:31 Then I receive a response code 200 # features/steps/patroni_api.py:98 305s Mar 22 12:22:31 When I issue a PATCH request to http://127.0.0.1:8008/config with {"slots": {"dcs_slot_0": {"type": "logical", "database": "postgres", "plugin": "test_decoding"}}} # features/steps/patroni_api.py:71 305s Mar 22 12:22:32 Then I receive a response code 200 # features/steps/patroni_api.py:98 305s SKIP Scenario check one-node cluster is functioning while DCS is down: it is not possible to control state of etcd3 from tests 305s SKIP Scenario check new replica isn't promoted when leader is down and DCS is up: it is not possible to control state of etcd3 from tests 305s Mar 22 12:22:32 305s Mar 22 12:22:32 @dcs-failsafe 305s Mar 22 12:22:32 Scenario: check one-node cluster is functioning while DCS is down # features/dcs_failsafe_mode.feature:20 305s Mar 22 12:22:32 Given DCS is down # None 305s Mar 22 12:22:32 Then Response on GET http://127.0.0.1:8008/primary contains failsafe_mode_is_active after 12 seconds # None 305s Mar 22 12:22:32 And postgres0 role is the primary after 10 seconds # None 305s Mar 22 12:22:32 305s Mar 22 12:22:32 @dcs-failsafe 305s Mar 22 12:22:32 Scenario: check new replica isn't promoted when leader is down and DCS is up # features/dcs_failsafe_mode.feature:26 305s Mar 22 12:22:32 Given DCS is up # None 305s Mar 22 12:22:32 When I do a backup of postgres0 # None 305s Mar 22 12:22:32 And I shut down postgres0 # None 305s Mar 22 12:22:32 When I start postgres1 in a cluster batman from backup with no_leader # None 305s Mar 22 12:22:32 Then postgres1 role is the replica after 12 seconds # None 305s Mar 22 12:22:32 305s Mar 22 12:22:32 Scenario: check leader and replica are both in /failsafe key after leader is back # features/dcs_failsafe_mode.feature:33 305s Mar 22 12:22:32 Given I start postgres0 # features/steps/basic_replication.py:8 305s Mar 22 12:22:32 And I start postgres1 # features/steps/basic_replication.py:8 309s Mar 22 12:22:36 Then "members/postgres0" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 309s Mar 22 12:22:36 And "members/postgres1" key in DCS has state=running after 2 seconds # features/steps/cascading_replication.py:23 310s Mar 22 12:22:37 And Response on GET http://127.0.0.1:8009/failsafe contains postgres1 after 10 seconds # features/steps/patroni_api.py:156 310s Mar 22 12:22:37 When I issue a GET request to http://127.0.0.1:8009/failsafe # features/steps/patroni_api.py:61 310s Mar 22 12:22:37 Then I receive a response code 200 # features/steps/patroni_api.py:98 310s Mar 22 12:22:37 And I receive a response postgres0 http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:98 310s Mar 22 12:22:37 And I receive a response postgres1 http://127.0.0.1:8009/patroni # features/steps/patroni_api.py:98 310s SKIP Scenario check leader and replica are functioning while DCS is down: it is not possible to control state of etcd3 from tests 310s SKIP Scenario check primary is demoted when one replica is shut down and DCS is down: it is not possible to control state of etcd3 from tests 310s Mar 22 12:22:37 310s Mar 22 12:22:37 @dcs-failsafe @slot-advance 310s Mar 22 12:22:37 Scenario: check leader and replica are functioning while DCS is down # features/dcs_failsafe_mode.feature:46 310s Mar 22 12:22:37 Given I get all changes from physical slot dcs_slot_1 on postgres0 # None 310s Mar 22 12:22:37 Then physical slot dcs_slot_1 is in sync between postgres0 and postgres1 after 10 seconds # None 310s Mar 22 12:22:37 And logical slot dcs_slot_0 is in sync between postgres0 and postgres1 after 10 seconds # None 310s Mar 22 12:22:37 And DCS is down # None 310s Mar 22 12:22:37 Then Response on GET http://127.0.0.1:8008/primary contains failsafe_mode_is_active after 12 seconds # None 310s Mar 22 12:22:37 Then postgres0 role is the primary after 10 seconds # None 310s Mar 22 12:22:37 And postgres1 role is the replica after 2 seconds # None 310s Mar 22 12:22:37 And replication works from postgres0 to postgres1 after 10 seconds # None 310s Mar 22 12:22:37 When I get all changes from logical slot dcs_slot_0 on postgres0 # None 310s Mar 22 12:22:37 And I get all changes from physical slot dcs_slot_1 on postgres0 # None 310s Mar 22 12:22:37 Then logical slot dcs_slot_0 is in sync between postgres0 and postgres1 after 20 seconds # None 310s Mar 22 12:22:37 And physical slot dcs_slot_1 is in sync between postgres0 and postgres1 after 10 seconds # None 310s SKIP Scenario check known replica is promoted when leader is down and DCS is up: it is not possible to control state of etcd3 from tests 310s Mar 22 12:22:37 310s Mar 22 12:22:37 @dcs-failsafe 310s Mar 22 12:22:37 Scenario: check primary is demoted when one replica is shut down and DCS is down # features/dcs_failsafe_mode.feature:61 310s Mar 22 12:22:37 Given DCS is down # None 310s Mar 22 12:22:37 And I kill postgres1 # None 310s Mar 22 12:22:37 And I kill postmaster on postgres1 # None 310s Mar 22 12:22:37 Then postgres0 role is the replica after 12 seconds # None 310s Mar 22 12:22:37 310s Mar 22 12:22:37 @dcs-failsafe 310s Mar 22 12:22:37 Scenario: check known replica is promoted when leader is down and DCS is up # features/dcs_failsafe_mode.feature:68 310s Mar 22 12:22:37 Given I kill postgres0 # None 310s Mar 22 12:22:37 And I shut down postmaster on postgres0 # None 310s Mar 22 12:22:37 And DCS is up # None 310s Mar 22 12:22:37 When I start postgres1 # None 310s Mar 22 12:22:37 Then "members/postgres1" key in DCS has state=running after 10 seconds # None 310s Mar 22 12:22:37 And postgres1 role is the primary after 25 seconds # None 310s Mar 22 12:22:37 310s Mar 22 12:22:37 @dcs-failsafe 310s Mar 22 12:22:37 Scenario: scale to three-node cluster # features/dcs_failsafe_mode.feature:77 310s Mar 22 12:22:37 Given I start postgres0 # None 310s Mar 22 12:22:37 And I start postgres2 # None 310s Mar 22 12:22:37 Then "members/postgres2" key in DCS has state=running after 10 seconds # None 310s Mar 22 12:22:37 And "members/postgres0" key in DCS has state=running after 20 seconds # None 310s Mar 22 12:22:37 And Response on GET http://127.0.0.1:8008/failsafe contains postgres2 after 10 seconds # None 310s Mar 22 12:22:37 And replication works from postgres1 to postgres0 after 10 seconds # None 310s Mar 22 12:22:37 And replication works from postgres1 to postgres2 after 10 seconds # None 310s Mar 22 12:22:37 310s Mar 22 12:22:37 @dcs-failsafe @slot-advance 310s Mar 22 12:22:37 Scenario: make sure permanent slots exist on replicas # features/dcs_failsafe_mode.feature:88 310s Mar 22 12:22:37 Given I issue a PATCH request to http://127.0.0.1:8009/config with {"slots":{"dcs_slot_0":null,"dcs_slot_2":{"type":"logical","database":"postgres","plugin":"test_decoding"}}} # None 310s Mar 22 12:22:37 Then logical slot dcs_slot_2 is in sync between postgres1 and postgres0 after 20 seconds # None 310s Mar 22 12:22:37 And logical slot dcs_slot_2 is in sync between postgres1 and postgres2 after 20 seconds # None 310s Mar 22 12:22:37 When I get all changes from physical slot dcs_slot_1 on postgres1 # None 310s Mar 22 12:22:37 Then physical slot dcs_slot_1 is in sync between postgres1 and postgres0 after 10 seconds # None 310s Mar 22 12:22:37 And physical slot dcs_slot_1 is in sync between postgres1 and postgres2 after 10 seconds # None 310s Mar 22 12:22:37 And physical slot postgres0 is in sync between postgres1 and postgres2 after 10 seconds # None 310s Mar 22 12:22:37 310s Mar 22 12:22:37 @dcs-failsafe 310s Mar 22 12:22:37 Scenario: check three-node cluster is functioning while DCS is down # features/dcs_failsafe_mode.feature:98 310s Mar 22 12:22:37 Given DCS is down # None 310s Mar 22 12:22:37 Then Response on GET http://127.0.0.1:8009/primary contains failsafe_mode_is_active after 12 seconds # None 310s Mar 22 12:22:37 Then postgres1 role is the primary after 10 seconds # None 310s Mar 22 12:22:37 And postgres0 role is the replica after 2 seconds # None 310s Mar 22 12:22:37 And postgres2 role is the replica after 2 seconds # None 310s SKIP Scenario scale to three-node cluster: it is not possible to control state of etcd3 from tests 310s SKIP Scenario make sure permanent slots exist on replicas: it is not possible to control state of etcd3 from tests 310s SKIP Scenario check three-node cluster is functioning while DCS is down: it is not possible to control state of etcd3 from tests 310s SKIP Scenario check that permanent slots are in sync between nodes while DCS is down: it is not possible to control state of etcd3 from tests 314s Mar 22 12:22:41 314s Mar 22 12:22:41 @dcs-failsafe @slot-advance 314s Mar 22 12:22:41 Scenario: check that permanent slots are in sync between nodes while DCS is down # features/dcs_failsafe_mode.feature:107 314s Mar 22 12:22:41 Given replication works from postgres1 to postgres0 after 10 seconds # None 314s Mar 22 12:22:41 And replication works from postgres1 to postgres2 after 10 seconds # None 314s Mar 22 12:22:41 When I get all changes from logical slot dcs_slot_2 on postgres1 # None 314s Mar 22 12:22:41 And I get all changes from physical slot dcs_slot_1 on postgres1 # None 314s Mar 22 12:22:41 Then logical slot dcs_slot_2 is in sync between postgres1 and postgres0 after 20 seconds # None 314s Mar 22 12:22:41 And logical slot dcs_slot_2 is in sync between postgres1 and postgres2 after 20 seconds # None 314s Mar 22 12:22:41 And physical slot dcs_slot_1 is in sync between postgres1 and postgres0 after 10 seconds # None 314s Mar 22 12:22:41 And physical slot dcs_slot_1 is in sync between postgres1 and postgres2 after 10 seconds # None 314s Mar 22 12:22:41 And physical slot postgres0 is in sync between postgres1 and postgres2 after 10 seconds # None 314s Mar 22 12:22:41 314s Mar 22 12:22:41 Feature: ignored slots # features/ignored_slots.feature:1 314s Mar 22 12:22:41 314s Mar 22 12:22:41 Scenario: check ignored slots aren't removed on failover/switchover # features/ignored_slots.feature:2 314s Mar 22 12:22:41 Given I start postgres1 # features/steps/basic_replication.py:8 319s Mar 22 12:22:45 Then postgres1 is a leader after 10 seconds # features/steps/patroni_api.py:29 320s Mar 22 12:22:46 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 320s Mar 22 12:22:46 When I issue a PATCH request to http://127.0.0.1:8009/config with {"ignore_slots": [{"name": "unmanaged_slot_0", "database": "postgres", "plugin": "test_decoding", "type": "logical"}, {"name": "unmanaged_slot_1", "database": "postgres", "plugin": "test_decoding"}, {"name": "unmanaged_slot_2", "database": "postgres"}, {"name": "unmanaged_slot_3"}], "postgresql": {"parameters": {"wal_level": "logical"}}} # features/steps/patroni_api.py:71 320s Mar 22 12:22:46 Then I receive a response code 200 # features/steps/patroni_api.py:98 320s Mar 22 12:22:46 And Response on GET http://127.0.0.1:8009/config contains ignore_slots after 10 seconds # features/steps/patroni_api.py:156 320s Mar 22 12:22:46 When I shut down postgres1 # features/steps/basic_replication.py:29 321s Mar 22 12:22:48 And I start postgres1 # features/steps/basic_replication.py:8 323s Mar 22 12:22:50 Then postgres1 is a leader after 10 seconds # features/steps/patroni_api.py:29 324s Mar 22 12:22:51 And "members/postgres1" key in DCS has role=master after 10 seconds # features/steps/cascading_replication.py:23 326s Mar 22 12:22:53 And postgres1 role is the primary after 20 seconds # features/steps/basic_replication.py:101 326s Mar 22 12:22:53 When I create a logical replication slot unmanaged_slot_0 on postgres1 with the test_decoding plugin # features/steps/slots.py:8 326s Mar 22 12:22:53 And I create a logical replication slot unmanaged_slot_1 on postgres1 with the test_decoding plugin # features/steps/slots.py:8 326s Mar 22 12:22:53 And I create a logical replication slot unmanaged_slot_2 on postgres1 with the test_decoding plugin # features/steps/slots.py:8 326s Mar 22 12:22:53 And I create a logical replication slot unmanaged_slot_3 on postgres1 with the test_decoding plugin # features/steps/slots.py:8 326s Mar 22 12:22:53 And I create a logical replication slot dummy_slot on postgres1 with the test_decoding plugin # features/steps/slots.py:8 326s Mar 22 12:22:53 Then postgres1 has a logical replication slot named unmanaged_slot_0 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 326s Mar 22 12:22:53 And postgres1 has a logical replication slot named unmanaged_slot_1 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 326s Mar 22 12:22:53 And postgres1 has a logical replication slot named unmanaged_slot_2 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 326s Mar 22 12:22:53 And postgres1 has a logical replication slot named unmanaged_slot_3 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 326s Mar 22 12:22:53 When I start postgres0 # features/steps/basic_replication.py:8 329s Mar 22 12:22:56 Then "members/postgres0" key in DCS has role=replica after 10 seconds # features/steps/cascading_replication.py:23 330s Mar 22 12:22:57 And postgres0 role is the secondary after 20 seconds # features/steps/basic_replication.py:101 330s Mar 22 12:22:57 And replication works from postgres1 to postgres0 after 20 seconds # features/steps/basic_replication.py:108 334s Mar 22 12:23:01 When I shut down postgres1 # features/steps/basic_replication.py:29 336s Mar 22 12:23:03 Then "members/postgres0" key in DCS has role=master after 10 seconds # features/steps/cascading_replication.py:23 337s Mar 22 12:23:04 When I start postgres1 # features/steps/basic_replication.py:8 340s Mar 22 12:23:07 Then postgres1 role is the secondary after 20 seconds # features/steps/basic_replication.py:101 340s Mar 22 12:23:07 And "members/postgres1" key in DCS has role=replica after 10 seconds # features/steps/cascading_replication.py:23 341s Mar 22 12:23:08 And I sleep for 2 seconds # features/steps/patroni_api.py:39 343s Mar 22 12:23:10 And postgres1 has a logical replication slot named unmanaged_slot_0 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 343s Mar 22 12:23:10 And postgres1 has a logical replication slot named unmanaged_slot_1 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 343s Mar 22 12:23:10 And postgres1 has a logical replication slot named unmanaged_slot_2 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 343s Mar 22 12:23:10 And postgres1 has a logical replication slot named unmanaged_slot_3 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 343s Mar 22 12:23:10 And postgres1 does not have a replication slot named dummy_slot # features/steps/slots.py:40 343s Mar 22 12:23:10 When I shut down postgres0 # features/steps/basic_replication.py:29 345s Mar 22 12:23:12 Then "members/postgres1" key in DCS has role=master after 10 seconds # features/steps/cascading_replication.py:23 346s Mar 22 12:23:13 And postgres1 has a logical replication slot named unmanaged_slot_0 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 346s Mar 22 12:23:13 And postgres1 has a logical replication slot named unmanaged_slot_1 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 346s Mar 22 12:23:13 And postgres1 has a logical replication slot named unmanaged_slot_2 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 346s Mar 22 12:23:13 And postgres1 has a logical replication slot named unmanaged_slot_3 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 349s Mar 22 12:23:16 349s Mar 22 12:23:16 Feature: patroni api # features/patroni_api.feature:1 349s Mar 22 12:23:16 We should check that patroni correctly responds to valid and not-valid API requests. 349s Mar 22 12:23:16 Scenario: check API requests on a stand-alone server # features/patroni_api.feature:4 349s Mar 22 12:23:16 Given I start postgres0 # features/steps/basic_replication.py:8 352s Mar 22 12:23:19 And postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 353s Mar 22 12:23:20 When I issue a GET request to http://127.0.0.1:8008/ # features/steps/patroni_api.py:61 353s Mar 22 12:23:20 Then I receive a response code 200 # features/steps/patroni_api.py:98 353s Mar 22 12:23:20 And I receive a response state running # features/steps/patroni_api.py:98 353s Mar 22 12:23:20 And I receive a response role master # features/steps/patroni_api.py:98 353s Mar 22 12:23:20 When I issue a GET request to http://127.0.0.1:8008/standby_leader # features/steps/patroni_api.py:61 353s Mar 22 12:23:20 Then I receive a response code 503 # features/steps/patroni_api.py:98 353s Mar 22 12:23:20 When I issue a GET request to http://127.0.0.1:8008/health # features/steps/patroni_api.py:61 353s Mar 22 12:23:20 Then I receive a response code 200 # features/steps/patroni_api.py:98 353s Mar 22 12:23:20 When I issue a GET request to http://127.0.0.1:8008/replica # features/steps/patroni_api.py:61 353s Mar 22 12:23:20 Then I receive a response code 503 # features/steps/patroni_api.py:98 353s Mar 22 12:23:20 When I issue a POST request to http://127.0.0.1:8008/reinitialize with {"force": true} # features/steps/patroni_api.py:71 353s Mar 22 12:23:20 Then I receive a response code 503 # features/steps/patroni_api.py:98 353s Mar 22 12:23:20 And I receive a response text I am the leader, can not reinitialize # features/steps/patroni_api.py:98 353s Mar 22 12:23:20 When I run patronictl.py switchover batman --master postgres0 --force # features/steps/patroni_api.py:86 355s Mar 22 12:23:21 Then I receive a response returncode 1 # features/steps/patroni_api.py:98 355s Mar 22 12:23:21 And I receive a response output "Error: No candidates found to switchover to" # features/steps/patroni_api.py:98 355s Mar 22 12:23:21 When I issue a POST request to http://127.0.0.1:8008/switchover with {"leader": "postgres0"} # features/steps/patroni_api.py:71 355s Mar 22 12:23:22 Then I receive a response code 412 # features/steps/patroni_api.py:98 355s Mar 22 12:23:22 And I receive a response text switchover is not possible: cluster does not have members except leader # features/steps/patroni_api.py:98 355s Mar 22 12:23:22 When I issue an empty POST request to http://127.0.0.1:8008/failover # features/steps/patroni_api.py:66 355s Mar 22 12:23:22 Then I receive a response code 400 # features/steps/patroni_api.py:98 355s Mar 22 12:23:22 When I issue a POST request to http://127.0.0.1:8008/failover with {"foo": "bar"} # features/steps/patroni_api.py:71 355s Mar 22 12:23:22 Then I receive a response code 400 # features/steps/patroni_api.py:98 355s Mar 22 12:23:22 And I receive a response text "Failover could be performed only to a specific candidate" # features/steps/patroni_api.py:98 355s Mar 22 12:23:22 355s Mar 22 12:23:22 Scenario: check local configuration reload # features/patroni_api.feature:32 355s Mar 22 12:23:22 Given I add tag new_tag new_value to postgres0 config # features/steps/patroni_api.py:137 355s Mar 22 12:23:22 And I issue an empty POST request to http://127.0.0.1:8008/reload # features/steps/patroni_api.py:66 355s Mar 22 12:23:22 Then I receive a response code 202 # features/steps/patroni_api.py:98 355s Mar 22 12:23:22 355s Mar 22 12:23:22 Scenario: check dynamic configuration change via DCS # features/patroni_api.feature:37 355s Mar 22 12:23:22 Given I issue a PATCH request to http://127.0.0.1:8008/config with {"ttl": 20, "postgresql": {"parameters": {"max_connections": "101"}}} # features/steps/patroni_api.py:71 355s Mar 22 12:23:22 Then I receive a response code 200 # features/steps/patroni_api.py:98 355s Mar 22 12:23:22 And Response on GET http://127.0.0.1:8008/patroni contains pending_restart after 11 seconds # features/steps/patroni_api.py:156 357s Mar 22 12:23:24 When I issue a GET request to http://127.0.0.1:8008/config # features/steps/patroni_api.py:61 357s Mar 22 12:23:24 Then I receive a response code 200 # features/steps/patroni_api.py:98 357s Mar 22 12:23:24 And I receive a response ttl 20 # features/steps/patroni_api.py:98 357s Mar 22 12:23:24 When I issue a GET request to http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:61 357s Mar 22 12:23:24 Then I receive a response code 200 # features/steps/patroni_api.py:98 357s Mar 22 12:23:24 And I receive a response tags {'new_tag': 'new_value'} # features/steps/patroni_api.py:98 357s Mar 22 12:23:24 And I sleep for 4 seconds # features/steps/patroni_api.py:39 361s Mar 22 12:23:28 361s Mar 22 12:23:28 Scenario: check the scheduled restart # features/patroni_api.feature:49 361s Mar 22 12:23:28 Given I run patronictl.py edit-config -p 'superuser_reserved_connections=6' --force batman # features/steps/patroni_api.py:86 363s Mar 22 12:23:30 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 363s Mar 22 12:23:30 And I receive a response output "+ superuser_reserved_connections: 6" # features/steps/patroni_api.py:98 363s Mar 22 12:23:30 And Response on GET http://127.0.0.1:8008/patroni contains pending_restart after 5 seconds # features/steps/patroni_api.py:156 363s Mar 22 12:23:30 Given I issue a scheduled restart at http://127.0.0.1:8008 in 5 seconds with {"role": "replica"} # features/steps/patroni_api.py:124 363s Mar 22 12:23:30 Then I receive a response code 202 # features/steps/patroni_api.py:98 363s Mar 22 12:23:30 And I sleep for 8 seconds # features/steps/patroni_api.py:39 371s Mar 22 12:23:38 And Response on GET http://127.0.0.1:8008/patroni contains pending_restart after 10 seconds # features/steps/patroni_api.py:156 371s Mar 22 12:23:38 Given I issue a scheduled restart at http://127.0.0.1:8008 in 5 seconds with {"restart_pending": "True"} # features/steps/patroni_api.py:124 371s Mar 22 12:23:38 Then I receive a response code 202 # features/steps/patroni_api.py:98 371s Mar 22 12:23:38 And Response on GET http://127.0.0.1:8008/patroni does not contain pending_restart after 10 seconds # features/steps/patroni_api.py:171 378s Mar 22 12:23:45 And postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:101 379s Mar 22 12:23:46 379s Mar 22 12:23:46 Scenario: check API requests for the primary-replica pair in the pause mode # features/patroni_api.feature:63 379s Mar 22 12:23:46 Given I start postgres1 # features/steps/basic_replication.py:8 382s Mar 22 12:23:49 Then replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:108 383s Mar 22 12:23:50 When I run patronictl.py pause batman # features/steps/patroni_api.py:86 385s Mar 22 12:23:52 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 385s Mar 22 12:23:52 When I kill postmaster on postgres1 # features/steps/basic_replication.py:44 385s Mar 22 12:23:52 waiting for server to shut down.... done 385s Mar 22 12:23:52 server stopped 385s Mar 22 12:23:52 And I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:61 385s Mar 22 12:23:52 Then I receive a response code 503 # features/steps/patroni_api.py:98 385s Mar 22 12:23:52 And "members/postgres1" key in DCS has state=stopped after 10 seconds # features/steps/cascading_replication.py:23 387s Mar 22 12:23:54 When I run patronictl.py restart batman postgres1 --force # features/steps/patroni_api.py:86 390s Mar 22 12:23:57 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 390s Mar 22 12:23:57 Then replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:108 391s Mar 22 12:23:58 And I sleep for 2 seconds # features/steps/patroni_api.py:39 393s Mar 22 12:24:00 When I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:61 393s Mar 22 12:24:00 Then I receive a response code 200 # features/steps/patroni_api.py:98 393s Mar 22 12:24:00 And I receive a response state running # features/steps/patroni_api.py:98 393s Mar 22 12:24:00 And I receive a response role replica # features/steps/patroni_api.py:98 393s Mar 22 12:24:00 When I run patronictl.py reinit batman postgres1 --force --wait # features/steps/patroni_api.py:86 397s Mar 22 12:24:04 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 397s Mar 22 12:24:04 And I receive a response output "Success: reinitialize for member postgres1" # features/steps/patroni_api.py:98 397s Mar 22 12:24:04 And postgres1 role is the secondary after 30 seconds # features/steps/basic_replication.py:101 398s Mar 22 12:24:05 And replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:108 399s Mar 22 12:24:06 When I run patronictl.py restart batman postgres0 --force # features/steps/patroni_api.py:86 402s Mar 22 12:24:09 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 402s Mar 22 12:24:09 And I receive a response output "Success: restart on member postgres0" # features/steps/patroni_api.py:98 402s Mar 22 12:24:09 And postgres0 role is the primary after 5 seconds # features/steps/basic_replication.py:101 403s Mar 22 12:24:10 403s Mar 22 12:24:10 Scenario: check the switchover via the API in the pause mode # features/patroni_api.feature:90 403s Mar 22 12:24:10 Given I issue a POST request to http://127.0.0.1:8008/switchover with {"leader": "postgres0", "candidate": "postgres1"} # features/steps/patroni_api.py:71 406s Mar 22 12:24:13 Then I receive a response code 200 # features/steps/patroni_api.py:98 406s Mar 22 12:24:13 And postgres1 is a leader after 5 seconds # features/steps/patroni_api.py:29 406s Mar 22 12:24:13 And postgres1 role is the primary after 10 seconds # features/steps/basic_replication.py:101 406s Mar 22 12:24:13 And postgres0 role is the secondary after 10 seconds # features/steps/basic_replication.py:101 408s Mar 22 12:24:15 And replication works from postgres1 to postgres0 after 20 seconds # features/steps/basic_replication.py:108 412s Mar 22 12:24:19 And "members/postgres0" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 413s Mar 22 12:24:20 When I issue a GET request to http://127.0.0.1:8008/primary # features/steps/patroni_api.py:61 413s Mar 22 12:24:20 Then I receive a response code 503 # features/steps/patroni_api.py:98 413s Mar 22 12:24:20 When I issue a GET request to http://127.0.0.1:8008/replica # features/steps/patroni_api.py:61 413s Mar 22 12:24:20 Then I receive a response code 200 # features/steps/patroni_api.py:98 413s Mar 22 12:24:20 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:61 413s Mar 22 12:24:20 Then I receive a response code 200 # features/steps/patroni_api.py:98 413s Mar 22 12:24:20 When I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:61 413s Mar 22 12:24:20 Then I receive a response code 503 # features/steps/patroni_api.py:98 413s Mar 22 12:24:20 413s Mar 22 12:24:20 Scenario: check the scheduled switchover # features/patroni_api.feature:107 413s Mar 22 12:24:20 Given I issue a scheduled switchover from postgres1 to postgres0 in 10 seconds # features/steps/patroni_api.py:117 415s Mar 22 12:24:22 Then I receive a response returncode 1 # features/steps/patroni_api.py:98 415s Mar 22 12:24:22 And I receive a response output "Can't schedule switchover in the paused state" # features/steps/patroni_api.py:98 415s Mar 22 12:24:22 When I run patronictl.py resume batman # features/steps/patroni_api.py:86 416s Mar 22 12:24:23 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 416s Mar 22 12:24:23 Given I issue a scheduled switchover from postgres1 to postgres0 in 10 seconds # features/steps/patroni_api.py:117 418s Mar 22 12:24:25 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 418s Mar 22 12:24:25 And postgres0 is a leader after 20 seconds # features/steps/patroni_api.py:29 428s Mar 22 12:24:35 And postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:101 428s Mar 22 12:24:35 And postgres1 role is the secondary after 10 seconds # features/steps/basic_replication.py:101 430s Mar 22 12:24:37 And replication works from postgres0 to postgres1 after 25 seconds # features/steps/basic_replication.py:108 431s Mar 22 12:24:38 And "members/postgres1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 432s Mar 22 12:24:39 When I issue a GET request to http://127.0.0.1:8008/primary # features/steps/patroni_api.py:61 432s Mar 22 12:24:39 Then I receive a response code 200 # features/steps/patroni_api.py:98 432s Mar 22 12:24:39 When I issue a GET request to http://127.0.0.1:8008/replica # features/steps/patroni_api.py:61 432s Mar 22 12:24:39 Then I receive a response code 503 # features/steps/patroni_api.py:98 432s Mar 22 12:24:39 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:61 432s Mar 22 12:24:39 Then I receive a response code 503 # features/steps/patroni_api.py:98 432s Mar 22 12:24:39 When I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:61 433s Mar 22 12:24:39 Then I receive a response code 200 # features/steps/patroni_api.py:98 437s Mar 22 12:24:44 438s Mar 22 12:24:44 Feature: permanent slots # features/permanent_slots.feature:1 438s Mar 22 12:24:44 438s Mar 22 12:24:44 Scenario: check that physical permanent slots are created # features/permanent_slots.feature:2 438s Mar 22 12:24:44 Given I start postgres0 # features/steps/basic_replication.py:8 441s Mar 22 12:24:48 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 442s Mar 22 12:24:49 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 442s Mar 22 12:24:49 When I issue a PATCH request to http://127.0.0.1:8008/config with {"slots":{"test_physical":0,"postgres0":0,"postgres1":0,"postgres3":0},"postgresql":{"parameters":{"wal_level":"logical"}}} # features/steps/patroni_api.py:71 442s Mar 22 12:24:49 Then I receive a response code 200 # features/steps/patroni_api.py:98 442s Mar 22 12:24:49 And Response on GET http://127.0.0.1:8008/config contains slots after 10 seconds # features/steps/patroni_api.py:156 442s Mar 22 12:24:49 When I start postgres1 # features/steps/basic_replication.py:8 446s Mar 22 12:24:53 And I start postgres2 # features/steps/basic_replication.py:8 451s Mar 22 12:24:57 And I configure and start postgres3 with a tag replicatefrom postgres2 # features/steps/cascading_replication.py:7 454s Mar 22 12:25:01 Then postgres0 has a physical replication slot named test_physical after 10 seconds # features/steps/slots.py:80 454s Mar 22 12:25:01 And postgres0 has a physical replication slot named postgres1 after 10 seconds # features/steps/slots.py:80 454s Mar 22 12:25:01 And postgres0 has a physical replication slot named postgres2 after 10 seconds # features/steps/slots.py:80 454s Mar 22 12:25:01 And postgres2 has a physical replication slot named postgres3 after 10 seconds # features/steps/slots.py:80 454s Mar 22 12:25:01 454s Mar 22 12:25:01 @slot-advance 454s Mar 22 12:25:01 Scenario: check that logical permanent slots are created # features/permanent_slots.feature:18 454s Mar 22 12:25:01 Given I run patronictl.py restart batman postgres0 --force # features/steps/patroni_api.py:86 458s Mar 22 12:25:05 And I issue a PATCH request to http://127.0.0.1:8008/config with {"slots":{"test_logical":{"type":"logical","database":"postgres","plugin":"test_decoding"}}} # features/steps/patroni_api.py:71 458s Mar 22 12:25:05 Then postgres0 has a logical replication slot named test_logical with the test_decoding plugin after 10 seconds # features/steps/slots.py:19 459s Mar 22 12:25:06 459s Mar 22 12:25:06 @slot-advance 459s Mar 22 12:25:06 Scenario: check that permanent slots are created on replicas # features/permanent_slots.feature:24 459s Mar 22 12:25:06 Given postgres1 has a logical replication slot named test_logical with the test_decoding plugin after 10 seconds # features/steps/slots.py:19 465s Mar 22 12:25:11 Then Logical slot test_logical is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 465s Mar 22 12:25:11 And Logical slot test_logical is in sync between postgres0 and postgres2 after 10 seconds # features/steps/slots.py:51 465s Mar 22 12:25:12 And Logical slot test_logical is in sync between postgres0 and postgres3 after 10 seconds # features/steps/slots.py:51 466s Mar 22 12:25:13 And postgres1 has a physical replication slot named test_physical after 2 seconds # features/steps/slots.py:80 466s Mar 22 12:25:13 And postgres2 has a physical replication slot named test_physical after 2 seconds # features/steps/slots.py:80 466s Mar 22 12:25:13 And postgres3 has a physical replication slot named test_physical after 2 seconds # features/steps/slots.py:80 466s Mar 22 12:25:13 466s Mar 22 12:25:13 @slot-advance 466s Mar 22 12:25:13 Scenario: check permanent physical slots that match with member names # features/permanent_slots.feature:34 466s Mar 22 12:25:13 Given postgres0 has a physical replication slot named postgres3 after 2 seconds # features/steps/slots.py:80 467s Mar 22 12:25:13 And postgres1 has a physical replication slot named postgres0 after 2 seconds # features/steps/slots.py:80 467s Mar 22 12:25:13 And postgres1 has a physical replication slot named postgres3 after 2 seconds # features/steps/slots.py:80 467s Mar 22 12:25:13 And postgres2 has a physical replication slot named postgres0 after 2 seconds # features/steps/slots.py:80 467s Mar 22 12:25:13 And postgres2 has a physical replication slot named postgres3 after 2 seconds # features/steps/slots.py:80 467s Mar 22 12:25:13 And postgres2 has a physical replication slot named postgres1 after 2 seconds # features/steps/slots.py:80 467s Mar 22 12:25:13 And postgres1 does not have a replication slot named postgres2 # features/steps/slots.py:40 467s Mar 22 12:25:13 And postgres3 does not have a replication slot named postgres2 # features/steps/slots.py:40 467s Mar 22 12:25:13 467s Mar 22 12:25:13 @slot-advance 467s Mar 22 12:25:13 Scenario: check that permanent slots are advanced on replicas # features/permanent_slots.feature:45 467s Mar 22 12:25:13 Given I add the table replicate_me to postgres0 # features/steps/basic_replication.py:49 467s Mar 22 12:25:13 When I get all changes from logical slot test_logical on postgres0 # features/steps/slots.py:70 467s Mar 22 12:25:13 And I get all changes from physical slot test_physical on postgres0 # features/steps/slots.py:75 467s Mar 22 12:25:13 Then Logical slot test_logical is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 468s Mar 22 12:25:15 And Physical slot test_physical is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 468s Mar 22 12:25:15 And Logical slot test_logical is in sync between postgres0 and postgres2 after 10 seconds # features/steps/slots.py:51 468s Mar 22 12:25:15 And Physical slot test_physical is in sync between postgres0 and postgres2 after 10 seconds # features/steps/slots.py:51 468s Mar 22 12:25:15 And Logical slot test_logical is in sync between postgres0 and postgres3 after 10 seconds # features/steps/slots.py:51 468s Mar 22 12:25:15 And Physical slot test_physical is in sync between postgres0 and postgres3 after 10 seconds # features/steps/slots.py:51 468s Mar 22 12:25:15 And Physical slot postgres1 is in sync between postgres0 and postgres2 after 10 seconds # features/steps/slots.py:51 469s Mar 22 12:25:15 And Physical slot postgres3 is in sync between postgres2 and postgres0 after 20 seconds # features/steps/slots.py:51 469s Mar 22 12:25:15 And Physical slot postgres3 is in sync between postgres2 and postgres1 after 10 seconds # features/steps/slots.py:51 469s Mar 22 12:25:15 And postgres1 does not have a replication slot named postgres2 # features/steps/slots.py:40 469s Mar 22 12:25:15 And postgres3 does not have a replication slot named postgres2 # features/steps/slots.py:40 469s Mar 22 12:25:15 469s Mar 22 12:25:15 @slot-advance 469s Mar 22 12:25:15 Scenario: check that only permanent slots are written to the /status key # features/permanent_slots.feature:62 469s Mar 22 12:25:15 Given "status" key in DCS has test_physical in slots # features/steps/slots.py:96 469s Mar 22 12:25:15 And "status" key in DCS has postgres0 in slots # features/steps/slots.py:96 469s Mar 22 12:25:15 And "status" key in DCS has postgres1 in slots # features/steps/slots.py:96 469s Mar 22 12:25:15 And "status" key in DCS does not have postgres2 in slots # features/steps/slots.py:102 469s Mar 22 12:25:15 And "status" key in DCS has postgres3 in slots # features/steps/slots.py:96 469s Mar 22 12:25:15 469s Mar 22 12:25:15 Scenario: check permanent physical replication slot after failover # features/permanent_slots.feature:69 469s Mar 22 12:25:15 Given I shut down postgres3 # features/steps/basic_replication.py:29 469s Mar 22 12:25:16 And I shut down postgres2 # features/steps/basic_replication.py:29 470s Mar 22 12:25:17 And I shut down postgres0 # features/steps/basic_replication.py:29 472s Mar 22 12:25:19 Then postgres1 has a physical replication slot named test_physical after 10 seconds # features/steps/slots.py:80 472s Mar 22 12:25:19 And postgres1 has a physical replication slot named postgres0 after 10 seconds # features/steps/slots.py:80 472s Mar 22 12:25:19 And postgres1 has a physical replication slot named postgres3 after 10 seconds # features/steps/slots.py:80 475s Mar 22 12:25:22 475s Mar 22 12:25:22 Feature: priority replication # features/priority_failover.feature:1 475s Mar 22 12:25:22 We should check that we can give nodes priority during failover 475s Mar 22 12:25:22 Scenario: check failover priority 0 prevents leaderships # features/priority_failover.feature:4 475s Mar 22 12:25:22 Given I configure and start postgres0 with a tag failover_priority 1 # features/steps/cascading_replication.py:7 478s Mar 22 12:25:25 And I configure and start postgres1 with a tag failover_priority 0 # features/steps/cascading_replication.py:7 481s Mar 22 12:25:28 Then replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:108 486s Mar 22 12:25:33 When I shut down postgres0 # features/steps/basic_replication.py:29 488s Mar 22 12:25:35 And there is one of ["following a different leader because I am not allowed to promote"] INFO in the postgres1 patroni log after 5 seconds # features/steps/basic_replication.py:117 490s Mar 22 12:25:37 Then postgres1 role is the secondary after 10 seconds # features/steps/basic_replication.py:101 490s Mar 22 12:25:37 When I start postgres0 # features/steps/basic_replication.py:8 492s Mar 22 12:25:39 Then postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:101 494s Mar 22 12:25:41 494s Mar 22 12:25:41 Scenario: check higher failover priority is respected # features/priority_failover.feature:14 494s Mar 22 12:25:41 Given I configure and start postgres2 with a tag failover_priority 1 # features/steps/cascading_replication.py:7 497s Mar 22 12:25:44 And I configure and start postgres3 with a tag failover_priority 2 # features/steps/cascading_replication.py:7 501s Mar 22 12:25:48 Then replication works from postgres0 to postgres2 after 20 seconds # features/steps/basic_replication.py:108 502s Mar 22 12:25:49 And replication works from postgres0 to postgres3 after 20 seconds # features/steps/basic_replication.py:108 503s Mar 22 12:25:50 When I shut down postgres0 # features/steps/basic_replication.py:29 505s Mar 22 12:25:52 Then postgres3 role is the primary after 10 seconds # features/steps/basic_replication.py:101 505s Mar 22 12:25:52 And there is one of ["postgres3 has equally tolerable WAL position and priority 2, while this node has priority 1","Wal position of postgres3 is ahead of my wal position"] INFO in the postgres2 patroni log after 5 seconds # features/steps/basic_replication.py:117 505s Mar 22 12:25:52 505s Mar 22 12:25:52 Scenario: check conflicting configuration handling # features/priority_failover.feature:23 505s Mar 22 12:25:52 When I set nofailover tag in postgres2 config # features/steps/patroni_api.py:131 505s Mar 22 12:25:52 And I issue an empty POST request to http://127.0.0.1:8010/reload # features/steps/patroni_api.py:66 505s Mar 22 12:25:52 Then I receive a response code 202 # features/steps/patroni_api.py:98 505s Mar 22 12:25:52 And there is one of ["Conflicting configuration between nofailover: True and failover_priority: 1. Defaulting to nofailover: True"] WARNING in the postgres2 patroni log after 5 seconds # features/steps/basic_replication.py:117 506s Mar 22 12:25:53 And "members/postgres2" key in DCS has tags={'failover_priority': '1', 'nofailover': True} after 10 seconds # features/steps/cascading_replication.py:23 508s Mar 22 12:25:55 When I issue a POST request to http://127.0.0.1:8010/failover with {"candidate": "postgres2"} # features/steps/patroni_api.py:71 508s Mar 22 12:25:55 Then I receive a response code 412 # features/steps/patroni_api.py:98 508s Mar 22 12:25:55 And I receive a response text "failover is not possible: no good candidates have been found" # features/steps/patroni_api.py:98 508s Mar 22 12:25:55 When I reset nofailover tag in postgres1 config # features/steps/patroni_api.py:131 508s Mar 22 12:25:55 And I issue an empty POST request to http://127.0.0.1:8009/reload # features/steps/patroni_api.py:66 508s Mar 22 12:25:55 Then I receive a response code 202 # features/steps/patroni_api.py:98 508s Mar 22 12:25:55 And there is one of ["Conflicting configuration between nofailover: False and failover_priority: 0. Defaulting to nofailover: False"] WARNING in the postgres1 patroni log after 5 seconds # features/steps/basic_replication.py:117 510s Mar 22 12:25:57 And "members/postgres1" key in DCS has tags={'failover_priority': '0', 'nofailover': False} after 10 seconds # features/steps/cascading_replication.py:23 511s Mar 22 12:25:58 And I issue a POST request to http://127.0.0.1:8009/failover with {"candidate": "postgres1"} # features/steps/patroni_api.py:71 514s Mar 22 12:26:00 Then I receive a response code 200 # features/steps/patroni_api.py:98 514s Mar 22 12:26:00 And postgres1 role is the primary after 10 seconds # features/steps/basic_replication.py:101 519s Mar 22 12:26:06 519s Mar 22 12:26:06 Feature: recovery # features/recovery.feature:1 519s Mar 22 12:26:06 We want to check that crashed postgres is started back 519s Mar 22 12:26:06 Scenario: check that timeline is not incremented when primary is started after crash # features/recovery.feature:4 519s Mar 22 12:26:06 Given I start postgres0 # features/steps/basic_replication.py:8 522s Mar 22 12:26:09 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 523s Mar 22 12:26:10 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 523s Mar 22 12:26:10 When I start postgres1 # features/steps/basic_replication.py:8 527s Mar 22 12:26:13 And I add the table foo to postgres0 # features/steps/basic_replication.py:49 527s Mar 22 12:26:13 Then table foo is present on postgres1 after 20 seconds # features/steps/basic_replication.py:89 527s Mar 22 12:26:14 When I kill postmaster on postgres0 # features/steps/basic_replication.py:44 527s Mar 22 12:26:14 waiting for server to shut down.... done 527s Mar 22 12:26:14 server stopped 527s Mar 22 12:26:14 Then postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:101 530s Mar 22 12:26:17 When I issue a GET request to http://127.0.0.1:8008/ # features/steps/patroni_api.py:61 530s Mar 22 12:26:17 Then I receive a response code 200 # features/steps/patroni_api.py:98 530s Mar 22 12:26:17 And I receive a response role master # features/steps/patroni_api.py:98 530s Mar 22 12:26:17 And I receive a response timeline 1 # features/steps/patroni_api.py:98 530s Mar 22 12:26:17 And "members/postgres0" key in DCS has state=running after 12 seconds # features/steps/cascading_replication.py:23 531s Mar 22 12:26:18 And replication works from postgres0 to postgres1 after 15 seconds # features/steps/basic_replication.py:108 532s Mar 22 12:26:19 532s Mar 22 12:26:19 Scenario: check immediate failover when master_start_timeout=0 # features/recovery.feature:20 532s Mar 22 12:26:19 Given I issue a PATCH request to http://127.0.0.1:8008/config with {"master_start_timeout": 0} # features/steps/patroni_api.py:71 532s Mar 22 12:26:19 Then I receive a response code 200 # features/steps/patroni_api.py:98 532s Mar 22 12:26:19 And Response on GET http://127.0.0.1:8008/config contains master_start_timeout after 10 seconds # features/steps/patroni_api.py:156 532s Mar 22 12:26:19 When I kill postmaster on postgres0 # features/steps/basic_replication.py:44 532s Mar 22 12:26:19 waiting for server to shut down.... done 532s Mar 22 12:26:19 server stopped 532s Mar 22 12:26:19 Then postgres1 is a leader after 10 seconds # features/steps/patroni_api.py:29 537s Mar 22 12:26:24 And postgres1 role is the primary after 10 seconds # features/steps/basic_replication.py:101 541s Mar 22 12:26:28 541s Mar 22 12:26:28 Feature: standby cluster # features/standby_cluster.feature:1 541s Mar 22 12:26:28 541s Mar 22 12:26:28 Scenario: prepare the cluster with logical slots # features/standby_cluster.feature:2 541s Mar 22 12:26:28 Given I start postgres1 # features/steps/basic_replication.py:8 545s Mar 22 12:26:32 Then postgres1 is a leader after 10 seconds # features/steps/patroni_api.py:29 546s Mar 22 12:26:33 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 546s Mar 22 12:26:33 When I issue a PATCH request to http://127.0.0.1:8009/config with {"slots": {"pm_1": {"type": "physical"}}, "postgresql": {"parameters": {"wal_level": "logical"}}} # features/steps/patroni_api.py:71 546s Mar 22 12:26:33 Then I receive a response code 200 # features/steps/patroni_api.py:98 546s Mar 22 12:26:33 And Response on GET http://127.0.0.1:8009/config contains slots after 10 seconds # features/steps/patroni_api.py:156 546s Mar 22 12:26:33 And I sleep for 3 seconds # features/steps/patroni_api.py:39 549s Mar 22 12:26:36 When I issue a PATCH request to http://127.0.0.1:8009/config with {"slots": {"test_logical": {"type": "logical", "database": "postgres", "plugin": "test_decoding"}}} # features/steps/patroni_api.py:71 549s Mar 22 12:26:36 Then I receive a response code 200 # features/steps/patroni_api.py:98 549s Mar 22 12:26:36 And I do a backup of postgres1 # features/steps/custom_bootstrap.py:25 549s Mar 22 12:26:36 When I start postgres0 # features/steps/basic_replication.py:8 553s Mar 22 12:26:39 Then "members/postgres0" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 554s Mar 22 12:26:41 And replication works from postgres1 to postgres0 after 15 seconds # features/steps/basic_replication.py:108 555s Mar 22 12:26:42 When I issue a GET request to http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:61 555s Mar 22 12:26:42 Then I receive a response code 200 # features/steps/patroni_api.py:98 555s Mar 22 12:26:42 And I receive a response replication_state streaming # features/steps/patroni_api.py:98 555s Mar 22 12:26:42 And "members/postgres0" key in DCS has replication_state=streaming after 10 seconds # features/steps/cascading_replication.py:23 555s Mar 22 12:26:42 555s Mar 22 12:26:42 @slot-advance 555s Mar 22 12:26:42 Scenario: check permanent logical slots are synced to the replica # features/standby_cluster.feature:22 555s Mar 22 12:26:42 Given I run patronictl.py restart batman postgres1 --force # features/steps/patroni_api.py:86 558s Mar 22 12:26:45 Then Logical slot test_logical is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 564s Mar 22 12:26:51 564s Mar 22 12:26:51 Scenario: Detach exiting node from the cluster # features/standby_cluster.feature:26 564s Mar 22 12:26:51 When I shut down postgres1 # features/steps/basic_replication.py:29 566s Mar 22 12:26:53 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 566s Mar 22 12:26:53 And "members/postgres0" key in DCS has role=master after 3 seconds # features/steps/cascading_replication.py:23 567s Mar 22 12:26:54 When I issue a GET request to http://127.0.0.1:8008/ # features/steps/patroni_api.py:61 567s Mar 22 12:26:54 Then I receive a response code 200 # features/steps/patroni_api.py:98 567s Mar 22 12:26:54 567s Mar 22 12:26:54 Scenario: check replication of a single table in a standby cluster # features/standby_cluster.feature:33 567s Mar 22 12:26:54 Given I start postgres1 in a standby cluster batman1 as a clone of postgres0 # features/steps/standby_cluster.py:23 570s Mar 22 12:26:57 Then postgres1 is a leader of batman1 after 10 seconds # features/steps/custom_bootstrap.py:16 571s Mar 22 12:26:58 When I add the table foo to postgres0 # features/steps/basic_replication.py:49 571s Mar 22 12:26:58 Then table foo is present on postgres1 after 20 seconds # features/steps/basic_replication.py:89 571s Mar 22 12:26:58 When I issue a GET request to http://127.0.0.1:8009/patroni # features/steps/patroni_api.py:61 571s Mar 22 12:26:58 Then I receive a response code 200 # features/steps/patroni_api.py:98 571s Mar 22 12:26:58 And I receive a response replication_state streaming # features/steps/patroni_api.py:98 571s Mar 22 12:26:58 And I sleep for 3 seconds # features/steps/patroni_api.py:39 574s Mar 22 12:27:01 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:61 574s Mar 22 12:27:01 Then I receive a response code 503 # features/steps/patroni_api.py:98 574s Mar 22 12:27:01 When I issue a GET request to http://127.0.0.1:8009/standby_leader # features/steps/patroni_api.py:61 574s Mar 22 12:27:01 Then I receive a response code 200 # features/steps/patroni_api.py:98 574s Mar 22 12:27:01 And I receive a response role standby_leader # features/steps/patroni_api.py:98 574s Mar 22 12:27:01 And there is a postgres1_cb.log with "on_role_change standby_leader batman1" in postgres1 data directory # features/steps/cascading_replication.py:12 574s Mar 22 12:27:01 When I start postgres2 in a cluster batman1 # features/steps/standby_cluster.py:12 577s Mar 22 12:27:04 Then postgres2 role is the replica after 24 seconds # features/steps/basic_replication.py:101 577s Mar 22 12:27:04 And table foo is present on postgres2 after 20 seconds # features/steps/basic_replication.py:89 583s Mar 22 12:27:10 When I issue a GET request to http://127.0.0.1:8010/patroni # features/steps/patroni_api.py:61 583s Mar 22 12:27:10 Then I receive a response code 200 # features/steps/patroni_api.py:98 583s Mar 22 12:27:10 And I receive a response replication_state streaming # features/steps/patroni_api.py:98 583s Mar 22 12:27:10 And postgres1 does not have a replication slot named test_logical # features/steps/slots.py:40 583s Mar 22 12:27:10 583s Mar 22 12:27:10 Scenario: check switchover # features/standby_cluster.feature:56 583s Mar 22 12:27:10 Given I run patronictl.py switchover batman1 --force # features/steps/patroni_api.py:86 587s Mar 22 12:27:14 Then Status code on GET http://127.0.0.1:8010/standby_leader is 200 after 10 seconds # features/steps/patroni_api.py:142 587s Mar 22 12:27:14 And postgres1 is replicating from postgres2 after 32 seconds # features/steps/standby_cluster.py:52 589s Mar 22 12:27:16 And there is a postgres2_cb.log with "on_start replica batman1\non_role_change standby_leader batman1" in postgres2 data directory # features/steps/cascading_replication.py:12 589s Mar 22 12:27:16 589s Mar 22 12:27:16 Scenario: check failover # features/standby_cluster.feature:62 589s Mar 22 12:27:16 When I kill postgres2 # features/steps/basic_replication.py:34 590s Mar 22 12:27:17 And I kill postmaster on postgres2 # features/steps/basic_replication.py:44 590s Mar 22 12:27:17 waiting for server to shut down.... done 590s Mar 22 12:27:17 server stopped 590s Mar 22 12:27:17 Then postgres1 is replicating from postgres0 after 32 seconds # features/steps/standby_cluster.py:52 609s Mar 22 12:27:36 And Status code on GET http://127.0.0.1:8009/standby_leader is 200 after 10 seconds # features/steps/patroni_api.py:142 609s Mar 22 12:27:36 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:61 609s Mar 22 12:27:36 Then I receive a response code 503 # features/steps/patroni_api.py:98 609s Mar 22 12:27:36 And I receive a response role standby_leader # features/steps/patroni_api.py:98 609s Mar 22 12:27:36 And replication works from postgres0 to postgres1 after 15 seconds # features/steps/basic_replication.py:108 610s Mar 22 12:27:37 And there is a postgres1_cb.log with "on_role_change replica batman1\non_role_change standby_leader batman1" in postgres1 data directory # features/steps/cascading_replication.py:12 615s Mar 22 12:27:42 615s Mar 22 12:27:42 Feature: watchdog # features/watchdog.feature:1 615s Mar 22 12:27:42 Verify that watchdog gets pinged and triggered under appropriate circumstances. 615s Mar 22 12:27:42 Scenario: watchdog is opened and pinged # features/watchdog.feature:4 615s Mar 22 12:27:42 Given I start postgres0 with watchdog # features/steps/watchdog.py:16 619s Mar 22 12:27:46 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 620s Mar 22 12:27:47 And postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:101 620s Mar 22 12:27:47 And postgres0 watchdog has been pinged after 10 seconds # features/steps/watchdog.py:21 620s Mar 22 12:27:47 And postgres0 watchdog has a 15 second timeout # features/steps/watchdog.py:34 620s Mar 22 12:27:47 620s Mar 22 12:27:47 Scenario: watchdog is reconfigured after global ttl changed # features/watchdog.feature:11 620s Mar 22 12:27:47 Given I run patronictl.py edit-config batman -s ttl=30 --force # features/steps/patroni_api.py:86 622s Mar 22 12:27:49 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 622s Mar 22 12:27:49 And I receive a response output "+ttl: 30" # features/steps/patroni_api.py:98 622s Mar 22 12:27:49 When I sleep for 4 seconds # features/steps/patroni_api.py:39 626s Mar 22 12:27:53 Then postgres0 watchdog has a 25 second timeout # features/steps/watchdog.py:34 626s Mar 22 12:27:53 626s Mar 22 12:27:53 Scenario: watchdog is disabled during pause # features/watchdog.feature:18 626s Mar 22 12:27:53 Given I run patronictl.py pause batman # features/steps/patroni_api.py:86 628s Mar 22 12:27:55 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 628s Mar 22 12:27:55 When I sleep for 2 seconds # features/steps/patroni_api.py:39 630s Mar 22 12:27:57 Then postgres0 watchdog has been closed # features/steps/watchdog.py:29 630s Mar 22 12:27:57 630s Mar 22 12:27:57 Scenario: watchdog is opened and pinged after resume # features/watchdog.feature:24 630s Mar 22 12:27:57 Given I reset postgres0 watchdog state # features/steps/watchdog.py:39 630s Mar 22 12:27:57 And I run patronictl.py resume batman # features/steps/patroni_api.py:86 632s Mar 22 12:27:59 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 632s Mar 22 12:27:59 And postgres0 watchdog has been pinged after 10 seconds # features/steps/watchdog.py:21 633s Mar 22 12:28:00 633s Mar 22 12:28:00 Scenario: watchdog is disabled when shutting down # features/watchdog.feature:30 633s Mar 22 12:28:00 Given I shut down postgres0 # features/steps/basic_replication.py:29 635s Mar 22 12:28:02 Then postgres0 watchdog has been closed # features/steps/watchdog.py:29 635s Mar 22 12:28:02 635s Mar 22 12:28:02 Scenario: watchdog is triggered if patroni stops responding # features/watchdog.feature:34 635s Mar 22 12:28:02 Given I reset postgres0 watchdog state # features/steps/watchdog.py:39 635s Mar 22 12:28:02 And I start postgres0 with watchdog # features/steps/watchdog.py:16 638s Mar 22 12:28:05 Then postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:101 639s Mar 22 12:28:06 When postgres0 hangs for 30 seconds # features/steps/watchdog.py:52 639s Mar 22 12:28:06 Then postgres0 watchdog is triggered after 30 seconds # features/steps/watchdog.py:44 680s Mar 22 12:28:47 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.6601.663227 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.5395.854905 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.4116.137829 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.3877.551681 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.5772.473028 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.5715.404898 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.3803.448279 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.5218.910998 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.4453.371465 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.6606.851882 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.6603.505783 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.4715.752045 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.6557.219232 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.3848.335224 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.4662.614161 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.6350.079982 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.4352.868095 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.4537.684256 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.4025.325960 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.5095.863377 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.4236.900568 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.6272.542077 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.6166.076442 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.5226.314531 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.5061.722708 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.4066.471823 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.4397.951955 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.4897.635461 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.4961.288751 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.4997.476337 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.6228.388628 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.5616.098983 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.5809.344502 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.5033.816443 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.5365.223531 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.4272.462135 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.5466.075840 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.4182.696751 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.6444.806520 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.4825.487238 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.3928.704299 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.4062.443669 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.5319.310783 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.3962.889944 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.5433.873260 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.4947.590056 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.5038.169015 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.5650.818742 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.6022.202967 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.4192.446640 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.4758.418839 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.4587.355646 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.6066.181233 680s Mar 22 12:28:47 Combined data file .coverage.autopkgtest.5220.844478 683s Mar 22 12:28:50 Name Stmts Miss Cover 683s Mar 22 12:28:50 ------------------------------------------------------------------------------------------------------------- 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/OpenSSL/SSL.py 1072 596 44% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/OpenSSL/__init__.py 4 0 100% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/OpenSSL/_util.py 41 14 66% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/OpenSSL/crypto.py 1225 982 20% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/OpenSSL/version.py 10 0 100% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/_distutils_hack/__init__.py 100 95 5% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/__about__.py 5 0 100% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/__init__.py 3 0 100% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/exceptions.py 26 5 81% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/hazmat/__init__.py 2 0 100% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/hazmat/_oid.py 126 0 100% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/__init__.py 0 0 100% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/__init__.py 0 0 100% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/_conditional.py 73 32 56% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/binding.py 73 13 82% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/__init__.py 0 0 100% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_asymmetric.py 6 0 100% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_cipheralgorithm.py 18 0 100% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_serialization.py 80 35 56% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/__init__.py 0 0 100% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/dh.py 118 47 60% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/dsa.py 134 57 57% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/ec.py 219 56 74% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/ed448.py 45 12 73% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/ed25519.py 45 12 73% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/padding.py 47 20 57% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/rsa.py 184 106 42% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/types.py 19 0 100% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/utils.py 14 5 64% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/x448.py 43 12 72% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/x25519.py 43 12 72% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/__init__.py 4 0 100% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/algorithms.py 129 35 73% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/base.py 138 79 43% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/modes.py 140 58 59% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/constant_time.py 6 3 50% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/hashes.py 128 20 84% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/serialization/__init__.py 5 0 100% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/serialization/base.py 22 12 45% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/serialization/ssh.py 761 605 20% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/utils.py 76 29 62% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/x509/__init__.py 70 0 100% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/x509/base.py 458 224 51% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/x509/certificate_transparency.py 42 0 100% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/x509/extensions.py 1038 569 45% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/x509/general_name.py 166 94 43% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/x509/name.py 233 142 39% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/cryptography/x509/oid.py 3 0 100% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dateutil/__init__.py 5 2 60% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dateutil/_common.py 25 15 40% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dateutil/_version.py 2 0 100% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dateutil/parser/__init__.py 33 4 88% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dateutil/parser/_parser.py 813 436 46% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dateutil/parser/isoparser.py 185 150 19% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dateutil/relativedelta.py 241 206 15% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dateutil/tz/__init__.py 4 0 100% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dateutil/tz/_common.py 161 121 25% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dateutil/tz/_factories.py 49 21 57% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dateutil/tz/tz.py 800 626 22% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dateutil/tz/win.py 153 149 3% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/__init__.py 3 0 100% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/_asyncbackend.py 14 6 57% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/_ddr.py 105 86 18% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/_features.py 44 7 84% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/_immutable_ctx.py 40 5 88% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/asyncbackend.py 44 32 27% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/asyncquery.py 277 242 13% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/edns.py 270 161 40% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/entropy.py 80 49 39% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/enum.py 72 46 36% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/exception.py 60 33 45% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/flags.py 41 14 66% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/grange.py 34 30 12% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/immutable.py 41 30 27% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/inet.py 80 65 19% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/ipv4.py 27 20 26% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/ipv6.py 115 100 13% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/message.py 809 662 18% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/name.py 620 427 31% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/nameserver.py 101 54 47% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/node.py 118 71 40% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/opcode.py 31 7 77% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/query.py 536 462 14% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/quic/__init__.py 26 23 12% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/rcode.py 69 13 81% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/rdata.py 377 269 29% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/rdataclass.py 44 9 80% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/rdataset.py 193 133 31% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/rdatatype.py 214 25 88% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/OPT.py 34 19 44% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/SOA.py 41 26 37% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/TSIG.py 58 42 28% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/ZONEMD.py 43 27 37% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/__init__.py 2 0 100% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/rdtypes/__init__.py 2 0 100% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/rdtypes/svcbbase.py 397 261 34% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/rdtypes/util.py 191 154 19% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/renderer.py 152 118 22% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/resolver.py 899 719 20% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/reversename.py 33 24 27% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/rrset.py 78 56 28% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/serial.py 93 79 15% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/set.py 149 108 28% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/tokenizer.py 335 279 17% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/transaction.py 271 203 25% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/tsig.py 177 122 31% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/ttl.py 45 38 16% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/version.py 7 0 100% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/wire.py 64 42 34% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/xfr.py 148 126 15% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/zone.py 508 383 25% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/zonefile.py 429 380 11% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/dns/zonetypes.py 15 2 87% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/etcd/__init__.py 125 63 50% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/etcd/client.py 380 256 33% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/etcd/lock.py 125 103 18% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/idna/__init__.py 4 0 100% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/idna/core.py 294 259 12% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/idna/idnadata.py 4 0 100% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/idna/intranges.py 30 24 20% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/idna/package_data.py 1 0 100% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/__init__.py 13 2 85% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/__main__.py 199 62 69% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/api.py 768 286 63% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/async_executor.py 96 15 84% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/collections.py 43 5 88% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/config.py 416 91 78% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/config_generator.py 210 153 27% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/daemon.py 76 3 96% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/dcs/__init__.py 667 83 88% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/dcs/etcd3.py 683 126 82% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/dcs/etcd.py 602 253 58% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/exceptions.py 16 0 100% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/file_perm.py 43 8 81% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/ha.py 1239 362 71% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/log.py 155 31 80% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/postgresql/__init__.py 826 176 79% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/postgresql/bootstrap.py 253 63 75% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/postgresql/callback_executor.py 55 8 85% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/postgresql/cancellable.py 104 41 61% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/postgresql/citus.py 258 193 25% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/postgresql/config.py 806 217 73% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/postgresql/connection.py 75 1 99% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/postgresql/misc.py 41 8 80% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/postgresql/postmaster.py 170 85 50% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/postgresql/rewind.py 415 169 59% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/postgresql/slots.py 332 34 90% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/postgresql/sync.py 129 19 85% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/postgresql/validator.py 165 25 85% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/psycopg.py 41 15 63% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/request.py 62 7 89% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/tags.py 35 0 100% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/utils.py 318 90 72% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/validator.py 284 194 32% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/version.py 1 0 100% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/watchdog/__init__.py 2 0 100% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/watchdog/base.py 203 43 79% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/patroni/watchdog/linux.py 135 36 73% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/psutil/__init__.py 951 629 34% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/psutil/_common.py 424 212 50% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/psutil/_compat.py 302 263 13% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/psutil/_pslinux.py 1251 924 26% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/psutil/_psposix.py 96 38 60% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/psycopg2/__init__.py 19 3 84% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/psycopg2/_json.py 64 27 58% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/psycopg2/_range.py 269 172 36% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/psycopg2/errors.py 3 2 33% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/psycopg2/extensions.py 91 25 73% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/six.py 504 250 50% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/urllib3/__init__.py 50 14 72% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/urllib3/_base_connection.py 70 52 26% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/urllib3/_collections.py 234 123 47% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/urllib3/_request_methods.py 53 23 57% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/urllib3/_version.py 2 0 100% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/urllib3/connection.py 324 99 69% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/urllib3/connectionpool.py 347 124 64% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/urllib3/contrib/__init__.py 0 0 100% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/urllib3/contrib/pyopenssl.py 257 96 63% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/urllib3/exceptions.py 115 37 68% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/urllib3/fields.py 92 73 21% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/urllib3/filepost.py 37 24 35% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/urllib3/poolmanager.py 233 85 64% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/urllib3/response.py 562 280 50% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/urllib3/util/__init__.py 10 0 100% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/urllib3/util/connection.py 66 42 36% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/urllib3/util/proxy.py 13 6 54% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/urllib3/util/request.py 104 49 53% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/urllib3/util/response.py 32 15 53% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/urllib3/util/retry.py 173 49 72% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/urllib3/util/ssl_.py 177 78 56% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/urllib3/util/ssl_match_hostname.py 66 54 18% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/urllib3/util/ssltransport.py 160 112 30% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/urllib3/util/timeout.py 71 14 80% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/urllib3/util/url.py 205 72 65% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/urllib3/util/util.py 26 10 62% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/urllib3/util/wait.py 49 18 63% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/yaml/__init__.py 165 109 34% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/yaml/composer.py 92 17 82% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/yaml/constructor.py 479 276 42% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/yaml/cyaml.py 46 24 48% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/yaml/dumper.py 23 12 48% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/yaml/emitter.py 838 769 8% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/yaml/error.py 58 42 28% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/yaml/events.py 61 6 90% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/yaml/loader.py 47 24 49% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/yaml/nodes.py 29 7 76% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/yaml/parser.py 352 198 44% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/yaml/reader.py 122 34 72% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/yaml/representer.py 248 176 29% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/yaml/resolver.py 135 76 44% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/yaml/scanner.py 758 437 42% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/yaml/serializer.py 85 70 18% 683s Mar 22 12:28:50 /usr/lib/python3/dist-packages/yaml/tokens.py 76 17 78% 683s Mar 22 12:28:50 patroni/__init__.py 13 2 85% 683s Mar 22 12:28:50 patroni/__main__.py 199 199 0% 683s Mar 22 12:28:50 patroni/api.py 768 768 0% 683s Mar 22 12:28:50 patroni/async_executor.py 96 69 28% 683s Mar 22 12:28:50 patroni/collections.py 43 11 74% 683s Mar 22 12:28:50 patroni/config.py 416 206 50% 683s Mar 22 12:28:50 patroni/config_generator.py 210 210 0% 683s Mar 22 12:28:50 patroni/ctl.py 940 409 56% 683s Mar 22 12:28:50 patroni/daemon.py 76 76 0% 683s Mar 22 12:28:50 patroni/dcs/__init__.py 667 265 60% 683s Mar 22 12:28:50 patroni/dcs/consul.py 482 482 0% 683s Mar 22 12:28:50 patroni/dcs/etcd3.py 683 344 50% 683s Mar 22 12:28:50 patroni/dcs/etcd.py 602 277 54% 683s Mar 22 12:28:50 patroni/dcs/exhibitor.py 60 60 0% 683s Mar 22 12:28:50 patroni/dcs/kubernetes.py 935 935 0% 683s Mar 22 12:28:50 patroni/dcs/raft.py 318 318 0% 683s Mar 22 12:28:50 patroni/dcs/zookeeper.py 287 287 0% 683s Mar 22 12:28:50 patroni/exceptions.py 16 1 94% 683s Mar 22 12:28:50 patroni/file_perm.py 43 15 65% 683s Mar 22 12:28:50 patroni/ha.py 1239 1239 0% 683s Mar 22 12:28:50 patroni/log.py 155 155 0% 683s Mar 22 12:28:50 patroni/postgresql/__init__.py 826 655 21% 683s Mar 22 12:28:50 patroni/postgresql/bootstrap.py 253 224 11% 683s Mar 22 12:28:50 patroni/postgresql/callback_executor.py 55 34 38% 683s Mar 22 12:28:50 patroni/postgresql/cancellable.py 104 84 19% 683s Mar 22 12:28:50 patroni/postgresql/citus.py 258 217 16% 683s Mar 22 12:28:50 patroni/postgresql/config.py 806 693 14% 683s Mar 22 12:28:50 patroni/postgresql/connection.py 75 50 33% 683s Mar 22 12:28:50 patroni/postgresql/misc.py 41 29 29% 683s Mar 22 12:28:50 patroni/postgresql/postmaster.py 170 139 18% 683s Mar 22 12:28:50 patroni/postgresql/rewind.py 415 415 0% 683s Mar 22 12:28:50 patroni/postgresql/slots.py 332 285 14% 683s Mar 22 12:28:50 patroni/postgresql/sync.py 129 96 26% 683s Mar 22 12:28:50 patroni/postgresql/validator.py 165 53 68% 683s Mar 22 12:28:50 patroni/psycopg.py 41 27 34% 683s Mar 22 12:28:50 patroni/raft_controller.py 22 22 0% 683s Mar 22 12:28:50 patroni/request.py 62 6 90% 683s Mar 22 12:28:50 patroni/scripts/__init__.py 0 0 100% 683s Mar 22 12:28:50 patroni/scripts/aws.py 59 59 0% 683s Mar 22 12:28:50 patroni/scripts/wale_restore.py 207 207 0% 683s Mar 22 12:28:50 patroni/tags.py 35 10 71% 683s Mar 22 12:28:50 patroni/utils.py 318 149 53% 683s Mar 22 12:28:50 patroni/validator.py 284 201 29% 683s Mar 22 12:28:50 patroni/version.py 1 0 100% 683s Mar 22 12:28:50 patroni/watchdog/__init__.py 2 2 0% 683s Mar 22 12:28:50 patroni/watchdog/base.py 203 203 0% 683s Mar 22 12:28:50 patroni/watchdog/linux.py 135 135 0% 683s Mar 22 12:28:50 ------------------------------------------------------------------------------------------------------------- 683s Mar 22 12:28:50 TOTAL 53582 32320 40% 683s Mar 22 12:28:50 11 features passed, 0 failed, 1 skipped 683s Mar 22 12:28:50 44 scenarios passed, 0 failed, 14 skipped 683s Mar 22 12:28:50 453 steps passed, 0 failed, 119 skipped, 0 undefined 683s Mar 22 12:28:50 Took 7m37.403s 683s ### End 16 acceptance-etcd3 ### 683s + echo '### End 16 acceptance-etcd3 ###' 683s + rm -f '/tmp/pgpass?' 683s ++ id -u 683s + '[' 1000 -eq 0 ']' 683s autopkgtest [12:28:50]: test acceptance-etcd3: -----------------------] 684s autopkgtest [12:28:51]: test acceptance-etcd3: - - - - - - - - - - results - - - - - - - - - - 684s acceptance-etcd3 PASS 685s autopkgtest [12:28:52]: test acceptance-etcd-basic: preparing testbed 768s autopkgtest [12:30:15]: testbed dpkg architecture: s390x 768s autopkgtest [12:30:15]: testbed apt version: 2.7.12 768s autopkgtest [12:30:15]: @@@@@@@@@@@@@@@@@@@@ test bed setup 769s Get:1 http://ftpmaster.internal/ubuntu noble-proposed InRelease [117 kB] 769s Get:2 http://ftpmaster.internal/ubuntu noble-proposed/multiverse Sources [54.0 kB] 769s Get:3 http://ftpmaster.internal/ubuntu noble-proposed/main Sources [496 kB] 769s Get:4 http://ftpmaster.internal/ubuntu noble-proposed/universe Sources [3808 kB] 770s Get:5 http://ftpmaster.internal/ubuntu noble-proposed/restricted Sources [6540 B] 770s Get:6 http://ftpmaster.internal/ubuntu noble-proposed/main s390x Packages [665 kB] 770s Get:7 http://ftpmaster.internal/ubuntu noble-proposed/main s390x c-n-f Metadata [3032 B] 770s Get:8 http://ftpmaster.internal/ubuntu noble-proposed/restricted s390x Packages [1372 B] 770s Get:9 http://ftpmaster.internal/ubuntu noble-proposed/restricted s390x c-n-f Metadata [116 B] 770s Get:10 http://ftpmaster.internal/ubuntu noble-proposed/universe s390x Packages [3992 kB] 770s Get:11 http://ftpmaster.internal/ubuntu noble-proposed/universe s390x c-n-f Metadata [7292 B] 770s Get:12 http://ftpmaster.internal/ubuntu noble-proposed/multiverse s390x Packages [45.1 kB] 770s Get:13 http://ftpmaster.internal/ubuntu noble-proposed/multiverse s390x c-n-f Metadata [116 B] 772s Fetched 9196 kB in 2s (3897 kB/s) 772s Reading package lists... 774s Reading package lists... 774s Building dependency tree... 774s Reading state information... 775s Calculating upgrade... 775s The following packages will be upgraded: 775s cloud-init debianutils fonts-ubuntu-console python3-markupsafe 775s 4 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 775s Need to get 719 kB of archives. 775s After this operation, 11.3 kB disk space will be freed. 775s Get:1 http://ftpmaster.internal/ubuntu noble/main s390x debianutils s390x 5.17 [90.1 kB] 775s Get:2 http://ftpmaster.internal/ubuntu noble/main s390x fonts-ubuntu-console all 0.869+git20240321-0ubuntu1 [18.7 kB] 775s Get:3 http://ftpmaster.internal/ubuntu noble/main s390x python3-markupsafe s390x 2.1.5-1build1 [12.8 kB] 775s Get:4 http://ftpmaster.internal/ubuntu noble/main s390x cloud-init all 24.1.2-0ubuntu1 [597 kB] 776s Preconfiguring packages ... 776s Fetched 719 kB in 1s (1054 kB/s) 776s (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 ... 52171 files and directories currently installed.) 776s Preparing to unpack .../debianutils_5.17_s390x.deb ... 776s Unpacking debianutils (5.17) over (5.16) ... 776s Setting up debianutils (5.17) ... 776s (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 ... 52171 files and directories currently installed.) 776s Preparing to unpack .../fonts-ubuntu-console_0.869+git20240321-0ubuntu1_all.deb ... 776s Unpacking fonts-ubuntu-console (0.869+git20240321-0ubuntu1) over (0.869-0ubuntu1) ... 776s Preparing to unpack .../python3-markupsafe_2.1.5-1build1_s390x.deb ... 776s Unpacking python3-markupsafe (2.1.5-1build1) over (2.1.5-1) ... 776s Preparing to unpack .../cloud-init_24.1.2-0ubuntu1_all.deb ... 776s Unpacking cloud-init (24.1.2-0ubuntu1) over (24.1.1-0ubuntu1) ... 776s Setting up fonts-ubuntu-console (0.869+git20240321-0ubuntu1) ... 776s Setting up cloud-init (24.1.2-0ubuntu1) ... 777s Setting up python3-markupsafe (2.1.5-1build1) ... 777s Processing triggers for man-db (2.12.0-3) ... 778s Processing triggers for rsyslog (8.2312.0-3ubuntu3) ... 778s Reading package lists... 779s Building dependency tree... 779s Reading state information... 779s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 779s Unknown architecture, assuming PC-style ttyS0 779s sh: Attempting to set up Debian/Ubuntu apt sources automatically 779s sh: Distribution appears to be Ubuntu 780s Reading package lists... 780s Building dependency tree... 780s Reading state information... 780s eatmydata is already the newest version (131-1). 780s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 780s Reading package lists... 780s Building dependency tree... 780s Reading state information... 781s dbus is already the newest version (1.14.10-4ubuntu1). 781s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 781s Reading package lists... 781s Building dependency tree... 781s Reading state information... 781s rng-tools-debian is already the newest version (2.4). 781s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 781s Reading package lists... 781s Building dependency tree... 781s Reading state information... 781s The following packages will be REMOVED: 781s cloud-init* python3-configobj* python3-debconf* 781s 0 upgraded, 0 newly installed, 3 to remove and 0 not upgraded. 781s After this operation, 3256 kB disk space will be freed. 782s (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 ... 52170 files and directories currently installed.) 782s Removing cloud-init (24.1.2-0ubuntu1) ... 782s Removing python3-configobj (5.0.8-3) ... 782s Removing python3-debconf (1.5.86) ... 782s Processing triggers for man-db (2.12.0-3) ... 782s (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 ... 51781 files and directories currently installed.) 782s Purging configuration files for cloud-init (24.1.2-0ubuntu1) ... 783s dpkg: warning: while removing cloud-init, directory '/etc/cloud/cloud.cfg.d' not empty so not removed 783s Processing triggers for rsyslog (8.2312.0-3ubuntu3) ... 783s invoke-rc.d: policy-rc.d denied execution of try-restart. 783s Reading package lists... 783s Building dependency tree... 783s Reading state information... 783s linux-generic is already the newest version (6.8.0-11.11+1). 783s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 784s Hit:1 http://ftpmaster.internal/ubuntu noble InRelease 784s Hit:2 http://ftpmaster.internal/ubuntu noble-updates InRelease 784s Hit:3 http://ftpmaster.internal/ubuntu noble-security InRelease 786s Reading package lists... 786s Reading package lists... 786s Building dependency tree... 786s Reading state information... 786s Calculating upgrade... 786s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 786s Reading package lists... 786s Building dependency tree... 786s Reading state information... 786s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 787s autopkgtest [12:30:34]: rebooting testbed after setup commands that affected boot 809s Reading package lists... 809s Building dependency tree... 809s Reading state information... 809s Starting pkgProblemResolver with broken count: 0 809s Starting 2 pkgProblemResolver with broken count: 0 809s Done 809s The following additional packages will be installed: 809s etcd-server fonts-font-awesome fonts-lato libio-pty-perl libipc-run-perl 809s libjs-jquery libjs-sphinxdoc libjs-underscore libjson-perl libllvm17 libpq5 809s libtime-duration-perl libtimedate-perl libxslt1.1 moreutils patroni 809s patroni-doc postgresql postgresql-16 postgresql-client-16 809s postgresql-client-common postgresql-common python3-behave python3-cdiff 809s python3-click python3-colorama python3-coverage python3-dateutil 809s python3-dnspython python3-etcd python3-parse python3-parse-type 809s python3-prettytable python3-psutil python3-psycopg2 python3-wcwidth 809s sphinx-rtd-theme-common ssl-cert 809s Suggested packages: 809s etcd-client vip-manager haproxy postgresql-doc postgresql-doc-16 809s python-coverage-doc python3-trio python3-aioquic python3-h2 python3-httpx 809s python3-httpcore etcd python-psycopg2-doc 809s Recommended packages: 809s javascript-common libjson-xs-perl 809s The following NEW packages will be installed: 809s autopkgtest-satdep etcd-server fonts-font-awesome fonts-lato libio-pty-perl 809s libipc-run-perl libjs-jquery libjs-sphinxdoc libjs-underscore libjson-perl 809s libllvm17 libpq5 libtime-duration-perl libtimedate-perl libxslt1.1 moreutils 809s patroni patroni-doc postgresql postgresql-16 postgresql-client-16 809s postgresql-client-common postgresql-common python3-behave python3-cdiff 809s python3-click python3-colorama python3-coverage python3-dateutil 809s python3-dnspython python3-etcd python3-parse python3-parse-type 809s python3-prettytable python3-psutil python3-psycopg2 python3-wcwidth 809s sphinx-rtd-theme-common ssl-cert 809s 0 upgraded, 39 newly installed, 0 to remove and 0 not upgraded. 809s Need to get 64.5 MB/64.5 MB of archives. 809s After this operation, 270 MB of additional disk space will be used. 809s Get:1 /tmp/autopkgtest.yyH96f/2-autopkgtest-satdep.deb autopkgtest-satdep s390x 0 [768 B] 810s Get:2 http://ftpmaster.internal/ubuntu noble/main s390x fonts-lato all 2.015-1 [2781 kB] 811s Get:3 http://ftpmaster.internal/ubuntu noble/main s390x libjson-perl all 4.10000-1 [81.9 kB] 811s Get:4 http://ftpmaster.internal/ubuntu noble/main s390x postgresql-client-common all 257 [36.2 kB] 811s Get:5 http://ftpmaster.internal/ubuntu noble/main s390x ssl-cert all 1.1.2ubuntu1 [17.8 kB] 811s Get:6 http://ftpmaster.internal/ubuntu noble/main s390x postgresql-common all 257 [162 kB] 811s Get:7 http://ftpmaster.internal/ubuntu noble/universe s390x etcd-server s390x 3.4.30-1 [7779 kB] 812s Get:8 http://ftpmaster.internal/ubuntu noble/main s390x fonts-font-awesome all 5.0.10+really4.7.0~dfsg-4.1 [516 kB] 812s Get:9 http://ftpmaster.internal/ubuntu noble/main s390x libio-pty-perl s390x 1:1.20-1 [31.2 kB] 812s Get:10 http://ftpmaster.internal/ubuntu noble/main s390x libipc-run-perl all 20231003.0-1 [92.1 kB] 812s Get:11 http://ftpmaster.internal/ubuntu noble/main s390x libjs-jquery all 3.6.1+dfsg+~3.5.14-1 [328 kB] 812s Get:12 http://ftpmaster.internal/ubuntu noble/main s390x libjs-underscore all 1.13.4~dfsg+~1.11.4-3 [118 kB] 812s Get:13 http://ftpmaster.internal/ubuntu noble/main s390x libjs-sphinxdoc all 7.2.6-4 [149 kB] 812s Get:14 http://ftpmaster.internal/ubuntu noble/main s390x libllvm17 s390x 1:17.0.6-5build1 [31.2 MB] 814s Get:15 http://ftpmaster.internal/ubuntu noble/main s390x libpq5 s390x 16.2-1 [143 kB] 814s Get:16 http://ftpmaster.internal/ubuntu noble/main s390x libtime-duration-perl all 1.21-2 [12.3 kB] 814s Get:17 http://ftpmaster.internal/ubuntu noble/main s390x libtimedate-perl all 2.3300-2 [34.0 kB] 814s Get:18 http://ftpmaster.internal/ubuntu noble/main s390x libxslt1.1 s390x 1.1.35-1 [157 kB] 814s Get:19 http://ftpmaster.internal/ubuntu noble/universe s390x moreutils s390x 0.69-1 [57.4 kB] 814s Get:20 http://ftpmaster.internal/ubuntu noble/universe s390x python3-cdiff all 1.0-1.1 [16.4 kB] 814s Get:21 http://ftpmaster.internal/ubuntu noble/main s390x python3-colorama all 0.4.6-4 [32.1 kB] 814s Get:22 http://ftpmaster.internal/ubuntu noble/main s390x python3-click all 8.1.6-1 [79.0 kB] 814s Get:23 http://ftpmaster.internal/ubuntu noble/main s390x python3-dateutil all 2.8.2-3 [79.2 kB] 814s Get:24 http://ftpmaster.internal/ubuntu noble/main s390x python3-wcwidth all 0.2.5+dfsg1-1.1ubuntu1 [22.5 kB] 814s Get:25 http://ftpmaster.internal/ubuntu noble/main s390x python3-prettytable all 3.6.0-1 [33.1 kB] 814s Get:26 http://ftpmaster.internal/ubuntu noble/main s390x python3-psutil s390x 5.9.8-1 [195 kB] 814s Get:27 http://ftpmaster.internal/ubuntu noble/main s390x python3-psycopg2 s390x 2.9.9-1 [180 kB] 814s Get:28 http://ftpmaster.internal/ubuntu noble/main s390x python3-dnspython all 2.6.1-1ubuntu1 [163 kB] 814s Get:29 http://ftpmaster.internal/ubuntu noble/universe s390x python3-etcd all 0.4.5-4 [31.9 kB] 814s Get:30 http://ftpmaster.internal/ubuntu noble/universe s390x patroni all 3.2.2-2 [253 kB] 814s Get:31 http://ftpmaster.internal/ubuntu noble/main s390x sphinx-rtd-theme-common all 2.0.0+dfsg-1 [1012 kB] 814s Get:32 http://ftpmaster.internal/ubuntu noble/universe s390x patroni-doc all 3.2.2-2 [476 kB] 814s Get:33 http://ftpmaster.internal/ubuntu noble/main s390x postgresql-client-16 s390x 16.2-1 [1295 kB] 814s Get:34 http://ftpmaster.internal/ubuntu noble/main s390x postgresql-16 s390x 16.2-1 [16.7 MB] 815s Get:35 http://ftpmaster.internal/ubuntu noble/main s390x postgresql all 16+257 [11.4 kB] 815s Get:36 http://ftpmaster.internal/ubuntu noble/universe s390x python3-parse all 1.19.0-0.2 [18.1 kB] 815s Get:37 http://ftpmaster.internal/ubuntu noble/universe s390x python3-parse-type all 0.6.2-1 [22.7 kB] 815s Get:38 http://ftpmaster.internal/ubuntu noble/universe s390x python3-behave all 1.2.6-5 [98.4 kB] 815s Get:39 http://ftpmaster.internal/ubuntu noble/universe s390x python3-coverage s390x 7.3.2-0ubuntu1 [147 kB] 815s Preconfiguring packages ... 815s Fetched 64.5 MB in 6s (11.5 MB/s) 815s Selecting previously unselected package fonts-lato. 815s (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 ... 51726 files and directories currently installed.) 815s Preparing to unpack .../00-fonts-lato_2.015-1_all.deb ... 815s Unpacking fonts-lato (2.015-1) ... 816s Selecting previously unselected package libjson-perl. 816s Preparing to unpack .../01-libjson-perl_4.10000-1_all.deb ... 816s Unpacking libjson-perl (4.10000-1) ... 816s Selecting previously unselected package postgresql-client-common. 816s Preparing to unpack .../02-postgresql-client-common_257_all.deb ... 816s Unpacking postgresql-client-common (257) ... 816s Selecting previously unselected package ssl-cert. 816s Preparing to unpack .../03-ssl-cert_1.1.2ubuntu1_all.deb ... 816s Unpacking ssl-cert (1.1.2ubuntu1) ... 816s Selecting previously unselected package postgresql-common. 816s Preparing to unpack .../04-postgresql-common_257_all.deb ... 816s Adding 'diversion of /usr/bin/pg_config to /usr/bin/pg_config.libpq-dev by postgresql-common' 816s Unpacking postgresql-common (257) ... 816s Selecting previously unselected package etcd-server. 816s Preparing to unpack .../05-etcd-server_3.4.30-1_s390x.deb ... 816s Unpacking etcd-server (3.4.30-1) ... 816s Selecting previously unselected package fonts-font-awesome. 816s Preparing to unpack .../06-fonts-font-awesome_5.0.10+really4.7.0~dfsg-4.1_all.deb ... 816s Unpacking fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ... 816s Selecting previously unselected package libio-pty-perl. 816s Preparing to unpack .../07-libio-pty-perl_1%3a1.20-1_s390x.deb ... 816s Unpacking libio-pty-perl (1:1.20-1) ... 816s Selecting previously unselected package libipc-run-perl. 816s Preparing to unpack .../08-libipc-run-perl_20231003.0-1_all.deb ... 816s Unpacking libipc-run-perl (20231003.0-1) ... 816s Selecting previously unselected package libjs-jquery. 816s Preparing to unpack .../09-libjs-jquery_3.6.1+dfsg+~3.5.14-1_all.deb ... 816s Unpacking libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 816s Selecting previously unselected package libjs-underscore. 816s Preparing to unpack .../10-libjs-underscore_1.13.4~dfsg+~1.11.4-3_all.deb ... 816s Unpacking libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 816s Selecting previously unselected package libjs-sphinxdoc. 816s Preparing to unpack .../11-libjs-sphinxdoc_7.2.6-4_all.deb ... 816s Unpacking libjs-sphinxdoc (7.2.6-4) ... 816s Selecting previously unselected package libllvm17:s390x. 816s Preparing to unpack .../12-libllvm17_1%3a17.0.6-5build1_s390x.deb ... 816s Unpacking libllvm17:s390x (1:17.0.6-5build1) ... 817s Selecting previously unselected package libpq5:s390x. 817s Preparing to unpack .../13-libpq5_16.2-1_s390x.deb ... 817s Unpacking libpq5:s390x (16.2-1) ... 817s Selecting previously unselected package libtime-duration-perl. 817s Preparing to unpack .../14-libtime-duration-perl_1.21-2_all.deb ... 817s Unpacking libtime-duration-perl (1.21-2) ... 817s Selecting previously unselected package libtimedate-perl. 817s Preparing to unpack .../15-libtimedate-perl_2.3300-2_all.deb ... 817s Unpacking libtimedate-perl (2.3300-2) ... 817s Selecting previously unselected package libxslt1.1:s390x. 817s Preparing to unpack .../16-libxslt1.1_1.1.35-1_s390x.deb ... 817s Unpacking libxslt1.1:s390x (1.1.35-1) ... 817s Selecting previously unselected package moreutils. 817s Preparing to unpack .../17-moreutils_0.69-1_s390x.deb ... 817s Unpacking moreutils (0.69-1) ... 817s Selecting previously unselected package python3-cdiff. 817s Preparing to unpack .../18-python3-cdiff_1.0-1.1_all.deb ... 817s Unpacking python3-cdiff (1.0-1.1) ... 817s Selecting previously unselected package python3-colorama. 817s Preparing to unpack .../19-python3-colorama_0.4.6-4_all.deb ... 817s Unpacking python3-colorama (0.4.6-4) ... 817s Selecting previously unselected package python3-click. 817s Preparing to unpack .../20-python3-click_8.1.6-1_all.deb ... 817s Unpacking python3-click (8.1.6-1) ... 817s Selecting previously unselected package python3-dateutil. 817s Preparing to unpack .../21-python3-dateutil_2.8.2-3_all.deb ... 817s Unpacking python3-dateutil (2.8.2-3) ... 817s Selecting previously unselected package python3-wcwidth. 817s Preparing to unpack .../22-python3-wcwidth_0.2.5+dfsg1-1.1ubuntu1_all.deb ... 817s Unpacking python3-wcwidth (0.2.5+dfsg1-1.1ubuntu1) ... 817s Selecting previously unselected package python3-prettytable. 818s Preparing to unpack .../23-python3-prettytable_3.6.0-1_all.deb ... 818s Unpacking python3-prettytable (3.6.0-1) ... 818s Selecting previously unselected package python3-psutil. 818s Preparing to unpack .../24-python3-psutil_5.9.8-1_s390x.deb ... 818s Unpacking python3-psutil (5.9.8-1) ... 818s Selecting previously unselected package python3-psycopg2. 818s Preparing to unpack .../25-python3-psycopg2_2.9.9-1_s390x.deb ... 818s Unpacking python3-psycopg2 (2.9.9-1) ... 818s Selecting previously unselected package python3-dnspython. 818s Preparing to unpack .../26-python3-dnspython_2.6.1-1ubuntu1_all.deb ... 818s Unpacking python3-dnspython (2.6.1-1ubuntu1) ... 818s Selecting previously unselected package python3-etcd. 818s Preparing to unpack .../27-python3-etcd_0.4.5-4_all.deb ... 818s Unpacking python3-etcd (0.4.5-4) ... 818s Selecting previously unselected package patroni. 818s Preparing to unpack .../28-patroni_3.2.2-2_all.deb ... 818s Unpacking patroni (3.2.2-2) ... 818s Selecting previously unselected package sphinx-rtd-theme-common. 818s Preparing to unpack .../29-sphinx-rtd-theme-common_2.0.0+dfsg-1_all.deb ... 818s Unpacking sphinx-rtd-theme-common (2.0.0+dfsg-1) ... 818s Selecting previously unselected package patroni-doc. 818s Preparing to unpack .../30-patroni-doc_3.2.2-2_all.deb ... 818s Unpacking patroni-doc (3.2.2-2) ... 818s Selecting previously unselected package postgresql-client-16. 818s Preparing to unpack .../31-postgresql-client-16_16.2-1_s390x.deb ... 818s Unpacking postgresql-client-16 (16.2-1) ... 818s Selecting previously unselected package postgresql-16. 818s Preparing to unpack .../32-postgresql-16_16.2-1_s390x.deb ... 818s Unpacking postgresql-16 (16.2-1) ... 818s Selecting previously unselected package postgresql. 818s Preparing to unpack .../33-postgresql_16+257_all.deb ... 818s Unpacking postgresql (16+257) ... 818s Selecting previously unselected package python3-parse. 818s Preparing to unpack .../34-python3-parse_1.19.0-0.2_all.deb ... 818s Unpacking python3-parse (1.19.0-0.2) ... 818s Selecting previously unselected package python3-parse-type. 818s Preparing to unpack .../35-python3-parse-type_0.6.2-1_all.deb ... 818s Unpacking python3-parse-type (0.6.2-1) ... 818s Selecting previously unselected package python3-behave. 818s Preparing to unpack .../36-python3-behave_1.2.6-5_all.deb ... 818s Unpacking python3-behave (1.2.6-5) ... 818s Selecting previously unselected package python3-coverage. 818s Preparing to unpack .../37-python3-coverage_7.3.2-0ubuntu1_s390x.deb ... 818s Unpacking python3-coverage (7.3.2-0ubuntu1) ... 818s Selecting previously unselected package autopkgtest-satdep. 818s Preparing to unpack .../38-2-autopkgtest-satdep.deb ... 818s Unpacking autopkgtest-satdep (0) ... 818s Setting up postgresql-client-common (257) ... 818s Setting up fonts-lato (2.015-1) ... 818s Setting up libio-pty-perl (1:1.20-1) ... 818s Setting up python3-colorama (0.4.6-4) ... 819s Setting up python3-cdiff (1.0-1.1) ... 819s Setting up libpq5:s390x (16.2-1) ... 819s Setting up python3-coverage (7.3.2-0ubuntu1) ... 819s Setting up python3-click (8.1.6-1) ... 819s Setting up python3-psutil (5.9.8-1) ... 819s Setting up python3-wcwidth (0.2.5+dfsg1-1.1ubuntu1) ... 819s Setting up ssl-cert (1.1.2ubuntu1) ... 820s Created symlink /etc/systemd/system/multi-user.target.wants/ssl-cert.service → /usr/lib/systemd/system/ssl-cert.service. 820s Setting up python3-psycopg2 (2.9.9-1) ... 821s Setting up libipc-run-perl (20231003.0-1) ... 821s Setting up libtime-duration-perl (1.21-2) ... 821s Setting up libtimedate-perl (2.3300-2) ... 821s Setting up python3-dnspython (2.6.1-1ubuntu1) ... 821s Setting up python3-parse (1.19.0-0.2) ... 821s Setting up libjson-perl (4.10000-1) ... 821s Setting up libxslt1.1:s390x (1.1.35-1) ... 821s Setting up python3-dateutil (2.8.2-3) ... 821s Setting up etcd-server (3.4.30-1) ... 821s info: Selecting UID from range 100 to 999 ... 821s 821s info: Selecting GID from range 100 to 999 ... 821s info: Adding system user `etcd' (UID 107) ... 821s info: Adding new group `etcd' (GID 113) ... 821s info: Adding new user `etcd' (UID 107) with group `etcd' ... 821s info: Creating home directory `/var/lib/etcd/' ... 822s Created symlink /etc/systemd/system/etcd2.service → /usr/lib/systemd/system/etcd.service. 822s Created symlink /etc/systemd/system/multi-user.target.wants/etcd.service → /usr/lib/systemd/system/etcd.service. 823s Setting up libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 823s Setting up python3-prettytable (3.6.0-1) ... 823s Setting up libllvm17:s390x (1:17.0.6-5build1) ... 823s Setting up fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ... 823s Setting up sphinx-rtd-theme-common (2.0.0+dfsg-1) ... 823s Setting up libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 823s Setting up moreutils (0.69-1) ... 823s Setting up python3-etcd (0.4.5-4) ... 823s Setting up postgresql-client-16 (16.2-1) ... 824s update-alternatives: using /usr/share/postgresql/16/man/man1/psql.1.gz to provide /usr/share/man/man1/psql.1.gz (psql.1.gz) in auto mode 824s Setting up python3-parse-type (0.6.2-1) ... 824s Setting up postgresql-common (257) ... 824s 824s Creating config file /etc/postgresql-common/createcluster.conf with new version 824s Building PostgreSQL dictionaries from installed myspell/hunspell packages... 824s Removing obsolete dictionary files: 825s Created symlink /etc/systemd/system/multi-user.target.wants/postgresql.service → /usr/lib/systemd/system/postgresql.service. 825s Setting up libjs-sphinxdoc (7.2.6-4) ... 825s Setting up python3-behave (1.2.6-5) ... 825s /usr/lib/python3/dist-packages/behave/formatter/ansi_escapes.py:57: SyntaxWarning: invalid escape sequence '\[' 825s _ANSI_ESCAPE_PATTERN = re.compile(u"\x1b\[\d+[mA]", re.UNICODE) 825s /usr/lib/python3/dist-packages/behave/matchers.py:267: SyntaxWarning: invalid escape sequence '\d' 825s """Registers a custom type that will be available to "parse" 825s Setting up patroni (3.2.2-2) ... 825s Created symlink /etc/systemd/system/multi-user.target.wants/patroni.service → /usr/lib/systemd/system/patroni.service. 826s Setting up postgresql-16 (16.2-1) ... 826s Creating new PostgreSQL cluster 16/main ... 826s /usr/lib/postgresql/16/bin/initdb -D /var/lib/postgresql/16/main --auth-local peer --auth-host scram-sha-256 --no-instructions 826s The files belonging to this database system will be owned by user "postgres". 826s This user must also own the server process. 826s 826s The database cluster will be initialized with locale "C.UTF-8". 826s The default database encoding has accordingly been set to "UTF8". 826s The default text search configuration will be set to "english". 826s 826s Data page checksums are disabled. 826s 826s fixing permissions on existing directory /var/lib/postgresql/16/main ... ok 826s creating subdirectories ... ok 826s selecting dynamic shared memory implementation ... posix 826s selecting default max_connections ... 100 826s selecting default shared_buffers ... 128MB 826s selecting default time zone ... Etc/UTC 826s creating configuration files ... ok 826s running bootstrap script ... ok 827s performing post-bootstrap initialization ... ok 827s syncing data to disk ... ok 830s Setting up patroni-doc (3.2.2-2) ... 830s Setting up postgresql (16+257) ... 830s Setting up autopkgtest-satdep (0) ... 830s Processing triggers for man-db (2.12.0-3) ... 831s Processing triggers for libc-bin (2.39-0ubuntu2) ... 834s (Reading database ... 55088 files and directories currently installed.) 834s Removing autopkgtest-satdep (0) ... 836s autopkgtest [12:31:23]: test acceptance-etcd-basic: debian/tests/acceptance etcd features/basic_replication.feature 836s autopkgtest [12:31:23]: test acceptance-etcd-basic: [----------------------- 836s dpkg-architecture: warning: cannot determine CC system type, falling back to default (native compilation) 837s ○ etcd.service - etcd - highly-available key value store 837s Loaded: loaded (/usr/lib/systemd/system/etcd.service; enabled; preset: enabled) 837s Active: inactive (dead) since Fri 2024-03-22 12:31:24 UTC; 12ms ago 837s Duration: 15.484s 837s Docs: https://etcd.io/docs 837s man:etcd 837s Process: 1560 ExecStart=/usr/bin/etcd $DAEMON_ARGS (code=killed, signal=TERM) 837s Main PID: 1560 (code=killed, signal=TERM) 837s CPU: 45ms 837s 837s Mar 22 12:31:08 autopkgtest etcd[1560]: ready to serve client requests 837s Mar 22 12:31:08 autopkgtest etcd[1560]: serving insecure client requests on 127.0.0.1:2379, this is strongly discouraged! 837s Mar 22 12:31:08 autopkgtest systemd[1]: Started etcd.service - etcd - highly-available key value store. 837s Mar 22 12:31:24 autopkgtest etcd[1560]: received terminated signal, shutting down... 837s Mar 22 12:31:24 autopkgtest etcd[1560]: stopping insecure grpc server due to error: accept tcp 127.0.0.1:2379: use of closed network connection 837s Mar 22 12:31:24 autopkgtest etcd[1560]: stopped insecure grpc server due to error: accept tcp 127.0.0.1:2379: use of closed network connection 837s Mar 22 12:31:24 autopkgtest etcd[1560]: skipped leadership transfer for single voting member cluster 837s Mar 22 12:31:24 autopkgtest systemd[1]: Stopping etcd.service - etcd - highly-available key value store... 837s Mar 22 12:31:24 autopkgtest systemd[1]: etcd.service: Deactivated successfully. 837s Mar 22 12:31:24 autopkgtest systemd[1]: Stopped etcd.service - etcd - highly-available key value store. 837s ++ ls -1r /usr/lib/postgresql/ 837s + for PG_VERSION in $(ls -1r /usr/lib/postgresql/) 837s + echo '### PostgreSQL 16 acceptance-etcd features/basic_replication.feature ###' 837s ### PostgreSQL 16 acceptance-etcd features/basic_replication.feature ### 837s + '[' 16 == 10 ']' 837s + SKIP= 837s + su postgres -p -c 'set -o pipefail; ETCD_UNSUPPORTED_ARCH=s390x DCS=etcd PATH=/usr/lib/postgresql/16/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin behave features/basic_replication.feature | ts' 839s Mar 22 12:31:26 Feature: basic replication # features/basic_replication.feature:1 839s Mar 22 12:31:26 We should check that the basic bootstrapping, replication and failover works. 839s Mar 22 12:31:26 Scenario: check replication of a single table # features/basic_replication.feature:4 839s Mar 22 12:31:26 Given I start postgres0 # features/steps/basic_replication.py:8 842s Mar 22 12:31:29 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 843s Mar 22 12:31:30 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 843s Mar 22 12:31:30 When I issue a PATCH request to http://127.0.0.1:8008/config with {"ttl": 20, "synchronous_mode": true} # features/steps/patroni_api.py:71 843s Mar 22 12:31:30 Then I receive a response code 200 # features/steps/patroni_api.py:98 843s Mar 22 12:31:30 When I start postgres1 # features/steps/basic_replication.py:8 846s Mar 22 12:31:33 And I configure and start postgres2 with a tag replicatefrom postgres0 # features/steps/cascading_replication.py:7 849s Mar 22 12:31:36 And "sync" key in DCS has leader=postgres0 after 20 seconds # features/steps/cascading_replication.py:23 849s Mar 22 12:31:36 And I add the table foo to postgres0 # features/steps/basic_replication.py:49 849s Mar 22 12:31:36 Then table foo is present on postgres1 after 20 seconds # features/steps/basic_replication.py:89 850s Mar 22 12:31:37 Then table foo is present on postgres2 after 20 seconds # features/steps/basic_replication.py:89 854s Mar 22 12:31:41 854s Mar 22 12:31:41 Scenario: check restart of sync replica # features/basic_replication.feature:17 854s Mar 22 12:31:41 Given I shut down postgres2 # features/steps/basic_replication.py:29 855s Mar 22 12:31:42 Then "sync" key in DCS has sync_standby=postgres1 after 5 seconds # features/steps/cascading_replication.py:23 855s Mar 22 12:31:42 When I start postgres2 # features/steps/basic_replication.py:8 857s Mar 22 12:31:44 And I shut down postgres1 # features/steps/basic_replication.py:29 860s Mar 22 12:31:47 Then "sync" key in DCS has sync_standby=postgres2 after 10 seconds # features/steps/cascading_replication.py:23 861s Mar 22 12:31:48 When I start postgres1 # features/steps/basic_replication.py:8 864s Mar 22 12:31:50 Then "members/postgres1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 865s Mar 22 12:31:51 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 865s Mar 22 12:31:52 And Status code on GET http://127.0.0.1:8009/async is 200 after 3 seconds # features/steps/patroni_api.py:142 865s Mar 22 12:31:52 865s Mar 22 12:31:52 Scenario: check stuck sync replica # features/basic_replication.feature:28 865s Mar 22 12:31:52 Given I issue a PATCH request to http://127.0.0.1:8008/config with {"pause": true, "maximum_lag_on_syncnode": 15000000, "postgresql": {"parameters": {"synchronous_commit": "remote_apply"}}} # features/steps/patroni_api.py:71 865s Mar 22 12:31:52 Then I receive a response code 200 # features/steps/patroni_api.py:98 865s Mar 22 12:31:52 And I create table on postgres0 # features/steps/basic_replication.py:69 865s Mar 22 12:31:52 And table mytest is present on postgres1 after 2 seconds # features/steps/basic_replication.py:89 866s Mar 22 12:31:53 And table mytest is present on postgres2 after 2 seconds # features/steps/basic_replication.py:89 866s Mar 22 12:31:53 When I pause wal replay on postgres2 # features/steps/basic_replication.py:58 866s Mar 22 12:31:53 And I load data on postgres0 # features/steps/basic_replication.py:80 867s Mar 22 12:31:54 Then "sync" key in DCS has sync_standby=postgres1 after 15 seconds # features/steps/cascading_replication.py:23 870s Mar 22 12:31:57 And I resume wal replay on postgres2 # features/steps/basic_replication.py:58 870s Mar 22 12:31:57 And Status code on GET http://127.0.0.1:8009/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 870s Mar 22 12:31:57 And Status code on GET http://127.0.0.1:8010/async is 200 after 3 seconds # features/steps/patroni_api.py:142 870s Mar 22 12:31:57 When I issue a PATCH request to http://127.0.0.1:8008/config with {"pause": null, "maximum_lag_on_syncnode": -1, "postgresql": {"parameters": {"synchronous_commit": "on"}}} # features/steps/patroni_api.py:71 870s Mar 22 12:31:57 Then I receive a response code 200 # features/steps/patroni_api.py:98 870s Mar 22 12:31:57 And I drop table on postgres0 # features/steps/basic_replication.py:69 870s Mar 22 12:31:57 870s Mar 22 12:31:57 Scenario: check multi sync replication # features/basic_replication.feature:44 870s Mar 22 12:31:57 Given I issue a PATCH request to http://127.0.0.1:8008/config with {"synchronous_node_count": 2} # features/steps/patroni_api.py:71 870s Mar 22 12:31:57 Then I receive a response code 200 # features/steps/patroni_api.py:98 870s Mar 22 12:31:57 Then "sync" key in DCS has sync_standby=postgres1,postgres2 after 10 seconds # features/steps/cascading_replication.py:23 874s Mar 22 12:32:01 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 874s Mar 22 12:32:01 And Status code on GET http://127.0.0.1:8009/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 874s Mar 22 12:32:01 When I issue a PATCH request to http://127.0.0.1:8008/config with {"synchronous_node_count": 1} # features/steps/patroni_api.py:71 874s Mar 22 12:32:01 Then I receive a response code 200 # features/steps/patroni_api.py:98 874s Mar 22 12:32:01 And I shut down postgres1 # features/steps/basic_replication.py:29 877s Mar 22 12:32:04 Then "sync" key in DCS has sync_standby=postgres2 after 10 seconds # features/steps/cascading_replication.py:23 878s Mar 22 12:32:05 When I start postgres1 # features/steps/basic_replication.py:8 881s Mar 22 12:32:08 Then "members/postgres1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 881s Mar 22 12:32:08 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 881s Mar 22 12:32:08 And Status code on GET http://127.0.0.1:8009/async is 200 after 3 seconds # features/steps/patroni_api.py:142 881s Mar 22 12:32:08 881s Mar 22 12:32:08 Scenario: check the basic failover in synchronous mode # features/basic_replication.feature:59 881s Mar 22 12:32:08 Given I run patronictl.py pause batman # features/steps/patroni_api.py:86 883s Mar 22 12:32:10 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 883s Mar 22 12:32:10 When I sleep for 2 seconds # features/steps/patroni_api.py:39 885s Mar 22 12:32:12 And I shut down postgres0 # features/steps/basic_replication.py:29 886s Mar 22 12:32:13 And I run patronictl.py resume batman # features/steps/patroni_api.py:86 887s Mar 22 12:32:14 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 887s Mar 22 12:32:14 And postgres2 role is the primary after 24 seconds # features/steps/basic_replication.py:101 905s Mar 22 12:32:32 And Response on GET http://127.0.0.1:8010/history contains recovery after 10 seconds # features/steps/patroni_api.py:156 909s Mar 22 12:32:36 And there is a postgres2_cb.log with "on_role_change master batman" in postgres2 data directory # features/steps/cascading_replication.py:12 909s Mar 22 12:32:36 When I issue a PATCH request to http://127.0.0.1:8010/config with {"synchronous_mode": null, "master_start_timeout": 0} # features/steps/patroni_api.py:71 909s Mar 22 12:32:36 Then I receive a response code 200 # features/steps/patroni_api.py:98 909s Mar 22 12:32:36 When I add the table bar to postgres2 # features/steps/basic_replication.py:49 909s Mar 22 12:32:36 Then table bar is present on postgres1 after 20 seconds # features/steps/basic_replication.py:89 912s Mar 22 12:32:39 And Response on GET http://127.0.0.1:8010/config contains master_start_timeout after 10 seconds # features/steps/patroni_api.py:156 912s Mar 22 12:32:39 912s Mar 22 12:32:39 Scenario: check rejoin of the former primary with pg_rewind # features/basic_replication.feature:75 912s Mar 22 12:32:39 Given I add the table splitbrain to postgres0 # features/steps/basic_replication.py:49 912s Mar 22 12:32:39 And I start postgres0 # features/steps/basic_replication.py:8 912s Mar 22 12:32:39 Then postgres0 role is the secondary after 20 seconds # features/steps/basic_replication.py:101 918s Mar 22 12:32:45 When I add the table buz to postgres2 # features/steps/basic_replication.py:49 918s Mar 22 12:32:45 Then table buz is present on postgres0 after 20 seconds # features/steps/basic_replication.py:89 919s Mar 22 12:32:46 919s Mar 22 12:32:46 @reject-duplicate-name 919s Mar 22 12:32:46 Scenario: check graceful rejection when two nodes have the same name # features/basic_replication.feature:83 919s Mar 22 12:32:46 Given I start duplicate postgres0 on port 8011 # features/steps/basic_replication.py:13 921s Mar 22 12:32:48 Then there is one of ["Can't start; there is already a node named 'postgres0' running"] CRITICAL in the dup-postgres0 patroni log after 5 seconds # features/steps/basic_replication.py:117 925s Mar 22 12:32:52 925s Failed to get list of machines from http://[::1]:2379/v2: MaxRetryError("HTTPConnectionPool(host='::1', port=2379): Max retries exceeded with url: /v2/machines (Caused by NewConnectionError(': Failed to establish a new connection: [Errno 111] Connection refused'))") 926s Failed to get list of machines from http://[::1]:2379/v2: MaxRetryError("HTTPConnectionPool(host='::1', port=2379): Max retries exceeded with url: /v2/machines (Caused by NewConnectionError(': Failed to establish a new connection: [Errno 111] Connection refused'))") 926s Failed to get list of machines from http://127.0.0.1:2379/v2: MaxRetryError("HTTPConnectionPool(host='127.0.0.1', port=2379): Max retries exceeded with url: /v2/machines (Caused by NewConnectionError(': Failed to establish a new connection: [Errno 111] Connection refused'))") 926s Mar 22 12:32:53 Combined data file .coverage.autopkgtest.4023.910292 926s Mar 22 12:32:53 Combined data file .coverage.autopkgtest.3759.017681 926s Mar 22 12:32:53 Combined data file .coverage.autopkgtest.3715.366777 926s Mar 22 12:32:53 Combined data file .coverage.autopkgtest.3787.199737 926s Mar 22 12:32:53 Combined data file .coverage.autopkgtest.3836.095292 926s Mar 22 12:32:53 Combined data file .coverage.autopkgtest.3931.516873 926s Mar 22 12:32:53 Combined data file .coverage.autopkgtest.3869.629188 926s Mar 22 12:32:53 Combined data file .coverage.autopkgtest.3968.457938 926s Mar 22 12:32:53 Combined data file .coverage.autopkgtest.3971.858321 926s Mar 22 12:32:53 Combined data file .coverage.autopkgtest.4118.013683 929s Mar 22 12:32:55 Name Stmts Miss Cover 929s Mar 22 12:32:55 ------------------------------------------------------------------------------------------------------------- 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/OpenSSL/SSL.py 1072 602 44% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/OpenSSL/__init__.py 4 0 100% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/OpenSSL/_util.py 41 14 66% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/OpenSSL/crypto.py 1225 982 20% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/OpenSSL/version.py 10 0 100% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/_distutils_hack/__init__.py 100 95 5% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/__about__.py 5 0 100% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/__init__.py 3 0 100% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/exceptions.py 26 5 81% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/hazmat/__init__.py 2 0 100% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/hazmat/_oid.py 126 0 100% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/__init__.py 0 0 100% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/__init__.py 0 0 100% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/_conditional.py 73 32 56% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/binding.py 73 13 82% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/__init__.py 0 0 100% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_asymmetric.py 6 0 100% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_cipheralgorithm.py 18 0 100% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_serialization.py 80 35 56% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/__init__.py 0 0 100% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/dh.py 118 47 60% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/dsa.py 134 57 57% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/ec.py 219 56 74% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/ed448.py 45 12 73% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/ed25519.py 45 12 73% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/padding.py 47 20 57% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/rsa.py 184 106 42% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/types.py 19 0 100% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/utils.py 14 5 64% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/x448.py 43 12 72% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/x25519.py 43 12 72% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/__init__.py 4 0 100% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/algorithms.py 129 35 73% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/base.py 138 79 43% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/modes.py 140 58 59% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/constant_time.py 6 3 50% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/hashes.py 128 20 84% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/serialization/__init__.py 5 0 100% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/serialization/base.py 22 12 45% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/serialization/ssh.py 761 605 20% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/utils.py 76 29 62% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/x509/__init__.py 70 0 100% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/x509/base.py 458 224 51% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/x509/certificate_transparency.py 42 0 100% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/x509/extensions.py 1038 569 45% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/x509/general_name.py 166 94 43% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/x509/name.py 233 142 39% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/cryptography/x509/oid.py 3 0 100% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dateutil/__init__.py 5 2 60% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dateutil/_common.py 25 15 40% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dateutil/_version.py 2 0 100% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dateutil/parser/__init__.py 33 4 88% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dateutil/parser/_parser.py 813 688 15% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dateutil/parser/isoparser.py 185 150 19% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dateutil/relativedelta.py 241 206 15% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dateutil/tz/__init__.py 4 0 100% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dateutil/tz/_common.py 161 124 23% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dateutil/tz/_factories.py 49 21 57% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dateutil/tz/tz.py 800 629 21% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dateutil/tz/win.py 153 149 3% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/__init__.py 3 0 100% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/_asyncbackend.py 14 6 57% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/_ddr.py 105 86 18% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/_features.py 44 7 84% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/_immutable_ctx.py 40 5 88% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/asyncbackend.py 44 32 27% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/asyncquery.py 277 242 13% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/edns.py 270 161 40% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/entropy.py 80 49 39% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/enum.py 72 46 36% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/exception.py 60 33 45% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/flags.py 41 14 66% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/grange.py 34 30 12% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/immutable.py 41 30 27% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/inet.py 80 65 19% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/ipv4.py 27 20 26% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/ipv6.py 115 100 13% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/message.py 809 662 18% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/name.py 620 427 31% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/nameserver.py 101 54 47% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/node.py 118 71 40% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/opcode.py 31 7 77% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/query.py 536 462 14% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/quic/__init__.py 26 23 12% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/rcode.py 69 13 81% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/rdata.py 377 269 29% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/rdataclass.py 44 9 80% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/rdataset.py 193 133 31% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/rdatatype.py 214 25 88% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/OPT.py 34 19 44% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/SOA.py 41 26 37% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/TSIG.py 58 42 28% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/ZONEMD.py 43 27 37% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/__init__.py 2 0 100% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/rdtypes/__init__.py 2 0 100% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/rdtypes/svcbbase.py 397 261 34% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/rdtypes/util.py 191 154 19% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/renderer.py 152 118 22% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/resolver.py 899 719 20% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/reversename.py 33 24 27% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/rrset.py 78 56 28% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/serial.py 93 79 15% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/set.py 149 108 28% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/tokenizer.py 335 279 17% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/transaction.py 271 203 25% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/tsig.py 177 122 31% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/ttl.py 45 38 16% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/version.py 7 0 100% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/wire.py 64 42 34% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/xfr.py 148 126 15% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/zone.py 508 383 25% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/zonefile.py 429 380 11% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/dns/zonetypes.py 15 2 87% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/etcd/__init__.py 125 27 78% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/etcd/client.py 380 195 49% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/etcd/lock.py 125 103 18% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/idna/__init__.py 4 0 100% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/idna/core.py 294 259 12% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/idna/idnadata.py 4 0 100% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/idna/intranges.py 30 24 20% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/idna/package_data.py 1 0 100% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/__init__.py 13 2 85% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/__main__.py 199 67 66% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/api.py 768 429 44% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/async_executor.py 96 19 80% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/collections.py 43 5 88% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/config.py 416 109 74% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/config_generator.py 210 153 27% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/daemon.py 76 6 92% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/dcs/__init__.py 667 156 77% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/dcs/etcd.py 602 180 70% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/exceptions.py 16 0 100% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/file_perm.py 43 9 79% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/ha.py 1239 608 51% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/log.py 155 33 79% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/postgresql/__init__.py 826 245 70% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/postgresql/bootstrap.py 253 92 64% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/postgresql/callback_executor.py 55 8 85% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/postgresql/cancellable.py 104 41 61% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/postgresql/citus.py 258 195 24% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/postgresql/config.py 806 249 69% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/postgresql/connection.py 75 7 91% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/postgresql/misc.py 41 13 68% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/postgresql/postmaster.py 170 92 46% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/postgresql/rewind.py 415 202 51% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/postgresql/slots.py 332 174 48% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/postgresql/sync.py 129 19 85% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/postgresql/validator.py 165 25 85% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/psycopg.py 41 15 63% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/request.py 62 7 89% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/tags.py 35 5 86% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/utils.py 318 121 62% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/validator.py 284 197 31% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/version.py 1 0 100% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/watchdog/__init__.py 2 0 100% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/watchdog/base.py 203 49 76% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/patroni/watchdog/linux.py 135 50 63% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/psutil/__init__.py 951 636 33% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/psutil/_common.py 424 212 50% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/psutil/_compat.py 302 264 13% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/psutil/_pslinux.py 1251 936 25% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/psutil/_psposix.py 96 41 57% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/psycopg2/__init__.py 19 3 84% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/psycopg2/_json.py 64 27 58% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/psycopg2/_range.py 269 172 36% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/psycopg2/errors.py 3 2 33% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/psycopg2/extensions.py 91 25 73% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/six.py 504 250 50% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/urllib3/__init__.py 50 14 72% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/urllib3/_base_connection.py 70 52 26% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/urllib3/_collections.py 234 100 57% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/urllib3/_request_methods.py 53 11 79% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/urllib3/_version.py 2 0 100% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/urllib3/connection.py 324 100 69% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/urllib3/connectionpool.py 347 130 63% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/urllib3/contrib/__init__.py 0 0 100% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/urllib3/contrib/pyopenssl.py 257 101 61% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/urllib3/exceptions.py 115 37 68% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/urllib3/fields.py 92 73 21% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/urllib3/filepost.py 37 24 35% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/urllib3/poolmanager.py 233 85 64% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/urllib3/response.py 562 318 43% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/urllib3/util/__init__.py 10 0 100% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/urllib3/util/connection.py 66 42 36% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/urllib3/util/proxy.py 13 6 54% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/urllib3/util/request.py 104 49 53% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/urllib3/util/response.py 32 17 47% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/urllib3/util/retry.py 173 55 68% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/urllib3/util/ssl_.py 177 78 56% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/urllib3/util/ssl_match_hostname.py 66 54 18% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/urllib3/util/ssltransport.py 160 112 30% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/urllib3/util/timeout.py 71 14 80% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/urllib3/util/url.py 205 68 67% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/urllib3/util/util.py 26 10 62% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/urllib3/util/wait.py 49 18 63% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/yaml/__init__.py 165 109 34% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/yaml/composer.py 92 17 82% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/yaml/constructor.py 479 276 42% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/yaml/cyaml.py 46 24 48% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/yaml/dumper.py 23 12 48% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/yaml/emitter.py 838 769 8% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/yaml/error.py 58 42 28% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/yaml/events.py 61 6 90% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/yaml/loader.py 47 24 49% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/yaml/nodes.py 29 7 76% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/yaml/parser.py 352 198 44% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/yaml/reader.py 122 34 72% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/yaml/representer.py 248 176 29% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/yaml/resolver.py 135 76 44% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/yaml/scanner.py 758 437 42% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/yaml/serializer.py 85 70 18% 929s Mar 22 12:32:55 /usr/lib/python3/dist-packages/yaml/tokens.py 76 17 78% 929s Mar 22 12:32:55 patroni/__init__.py 13 2 85% 929s Mar 22 12:32:55 patroni/__main__.py 199 199 0% 929s Mar 22 12:32:55 patroni/api.py 768 768 0% 929s Mar 22 12:32:55 patroni/async_executor.py 96 69 28% 929s Mar 22 12:32:55 patroni/collections.py 43 11 74% 929s Mar 22 12:32:55 patroni/config.py 416 211 49% 929s Mar 22 12:32:55 patroni/config_generator.py 210 210 0% 929s Mar 22 12:32:55 patroni/ctl.py 940 658 30% 929s Mar 22 12:32:55 patroni/daemon.py 76 76 0% 929s Mar 22 12:32:55 patroni/dcs/__init__.py 667 304 54% 929s Mar 22 12:32:55 patroni/dcs/consul.py 482 482 0% 929s Mar 22 12:32:55 patroni/dcs/etcd3.py 683 683 0% 929s Mar 22 12:32:55 patroni/dcs/etcd.py 602 232 61% 929s Mar 22 12:32:55 patroni/dcs/exhibitor.py 60 60 0% 929s Mar 22 12:32:55 patroni/dcs/kubernetes.py 935 935 0% 929s Mar 22 12:32:55 patroni/dcs/raft.py 318 318 0% 929s Mar 22 12:32:55 patroni/dcs/zookeeper.py 287 287 0% 929s Mar 22 12:32:55 patroni/exceptions.py 16 1 94% 929s Mar 22 12:32:55 patroni/file_perm.py 43 15 65% 929s Mar 22 12:32:55 patroni/ha.py 1239 1239 0% 929s Mar 22 12:32:55 patroni/log.py 155 155 0% 929s Mar 22 12:32:55 patroni/postgresql/__init__.py 826 655 21% 929s Mar 22 12:32:55 patroni/postgresql/bootstrap.py 253 224 11% 929s Mar 22 12:32:55 patroni/postgresql/callback_executor.py 55 34 38% 929s Mar 22 12:32:55 patroni/postgresql/cancellable.py 104 84 19% 929s Mar 22 12:32:55 patroni/postgresql/citus.py 258 217 16% 929s Mar 22 12:32:55 patroni/postgresql/config.py 806 693 14% 929s Mar 22 12:32:55 patroni/postgresql/connection.py 75 50 33% 929s Mar 22 12:32:55 patroni/postgresql/misc.py 41 29 29% 929s Mar 22 12:32:55 patroni/postgresql/postmaster.py 170 139 18% 929s Mar 22 12:32:55 patroni/postgresql/rewind.py 415 415 0% 929s Mar 22 12:32:55 patroni/postgresql/slots.py 332 285 14% 929s Mar 22 12:32:55 patroni/postgresql/sync.py 129 96 26% 929s Mar 22 12:32:55 patroni/postgresql/validator.py 165 53 68% 929s Mar 22 12:32:55 patroni/psycopg.py 41 27 34% 929s Mar 22 12:32:55 patroni/raft_controller.py 22 22 0% 929s Mar 22 12:32:55 patroni/request.py 62 6 90% 929s Mar 22 12:32:55 patroni/scripts/__init__.py 0 0 100% 929s Mar 22 12:32:55 patroni/scripts/aws.py 59 59 0% 929s Mar 22 12:32:55 patroni/scripts/wale_restore.py 207 207 0% 929s Mar 22 12:32:55 patroni/tags.py 35 14 60% 929s Mar 22 12:32:55 patroni/utils.py 318 220 31% 929s Mar 22 12:32:55 patroni/validator.py 284 201 29% 929s Mar 22 12:32:55 patroni/version.py 1 0 100% 929s Mar 22 12:32:55 patroni/watchdog/__init__.py 2 2 0% 929s Mar 22 12:32:55 patroni/watchdog/base.py 203 203 0% 929s Mar 22 12:32:55 patroni/watchdog/linux.py 135 135 0% 929s Mar 22 12:32:55 ------------------------------------------------------------------------------------------------------------- 929s Mar 22 12:32:55 TOTAL 52899 33869 36% 929s Mar 22 12:32:55 1 feature passed, 0 failed, 0 skipped 929s Mar 22 12:32:55 7 scenarios passed, 0 failed, 0 skipped 929s Mar 22 12:32:55 68 steps passed, 0 failed, 0 skipped, 0 undefined 929s Mar 22 12:32:55 Took 1m21.675s 929s + echo '### End 16 acceptance-etcd features/basic_replication.feature ###' 929s ### End 16 acceptance-etcd features/basic_replication.feature ### 929s + rm -f '/tmp/pgpass?' 929s ++ id -u 929s + '[' 0 -eq 0 ']' 929s + '[' -x /etc/init.d/zookeeper ']' 929s autopkgtest [12:32:56]: test acceptance-etcd-basic: -----------------------] 930s autopkgtest [12:32:57]: test acceptance-etcd-basic: - - - - - - - - - - results - - - - - - - - - - 930s acceptance-etcd-basic PASS 930s autopkgtest [12:32:57]: test acceptance-etcd: preparing testbed 931s Reading package lists... 931s Building dependency tree... 931s Reading state information... 931s Starting pkgProblemResolver with broken count: 0 931s Starting 2 pkgProblemResolver with broken count: 0 931s Done 932s The following NEW packages will be installed: 932s autopkgtest-satdep 932s 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. 932s Need to get 0 B/772 B of archives. 932s After this operation, 0 B of additional disk space will be used. 932s Get:1 /tmp/autopkgtest.yyH96f/3-autopkgtest-satdep.deb autopkgtest-satdep s390x 0 [772 B] 932s Selecting previously unselected package autopkgtest-satdep. 932s (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 ... 55088 files and directories currently installed.) 932s Preparing to unpack .../3-autopkgtest-satdep.deb ... 932s Unpacking autopkgtest-satdep (0) ... 932s Setting up autopkgtest-satdep (0) ... 934s (Reading database ... 55088 files and directories currently installed.) 934s Removing autopkgtest-satdep (0) ... 934s autopkgtest [12:33:01]: test acceptance-etcd: debian/tests/acceptance etcd 934s autopkgtest [12:33:01]: test acceptance-etcd: [----------------------- 935s dpkg-architecture: warning: cannot determine CC system type, falling back to default (native compilation) 935s ○ etcd.service - etcd - highly-available key value store 935s Loaded: loaded (/usr/lib/systemd/system/etcd.service; enabled; preset: enabled) 935s Active: inactive (dead) since Fri 2024-03-22 12:31:24 UTC; 1min 38s ago 935s Duration: 15.484s 935s Docs: https://etcd.io/docs 935s man:etcd 935s Process: 1560 ExecStart=/usr/bin/etcd $DAEMON_ARGS (code=killed, signal=TERM) 935s Main PID: 1560 (code=killed, signal=TERM) 935s CPU: 45ms 935s 935s Mar 22 12:31:08 autopkgtest etcd[1560]: ready to serve client requests 935s Mar 22 12:31:08 autopkgtest etcd[1560]: serving insecure client requests on 127.0.0.1:2379, this is strongly discouraged! 935s Mar 22 12:31:08 autopkgtest systemd[1]: Started etcd.service - etcd - highly-available key value store. 935s Mar 22 12:31:24 autopkgtest etcd[1560]: received terminated signal, shutting down... 935s Mar 22 12:31:24 autopkgtest etcd[1560]: stopping insecure grpc server due to error: accept tcp 127.0.0.1:2379: use of closed network connection 935s Mar 22 12:31:24 autopkgtest etcd[1560]: stopped insecure grpc server due to error: accept tcp 127.0.0.1:2379: use of closed network connection 935s Mar 22 12:31:24 autopkgtest etcd[1560]: skipped leadership transfer for single voting member cluster 935s Mar 22 12:31:24 autopkgtest systemd[1]: Stopping etcd.service - etcd - highly-available key value store... 935s Mar 22 12:31:24 autopkgtest systemd[1]: etcd.service: Deactivated successfully. 935s Mar 22 12:31:24 autopkgtest systemd[1]: Stopped etcd.service - etcd - highly-available key value store. 935s ++ ls -1r /usr/lib/postgresql/ 935s + for PG_VERSION in $(ls -1r /usr/lib/postgresql/) 935s + echo '### PostgreSQL 16 acceptance-etcd ###' 935s + '[' 16 == 10 ']' 935s + SKIP= 935s ### PostgreSQL 16 acceptance-etcd ### 935s + su postgres -p -c 'set -o pipefail; ETCD_UNSUPPORTED_ARCH=s390x DCS=etcd PATH=/usr/lib/postgresql/16/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin behave | ts' 937s Mar 22 12:33:04 Feature: basic replication # features/basic_replication.feature:1 937s Mar 22 12:33:04 We should check that the basic bootstrapping, replication and failover works. 937s Mar 22 12:33:04 Scenario: check replication of a single table # features/basic_replication.feature:4 937s Mar 22 12:33:04 Given I start postgres0 # features/steps/basic_replication.py:8 940s Mar 22 12:33:07 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 941s Mar 22 12:33:08 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 941s Mar 22 12:33:08 When I issue a PATCH request to http://127.0.0.1:8008/config with {"ttl": 20, "synchronous_mode": true} # features/steps/patroni_api.py:71 941s Mar 22 12:33:08 Then I receive a response code 200 # features/steps/patroni_api.py:98 941s Mar 22 12:33:08 When I start postgres1 # features/steps/basic_replication.py:8 944s Mar 22 12:33:11 And I configure and start postgres2 with a tag replicatefrom postgres0 # features/steps/cascading_replication.py:7 947s Mar 22 12:33:14 And "sync" key in DCS has leader=postgres0 after 20 seconds # features/steps/cascading_replication.py:23 947s Mar 22 12:33:14 And I add the table foo to postgres0 # features/steps/basic_replication.py:49 947s Mar 22 12:33:14 Then table foo is present on postgres1 after 20 seconds # features/steps/basic_replication.py:89 948s Mar 22 12:33:15 Then table foo is present on postgres2 after 20 seconds # features/steps/basic_replication.py:89 952s Mar 22 12:33:19 952s Mar 22 12:33:19 Scenario: check restart of sync replica # features/basic_replication.feature:17 952s Mar 22 12:33:19 Given I shut down postgres2 # features/steps/basic_replication.py:29 953s Mar 22 12:33:20 Then "sync" key in DCS has sync_standby=postgres1 after 5 seconds # features/steps/cascading_replication.py:23 953s Mar 22 12:33:20 When I start postgres2 # features/steps/basic_replication.py:8 955s Mar 22 12:33:22 And I shut down postgres1 # features/steps/basic_replication.py:29 958s Mar 22 12:33:25 Then "sync" key in DCS has sync_standby=postgres2 after 10 seconds # features/steps/cascading_replication.py:23 959s Mar 22 12:33:26 When I start postgres1 # features/steps/basic_replication.py:8 961s Mar 22 12:33:28 Then "members/postgres1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 962s Mar 22 12:33:29 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 962s Mar 22 12:33:29 And Status code on GET http://127.0.0.1:8009/async is 200 after 3 seconds # features/steps/patroni_api.py:142 962s Mar 22 12:33:29 962s Mar 22 12:33:29 Scenario: check stuck sync replica # features/basic_replication.feature:28 962s Mar 22 12:33:29 Given I issue a PATCH request to http://127.0.0.1:8008/config with {"pause": true, "maximum_lag_on_syncnode": 15000000, "postgresql": {"parameters": {"synchronous_commit": "remote_apply"}}} # features/steps/patroni_api.py:71 962s Mar 22 12:33:29 Then I receive a response code 200 # features/steps/patroni_api.py:98 962s Mar 22 12:33:29 And I create table on postgres0 # features/steps/basic_replication.py:69 962s Mar 22 12:33:29 And table mytest is present on postgres1 after 2 seconds # features/steps/basic_replication.py:89 963s Mar 22 12:33:30 And table mytest is present on postgres2 after 2 seconds # features/steps/basic_replication.py:89 963s Mar 22 12:33:30 When I pause wal replay on postgres2 # features/steps/basic_replication.py:58 963s Mar 22 12:33:30 And I load data on postgres0 # features/steps/basic_replication.py:80 964s Mar 22 12:33:31 Then "sync" key in DCS has sync_standby=postgres1 after 15 seconds # features/steps/cascading_replication.py:23 967s Mar 22 12:33:34 And I resume wal replay on postgres2 # features/steps/basic_replication.py:58 967s Mar 22 12:33:34 And Status code on GET http://127.0.0.1:8009/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 967s Mar 22 12:33:34 And Status code on GET http://127.0.0.1:8010/async is 200 after 3 seconds # features/steps/patroni_api.py:142 967s Mar 22 12:33:34 When I issue a PATCH request to http://127.0.0.1:8008/config with {"pause": null, "maximum_lag_on_syncnode": -1, "postgresql": {"parameters": {"synchronous_commit": "on"}}} # features/steps/patroni_api.py:71 967s Mar 22 12:33:34 Then I receive a response code 200 # features/steps/patroni_api.py:98 967s Mar 22 12:33:34 And I drop table on postgres0 # features/steps/basic_replication.py:69 968s Mar 22 12:33:34 968s Mar 22 12:33:34 Scenario: check multi sync replication # features/basic_replication.feature:44 968s Mar 22 12:33:34 Given I issue a PATCH request to http://127.0.0.1:8008/config with {"synchronous_node_count": 2} # features/steps/patroni_api.py:71 968s Mar 22 12:33:35 Then I receive a response code 200 # features/steps/patroni_api.py:98 968s Mar 22 12:33:35 Then "sync" key in DCS has sync_standby=postgres1,postgres2 after 10 seconds # features/steps/cascading_replication.py:23 972s Mar 22 12:33:39 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 972s Mar 22 12:33:39 And Status code on GET http://127.0.0.1:8009/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 972s Mar 22 12:33:39 When I issue a PATCH request to http://127.0.0.1:8008/config with {"synchronous_node_count": 1} # features/steps/patroni_api.py:71 972s Mar 22 12:33:39 Then I receive a response code 200 # features/steps/patroni_api.py:98 972s Mar 22 12:33:39 And I shut down postgres1 # features/steps/basic_replication.py:29 975s Mar 22 12:33:42 Then "sync" key in DCS has sync_standby=postgres2 after 10 seconds # features/steps/cascading_replication.py:23 976s Mar 22 12:33:43 When I start postgres1 # features/steps/basic_replication.py:8 979s Mar 22 12:33:46 Then "members/postgres1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 979s Mar 22 12:33:46 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 979s Mar 22 12:33:46 And Status code on GET http://127.0.0.1:8009/async is 200 after 3 seconds # features/steps/patroni_api.py:142 979s Mar 22 12:33:46 979s Mar 22 12:33:46 Scenario: check the basic failover in synchronous mode # features/basic_replication.feature:59 979s Mar 22 12:33:46 Given I run patronictl.py pause batman # features/steps/patroni_api.py:86 981s Mar 22 12:33:48 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 981s Mar 22 12:33:48 When I sleep for 2 seconds # features/steps/patroni_api.py:39 983s Mar 22 12:33:50 And I shut down postgres0 # features/steps/basic_replication.py:29 984s Mar 22 12:33:51 And I run patronictl.py resume batman # features/steps/patroni_api.py:86 985s Mar 22 12:33:52 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 985s Mar 22 12:33:52 And postgres2 role is the primary after 24 seconds # features/steps/basic_replication.py:101 1003s Mar 22 12:34:10 And Response on GET http://127.0.0.1:8010/history contains recovery after 10 seconds # features/steps/patroni_api.py:156 1007s Mar 22 12:34:14 And there is a postgres2_cb.log with "on_role_change master batman" in postgres2 data directory # features/steps/cascading_replication.py:12 1007s Mar 22 12:34:14 When I issue a PATCH request to http://127.0.0.1:8010/config with {"synchronous_mode": null, "master_start_timeout": 0} # features/steps/patroni_api.py:71 1007s Mar 22 12:34:14 Then I receive a response code 200 # features/steps/patroni_api.py:98 1007s Mar 22 12:34:14 When I add the table bar to postgres2 # features/steps/basic_replication.py:49 1007s Mar 22 12:34:14 Then table bar is present on postgres1 after 20 seconds # features/steps/basic_replication.py:89 1009s Mar 22 12:34:16 And Response on GET http://127.0.0.1:8010/config contains master_start_timeout after 10 seconds # features/steps/patroni_api.py:156 1009s Mar 22 12:34:16 1009s Mar 22 12:34:16 Scenario: check rejoin of the former primary with pg_rewind # features/basic_replication.feature:75 1009s Mar 22 12:34:16 Given I add the table splitbrain to postgres0 # features/steps/basic_replication.py:49 1009s Mar 22 12:34:16 And I start postgres0 # features/steps/basic_replication.py:8 1009s Mar 22 12:34:16 Then postgres0 role is the secondary after 20 seconds # features/steps/basic_replication.py:101 1015s Mar 22 12:34:22 When I add the table buz to postgres2 # features/steps/basic_replication.py:49 1015s Mar 22 12:34:22 Then table buz is present on postgres0 after 20 seconds # features/steps/basic_replication.py:89 1016s Mar 22 12:34:23 1016s Mar 22 12:34:23 @reject-duplicate-name 1016s Mar 22 12:34:23 Scenario: check graceful rejection when two nodes have the same name # features/basic_replication.feature:83 1016s Mar 22 12:34:23 Given I start duplicate postgres0 on port 8011 # features/steps/basic_replication.py:13 1018s Mar 22 12:34:25 Then there is one of ["Can't start; there is already a node named 'postgres0' running"] CRITICAL in the dup-postgres0 patroni log after 5 seconds # features/steps/basic_replication.py:117 1022s Mar 22 12:34:29 1022s Mar 22 12:34:29 Feature: cascading replication # features/cascading_replication.feature:1 1022s Mar 22 12:34:29 We should check that patroni can do base backup and streaming from the replica 1022s Mar 22 12:34:29 Scenario: check a base backup and streaming replication from a replica # features/cascading_replication.feature:4 1022s Mar 22 12:34:29 Given I start postgres0 # features/steps/basic_replication.py:8 1025s Mar 22 12:34:32 And postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 1026s Mar 22 12:34:33 And I configure and start postgres1 with a tag clonefrom true # features/steps/cascading_replication.py:7 1029s Mar 22 12:34:36 And replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:108 1034s Mar 22 12:34:41 And I create label with "postgres0" in postgres0 data directory # features/steps/cascading_replication.py:18 1034s Mar 22 12:34:41 And I create label with "postgres1" in postgres1 data directory # features/steps/cascading_replication.py:18 1034s Mar 22 12:34:41 And "members/postgres1" key in DCS has state=running after 12 seconds # features/steps/cascading_replication.py:23 1034s Mar 22 12:34:41 And I configure and start postgres2 with a tag replicatefrom postgres1 # features/steps/cascading_replication.py:7 1037s Mar 22 12:34:44 Then replication works from postgres0 to postgres2 after 30 seconds # features/steps/basic_replication.py:108 1042s Mar 22 12:34:49 And there is a label with "postgres1" in postgres2 data directory # features/steps/cascading_replication.py:12 1048s Mar 22 12:34:55 1048s SKIP FEATURE citus: Citus extenstion isn't available 1048s Mar 22 12:34:55 Feature: citus # features/citus.feature:1 1048s Mar 22 12:34:55SKIP Scenario check that worker cluster is registered in the coordinator: Citus extenstion isn't available 1048s SKIP Scenario coordinator failover updates pg_dist_node: Citus extenstion isn't available 1048s SKIP Scenario worker switchover doesn't break client queries on the coordinator: Citus extenstion isn't available 1048s SKIP Scenario worker primary restart doesn't break client queries on the coordinator: Citus extenstion isn't available 1048s SKIP Scenario check that in-flight transaction is rolled back after timeout when other workers need to change pg_dist_node: Citus extenstion isn't available 1048s We should check that coordinator discovers and registers workers and clients don't have errors when worker cluster switches over 1048s Mar 22 12:34:55 Scenario: check that worker cluster is registered in the coordinator # features/citus.feature:4 1048s Mar 22 12:34:55 Given I start postgres0 in citus group 0 # None 1048s Mar 22 12:34:55 And I start postgres2 in citus group 1 # None 1048s Mar 22 12:34:55 Then postgres0 is a leader in a group 0 after 10 seconds # None 1048s Mar 22 12:34:55 And postgres2 is a leader in a group 1 after 10 seconds # None 1048s Mar 22 12:34:55 When I start postgres1 in citus group 0 # None 1048s Mar 22 12:34:55 And I start postgres3 in citus group 1 # None 1048s Mar 22 12:34:55 Then replication works from postgres0 to postgres1 after 15 seconds # None 1048s Mar 22 12:34:55 Then replication works from postgres2 to postgres3 after 15 seconds # None 1048s Mar 22 12:34:55 And postgres0 is registered in the postgres0 as the primary in group 0 after 5 seconds # None 1048s Mar 22 12:34:55 And postgres2 is registered in the postgres0 as the primary in group 1 after 5 seconds # None 1048s Mar 22 12:34:55 1048s Mar 22 12:34:55 Scenario: coordinator failover updates pg_dist_node # features/citus.feature:16 1048s Mar 22 12:34:55 Given I run patronictl.py failover batman --group 0 --candidate postgres1 --force # None 1048s Mar 22 12:34:55 Then postgres1 role is the primary after 10 seconds # None 1048s Mar 22 12:34:55 And "members/postgres0" key in a group 0 in DCS has state=running after 15 seconds # None 1048s Mar 22 12:34:55 And replication works from postgres1 to postgres0 after 15 seconds # None 1048s Mar 22 12:34:55 And postgres1 is registered in the postgres2 as the primary in group 0 after 5 seconds # None 1048s Mar 22 12:34:55 And "sync" key in a group 0 in DCS has sync_standby=postgres0 after 15 seconds # None 1048s Mar 22 12:34:55 When I run patronictl.py switchover batman --group 0 --candidate postgres0 --force # None 1048s Mar 22 12:34:55 Then postgres0 role is the primary after 10 seconds # None 1048s Mar 22 12:34:55 And replication works from postgres0 to postgres1 after 15 seconds # None 1048s Mar 22 12:34:55 And postgres0 is registered in the postgres2 as the primary in group 0 after 5 seconds # None 1048s Mar 22 12:34:55 And "sync" key in a group 0 in DCS has sync_standby=postgres1 after 15 seconds # None 1048s Mar 22 12:34:55 1048s Mar 22 12:34:55 Scenario: worker switchover doesn't break client queries on the coordinator # features/citus.feature:29 1048s Mar 22 12:34:55 Given I create a distributed table on postgres0 # None 1048s Mar 22 12:34:55 And I start a thread inserting data on postgres0 # None 1048s Mar 22 12:34:55 When I run patronictl.py switchover batman --group 1 --force # None 1048s Mar 22 12:34:55 Then I receive a response returncode 0 # None 1048s Mar 22 12:34:55 And postgres3 role is the primary after 10 seconds # None 1048s Mar 22 12:34:55 And "members/postgres2" key in a group 1 in DCS has state=running after 15 seconds # None 1048s Mar 22 12:34:55 And replication works from postgres3 to postgres2 after 15 seconds # None 1048s Mar 22 12:34:55 And postgres3 is registered in the postgres0 as the primary in group 1 after 5 seconds # None 1048s Mar 22 12:34:55 And "sync" key in a group 1 in DCS has sync_standby=postgres2 after 15 seconds # None 1048s Mar 22 12:34:55 And a thread is still alive # None 1048s Mar 22 12:34:55 When I run patronictl.py switchover batman --group 1 --force # None 1048s Mar 22 12:34:55 Then I receive a response returncode 0 # None 1048s Mar 22 12:34:55 And postgres2 role is the primary after 10 seconds # None 1048s Mar 22 12:34:55 And replication works from postgres2 to postgres3 after 15 seconds # None 1048s Mar 22 12:34:55 And postgres2 is registered in the postgres0 as the primary in group 1 after 5 seconds # None 1048s Mar 22 12:34:55 And "sync" key in a group 1 in DCS has sync_standby=postgres3 after 15 seconds # None 1048s Mar 22 12:34:55 And a thread is still alive # None 1048s Mar 22 12:34:55 When I stop a thread # None 1048s Mar 22 12:34:55 Then a distributed table on postgres0 has expected rows # None 1048s Mar 22 12:34:55 1048s Mar 22 12:34:55 Scenario: worker primary restart doesn't break client queries on the coordinator # features/citus.feature:50 1048s Mar 22 12:34:55 Given I cleanup a distributed table on postgres0 # None 1048s Mar 22 12:34:55 And I start a thread inserting data on postgres0 # None 1048s Mar 22 12:34:55 When I run patronictl.py restart batman postgres2 --group 1 --force # None 1048s Mar 22 12:34:55 Then I receive a response returncode 0 # None 1048s Mar 22 12:34:55 And postgres2 role is the primary after 10 seconds # None 1048s Mar 22 12:34:55 And replication works from postgres2 to postgres3 after 15 seconds # None 1048s Mar 22 12:34:55 And postgres2 is registered in the postgres0 as the primary in group 1 after 5 seconds # None 1048s Mar 22 12:34:55 And a thread is still alive # None 1048s Mar 22 12:34:55 When I stop a thread # None 1048s Mar 22 12:34:55 Then a distributed table on postgres0 has expected rows # None 1048s Mar 22 12:34:55 1048s Mar 22 12:34:55 Scenario: check that in-flight transaction is rolled back after timeout when other workers need to change pg_dist_node # features/citus.feature:62 1048s Mar 22 12:34:55 Given I start postgres4 in citus group 2 # None 1048s Mar 22 12:34:55 Then postgres4 is a leader in a group 2 after 10 seconds # None 1048s Mar 22 12:34:55 And "members/postgres4" key in a group 2 in DCS has role=master after 3 seconds # None 1048s Mar 22 12:34:55 When I run patronictl.py edit-config batman --group 2 -s ttl=20 --force # None 1048s Mar 22 12:34:55 Then I receive a response returncode 0 # None 1048s Mar 22 12:34:55 And I receive a response output "+ttl: 20" # None 1048s Mar 22 12:34:55 Then postgres4 is registered in the postgres2 as the primary in group 2 after 5 seconds # None 1048s Mar 22 12:34:55 When I shut down postgres4 # None 1048s Mar 22 12:34:55 Then there is a transaction in progress on postgres0 changing pg_dist_node after 5 seconds # None 1048s Mar 22 12:34:55 When I run patronictl.py restart batman postgres2 --group 1 --force # None 1048s Mar 22 12:34:55 Then a transaction finishes in 20 seconds # None 1048s Mar 22 12:34:55 1048s Mar 22 12:34:55 Feature: custom bootstrap # features/custom_bootstrap.feature:1 1048s Mar 22 12:34:55 We should check that patroni can bootstrap a new cluster from a backup 1048s Mar 22 12:34:55 Scenario: clone existing cluster using pg_basebackup # features/custom_bootstrap.feature:4 1048s Mar 22 12:34:55 Given I start postgres0 # features/steps/basic_replication.py:8 1051s Mar 22 12:34:58 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 1052s Mar 22 12:34:59 When I add the table foo to postgres0 # features/steps/basic_replication.py:49 1052s Mar 22 12:34:59 And I start postgres1 in a cluster batman1 as a clone of postgres0 # features/steps/custom_bootstrap.py:6 1056s Mar 22 12:35:03 Then postgres1 is a leader of batman1 after 10 seconds # features/steps/custom_bootstrap.py:16 1057s Mar 22 12:35:04 Then table foo is present on postgres1 after 10 seconds # features/steps/basic_replication.py:89 1057s Mar 22 12:35:04 1057s Mar 22 12:35:04 Scenario: make a backup and do a restore into a new cluster # features/custom_bootstrap.feature:12 1057s Mar 22 12:35:04 Given I add the table bar to postgres1 # features/steps/basic_replication.py:49 1057s Mar 22 12:35:04 And I do a backup of postgres1 # features/steps/custom_bootstrap.py:25 1058s Mar 22 12:35:05 When I start postgres2 in a cluster batman2 from backup # features/steps/custom_bootstrap.py:11 1062s Mar 22 12:35:09 Then postgres2 is a leader of batman2 after 30 seconds # features/steps/custom_bootstrap.py:16 1063s Mar 22 12:35:10 And table bar is present on postgres2 after 10 seconds # features/steps/basic_replication.py:89 1069s Mar 22 12:35:16 1069s Mar 22 12:35:16 Feature: dcs failsafe mode # features/dcs_failsafe_mode.feature:1 1069s Mar 22 12:35:16 We should check the basic dcs failsafe mode functioning 1069s Mar 22 12:35:16 Scenario: check failsafe mode can be successfully enabled # features/dcs_failsafe_mode.feature:4 1069s Mar 22 12:35:16 Given I start postgres0 # features/steps/basic_replication.py:8 1072s Mar 22 12:35:19 And postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 1073s Mar 22 12:35:20 Then "config" key in DCS has ttl=30 after 10 seconds # features/steps/cascading_replication.py:23 1073s Mar 22 12:35:20 When I issue a PATCH request to http://127.0.0.1:8008/config with {"loop_wait": 2, "ttl": 20, "retry_timeout": 3, "failsafe_mode": true} # features/steps/patroni_api.py:71 1073s Mar 22 12:35:20 Then I receive a response code 200 # features/steps/patroni_api.py:98 1073s Mar 22 12:35:20 And Response on GET http://127.0.0.1:8008/failsafe contains postgres0 after 10 seconds # features/steps/patroni_api.py:156 1073s Mar 22 12:35:20 When I issue a GET request to http://127.0.0.1:8008/failsafe # features/steps/patroni_api.py:61 1073s Mar 22 12:35:20 Then I receive a response code 200 # features/steps/patroni_api.py:98 1073s Mar 22 12:35:20 And I receive a response postgres0 http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:98 1073s Mar 22 12:35:20 When I issue a PATCH request to http://127.0.0.1:8008/config with {"postgresql": {"parameters": {"wal_level": "logical"}},"slots":{"dcs_slot_1": null,"postgres0":null}} # features/steps/patroni_api.py:71 1074s Mar 22 12:35:20 Then I receive a response code 200 # features/steps/patroni_api.py:98 1074s Mar 22 12:35:20 When I issue a PATCH request to http://127.0.0.1:8008/config with {"slots": {"dcs_slot_0": {"type": "logical", "database": "postgres", "plugin": "test_decoding"}}} # features/steps/patroni_api.py:71 1074s Mar 22 12:35:21 Then I receive a response code 200 # features/steps/patroni_api.py:98 1074s Mar 22 12:35:21 1074s Mar 22 12:35:21 @dcs-failsafe 1074s Mar 22 12:35:21 Scenario: check one-node cluster is functioning while DCS is down # features/dcs_failsafe_mode.feature:20 1074s Mar 22 12:35:21 Given DCS is down # features/steps/dcs_failsafe_mode.py:4 1074s Mar 22 12:35:21 Then Response on GET http://127.0.0.1:8008/primary contains failsafe_mode_is_active after 12 seconds # features/steps/patroni_api.py:156 1080s Mar 22 12:35:27 And postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:101 1080s Mar 22 12:35:27 1080s Mar 22 12:35:27 @dcs-failsafe 1080s Mar 22 12:35:27 Scenario: check new replica isn't promoted when leader is down and DCS is up # features/dcs_failsafe_mode.feature:26 1080s Mar 22 12:35:27 Given DCS is up # features/steps/dcs_failsafe_mode.py:9 1080s Mar 22 12:35:27 When I do a backup of postgres0 # features/steps/custom_bootstrap.py:25 1081s Mar 22 12:35:27 And I shut down postgres0 # features/steps/basic_replication.py:29 1083s Mar 22 12:35:29 When I start postgres1 in a cluster batman from backup with no_leader # features/steps/dcs_failsafe_mode.py:14 1086s Mar 22 12:35:33 Then postgres1 role is the replica after 12 seconds # features/steps/basic_replication.py:101 1086s Mar 22 12:35:33 1086s Mar 22 12:35:33 Scenario: check leader and replica are both in /failsafe key after leader is back # features/dcs_failsafe_mode.feature:33 1086s Mar 22 12:35:33 Given I start postgres0 # features/steps/basic_replication.py:8 1089s Mar 22 12:35:36 And I start postgres1 # features/steps/basic_replication.py:8 1089s Mar 22 12:35:36 Then "members/postgres0" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 1090s Mar 22 12:35:37 And "members/postgres1" key in DCS has state=running after 2 seconds # features/steps/cascading_replication.py:23 1090s Mar 22 12:35:37 And Response on GET http://127.0.0.1:8009/failsafe contains postgres1 after 10 seconds # features/steps/patroni_api.py:156 1091s Mar 22 12:35:38 When I issue a GET request to http://127.0.0.1:8009/failsafe # features/steps/patroni_api.py:61 1091s Mar 22 12:35:38 Then I receive a response code 200 # features/steps/patroni_api.py:98 1091s Mar 22 12:35:38 And I receive a response postgres0 http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:98 1091s Mar 22 12:35:38 And I receive a response postgres1 http://127.0.0.1:8009/patroni # features/steps/patroni_api.py:98 1091s Mar 22 12:35:38 1091s Mar 22 12:35:38 @dcs-failsafe @slot-advance 1091s Mar 22 12:35:38 Scenario: check leader and replica are functioning while DCS is down # features/dcs_failsafe_mode.feature:46 1091s Mar 22 12:35:38 Given I get all changes from physical slot dcs_slot_1 on postgres0 # features/steps/slots.py:75 1091s Mar 22 12:35:38 Then physical slot dcs_slot_1 is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 1093s Mar 22 12:35:40 And logical slot dcs_slot_0 is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 1096s Mar 22 12:35:43 And DCS is down # features/steps/dcs_failsafe_mode.py:4 1096s Mar 22 12:35:43 Then Response on GET http://127.0.0.1:8008/primary contains failsafe_mode_is_active after 12 seconds # features/steps/patroni_api.py:156 1103s Mar 22 12:35:50 Then postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:101 1103s Mar 22 12:35:50 And postgres1 role is the replica after 2 seconds # features/steps/basic_replication.py:101 1103s Mar 22 12:35:50 And replication works from postgres0 to postgres1 after 10 seconds # features/steps/basic_replication.py:108 1104s Mar 22 12:35:51 When I get all changes from logical slot dcs_slot_0 on postgres0 # features/steps/slots.py:70 1104s Mar 22 12:35:51 And I get all changes from physical slot dcs_slot_1 on postgres0 # features/steps/slots.py:75 1104s Mar 22 12:35:51 Then logical slot dcs_slot_0 is in sync between postgres0 and postgres1 after 20 seconds # features/steps/slots.py:51 1106s Mar 22 12:35:53 And physical slot dcs_slot_1 is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 1106s Mar 22 12:35:53 1106s Mar 22 12:35:53 @dcs-failsafe 1106s Mar 22 12:35:53 Scenario: check primary is demoted when one replica is shut down and DCS is down # features/dcs_failsafe_mode.feature:61 1106s Mar 22 12:35:53 Given DCS is down # features/steps/dcs_failsafe_mode.py:4 1106s Mar 22 12:35:53 And I kill postgres1 # features/steps/basic_replication.py:34 1107s Mar 22 12:35:54 And I kill postmaster on postgres1 # features/steps/basic_replication.py:44 1108s Mar 22 12:35:55 waiting for server to shut down.... done 1108s Mar 22 12:35:55 server stopped 1108s Mar 22 12:35:55 Then postgres0 role is the replica after 12 seconds # features/steps/basic_replication.py:101 1109s Mar 22 12:35:56 1109s Mar 22 12:35:56 @dcs-failsafe 1109s Mar 22 12:35:56 Scenario: check known replica is promoted when leader is down and DCS is up # features/dcs_failsafe_mode.feature:68 1109s Mar 22 12:35:56 Given I kill postgres0 # features/steps/basic_replication.py:34 1110s Mar 22 12:35:57 And I shut down postmaster on postgres0 # features/steps/basic_replication.py:39 1110s Mar 22 12:35:57 waiting for server to shut down.... done 1110s Mar 22 12:35:57 server stopped 1110s Mar 22 12:35:57 And DCS is up # features/steps/dcs_failsafe_mode.py:9 1110s Mar 22 12:35:57 When I start postgres1 # features/steps/basic_replication.py:8 1113s Mar 22 12:36:00 Then "members/postgres1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 1113s Mar 22 12:36:00 And postgres1 role is the primary after 25 seconds # features/steps/basic_replication.py:101 1117s Mar 22 12:36:04 1117s Mar 22 12:36:04 @dcs-failsafe 1117s Mar 22 12:36:04 Scenario: scale to three-node cluster # features/dcs_failsafe_mode.feature:77 1117s Mar 22 12:36:04 Given I start postgres0 # features/steps/basic_replication.py:8 1119s Mar 22 12:36:06 And I start postgres2 # features/steps/basic_replication.py:8 1122s Mar 22 12:36:09 Then "members/postgres2" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 1123s Mar 22 12:36:10 And "members/postgres0" key in DCS has state=running after 20 seconds # features/steps/cascading_replication.py:23 1123s Mar 22 12:36:10 And Response on GET http://127.0.0.1:8008/failsafe contains postgres2 after 10 seconds # features/steps/patroni_api.py:156 1123s Mar 22 12:36:10 And replication works from postgres1 to postgres0 after 10 seconds # features/steps/basic_replication.py:108 1124s Mar 22 12:36:11 And replication works from postgres1 to postgres2 after 10 seconds # features/steps/basic_replication.py:108 1125s Mar 22 12:36:12 1125s Mar 22 12:36:12 @dcs-failsafe @slot-advance 1125s Mar 22 12:36:12 Scenario: make sure permanent slots exist on replicas # features/dcs_failsafe_mode.feature:88 1125s Mar 22 12:36:12 Given I issue a PATCH request to http://127.0.0.1:8009/config with {"slots":{"dcs_slot_0":null,"dcs_slot_2":{"type":"logical","database":"postgres","plugin":"test_decoding"}}} # features/steps/patroni_api.py:71 1125s Mar 22 12:36:12 Then logical slot dcs_slot_2 is in sync between postgres1 and postgres0 after 20 seconds # features/steps/slots.py:51 1131s Mar 22 12:36:18 And logical slot dcs_slot_2 is in sync between postgres1 and postgres2 after 20 seconds # features/steps/slots.py:51 1132s Mar 22 12:36:19 When I get all changes from physical slot dcs_slot_1 on postgres1 # features/steps/slots.py:75 1132s Mar 22 12:36:19 Then physical slot dcs_slot_1 is in sync between postgres1 and postgres0 after 10 seconds # features/steps/slots.py:51 1133s Mar 22 12:36:20 And physical slot dcs_slot_1 is in sync between postgres1 and postgres2 after 10 seconds # features/steps/slots.py:51 1133s Mar 22 12:36:20 And physical slot postgres0 is in sync between postgres1 and postgres2 after 10 seconds # features/steps/slots.py:51 1133s Mar 22 12:36:20 1133s Mar 22 12:36:20 @dcs-failsafe 1133s Mar 22 12:36:20 Scenario: check three-node cluster is functioning while DCS is down # features/dcs_failsafe_mode.feature:98 1133s Mar 22 12:36:20 Given DCS is down # features/steps/dcs_failsafe_mode.py:4 1133s Mar 22 12:36:20 Then Response on GET http://127.0.0.1:8009/primary contains failsafe_mode_is_active after 12 seconds # features/steps/patroni_api.py:156 1141s Mar 22 12:36:28 Then postgres1 role is the primary after 10 seconds # features/steps/basic_replication.py:101 1141s Mar 22 12:36:28 And postgres0 role is the replica after 2 seconds # features/steps/basic_replication.py:101 1141s Mar 22 12:36:28 And postgres2 role is the replica after 2 seconds # features/steps/basic_replication.py:101 1141s Mar 22 12:36:28 1141s Mar 22 12:36:28 @dcs-failsafe @slot-advance 1141s Mar 22 12:36:28 Scenario: check that permanent slots are in sync between nodes while DCS is down # features/dcs_failsafe_mode.feature:107 1141s Mar 22 12:36:28 Given replication works from postgres1 to postgres0 after 10 seconds # features/steps/basic_replication.py:108 1141s Mar 22 12:36:28 And replication works from postgres1 to postgres2 after 10 seconds # features/steps/basic_replication.py:108 1142s Mar 22 12:36:29 When I get all changes from logical slot dcs_slot_2 on postgres1 # features/steps/slots.py:70 1142s Mar 22 12:36:29 And I get all changes from physical slot dcs_slot_1 on postgres1 # features/steps/slots.py:75 1142s Mar 22 12:36:29 Then logical slot dcs_slot_2 is in sync between postgres1 and postgres0 after 20 seconds # features/steps/slots.py:51 1143s Mar 22 12:36:30 And logical slot dcs_slot_2 is in sync between postgres1 and postgres2 after 20 seconds # features/steps/slots.py:51 1143s Mar 22 12:36:30 And physical slot dcs_slot_1 is in sync between postgres1 and postgres0 after 10 seconds # features/steps/slots.py:51 1143s Mar 22 12:36:30 And physical slot dcs_slot_1 is in sync between postgres1 and postgres2 after 10 seconds # features/steps/slots.py:51 1143s Mar 22 12:36:30 And physical slot postgres0 is in sync between postgres1 and postgres2 after 10 seconds # features/steps/slots.py:51 1147s Mar 22 12:36:34 1147s Mar 22 12:36:34 Feature: ignored slots # features/ignored_slots.feature:1 1147s Mar 22 12:36:34 1147s Mar 22 12:36:34 Scenario: check ignored slots aren't removed on failover/switchover # features/ignored_slots.feature:2 1147s Mar 22 12:36:34 Given I start postgres1 # features/steps/basic_replication.py:8 1150s Mar 22 12:36:37 Then postgres1 is a leader after 10 seconds # features/steps/patroni_api.py:29 1151s Mar 22 12:36:38 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 1151s Mar 22 12:36:38 When I issue a PATCH request to http://127.0.0.1:8009/config with {"ignore_slots": [{"name": "unmanaged_slot_0", "database": "postgres", "plugin": "test_decoding", "type": "logical"}, {"name": "unmanaged_slot_1", "database": "postgres", "plugin": "test_decoding"}, {"name": "unmanaged_slot_2", "database": "postgres"}, {"name": "unmanaged_slot_3"}], "postgresql": {"parameters": {"wal_level": "logical"}}} # features/steps/patroni_api.py:71 1151s Mar 22 12:36:38 Then I receive a response code 200 # features/steps/patroni_api.py:98 1151s Mar 22 12:36:38 And Response on GET http://127.0.0.1:8009/config contains ignore_slots after 10 seconds # features/steps/patroni_api.py:156 1151s Mar 22 12:36:38 When I shut down postgres1 # features/steps/basic_replication.py:29 1153s Mar 22 12:36:40 And I start postgres1 # features/steps/basic_replication.py:8 1155s Mar 22 12:36:42 Then postgres1 is a leader after 10 seconds # features/steps/patroni_api.py:29 1156s Mar 22 12:36:43 And "members/postgres1" key in DCS has role=master after 10 seconds # features/steps/cascading_replication.py:23 1157s Mar 22 12:36:44 And postgres1 role is the primary after 20 seconds # features/steps/basic_replication.py:101 1157s Mar 22 12:36:44 When I create a logical replication slot unmanaged_slot_0 on postgres1 with the test_decoding plugin # features/steps/slots.py:8 1157s Mar 22 12:36:44 And I create a logical replication slot unmanaged_slot_1 on postgres1 with the test_decoding plugin # features/steps/slots.py:8 1157s Mar 22 12:36:44 And I create a logical replication slot unmanaged_slot_2 on postgres1 with the test_decoding plugin # features/steps/slots.py:8 1157s Mar 22 12:36:44 And I create a logical replication slot unmanaged_slot_3 on postgres1 with the test_decoding plugin # features/steps/slots.py:8 1157s Mar 22 12:36:44 And I create a logical replication slot dummy_slot on postgres1 with the test_decoding plugin # features/steps/slots.py:8 1157s Mar 22 12:36:44 Then postgres1 has a logical replication slot named unmanaged_slot_0 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1157s Mar 22 12:36:44 And postgres1 has a logical replication slot named unmanaged_slot_1 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1157s Mar 22 12:36:44 And postgres1 has a logical replication slot named unmanaged_slot_2 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1157s Mar 22 12:36:44 And postgres1 has a logical replication slot named unmanaged_slot_3 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1157s Mar 22 12:36:44 When I start postgres0 # features/steps/basic_replication.py:8 1160s Mar 22 12:36:47 Then "members/postgres0" key in DCS has role=replica after 10 seconds # features/steps/cascading_replication.py:23 1161s Mar 22 12:36:48 And postgres0 role is the secondary after 20 seconds # features/steps/basic_replication.py:101 1161s Mar 22 12:36:48 And replication works from postgres1 to postgres0 after 20 seconds # features/steps/basic_replication.py:108 1162s Mar 22 12:36:49 When I shut down postgres1 # features/steps/basic_replication.py:29 1164s Mar 22 12:36:51 Then "members/postgres0" key in DCS has role=master after 10 seconds # features/steps/cascading_replication.py:23 1165s Mar 22 12:36:52 When I start postgres1 # features/steps/basic_replication.py:8 1167s Mar 22 12:36:54 Then postgres1 role is the secondary after 20 seconds # features/steps/basic_replication.py:101 1167s Mar 22 12:36:54 And "members/postgres1" key in DCS has role=replica after 10 seconds # features/steps/cascading_replication.py:23 1168s Mar 22 12:36:55 And I sleep for 2 seconds # features/steps/patroni_api.py:39 1170s Mar 22 12:36:57 And postgres1 has a logical replication slot named unmanaged_slot_0 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1170s Mar 22 12:36:57 And postgres1 has a logical replication slot named unmanaged_slot_1 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1170s Mar 22 12:36:57 And postgres1 has a logical replication slot named unmanaged_slot_2 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1170s Mar 22 12:36:57 And postgres1 has a logical replication slot named unmanaged_slot_3 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1170s Mar 22 12:36:57 And postgres1 does not have a replication slot named dummy_slot # features/steps/slots.py:40 1170s Mar 22 12:36:57 When I shut down postgres0 # features/steps/basic_replication.py:29 1172s Mar 22 12:36:59 Then "members/postgres1" key in DCS has role=master after 10 seconds # features/steps/cascading_replication.py:23 1173s Mar 22 12:37:00 And postgres1 has a logical replication slot named unmanaged_slot_0 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1173s Mar 22 12:37:00 And postgres1 has a logical replication slot named unmanaged_slot_1 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1173s Mar 22 12:37:00 And postgres1 has a logical replication slot named unmanaged_slot_2 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1173s Mar 22 12:37:00 And postgres1 has a logical replication slot named unmanaged_slot_3 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1175s Mar 22 12:37:02 1175s Mar 22 12:37:02 Feature: patroni api # features/patroni_api.feature:1 1175s Mar 22 12:37:02 We should check that patroni correctly responds to valid and not-valid API requests. 1175s Mar 22 12:37:02 Scenario: check API requests on a stand-alone server # features/patroni_api.feature:4 1175s Mar 22 12:37:02 Given I start postgres0 # features/steps/basic_replication.py:8 1178s Mar 22 12:37:05 And postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 1179s Mar 22 12:37:06 When I issue a GET request to http://127.0.0.1:8008/ # features/steps/patroni_api.py:61 1179s Mar 22 12:37:06 Then I receive a response code 200 # features/steps/patroni_api.py:98 1179s Mar 22 12:37:06 And I receive a response state running # features/steps/patroni_api.py:98 1179s Mar 22 12:37:06 And I receive a response role master # features/steps/patroni_api.py:98 1179s Mar 22 12:37:06 When I issue a GET request to http://127.0.0.1:8008/standby_leader # features/steps/patroni_api.py:61 1180s Mar 22 12:37:07 Then I receive a response code 503 # features/steps/patroni_api.py:98 1180s Mar 22 12:37:07 When I issue a GET request to http://127.0.0.1:8008/health # features/steps/patroni_api.py:61 1180s Mar 22 12:37:07 Then I receive a response code 200 # features/steps/patroni_api.py:98 1180s Mar 22 12:37:07 When I issue a GET request to http://127.0.0.1:8008/replica # features/steps/patroni_api.py:61 1180s Mar 22 12:37:07 Then I receive a response code 503 # features/steps/patroni_api.py:98 1180s Mar 22 12:37:07 When I issue a POST request to http://127.0.0.1:8008/reinitialize with {"force": true} # features/steps/patroni_api.py:71 1180s Mar 22 12:37:07 Then I receive a response code 503 # features/steps/patroni_api.py:98 1180s Mar 22 12:37:07 And I receive a response text I am the leader, can not reinitialize # features/steps/patroni_api.py:98 1180s Mar 22 12:37:07 When I run patronictl.py switchover batman --master postgres0 --force # features/steps/patroni_api.py:86 1181s Mar 22 12:37:08 Then I receive a response returncode 1 # features/steps/patroni_api.py:98 1181s Mar 22 12:37:08 And I receive a response output "Error: No candidates found to switchover to" # features/steps/patroni_api.py:98 1181s Mar 22 12:37:08 When I issue a POST request to http://127.0.0.1:8008/switchover with {"leader": "postgres0"} # features/steps/patroni_api.py:71 1181s Mar 22 12:37:08 Then I receive a response code 412 # features/steps/patroni_api.py:98 1181s Mar 22 12:37:08 And I receive a response text switchover is not possible: cluster does not have members except leader # features/steps/patroni_api.py:98 1181s Mar 22 12:37:08 When I issue an empty POST request to http://127.0.0.1:8008/failover # features/steps/patroni_api.py:66 1181s Mar 22 12:37:08 Then I receive a response code 400 # features/steps/patroni_api.py:98 1181s Mar 22 12:37:08 When I issue a POST request to http://127.0.0.1:8008/failover with {"foo": "bar"} # features/steps/patroni_api.py:71 1181s Mar 22 12:37:08 Then I receive a response code 400 # features/steps/patroni_api.py:98 1181s Mar 22 12:37:08 And I receive a response text "Failover could be performed only to a specific candidate" # features/steps/patroni_api.py:98 1181s Mar 22 12:37:08 1181s Mar 22 12:37:08 Scenario: check local configuration reload # features/patroni_api.feature:32 1181s Mar 22 12:37:08 Given I add tag new_tag new_value to postgres0 config # features/steps/patroni_api.py:137 1181s Mar 22 12:37:08 And I issue an empty POST request to http://127.0.0.1:8008/reload # features/steps/patroni_api.py:66 1181s Mar 22 12:37:08 Then I receive a response code 202 # features/steps/patroni_api.py:98 1181s Mar 22 12:37:08 1181s Mar 22 12:37:08 Scenario: check dynamic configuration change via DCS # features/patroni_api.feature:37 1181s Mar 22 12:37:08 Given I issue a PATCH request to http://127.0.0.1:8008/config with {"ttl": 20, "postgresql": {"parameters": {"max_connections": "101"}}} # features/steps/patroni_api.py:71 1181s Mar 22 12:37:08 Then I receive a response code 200 # features/steps/patroni_api.py:98 1181s Mar 22 12:37:08 And Response on GET http://127.0.0.1:8008/patroni contains pending_restart after 11 seconds # features/steps/patroni_api.py:156 1183s Mar 22 12:37:10 When I issue a GET request to http://127.0.0.1:8008/config # features/steps/patroni_api.py:61 1183s Mar 22 12:37:10 Then I receive a response code 200 # features/steps/patroni_api.py:98 1183s Mar 22 12:37:10 And I receive a response ttl 20 # features/steps/patroni_api.py:98 1183s Mar 22 12:37:10 When I issue a GET request to http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:61 1183s Mar 22 12:37:10 Then I receive a response code 200 # features/steps/patroni_api.py:98 1183s Mar 22 12:37:10 And I receive a response tags {'new_tag': 'new_value'} # features/steps/patroni_api.py:98 1183s Mar 22 12:37:10 And I sleep for 4 seconds # features/steps/patroni_api.py:39 1187s Mar 22 12:37:14 1187s Mar 22 12:37:14 Scenario: check the scheduled restart # features/patroni_api.feature:49 1187s Mar 22 12:37:14 Given I run patronictl.py edit-config -p 'superuser_reserved_connections=6' --force batman # features/steps/patroni_api.py:86 1188s Mar 22 12:37:15 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 1188s Mar 22 12:37:15 And I receive a response output "+ superuser_reserved_connections: 6" # features/steps/patroni_api.py:98 1188s Mar 22 12:37:15 And Response on GET http://127.0.0.1:8008/patroni contains pending_restart after 5 seconds # features/steps/patroni_api.py:156 1188s Mar 22 12:37:15 Given I issue a scheduled restart at http://127.0.0.1:8008 in 5 seconds with {"role": "replica"} # features/steps/patroni_api.py:124 1188s Mar 22 12:37:15 Then I receive a response code 202 # features/steps/patroni_api.py:98 1188s Mar 22 12:37:15 And I sleep for 8 seconds # features/steps/patroni_api.py:39 1196s Mar 22 12:37:23 And Response on GET http://127.0.0.1:8008/patroni contains pending_restart after 10 seconds # features/steps/patroni_api.py:156 1196s Mar 22 12:37:23 Given I issue a scheduled restart at http://127.0.0.1:8008 in 5 seconds with {"restart_pending": "True"} # features/steps/patroni_api.py:124 1196s Mar 22 12:37:23 Then I receive a response code 202 # features/steps/patroni_api.py:98 1196s Mar 22 12:37:23 And Response on GET http://127.0.0.1:8008/patroni does not contain pending_restart after 10 seconds # features/steps/patroni_api.py:171 1204s Mar 22 12:37:30 And postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:101 1205s Mar 22 12:37:31 1205s Mar 22 12:37:31 Scenario: check API requests for the primary-replica pair in the pause mode # features/patroni_api.feature:63 1205s Mar 22 12:37:31 Given I start postgres1 # features/steps/basic_replication.py:8 1208s Mar 22 12:37:35 Then replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:108 1213s Mar 22 12:37:40 When I run patronictl.py pause batman # features/steps/patroni_api.py:86 1214s Mar 22 12:37:41 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 1214s Mar 22 12:37:41 When I kill postmaster on postgres1 # features/steps/basic_replication.py:44 1214s Mar 22 12:37:41 waiting for server to shut down.... done 1214s Mar 22 12:37:41 server stopped 1214s Mar 22 12:37:41 And I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:61 1214s Mar 22 12:37:41 Then I receive a response code 503 # features/steps/patroni_api.py:98 1214s Mar 22 12:37:41 And "members/postgres1" key in DCS has state=stopped after 10 seconds # features/steps/cascading_replication.py:23 1215s Mar 22 12:37:42 When I run patronictl.py restart batman postgres1 --force # features/steps/patroni_api.py:86 1218s Mar 22 12:37:45 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 1218s Mar 22 12:37:45 Then replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:108 1219s Mar 22 12:37:46 And I sleep for 2 seconds # features/steps/patroni_api.py:39 1221s Mar 22 12:37:48 When I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:61 1221s Mar 22 12:37:48 Then I receive a response code 200 # features/steps/patroni_api.py:98 1221s Mar 22 12:37:48 And I receive a response state running # features/steps/patroni_api.py:98 1221s Mar 22 12:37:48 And I receive a response role replica # features/steps/patroni_api.py:98 1221s Mar 22 12:37:48 When I run patronictl.py reinit batman postgres1 --force --wait # features/steps/patroni_api.py:86 1225s Mar 22 12:37:52 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 1225s Mar 22 12:37:52 And I receive a response output "Success: reinitialize for member postgres1" # features/steps/patroni_api.py:98 1225s Mar 22 12:37:52 And postgres1 role is the secondary after 30 seconds # features/steps/basic_replication.py:101 1226s Mar 22 12:37:53 And replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:108 1227s Mar 22 12:37:54 When I run patronictl.py restart batman postgres0 --force # features/steps/patroni_api.py:86 1230s Mar 22 12:37:57 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 1230s Mar 22 12:37:57 And I receive a response output "Success: restart on member postgres0" # features/steps/patroni_api.py:98 1230s Mar 22 12:37:57 And postgres0 role is the primary after 5 seconds # features/steps/basic_replication.py:101 1231s Mar 22 12:37:58 1231s Mar 22 12:37:58 Scenario: check the switchover via the API in the pause mode # features/patroni_api.feature:90 1231s Mar 22 12:37:58 Given I issue a POST request to http://127.0.0.1:8008/switchover with {"leader": "postgres0", "candidate": "postgres1"} # features/steps/patroni_api.py:71 1233s Mar 22 12:38:00 Then I receive a response code 200 # features/steps/patroni_api.py:98 1233s Mar 22 12:38:00 And postgres1 is a leader after 5 seconds # features/steps/patroni_api.py:29 1233s Mar 22 12:38:00 And postgres1 role is the primary after 10 seconds # features/steps/basic_replication.py:101 1233s Mar 22 12:38:00 And postgres0 role is the secondary after 10 seconds # features/steps/basic_replication.py:101 1235s Mar 22 12:38:02 And replication works from postgres1 to postgres0 after 20 seconds # features/steps/basic_replication.py:108 1238s Mar 22 12:38:04 And "members/postgres0" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 1239s Mar 22 12:38:05 When I issue a GET request to http://127.0.0.1:8008/primary # features/steps/patroni_api.py:61 1239s Mar 22 12:38:06 Then I receive a response code 503 # features/steps/patroni_api.py:98 1239s Mar 22 12:38:06 When I issue a GET request to http://127.0.0.1:8008/replica # features/steps/patroni_api.py:61 1239s Mar 22 12:38:06 Then I receive a response code 200 # features/steps/patroni_api.py:98 1239s Mar 22 12:38:06 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:61 1239s Mar 22 12:38:06 Then I receive a response code 200 # features/steps/patroni_api.py:98 1239s Mar 22 12:38:06 When I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:61 1239s Mar 22 12:38:06 Then I receive a response code 503 # features/steps/patroni_api.py:98 1239s Mar 22 12:38:06 1239s Mar 22 12:38:06 Scenario: check the scheduled switchover # features/patroni_api.feature:107 1239s Mar 22 12:38:06 Given I issue a scheduled switchover from postgres1 to postgres0 in 10 seconds # features/steps/patroni_api.py:117 1240s Mar 22 12:38:07 Then I receive a response returncode 1 # features/steps/patroni_api.py:98 1240s Mar 22 12:38:07 And I receive a response output "Can't schedule switchover in the paused state" # features/steps/patroni_api.py:98 1240s Mar 22 12:38:07 When I run patronictl.py resume batman # features/steps/patroni_api.py:86 1242s Mar 22 12:38:09 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 1242s Mar 22 12:38:09 Given I issue a scheduled switchover from postgres1 to postgres0 in 10 seconds # features/steps/patroni_api.py:117 1243s Mar 22 12:38:10 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 1243s Mar 22 12:38:10 And postgres0 is a leader after 20 seconds # features/steps/patroni_api.py:29 1254s Mar 22 12:38:21 And postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:101 1254s Mar 22 12:38:21 And postgres1 role is the secondary after 10 seconds # features/steps/basic_replication.py:101 1255s Mar 22 12:38:22 And replication works from postgres0 to postgres1 after 25 seconds # features/steps/basic_replication.py:108 1260s Mar 22 12:38:27 And "members/postgres1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 1260s Mar 22 12:38:27 When I issue a GET request to http://127.0.0.1:8008/primary # features/steps/patroni_api.py:61 1260s Mar 22 12:38:27 Then I receive a response code 200 # features/steps/patroni_api.py:98 1260s Mar 22 12:38:27 When I issue a GET request to http://127.0.0.1:8008/replica # features/steps/patroni_api.py:61 1260s Mar 22 12:38:27 Then I receive a response code 503 # features/steps/patroni_api.py:98 1260s Mar 22 12:38:27 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:61 1260s Mar 22 12:38:27 Then I receive a response code 503 # features/steps/patroni_api.py:98 1260s Mar 22 12:38:27 When I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:61 1261s Mar 22 12:38:28 Then I receive a response code 200 # features/steps/patroni_api.py:98 1265s Mar 22 12:38:32 1265s Mar 22 12:38:32 Feature: permanent slots # features/permanent_slots.feature:1 1265s Mar 22 12:38:32 1265s Mar 22 12:38:32 Scenario: check that physical permanent slots are created # features/permanent_slots.feature:2 1265s Mar 22 12:38:32 Given I start postgres0 # features/steps/basic_replication.py:8 1268s Mar 22 12:38:35 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 1269s Mar 22 12:38:36 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 1269s Mar 22 12:38:36 When I issue a PATCH request to http://127.0.0.1:8008/config with {"slots":{"test_physical":0,"postgres0":0,"postgres1":0,"postgres3":0},"postgresql":{"parameters":{"wal_level":"logical"}}} # features/steps/patroni_api.py:71 1269s Mar 22 12:38:36 Then I receive a response code 200 # features/steps/patroni_api.py:98 1269s Mar 22 12:38:36 And Response on GET http://127.0.0.1:8008/config contains slots after 10 seconds # features/steps/patroni_api.py:156 1269s Mar 22 12:38:36 When I start postgres1 # features/steps/basic_replication.py:8 1272s Mar 22 12:38:39 And I start postgres2 # features/steps/basic_replication.py:8 1275s Mar 22 12:38:42 And I configure and start postgres3 with a tag replicatefrom postgres2 # features/steps/cascading_replication.py:7 1278s Mar 22 12:38:45 Then postgres0 has a physical replication slot named test_physical after 10 seconds # features/steps/slots.py:80 1278s Mar 22 12:38:45 And postgres0 has a physical replication slot named postgres1 after 10 seconds # features/steps/slots.py:80 1278s Mar 22 12:38:45 And postgres0 has a physical replication slot named postgres2 after 10 seconds # features/steps/slots.py:80 1278s Mar 22 12:38:45 And postgres2 has a physical replication slot named postgres3 after 10 seconds # features/steps/slots.py:80 1278s Mar 22 12:38:45 1278s Mar 22 12:38:45 @slot-advance 1278s Mar 22 12:38:45 Scenario: check that logical permanent slots are created # features/permanent_slots.feature:18 1278s Mar 22 12:38:45 Given I run patronictl.py restart batman postgres0 --force # features/steps/patroni_api.py:86 1281s Mar 22 12:38:48 And I issue a PATCH request to http://127.0.0.1:8008/config with {"slots":{"test_logical":{"type":"logical","database":"postgres","plugin":"test_decoding"}}} # features/steps/patroni_api.py:71 1281s Mar 22 12:38:48 Then postgres0 has a logical replication slot named test_logical with the test_decoding plugin after 10 seconds # features/steps/slots.py:19 1283s Mar 22 12:38:49 1283s Mar 22 12:38:49 @slot-advance 1283s Mar 22 12:38:49 Scenario: check that permanent slots are created on replicas # features/permanent_slots.feature:24 1283s Mar 22 12:38:49 Given postgres1 has a logical replication slot named test_logical with the test_decoding plugin after 10 seconds # features/steps/slots.py:19 1288s Mar 22 12:38:55 Then Logical slot test_logical is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 1288s Mar 22 12:38:55 And Logical slot test_logical is in sync between postgres0 and postgres2 after 10 seconds # features/steps/slots.py:51 1289s Mar 22 12:38:56 And Logical slot test_logical is in sync between postgres0 and postgres3 after 10 seconds # features/steps/slots.py:51 1290s Mar 22 12:38:57 And postgres1 has a physical replication slot named test_physical after 2 seconds # features/steps/slots.py:80 1290s Mar 22 12:38:57 And postgres2 has a physical replication slot named test_physical after 2 seconds # features/steps/slots.py:80 1290s Mar 22 12:38:57 And postgres3 has a physical replication slot named test_physical after 2 seconds # features/steps/slots.py:80 1290s Mar 22 12:38:57 1290s Mar 22 12:38:57 @slot-advance 1290s Mar 22 12:38:57 Scenario: check permanent physical slots that match with member names # features/permanent_slots.feature:34 1290s Mar 22 12:38:57 Given postgres0 has a physical replication slot named postgres3 after 2 seconds # features/steps/slots.py:80 1290s Mar 22 12:38:57 And postgres1 has a physical replication slot named postgres0 after 2 seconds # features/steps/slots.py:80 1290s Mar 22 12:38:57 And postgres1 has a physical replication slot named postgres3 after 2 seconds # features/steps/slots.py:80 1290s Mar 22 12:38:57 And postgres2 has a physical replication slot named postgres0 after 2 seconds # features/steps/slots.py:80 1290s Mar 22 12:38:57 And postgres2 has a physical replication slot named postgres3 after 2 seconds # features/steps/slots.py:80 1290s Mar 22 12:38:57 And postgres2 has a physical replication slot named postgres1 after 2 seconds # features/steps/slots.py:80 1290s Mar 22 12:38:57 And postgres1 does not have a replication slot named postgres2 # features/steps/slots.py:40 1290s Mar 22 12:38:57 And postgres3 does not have a replication slot named postgres2 # features/steps/slots.py:40 1290s Mar 22 12:38:57 1290s Mar 22 12:38:57 @slot-advance 1290s Mar 22 12:38:57 Scenario: check that permanent slots are advanced on replicas # features/permanent_slots.feature:45 1290s Mar 22 12:38:57 Given I add the table replicate_me to postgres0 # features/steps/basic_replication.py:49 1290s Mar 22 12:38:57 When I get all changes from logical slot test_logical on postgres0 # features/steps/slots.py:70 1290s Mar 22 12:38:57 And I get all changes from physical slot test_physical on postgres0 # features/steps/slots.py:75 1290s Mar 22 12:38:57 Then Logical slot test_logical is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 1292s Mar 22 12:38:59 And Physical slot test_physical is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 1292s Mar 22 12:38:59 And Logical slot test_logical is in sync between postgres0 and postgres2 after 10 seconds # features/steps/slots.py:51 1292s Mar 22 12:38:59 And Physical slot test_physical is in sync between postgres0 and postgres2 after 10 seconds # features/steps/slots.py:51 1292s Mar 22 12:38:59 And Logical slot test_logical is in sync between postgres0 and postgres3 after 10 seconds # features/steps/slots.py:51 1292s Mar 22 12:38:59 And Physical slot test_physical is in sync between postgres0 and postgres3 after 10 seconds # features/steps/slots.py:51 1292s Mar 22 12:38:59 And Physical slot postgres1 is in sync between postgres0 and postgres2 after 10 seconds # features/steps/slots.py:51 1292s Mar 22 12:38:59 And Physical slot postgres3 is in sync between postgres2 and postgres0 after 20 seconds # features/steps/slots.py:51 1294s Mar 22 12:39:01 And Physical slot postgres3 is in sync between postgres2 and postgres1 after 10 seconds # features/steps/slots.py:51 1294s Mar 22 12:39:01 And postgres1 does not have a replication slot named postgres2 # features/steps/slots.py:40 1294s Mar 22 12:39:01 And postgres3 does not have a replication slot named postgres2 # features/steps/slots.py:40 1294s Mar 22 12:39:01 1294s Mar 22 12:39:01 @slot-advance 1294s Mar 22 12:39:01 Scenario: check that only permanent slots are written to the /status key # features/permanent_slots.feature:62 1294s Mar 22 12:39:01 Given "status" key in DCS has test_physical in slots # features/steps/slots.py:96 1294s Mar 22 12:39:01 And "status" key in DCS has postgres0 in slots # features/steps/slots.py:96 1294s Mar 22 12:39:01 And "status" key in DCS has postgres1 in slots # features/steps/slots.py:96 1294s Mar 22 12:39:01 And "status" key in DCS does not have postgres2 in slots # features/steps/slots.py:102 1294s Mar 22 12:39:01 And "status" key in DCS has postgres3 in slots # features/steps/slots.py:96 1294s Mar 22 12:39:01 1294s Mar 22 12:39:01 Scenario: check permanent physical replication slot after failover # features/permanent_slots.feature:69 1294s Mar 22 12:39:01 Given I shut down postgres3 # features/steps/basic_replication.py:29 1295s Mar 22 12:39:02 And I shut down postgres2 # features/steps/basic_replication.py:29 1296s Mar 22 12:39:03 And I shut down postgres0 # features/steps/basic_replication.py:29 1298s Mar 22 12:39:05 Then postgres1 has a physical replication slot named test_physical after 10 seconds # features/steps/slots.py:80 1298s Mar 22 12:39:05 And postgres1 has a physical replication slot named postgres0 after 10 seconds # features/steps/slots.py:80 1298s Mar 22 12:39:05 And postgres1 has a physical replication slot named postgres3 after 10 seconds # features/steps/slots.py:80 1300s Mar 22 12:39:07 1300s Mar 22 12:39:07 Feature: priority replication # features/priority_failover.feature:1 1300s Mar 22 12:39:07 We should check that we can give nodes priority during failover 1300s Mar 22 12:39:07 Scenario: check failover priority 0 prevents leaderships # features/priority_failover.feature:4 1300s Mar 22 12:39:07 Given I configure and start postgres0 with a tag failover_priority 1 # features/steps/cascading_replication.py:7 1303s Mar 22 12:39:10 And I configure and start postgres1 with a tag failover_priority 0 # features/steps/cascading_replication.py:7 1306s Mar 22 12:39:13 Then replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:108 1311s Mar 22 12:39:18 When I shut down postgres0 # features/steps/basic_replication.py:29 1313s Mar 22 12:39:20 And there is one of ["following a different leader because I am not allowed to promote"] INFO in the postgres1 patroni log after 5 seconds # features/steps/basic_replication.py:117 1315s Mar 22 12:39:22 Then postgres1 role is the secondary after 10 seconds # features/steps/basic_replication.py:101 1315s Mar 22 12:39:22 When I start postgres0 # features/steps/basic_replication.py:8 1317s Mar 22 12:39:24 Then postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:101 1318s Mar 22 12:39:25 1318s Mar 22 12:39:25 Scenario: check higher failover priority is respected # features/priority_failover.feature:14 1318s Mar 22 12:39:25 Given I configure and start postgres2 with a tag failover_priority 1 # features/steps/cascading_replication.py:7 1321s Mar 22 12:39:28 And I configure and start postgres3 with a tag failover_priority 2 # features/steps/cascading_replication.py:7 1324s Mar 22 12:39:31 Then replication works from postgres0 to postgres2 after 20 seconds # features/steps/basic_replication.py:108 1326s Mar 22 12:39:33 And replication works from postgres0 to postgres3 after 20 seconds # features/steps/basic_replication.py:108 1326s Mar 22 12:39:33 When I shut down postgres0 # features/steps/basic_replication.py:29 1328s Mar 22 12:39:35 Then postgres3 role is the primary after 10 seconds # features/steps/basic_replication.py:101 1328s Mar 22 12:39:35 And there is one of ["postgres3 has equally tolerable WAL position and priority 2, while this node has priority 1","Wal position of postgres3 is ahead of my wal position"] INFO in the postgres2 patroni log after 5 seconds # features/steps/basic_replication.py:117 1328s Mar 22 12:39:35 1328s Mar 22 12:39:35 Scenario: check conflicting configuration handling # features/priority_failover.feature:23 1328s Mar 22 12:39:35 When I set nofailover tag in postgres2 config # features/steps/patroni_api.py:131 1328s Mar 22 12:39:35 And I issue an empty POST request to http://127.0.0.1:8010/reload # features/steps/patroni_api.py:66 1328s Mar 22 12:39:35 Then I receive a response code 202 # features/steps/patroni_api.py:98 1328s Mar 22 12:39:35 And there is one of ["Conflicting configuration between nofailover: True and failover_priority: 1. Defaulting to nofailover: True"] WARNING in the postgres2 patroni log after 5 seconds # features/steps/basic_replication.py:117 1330s Mar 22 12:39:37 And "members/postgres2" key in DCS has tags={'failover_priority': '1', 'nofailover': True} after 10 seconds # features/steps/cascading_replication.py:23 1331s Mar 22 12:39:38 When I issue a POST request to http://127.0.0.1:8010/failover with {"candidate": "postgres2"} # features/steps/patroni_api.py:71 1331s Mar 22 12:39:38 Then I receive a response code 412 # features/steps/patroni_api.py:98 1331s Mar 22 12:39:38 And I receive a response text "failover is not possible: no good candidates have been found" # features/steps/patroni_api.py:98 1331s Mar 22 12:39:38 When I reset nofailover tag in postgres1 config # features/steps/patroni_api.py:131 1331s Mar 22 12:39:38 And I issue an empty POST request to http://127.0.0.1:8009/reload # features/steps/patroni_api.py:66 1331s Mar 22 12:39:38 Then I receive a response code 202 # features/steps/patroni_api.py:98 1331s Mar 22 12:39:38 And there is one of ["Conflicting configuration between nofailover: False and failover_priority: 0. Defaulting to nofailover: False"] WARNING in the postgres1 patroni log after 5 seconds # features/steps/basic_replication.py:117 1333s Mar 22 12:39:40 And "members/postgres1" key in DCS has tags={'failover_priority': '0', 'nofailover': False} after 10 seconds # features/steps/cascading_replication.py:23 1334s Mar 22 12:39:41 And I issue a POST request to http://127.0.0.1:8009/failover with {"candidate": "postgres1"} # features/steps/patroni_api.py:71 1336s Mar 22 12:39:43 Then I receive a response code 200 # features/steps/patroni_api.py:98 1336s Mar 22 12:39:43 And postgres1 role is the primary after 10 seconds # features/steps/basic_replication.py:101 1341s Mar 22 12:39:48 1341s Mar 22 12:39:48 Feature: recovery # features/recovery.feature:1 1341s Mar 22 12:39:48 We want to check that crashed postgres is started back 1341s Mar 22 12:39:48 Scenario: check that timeline is not incremented when primary is started after crash # features/recovery.feature:4 1341s Mar 22 12:39:48 Given I start postgres0 # features/steps/basic_replication.py:8 1344s Mar 22 12:39:51 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 1345s Mar 22 12:39:52 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 1345s Mar 22 12:39:52 When I start postgres1 # features/steps/basic_replication.py:8 1348s Mar 22 12:39:55 And I add the table foo to postgres0 # features/steps/basic_replication.py:49 1348s Mar 22 12:39:55 Then table foo is present on postgres1 after 20 seconds # features/steps/basic_replication.py:89 1353s Mar 22 12:40:00 When I kill postmaster on postgres0 # features/steps/basic_replication.py:44 1353s Mar 22 12:40:00 waiting for server to shut down.... done 1353s Mar 22 12:40:00 server stopped 1353s Mar 22 12:40:00 Then postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:101 1355s Mar 22 12:40:02 When I issue a GET request to http://127.0.0.1:8008/ # features/steps/patroni_api.py:61 1355s Mar 22 12:40:02 Then I receive a response code 200 # features/steps/patroni_api.py:98 1355s Mar 22 12:40:02 And I receive a response role master # features/steps/patroni_api.py:98 1355s Mar 22 12:40:02 And I receive a response timeline 1 # features/steps/patroni_api.py:98 1355s Mar 22 12:40:02 And "members/postgres0" key in DCS has state=running after 12 seconds # features/steps/cascading_replication.py:23 1356s Mar 22 12:40:03 And replication works from postgres0 to postgres1 after 15 seconds # features/steps/basic_replication.py:108 1358s Mar 22 12:40:05 1358s Mar 22 12:40:05 Scenario: check immediate failover when master_start_timeout=0 # features/recovery.feature:20 1358s Mar 22 12:40:05 Given I issue a PATCH request to http://127.0.0.1:8008/config with {"master_start_timeout": 0} # features/steps/patroni_api.py:71 1358s Mar 22 12:40:05 Then I receive a response code 200 # features/steps/patroni_api.py:98 1358s Mar 22 12:40:05 And Response on GET http://127.0.0.1:8008/config contains master_start_timeout after 10 seconds # features/steps/patroni_api.py:156 1358s Mar 22 12:40:05 When I kill postmaster on postgres0 # features/steps/basic_replication.py:44 1358s Mar 22 12:40:05 waiting for server to shut down.... done 1358s Mar 22 12:40:05 server stopped 1358s Mar 22 12:40:05 Then postgres1 is a leader after 10 seconds # features/steps/patroni_api.py:29 1360s Mar 22 12:40:07 And postgres1 role is the primary after 10 seconds # features/steps/basic_replication.py:101 1363s Mar 22 12:40:10 1363s Mar 22 12:40:10 Feature: standby cluster # features/standby_cluster.feature:1 1363s Mar 22 12:40:10 1363s Mar 22 12:40:10 Scenario: prepare the cluster with logical slots # features/standby_cluster.feature:2 1363s Mar 22 12:40:10 Given I start postgres1 # features/steps/basic_replication.py:8 1366s Mar 22 12:40:13 Then postgres1 is a leader after 10 seconds # features/steps/patroni_api.py:29 1367s Mar 22 12:40:14 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 1367s Mar 22 12:40:14 When I issue a PATCH request to http://127.0.0.1:8009/config with {"slots": {"pm_1": {"type": "physical"}}, "postgresql": {"parameters": {"wal_level": "logical"}}} # features/steps/patroni_api.py:71 1368s Mar 22 12:40:15 Then I receive a response code 200 # features/steps/patroni_api.py:98 1368s Mar 22 12:40:15 And Response on GET http://127.0.0.1:8009/config contains slots after 10 seconds # features/steps/patroni_api.py:156 1368s Mar 22 12:40:15 And I sleep for 3 seconds # features/steps/patroni_api.py:39 1371s Mar 22 12:40:18 When I issue a PATCH request to http://127.0.0.1:8009/config with {"slots": {"test_logical": {"type": "logical", "database": "postgres", "plugin": "test_decoding"}}} # features/steps/patroni_api.py:71 1371s Mar 22 12:40:18 Then I receive a response code 200 # features/steps/patroni_api.py:98 1371s Mar 22 12:40:18 And I do a backup of postgres1 # features/steps/custom_bootstrap.py:25 1371s Mar 22 12:40:18 When I start postgres0 # features/steps/basic_replication.py:8 1374s Mar 22 12:40:21 Then "members/postgres0" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 1375s Mar 22 12:40:22 And replication works from postgres1 to postgres0 after 15 seconds # features/steps/basic_replication.py:108 1376s Mar 22 12:40:23 When I issue a GET request to http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:61 1376s Mar 22 12:40:23 Then I receive a response code 200 # features/steps/patroni_api.py:98 1376s Mar 22 12:40:23 And I receive a response replication_state streaming # features/steps/patroni_api.py:98 1376s Mar 22 12:40:23 And "members/postgres0" key in DCS has replication_state=streaming after 10 seconds # features/steps/cascading_replication.py:23 1376s Mar 22 12:40:23 1376s Mar 22 12:40:23 @slot-advance 1376s Mar 22 12:40:23 Scenario: check permanent logical slots are synced to the replica # features/standby_cluster.feature:22 1376s Mar 22 12:40:23 Given I run patronictl.py restart batman postgres1 --force # features/steps/patroni_api.py:86 1379s Mar 22 12:40:26 Then Logical slot test_logical is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 1384s Mar 22 12:40:31 1384s Mar 22 12:40:31 Scenario: Detach exiting node from the cluster # features/standby_cluster.feature:26 1384s Mar 22 12:40:31 When I shut down postgres1 # features/steps/basic_replication.py:29 1386s Mar 22 12:40:33 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 1386s Mar 22 12:40:33 And "members/postgres0" key in DCS has role=master after 3 seconds # features/steps/cascading_replication.py:23 1387s Mar 22 12:40:34 When I issue a GET request to http://127.0.0.1:8008/ # features/steps/patroni_api.py:61 1387s Mar 22 12:40:34 Then I receive a response code 200 # features/steps/patroni_api.py:98 1387s Mar 22 12:40:34 1387s Mar 22 12:40:34 Scenario: check replication of a single table in a standby cluster # features/standby_cluster.feature:33 1387s Mar 22 12:40:34 Given I start postgres1 in a standby cluster batman1 as a clone of postgres0 # features/steps/standby_cluster.py:23 1389s Mar 22 12:40:36 Then postgres1 is a leader of batman1 after 10 seconds # features/steps/custom_bootstrap.py:16 1390s Mar 22 12:40:37 When I add the table foo to postgres0 # features/steps/basic_replication.py:49 1390s Mar 22 12:40:37 Then table foo is present on postgres1 after 20 seconds # features/steps/basic_replication.py:89 1390s Mar 22 12:40:37 When I issue a GET request to http://127.0.0.1:8009/patroni # features/steps/patroni_api.py:61 1391s Mar 22 12:40:37 Then I receive a response code 200 # features/steps/patroni_api.py:98 1391s Mar 22 12:40:37 And I receive a response replication_state streaming # features/steps/patroni_api.py:98 1391s Mar 22 12:40:37 And I sleep for 3 seconds # features/steps/patroni_api.py:39 1394s Mar 22 12:40:40 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:61 1394s Mar 22 12:40:41 Then I receive a response code 503 # features/steps/patroni_api.py:98 1394s Mar 22 12:40:41 When I issue a GET request to http://127.0.0.1:8009/standby_leader # features/steps/patroni_api.py:61 1394s Mar 22 12:40:41 Then I receive a response code 200 # features/steps/patroni_api.py:98 1394s Mar 22 12:40:41 And I receive a response role standby_leader # features/steps/patroni_api.py:98 1394s Mar 22 12:40:41 And there is a postgres1_cb.log with "on_role_change standby_leader batman1" in postgres1 data directory # features/steps/cascading_replication.py:12 1394s Mar 22 12:40:41 When I start postgres2 in a cluster batman1 # features/steps/standby_cluster.py:12 1396s Mar 22 12:40:43 Then postgres2 role is the replica after 24 seconds # features/steps/basic_replication.py:101 1396s Mar 22 12:40:43 And table foo is present on postgres2 after 20 seconds # features/steps/basic_replication.py:89 1402s Mar 22 12:40:49 When I issue a GET request to http://127.0.0.1:8010/patroni # features/steps/patroni_api.py:61 1402s Mar 22 12:40:49 Then I receive a response code 200 # features/steps/patroni_api.py:98 1402s Mar 22 12:40:49 And I receive a response replication_state streaming # features/steps/patroni_api.py:98 1402s Mar 22 12:40:49 And postgres1 does not have a replication slot named test_logical # features/steps/slots.py:40 1402s Mar 22 12:40:49 1402s Mar 22 12:40:49 Scenario: check switchover # features/standby_cluster.feature:56 1402s Mar 22 12:40:49 Given I run patronictl.py switchover batman1 --force # features/steps/patroni_api.py:86 1405s Mar 22 12:40:52 Then Status code on GET http://127.0.0.1:8010/standby_leader is 200 after 10 seconds # features/steps/patroni_api.py:142 1405s Mar 22 12:40:52 And postgres1 is replicating from postgres2 after 32 seconds # features/steps/standby_cluster.py:52 1407s Mar 22 12:40:54 And there is a postgres2_cb.log with "on_start replica batman1\non_role_change standby_leader batman1" in postgres2 data directory # features/steps/cascading_replication.py:12 1407s Mar 22 12:40:54 1407s Mar 22 12:40:54 Scenario: check failover # features/standby_cluster.feature:62 1407s Mar 22 12:40:54 When I kill postgres2 # features/steps/basic_replication.py:34 1408s Mar 22 12:40:55 And I kill postmaster on postgres2 # features/steps/basic_replication.py:44 1408s Mar 22 12:40:55 waiting for server to shut down.... done 1408s Mar 22 12:40:55 server stopped 1408s Mar 22 12:40:55 Then postgres1 is replicating from postgres0 after 32 seconds # features/steps/standby_cluster.py:52 1427s Mar 22 12:41:13 And Status code on GET http://127.0.0.1:8009/standby_leader is 200 after 10 seconds # features/steps/patroni_api.py:142 1427s Mar 22 12:41:14 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:61 1427s Mar 22 12:41:14 Then I receive a response code 503 # features/steps/patroni_api.py:98 1427s Mar 22 12:41:14 And I receive a response role standby_leader # features/steps/patroni_api.py:98 1427s Mar 22 12:41:14 And replication works from postgres0 to postgres1 after 15 seconds # features/steps/basic_replication.py:108 1428s Mar 22 12:41:15 And there is a postgres1_cb.log with "on_role_change replica batman1\non_role_change standby_leader batman1" in postgres1 data directory # features/steps/cascading_replication.py:12 1432s Mar 22 12:41:19 1432s Mar 22 12:41:19 Feature: watchdog # features/watchdog.feature:1 1432s Mar 22 12:41:19 Verify that watchdog gets pinged and triggered under appropriate circumstances. 1432s Mar 22 12:41:19 Scenario: watchdog is opened and pinged # features/watchdog.feature:4 1432s Mar 22 12:41:19 Given I start postgres0 with watchdog # features/steps/watchdog.py:16 1435s Mar 22 12:41:22 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 1436s Mar 22 12:41:23 And postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:101 1436s Mar 22 12:41:23 And postgres0 watchdog has been pinged after 10 seconds # features/steps/watchdog.py:21 1437s Mar 22 12:41:24 And postgres0 watchdog has a 15 second timeout # features/steps/watchdog.py:34 1437s Mar 22 12:41:24 1437s Mar 22 12:41:24 Scenario: watchdog is reconfigured after global ttl changed # features/watchdog.feature:11 1437s Mar 22 12:41:24 Given I run patronictl.py edit-config batman -s ttl=30 --force # features/steps/patroni_api.py:86 1439s Mar 22 12:41:25 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 1439s Mar 22 12:41:25 And I receive a response output "+ttl: 30" # features/steps/patroni_api.py:98 1439s Mar 22 12:41:25 When I sleep for 4 seconds # features/steps/patroni_api.py:39 1443s Mar 22 12:41:29 Then postgres0 watchdog has a 25 second timeout # features/steps/watchdog.py:34 1443s Mar 22 12:41:29 1443s Mar 22 12:41:29 Scenario: watchdog is disabled during pause # features/watchdog.feature:18 1443s Mar 22 12:41:29 Given I run patronictl.py pause batman # features/steps/patroni_api.py:86 1444s Mar 22 12:41:31 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 1444s Mar 22 12:41:31 When I sleep for 2 seconds # features/steps/patroni_api.py:39 1446s Mar 22 12:41:33 Then postgres0 watchdog has been closed # features/steps/watchdog.py:29 1446s Mar 22 12:41:33 1446s Mar 22 12:41:33 Scenario: watchdog is opened and pinged after resume # features/watchdog.feature:24 1446s Mar 22 12:41:33 Given I reset postgres0 watchdog state # features/steps/watchdog.py:39 1446s Mar 22 12:41:33 And I run patronictl.py resume batman # features/steps/patroni_api.py:86 1448s Mar 22 12:41:35 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 1448s Mar 22 12:41:35 And postgres0 watchdog has been pinged after 10 seconds # features/steps/watchdog.py:21 1449s Mar 22 12:41:36 1449s Mar 22 12:41:36 Scenario: watchdog is disabled when shutting down # features/watchdog.feature:30 1449s Mar 22 12:41:36 Given I shut down postgres0 # features/steps/basic_replication.py:29 1451s Mar 22 12:41:38 Then postgres0 watchdog has been closed # features/steps/watchdog.py:29 1451s Mar 22 12:41:38 1451s Mar 22 12:41:38 Scenario: watchdog is triggered if patroni stops responding # features/watchdog.feature:34 1451s Mar 22 12:41:38 Given I reset postgres0 watchdog state # features/steps/watchdog.py:39 1451s Mar 22 12:41:38 And I start postgres0 with watchdog # features/steps/watchdog.py:16 1453s Mar 22 12:41:40 Then postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:101 1454s Mar 22 12:41:41 When postgres0 hangs for 30 seconds # features/steps/watchdog.py:52 1454s Mar 22 12:41:41 Then postgres0 watchdog is triggered after 30 seconds # features/steps/watchdog.py:44 1478s Mar 22 12:42:05 1478s Failed to get list of machines from http://[::1]:2379/v2: MaxRetryError("HTTPConnectionPool(host='::1', port=2379): Max retries exceeded with url: /v2/machines (Caused by NewConnectionError(': Failed to establish a new connection: [Errno 111] Connection refused'))") 1479s Failed to get list of machines from http://[::1]:2379/v2: MaxRetryError("HTTPConnectionPool(host='::1', port=2379): Max retries exceeded with url: /v2/machines (Caused by NewConnectionError(': Failed to establish a new connection: [Errno 111] Connection refused'))") 1479s Failed to get list of machines from http://127.0.0.1:2379/v2: MaxRetryError("HTTPConnectionPool(host='127.0.0.1', port=2379): Max retries exceeded with url: /v2/machines (Caused by NewConnectionError(': Failed to establish a new connection: [Errno 111] Connection refused'))") 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.4828.623995 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.4727.130026 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.4911.268958 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.5774.241364 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.5476.431340 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.6493.304536 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.6012.216308 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.4677.162191 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.6426.399468 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.7627.801826 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.7491.041579 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.6272.111969 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.5999.474042 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.5816.299489 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.7622.775309 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.6821.579549 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.6713.400662 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.4464.482568 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.7279.559192 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.5950.795712 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.6454.095984 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.5722.008689 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.4575.973121 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.7109.404128 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.6867.020689 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.5879.350942 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.5014.117439 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.5549.956673 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.7624.435926 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.5579.211016 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.6274.500646 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.4674.299563 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.5115.169770 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.4637.534626 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.7638.676424 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.4819.663538 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.4871.659191 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.6778.479460 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.7319.243046 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.4492.330580 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.4542.812966 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.6680.189847 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.4420.437988 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.7400.284947 1479s Mar 22 12:42:06 Skipping duplicate data .coverage.autopkgtest.6089.227554 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.5057.967266 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.6149.258666 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.6279.818969 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.7217.950126 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.6116.594246 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.6380.068948 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.5199.456473 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.7066.459423 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.7579.268170 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.6049.734268 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.6527.070432 1479s Mar 22 12:42:06 Combined data file .coverage.autopkgtest.6094.480597 1481s Mar 22 12:42:08 Name Stmts Miss Cover 1481s Mar 22 12:42:08 ------------------------------------------------------------------------------------------------------------- 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/OpenSSL/SSL.py 1072 596 44% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/OpenSSL/__init__.py 4 0 100% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/OpenSSL/_util.py 41 14 66% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/OpenSSL/crypto.py 1225 982 20% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/OpenSSL/version.py 10 0 100% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/_distutils_hack/__init__.py 100 95 5% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/__about__.py 5 0 100% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/__init__.py 3 0 100% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/exceptions.py 26 5 81% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/hazmat/__init__.py 2 0 100% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/hazmat/_oid.py 126 0 100% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/__init__.py 0 0 100% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/__init__.py 0 0 100% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/_conditional.py 73 32 56% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/binding.py 73 13 82% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/__init__.py 0 0 100% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_asymmetric.py 6 0 100% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_cipheralgorithm.py 18 0 100% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_serialization.py 80 35 56% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/__init__.py 0 0 100% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/dh.py 118 47 60% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/dsa.py 134 57 57% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/ec.py 219 56 74% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/ed448.py 45 12 73% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/ed25519.py 45 12 73% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/padding.py 47 20 57% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/rsa.py 184 106 42% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/types.py 19 0 100% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/utils.py 14 5 64% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/x448.py 43 12 72% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/x25519.py 43 12 72% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/__init__.py 4 0 100% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/algorithms.py 129 35 73% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/base.py 138 79 43% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/modes.py 140 58 59% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/constant_time.py 6 3 50% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/hashes.py 128 20 84% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/serialization/__init__.py 5 0 100% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/serialization/base.py 22 12 45% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/serialization/ssh.py 761 605 20% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/utils.py 76 29 62% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/x509/__init__.py 70 0 100% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/x509/base.py 458 224 51% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/x509/certificate_transparency.py 42 0 100% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/x509/extensions.py 1038 569 45% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/x509/general_name.py 166 94 43% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/x509/name.py 233 142 39% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/cryptography/x509/oid.py 3 0 100% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dateutil/__init__.py 5 2 60% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dateutil/_common.py 25 15 40% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dateutil/_version.py 2 0 100% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dateutil/parser/__init__.py 33 4 88% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dateutil/parser/_parser.py 813 436 46% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dateutil/parser/isoparser.py 185 150 19% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dateutil/relativedelta.py 241 206 15% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dateutil/tz/__init__.py 4 0 100% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dateutil/tz/_common.py 161 121 25% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dateutil/tz/_factories.py 49 21 57% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dateutil/tz/tz.py 800 626 22% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dateutil/tz/win.py 153 149 3% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/__init__.py 3 0 100% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/_asyncbackend.py 14 6 57% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/_ddr.py 105 86 18% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/_features.py 44 7 84% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/_immutable_ctx.py 40 5 88% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/asyncbackend.py 44 32 27% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/asyncquery.py 277 242 13% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/edns.py 270 161 40% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/entropy.py 80 49 39% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/enum.py 72 46 36% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/exception.py 60 33 45% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/flags.py 41 14 66% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/grange.py 34 30 12% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/immutable.py 41 30 27% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/inet.py 80 65 19% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/ipv4.py 27 20 26% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/ipv6.py 115 100 13% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/message.py 809 662 18% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/name.py 620 427 31% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/nameserver.py 101 54 47% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/node.py 118 71 40% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/opcode.py 31 7 77% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/query.py 536 462 14% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/quic/__init__.py 26 23 12% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/rcode.py 69 13 81% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/rdata.py 377 269 29% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/rdataclass.py 44 9 80% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/rdataset.py 193 133 31% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/rdatatype.py 214 25 88% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/OPT.py 34 19 44% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/SOA.py 41 26 37% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/TSIG.py 58 42 28% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/ZONEMD.py 43 27 37% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/__init__.py 2 0 100% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/rdtypes/__init__.py 2 0 100% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/rdtypes/svcbbase.py 397 261 34% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/rdtypes/util.py 191 154 19% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/renderer.py 152 118 22% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/resolver.py 899 719 20% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/reversename.py 33 24 27% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/rrset.py 78 56 28% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/serial.py 93 79 15% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/set.py 149 108 28% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/tokenizer.py 335 279 17% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/transaction.py 271 203 25% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/tsig.py 177 122 31% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/ttl.py 45 38 16% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/version.py 7 0 100% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/wire.py 64 42 34% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/xfr.py 148 126 15% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/zone.py 508 383 25% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/zonefile.py 429 380 11% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/dns/zonetypes.py 15 2 87% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/etcd/__init__.py 125 24 81% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/etcd/client.py 380 192 49% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/etcd/lock.py 125 103 18% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/idna/__init__.py 4 0 100% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/idna/core.py 294 259 12% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/idna/idnadata.py 4 0 100% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/idna/intranges.py 30 24 20% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/idna/package_data.py 1 0 100% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/__init__.py 13 2 85% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/__main__.py 199 63 68% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/api.py 768 280 64% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/async_executor.py 96 15 84% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/collections.py 43 5 88% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/config.py 416 91 78% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/config_generator.py 210 153 27% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/daemon.py 76 3 96% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/dcs/__init__.py 667 82 88% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/dcs/etcd.py 602 119 80% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/exceptions.py 16 0 100% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/file_perm.py 43 8 81% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/ha.py 1239 320 74% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/log.py 155 31 80% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/postgresql/__init__.py 826 178 78% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/postgresql/bootstrap.py 253 63 75% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/postgresql/callback_executor.py 55 8 85% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/postgresql/cancellable.py 104 34 67% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/postgresql/citus.py 258 193 25% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/postgresql/config.py 806 217 73% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/postgresql/connection.py 75 1 99% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/postgresql/misc.py 41 8 80% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/postgresql/postmaster.py 170 82 52% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/postgresql/rewind.py 415 166 60% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/postgresql/slots.py 332 34 90% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/postgresql/sync.py 129 19 85% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/postgresql/validator.py 165 25 85% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/psycopg.py 41 15 63% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/request.py 62 6 90% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/tags.py 35 0 100% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/utils.py 318 107 66% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/validator.py 284 194 32% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/version.py 1 0 100% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/watchdog/__init__.py 2 0 100% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/watchdog/base.py 203 42 79% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/patroni/watchdog/linux.py 135 35 74% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/psutil/__init__.py 951 610 36% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/psutil/_common.py 424 207 51% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/psutil/_compat.py 302 263 13% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/psutil/_pslinux.py 1251 915 27% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/psutil/_psposix.py 96 34 65% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/psycopg2/__init__.py 19 3 84% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/psycopg2/_json.py 64 27 58% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/psycopg2/_range.py 269 172 36% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/psycopg2/errors.py 3 2 33% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/psycopg2/extensions.py 91 25 73% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/six.py 504 250 50% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/urllib3/__init__.py 50 14 72% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/urllib3/_base_connection.py 70 52 26% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/urllib3/_collections.py 234 100 57% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/urllib3/_request_methods.py 53 9 83% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/urllib3/_version.py 2 0 100% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/urllib3/connection.py 324 99 69% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/urllib3/connectionpool.py 347 120 65% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/urllib3/contrib/__init__.py 0 0 100% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/urllib3/contrib/pyopenssl.py 257 96 63% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/urllib3/exceptions.py 115 37 68% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/urllib3/fields.py 92 73 21% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/urllib3/filepost.py 37 24 35% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/urllib3/poolmanager.py 233 85 64% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/urllib3/response.py 562 310 45% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/urllib3/util/__init__.py 10 0 100% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/urllib3/util/connection.py 66 42 36% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/urllib3/util/proxy.py 13 6 54% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/urllib3/util/request.py 104 49 53% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/urllib3/util/response.py 32 17 47% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/urllib3/util/retry.py 173 47 73% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/urllib3/util/ssl_.py 177 78 56% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/urllib3/util/ssl_match_hostname.py 66 54 18% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/urllib3/util/ssltransport.py 160 112 30% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/urllib3/util/timeout.py 71 14 80% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/urllib3/util/url.py 205 68 67% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/urllib3/util/util.py 26 10 62% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/urllib3/util/wait.py 49 18 63% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/yaml/__init__.py 165 109 34% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/yaml/composer.py 92 17 82% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/yaml/constructor.py 479 276 42% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/yaml/cyaml.py 46 24 48% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/yaml/dumper.py 23 12 48% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/yaml/emitter.py 838 769 8% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/yaml/error.py 58 42 28% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/yaml/events.py 61 6 90% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/yaml/loader.py 47 24 49% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/yaml/nodes.py 29 7 76% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/yaml/parser.py 352 198 44% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/yaml/reader.py 122 34 72% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/yaml/representer.py 248 176 29% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/yaml/resolver.py 135 76 44% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/yaml/scanner.py 758 437 42% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/yaml/serializer.py 85 70 18% 1481s Mar 22 12:42:08 /usr/lib/python3/dist-packages/yaml/tokens.py 76 17 78% 1481s Mar 22 12:42:08 patroni/__init__.py 13 2 85% 1481s Mar 22 12:42:08 patroni/__main__.py 199 199 0% 1481s Mar 22 12:42:08 patroni/api.py 768 768 0% 1481s Mar 22 12:42:08 patroni/async_executor.py 96 69 28% 1481s Mar 22 12:42:08 patroni/collections.py 43 11 74% 1481s Mar 22 12:42:08 patroni/config.py 416 206 50% 1481s Mar 22 12:42:08 patroni/config_generator.py 210 210 0% 1481s Mar 22 12:42:08 patroni/ctl.py 940 409 56% 1481s Mar 22 12:42:08 patroni/daemon.py 76 76 0% 1481s Mar 22 12:42:08 patroni/dcs/__init__.py 667 266 60% 1481s Mar 22 12:42:08 patroni/dcs/consul.py 482 482 0% 1481s Mar 22 12:42:08 patroni/dcs/etcd3.py 683 683 0% 1481s Mar 22 12:42:08 patroni/dcs/etcd.py 602 224 63% 1481s Mar 22 12:42:08 patroni/dcs/exhibitor.py 60 60 0% 1481s Mar 22 12:42:08 patroni/dcs/kubernetes.py 935 935 0% 1481s Mar 22 12:42:08 patroni/dcs/raft.py 318 318 0% 1481s Mar 22 12:42:08 patroni/dcs/zookeeper.py 287 287 0% 1481s Mar 22 12:42:08 patroni/exceptions.py 16 1 94% 1481s Mar 22 12:42:08 patroni/file_perm.py 43 15 65% 1481s Mar 22 12:42:08 patroni/ha.py 1239 1239 0% 1481s Mar 22 12:42:08 patroni/log.py 155 155 0% 1481s Mar 22 12:42:08 patroni/postgresql/__init__.py 826 655 21% 1481s Mar 22 12:42:08 patroni/postgresql/bootstrap.py 253 224 11% 1481s Mar 22 12:42:08 patroni/postgresql/callback_executor.py 55 34 38% 1481s Mar 22 12:42:08 patroni/postgresql/cancellable.py 104 84 19% 1481s Mar 22 12:42:08 patroni/postgresql/citus.py 258 217 16% 1481s Mar 22 12:42:08 patroni/postgresql/config.py 806 693 14% 1481s Mar 22 12:42:08 patroni/postgresql/connection.py 75 50 33% 1481s Mar 22 12:42:08 patroni/postgresql/misc.py 41 29 29% 1481s Mar 22 12:42:08 patroni/postgresql/postmaster.py 170 139 18% 1481s Mar 22 12:42:08 patroni/postgresql/rewind.py 415 415 0% 1481s Mar 22 12:42:08 patroni/postgresql/slots.py 332 285 14% 1481s Mar 22 12:42:08 patroni/postgresql/sync.py 129 96 26% 1481s Mar 22 12:42:08 patroni/postgresql/validator.py 165 53 68% 1481s Mar 22 12:42:08 patroni/psycopg.py 41 27 34% 1481s Mar 22 12:42:08 patroni/raft_controller.py 22 22 0% 1481s Mar 22 12:42:08 patroni/request.py 62 6 90% 1481s Mar 22 12:42:08 patroni/scripts/__init__.py 0 0 100% 1481s Mar 22 12:42:08 patroni/scripts/aws.py 59 59 0% 1481s Mar 22 12:42:08 patroni/scripts/wale_restore.py 207 207 0% 1481s Mar 22 12:42:08 patroni/tags.py 35 10 71% 1481s Mar 22 12:42:08 patroni/utils.py 318 169 47% 1481s Mar 22 12:42:08 patroni/validator.py 284 201 29% 1481s Mar 22 12:42:08 patroni/version.py 1 0 100% 1481s Mar 22 12:42:08 patroni/watchdog/__init__.py 2 2 0% 1481s Mar 22 12:42:08 patroni/watchdog/base.py 203 203 0% 1481s Mar 22 12:42:08 patroni/watchdog/linux.py 135 135 0% 1481s Mar 22 12:42:08 ------------------------------------------------------------------------------------------------------------- 1481s Mar 22 12:42:08 TOTAL 52899 32167 39% 1481s Mar 22 12:42:08 11 features passed, 0 failed, 1 skipped 1481s Mar 22 12:42:08 53 scenarios passed, 0 failed, 5 skipped 1481s Mar 22 12:42:08 511 steps passed, 0 failed, 61 skipped, 0 undefined 1481s Mar 22 12:42:08 Took 8m17.768s 1481s ### End 16 acceptance-etcd ### 1481s + echo '### End 16 acceptance-etcd ###' 1481s + rm -f '/tmp/pgpass?' 1481s ++ id -u 1481s + '[' 0 -eq 0 ']' 1481s + '[' -x /etc/init.d/zookeeper ']' 1482s autopkgtest [12:42:09]: test acceptance-etcd: -----------------------] 1482s acceptance-etcd PASS 1482s autopkgtest [12:42:09]: test acceptance-etcd: - - - - - - - - - - results - - - - - - - - - - 1483s autopkgtest [12:42:10]: test acceptance-consul: preparing testbed 1568s autopkgtest [12:43:35]: testbed dpkg architecture: s390x 1569s autopkgtest [12:43:36]: testbed apt version: 2.7.12 1569s autopkgtest [12:43:36]: @@@@@@@@@@@@@@@@@@@@ test bed setup 1569s Get:1 http://ftpmaster.internal/ubuntu noble-proposed InRelease [117 kB] 1570s Get:2 http://ftpmaster.internal/ubuntu noble-proposed/multiverse Sources [54.0 kB] 1570s Get:3 http://ftpmaster.internal/ubuntu noble-proposed/main Sources [496 kB] 1570s Get:4 http://ftpmaster.internal/ubuntu noble-proposed/restricted Sources [6540 B] 1570s Get:5 http://ftpmaster.internal/ubuntu noble-proposed/universe Sources [3808 kB] 1570s Get:6 http://ftpmaster.internal/ubuntu noble-proposed/main s390x Packages [665 kB] 1570s Get:7 http://ftpmaster.internal/ubuntu noble-proposed/main s390x c-n-f Metadata [3032 B] 1570s Get:8 http://ftpmaster.internal/ubuntu noble-proposed/restricted s390x Packages [1372 B] 1570s Get:9 http://ftpmaster.internal/ubuntu noble-proposed/restricted s390x c-n-f Metadata [116 B] 1570s Get:10 http://ftpmaster.internal/ubuntu noble-proposed/universe s390x Packages [3992 kB] 1571s Get:11 http://ftpmaster.internal/ubuntu noble-proposed/universe s390x c-n-f Metadata [7292 B] 1571s Get:12 http://ftpmaster.internal/ubuntu noble-proposed/multiverse s390x Packages [45.1 kB] 1571s Get:13 http://ftpmaster.internal/ubuntu noble-proposed/multiverse s390x c-n-f Metadata [116 B] 1573s Fetched 9196 kB in 3s (3668 kB/s) 1573s Reading package lists... 1575s Reading package lists... 1575s Building dependency tree... 1575s Reading state information... 1575s Calculating upgrade... 1576s The following packages will be upgraded: 1576s cloud-init debianutils fonts-ubuntu-console python3-markupsafe 1576s 4 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1576s Need to get 719 kB of archives. 1576s After this operation, 11.3 kB disk space will be freed. 1576s Get:1 http://ftpmaster.internal/ubuntu noble/main s390x debianutils s390x 5.17 [90.1 kB] 1576s Get:2 http://ftpmaster.internal/ubuntu noble/main s390x fonts-ubuntu-console all 0.869+git20240321-0ubuntu1 [18.7 kB] 1576s Get:3 http://ftpmaster.internal/ubuntu noble/main s390x python3-markupsafe s390x 2.1.5-1build1 [12.8 kB] 1576s Get:4 http://ftpmaster.internal/ubuntu noble/main s390x cloud-init all 24.1.2-0ubuntu1 [597 kB] 1576s Preconfiguring packages ... 1576s Fetched 719 kB in 1s (1402 kB/s) 1576s (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 ... 52171 files and directories currently installed.) 1576s Preparing to unpack .../debianutils_5.17_s390x.deb ... 1576s Unpacking debianutils (5.17) over (5.16) ... 1576s Setting up debianutils (5.17) ... 1577s (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 ... 52171 files and directories currently installed.) 1577s Preparing to unpack .../fonts-ubuntu-console_0.869+git20240321-0ubuntu1_all.deb ... 1577s Unpacking fonts-ubuntu-console (0.869+git20240321-0ubuntu1) over (0.869-0ubuntu1) ... 1577s Preparing to unpack .../python3-markupsafe_2.1.5-1build1_s390x.deb ... 1577s Unpacking python3-markupsafe (2.1.5-1build1) over (2.1.5-1) ... 1577s Preparing to unpack .../cloud-init_24.1.2-0ubuntu1_all.deb ... 1577s Unpacking cloud-init (24.1.2-0ubuntu1) over (24.1.1-0ubuntu1) ... 1577s Setting up fonts-ubuntu-console (0.869+git20240321-0ubuntu1) ... 1577s Setting up cloud-init (24.1.2-0ubuntu1) ... 1578s Setting up python3-markupsafe (2.1.5-1build1) ... 1578s Processing triggers for man-db (2.12.0-3) ... 1579s Processing triggers for rsyslog (8.2312.0-3ubuntu3) ... 1579s Reading package lists... 1580s Building dependency tree... 1580s Reading state information... 1580s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1580s Unknown architecture, assuming PC-style ttyS0 1580s sh: Attempting to set up Debian/Ubuntu apt sources automatically 1580s sh: Distribution appears to be Ubuntu 1581s Reading package lists... 1581s Building dependency tree... 1581s Reading state information... 1581s eatmydata is already the newest version (131-1). 1581s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1581s Reading package lists... 1581s Building dependency tree... 1581s Reading state information... 1582s dbus is already the newest version (1.14.10-4ubuntu1). 1582s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1582s Reading package lists... 1582s Building dependency tree... 1582s Reading state information... 1582s rng-tools-debian is already the newest version (2.4). 1582s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1582s Reading package lists... 1582s Building dependency tree... 1582s Reading state information... 1582s The following packages will be REMOVED: 1582s cloud-init* python3-configobj* python3-debconf* 1582s 0 upgraded, 0 newly installed, 3 to remove and 0 not upgraded. 1582s After this operation, 3256 kB disk space will be freed. 1582s (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 ... 52170 files and directories currently installed.) 1582s Removing cloud-init (24.1.2-0ubuntu1) ... 1583s Removing python3-configobj (5.0.8-3) ... 1583s Removing python3-debconf (1.5.86) ... 1583s Processing triggers for man-db (2.12.0-3) ... 1583s (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 ... 51781 files and directories currently installed.) 1583s Purging configuration files for cloud-init (24.1.2-0ubuntu1) ... 1584s dpkg: warning: while removing cloud-init, directory '/etc/cloud/cloud.cfg.d' not empty so not removed 1584s Processing triggers for rsyslog (8.2312.0-3ubuntu3) ... 1584s invoke-rc.d: policy-rc.d denied execution of try-restart. 1584s Reading package lists... 1584s Building dependency tree... 1584s Reading state information... 1584s linux-generic is already the newest version (6.8.0-11.11+1). 1584s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1585s Hit:1 http://ftpmaster.internal/ubuntu noble InRelease 1585s Hit:2 http://ftpmaster.internal/ubuntu noble-updates InRelease 1585s Hit:3 http://ftpmaster.internal/ubuntu noble-security InRelease 1587s Reading package lists... 1587s Reading package lists... 1587s Building dependency tree... 1587s Reading state information... 1587s Calculating upgrade... 1587s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1587s Reading package lists... 1587s Building dependency tree... 1587s Reading state information... 1587s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1588s autopkgtest [12:43:55]: rebooting testbed after setup commands that affected boot 1607s Reading package lists... 1607s Building dependency tree... 1607s Reading state information... 1607s Starting pkgProblemResolver with broken count: 1 1607s Starting 2 pkgProblemResolver with broken count: 1 1607s Investigating (0) autopkgtest-satdep:s390x < none -> 0 @un puN Ib > 1607s Broken autopkgtest-satdep:s390x Depends on consul:s390x < none @un H > 1607s Broken autopkgtest-satdep:s390x Depends on moreutils:s390x < none | 0.69-1 @un uH > 1607s Considering moreutils:s390x 1 as a solution to autopkgtest-satdep:s390x 9998 1607s Re-Instated libio-pty-perl:s390x 1607s Re-Instated libipc-run-perl:s390x 1607s Re-Instated libtime-duration-perl:s390x 1607s Re-Instated libtimedate-perl:s390x 1607s Re-Instated moreutils:s390x 1607s Broken autopkgtest-satdep:s390x Depends on postgresql:s390x < none | 16+257 @un uH > 1607s Considering postgresql:s390x 1 as a solution to autopkgtest-satdep:s390x 9998 1607s Re-Instated libpq5:s390x 1607s Re-Instated postgresql-client-common:s390x 1607s Re-Instated postgresql-client-16:s390x 1607s Re-Instated libjson-perl:s390x 1607s Re-Instated ssl-cert:s390x 1607s Re-Instated postgresql-common:s390x 1607s Re-Instated libllvm17:s390x 1607s Re-Instated libxslt1.1:s390x 1607s Re-Instated postgresql-16:s390x 1607s Re-Instated postgresql:s390x 1607s Broken autopkgtest-satdep:s390x Depends on python3-behave:s390x < none | 1.2.6-5 @un uH > 1607s Considering python3-behave:s390x 1 as a solution to autopkgtest-satdep:s390x 9998 1607s Re-Instated python3-parse:s390x 1607s Re-Instated python3-parse-type:s390x 1607s Re-Instated python3-behave:s390x 1607s Broken autopkgtest-satdep:s390x Depends on python3-consul:s390x < none | 0.7.1-2 @un uH > (>= 0.7.0) 1607s Considering python3-consul:s390x 0 as a solution to autopkgtest-satdep:s390x 9998 1607s Re-Instated python3-consul:s390x 1607s Broken autopkgtest-satdep:s390x Depends on python3-coverage:s390x < none | 7.3.2-0ubuntu1 @un uH > 1607s Considering python3-coverage:s390x 1 as a solution to autopkgtest-satdep:s390x 9998 1607s Re-Instated python3-coverage:s390x 1607s Broken autopkgtest-satdep:s390x Depends on patroni:s390x < none | 3.2.2-2 @un uH > 1607s Considering patroni:s390x 1 as a solution to autopkgtest-satdep:s390x 9998 1607s Re-Instated python3-cdiff:s390x 1607s Re-Instated python3-colorama:s390x 1607s Re-Instated python3-click:s390x 1607s Re-Instated python3-dateutil:s390x 1607s Re-Instated python3-wcwidth:s390x 1607s Re-Instated python3-prettytable:s390x 1607s Re-Instated python3-psutil:s390x 1607s Re-Instated python3-psycopg2:s390x 1607s Re-Instated patroni:s390x 1607s Broken autopkgtest-satdep:s390x Depends on patroni-doc:s390x < none | 3.2.2-2 @un uH > 1607s Considering patroni-doc:s390x 1 as a solution to autopkgtest-satdep:s390x 9998 1607s Re-Instated libjs-jquery:s390x 1607s Re-Instated libjs-underscore:s390x 1607s Re-Instated libjs-sphinxdoc:s390x 1607s Re-Instated fonts-font-awesome:s390x 1607s Re-Instated fonts-lato:s390x 1607s Re-Instated sphinx-rtd-theme-common:s390x 1607s Re-Instated patroni-doc:s390x 1607s Done 1607s Some packages could not be installed. This may mean that you have 1607s requested an impossible situation or if you are using the unstable 1607s distribution that some required packages have not yet been created 1607s or been moved out of Incoming. 1607s The following information may help to resolve the situation: 1607s 1607s The following packages have unmet dependencies: 1607s autopkgtest-satdep : Depends: consul but it is not installable 1607s E: Unable to correct problems, you have held broken packages. 1607s autopkgtest: WARNING: Test dependencies are unsatisfiable with using apt pinning. Retrying with using all packages from noble-proposed 1608s Reading package lists... 1608s Building dependency tree... 1608s Reading state information... 1608s Starting pkgProblemResolver with broken count: 1 1608s Starting 2 pkgProblemResolver with broken count: 1 1608s Investigating (0) autopkgtest-satdep:s390x < none -> 0 @un puN Ib > 1608s Broken autopkgtest-satdep:s390x Depends on consul:s390x < none @un H > 1608s Broken autopkgtest-satdep:s390x Depends on moreutils:s390x < none | 0.69-1 @un uH > 1608s Considering moreutils:s390x 1 as a solution to autopkgtest-satdep:s390x 9998 1608s Re-Instated libio-pty-perl:s390x 1608s Re-Instated libipc-run-perl:s390x 1608s Re-Instated libtime-duration-perl:s390x 1608s Re-Instated libtimedate-perl:s390x 1608s Re-Instated moreutils:s390x 1608s Broken autopkgtest-satdep:s390x Depends on postgresql:s390x < none | 16+257 @un uH > 1608s Considering postgresql:s390x 1 as a solution to autopkgtest-satdep:s390x 9998 1608s Re-Instated libpq5:s390x 1608s Re-Instated postgresql-client-common:s390x 1608s Re-Instated postgresql-client-16:s390x 1608s Re-Instated libjson-perl:s390x 1608s Re-Instated ssl-cert:s390x 1608s Re-Instated postgresql-common:s390x 1608s Re-Instated libllvm17:s390x 1608s Re-Instated libxslt1.1:s390x 1608s Re-Instated postgresql-16:s390x 1608s Re-Instated postgresql:s390x 1608s Broken autopkgtest-satdep:s390x Depends on python3-behave:s390x < none | 1.2.6-5 @un uH > 1608s Considering python3-behave:s390x 1 as a solution to autopkgtest-satdep:s390x 9998 1608s Re-Instated python3-parse:s390x 1608s Re-Instated python3-parse-type:s390x 1608s Re-Instated python3-behave:s390x 1608s Broken autopkgtest-satdep:s390x Depends on python3-consul:s390x < none | 0.7.1-2 @un uH > (>= 0.7.0) 1608s Considering python3-consul:s390x 0 as a solution to autopkgtest-satdep:s390x 9998 1608s Re-Instated python3-consul:s390x 1608s Broken autopkgtest-satdep:s390x Depends on python3-coverage:s390x < none | 7.3.2-0ubuntu1 @un uH > 1608s Considering python3-coverage:s390x 1 as a solution to autopkgtest-satdep:s390x 9998 1608s Re-Instated python3-coverage:s390x 1608s Broken autopkgtest-satdep:s390x Depends on patroni:s390x < none | 3.2.2-2 @un uH > 1608s Considering patroni:s390x 1 as a solution to autopkgtest-satdep:s390x 9998 1608s Re-Instated python3-cdiff:s390x 1608s Re-Instated python3-colorama:s390x 1608s Re-Instated python3-click:s390x 1608s Re-Instated python3-dateutil:s390x 1608s Re-Instated python3-wcwidth:s390x 1608s Re-Instated python3-prettytable:s390x 1608s Re-Instated python3-psutil:s390x 1608s Re-Instated python3-psycopg2:s390x 1608s Re-Instated patroni:s390x 1608s Broken autopkgtest-satdep:s390x Depends on patroni-doc:s390x < none | 3.2.2-2 @un uH > 1608s Considering patroni-doc:s390x 1 as a solution to autopkgtest-satdep:s390x 9998 1608s Re-Instated libjs-jquery:s390x 1608s Re-Instated libjs-underscore:s390x 1608s Re-Instated libjs-sphinxdoc:s390x 1608s Re-Instated fonts-font-awesome:s390x 1608s Re-Instated fonts-lato:s390x 1608s Re-Instated sphinx-rtd-theme-common:s390x 1608s Re-Instated patroni-doc:s390x 1608s Done 1608s Some packages could not be installed. This may mean that you have 1608s requested an impossible situation or if you are using the unstable 1608s distribution that some required packages have not yet been created 1608s or been moved out of Incoming. 1608s The following information may help to resolve the situation: 1608s 1608s The following packages have unmet dependencies: 1608s autopkgtest-satdep : Depends: consul but it is not installable 1608s E: Unable to correct problems, you have held broken packages. 1608s autopkgtest: WARNING: Test dependencies are unsatisfiable - calling apt install on test deps directly for further data about failing dependencies in test logs 1609s acceptance-consul SKIP installation fails and skip-not-installable set 1609s autopkgtest [12:44:16]: test acceptance-zookeeper: preparing testbed 1749s autopkgtest [12:46:36]: testbed dpkg architecture: s390x 1749s autopkgtest [12:46:36]: testbed apt version: 2.7.12 1749s autopkgtest [12:46:36]: @@@@@@@@@@@@@@@@@@@@ test bed setup 1750s Get:1 http://ftpmaster.internal/ubuntu noble-proposed InRelease [117 kB] 1750s Get:2 http://ftpmaster.internal/ubuntu noble-proposed/universe Sources [3808 kB] 1751s Get:3 http://ftpmaster.internal/ubuntu noble-proposed/restricted Sources [6540 B] 1751s Get:4 http://ftpmaster.internal/ubuntu noble-proposed/multiverse Sources [54.0 kB] 1751s Get:5 http://ftpmaster.internal/ubuntu noble-proposed/main Sources [496 kB] 1752s Get:6 http://ftpmaster.internal/ubuntu noble-proposed/main s390x Packages [665 kB] 1752s Get:7 http://ftpmaster.internal/ubuntu noble-proposed/main s390x c-n-f Metadata [3032 B] 1752s Get:8 http://ftpmaster.internal/ubuntu noble-proposed/restricted s390x Packages [1372 B] 1752s Get:9 http://ftpmaster.internal/ubuntu noble-proposed/restricted s390x c-n-f Metadata [116 B] 1752s Get:10 http://ftpmaster.internal/ubuntu noble-proposed/universe s390x Packages [3992 kB] 1752s Get:11 http://ftpmaster.internal/ubuntu noble-proposed/universe s390x c-n-f Metadata [7292 B] 1752s Get:12 http://ftpmaster.internal/ubuntu noble-proposed/multiverse s390x Packages [45.1 kB] 1752s Get:13 http://ftpmaster.internal/ubuntu noble-proposed/multiverse s390x c-n-f Metadata [116 B] 1754s Fetched 9196 kB in 3s (2710 kB/s) 1754s Reading package lists... 1756s Reading package lists... 1756s Building dependency tree... 1756s Reading state information... 1757s Calculating upgrade... 1757s The following packages will be upgraded: 1757s cloud-init debianutils fonts-ubuntu-console python3-markupsafe 1757s 4 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1757s Need to get 719 kB of archives. 1757s After this operation, 11.3 kB disk space will be freed. 1757s Get:1 http://ftpmaster.internal/ubuntu noble/main s390x debianutils s390x 5.17 [90.1 kB] 1757s Get:2 http://ftpmaster.internal/ubuntu noble/main s390x fonts-ubuntu-console all 0.869+git20240321-0ubuntu1 [18.7 kB] 1757s Get:3 http://ftpmaster.internal/ubuntu noble/main s390x python3-markupsafe s390x 2.1.5-1build1 [12.8 kB] 1757s Get:4 http://ftpmaster.internal/ubuntu noble/main s390x cloud-init all 24.1.2-0ubuntu1 [597 kB] 1758s Preconfiguring packages ... 1758s Fetched 719 kB in 1s (1169 kB/s) 1758s (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 ... 52171 files and directories currently installed.) 1758s Preparing to unpack .../debianutils_5.17_s390x.deb ... 1758s Unpacking debianutils (5.17) over (5.16) ... 1758s Setting up debianutils (5.17) ... 1758s (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 ... 52171 files and directories currently installed.) 1758s Preparing to unpack .../fonts-ubuntu-console_0.869+git20240321-0ubuntu1_all.deb ... 1758s Unpacking fonts-ubuntu-console (0.869+git20240321-0ubuntu1) over (0.869-0ubuntu1) ... 1758s Preparing to unpack .../python3-markupsafe_2.1.5-1build1_s390x.deb ... 1758s Unpacking python3-markupsafe (2.1.5-1build1) over (2.1.5-1) ... 1758s Preparing to unpack .../cloud-init_24.1.2-0ubuntu1_all.deb ... 1758s Unpacking cloud-init (24.1.2-0ubuntu1) over (24.1.1-0ubuntu1) ... 1758s Setting up fonts-ubuntu-console (0.869+git20240321-0ubuntu1) ... 1758s Setting up cloud-init (24.1.2-0ubuntu1) ... 1760s Setting up python3-markupsafe (2.1.5-1build1) ... 1760s Processing triggers for man-db (2.12.0-3) ... 1760s Processing triggers for rsyslog (8.2312.0-3ubuntu3) ... 1761s Reading package lists... 1761s Building dependency tree... 1761s Reading state information... 1761s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1761s Unknown architecture, assuming PC-style ttyS0 1761s sh: Attempting to set up Debian/Ubuntu apt sources automatically 1761s sh: Distribution appears to be Ubuntu 1762s Reading package lists... 1762s Building dependency tree... 1762s Reading state information... 1763s eatmydata is already the newest version (131-1). 1763s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1763s Reading package lists... 1763s Building dependency tree... 1763s Reading state information... 1763s dbus is already the newest version (1.14.10-4ubuntu1). 1763s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1763s Reading package lists... 1763s Building dependency tree... 1763s Reading state information... 1763s rng-tools-debian is already the newest version (2.4). 1763s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1763s Reading package lists... 1763s Building dependency tree... 1763s Reading state information... 1764s The following packages will be REMOVED: 1764s cloud-init* python3-configobj* python3-debconf* 1764s 0 upgraded, 0 newly installed, 3 to remove and 0 not upgraded. 1764s After this operation, 3256 kB disk space will be freed. 1764s (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 ... 52170 files and directories currently installed.) 1764s Removing cloud-init (24.1.2-0ubuntu1) ... 1764s Removing python3-configobj (5.0.8-3) ... 1764s Removing python3-debconf (1.5.86) ... 1764s Processing triggers for man-db (2.12.0-3) ... 1765s (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 ... 51781 files and directories currently installed.) 1765s Purging configuration files for cloud-init (24.1.2-0ubuntu1) ... 1765s dpkg: warning: while removing cloud-init, directory '/etc/cloud/cloud.cfg.d' not empty so not removed 1765s Processing triggers for rsyslog (8.2312.0-3ubuntu3) ... 1765s invoke-rc.d: policy-rc.d denied execution of try-restart. 1765s Reading package lists... 1766s Building dependency tree... 1766s Reading state information... 1766s linux-generic is already the newest version (6.8.0-11.11+1). 1766s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1766s Hit:1 http://ftpmaster.internal/ubuntu noble InRelease 1766s Hit:2 http://ftpmaster.internal/ubuntu noble-updates InRelease 1766s Hit:3 http://ftpmaster.internal/ubuntu noble-security InRelease 1768s Reading package lists... 1768s Reading package lists... 1768s Building dependency tree... 1768s Reading state information... 1768s Calculating upgrade... 1768s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1769s Reading package lists... 1769s Building dependency tree... 1769s Reading state information... 1769s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1769s autopkgtest [12:46:56]: rebooting testbed after setup commands that affected boot 1789s Reading package lists... 1790s Building dependency tree... 1790s Reading state information... 1790s Starting pkgProblemResolver with broken count: 0 1790s Starting 2 pkgProblemResolver with broken count: 0 1790s Done 1790s The following additional packages will be installed: 1790s adwaita-icon-theme at-spi2-common ca-certificates-java default-jre 1790s default-jre-headless fontconfig fontconfig-config fonts-dejavu-core 1790s fonts-dejavu-mono fonts-font-awesome fonts-lato gtk-update-icon-cache 1790s hicolor-icon-theme humanity-icon-theme java-common junit4 libactivation-java 1790s libapache-pom-java libapr1 libasm-java libasound2 libasound2-data 1790s libatinject-jsr330-api-java libatk1.0-0 libavahi-client3 1790s libavahi-common-data libavahi-common3 libc-ares2 libcairo2 1790s libcommons-cli-java libcommons-io-java libcommons-logging-java 1790s libcommons-parent-java libcups2 libdatrie1 libdeflate0 libdrm-amdgpu1 1790s libdrm-nouveau2 libdrm-radeon1 libdropwizard-metrics-java 1790s libeclipse-jdt-core-java libel-api-java liberror-prone-java libev4 1790s libfindbugs-annotations-java libfontconfig1 libfreetype6 libgdk-pixbuf-2.0-0 1790s libgdk-pixbuf2.0-common libgif7 libgl1 libgl1-mesa-dri libglapi-mesa 1790s libglvnd0 libglx-mesa0 libglx0 libgraphite2-3 libgtk2.0-0 libgtk2.0-common 1790s libguava-java libhamcrest-java libharfbuzz0b libio-pty-perl libipc-run-perl 1790s libjackson2-annotations-java libjackson2-core-java libjackson2-databind-java 1790s libjaxb-api-java libjbig0 libjctools-java libjetty9-extra-java 1790s libjetty9-java libjffi-java libjffi-jni libjnr-constants-java 1790s libjnr-enxio-java libjnr-ffi-java libjnr-posix-java libjnr-unixsocket-java 1790s libjnr-x86asm-java libjpeg-turbo8 libjpeg8 libjs-jquery libjs-sphinxdoc 1790s libjs-underscore libjson-perl libjsp-api-java libjsr305-java liblcms2-2 1790s libllvm17 liblog4j1.2-java libmail-java libnetty-java libnetty-tcnative-java 1790s libnetty-tcnative-jni libpango-1.0-0 libpangocairo-1.0-0 libpangoft2-1.0-0 1790s libpcsclite1 libpixman-1-0 libpq5 libservlet-api-java libsharpyuv0 1790s libslf4j-java libsnappy-java libsnappy-jni libsnappy1v5 libspring-beans-java 1790s libspring-core-java libtaglibs-standard-impl-java 1790s libtaglibs-standard-spec-java libthai-data libthai0 libtiff6 1790s libtime-duration-perl libtimedate-perl libtomcat9-java libvulkan1 libwebp7 1790s libwebsocket-api-java libx11-xcb1 libxcb-dri2-0 libxcb-dri3-0 libxcb-glx0 1790s libxcb-present0 libxcb-randr0 libxcb-render0 libxcb-shm0 libxcb-sync1 1790s libxcb-xfixes0 libxcomposite1 libxcursor1 libxdamage1 libxfixes3 libxi6 1790s libxinerama1 libxrandr2 libxrender1 libxshmfence1 libxslt1.1 libxtst6 1790s libxxf86vm1 libzookeeper-java moreutils openjdk-21-jre 1790s openjdk-21-jre-headless patroni patroni-doc postgresql postgresql-16 1790s postgresql-client-16 postgresql-client-common postgresql-common 1790s python3-behave python3-cdiff python3-click python3-colorama python3-coverage 1790s python3-dateutil python3-dnspython python3-eventlet python3-gevent 1790s python3-greenlet python3-kazoo python3-kerberos python3-parse 1790s python3-parse-type python3-prettytable python3-psutil python3-psycopg2 1790s python3-pure-sasl python3-wcwidth python3-zope.event python3-zope.interface 1790s sphinx-rtd-theme-common ssl-cert ubuntu-mono x11-common zookeeper zookeeperd 1790s Suggested packages: 1790s libasound2-plugins alsa-utils libatinject-jsr330-api-java-doc 1790s libcommons-io-java-doc libavalon-framework-java libexcalibur-logkit-java 1790s cups-common gvfs libjackson2-annotations-java-doc jetty9 libjnr-ffi-java-doc 1790s libjnr-posix-java-doc libjsr305-java-doc liblcms2-utils liblog4j1.2-java-doc 1790s libmail-java-doc libbcpkix-java libcompress-lzf-java libjzlib-java 1790s liblog4j2-java libprotobuf-java pcscd libcglib-java libyaml-snake-java 1790s libaspectj-java libcommons-collections3-java tomcat9 libzookeeper-java-doc 1790s libnss-mdns fonts-dejavu-extra fonts-ipafont-gothic fonts-ipafont-mincho 1790s fonts-wqy-microhei | fonts-wqy-zenhei fonts-indic vip-manager haproxy 1790s postgresql-doc postgresql-doc-16 python-coverage-doc python3-trio 1790s python3-aioquic python3-h2 python3-httpx python3-httpcore 1790s python-eventlet-doc python-gevent-doc python-greenlet-dev 1790s python-greenlet-doc python-kazoo-doc python-psycopg2-doc 1790s Recommended packages: 1790s librsvg2-common alsa-ucm-conf alsa-topology-conf libgdk-pixbuf2.0-bin 1790s libgl1-amber-dri libgail-common libgtk2.0-bin javascript-common 1790s libjson-xs-perl mesa-vulkan-drivers | vulkan-icd libatk-wrapper-java-jni 1790s fonts-dejavu-extra 1790s The following NEW packages will be installed: 1790s adwaita-icon-theme at-spi2-common autopkgtest-satdep ca-certificates-java 1790s default-jre default-jre-headless fontconfig fontconfig-config 1790s fonts-dejavu-core fonts-dejavu-mono fonts-font-awesome fonts-lato 1790s gtk-update-icon-cache hicolor-icon-theme humanity-icon-theme java-common 1790s junit4 libactivation-java libapache-pom-java libapr1 libasm-java libasound2 1790s libasound2-data libatinject-jsr330-api-java libatk1.0-0 libavahi-client3 1790s libavahi-common-data libavahi-common3 libc-ares2 libcairo2 1790s libcommons-cli-java libcommons-io-java libcommons-logging-java 1790s libcommons-parent-java libcups2 libdatrie1 libdeflate0 libdrm-amdgpu1 1790s libdrm-nouveau2 libdrm-radeon1 libdropwizard-metrics-java 1790s libeclipse-jdt-core-java libel-api-java liberror-prone-java libev4 1790s libfindbugs-annotations-java libfontconfig1 libfreetype6 libgdk-pixbuf-2.0-0 1790s libgdk-pixbuf2.0-common libgif7 libgl1 libgl1-mesa-dri libglapi-mesa 1790s libglvnd0 libglx-mesa0 libglx0 libgraphite2-3 libgtk2.0-0 libgtk2.0-common 1790s libguava-java libhamcrest-java libharfbuzz0b libio-pty-perl libipc-run-perl 1790s libjackson2-annotations-java libjackson2-core-java libjackson2-databind-java 1790s libjaxb-api-java libjbig0 libjctools-java libjetty9-extra-java 1790s libjetty9-java libjffi-java libjffi-jni libjnr-constants-java 1790s libjnr-enxio-java libjnr-ffi-java libjnr-posix-java libjnr-unixsocket-java 1790s libjnr-x86asm-java libjpeg-turbo8 libjpeg8 libjs-jquery libjs-sphinxdoc 1790s libjs-underscore libjson-perl libjsp-api-java libjsr305-java liblcms2-2 1790s libllvm17 liblog4j1.2-java libmail-java libnetty-java libnetty-tcnative-java 1790s libnetty-tcnative-jni libpango-1.0-0 libpangocairo-1.0-0 libpangoft2-1.0-0 1790s libpcsclite1 libpixman-1-0 libpq5 libservlet-api-java libsharpyuv0 1790s libslf4j-java libsnappy-java libsnappy-jni libsnappy1v5 libspring-beans-java 1790s libspring-core-java libtaglibs-standard-impl-java 1790s libtaglibs-standard-spec-java libthai-data libthai0 libtiff6 1790s libtime-duration-perl libtimedate-perl libtomcat9-java libvulkan1 libwebp7 1790s libwebsocket-api-java libx11-xcb1 libxcb-dri2-0 libxcb-dri3-0 libxcb-glx0 1790s libxcb-present0 libxcb-randr0 libxcb-render0 libxcb-shm0 libxcb-sync1 1790s libxcb-xfixes0 libxcomposite1 libxcursor1 libxdamage1 libxfixes3 libxi6 1790s libxinerama1 libxrandr2 libxrender1 libxshmfence1 libxslt1.1 libxtst6 1790s libxxf86vm1 libzookeeper-java moreutils openjdk-21-jre 1790s openjdk-21-jre-headless patroni patroni-doc postgresql postgresql-16 1790s postgresql-client-16 postgresql-client-common postgresql-common 1790s python3-behave python3-cdiff python3-click python3-colorama python3-coverage 1790s python3-dateutil python3-dnspython python3-eventlet python3-gevent 1790s python3-greenlet python3-kazoo python3-kerberos python3-parse 1790s python3-parse-type python3-prettytable python3-psutil python3-psycopg2 1790s python3-pure-sasl python3-wcwidth python3-zope.event python3-zope.interface 1790s sphinx-rtd-theme-common ssl-cert ubuntu-mono x11-common zookeeper zookeeperd 1790s 0 upgraded, 181 newly installed, 0 to remove and 0 not upgraded. 1790s Need to get 157 MB/157 MB of archives. 1790s After this operation, 585 MB of additional disk space will be used. 1790s Get:1 /tmp/autopkgtest.yyH96f/5-autopkgtest-satdep.deb autopkgtest-satdep s390x 0 [764 B] 1790s Get:2 http://ftpmaster.internal/ubuntu noble/main s390x fonts-lato all 2.015-1 [2781 kB] 1791s Get:3 http://ftpmaster.internal/ubuntu noble/main s390x libjson-perl all 4.10000-1 [81.9 kB] 1791s Get:4 http://ftpmaster.internal/ubuntu noble/main s390x postgresql-client-common all 257 [36.2 kB] 1791s Get:5 http://ftpmaster.internal/ubuntu noble/main s390x ssl-cert all 1.1.2ubuntu1 [17.8 kB] 1791s Get:6 http://ftpmaster.internal/ubuntu noble/main s390x postgresql-common all 257 [162 kB] 1791s Get:7 http://ftpmaster.internal/ubuntu noble/main s390x ca-certificates-java all 20240118 [11.6 kB] 1791s Get:8 http://ftpmaster.internal/ubuntu noble/main s390x java-common all 0.75+exp1 [6798 B] 1791s Get:9 http://ftpmaster.internal/ubuntu noble/main s390x libavahi-common-data s390x 0.8-13ubuntu2 [29.5 kB] 1791s Get:10 http://ftpmaster.internal/ubuntu noble/main s390x libavahi-common3 s390x 0.8-13ubuntu2 [23.8 kB] 1791s Get:11 http://ftpmaster.internal/ubuntu noble/main s390x libavahi-client3 s390x 0.8-13ubuntu2 [26.7 kB] 1791s Get:12 http://ftpmaster.internal/ubuntu noble/main s390x libcups2 s390x 2.4.6-0ubuntu3 [277 kB] 1791s Get:13 http://ftpmaster.internal/ubuntu noble/main s390x liblcms2-2 s390x 2.14-2 [155 kB] 1791s Get:14 http://ftpmaster.internal/ubuntu noble/main s390x libjpeg-turbo8 s390x 2.1.5-2ubuntu1 [128 kB] 1791s Get:15 http://ftpmaster.internal/ubuntu noble/main s390x libjpeg8 s390x 8c-2ubuntu11 [2146 B] 1791s Get:16 http://ftpmaster.internal/ubuntu noble/main s390x libfreetype6 s390x 2.13.2+dfsg-1 [431 kB] 1791s Get:17 http://ftpmaster.internal/ubuntu noble/main s390x fonts-dejavu-mono all 2.37-8 [502 kB] 1792s Get:18 http://ftpmaster.internal/ubuntu noble/main s390x fonts-dejavu-core all 2.37-8 [835 kB] 1792s Get:19 http://ftpmaster.internal/ubuntu noble/main s390x fontconfig-config s390x 2.15.0-1ubuntu1 [37.0 kB] 1792s Get:20 http://ftpmaster.internal/ubuntu noble/main s390x libfontconfig1 s390x 2.15.0-1ubuntu1 [150 kB] 1792s Get:21 http://ftpmaster.internal/ubuntu noble/main s390x libasound2-data all 1.2.10-3build1 [20.7 kB] 1792s Get:22 http://ftpmaster.internal/ubuntu noble/main s390x libasound2 s390x 1.2.10-3build1 [414 kB] 1792s Get:23 http://ftpmaster.internal/ubuntu noble/main s390x libgraphite2-3 s390x 1.3.14-2 [90.4 kB] 1792s Get:24 http://ftpmaster.internal/ubuntu noble/main s390x libharfbuzz0b s390x 8.3.0-2 [515 kB] 1792s Get:25 http://ftpmaster.internal/ubuntu noble/main s390x libpcsclite1 s390x 2.0.0-1 [19.9 kB] 1792s Get:26 http://ftpmaster.internal/ubuntu noble/main s390x openjdk-21-jre-headless s390x 21.0.2+13-2 [44.0 MB] 1796s Get:27 http://ftpmaster.internal/ubuntu noble/main s390x default-jre-headless s390x 2:1.21-75+exp1 [3094 B] 1796s Get:28 http://ftpmaster.internal/ubuntu noble/main s390x libgtk2.0-common all 2.24.33-2ubuntu2 [125 kB] 1796s Get:29 http://ftpmaster.internal/ubuntu noble/main s390x at-spi2-common all 2.50.0-1 [7864 B] 1796s Get:30 http://ftpmaster.internal/ubuntu noble/main s390x libatk1.0-0 s390x 2.50.0-1 [54.4 kB] 1796s Get:31 http://ftpmaster.internal/ubuntu noble/main s390x libpixman-1-0 s390x 0.42.2-1 [173 kB] 1796s Get:32 http://ftpmaster.internal/ubuntu noble/main s390x libxcb-render0 s390x 1.15-1 [17.0 kB] 1796s Get:33 http://ftpmaster.internal/ubuntu noble/main s390x libxcb-shm0 s390x 1.15-1 [5782 B] 1796s Get:34 http://ftpmaster.internal/ubuntu noble/main s390x libxrender1 s390x 1:0.9.10-1.1 [19.4 kB] 1796s Get:35 http://ftpmaster.internal/ubuntu noble/main s390x libcairo2 s390x 1.18.0-1 [578 kB] 1796s Get:36 http://ftpmaster.internal/ubuntu noble/main s390x libgdk-pixbuf2.0-common all 2.42.10+dfsg-3 [7624 B] 1796s Get:37 http://ftpmaster.internal/ubuntu noble/main s390x libdeflate0 s390x 1.19-1 [46.0 kB] 1796s Get:38 http://ftpmaster.internal/ubuntu noble/main s390x libjbig0 s390x 2.1-6.1ubuntu1 [29.8 kB] 1796s Get:39 http://ftpmaster.internal/ubuntu noble/main s390x libsharpyuv0 s390x 1.3.2-0.4 [14.8 kB] 1796s Get:40 http://ftpmaster.internal/ubuntu noble/main s390x libwebp7 s390x 1.3.2-0.4 [207 kB] 1796s Get:41 http://ftpmaster.internal/ubuntu noble/main s390x libtiff6 s390x 4.5.1+git230720-3ubuntu1 [253 kB] 1796s Get:42 http://ftpmaster.internal/ubuntu noble/main s390x libgdk-pixbuf-2.0-0 s390x 2.42.10+dfsg-3 [152 kB] 1796s Get:43 http://ftpmaster.internal/ubuntu noble/main s390x fontconfig s390x 2.15.0-1ubuntu1 [191 kB] 1796s Get:44 http://ftpmaster.internal/ubuntu noble/main s390x libthai-data all 0.1.29-2 [158 kB] 1796s Get:45 http://ftpmaster.internal/ubuntu noble/main s390x libdatrie1 s390x 0.2.13-3 [22.6 kB] 1796s Get:46 http://ftpmaster.internal/ubuntu noble/main s390x libthai0 s390x 0.1.29-2 [20.6 kB] 1796s Get:47 http://ftpmaster.internal/ubuntu noble/main s390x libpango-1.0-0 s390x 1.51.0+ds-4 [240 kB] 1796s Get:48 http://ftpmaster.internal/ubuntu noble/main s390x libpangoft2-1.0-0 s390x 1.51.0+ds-4 [43.6 kB] 1796s Get:49 http://ftpmaster.internal/ubuntu noble/main s390x libpangocairo-1.0-0 s390x 1.51.0+ds-4 [28.9 kB] 1796s Get:50 http://ftpmaster.internal/ubuntu noble/main s390x libxcomposite1 s390x 1:0.4.5-1build2 [6952 B] 1796s Get:51 http://ftpmaster.internal/ubuntu noble/main s390x libxfixes3 s390x 1:6.0.0-2 [10.6 kB] 1796s Get:52 http://ftpmaster.internal/ubuntu noble/main s390x libxcursor1 s390x 1:1.2.1-1 [22.2 kB] 1796s Get:53 http://ftpmaster.internal/ubuntu noble/main s390x libxdamage1 s390x 1:1.1.6-1 [5810 B] 1796s Get:54 http://ftpmaster.internal/ubuntu noble/main s390x libxi6 s390x 2:1.8.1-1 [35.7 kB] 1796s Get:55 http://ftpmaster.internal/ubuntu noble/main s390x libxinerama1 s390x 2:1.1.4-3 [7110 B] 1796s Get:56 http://ftpmaster.internal/ubuntu noble/main s390x libxrandr2 s390x 2:1.5.2-2 [19.5 kB] 1796s Get:57 http://ftpmaster.internal/ubuntu noble/main s390x gtk-update-icon-cache s390x 3.24.40-2ubuntu1 [51.0 kB] 1796s Get:58 http://ftpmaster.internal/ubuntu noble/main s390x hicolor-icon-theme all 0.17-2 [9976 B] 1796s Get:59 http://ftpmaster.internal/ubuntu noble/main s390x humanity-icon-theme all 0.6.16 [1282 kB] 1797s Get:60 http://ftpmaster.internal/ubuntu noble/main s390x ubuntu-mono all 24.04-0ubuntu1 [151 kB] 1797s Get:61 http://ftpmaster.internal/ubuntu noble/main s390x adwaita-icon-theme all 46~rc-1 [723 kB] 1797s Get:62 http://ftpmaster.internal/ubuntu noble/main s390x libgtk2.0-0 s390x 2.24.33-2ubuntu2 [1944 kB] 1797s Get:63 http://ftpmaster.internal/ubuntu noble/main s390x libglvnd0 s390x 1.7.0-1 [106 kB] 1797s Get:64 http://ftpmaster.internal/ubuntu noble/main s390x libglapi-mesa s390x 24.0.1-1ubuntu1 [68.7 kB] 1797s Get:65 http://ftpmaster.internal/ubuntu noble/main s390x libx11-xcb1 s390x 2:1.8.7-1 [7778 B] 1797s Get:66 http://ftpmaster.internal/ubuntu noble/main s390x libxcb-dri2-0 s390x 1.15-1 [7426 B] 1797s Get:67 http://ftpmaster.internal/ubuntu noble/main s390x libxcb-dri3-0 s390x 1.15-1 [7270 B] 1797s Get:68 http://ftpmaster.internal/ubuntu noble/main s390x libxcb-glx0 s390x 1.15-1 [25.8 kB] 1797s Get:69 http://ftpmaster.internal/ubuntu noble/main s390x libxcb-present0 s390x 1.15-1 [5752 B] 1797s Get:70 http://ftpmaster.internal/ubuntu noble/main s390x libxcb-randr0 s390x 1.15-1 [19.0 kB] 1797s Get:71 http://ftpmaster.internal/ubuntu noble/main s390x libxcb-sync1 s390x 1.15-1 [9392 B] 1797s Get:72 http://ftpmaster.internal/ubuntu noble/main s390x libxcb-xfixes0 s390x 1.15-1 [10.5 kB] 1797s Get:73 http://ftpmaster.internal/ubuntu noble/main s390x libxshmfence1 s390x 1.3-1build4 [5334 B] 1797s Get:74 http://ftpmaster.internal/ubuntu noble/main s390x libxxf86vm1 s390x 1:1.1.4-1build3 [9900 B] 1797s Get:75 http://ftpmaster.internal/ubuntu noble/main s390x libvulkan1 s390x 1.3.275.0-1 [155 kB] 1797s Get:76 http://ftpmaster.internal/ubuntu noble/main s390x libdrm-amdgpu1 s390x 2.4.120-2 [21.1 kB] 1797s Get:77 http://ftpmaster.internal/ubuntu noble/main s390x libdrm-nouveau2 s390x 2.4.120-2 [18.5 kB] 1797s Get:78 http://ftpmaster.internal/ubuntu noble/main s390x libdrm-radeon1 s390x 2.4.120-2 [22.7 kB] 1797s Get:79 http://ftpmaster.internal/ubuntu noble/main s390x libllvm17 s390x 1:17.0.6-5build1 [31.2 MB] 1800s Get:80 http://ftpmaster.internal/ubuntu noble/main s390x libgl1-mesa-dri s390x 24.0.1-1ubuntu1 [7184 kB] 1800s Get:81 http://ftpmaster.internal/ubuntu noble/main s390x libglx-mesa0 s390x 24.0.1-1ubuntu1 [182 kB] 1800s Get:82 http://ftpmaster.internal/ubuntu noble/main s390x libglx0 s390x 1.7.0-1 [31.4 kB] 1801s Get:83 http://ftpmaster.internal/ubuntu noble/main s390x libgl1 s390x 1.7.0-1 [137 kB] 1801s Get:84 http://ftpmaster.internal/ubuntu noble/main s390x libgif7 s390x 5.2.1-2.5 [34.2 kB] 1801s Get:85 http://ftpmaster.internal/ubuntu noble/main s390x x11-common all 1:7.7+23ubuntu2 [23.4 kB] 1801s Get:86 http://ftpmaster.internal/ubuntu noble/main s390x libxtst6 s390x 2:1.2.3-1.1 [13.4 kB] 1801s Get:87 http://ftpmaster.internal/ubuntu noble/main s390x openjdk-21-jre s390x 21.0.2+13-2 [239 kB] 1801s Get:88 http://ftpmaster.internal/ubuntu noble/main s390x default-jre s390x 2:1.21-75+exp1 [922 B] 1801s Get:89 http://ftpmaster.internal/ubuntu noble/universe s390x libhamcrest-java all 2.2-2 [117 kB] 1801s Get:90 http://ftpmaster.internal/ubuntu noble/universe s390x junit4 all 4.13.2-4 [347 kB] 1801s Get:91 http://ftpmaster.internal/ubuntu noble/universe s390x libcommons-cli-java all 1.6.0-1 [59.9 kB] 1801s Get:92 http://ftpmaster.internal/ubuntu noble/universe s390x libapache-pom-java all 29-2 [5284 B] 1801s Get:93 http://ftpmaster.internal/ubuntu noble/universe s390x libcommons-parent-java all 56-1 [10.7 kB] 1801s Get:94 http://ftpmaster.internal/ubuntu noble/universe s390x libcommons-io-java all 2.11.0-2 [297 kB] 1801s Get:95 http://ftpmaster.internal/ubuntu noble/universe s390x libdropwizard-metrics-java all 3.2.6-1 [240 kB] 1801s Get:96 http://ftpmaster.internal/ubuntu noble/universe s390x libfindbugs-annotations-java all 3.1.0~preview2-3 [49.2 kB] 1801s Get:97 http://ftpmaster.internal/ubuntu noble/universe s390x libatinject-jsr330-api-java all 1.0+ds1-5 [5348 B] 1801s Get:98 http://ftpmaster.internal/ubuntu noble/universe s390x liberror-prone-java all 2.18.0-1 [22.5 kB] 1801s Get:99 http://ftpmaster.internal/ubuntu noble/universe s390x libjsr305-java all 0.1~+svn49-11 [27.0 kB] 1801s Get:100 http://ftpmaster.internal/ubuntu noble/universe s390x libguava-java all 32.0.1-1 [2692 kB] 1801s Get:101 http://ftpmaster.internal/ubuntu noble/universe s390x libjackson2-annotations-java all 2.14.0-1 [64.7 kB] 1801s Get:102 http://ftpmaster.internal/ubuntu noble/universe s390x libjackson2-core-java all 2.14.1-1 [432 kB] 1801s Get:103 http://ftpmaster.internal/ubuntu noble/universe s390x libjackson2-databind-java all 2.14.0-1 [1531 kB] 1802s Get:104 http://ftpmaster.internal/ubuntu noble/universe s390x libasm-java all 9.6~us1-0ubuntu1 [386 kB] 1802s Get:105 http://ftpmaster.internal/ubuntu noble/universe s390x libel-api-java all 3.0.0-3 [64.9 kB] 1802s Get:106 http://ftpmaster.internal/ubuntu noble/universe s390x libjsp-api-java all 2.3.4-3 [53.7 kB] 1802s Get:107 http://ftpmaster.internal/ubuntu noble/universe s390x libservlet-api-java all 4.0.1-2 [81.0 kB] 1802s Get:108 http://ftpmaster.internal/ubuntu noble/universe s390x libwebsocket-api-java all 1.1-2 [40.1 kB] 1802s Get:109 http://ftpmaster.internal/ubuntu noble/universe s390x libjetty9-java all 9.4.53-1 [2807 kB] 1802s Get:110 http://ftpmaster.internal/ubuntu noble/universe s390x libjnr-constants-java all 0.10.4-2 [1397 kB] 1802s Get:111 http://ftpmaster.internal/ubuntu noble/universe s390x libjffi-jni s390x 1.3.13+ds-1 [30.7 kB] 1802s Get:112 http://ftpmaster.internal/ubuntu noble/universe s390x libjffi-java all 1.3.13+ds-1 [112 kB] 1802s Get:113 http://ftpmaster.internal/ubuntu noble/universe s390x libjnr-x86asm-java all 1.0.2-5.1 [207 kB] 1802s Get:114 http://ftpmaster.internal/ubuntu noble/universe s390x libjnr-ffi-java all 2.2.15-2 [627 kB] 1802s Get:115 http://ftpmaster.internal/ubuntu noble/universe s390x libjnr-enxio-java all 0.32.16-1 [33.7 kB] 1802s Get:116 http://ftpmaster.internal/ubuntu noble/universe s390x libjnr-posix-java all 3.1.18-1 [267 kB] 1802s Get:117 http://ftpmaster.internal/ubuntu noble/universe s390x libjnr-unixsocket-java all 0.38.21-2 [46.9 kB] 1802s Get:118 http://ftpmaster.internal/ubuntu noble/universe s390x libactivation-java all 1.2.0-2 [84.7 kB] 1802s Get:119 http://ftpmaster.internal/ubuntu noble/universe s390x libmail-java all 1.6.5-2 [681 kB] 1802s Get:120 http://ftpmaster.internal/ubuntu noble/universe s390x libcommons-logging-java all 1.3.0-1ubuntu1 [63.8 kB] 1802s Get:121 http://ftpmaster.internal/ubuntu noble/universe s390x libjaxb-api-java all 2.3.1-1 [119 kB] 1802s Get:122 http://ftpmaster.internal/ubuntu noble/universe s390x libspring-core-java all 4.3.30-2 [1015 kB] 1802s Get:123 http://ftpmaster.internal/ubuntu noble/universe s390x libspring-beans-java all 4.3.30-2 [675 kB] 1802s Get:124 http://ftpmaster.internal/ubuntu noble/universe s390x libtaglibs-standard-spec-java all 1.2.5-3 [35.2 kB] 1802s Get:125 http://ftpmaster.internal/ubuntu noble/universe s390x libtaglibs-standard-impl-java all 1.2.5-3 [182 kB] 1802s Get:126 http://ftpmaster.internal/ubuntu noble/universe s390x libeclipse-jdt-core-java all 3.32.0+eclipse4.26-2 [6438 kB] 1803s Get:127 http://ftpmaster.internal/ubuntu noble/universe s390x libtomcat9-java all 9.0.70-1ubuntu1 [6151 kB] 1803s Get:128 http://ftpmaster.internal/ubuntu noble/universe s390x libjetty9-extra-java all 9.4.53-1 [1206 kB] 1803s Get:129 http://ftpmaster.internal/ubuntu noble/universe s390x libjctools-java all 2.0.2-1 [188 kB] 1803s Get:130 http://ftpmaster.internal/ubuntu noble/universe s390x libnetty-java all 1:4.1.48-9 [3603 kB] 1803s Get:131 http://ftpmaster.internal/ubuntu noble/universe s390x libslf4j-java all 1.7.32-1 [141 kB] 1803s Get:132 http://ftpmaster.internal/ubuntu noble/main s390x libsnappy1v5 s390x 1.1.10-1 [30.0 kB] 1803s Get:133 http://ftpmaster.internal/ubuntu noble/universe s390x libsnappy-jni s390x 1.1.10.5-1 [6626 B] 1803s Get:134 http://ftpmaster.internal/ubuntu noble/universe s390x libsnappy-java all 1.1.10.5-1 [83.6 kB] 1803s Get:135 http://ftpmaster.internal/ubuntu noble/main s390x libapr1 s390x 1.7.2-3 [105 kB] 1803s Get:136 http://ftpmaster.internal/ubuntu noble/universe s390x libnetty-tcnative-jni s390x 2.0.28-1build1 [37.1 kB] 1803s Get:137 http://ftpmaster.internal/ubuntu noble/universe s390x libnetty-tcnative-java all 2.0.28-1build1 [24.5 kB] 1803s Get:138 http://ftpmaster.internal/ubuntu noble/universe s390x liblog4j1.2-java all 1.2.17-11 [439 kB] 1803s Get:139 http://ftpmaster.internal/ubuntu noble/universe s390x libzookeeper-java all 3.9.1-1build1 [1880 kB] 1804s Get:140 http://ftpmaster.internal/ubuntu noble/universe s390x zookeeper all 3.9.1-1build1 [57.9 kB] 1804s Get:141 http://ftpmaster.internal/ubuntu noble/universe s390x zookeeperd all 3.9.1-1build1 [6030 B] 1804s Get:142 http://ftpmaster.internal/ubuntu noble/main s390x fonts-font-awesome all 5.0.10+really4.7.0~dfsg-4.1 [516 kB] 1804s Get:143 http://ftpmaster.internal/ubuntu noble/main s390x libio-pty-perl s390x 1:1.20-1 [31.2 kB] 1804s Get:144 http://ftpmaster.internal/ubuntu noble/main s390x libipc-run-perl all 20231003.0-1 [92.1 kB] 1804s Get:145 http://ftpmaster.internal/ubuntu noble/main s390x libjs-jquery all 3.6.1+dfsg+~3.5.14-1 [328 kB] 1804s Get:146 http://ftpmaster.internal/ubuntu noble/main s390x libjs-underscore all 1.13.4~dfsg+~1.11.4-3 [118 kB] 1804s Get:147 http://ftpmaster.internal/ubuntu noble/main s390x libjs-sphinxdoc all 7.2.6-4 [149 kB] 1804s Get:148 http://ftpmaster.internal/ubuntu noble/main s390x libpq5 s390x 16.2-1 [143 kB] 1804s Get:149 http://ftpmaster.internal/ubuntu noble/main s390x libtime-duration-perl all 1.21-2 [12.3 kB] 1804s Get:150 http://ftpmaster.internal/ubuntu noble/main s390x libtimedate-perl all 2.3300-2 [34.0 kB] 1804s Get:151 http://ftpmaster.internal/ubuntu noble/main s390x libxslt1.1 s390x 1.1.35-1 [157 kB] 1804s Get:152 http://ftpmaster.internal/ubuntu noble/universe s390x moreutils s390x 0.69-1 [57.4 kB] 1804s Get:153 http://ftpmaster.internal/ubuntu noble/universe s390x python3-cdiff all 1.0-1.1 [16.4 kB] 1804s Get:154 http://ftpmaster.internal/ubuntu noble/main s390x python3-colorama all 0.4.6-4 [32.1 kB] 1804s Get:155 http://ftpmaster.internal/ubuntu noble/main s390x python3-click all 8.1.6-1 [79.0 kB] 1804s Get:156 http://ftpmaster.internal/ubuntu noble/main s390x python3-dateutil all 2.8.2-3 [79.2 kB] 1804s Get:157 http://ftpmaster.internal/ubuntu noble/main s390x python3-wcwidth all 0.2.5+dfsg1-1.1ubuntu1 [22.5 kB] 1804s Get:158 http://ftpmaster.internal/ubuntu noble/main s390x python3-prettytable all 3.6.0-1 [33.1 kB] 1804s Get:159 http://ftpmaster.internal/ubuntu noble/main s390x python3-psutil s390x 5.9.8-1 [195 kB] 1804s Get:160 http://ftpmaster.internal/ubuntu noble/main s390x python3-psycopg2 s390x 2.9.9-1 [180 kB] 1804s Get:161 http://ftpmaster.internal/ubuntu noble/main s390x python3-greenlet s390x 3.0.1-2 [174 kB] 1804s Get:162 http://ftpmaster.internal/ubuntu noble/main s390x python3-dnspython all 2.6.1-1ubuntu1 [163 kB] 1804s Get:163 http://ftpmaster.internal/ubuntu noble/main s390x python3-eventlet all 0.35.1-0ubuntu1 [162 kB] 1804s Get:164 http://ftpmaster.internal/ubuntu noble/universe s390x python3-zope.event all 5.0-0.1 [7512 B] 1804s Get:165 http://ftpmaster.internal/ubuntu noble/main s390x python3-zope.interface s390x 6.1-1 [181 kB] 1804s Get:166 http://ftpmaster.internal/ubuntu noble/main s390x libc-ares2 s390x 1.27.0-1 [79.2 kB] 1804s Get:167 http://ftpmaster.internal/ubuntu noble/universe s390x libev4 s390x 1:4.33-2 [31.4 kB] 1804s Get:168 http://ftpmaster.internal/ubuntu noble/universe s390x python3-gevent s390x 23.9.1-0.2 [1222 kB] 1804s Get:169 http://ftpmaster.internal/ubuntu noble/universe s390x python3-kerberos s390x 1.1.14-3.1build8 [22.7 kB] 1804s Get:170 http://ftpmaster.internal/ubuntu noble/universe s390x python3-pure-sasl all 0.5.1+dfsg1-4 [11.4 kB] 1804s Get:171 http://ftpmaster.internal/ubuntu noble/universe s390x python3-kazoo all 2.9.0-2 [103 kB] 1804s Get:172 http://ftpmaster.internal/ubuntu noble/universe s390x patroni all 3.2.2-2 [253 kB] 1804s Get:173 http://ftpmaster.internal/ubuntu noble/main s390x sphinx-rtd-theme-common all 2.0.0+dfsg-1 [1012 kB] 1804s Get:174 http://ftpmaster.internal/ubuntu noble/universe s390x patroni-doc all 3.2.2-2 [476 kB] 1804s Get:175 http://ftpmaster.internal/ubuntu noble/main s390x postgresql-client-16 s390x 16.2-1 [1295 kB] 1804s Get:176 http://ftpmaster.internal/ubuntu noble/main s390x postgresql-16 s390x 16.2-1 [16.7 MB] 1805s Get:177 http://ftpmaster.internal/ubuntu noble/main s390x postgresql all 16+257 [11.4 kB] 1805s Get:178 http://ftpmaster.internal/ubuntu noble/universe s390x python3-parse all 1.19.0-0.2 [18.1 kB] 1805s Get:179 http://ftpmaster.internal/ubuntu noble/universe s390x python3-parse-type all 0.6.2-1 [22.7 kB] 1805s Get:180 http://ftpmaster.internal/ubuntu noble/universe s390x python3-behave all 1.2.6-5 [98.4 kB] 1805s Get:181 http://ftpmaster.internal/ubuntu noble/universe s390x python3-coverage s390x 7.3.2-0ubuntu1 [147 kB] 1806s Preconfiguring packages ... 1806s Fetched 157 MB in 15s (10.3 MB/s) 1806s Selecting previously unselected package fonts-lato. 1806s (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 ... 51726 files and directories currently installed.) 1806s Preparing to unpack .../000-fonts-lato_2.015-1_all.deb ... 1806s Unpacking fonts-lato (2.015-1) ... 1806s Selecting previously unselected package libjson-perl. 1806s Preparing to unpack .../001-libjson-perl_4.10000-1_all.deb ... 1806s Unpacking libjson-perl (4.10000-1) ... 1806s Selecting previously unselected package postgresql-client-common. 1806s Preparing to unpack .../002-postgresql-client-common_257_all.deb ... 1806s Unpacking postgresql-client-common (257) ... 1806s Selecting previously unselected package ssl-cert. 1806s Preparing to unpack .../003-ssl-cert_1.1.2ubuntu1_all.deb ... 1806s Unpacking ssl-cert (1.1.2ubuntu1) ... 1806s Selecting previously unselected package postgresql-common. 1806s Preparing to unpack .../004-postgresql-common_257_all.deb ... 1806s Adding 'diversion of /usr/bin/pg_config to /usr/bin/pg_config.libpq-dev by postgresql-common' 1806s Unpacking postgresql-common (257) ... 1806s Selecting previously unselected package ca-certificates-java. 1806s Preparing to unpack .../005-ca-certificates-java_20240118_all.deb ... 1806s Unpacking ca-certificates-java (20240118) ... 1806s Selecting previously unselected package java-common. 1806s Preparing to unpack .../006-java-common_0.75+exp1_all.deb ... 1806s Unpacking java-common (0.75+exp1) ... 1806s Selecting previously unselected package libavahi-common-data:s390x. 1806s Preparing to unpack .../007-libavahi-common-data_0.8-13ubuntu2_s390x.deb ... 1806s Unpacking libavahi-common-data:s390x (0.8-13ubuntu2) ... 1806s Selecting previously unselected package libavahi-common3:s390x. 1806s Preparing to unpack .../008-libavahi-common3_0.8-13ubuntu2_s390x.deb ... 1806s Unpacking libavahi-common3:s390x (0.8-13ubuntu2) ... 1806s Selecting previously unselected package libavahi-client3:s390x. 1806s Preparing to unpack .../009-libavahi-client3_0.8-13ubuntu2_s390x.deb ... 1806s Unpacking libavahi-client3:s390x (0.8-13ubuntu2) ... 1806s Selecting previously unselected package libcups2:s390x. 1806s Preparing to unpack .../010-libcups2_2.4.6-0ubuntu3_s390x.deb ... 1806s Unpacking libcups2:s390x (2.4.6-0ubuntu3) ... 1806s Selecting previously unselected package liblcms2-2:s390x. 1806s Preparing to unpack .../011-liblcms2-2_2.14-2_s390x.deb ... 1806s Unpacking liblcms2-2:s390x (2.14-2) ... 1806s Selecting previously unselected package libjpeg-turbo8:s390x. 1806s Preparing to unpack .../012-libjpeg-turbo8_2.1.5-2ubuntu1_s390x.deb ... 1806s Unpacking libjpeg-turbo8:s390x (2.1.5-2ubuntu1) ... 1807s Selecting previously unselected package libjpeg8:s390x. 1807s Preparing to unpack .../013-libjpeg8_8c-2ubuntu11_s390x.deb ... 1807s Unpacking libjpeg8:s390x (8c-2ubuntu11) ... 1807s Selecting previously unselected package libfreetype6:s390x. 1807s Preparing to unpack .../014-libfreetype6_2.13.2+dfsg-1_s390x.deb ... 1807s Unpacking libfreetype6:s390x (2.13.2+dfsg-1) ... 1807s Selecting previously unselected package fonts-dejavu-mono. 1807s Preparing to unpack .../015-fonts-dejavu-mono_2.37-8_all.deb ... 1807s Unpacking fonts-dejavu-mono (2.37-8) ... 1807s Selecting previously unselected package fonts-dejavu-core. 1807s Preparing to unpack .../016-fonts-dejavu-core_2.37-8_all.deb ... 1807s Unpacking fonts-dejavu-core (2.37-8) ... 1807s Selecting previously unselected package fontconfig-config. 1807s Preparing to unpack .../017-fontconfig-config_2.15.0-1ubuntu1_s390x.deb ... 1807s Unpacking fontconfig-config (2.15.0-1ubuntu1) ... 1807s Selecting previously unselected package libfontconfig1:s390x. 1807s Preparing to unpack .../018-libfontconfig1_2.15.0-1ubuntu1_s390x.deb ... 1807s Unpacking libfontconfig1:s390x (2.15.0-1ubuntu1) ... 1807s Selecting previously unselected package libasound2-data. 1807s Preparing to unpack .../019-libasound2-data_1.2.10-3build1_all.deb ... 1807s Unpacking libasound2-data (1.2.10-3build1) ... 1807s Selecting previously unselected package libasound2:s390x. 1807s Preparing to unpack .../020-libasound2_1.2.10-3build1_s390x.deb ... 1807s Unpacking libasound2:s390x (1.2.10-3build1) ... 1807s Selecting previously unselected package libgraphite2-3:s390x. 1807s Preparing to unpack .../021-libgraphite2-3_1.3.14-2_s390x.deb ... 1807s Unpacking libgraphite2-3:s390x (1.3.14-2) ... 1807s Selecting previously unselected package libharfbuzz0b:s390x. 1807s Preparing to unpack .../022-libharfbuzz0b_8.3.0-2_s390x.deb ... 1807s Unpacking libharfbuzz0b:s390x (8.3.0-2) ... 1807s Selecting previously unselected package libpcsclite1:s390x. 1807s Preparing to unpack .../023-libpcsclite1_2.0.0-1_s390x.deb ... 1807s Unpacking libpcsclite1:s390x (2.0.0-1) ... 1807s Selecting previously unselected package openjdk-21-jre-headless:s390x. 1807s Preparing to unpack .../024-openjdk-21-jre-headless_21.0.2+13-2_s390x.deb ... 1807s Unpacking openjdk-21-jre-headless:s390x (21.0.2+13-2) ... 1808s Selecting previously unselected package default-jre-headless. 1808s Preparing to unpack .../025-default-jre-headless_2%3a1.21-75+exp1_s390x.deb ... 1808s Unpacking default-jre-headless (2:1.21-75+exp1) ... 1808s Selecting previously unselected package libgtk2.0-common. 1808s Preparing to unpack .../026-libgtk2.0-common_2.24.33-2ubuntu2_all.deb ... 1808s Unpacking libgtk2.0-common (2.24.33-2ubuntu2) ... 1808s Selecting previously unselected package at-spi2-common. 1808s Preparing to unpack .../027-at-spi2-common_2.50.0-1_all.deb ... 1808s Unpacking at-spi2-common (2.50.0-1) ... 1808s Selecting previously unselected package libatk1.0-0:s390x. 1808s Preparing to unpack .../028-libatk1.0-0_2.50.0-1_s390x.deb ... 1808s Unpacking libatk1.0-0:s390x (2.50.0-1) ... 1808s Selecting previously unselected package libpixman-1-0:s390x. 1808s Preparing to unpack .../029-libpixman-1-0_0.42.2-1_s390x.deb ... 1808s Unpacking libpixman-1-0:s390x (0.42.2-1) ... 1808s Selecting previously unselected package libxcb-render0:s390x. 1808s Preparing to unpack .../030-libxcb-render0_1.15-1_s390x.deb ... 1808s Unpacking libxcb-render0:s390x (1.15-1) ... 1808s Selecting previously unselected package libxcb-shm0:s390x. 1808s Preparing to unpack .../031-libxcb-shm0_1.15-1_s390x.deb ... 1808s Unpacking libxcb-shm0:s390x (1.15-1) ... 1808s Selecting previously unselected package libxrender1:s390x. 1808s Preparing to unpack .../032-libxrender1_1%3a0.9.10-1.1_s390x.deb ... 1808s Unpacking libxrender1:s390x (1:0.9.10-1.1) ... 1808s Selecting previously unselected package libcairo2:s390x. 1808s Preparing to unpack .../033-libcairo2_1.18.0-1_s390x.deb ... 1808s Unpacking libcairo2:s390x (1.18.0-1) ... 1808s Selecting previously unselected package libgdk-pixbuf2.0-common. 1808s Preparing to unpack .../034-libgdk-pixbuf2.0-common_2.42.10+dfsg-3_all.deb ... 1808s Unpacking libgdk-pixbuf2.0-common (2.42.10+dfsg-3) ... 1808s Selecting previously unselected package libdeflate0:s390x. 1808s Preparing to unpack .../035-libdeflate0_1.19-1_s390x.deb ... 1808s Unpacking libdeflate0:s390x (1.19-1) ... 1808s Selecting previously unselected package libjbig0:s390x. 1808s Preparing to unpack .../036-libjbig0_2.1-6.1ubuntu1_s390x.deb ... 1808s Unpacking libjbig0:s390x (2.1-6.1ubuntu1) ... 1808s Selecting previously unselected package libsharpyuv0:s390x. 1808s Preparing to unpack .../037-libsharpyuv0_1.3.2-0.4_s390x.deb ... 1808s Unpacking libsharpyuv0:s390x (1.3.2-0.4) ... 1808s Selecting previously unselected package libwebp7:s390x. 1808s Preparing to unpack .../038-libwebp7_1.3.2-0.4_s390x.deb ... 1808s Unpacking libwebp7:s390x (1.3.2-0.4) ... 1808s Selecting previously unselected package libtiff6:s390x. 1808s Preparing to unpack .../039-libtiff6_4.5.1+git230720-3ubuntu1_s390x.deb ... 1808s Unpacking libtiff6:s390x (4.5.1+git230720-3ubuntu1) ... 1808s Selecting previously unselected package libgdk-pixbuf-2.0-0:s390x. 1808s Preparing to unpack .../040-libgdk-pixbuf-2.0-0_2.42.10+dfsg-3_s390x.deb ... 1808s Unpacking libgdk-pixbuf-2.0-0:s390x (2.42.10+dfsg-3) ... 1808s Selecting previously unselected package fontconfig. 1808s Preparing to unpack .../041-fontconfig_2.15.0-1ubuntu1_s390x.deb ... 1808s Unpacking fontconfig (2.15.0-1ubuntu1) ... 1808s Selecting previously unselected package libthai-data. 1808s Preparing to unpack .../042-libthai-data_0.1.29-2_all.deb ... 1808s Unpacking libthai-data (0.1.29-2) ... 1808s Selecting previously unselected package libdatrie1:s390x. 1808s Preparing to unpack .../043-libdatrie1_0.2.13-3_s390x.deb ... 1808s Unpacking libdatrie1:s390x (0.2.13-3) ... 1808s Selecting previously unselected package libthai0:s390x. 1808s Preparing to unpack .../044-libthai0_0.1.29-2_s390x.deb ... 1808s Unpacking libthai0:s390x (0.1.29-2) ... 1808s Selecting previously unselected package libpango-1.0-0:s390x. 1808s Preparing to unpack .../045-libpango-1.0-0_1.51.0+ds-4_s390x.deb ... 1808s Unpacking libpango-1.0-0:s390x (1.51.0+ds-4) ... 1808s Selecting previously unselected package libpangoft2-1.0-0:s390x. 1808s Preparing to unpack .../046-libpangoft2-1.0-0_1.51.0+ds-4_s390x.deb ... 1808s Unpacking libpangoft2-1.0-0:s390x (1.51.0+ds-4) ... 1808s Selecting previously unselected package libpangocairo-1.0-0:s390x. 1808s Preparing to unpack .../047-libpangocairo-1.0-0_1.51.0+ds-4_s390x.deb ... 1808s Unpacking libpangocairo-1.0-0:s390x (1.51.0+ds-4) ... 1808s Selecting previously unselected package libxcomposite1:s390x. 1808s Preparing to unpack .../048-libxcomposite1_1%3a0.4.5-1build2_s390x.deb ... 1808s Unpacking libxcomposite1:s390x (1:0.4.5-1build2) ... 1808s Selecting previously unselected package libxfixes3:s390x. 1808s Preparing to unpack .../049-libxfixes3_1%3a6.0.0-2_s390x.deb ... 1808s Unpacking libxfixes3:s390x (1:6.0.0-2) ... 1808s Selecting previously unselected package libxcursor1:s390x. 1808s Preparing to unpack .../050-libxcursor1_1%3a1.2.1-1_s390x.deb ... 1808s Unpacking libxcursor1:s390x (1:1.2.1-1) ... 1808s Selecting previously unselected package libxdamage1:s390x. 1808s Preparing to unpack .../051-libxdamage1_1%3a1.1.6-1_s390x.deb ... 1808s Unpacking libxdamage1:s390x (1:1.1.6-1) ... 1808s Selecting previously unselected package libxi6:s390x. 1808s Preparing to unpack .../052-libxi6_2%3a1.8.1-1_s390x.deb ... 1808s Unpacking libxi6:s390x (2:1.8.1-1) ... 1808s Selecting previously unselected package libxinerama1:s390x. 1808s Preparing to unpack .../053-libxinerama1_2%3a1.1.4-3_s390x.deb ... 1808s Unpacking libxinerama1:s390x (2:1.1.4-3) ... 1808s Selecting previously unselected package libxrandr2:s390x. 1808s Preparing to unpack .../054-libxrandr2_2%3a1.5.2-2_s390x.deb ... 1808s Unpacking libxrandr2:s390x (2:1.5.2-2) ... 1808s Selecting previously unselected package gtk-update-icon-cache. 1808s Preparing to unpack .../055-gtk-update-icon-cache_3.24.40-2ubuntu1_s390x.deb ... 1808s Unpacking gtk-update-icon-cache (3.24.40-2ubuntu1) ... 1808s Selecting previously unselected package hicolor-icon-theme. 1808s Preparing to unpack .../056-hicolor-icon-theme_0.17-2_all.deb ... 1808s Unpacking hicolor-icon-theme (0.17-2) ... 1809s Selecting previously unselected package humanity-icon-theme. 1809s Preparing to unpack .../057-humanity-icon-theme_0.6.16_all.deb ... 1809s Unpacking humanity-icon-theme (0.6.16) ... 1809s Selecting previously unselected package ubuntu-mono. 1809s Preparing to unpack .../058-ubuntu-mono_24.04-0ubuntu1_all.deb ... 1809s Unpacking ubuntu-mono (24.04-0ubuntu1) ... 1810s Selecting previously unselected package adwaita-icon-theme. 1810s Preparing to unpack .../059-adwaita-icon-theme_46~rc-1_all.deb ... 1810s Unpacking adwaita-icon-theme (46~rc-1) ... 1810s Selecting previously unselected package libgtk2.0-0:s390x. 1810s Preparing to unpack .../060-libgtk2.0-0_2.24.33-2ubuntu2_s390x.deb ... 1810s Unpacking libgtk2.0-0:s390x (2.24.33-2ubuntu2) ... 1810s Selecting previously unselected package libglvnd0:s390x. 1810s Preparing to unpack .../061-libglvnd0_1.7.0-1_s390x.deb ... 1810s Unpacking libglvnd0:s390x (1.7.0-1) ... 1810s Selecting previously unselected package libglapi-mesa:s390x. 1810s Preparing to unpack .../062-libglapi-mesa_24.0.1-1ubuntu1_s390x.deb ... 1810s Unpacking libglapi-mesa:s390x (24.0.1-1ubuntu1) ... 1810s Selecting previously unselected package libx11-xcb1:s390x. 1810s Preparing to unpack .../063-libx11-xcb1_2%3a1.8.7-1_s390x.deb ... 1810s Unpacking libx11-xcb1:s390x (2:1.8.7-1) ... 1810s Selecting previously unselected package libxcb-dri2-0:s390x. 1810s Preparing to unpack .../064-libxcb-dri2-0_1.15-1_s390x.deb ... 1810s Unpacking libxcb-dri2-0:s390x (1.15-1) ... 1810s Selecting previously unselected package libxcb-dri3-0:s390x. 1810s Preparing to unpack .../065-libxcb-dri3-0_1.15-1_s390x.deb ... 1810s Unpacking libxcb-dri3-0:s390x (1.15-1) ... 1810s Selecting previously unselected package libxcb-glx0:s390x. 1810s Preparing to unpack .../066-libxcb-glx0_1.15-1_s390x.deb ... 1810s Unpacking libxcb-glx0:s390x (1.15-1) ... 1810s Selecting previously unselected package libxcb-present0:s390x. 1810s Preparing to unpack .../067-libxcb-present0_1.15-1_s390x.deb ... 1810s Unpacking libxcb-present0:s390x (1.15-1) ... 1810s Selecting previously unselected package libxcb-randr0:s390x. 1810s Preparing to unpack .../068-libxcb-randr0_1.15-1_s390x.deb ... 1810s Unpacking libxcb-randr0:s390x (1.15-1) ... 1810s Selecting previously unselected package libxcb-sync1:s390x. 1810s Preparing to unpack .../069-libxcb-sync1_1.15-1_s390x.deb ... 1810s Unpacking libxcb-sync1:s390x (1.15-1) ... 1810s Selecting previously unselected package libxcb-xfixes0:s390x. 1810s Preparing to unpack .../070-libxcb-xfixes0_1.15-1_s390x.deb ... 1810s Unpacking libxcb-xfixes0:s390x (1.15-1) ... 1810s Selecting previously unselected package libxshmfence1:s390x. 1810s Preparing to unpack .../071-libxshmfence1_1.3-1build4_s390x.deb ... 1810s Unpacking libxshmfence1:s390x (1.3-1build4) ... 1810s Selecting previously unselected package libxxf86vm1:s390x. 1810s Preparing to unpack .../072-libxxf86vm1_1%3a1.1.4-1build3_s390x.deb ... 1810s Unpacking libxxf86vm1:s390x (1:1.1.4-1build3) ... 1810s Selecting previously unselected package libvulkan1:s390x. 1810s Preparing to unpack .../073-libvulkan1_1.3.275.0-1_s390x.deb ... 1810s Unpacking libvulkan1:s390x (1.3.275.0-1) ... 1810s Selecting previously unselected package libdrm-amdgpu1:s390x. 1810s Preparing to unpack .../074-libdrm-amdgpu1_2.4.120-2_s390x.deb ... 1810s Unpacking libdrm-amdgpu1:s390x (2.4.120-2) ... 1810s Selecting previously unselected package libdrm-nouveau2:s390x. 1810s Preparing to unpack .../075-libdrm-nouveau2_2.4.120-2_s390x.deb ... 1810s Unpacking libdrm-nouveau2:s390x (2.4.120-2) ... 1810s Selecting previously unselected package libdrm-radeon1:s390x. 1810s Preparing to unpack .../076-libdrm-radeon1_2.4.120-2_s390x.deb ... 1810s Unpacking libdrm-radeon1:s390x (2.4.120-2) ... 1810s Selecting previously unselected package libllvm17:s390x. 1810s Preparing to unpack .../077-libllvm17_1%3a17.0.6-5build1_s390x.deb ... 1810s Unpacking libllvm17:s390x (1:17.0.6-5build1) ... 1811s Selecting previously unselected package libgl1-mesa-dri:s390x. 1811s Preparing to unpack .../078-libgl1-mesa-dri_24.0.1-1ubuntu1_s390x.deb ... 1811s Unpacking libgl1-mesa-dri:s390x (24.0.1-1ubuntu1) ... 1811s Selecting previously unselected package libglx-mesa0:s390x. 1811s Preparing to unpack .../079-libglx-mesa0_24.0.1-1ubuntu1_s390x.deb ... 1811s Unpacking libglx-mesa0:s390x (24.0.1-1ubuntu1) ... 1811s Selecting previously unselected package libglx0:s390x. 1811s Preparing to unpack .../080-libglx0_1.7.0-1_s390x.deb ... 1811s Unpacking libglx0:s390x (1.7.0-1) ... 1811s Selecting previously unselected package libgl1:s390x. 1811s Preparing to unpack .../081-libgl1_1.7.0-1_s390x.deb ... 1811s Unpacking libgl1:s390x (1.7.0-1) ... 1811s Selecting previously unselected package libgif7:s390x. 1811s Preparing to unpack .../082-libgif7_5.2.1-2.5_s390x.deb ... 1811s Unpacking libgif7:s390x (5.2.1-2.5) ... 1811s Selecting previously unselected package x11-common. 1811s Preparing to unpack .../083-x11-common_1%3a7.7+23ubuntu2_all.deb ... 1811s Unpacking x11-common (1:7.7+23ubuntu2) ... 1811s Selecting previously unselected package libxtst6:s390x. 1811s Preparing to unpack .../084-libxtst6_2%3a1.2.3-1.1_s390x.deb ... 1811s Unpacking libxtst6:s390x (2:1.2.3-1.1) ... 1811s Selecting previously unselected package openjdk-21-jre:s390x. 1811s Preparing to unpack .../085-openjdk-21-jre_21.0.2+13-2_s390x.deb ... 1811s Unpacking openjdk-21-jre:s390x (21.0.2+13-2) ... 1811s Selecting previously unselected package default-jre. 1811s Preparing to unpack .../086-default-jre_2%3a1.21-75+exp1_s390x.deb ... 1811s Unpacking default-jre (2:1.21-75+exp1) ... 1811s Selecting previously unselected package libhamcrest-java. 1811s Preparing to unpack .../087-libhamcrest-java_2.2-2_all.deb ... 1811s Unpacking libhamcrest-java (2.2-2) ... 1812s Selecting previously unselected package junit4. 1812s Preparing to unpack .../088-junit4_4.13.2-4_all.deb ... 1812s Unpacking junit4 (4.13.2-4) ... 1812s Selecting previously unselected package libcommons-cli-java. 1812s Preparing to unpack .../089-libcommons-cli-java_1.6.0-1_all.deb ... 1812s Unpacking libcommons-cli-java (1.6.0-1) ... 1812s Selecting previously unselected package libapache-pom-java. 1812s Preparing to unpack .../090-libapache-pom-java_29-2_all.deb ... 1812s Unpacking libapache-pom-java (29-2) ... 1812s Selecting previously unselected package libcommons-parent-java. 1812s Preparing to unpack .../091-libcommons-parent-java_56-1_all.deb ... 1812s Unpacking libcommons-parent-java (56-1) ... 1812s Selecting previously unselected package libcommons-io-java. 1812s Preparing to unpack .../092-libcommons-io-java_2.11.0-2_all.deb ... 1812s Unpacking libcommons-io-java (2.11.0-2) ... 1812s Selecting previously unselected package libdropwizard-metrics-java. 1812s Preparing to unpack .../093-libdropwizard-metrics-java_3.2.6-1_all.deb ... 1812s Unpacking libdropwizard-metrics-java (3.2.6-1) ... 1812s Selecting previously unselected package libfindbugs-annotations-java. 1812s Preparing to unpack .../094-libfindbugs-annotations-java_3.1.0~preview2-3_all.deb ... 1812s Unpacking libfindbugs-annotations-java (3.1.0~preview2-3) ... 1812s Selecting previously unselected package libatinject-jsr330-api-java. 1812s Preparing to unpack .../095-libatinject-jsr330-api-java_1.0+ds1-5_all.deb ... 1812s Unpacking libatinject-jsr330-api-java (1.0+ds1-5) ... 1812s Selecting previously unselected package liberror-prone-java. 1812s Preparing to unpack .../096-liberror-prone-java_2.18.0-1_all.deb ... 1812s Unpacking liberror-prone-java (2.18.0-1) ... 1812s Selecting previously unselected package libjsr305-java. 1812s Preparing to unpack .../097-libjsr305-java_0.1~+svn49-11_all.deb ... 1812s Unpacking libjsr305-java (0.1~+svn49-11) ... 1812s Selecting previously unselected package libguava-java. 1812s Preparing to unpack .../098-libguava-java_32.0.1-1_all.deb ... 1812s Unpacking libguava-java (32.0.1-1) ... 1812s Selecting previously unselected package libjackson2-annotations-java. 1812s Preparing to unpack .../099-libjackson2-annotations-java_2.14.0-1_all.deb ... 1812s Unpacking libjackson2-annotations-java (2.14.0-1) ... 1812s Selecting previously unselected package libjackson2-core-java. 1812s Preparing to unpack .../100-libjackson2-core-java_2.14.1-1_all.deb ... 1812s Unpacking libjackson2-core-java (2.14.1-1) ... 1812s Selecting previously unselected package libjackson2-databind-java. 1812s Preparing to unpack .../101-libjackson2-databind-java_2.14.0-1_all.deb ... 1812s Unpacking libjackson2-databind-java (2.14.0-1) ... 1812s Selecting previously unselected package libasm-java. 1812s Preparing to unpack .../102-libasm-java_9.6~us1-0ubuntu1_all.deb ... 1812s Unpacking libasm-java (9.6~us1-0ubuntu1) ... 1812s Selecting previously unselected package libel-api-java. 1812s Preparing to unpack .../103-libel-api-java_3.0.0-3_all.deb ... 1812s Unpacking libel-api-java (3.0.0-3) ... 1812s Selecting previously unselected package libjsp-api-java. 1812s Preparing to unpack .../104-libjsp-api-java_2.3.4-3_all.deb ... 1812s Unpacking libjsp-api-java (2.3.4-3) ... 1812s Selecting previously unselected package libservlet-api-java. 1812s Preparing to unpack .../105-libservlet-api-java_4.0.1-2_all.deb ... 1812s Unpacking libservlet-api-java (4.0.1-2) ... 1812s Selecting previously unselected package libwebsocket-api-java. 1812s Preparing to unpack .../106-libwebsocket-api-java_1.1-2_all.deb ... 1812s Unpacking libwebsocket-api-java (1.1-2) ... 1812s Selecting previously unselected package libjetty9-java. 1812s Preparing to unpack .../107-libjetty9-java_9.4.53-1_all.deb ... 1812s Unpacking libjetty9-java (9.4.53-1) ... 1812s Selecting previously unselected package libjnr-constants-java. 1812s Preparing to unpack .../108-libjnr-constants-java_0.10.4-2_all.deb ... 1812s Unpacking libjnr-constants-java (0.10.4-2) ... 1812s Selecting previously unselected package libjffi-jni:s390x. 1812s Preparing to unpack .../109-libjffi-jni_1.3.13+ds-1_s390x.deb ... 1812s Unpacking libjffi-jni:s390x (1.3.13+ds-1) ... 1812s Selecting previously unselected package libjffi-java. 1812s Preparing to unpack .../110-libjffi-java_1.3.13+ds-1_all.deb ... 1812s Unpacking libjffi-java (1.3.13+ds-1) ... 1812s Selecting previously unselected package libjnr-x86asm-java. 1812s Preparing to unpack .../111-libjnr-x86asm-java_1.0.2-5.1_all.deb ... 1812s Unpacking libjnr-x86asm-java (1.0.2-5.1) ... 1812s Selecting previously unselected package libjnr-ffi-java. 1812s Preparing to unpack .../112-libjnr-ffi-java_2.2.15-2_all.deb ... 1812s Unpacking libjnr-ffi-java (2.2.15-2) ... 1812s Selecting previously unselected package libjnr-enxio-java. 1812s Preparing to unpack .../113-libjnr-enxio-java_0.32.16-1_all.deb ... 1812s Unpacking libjnr-enxio-java (0.32.16-1) ... 1812s Selecting previously unselected package libjnr-posix-java. 1812s Preparing to unpack .../114-libjnr-posix-java_3.1.18-1_all.deb ... 1812s Unpacking libjnr-posix-java (3.1.18-1) ... 1812s Selecting previously unselected package libjnr-unixsocket-java. 1812s Preparing to unpack .../115-libjnr-unixsocket-java_0.38.21-2_all.deb ... 1812s Unpacking libjnr-unixsocket-java (0.38.21-2) ... 1812s Selecting previously unselected package libactivation-java. 1812s Preparing to unpack .../116-libactivation-java_1.2.0-2_all.deb ... 1812s Unpacking libactivation-java (1.2.0-2) ... 1812s Selecting previously unselected package libmail-java. 1812s Preparing to unpack .../117-libmail-java_1.6.5-2_all.deb ... 1812s Unpacking libmail-java (1.6.5-2) ... 1812s Selecting previously unselected package libcommons-logging-java. 1812s Preparing to unpack .../118-libcommons-logging-java_1.3.0-1ubuntu1_all.deb ... 1812s Unpacking libcommons-logging-java (1.3.0-1ubuntu1) ... 1812s Selecting previously unselected package libjaxb-api-java. 1812s Preparing to unpack .../119-libjaxb-api-java_2.3.1-1_all.deb ... 1812s Unpacking libjaxb-api-java (2.3.1-1) ... 1812s Selecting previously unselected package libspring-core-java. 1812s Preparing to unpack .../120-libspring-core-java_4.3.30-2_all.deb ... 1812s Unpacking libspring-core-java (4.3.30-2) ... 1812s Selecting previously unselected package libspring-beans-java. 1812s Preparing to unpack .../121-libspring-beans-java_4.3.30-2_all.deb ... 1812s Unpacking libspring-beans-java (4.3.30-2) ... 1812s Selecting previously unselected package libtaglibs-standard-spec-java. 1812s Preparing to unpack .../122-libtaglibs-standard-spec-java_1.2.5-3_all.deb ... 1812s Unpacking libtaglibs-standard-spec-java (1.2.5-3) ... 1812s Selecting previously unselected package libtaglibs-standard-impl-java. 1812s Preparing to unpack .../123-libtaglibs-standard-impl-java_1.2.5-3_all.deb ... 1812s Unpacking libtaglibs-standard-impl-java (1.2.5-3) ... 1812s Selecting previously unselected package libeclipse-jdt-core-java. 1812s Preparing to unpack .../124-libeclipse-jdt-core-java_3.32.0+eclipse4.26-2_all.deb ... 1812s Unpacking libeclipse-jdt-core-java (3.32.0+eclipse4.26-2) ... 1812s Selecting previously unselected package libtomcat9-java. 1812s Preparing to unpack .../125-libtomcat9-java_9.0.70-1ubuntu1_all.deb ... 1812s Unpacking libtomcat9-java (9.0.70-1ubuntu1) ... 1812s Selecting previously unselected package libjetty9-extra-java. 1812s Preparing to unpack .../126-libjetty9-extra-java_9.4.53-1_all.deb ... 1812s Unpacking libjetty9-extra-java (9.4.53-1) ... 1812s Selecting previously unselected package libjctools-java. 1812s Preparing to unpack .../127-libjctools-java_2.0.2-1_all.deb ... 1812s Unpacking libjctools-java (2.0.2-1) ... 1812s Selecting previously unselected package libnetty-java. 1812s Preparing to unpack .../128-libnetty-java_1%3a4.1.48-9_all.deb ... 1812s Unpacking libnetty-java (1:4.1.48-9) ... 1813s Selecting previously unselected package libslf4j-java. 1813s Preparing to unpack .../129-libslf4j-java_1.7.32-1_all.deb ... 1813s Unpacking libslf4j-java (1.7.32-1) ... 1813s Selecting previously unselected package libsnappy1v5:s390x. 1813s Preparing to unpack .../130-libsnappy1v5_1.1.10-1_s390x.deb ... 1813s Unpacking libsnappy1v5:s390x (1.1.10-1) ... 1813s Selecting previously unselected package libsnappy-jni. 1813s Preparing to unpack .../131-libsnappy-jni_1.1.10.5-1_s390x.deb ... 1813s Unpacking libsnappy-jni (1.1.10.5-1) ... 1813s Selecting previously unselected package libsnappy-java. 1813s Preparing to unpack .../132-libsnappy-java_1.1.10.5-1_all.deb ... 1813s Unpacking libsnappy-java (1.1.10.5-1) ... 1813s Selecting previously unselected package libapr1:s390x. 1813s Preparing to unpack .../133-libapr1_1.7.2-3_s390x.deb ... 1813s Unpacking libapr1:s390x (1.7.2-3) ... 1813s Selecting previously unselected package libnetty-tcnative-jni. 1813s Preparing to unpack .../134-libnetty-tcnative-jni_2.0.28-1build1_s390x.deb ... 1813s Unpacking libnetty-tcnative-jni (2.0.28-1build1) ... 1813s Selecting previously unselected package libnetty-tcnative-java. 1813s Preparing to unpack .../135-libnetty-tcnative-java_2.0.28-1build1_all.deb ... 1813s Unpacking libnetty-tcnative-java (2.0.28-1build1) ... 1813s Selecting previously unselected package liblog4j1.2-java. 1813s Preparing to unpack .../136-liblog4j1.2-java_1.2.17-11_all.deb ... 1813s Unpacking liblog4j1.2-java (1.2.17-11) ... 1813s Selecting previously unselected package libzookeeper-java. 1813s Preparing to unpack .../137-libzookeeper-java_3.9.1-1build1_all.deb ... 1813s Unpacking libzookeeper-java (3.9.1-1build1) ... 1813s Selecting previously unselected package zookeeper. 1813s Preparing to unpack .../138-zookeeper_3.9.1-1build1_all.deb ... 1813s Unpacking zookeeper (3.9.1-1build1) ... 1813s Selecting previously unselected package zookeeperd. 1813s Preparing to unpack .../139-zookeeperd_3.9.1-1build1_all.deb ... 1813s Unpacking zookeeperd (3.9.1-1build1) ... 1813s Selecting previously unselected package fonts-font-awesome. 1813s Preparing to unpack .../140-fonts-font-awesome_5.0.10+really4.7.0~dfsg-4.1_all.deb ... 1813s Unpacking fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ... 1813s Selecting previously unselected package libio-pty-perl. 1813s Preparing to unpack .../141-libio-pty-perl_1%3a1.20-1_s390x.deb ... 1813s Unpacking libio-pty-perl (1:1.20-1) ... 1813s Selecting previously unselected package libipc-run-perl. 1813s Preparing to unpack .../142-libipc-run-perl_20231003.0-1_all.deb ... 1813s Unpacking libipc-run-perl (20231003.0-1) ... 1813s Selecting previously unselected package libjs-jquery. 1813s Preparing to unpack .../143-libjs-jquery_3.6.1+dfsg+~3.5.14-1_all.deb ... 1813s Unpacking libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 1813s Selecting previously unselected package libjs-underscore. 1813s Preparing to unpack .../144-libjs-underscore_1.13.4~dfsg+~1.11.4-3_all.deb ... 1813s Unpacking libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 1813s Selecting previously unselected package libjs-sphinxdoc. 1813s Preparing to unpack .../145-libjs-sphinxdoc_7.2.6-4_all.deb ... 1813s Unpacking libjs-sphinxdoc (7.2.6-4) ... 1813s Selecting previously unselected package libpq5:s390x. 1813s Preparing to unpack .../146-libpq5_16.2-1_s390x.deb ... 1813s Unpacking libpq5:s390x (16.2-1) ... 1813s Selecting previously unselected package libtime-duration-perl. 1813s Preparing to unpack .../147-libtime-duration-perl_1.21-2_all.deb ... 1813s Unpacking libtime-duration-perl (1.21-2) ... 1813s Selecting previously unselected package libtimedate-perl. 1813s Preparing to unpack .../148-libtimedate-perl_2.3300-2_all.deb ... 1813s Unpacking libtimedate-perl (2.3300-2) ... 1813s Selecting previously unselected package libxslt1.1:s390x. 1813s Preparing to unpack .../149-libxslt1.1_1.1.35-1_s390x.deb ... 1813s Unpacking libxslt1.1:s390x (1.1.35-1) ... 1813s Selecting previously unselected package moreutils. 1813s Preparing to unpack .../150-moreutils_0.69-1_s390x.deb ... 1813s Unpacking moreutils (0.69-1) ... 1813s Selecting previously unselected package python3-cdiff. 1813s Preparing to unpack .../151-python3-cdiff_1.0-1.1_all.deb ... 1813s Unpacking python3-cdiff (1.0-1.1) ... 1813s Selecting previously unselected package python3-colorama. 1813s Preparing to unpack .../152-python3-colorama_0.4.6-4_all.deb ... 1813s Unpacking python3-colorama (0.4.6-4) ... 1813s Selecting previously unselected package python3-click. 1813s Preparing to unpack .../153-python3-click_8.1.6-1_all.deb ... 1813s Unpacking python3-click (8.1.6-1) ... 1813s Selecting previously unselected package python3-dateutil. 1813s Preparing to unpack .../154-python3-dateutil_2.8.2-3_all.deb ... 1813s Unpacking python3-dateutil (2.8.2-3) ... 1813s Selecting previously unselected package python3-wcwidth. 1813s Preparing to unpack .../155-python3-wcwidth_0.2.5+dfsg1-1.1ubuntu1_all.deb ... 1813s Unpacking python3-wcwidth (0.2.5+dfsg1-1.1ubuntu1) ... 1813s Selecting previously unselected package python3-prettytable. 1813s Preparing to unpack .../156-python3-prettytable_3.6.0-1_all.deb ... 1813s Unpacking python3-prettytable (3.6.0-1) ... 1813s Selecting previously unselected package python3-psutil. 1813s Preparing to unpack .../157-python3-psutil_5.9.8-1_s390x.deb ... 1813s Unpacking python3-psutil (5.9.8-1) ... 1813s Selecting previously unselected package python3-psycopg2. 1813s Preparing to unpack .../158-python3-psycopg2_2.9.9-1_s390x.deb ... 1813s Unpacking python3-psycopg2 (2.9.9-1) ... 1813s Selecting previously unselected package python3-greenlet. 1813s Preparing to unpack .../159-python3-greenlet_3.0.1-2_s390x.deb ... 1813s Unpacking python3-greenlet (3.0.1-2) ... 1813s Selecting previously unselected package python3-dnspython. 1813s Preparing to unpack .../160-python3-dnspython_2.6.1-1ubuntu1_all.deb ... 1813s Unpacking python3-dnspython (2.6.1-1ubuntu1) ... 1813s Selecting previously unselected package python3-eventlet. 1813s Preparing to unpack .../161-python3-eventlet_0.35.1-0ubuntu1_all.deb ... 1813s Unpacking python3-eventlet (0.35.1-0ubuntu1) ... 1813s Selecting previously unselected package python3-zope.event. 1813s Preparing to unpack .../162-python3-zope.event_5.0-0.1_all.deb ... 1813s Unpacking python3-zope.event (5.0-0.1) ... 1813s Selecting previously unselected package python3-zope.interface. 1813s Preparing to unpack .../163-python3-zope.interface_6.1-1_s390x.deb ... 1813s Unpacking python3-zope.interface (6.1-1) ... 1813s Selecting previously unselected package libc-ares2:s390x. 1813s Preparing to unpack .../164-libc-ares2_1.27.0-1_s390x.deb ... 1813s Unpacking libc-ares2:s390x (1.27.0-1) ... 1813s Selecting previously unselected package libev4:s390x. 1813s Preparing to unpack .../165-libev4_1%3a4.33-2_s390x.deb ... 1813s Unpacking libev4:s390x (1:4.33-2) ... 1813s Selecting previously unselected package python3-gevent. 1813s Preparing to unpack .../166-python3-gevent_23.9.1-0.2_s390x.deb ... 1813s Unpacking python3-gevent (23.9.1-0.2) ... 1814s Selecting previously unselected package python3-kerberos. 1814s Preparing to unpack .../167-python3-kerberos_1.1.14-3.1build8_s390x.deb ... 1814s Unpacking python3-kerberos (1.1.14-3.1build8) ... 1814s Selecting previously unselected package python3-pure-sasl. 1814s Preparing to unpack .../168-python3-pure-sasl_0.5.1+dfsg1-4_all.deb ... 1814s Unpacking python3-pure-sasl (0.5.1+dfsg1-4) ... 1814s Selecting previously unselected package python3-kazoo. 1814s Preparing to unpack .../169-python3-kazoo_2.9.0-2_all.deb ... 1814s Unpacking python3-kazoo (2.9.0-2) ... 1814s Selecting previously unselected package patroni. 1814s Preparing to unpack .../170-patroni_3.2.2-2_all.deb ... 1814s Unpacking patroni (3.2.2-2) ... 1814s Selecting previously unselected package sphinx-rtd-theme-common. 1814s Preparing to unpack .../171-sphinx-rtd-theme-common_2.0.0+dfsg-1_all.deb ... 1814s Unpacking sphinx-rtd-theme-common (2.0.0+dfsg-1) ... 1814s Selecting previously unselected package patroni-doc. 1814s Preparing to unpack .../172-patroni-doc_3.2.2-2_all.deb ... 1814s Unpacking patroni-doc (3.2.2-2) ... 1814s Selecting previously unselected package postgresql-client-16. 1814s Preparing to unpack .../173-postgresql-client-16_16.2-1_s390x.deb ... 1814s Unpacking postgresql-client-16 (16.2-1) ... 1814s Selecting previously unselected package postgresql-16. 1814s Preparing to unpack .../174-postgresql-16_16.2-1_s390x.deb ... 1814s Unpacking postgresql-16 (16.2-1) ... 1814s Selecting previously unselected package postgresql. 1814s Preparing to unpack .../175-postgresql_16+257_all.deb ... 1814s Unpacking postgresql (16+257) ... 1814s Selecting previously unselected package python3-parse. 1814s Preparing to unpack .../176-python3-parse_1.19.0-0.2_all.deb ... 1814s Unpacking python3-parse (1.19.0-0.2) ... 1814s Selecting previously unselected package python3-parse-type. 1814s Preparing to unpack .../177-python3-parse-type_0.6.2-1_all.deb ... 1814s Unpacking python3-parse-type (0.6.2-1) ... 1814s Selecting previously unselected package python3-behave. 1814s Preparing to unpack .../178-python3-behave_1.2.6-5_all.deb ... 1814s Unpacking python3-behave (1.2.6-5) ... 1814s Selecting previously unselected package python3-coverage. 1814s Preparing to unpack .../179-python3-coverage_7.3.2-0ubuntu1_s390x.deb ... 1814s Unpacking python3-coverage (7.3.2-0ubuntu1) ... 1814s Selecting previously unselected package autopkgtest-satdep. 1814s Preparing to unpack .../180-5-autopkgtest-satdep.deb ... 1814s Unpacking autopkgtest-satdep (0) ... 1814s Setting up postgresql-client-common (257) ... 1814s Setting up libgraphite2-3:s390x (1.3.14-2) ... 1814s Setting up libxcb-dri3-0:s390x (1.15-1) ... 1814s Setting up liblcms2-2:s390x (2.14-2) ... 1814s Setting up libtaglibs-standard-spec-java (1.2.5-3) ... 1814s Setting up libpixman-1-0:s390x (0.42.2-1) ... 1814s Setting up libjackson2-annotations-java (2.14.0-1) ... 1814s Setting up libsharpyuv0:s390x (1.3.2-0.4) ... 1814s Setting up libx11-xcb1:s390x (2:1.8.7-1) ... 1814s Setting up libslf4j-java (1.7.32-1) ... 1814s Setting up libdrm-nouveau2:s390x (2.4.120-2) ... 1814s Setting up fonts-lato (2.015-1) ... 1814s Setting up libxdamage1:s390x (1:1.1.6-1) ... 1814s Setting up libxcb-xfixes0:s390x (1.15-1) ... 1814s Setting up libjsr305-java (0.1~+svn49-11) ... 1814s Setting up hicolor-icon-theme (0.17-2) ... 1814s Setting up libxi6:s390x (2:1.8.1-1) ... 1814s Setting up java-common (0.75+exp1) ... 1814s Setting up libxrender1:s390x (1:0.9.10-1.1) ... 1814s Setting up libdatrie1:s390x (0.2.13-3) ... 1814s Setting up libcommons-cli-java (1.6.0-1) ... 1814s Setting up libio-pty-perl (1:1.20-1) ... 1814s Setting up python3-colorama (0.4.6-4) ... 1815s Setting up libxcb-render0:s390x (1.15-1) ... 1815s Setting up python3-zope.event (5.0-0.1) ... 1815s Setting up python3-zope.interface (6.1-1) ... 1815s Setting up libdrm-radeon1:s390x (2.4.120-2) ... 1815s Setting up libglvnd0:s390x (1.7.0-1) ... 1815s Setting up libev4:s390x (1:4.33-2) ... 1815s Setting up libxcb-glx0:s390x (1.15-1) ... 1815s Setting up python3-cdiff (1.0-1.1) ... 1815s Setting up libgdk-pixbuf2.0-common (2.42.10+dfsg-3) ... 1815s Setting up libasm-java (9.6~us1-0ubuntu1) ... 1815s Setting up x11-common (1:7.7+23ubuntu2) ... 1815s Setting up libpq5:s390x (16.2-1) ... 1815s Setting up libdeflate0:s390x (1.19-1) ... 1815s Setting up libapr1:s390x (1.7.2-3) ... 1815s Setting up python3-kerberos (1.1.14-3.1build8) ... 1815s Setting up liblog4j1.2-java (1.2.17-11) ... 1815s Setting up libel-api-java (3.0.0-3) ... 1815s Setting up python3-coverage (7.3.2-0ubuntu1) ... 1816s Setting up libxcb-shm0:s390x (1.15-1) ... 1816s Setting up libc-ares2:s390x (1.27.0-1) ... 1816s Setting up python3-click (8.1.6-1) ... 1816s Setting up libjnr-x86asm-java (1.0.2-5.1) ... 1816s Setting up libjbig0:s390x (2.1-6.1ubuntu1) ... 1816s Setting up python3-psutil (5.9.8-1) ... 1816s Setting up libeclipse-jdt-core-java (3.32.0+eclipse4.26-2) ... 1816s Setting up libxxf86vm1:s390x (1:1.1.4-1build3) ... 1816s Setting up libsnappy1v5:s390x (1.1.10-1) ... 1816s Setting up libxcb-present0:s390x (1.15-1) ... 1816s Setting up libtaglibs-standard-impl-java (1.2.5-3) ... 1816s Setting up libjctools-java (2.0.2-1) ... 1816s Setting up libdropwizard-metrics-java (3.2.6-1) ... 1816s Setting up libasound2-data (1.2.10-3build1) ... 1816s Setting up python3-wcwidth (0.2.5+dfsg1-1.1ubuntu1) ... 1816s Setting up libfreetype6:s390x (2.13.2+dfsg-1) ... 1816s Setting up libfindbugs-annotations-java (3.1.0~preview2-3) ... 1816s Setting up libnetty-tcnative-jni (2.0.28-1build1) ... 1816s Setting up ssl-cert (1.1.2ubuntu1) ... 1817s Created symlink /etc/systemd/system/multi-user.target.wants/ssl-cert.service → /usr/lib/systemd/system/ssl-cert.service. 1817s Setting up libxfixes3:s390x (1:6.0.0-2) ... 1817s Setting up libxcb-sync1:s390x (1.15-1) ... 1817s Setting up libapache-pom-java (29-2) ... 1817s Setting up libavahi-common-data:s390x (0.8-13ubuntu2) ... 1817s Setting up libatinject-jsr330-api-java (1.0+ds1-5) ... 1817s Setting up libwebsocket-api-java (1.1-2) ... 1817s Setting up python3-greenlet (3.0.1-2) ... 1817s Setting up libxinerama1:s390x (2:1.1.4-3) ... 1817s Setting up fonts-dejavu-mono (2.37-8) ... 1817s Setting up libxrandr2:s390x (2:1.5.2-2) ... 1817s Setting up python3-psycopg2 (2.9.9-1) ... 1817s Setting up fonts-dejavu-core (2.37-8) ... 1817s Setting up libipc-run-perl (20231003.0-1) ... 1817s Setting up libpcsclite1:s390x (2.0.0-1) ... 1817s Setting up libjpeg-turbo8:s390x (2.1.5-2ubuntu1) ... 1817s Setting up libactivation-java (1.2.0-2) ... 1817s Setting up libtomcat9-java (9.0.70-1ubuntu1) ... 1817s Setting up libhamcrest-java (2.2-2) ... 1817s Setting up libglapi-mesa:s390x (24.0.1-1ubuntu1) ... 1817s Setting up libjsp-api-java (2.3.4-3) ... 1817s Setting up libvulkan1:s390x (1.3.275.0-1) ... 1817s Setting up libtime-duration-perl (1.21-2) ... 1817s Setting up libwebp7:s390x (1.3.2-0.4) ... 1817s Setting up libtimedate-perl (2.3300-2) ... 1817s Setting up libxcb-dri2-0:s390x (1.15-1) ... 1817s Setting up libgif7:s390x (5.2.1-2.5) ... 1817s Setting up libxshmfence1:s390x (1.3-1build4) ... 1817s Setting up libmail-java (1.6.5-2) ... 1817s Setting up at-spi2-common (2.50.0-1) ... 1817s Setting up python3-dnspython (2.6.1-1ubuntu1) ... 1818s Setting up libnetty-java (1:4.1.48-9) ... 1818s Setting up libxcb-randr0:s390x (1.15-1) ... 1818s Setting up python3-parse (1.19.0-0.2) ... 1818s Setting up libjson-perl (4.10000-1) ... 1818s Setting up libasound2:s390x (1.2.10-3build1) ... 1818s Setting up libxslt1.1:s390x (1.1.35-1) ... 1818s Setting up libservlet-api-java (4.0.1-2) ... 1818s Setting up libjackson2-core-java (2.14.1-1) ... 1818s Setting up libharfbuzz0b:s390x (8.3.0-2) ... 1818s Setting up libthai-data (0.1.29-2) ... 1818s Setting up python3-dateutil (2.8.2-3) ... 1818s Setting up libgtk2.0-common (2.24.33-2ubuntu2) ... 1818s Setting up libjffi-jni:s390x (1.3.13+ds-1) ... 1818s Setting up libatk1.0-0:s390x (2.50.0-1) ... 1818s Setting up libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 1818s Setting up ca-certificates-java (20240118) ... 1818s No JRE found. Skipping Java certificates setup. 1818s Setting up python3-prettytable (3.6.0-1) ... 1818s Setting up libllvm17:s390x (1:17.0.6-5build1) ... 1818s Setting up libsnappy-jni (1.1.10.5-1) ... 1818s Setting up libxcomposite1:s390x (1:0.4.5-1build2) ... 1818s Setting up fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ... 1818s Setting up sphinx-rtd-theme-common (2.0.0+dfsg-1) ... 1818s Setting up libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 1818s Setting up libdrm-amdgpu1:s390x (2.4.120-2) ... 1818s Setting up libjnr-constants-java (0.10.4-2) ... 1818s Setting up libjpeg8:s390x (8c-2ubuntu11) ... 1818s Setting up libjaxb-api-java (2.3.1-1) ... 1818s Setting up libjffi-java (1.3.13+ds-1) ... 1818s Setting up libjetty9-java (9.4.53-1) ... 1818s Setting up moreutils (0.69-1) ... 1818s Setting up python3-pure-sasl (0.5.1+dfsg1-4) ... 1818s Setting up fontconfig-config (2.15.0-1ubuntu1) ... 1818s Setting up libxtst6:s390x (2:1.2.3-1.1) ... 1818s Setting up libxcursor1:s390x (1:1.2.1-1) ... 1818s Setting up postgresql-client-16 (16.2-1) ... 1819s update-alternatives: using /usr/share/postgresql/16/man/man1/psql.1.gz to provide /usr/share/man/man1/psql.1.gz (psql.1.gz) in auto mode 1819s Setting up libgl1-mesa-dri:s390x (24.0.1-1ubuntu1) ... 1819s Setting up libcommons-parent-java (56-1) ... 1819s Setting up libavahi-common3:s390x (0.8-13ubuntu2) ... 1819s Setting up libcommons-logging-java (1.3.0-1ubuntu1) ... 1819s Setting up python3-gevent (23.9.1-0.2) ... 1819s Setting up libjackson2-databind-java (2.14.0-1) ... 1819s Setting up libthai0:s390x (0.1.29-2) ... 1819s Setting up python3-parse-type (0.6.2-1) ... 1819s Setting up python3-eventlet (0.35.1-0ubuntu1) ... 1819s Setting up python3-kazoo (2.9.0-2) ... 1819s Setting up postgresql-common (257) ... 1820s 1820s Creating config file /etc/postgresql-common/createcluster.conf with new version 1820s Building PostgreSQL dictionaries from installed myspell/hunspell packages... 1820s Removing obsolete dictionary files: 1820s Created symlink /etc/systemd/system/multi-user.target.wants/postgresql.service → /usr/lib/systemd/system/postgresql.service. 1821s Setting up libjs-sphinxdoc (7.2.6-4) ... 1821s Setting up libtiff6:s390x (4.5.1+git230720-3ubuntu1) ... 1821s Setting up libgdk-pixbuf-2.0-0:s390x (2.42.10+dfsg-3) ... 1821s Setting up python3-behave (1.2.6-5) ... 1821s /usr/lib/python3/dist-packages/behave/formatter/ansi_escapes.py:57: SyntaxWarning: invalid escape sequence '\[' 1821s _ANSI_ESCAPE_PATTERN = re.compile(u"\x1b\[\d+[mA]", re.UNICODE) 1821s /usr/lib/python3/dist-packages/behave/matchers.py:267: SyntaxWarning: invalid escape sequence '\d' 1821s """Registers a custom type that will be available to "parse" 1821s Setting up libsnappy-java (1.1.10.5-1) ... 1821s Setting up libfontconfig1:s390x (2.15.0-1ubuntu1) ... 1821s Setting up patroni (3.2.2-2) ... 1821s Created symlink /etc/systemd/system/multi-user.target.wants/patroni.service → /usr/lib/systemd/system/patroni.service. 1822s Setting up libavahi-client3:s390x (0.8-13ubuntu2) ... 1822s Setting up libjnr-ffi-java (2.2.15-2) ... 1822s Setting up gtk-update-icon-cache (3.24.40-2ubuntu1) ... 1822s Setting up fontconfig (2.15.0-1ubuntu1) ... 1824s Regenerating fonts cache... done. 1824s Setting up libglx-mesa0:s390x (24.0.1-1ubuntu1) ... 1824s Setting up postgresql-16 (16.2-1) ... 1824s Creating new PostgreSQL cluster 16/main ... 1824s /usr/lib/postgresql/16/bin/initdb -D /var/lib/postgresql/16/main --auth-local peer --auth-host scram-sha-256 --no-instructions 1824s The files belonging to this database system will be owned by user "postgres". 1824s This user must also own the server process. 1824s 1824s The database cluster will be initialized with locale "C.UTF-8". 1824s The default database encoding has accordingly been set to "UTF8". 1824s The default text search configuration will be set to "english". 1824s 1824s Data page checksums are disabled. 1824s 1824s fixing permissions on existing directory /var/lib/postgresql/16/main ... ok 1824s creating subdirectories ... ok 1824s selecting dynamic shared memory implementation ... posix 1824s selecting default max_connections ... 100 1824s selecting default shared_buffers ... 128MB 1824s selecting default time zone ... Etc/UTC 1824s creating configuration files ... ok 1824s running bootstrap script ... ok 1825s performing post-bootstrap initialization ... ok 1825s syncing data to disk ... ok 1829s Setting up libglx0:s390x (1.7.0-1) ... 1829s Setting up libspring-core-java (4.3.30-2) ... 1829s Setting up libcommons-io-java (2.11.0-2) ... 1829s Setting up patroni-doc (3.2.2-2) ... 1829s Setting up libpango-1.0-0:s390x (1.51.0+ds-4) ... 1829s Setting up libcairo2:s390x (1.18.0-1) ... 1829s Setting up libjnr-enxio-java (0.32.16-1) ... 1829s Setting up libgl1:s390x (1.7.0-1) ... 1829s Setting up libcups2:s390x (2.4.6-0ubuntu3) ... 1829s Setting up postgresql (16+257) ... 1829s Setting up libpangoft2-1.0-0:s390x (1.51.0+ds-4) ... 1829s Setting up libjnr-posix-java (3.1.18-1) ... 1829s Setting up libpangocairo-1.0-0:s390x (1.51.0+ds-4) ... 1829s Setting up libspring-beans-java (4.3.30-2) ... 1829s Setting up openjdk-21-jre-headless:s390x (21.0.2+13-2) ... 1829s update-alternatives: using /usr/lib/jvm/java-21-openjdk-s390x/bin/java to provide /usr/bin/java (java) in auto mode 1829s update-alternatives: using /usr/lib/jvm/java-21-openjdk-s390x/bin/jpackage to provide /usr/bin/jpackage (jpackage) in auto mode 1829s update-alternatives: using /usr/lib/jvm/java-21-openjdk-s390x/bin/keytool to provide /usr/bin/keytool (keytool) in auto mode 1829s update-alternatives: using /usr/lib/jvm/java-21-openjdk-s390x/bin/rmiregistry to provide /usr/bin/rmiregistry (rmiregistry) in auto mode 1829s update-alternatives: using /usr/lib/jvm/java-21-openjdk-s390x/lib/jexec to provide /usr/bin/jexec (jexec) in auto mode 1829s Setting up libjnr-unixsocket-java (0.38.21-2) ... 1829s Setting up libjetty9-extra-java (9.4.53-1) ... 1829s Setting up libguava-java (32.0.1-1) ... 1829s Setting up adwaita-icon-theme (46~rc-1) ... 1829s update-alternatives: using /usr/share/icons/Adwaita/cursor.theme to provide /usr/share/icons/default/index.theme (x-cursor-theme) in auto mode 1829s Setting up liberror-prone-java (2.18.0-1) ... 1829s Setting up libgtk2.0-0:s390x (2.24.33-2ubuntu2) ... 1829s Setting up humanity-icon-theme (0.6.16) ... 1829s Setting up ubuntu-mono (24.04-0ubuntu1) ... 1829s Processing triggers for man-db (2.12.0-3) ... 1829s Processing triggers for libc-bin (2.39-0ubuntu2) ... 1829s Processing triggers for ca-certificates-java (20240118) ... 1829s Adding debian:ACCVRAIZ1.pem 1829s Adding debian:AC_RAIZ_FNMT-RCM.pem 1829s Adding debian:AC_RAIZ_FNMT-RCM_SERVIDORES_SEGUROS.pem 1829s Adding debian:ANF_Secure_Server_Root_CA.pem 1829s Adding debian:Actalis_Authentication_Root_CA.pem 1829s Adding debian:AffirmTrust_Commercial.pem 1829s Adding debian:AffirmTrust_Networking.pem 1829s Adding debian:AffirmTrust_Premium.pem 1829s Adding debian:AffirmTrust_Premium_ECC.pem 1829s Adding debian:Amazon_Root_CA_1.pem 1829s Adding debian:Amazon_Root_CA_2.pem 1829s Adding debian:Amazon_Root_CA_3.pem 1829s Adding debian:Amazon_Root_CA_4.pem 1829s Adding debian:Atos_TrustedRoot_2011.pem 1829s Adding debian:Atos_TrustedRoot_Root_CA_ECC_TLS_2021.pem 1829s Adding debian:Atos_TrustedRoot_Root_CA_RSA_TLS_2021.pem 1829s Adding debian:Autoridad_de_Certificacion_Firmaprofesional_CIF_A62634068.pem 1829s Adding debian:BJCA_Global_Root_CA1.pem 1829s Adding debian:BJCA_Global_Root_CA2.pem 1829s Adding debian:Baltimore_CyberTrust_Root.pem 1829s Adding debian:Buypass_Class_2_Root_CA.pem 1829s Adding debian:Buypass_Class_3_Root_CA.pem 1829s Adding debian:CA_Disig_Root_R2.pem 1829s Adding debian:CFCA_EV_ROOT.pem 1829s Adding debian:COMODO_Certification_Authority.pem 1829s Adding debian:COMODO_ECC_Certification_Authority.pem 1829s Adding debian:COMODO_RSA_Certification_Authority.pem 1829s Adding debian:Certainly_Root_E1.pem 1829s Adding debian:Certainly_Root_R1.pem 1829s Adding debian:Certigna.pem 1829s Adding debian:Certigna_Root_CA.pem 1829s Adding debian:Certum_EC-384_CA.pem 1829s Adding debian:Certum_Trusted_Network_CA.pem 1829s Adding debian:Certum_Trusted_Network_CA_2.pem 1829s Adding debian:Certum_Trusted_Root_CA.pem 1829s Adding debian:CommScope_Public_Trust_ECC_Root-01.pem 1829s Adding debian:CommScope_Public_Trust_ECC_Root-02.pem 1829s Adding debian:CommScope_Public_Trust_RSA_Root-01.pem 1829s Adding debian:CommScope_Public_Trust_RSA_Root-02.pem 1829s Adding debian:Comodo_AAA_Services_root.pem 1829s Adding debian:D-TRUST_BR_Root_CA_1_2020.pem 1829s Adding debian:D-TRUST_EV_Root_CA_1_2020.pem 1829s Adding debian:D-TRUST_Root_Class_3_CA_2_2009.pem 1829s Adding debian:D-TRUST_Root_Class_3_CA_2_EV_2009.pem 1829s Adding debian:DigiCert_Assured_ID_Root_CA.pem 1829s Adding debian:DigiCert_Assured_ID_Root_G2.pem 1829s Adding debian:DigiCert_Assured_ID_Root_G3.pem 1829s Adding debian:DigiCert_Global_Root_CA.pem 1829s Adding debian:DigiCert_Global_Root_G2.pem 1829s Adding debian:DigiCert_Global_Root_G3.pem 1829s Adding debian:DigiCert_High_Assurance_EV_Root_CA.pem 1829s Adding debian:DigiCert_TLS_ECC_P384_Root_G5.pem 1829s Adding debian:DigiCert_TLS_RSA4096_Root_G5.pem 1829s Adding debian:DigiCert_Trusted_Root_G4.pem 1829s Adding debian:Entrust.net_Premium_2048_Secure_Server_CA.pem 1829s Adding debian:Entrust_Root_Certification_Authority.pem 1829s Adding debian:Entrust_Root_Certification_Authority_-_EC1.pem 1829s Adding debian:Entrust_Root_Certification_Authority_-_G2.pem 1829s Adding debian:Entrust_Root_Certification_Authority_-_G4.pem 1829s Adding debian:GDCA_TrustAUTH_R5_ROOT.pem 1829s Adding debian:GLOBALTRUST_2020.pem 1829s Adding debian:GTS_Root_R1.pem 1829s Adding debian:GTS_Root_R2.pem 1829s Adding debian:GTS_Root_R3.pem 1829s Adding debian:GTS_Root_R4.pem 1829s Adding debian:GlobalSign_ECC_Root_CA_-_R4.pem 1829s Adding debian:GlobalSign_ECC_Root_CA_-_R5.pem 1829s Adding debian:GlobalSign_Root_CA.pem 1829s Adding debian:GlobalSign_Root_CA_-_R3.pem 1829s Adding debian:GlobalSign_Root_CA_-_R6.pem 1829s Adding debian:GlobalSign_Root_E46.pem 1829s Adding debian:GlobalSign_Root_R46.pem 1829s Adding debian:Go_Daddy_Class_2_CA.pem 1829s Adding debian:Go_Daddy_Root_Certificate_Authority_-_G2.pem 1829s Adding debian:HARICA_TLS_ECC_Root_CA_2021.pem 1829s Adding debian:HARICA_TLS_RSA_Root_CA_2021.pem 1829s Adding debian:Hellenic_Academic_and_Research_Institutions_ECC_RootCA_2015.pem 1829s Adding debian:Hellenic_Academic_and_Research_Institutions_RootCA_2015.pem 1829s Adding debian:HiPKI_Root_CA_-_G1.pem 1829s Adding debian:Hongkong_Post_Root_CA_3.pem 1829s Adding debian:ISRG_Root_X1.pem 1829s Adding debian:ISRG_Root_X2.pem 1829s Adding debian:IdenTrust_Commercial_Root_CA_1.pem 1829s Adding debian:IdenTrust_Public_Sector_Root_CA_1.pem 1829s Adding debian:Izenpe.com.pem 1829s Adding debian:Microsec_e-Szigno_Root_CA_2009.pem 1829s Adding debian:Microsoft_ECC_Root_Certificate_Authority_2017.pem 1829s Adding debian:Microsoft_RSA_Root_Certificate_Authority_2017.pem 1829s Adding debian:NAVER_Global_Root_Certification_Authority.pem 1829s Adding debian:NetLock_Arany_=Class_Gold=_Főtanúsítvány.pem 1829s Adding debian:OISTE_WISeKey_Global_Root_GB_CA.pem 1829s Adding debian:OISTE_WISeKey_Global_Root_GC_CA.pem 1829s Adding debian:QuoVadis_Root_CA_1_G3.pem 1829s Adding debian:QuoVadis_Root_CA_2.pem 1829s Adding debian:QuoVadis_Root_CA_2_G3.pem 1829s Adding debian:QuoVadis_Root_CA_3.pem 1829s Adding debian:QuoVadis_Root_CA_3_G3.pem 1829s Adding debian:SSL.com_EV_Root_Certification_Authority_ECC.pem 1829s Adding debian:SSL.com_EV_Root_Certification_Authority_RSA_R2.pem 1829s Adding debian:SSL.com_Root_Certification_Authority_ECC.pem 1829s Adding debian:SSL.com_Root_Certification_Authority_RSA.pem 1829s Adding debian:SSL.com_TLS_ECC_Root_CA_2022.pem 1830s Adding debian:SSL.com_TLS_RSA_Root_CA_2022.pem 1830s Adding debian:SZAFIR_ROOT_CA2.pem 1830s Adding debian:Sectigo_Public_Server_Authentication_Root_E46.pem 1830s Adding debian:Sectigo_Public_Server_Authentication_Root_R46.pem 1830s Adding debian:SecureSign_RootCA11.pem 1830s Adding debian:SecureTrust_CA.pem 1830s Adding debian:Secure_Global_CA.pem 1830s Adding debian:Security_Communication_ECC_RootCA1.pem 1830s Adding debian:Security_Communication_RootCA2.pem 1830s Adding debian:Security_Communication_RootCA3.pem 1830s Adding debian:Security_Communication_Root_CA.pem 1830s Adding debian:Starfield_Class_2_CA.pem 1830s Adding debian:Starfield_Root_Certificate_Authority_-_G2.pem 1830s Adding debian:Starfield_Services_Root_Certificate_Authority_-_G2.pem 1830s Adding debian:SwissSign_Gold_CA_-_G2.pem 1830s Adding debian:SwissSign_Silver_CA_-_G2.pem 1830s Adding debian:T-TeleSec_GlobalRoot_Class_2.pem 1830s Adding debian:T-TeleSec_GlobalRoot_Class_3.pem 1830s Adding debian:TUBITAK_Kamu_SM_SSL_Kok_Sertifikasi_-_Surum_1.pem 1830s Adding debian:TWCA_Global_Root_CA.pem 1830s Adding debian:TWCA_Root_Certification_Authority.pem 1830s Adding debian:TeliaSonera_Root_CA_v1.pem 1830s Adding debian:Telia_Root_CA_v2.pem 1830s Adding debian:TrustAsia_Global_Root_CA_G3.pem 1830s Adding debian:TrustAsia_Global_Root_CA_G4.pem 1830s Adding debian:Trustwave_Global_Certification_Authority.pem 1830s Adding debian:Trustwave_Global_ECC_P256_Certification_Authority.pem 1830s Adding debian:Trustwave_Global_ECC_P384_Certification_Authority.pem 1830s Adding debian:TunTrust_Root_CA.pem 1830s Adding debian:UCA_Extended_Validation_Root.pem 1830s Adding debian:UCA_Global_G2_Root.pem 1830s Adding debian:USERTrust_ECC_Certification_Authority.pem 1830s Adding debian:USERTrust_RSA_Certification_Authority.pem 1830s Adding debian:XRamp_Global_CA_Root.pem 1830s Adding debian:certSIGN_ROOT_CA.pem 1830s Adding debian:certSIGN_Root_CA_G2.pem 1830s Adding debian:e-Szigno_Root_CA_2017.pem 1830s Adding debian:ePKI_Root_Certification_Authority.pem 1830s Adding debian:emSign_ECC_Root_CA_-_C3.pem 1830s Adding debian:emSign_ECC_Root_CA_-_G3.pem 1830s Adding debian:emSign_Root_CA_-_C1.pem 1830s Adding debian:emSign_Root_CA_-_G1.pem 1830s Adding debian:vTrus_ECC_Root_CA.pem 1830s Adding debian:vTrus_Root_CA.pem 1830s done. 1830s Setting up openjdk-21-jre:s390x (21.0.2+13-2) ... 1830s Setting up junit4 (4.13.2-4) ... 1830s Setting up default-jre-headless (2:1.21-75+exp1) ... 1830s Setting up default-jre (2:1.21-75+exp1) ... 1830s Setting up libnetty-tcnative-java (2.0.28-1build1) ... 1830s Setting up libzookeeper-java (3.9.1-1build1) ... 1830s Setting up zookeeper (3.9.1-1build1) ... 1830s warn: The home directory `/var/lib/zookeeper' already exists. Not touching this directory. 1830s warn: Warning: The home directory `/var/lib/zookeeper' does not belong to the user you are currently creating. 1830s update-alternatives: using /etc/zookeeper/conf_example to provide /etc/zookeeper/conf (zookeeper-conf) in auto mode 1830s Setting up zookeeperd (3.9.1-1build1) ... 1830s Setting up autopkgtest-satdep (0) ... 1836s (Reading database ... 71335 files and directories currently installed.) 1836s Removing autopkgtest-satdep (0) ... 1839s autopkgtest [12:48:05]: test acceptance-zookeeper: debian/tests/acceptance zookeeper "-e dcs_failsafe_mode" 1839s autopkgtest [12:48:05]: test acceptance-zookeeper: [----------------------- 1843s dpkg-architecture: warning: cannot determine CC system type, falling back to default (native compilation) 1843s ++ ls -1r /usr/lib/postgresql/ 1843s + for PG_VERSION in $(ls -1r /usr/lib/postgresql/) 1843s + echo '### PostgreSQL 16 acceptance-zookeeper -e dcs_failsafe_mode ###' 1843s + '[' 16 == 10 ']' 1843s + SKIP= 1843s + su postgres -p -c 'set -o pipefail; ETCD_UNSUPPORTED_ARCH=s390x DCS=zookeeper PATH=/usr/lib/postgresql/16/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin behave -e dcs_failsafe_mode | ts' 1843s ### PostgreSQL 16 acceptance-zookeeper -e dcs_failsafe_mode ### 1844s Mar 22 12:48:11 Feature: basic replication # features/basic_replication.feature:1 1844s Mar 22 12:48:11 We should check that the basic bootstrapping, replication and failover works. 1844s Mar 22 12:48:11 Scenario: check replication of a single table # features/basic_replication.feature:4 1844s Mar 22 12:48:11 Given I start postgres0 # features/steps/basic_replication.py:8 1847s Mar 22 12:48:14 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 1848s Mar 22 12:48:15 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 1848s Mar 22 12:48:15 When I issue a PATCH request to http://127.0.0.1:8008/config with {"ttl": 20, "synchronous_mode": true} # features/steps/patroni_api.py:71 1848s Mar 22 12:48:15 Then I receive a response code 200 # features/steps/patroni_api.py:98 1848s Mar 22 12:48:15 When I start postgres1 # features/steps/basic_replication.py:8 1851s Mar 22 12:48:18 And I configure and start postgres2 with a tag replicatefrom postgres0 # features/steps/cascading_replication.py:7 1854s Mar 22 12:48:21 And "sync" key in DCS has leader=postgres0 after 20 seconds # features/steps/cascading_replication.py:23 1854s Mar 22 12:48:21 And I add the table foo to postgres0 # features/steps/basic_replication.py:49 1854s Mar 22 12:48:21 Then table foo is present on postgres1 after 20 seconds # features/steps/basic_replication.py:89 1855s Mar 22 12:48:22 Then table foo is present on postgres2 after 20 seconds # features/steps/basic_replication.py:89 1859s Mar 22 12:48:26 1859s Mar 22 12:48:26 Scenario: check restart of sync replica # features/basic_replication.feature:17 1859s Mar 22 12:48:26 Given I shut down postgres2 # features/steps/basic_replication.py:29 1860s Mar 22 12:48:27 Then "sync" key in DCS has sync_standby=postgres1 after 5 seconds # features/steps/cascading_replication.py:23 1860s Mar 22 12:48:27 When I start postgres2 # features/steps/basic_replication.py:8 1862s Mar 22 12:48:29 And I shut down postgres1 # features/steps/basic_replication.py:29 1865s Mar 22 12:48:32 Then "sync" key in DCS has sync_standby=postgres2 after 10 seconds # features/steps/cascading_replication.py:23 1866s Mar 22 12:48:33 When I start postgres1 # features/steps/basic_replication.py:8 1868s Mar 22 12:48:35 Then "members/postgres1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 1869s Mar 22 12:48:36 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 1869s Mar 22 12:48:36 And Status code on GET http://127.0.0.1:8009/async is 200 after 3 seconds # features/steps/patroni_api.py:142 1869s Mar 22 12:48:36 1869s Mar 22 12:48:36 Scenario: check stuck sync replica # features/basic_replication.feature:28 1869s Mar 22 12:48:36 Given I issue a PATCH request to http://127.0.0.1:8008/config with {"pause": true, "maximum_lag_on_syncnode": 15000000, "postgresql": {"parameters": {"synchronous_commit": "remote_apply"}}} # features/steps/patroni_api.py:71 1870s Mar 22 12:48:36 Then I receive a response code 200 # features/steps/patroni_api.py:98 1870s Mar 22 12:48:36 And I create table on postgres0 # features/steps/basic_replication.py:69 1870s Mar 22 12:48:36 And table mytest is present on postgres1 after 2 seconds # features/steps/basic_replication.py:89 1871s Mar 22 12:48:37 And table mytest is present on postgres2 after 2 seconds # features/steps/basic_replication.py:89 1871s Mar 22 12:48:37 When I pause wal replay on postgres2 # features/steps/basic_replication.py:58 1871s Mar 22 12:48:37 And I load data on postgres0 # features/steps/basic_replication.py:80 1871s Mar 22 12:48:38 Then "sync" key in DCS has sync_standby=postgres1 after 15 seconds # features/steps/cascading_replication.py:23 1874s Mar 22 12:48:41 And I resume wal replay on postgres2 # features/steps/basic_replication.py:58 1874s Mar 22 12:48:41 And Status code on GET http://127.0.0.1:8009/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 1876s Mar 22 12:48:43 And Status code on GET http://127.0.0.1:8010/async is 200 after 3 seconds # features/steps/patroni_api.py:142 1876s Mar 22 12:48:43 When I issue a PATCH request to http://127.0.0.1:8008/config with {"pause": null, "maximum_lag_on_syncnode": -1, "postgresql": {"parameters": {"synchronous_commit": "on"}}} # features/steps/patroni_api.py:71 1876s Mar 22 12:48:43 Then I receive a response code 200 # features/steps/patroni_api.py:98 1876s Mar 22 12:48:43 And I drop table on postgres0 # features/steps/basic_replication.py:69 1876s Mar 22 12:48:43 1876s Mar 22 12:48:43 Scenario: check multi sync replication # features/basic_replication.feature:44 1876s Mar 22 12:48:43 Given I issue a PATCH request to http://127.0.0.1:8008/config with {"synchronous_node_count": 2} # features/steps/patroni_api.py:71 1876s Mar 22 12:48:43 Then I receive a response code 200 # features/steps/patroni_api.py:98 1876s Mar 22 12:48:43 Then "sync" key in DCS has sync_standby=postgres1,postgres2 after 10 seconds # features/steps/cascading_replication.py:23 1880s Mar 22 12:48:47 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 1880s Mar 22 12:48:47 And Status code on GET http://127.0.0.1:8009/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 1880s Mar 22 12:48:47 When I issue a PATCH request to http://127.0.0.1:8008/config with {"synchronous_node_count": 1} # features/steps/patroni_api.py:71 1880s Mar 22 12:48:47 Then I receive a response code 200 # features/steps/patroni_api.py:98 1880s Mar 22 12:48:47 And I shut down postgres1 # features/steps/basic_replication.py:29 1883s Mar 22 12:48:50 Then "sync" key in DCS has sync_standby=postgres2 after 10 seconds # features/steps/cascading_replication.py:23 1884s Mar 22 12:48:51 When I start postgres1 # features/steps/basic_replication.py:8 1886s Mar 22 12:48:53 Then "members/postgres1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 1887s Mar 22 12:48:54 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 1887s Mar 22 12:48:54 And Status code on GET http://127.0.0.1:8009/async is 200 after 3 seconds # features/steps/patroni_api.py:142 1887s Mar 22 12:48:54 1887s Mar 22 12:48:54 Scenario: check the basic failover in synchronous mode # features/basic_replication.feature:59 1887s Mar 22 12:48:54 Given I run patronictl.py pause batman # features/steps/patroni_api.py:86 1889s Mar 22 12:48:56 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 1889s Mar 22 12:48:56 When I sleep for 2 seconds # features/steps/patroni_api.py:39 1891s Mar 22 12:48:58 And I shut down postgres0 # features/steps/basic_replication.py:29 1892s Mar 22 12:48:59 And I run patronictl.py resume batman # features/steps/patroni_api.py:86 1893s Mar 22 12:49:00 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 1893s Mar 22 12:49:00 And postgres2 role is the primary after 24 seconds # features/steps/basic_replication.py:101 1913s Mar 22 12:49:20 And Response on GET http://127.0.0.1:8010/history contains recovery after 10 seconds # features/steps/patroni_api.py:156 1916s Mar 22 12:49:23 And there is a postgres2_cb.log with "on_role_change master batman" in postgres2 data directory # features/steps/cascading_replication.py:12 1916s Mar 22 12:49:23 When I issue a PATCH request to http://127.0.0.1:8010/config with {"synchronous_mode": null, "master_start_timeout": 0} # features/steps/patroni_api.py:71 1916s Mar 22 12:49:23 Then I receive a response code 200 # features/steps/patroni_api.py:98 1916s Mar 22 12:49:23 When I add the table bar to postgres2 # features/steps/basic_replication.py:49 1916s Mar 22 12:49:23 Then table bar is present on postgres1 after 20 seconds # features/steps/basic_replication.py:89 1919s Mar 22 12:49:26 And Response on GET http://127.0.0.1:8010/config contains master_start_timeout after 10 seconds # features/steps/patroni_api.py:156 1919s Mar 22 12:49:26 1919s Mar 22 12:49:26 Scenario: check rejoin of the former primary with pg_rewind # features/basic_replication.feature:75 1919s Mar 22 12:49:26 Given I add the table splitbrain to postgres0 # features/steps/basic_replication.py:49 1919s Mar 22 12:49:26 And I start postgres0 # features/steps/basic_replication.py:8 1919s Mar 22 12:49:26 Then postgres0 role is the secondary after 20 seconds # features/steps/basic_replication.py:101 1925s Mar 22 12:49:32 When I add the table buz to postgres2 # features/steps/basic_replication.py:49 1925s Mar 22 12:49:32 Then table buz is present on postgres0 after 20 seconds # features/steps/basic_replication.py:89 1926s Mar 22 12:49:33 1926s Mar 22 12:49:33 @reject-duplicate-name 1926s Mar 22 12:49:33 Scenario: check graceful rejection when two nodes have the same name # features/basic_replication.feature:83 1926s Mar 22 12:49:33 Given I start duplicate postgres0 on port 8011 # features/steps/basic_replication.py:13 1928s Mar 22 12:49:35 Then there is one of ["Can't start; there is already a node named 'postgres0' running"] CRITICAL in the dup-postgres0 patroni log after 5 seconds # features/steps/basic_replication.py:117 1933s Mar 22 12:49:39 1933s Mar 22 12:49:39 Feature: cascading replication # features/cascading_replication.feature:1 1933s Mar 22 12:49:39 We should check that patroni can do base backup and streaming from the replica 1933s Mar 22 12:49:39 Scenario: check a base backup and streaming replication from a replica # features/cascading_replication.feature:4 1933s Mar 22 12:49:39 Given I start postgres0 # features/steps/basic_replication.py:8 1936s Mar 22 12:49:43 And postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 1937s Mar 22 12:49:44 And I configure and start postgres1 with a tag clonefrom true # features/steps/cascading_replication.py:7 1940s Mar 22 12:49:47 And replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:108 1941s Mar 22 12:49:48 And I create label with "postgres0" in postgres0 data directory # features/steps/cascading_replication.py:18 1941s Mar 22 12:49:48 And I create label with "postgres1" in postgres1 data directory # features/steps/cascading_replication.py:18 1941s Mar 22 12:49:48 And "members/postgres1" key in DCS has state=running after 12 seconds # features/steps/cascading_replication.py:23 1941s Mar 22 12:49:48 And I configure and start postgres2 with a tag replicatefrom postgres1 # features/steps/cascading_replication.py:7 1944s Mar 22 12:49:51 Then replication works from postgres0 to postgres2 after 30 seconds # features/steps/basic_replication.py:108 1949s Mar 22 12:49:56 And there is a label with "postgres1" in postgres2 data directory # features/steps/cascading_replication.py:12 1954s Mar 22 12:50:01 1954s SKIP FEATURE citus: Citus extenstion isn't available 1954s SKIP Scenario check that worker cluster is registered in the coordinator: Citus extenstion isn't available 1954s SKIP Scenario coordinator failover updates pg_dist_node: Citus extenstion isn't available 1954s SKIP Scenario worker switchover doesn't break client queries on the coordinator: Citus extenstion isn't available 1954s SKIP Scenario worker primary restart doesn't break client queries on the coordinator: Citus extenstion isn't available 1954s SKIP Scenario check that in-flight transaction is rolled back after timeout when other workers need to change pg_dist_node: Citus extenstion isn't available 1954s Mar 22 12:50:01 Feature: citus # features/citus.feature:1 1954s Mar 22 12:50:01 We should check that coordinator discovers and registers workers and clients don't have errors when worker cluster switches over 1954s Mar 22 12:50:01 Scenario: check that worker cluster is registered in the coordinator # features/citus.feature:4 1954s Mar 22 12:50:01 Given I start postgres0 in citus group 0 # None 1954s Mar 22 12:50:01 And I start postgres2 in citus group 1 # None 1954s Mar 22 12:50:01 Then postgres0 is a leader in a group 0 after 10 seconds # None 1954s Mar 22 12:50:01 And postgres2 is a leader in a group 1 after 10 seconds # None 1954s Mar 22 12:50:01 When I start postgres1 in citus group 0 # None 1954s Mar 22 12:50:01 And I start postgres3 in citus group 1 # None 1954s Mar 22 12:50:01 Then replication works from postgres0 to postgres1 after 15 seconds # None 1954s Mar 22 12:50:01 Then replication works from postgres2 to postgres3 after 15 seconds # None 1954s Mar 22 12:50:01 And postgres0 is registered in the postgres0 as the primary in group 0 after 5 seconds # None 1954s Mar 22 12:50:01 And postgres2 is registered in the postgres0 as the primary in group 1 after 5 seconds # None 1954s Mar 22 12:50:01 1954s Mar 22 12:50:01 Scenario: coordinator failover updates pg_dist_node # features/citus.feature:16 1954s Mar 22 12:50:01 Given I run patronictl.py failover batman --group 0 --candidate postgres1 --force # None 1954s Mar 22 12:50:01 Then postgres1 role is the primary after 10 seconds # None 1954s Mar 22 12:50:01 And "members/postgres0" key in a group 0 in DCS has state=running after 15 seconds # None 1954s Mar 22 12:50:01 And replication works from postgres1 to postgres0 after 15 seconds # None 1954s Mar 22 12:50:01 And postgres1 is registered in the postgres2 as the primary in group 0 after 5 seconds # None 1954s Mar 22 12:50:01 And "sync" key in a group 0 in DCS has sync_standby=postgres0 after 15 seconds # None 1954s Mar 22 12:50:01 When I run patronictl.py switchover batman --group 0 --candidate postgres0 --force # None 1954s Mar 22 12:50:01 Then postgres0 role is the primary after 10 seconds # None 1954s Mar 22 12:50:01 And replication works from postgres0 to postgres1 after 15 seconds # None 1954s Mar 22 12:50:01 And postgres0 is registered in the postgres2 as the primary in group 0 after 5 seconds # None 1954s Mar 22 12:50:01 And "sync" key in a group 0 in DCS has sync_standby=postgres1 after 15 seconds # None 1954s Mar 22 12:50:01 1954s Mar 22 12:50:01 Scenario: worker switchover doesn't break client queries on the coordinator # features/citus.feature:29 1954s Mar 22 12:50:01 Given I create a distributed table on postgres0 # None 1954s Mar 22 12:50:01 And I start a thread inserting data on postgres0 # None 1954s Mar 22 12:50:01 When I run patronictl.py switchover batman --group 1 --force # None 1954s Mar 22 12:50:01 Then I receive a response returncode 0 # None 1954s Mar 22 12:50:01 And postgres3 role is the primary after 10 seconds # None 1954s Mar 22 12:50:01 And "members/postgres2" key in a group 1 in DCS has state=running after 15 seconds # None 1954s Mar 22 12:50:01 And replication works from postgres3 to postgres2 after 15 seconds # None 1954s Mar 22 12:50:01 And postgres3 is registered in the postgres0 as the primary in group 1 after 5 seconds # None 1954s Mar 22 12:50:01 And "sync" key in a group 1 in DCS has sync_standby=postgres2 after 15 seconds # None 1954s Mar 22 12:50:01 And a thread is still alive # None 1954s Mar 22 12:50:01 When I run patronictl.py switchover batman --group 1 --force # None 1954s Mar 22 12:50:01 Then I receive a response returncode 0 # None 1954s Mar 22 12:50:01 And postgres2 role is the primary after 10 seconds # None 1954s Mar 22 12:50:01 And replication works from postgres2 to postgres3 after 15 seconds # None 1954s Mar 22 12:50:01 And postgres2 is registered in the postgres0 as the primary in group 1 after 5 seconds # None 1954s Mar 22 12:50:01 And "sync" key in a group 1 in DCS has sync_standby=postgres3 after 15 seconds # None 1954s Mar 22 12:50:01 And a thread is still alive # None 1954s Mar 22 12:50:01 When I stop a thread # None 1954s Mar 22 12:50:01 Then a distributed table on postgres0 has expected rows # None 1954s Mar 22 12:50:01 1954s Mar 22 12:50:01 Scenario: worker primary restart doesn't break client queries on the coordinator # features/citus.feature:50 1954s Mar 22 12:50:01 Given I cleanup a distributed table on postgres0 # None 1954s Mar 22 12:50:01 And I start a thread inserting data on postgres0 # None 1954s Mar 22 12:50:01 When I run patronictl.py restart batman postgres2 --group 1 --force # None 1954s Mar 22 12:50:01 Then I receive a response returncode 0 # None 1954s Mar 22 12:50:01 And postgres2 role is the primary after 10 seconds # None 1954s Mar 22 12:50:01 And replication works from postgres2 to postgres3 after 15 seconds # None 1954s Mar 22 12:50:01 And postgres2 is registered in the postgres0 as the primary in group 1 after 5 seconds # None 1954s Mar 22 12:50:01 And a thread is still alive # None 1954s Mar 22 12:50:01 When I stop a thread # None 1954s Mar 22 12:50:01 Then a distributed table on postgres0 has expected rows # None 1954s Mar 22 12:50:01 1954s Mar 22 12:50:01 Scenario: check that in-flight transaction is rolled back after timeout when other workers need to change pg_dist_node # features/citus.feature:62 1954s Mar 22 12:50:01 Given I start postgres4 in citus group 2 # None 1954s Mar 22 12:50:01 Then postgres4 is a leader in a group 2 after 10 seconds # None 1954s Mar 22 12:50:01 And "members/postgres4" key in a group 2 in DCS has role=master after 3 seconds # None 1954s Mar 22 12:50:01 When I run patronictl.py edit-config batman --group 2 -s ttl=20 --force # None 1954s Mar 22 12:50:01 Then I receive a response returncode 0 # None 1954s Mar 22 12:50:01 And I receive a response output "+ttl: 20" # None 1954s Mar 22 12:50:01 Then postgres4 is registered in the postgres2 as the primary in group 2 after 5 seconds # None 1954s Mar 22 12:50:01 When I shut down postgres4 # None 1954s Mar 22 12:50:01 Then there is a transaction in progress on postgres0 changing pg_dist_node after 5 seconds # None 1954s Mar 22 12:50:01 When I run patronictl.py restart batman postgres2 --group 1 --force # None 1954s Mar 22 12:50:01 Then a transaction finishes in 20 seconds # None 1954s Mar 22 12:50:01 1954s Mar 22 12:50:01 Feature: custom bootstrap # features/custom_bootstrap.feature:1 1954s Mar 22 12:50:01 We should check that patroni can bootstrap a new cluster from a backup 1954s Mar 22 12:50:01 Scenario: clone existing cluster using pg_basebackup # features/custom_bootstrap.feature:4 1954s Mar 22 12:50:01 Given I start postgres0 # features/steps/basic_replication.py:8 1957s Mar 22 12:50:04 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 1958s Mar 22 12:50:05 When I add the table foo to postgres0 # features/steps/basic_replication.py:49 1958s Mar 22 12:50:05 And I start postgres1 in a cluster batman1 as a clone of postgres0 # features/steps/custom_bootstrap.py:6 1962s Mar 22 12:50:09 Then postgres1 is a leader of batman1 after 10 seconds # features/steps/custom_bootstrap.py:16 1963s Mar 22 12:50:10 Then table foo is present on postgres1 after 10 seconds # features/steps/basic_replication.py:89 1963s Mar 22 12:50:10 1963s Mar 22 12:50:10 Scenario: make a backup and do a restore into a new cluster # features/custom_bootstrap.feature:12 1963s Mar 22 12:50:10 Given I add the table bar to postgres1 # features/steps/basic_replication.py:49 1963s Mar 22 12:50:10 And I do a backup of postgres1 # features/steps/custom_bootstrap.py:25 1964s Mar 22 12:50:10 When I start postgres2 in a cluster batman2 from backup # features/steps/custom_bootstrap.py:11 1968s Mar 22 12:50:15 Then postgres2 is a leader of batman2 after 30 seconds # features/steps/custom_bootstrap.py:16 1969s Mar 22 12:50:16 And table bar is present on postgres2 after 10 seconds # features/steps/basic_replication.py:89 1975s Mar 22 12:50:22 1975s Mar 22 12:50:22 Feature: ignored slots # features/ignored_slots.feature:1 1975s Mar 22 12:50:22 1975s Mar 22 12:50:22 Scenario: check ignored slots aren't removed on failover/switchover # features/ignored_slots.feature:2 1975s Mar 22 12:50:22 Given I start postgres1 # features/steps/basic_replication.py:8 1978s Mar 22 12:50:25 Then postgres1 is a leader after 10 seconds # features/steps/patroni_api.py:29 1979s Mar 22 12:50:26 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 1979s Mar 22 12:50:26 When I issue a PATCH request to http://127.0.0.1:8009/config with {"ignore_slots": [{"name": "unmanaged_slot_0", "database": "postgres", "plugin": "test_decoding", "type": "logical"}, {"name": "unmanaged_slot_1", "database": "postgres", "plugin": "test_decoding"}, {"name": "unmanaged_slot_2", "database": "postgres"}, {"name": "unmanaged_slot_3"}], "postgresql": {"parameters": {"wal_level": "logical"}}} # features/steps/patroni_api.py:71 1979s Mar 22 12:50:26 Then I receive a response code 200 # features/steps/patroni_api.py:98 1979s Mar 22 12:50:26 And Response on GET http://127.0.0.1:8009/config contains ignore_slots after 10 seconds # features/steps/patroni_api.py:156 1979s Mar 22 12:50:26 When I shut down postgres1 # features/steps/basic_replication.py:29 1981s Mar 22 12:50:28 And I start postgres1 # features/steps/basic_replication.py:8 1983s Mar 22 12:50:30 Then postgres1 is a leader after 10 seconds # features/steps/patroni_api.py:29 1984s Mar 22 12:50:31 And "members/postgres1" key in DCS has role=master after 10 seconds # features/steps/cascading_replication.py:23 1985s Mar 22 12:50:32 And postgres1 role is the primary after 20 seconds # features/steps/basic_replication.py:101 1985s Mar 22 12:50:32 When I create a logical replication slot unmanaged_slot_0 on postgres1 with the test_decoding plugin # features/steps/slots.py:8 1985s Mar 22 12:50:32 And I create a logical replication slot unmanaged_slot_1 on postgres1 with the test_decoding plugin # features/steps/slots.py:8 1985s Mar 22 12:50:32 And I create a logical replication slot unmanaged_slot_2 on postgres1 with the test_decoding plugin # features/steps/slots.py:8 1985s Mar 22 12:50:32 And I create a logical replication slot unmanaged_slot_3 on postgres1 with the test_decoding plugin # features/steps/slots.py:8 1985s Mar 22 12:50:32 And I create a logical replication slot dummy_slot on postgres1 with the test_decoding plugin # features/steps/slots.py:8 1985s Mar 22 12:50:32 Then postgres1 has a logical replication slot named unmanaged_slot_0 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1985s Mar 22 12:50:32 And postgres1 has a logical replication slot named unmanaged_slot_1 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1985s Mar 22 12:50:32 And postgres1 has a logical replication slot named unmanaged_slot_2 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1985s Mar 22 12:50:32 And postgres1 has a logical replication slot named unmanaged_slot_3 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1985s Mar 22 12:50:32 When I start postgres0 # features/steps/basic_replication.py:8 1988s Mar 22 12:50:35 Then "members/postgres0" key in DCS has role=replica after 10 seconds # features/steps/cascading_replication.py:23 1989s Mar 22 12:50:36 And postgres0 role is the secondary after 20 seconds # features/steps/basic_replication.py:101 1989s Mar 22 12:50:36 And replication works from postgres1 to postgres0 after 20 seconds # features/steps/basic_replication.py:108 1990s Mar 22 12:50:37 When I shut down postgres1 # features/steps/basic_replication.py:29 1992s Mar 22 12:50:39 Then "members/postgres0" key in DCS has role=master after 10 seconds # features/steps/cascading_replication.py:23 1993s Mar 22 12:50:40 When I start postgres1 # features/steps/basic_replication.py:8 1995s Mar 22 12:50:42 Then postgres1 role is the secondary after 20 seconds # features/steps/basic_replication.py:101 1995s Mar 22 12:50:42 And "members/postgres1" key in DCS has role=replica after 10 seconds # features/steps/cascading_replication.py:23 1996s Mar 22 12:50:43 And I sleep for 2 seconds # features/steps/patroni_api.py:39 1998s Mar 22 12:50:45 And postgres1 has a logical replication slot named unmanaged_slot_0 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1998s Mar 22 12:50:45 And postgres1 has a logical replication slot named unmanaged_slot_1 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1998s Mar 22 12:50:45 And postgres1 has a logical replication slot named unmanaged_slot_2 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1998s Mar 22 12:50:45 And postgres1 has a logical replication slot named unmanaged_slot_3 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1998s Mar 22 12:50:45 And postgres1 does not have a replication slot named dummy_slot # features/steps/slots.py:40 1998s Mar 22 12:50:45 When I shut down postgres0 # features/steps/basic_replication.py:29 2000s Mar 22 12:50:47 Then "members/postgres1" key in DCS has role=master after 10 seconds # features/steps/cascading_replication.py:23 2001s Mar 22 12:50:48 And postgres1 has a logical replication slot named unmanaged_slot_0 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 2001s Mar 22 12:50:48 And postgres1 has a logical replication slot named unmanaged_slot_1 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 2001s Mar 22 12:50:48 And postgres1 has a logical replication slot named unmanaged_slot_2 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 2001s Mar 22 12:50:48 And postgres1 has a logical replication slot named unmanaged_slot_3 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 2003s Mar 22 12:50:50 2003s Mar 22 12:50:50 Feature: patroni api # features/patroni_api.feature:1 2003s Mar 22 12:50:50 We should check that patroni correctly responds to valid and not-valid API requests. 2003s Mar 22 12:50:50 Scenario: check API requests on a stand-alone server # features/patroni_api.feature:4 2003s Mar 22 12:50:50 Given I start postgres0 # features/steps/basic_replication.py:8 2006s Mar 22 12:50:53 And postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 2007s Mar 22 12:50:54 When I issue a GET request to http://127.0.0.1:8008/ # features/steps/patroni_api.py:61 2007s Mar 22 12:50:54 Then I receive a response code 200 # features/steps/patroni_api.py:98 2007s Mar 22 12:50:54 And I receive a response state running # features/steps/patroni_api.py:98 2007s Mar 22 12:50:54 And I receive a response role master # features/steps/patroni_api.py:98 2007s Mar 22 12:50:54 When I issue a GET request to http://127.0.0.1:8008/standby_leader # features/steps/patroni_api.py:61 2007s Mar 22 12:50:54 Then I receive a response code 503 # features/steps/patroni_api.py:98 2007s Mar 22 12:50:54 When I issue a GET request to http://127.0.0.1:8008/health # features/steps/patroni_api.py:61 2008s Mar 22 12:50:54 Then I receive a response code 200 # features/steps/patroni_api.py:98 2008s Mar 22 12:50:54 When I issue a GET request to http://127.0.0.1:8008/replica # features/steps/patroni_api.py:61 2008s Mar 22 12:50:55 Then I receive a response code 503 # features/steps/patroni_api.py:98 2008s Mar 22 12:50:55 When I issue a POST request to http://127.0.0.1:8008/reinitialize with {"force": true} # features/steps/patroni_api.py:71 2008s Mar 22 12:50:55 Then I receive a response code 503 # features/steps/patroni_api.py:98 2008s Mar 22 12:50:55 And I receive a response text I am the leader, can not reinitialize # features/steps/patroni_api.py:98 2008s Mar 22 12:50:55 When I run patronictl.py switchover batman --master postgres0 --force # features/steps/patroni_api.py:86 2009s Mar 22 12:50:56 Then I receive a response returncode 1 # features/steps/patroni_api.py:98 2009s Mar 22 12:50:56 And I receive a response output "Error: No candidates found to switchover to" # features/steps/patroni_api.py:98 2009s Mar 22 12:50:56 When I issue a POST request to http://127.0.0.1:8008/switchover with {"leader": "postgres0"} # features/steps/patroni_api.py:71 2009s Mar 22 12:50:56 Then I receive a response code 412 # features/steps/patroni_api.py:98 2009s Mar 22 12:50:56 And I receive a response text switchover is not possible: cluster does not have members except leader # features/steps/patroni_api.py:98 2009s Mar 22 12:50:56 When I issue an empty POST request to http://127.0.0.1:8008/failover # features/steps/patroni_api.py:66 2009s Mar 22 12:50:56 Then I receive a response code 400 # features/steps/patroni_api.py:98 2009s Mar 22 12:50:56 When I issue a POST request to http://127.0.0.1:8008/failover with {"foo": "bar"} # features/steps/patroni_api.py:71 2009s Mar 22 12:50:56 Then I receive a response code 400 # features/steps/patroni_api.py:98 2009s Mar 22 12:50:56 And I receive a response text "Failover could be performed only to a specific candidate" # features/steps/patroni_api.py:98 2009s Mar 22 12:50:56 2009s Mar 22 12:50:56 Scenario: check local configuration reload # features/patroni_api.feature:32 2009s Mar 22 12:50:56 Given I add tag new_tag new_value to postgres0 config # features/steps/patroni_api.py:137 2009s Mar 22 12:50:56 And I issue an empty POST request to http://127.0.0.1:8008/reload # features/steps/patroni_api.py:66 2009s Mar 22 12:50:56 Then I receive a response code 202 # features/steps/patroni_api.py:98 2009s Mar 22 12:50:56 2009s Mar 22 12:50:56 Scenario: check dynamic configuration change via DCS # features/patroni_api.feature:37 2009s Mar 22 12:50:56 Given I issue a PATCH request to http://127.0.0.1:8008/config with {"ttl": 20, "postgresql": {"parameters": {"max_connections": "101"}}} # features/steps/patroni_api.py:71 2009s Mar 22 12:50:56 Then I receive a response code 200 # features/steps/patroni_api.py:98 2009s Mar 22 12:50:56 And Response on GET http://127.0.0.1:8008/patroni contains pending_restart after 11 seconds # features/steps/patroni_api.py:156 2010s Mar 22 12:50:57 When I issue a GET request to http://127.0.0.1:8008/config # features/steps/patroni_api.py:61 2010s Mar 22 12:50:57 Then I receive a response code 200 # features/steps/patroni_api.py:98 2010s Mar 22 12:50:57 And I receive a response ttl 20 # features/steps/patroni_api.py:98 2010s Mar 22 12:50:57 When I issue a GET request to http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:61 2011s Mar 22 12:50:57 Then I receive a response code 200 # features/steps/patroni_api.py:98 2011s Mar 22 12:50:57 And I receive a response tags {'new_tag': 'new_value'} # features/steps/patroni_api.py:98 2011s Mar 22 12:50:57 And I sleep for 4 seconds # features/steps/patroni_api.py:39 2015s Mar 22 12:51:01 2015s Mar 22 12:51:01 Scenario: check the scheduled restart # features/patroni_api.feature:49 2015s Mar 22 12:51:01 Given I run patronictl.py edit-config -p 'superuser_reserved_connections=6' --force batman # features/steps/patroni_api.py:86 2016s Mar 22 12:51:03 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 2016s Mar 22 12:51:03 And I receive a response output "+ superuser_reserved_connections: 6" # features/steps/patroni_api.py:98 2016s Mar 22 12:51:03 And Response on GET http://127.0.0.1:8008/patroni contains pending_restart after 5 seconds # features/steps/patroni_api.py:156 2016s Mar 22 12:51:03 Given I issue a scheduled restart at http://127.0.0.1:8008 in 5 seconds with {"role": "replica"} # features/steps/patroni_api.py:124 2016s Mar 22 12:51:03 Then I receive a response code 202 # features/steps/patroni_api.py:98 2016s Mar 22 12:51:03 And I sleep for 8 seconds # features/steps/patroni_api.py:39 2024s Mar 22 12:51:11 And Response on GET http://127.0.0.1:8008/patroni contains pending_restart after 10 seconds # features/steps/patroni_api.py:156 2024s Mar 22 12:51:11 Given I issue a scheduled restart at http://127.0.0.1:8008 in 5 seconds with {"restart_pending": "True"} # features/steps/patroni_api.py:124 2024s Mar 22 12:51:11 Then I receive a response code 202 # features/steps/patroni_api.py:98 2024s Mar 22 12:51:11 And Response on GET http://127.0.0.1:8008/patroni does not contain pending_restart after 10 seconds # features/steps/patroni_api.py:171 2031s Mar 22 12:51:18 And postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:101 2032s Mar 22 12:51:19 2032s Mar 22 12:51:19 Scenario: check API requests for the primary-replica pair in the pause mode # features/patroni_api.feature:63 2032s Mar 22 12:51:19 Given I start postgres1 # features/steps/basic_replication.py:8 2035s Mar 22 12:51:22 Then replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:108 2036s Mar 22 12:51:23 When I run patronictl.py pause batman # features/steps/patroni_api.py:86 2038s Mar 22 12:51:25 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 2038s Mar 22 12:51:25 When I kill postmaster on postgres1 # features/steps/basic_replication.py:44 2038s Mar 22 12:51:25 waiting for server to shut down.... done 2038s Mar 22 12:51:25 server stopped 2038s Mar 22 12:51:25 And I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:61 2038s Mar 22 12:51:25 Then I receive a response code 503 # features/steps/patroni_api.py:98 2038s Mar 22 12:51:25 And "members/postgres1" key in DCS has state=stopped after 10 seconds # features/steps/cascading_replication.py:23 2039s Mar 22 12:51:26 When I run patronictl.py restart batman postgres1 --force # features/steps/patroni_api.py:86 2041s Mar 22 12:51:28 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 2041s Mar 22 12:51:28 Then replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:108 2042s Mar 22 12:51:29 And I sleep for 2 seconds # features/steps/patroni_api.py:39 2044s Mar 22 12:51:31 When I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:61 2044s Mar 22 12:51:31 Then I receive a response code 200 # features/steps/patroni_api.py:98 2044s Mar 22 12:51:31 And I receive a response state running # features/steps/patroni_api.py:98 2044s Mar 22 12:51:31 And I receive a response role replica # features/steps/patroni_api.py:98 2044s Mar 22 12:51:31 When I run patronictl.py reinit batman postgres1 --force --wait # features/steps/patroni_api.py:86 2048s Mar 22 12:51:35 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 2048s Mar 22 12:51:35 And I receive a response output "Success: reinitialize for member postgres1" # features/steps/patroni_api.py:98 2048s Mar 22 12:51:35 And postgres1 role is the secondary after 30 seconds # features/steps/basic_replication.py:101 2049s Mar 22 12:51:36 And replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:108 2049s Mar 22 12:51:36 When I run patronictl.py restart batman postgres0 --force # features/steps/patroni_api.py:86 2052s Mar 22 12:51:39 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 2052s Mar 22 12:51:39 And I receive a response output "Success: restart on member postgres0" # features/steps/patroni_api.py:98 2052s Mar 22 12:51:39 And postgres0 role is the primary after 5 seconds # features/steps/basic_replication.py:101 2053s Mar 22 12:51:40 2053s Mar 22 12:51:40 Scenario: check the switchover via the API in the pause mode # features/patroni_api.feature:90 2053s Mar 22 12:51:40 Given I issue a POST request to http://127.0.0.1:8008/switchover with {"leader": "postgres0", "candidate": "postgres1"} # features/steps/patroni_api.py:71 2055s Mar 22 12:51:42 Then I receive a response code 200 # features/steps/patroni_api.py:98 2055s Mar 22 12:51:42 And postgres1 is a leader after 5 seconds # features/steps/patroni_api.py:29 2055s Mar 22 12:51:42 And postgres1 role is the primary after 10 seconds # features/steps/basic_replication.py:101 2055s Mar 22 12:51:42 And postgres0 role is the secondary after 10 seconds # features/steps/basic_replication.py:101 2057s Mar 22 12:51:44 And replication works from postgres1 to postgres0 after 20 seconds # features/steps/basic_replication.py:108 2060s Mar 22 12:51:47 And "members/postgres0" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 2061s Mar 22 12:51:48 When I issue a GET request to http://127.0.0.1:8008/primary # features/steps/patroni_api.py:61 2061s Mar 22 12:51:48 Then I receive a response code 503 # features/steps/patroni_api.py:98 2061s Mar 22 12:51:48 When I issue a GET request to http://127.0.0.1:8008/replica # features/steps/patroni_api.py:61 2061s Mar 22 12:51:48 Then I receive a response code 200 # features/steps/patroni_api.py:98 2061s Mar 22 12:51:48 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:61 2061s Mar 22 12:51:48 Then I receive a response code 200 # features/steps/patroni_api.py:98 2061s Mar 22 12:51:48 When I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:61 2061s Mar 22 12:51:48 Then I receive a response code 503 # features/steps/patroni_api.py:98 2061s Mar 22 12:51:48 2061s Mar 22 12:51:48 Scenario: check the scheduled switchover # features/patroni_api.feature:107 2061s Mar 22 12:51:48 Given I issue a scheduled switchover from postgres1 to postgres0 in 10 seconds # features/steps/patroni_api.py:117 2062s Mar 22 12:51:49 Then I receive a response returncode 1 # features/steps/patroni_api.py:98 2062s Mar 22 12:51:49 And I receive a response output "Can't schedule switchover in the paused state" # features/steps/patroni_api.py:98 2062s Mar 22 12:51:49 When I run patronictl.py resume batman # features/steps/patroni_api.py:86 2064s Mar 22 12:51:51 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 2064s Mar 22 12:51:51 Given I issue a scheduled switchover from postgres1 to postgres0 in 10 seconds # features/steps/patroni_api.py:117 2065s Mar 22 12:51:52 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 2065s Mar 22 12:51:52 And postgres0 is a leader after 20 seconds # features/steps/patroni_api.py:29 2075s Mar 22 12:52:02 And postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:101 2075s Mar 22 12:52:02 And postgres1 role is the secondary after 10 seconds # features/steps/basic_replication.py:101 2078s Mar 22 12:52:05 And replication works from postgres0 to postgres1 after 25 seconds # features/steps/basic_replication.py:108 2079s Mar 22 12:52:06 And "members/postgres1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 2079s Mar 22 12:52:06 When I issue a GET request to http://127.0.0.1:8008/primary # features/steps/patroni_api.py:61 2079s Mar 22 12:52:06 Then I receive a response code 200 # features/steps/patroni_api.py:98 2079s Mar 22 12:52:06 When I issue a GET request to http://127.0.0.1:8008/replica # features/steps/patroni_api.py:61 2079s Mar 22 12:52:06 Then I receive a response code 503 # features/steps/patroni_api.py:98 2079s Mar 22 12:52:06 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:61 2079s Mar 22 12:52:06 Then I receive a response code 503 # features/steps/patroni_api.py:98 2079s Mar 22 12:52:06 When I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:61 2080s Mar 22 12:52:06 Then I receive a response code 200 # features/steps/patroni_api.py:98 2084s Mar 22 12:52:11 2084s Mar 22 12:52:11 Feature: permanent slots # features/permanent_slots.feature:1 2084s Mar 22 12:52:11 2084s Mar 22 12:52:11 Scenario: check that physical permanent slots are created # features/permanent_slots.feature:2 2084s Mar 22 12:52:11 Given I start postgres0 # features/steps/basic_replication.py:8 2087s Mar 22 12:52:14 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 2088s Mar 22 12:52:15 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 2088s Mar 22 12:52:15 When I issue a PATCH request to http://127.0.0.1:8008/config with {"slots":{"test_physical":0,"postgres0":0,"postgres1":0,"postgres3":0},"postgresql":{"parameters":{"wal_level":"logical"}}} # features/steps/patroni_api.py:71 2088s Mar 22 12:52:15 Then I receive a response code 200 # features/steps/patroni_api.py:98 2088s Mar 22 12:52:15 And Response on GET http://127.0.0.1:8008/config contains slots after 10 seconds # features/steps/patroni_api.py:156 2088s Mar 22 12:52:15 When I start postgres1 # features/steps/basic_replication.py:8 2091s Mar 22 12:52:18 And I start postgres2 # features/steps/basic_replication.py:8 2094s Mar 22 12:52:21 And I configure and start postgres3 with a tag replicatefrom postgres2 # features/steps/cascading_replication.py:7 2097s Mar 22 12:52:24 Then postgres0 has a physical replication slot named test_physical after 10 seconds # features/steps/slots.py:80 2097s Mar 22 12:52:24 And postgres0 has a physical replication slot named postgres1 after 10 seconds # features/steps/slots.py:80 2097s Mar 22 12:52:24 And postgres0 has a physical replication slot named postgres2 after 10 seconds # features/steps/slots.py:80 2097s Mar 22 12:52:24 And postgres2 has a physical replication slot named postgres3 after 10 seconds # features/steps/slots.py:80 2097s Mar 22 12:52:24 2097s Mar 22 12:52:24 @slot-advance 2097s Mar 22 12:52:24 Scenario: check that logical permanent slots are created # features/permanent_slots.feature:18 2097s Mar 22 12:52:24 Given I run patronictl.py restart batman postgres0 --force # features/steps/patroni_api.py:86 2100s Mar 22 12:52:27 And I issue a PATCH request to http://127.0.0.1:8008/config with {"slots":{"test_logical":{"type":"logical","database":"postgres","plugin":"test_decoding"}}} # features/steps/patroni_api.py:71 2100s Mar 22 12:52:27 Then postgres0 has a logical replication slot named test_logical with the test_decoding plugin after 10 seconds # features/steps/slots.py:19 2101s Mar 22 12:52:28 2101s Mar 22 12:52:28 @slot-advance 2101s Mar 22 12:52:28 Scenario: check that permanent slots are created on replicas # features/permanent_slots.feature:24 2101s Mar 22 12:52:28 Given postgres1 has a logical replication slot named test_logical with the test_decoding plugin after 10 seconds # features/steps/slots.py:19 2108s Mar 22 12:52:35 Then Logical slot test_logical is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 2108s Mar 22 12:52:35 And Logical slot test_logical is in sync between postgres0 and postgres2 after 10 seconds # features/steps/slots.py:51 2109s Mar 22 12:52:36 And Logical slot test_logical is in sync between postgres0 and postgres3 after 10 seconds # features/steps/slots.py:51 2111s Mar 22 12:52:37 And postgres1 has a physical replication slot named test_physical after 2 seconds # features/steps/slots.py:80 2111s Mar 22 12:52:37 And postgres2 has a physical replication slot named test_physical after 2 seconds # features/steps/slots.py:80 2111s Mar 22 12:52:37 And postgres3 has a physical replication slot named test_physical after 2 seconds # features/steps/slots.py:80 2111s Mar 22 12:52:37 2111s Mar 22 12:52:37 @slot-advance 2111s Mar 22 12:52:37 Scenario: check permanent physical slots that match with member names # features/permanent_slots.feature:34 2111s Mar 22 12:52:37 Given postgres0 has a physical replication slot named postgres3 after 2 seconds # features/steps/slots.py:80 2111s Mar 22 12:52:37 And postgres1 has a physical replication slot named postgres0 after 2 seconds # features/steps/slots.py:80 2111s Mar 22 12:52:37 And postgres1 has a physical replication slot named postgres3 after 2 seconds # features/steps/slots.py:80 2111s Mar 22 12:52:37 And postgres2 has a physical replication slot named postgres0 after 2 seconds # features/steps/slots.py:80 2111s Mar 22 12:52:37 And postgres2 has a physical replication slot named postgres3 after 2 seconds # features/steps/slots.py:80 2111s Mar 22 12:52:37 And postgres2 has a physical replication slot named postgres1 after 2 seconds # features/steps/slots.py:80 2111s Mar 22 12:52:37 And postgres1 does not have a replication slot named postgres2 # features/steps/slots.py:40 2111s Mar 22 12:52:37 And postgres3 does not have a replication slot named postgres2 # features/steps/slots.py:40 2111s Mar 22 12:52:37 2111s Mar 22 12:52:37 @slot-advance 2111s Mar 22 12:52:37 Scenario: check that permanent slots are advanced on replicas # features/permanent_slots.feature:45 2111s Mar 22 12:52:37 Given I add the table replicate_me to postgres0 # features/steps/basic_replication.py:49 2111s Mar 22 12:52:37 When I get all changes from logical slot test_logical on postgres0 # features/steps/slots.py:70 2111s Mar 22 12:52:37 And I get all changes from physical slot test_physical on postgres0 # features/steps/slots.py:75 2111s Mar 22 12:52:37 Then Logical slot test_logical is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 2114s Mar 22 12:52:41 And Physical slot test_physical is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 2114s Mar 22 12:52:41 And Logical slot test_logical is in sync between postgres0 and postgres2 after 10 seconds # features/steps/slots.py:51 2114s Mar 22 12:52:41 And Physical slot test_physical is in sync between postgres0 and postgres2 after 10 seconds # features/steps/slots.py:51 2114s Mar 22 12:52:41 And Logical slot test_logical is in sync between postgres0 and postgres3 after 10 seconds # features/steps/slots.py:51 2114s Mar 22 12:52:41 And Physical slot test_physical is in sync between postgres0 and postgres3 after 10 seconds # features/steps/slots.py:51 2114s Mar 22 12:52:41 And Physical slot postgres1 is in sync between postgres0 and postgres2 after 10 seconds # features/steps/slots.py:51 2115s Mar 22 12:52:41 And Physical slot postgres3 is in sync between postgres2 and postgres0 after 20 seconds # features/steps/slots.py:51 2115s Mar 22 12:52:41 And Physical slot postgres3 is in sync between postgres2 and postgres1 after 10 seconds # features/steps/slots.py:51 2115s Mar 22 12:52:41 And postgres1 does not have a replication slot named postgres2 # features/steps/slots.py:40 2115s Mar 22 12:52:41 And postgres3 does not have a replication slot named postgres2 # features/steps/slots.py:40 2115s Mar 22 12:52:41 2115s Mar 22 12:52:41 @slot-advance 2115s Mar 22 12:52:41 Scenario: check that only permanent slots are written to the /status key # features/permanent_slots.feature:62 2115s Mar 22 12:52:41 Given "status" key in DCS has test_physical in slots # features/steps/slots.py:96 2115s Mar 22 12:52:41 And "status" key in DCS has postgres0 in slots # features/steps/slots.py:96 2115s Mar 22 12:52:41 And "status" key in DCS has postgres1 in slots # features/steps/slots.py:96 2115s Mar 22 12:52:41 And "status" key in DCS does not have postgres2 in slots # features/steps/slots.py:102 2115s Mar 22 12:52:41 And "status" key in DCS has postgres3 in slots # features/steps/slots.py:96 2115s Mar 22 12:52:41 2115s Mar 22 12:52:41 Scenario: check permanent physical replication slot after failover # features/permanent_slots.feature:69 2115s Mar 22 12:52:41 Given I shut down postgres3 # features/steps/basic_replication.py:29 2116s Mar 22 12:52:42 And I shut down postgres2 # features/steps/basic_replication.py:29 2116s Mar 22 12:52:43 And I shut down postgres0 # features/steps/basic_replication.py:29 2118s Mar 22 12:52:45 Then postgres1 has a physical replication slot named test_physical after 10 seconds # features/steps/slots.py:80 2118s Mar 22 12:52:45 And postgres1 has a physical replication slot named postgres0 after 10 seconds # features/steps/slots.py:80 2118s Mar 22 12:52:45 And postgres1 has a physical replication slot named postgres3 after 10 seconds # features/steps/slots.py:80 2121s Mar 22 12:52:48 2121s Mar 22 12:52:48 Feature: priority replication # features/priority_failover.feature:1 2121s Mar 22 12:52:48 We should check that we can give nodes priority during failover 2121s Mar 22 12:52:48 Scenario: check failover priority 0 prevents leaderships # features/priority_failover.feature:4 2121s Mar 22 12:52:48 Given I configure and start postgres0 with a tag failover_priority 1 # features/steps/cascading_replication.py:7 2124s Mar 22 12:52:51 And I configure and start postgres1 with a tag failover_priority 0 # features/steps/cascading_replication.py:7 2127s Mar 22 12:52:54 Then replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:108 2132s Mar 22 12:52:59 When I shut down postgres0 # features/steps/basic_replication.py:29 2134s Mar 22 12:53:01 And there is one of ["following a different leader because I am not allowed to promote"] INFO in the postgres1 patroni log after 5 seconds # features/steps/basic_replication.py:117 2136s Mar 22 12:53:03 Then postgres1 role is the secondary after 10 seconds # features/steps/basic_replication.py:101 2136s Mar 22 12:53:03 When I start postgres0 # features/steps/basic_replication.py:8 2138s Mar 22 12:53:05 Then postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:101 2139s Mar 22 12:53:06 2139s Mar 22 12:53:06 Scenario: check higher failover priority is respected # features/priority_failover.feature:14 2139s Mar 22 12:53:06 Given I configure and start postgres2 with a tag failover_priority 1 # features/steps/cascading_replication.py:7 2142s Mar 22 12:53:09 And I configure and start postgres3 with a tag failover_priority 2 # features/steps/cascading_replication.py:7 2145s Mar 22 12:53:12 Then replication works from postgres0 to postgres2 after 20 seconds # features/steps/basic_replication.py:108 2147s Mar 22 12:53:14 And replication works from postgres0 to postgres3 after 20 seconds # features/steps/basic_replication.py:108 2147s Mar 22 12:53:14 When I shut down postgres0 # features/steps/basic_replication.py:29 2149s Mar 22 12:53:16 Then postgres3 role is the primary after 10 seconds # features/steps/basic_replication.py:101 2149s Mar 22 12:53:16 And there is one of ["postgres3 has equally tolerable WAL position and priority 2, while this node has priority 1","Wal position of postgres3 is ahead of my wal position"] INFO in the postgres2 patroni log after 5 seconds # features/steps/basic_replication.py:117 2149s Mar 22 12:53:16 2149s Mar 22 12:53:16 Scenario: check conflicting configuration handling # features/priority_failover.feature:23 2149s Mar 22 12:53:16 When I set nofailover tag in postgres2 config # features/steps/patroni_api.py:131 2149s Mar 22 12:53:16 And I issue an empty POST request to http://127.0.0.1:8010/reload # features/steps/patroni_api.py:66 2149s Mar 22 12:53:16 Then I receive a response code 202 # features/steps/patroni_api.py:98 2149s Mar 22 12:53:16 And there is one of ["Conflicting configuration between nofailover: True and failover_priority: 1. Defaulting to nofailover: True"] WARNING in the postgres2 patroni log after 5 seconds # features/steps/basic_replication.py:117 2151s Mar 22 12:53:18 And "members/postgres2" key in DCS has tags={'failover_priority': '1', 'nofailover': True} after 10 seconds # features/steps/cascading_replication.py:23 2152s Mar 22 12:53:19 When I issue a POST request to http://127.0.0.1:8010/failover with {"candidate": "postgres2"} # features/steps/patroni_api.py:71 2152s Mar 22 12:53:19 Then I receive a response code 412 # features/steps/patroni_api.py:98 2152s Mar 22 12:53:19 And I receive a response text "failover is not possible: no good candidates have been found" # features/steps/patroni_api.py:98 2152s Mar 22 12:53:19 When I reset nofailover tag in postgres1 config # features/steps/patroni_api.py:131 2152s Mar 22 12:53:19 And I issue an empty POST request to http://127.0.0.1:8009/reload # features/steps/patroni_api.py:66 2152s Mar 22 12:53:19 Then I receive a response code 202 # features/steps/patroni_api.py:98 2152s Mar 22 12:53:19 And there is one of ["Conflicting configuration between nofailover: False and failover_priority: 0. Defaulting to nofailover: False"] WARNING in the postgres1 patroni log after 5 seconds # features/steps/basic_replication.py:117 2153s Mar 22 12:53:20 And "members/postgres1" key in DCS has tags={'failover_priority': '0', 'nofailover': False} after 10 seconds # features/steps/cascading_replication.py:23 2154s Mar 22 12:53:21 And I issue a POST request to http://127.0.0.1:8009/failover with {"candidate": "postgres1"} # features/steps/patroni_api.py:71 2157s Mar 22 12:53:24 Then I receive a response code 200 # features/steps/patroni_api.py:98 2157s Mar 22 12:53:24 And postgres1 role is the primary after 10 seconds # features/steps/basic_replication.py:101 2162s Mar 22 12:53:29 2162s Mar 22 12:53:29 Feature: recovery # features/recovery.feature:1 2162s Mar 22 12:53:29 We want to check that crashed postgres is started back 2162s Mar 22 12:53:29 Scenario: check that timeline is not incremented when primary is started after crash # features/recovery.feature:4 2162s Mar 22 12:53:29 Given I start postgres0 # features/steps/basic_replication.py:8 2165s Mar 22 12:53:32 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 2166s Mar 22 12:53:33 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 2166s Mar 22 12:53:33 When I start postgres1 # features/steps/basic_replication.py:8 2169s Mar 22 12:53:36 And I add the table foo to postgres0 # features/steps/basic_replication.py:49 2169s Mar 22 12:53:36 Then table foo is present on postgres1 after 20 seconds # features/steps/basic_replication.py:89 2170s Mar 22 12:53:37 When I kill postmaster on postgres0 # features/steps/basic_replication.py:44 2170s Mar 22 12:53:37 waiting for server to shut down.... done 2170s Mar 22 12:53:37 server stopped 2170s Mar 22 12:53:37 Then postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:101 2172s Mar 22 12:53:39 When I issue a GET request to http://127.0.0.1:8008/ # features/steps/patroni_api.py:61 2172s Mar 22 12:53:39 Then I receive a response code 200 # features/steps/patroni_api.py:98 2172s Mar 22 12:53:39 And I receive a response role master # features/steps/patroni_api.py:98 2172s Mar 22 12:53:39 And I receive a response timeline 1 # features/steps/patroni_api.py:98 2172s Mar 22 12:53:39 And "members/postgres0" key in DCS has state=running after 12 seconds # features/steps/cascading_replication.py:23 2173s Mar 22 12:53:40 And replication works from postgres0 to postgres1 after 15 seconds # features/steps/basic_replication.py:108 2175s Mar 22 12:53:42 2175s Mar 22 12:53:42 Scenario: check immediate failover when master_start_timeout=0 # features/recovery.feature:20 2175s Mar 22 12:53:42 Given I issue a PATCH request to http://127.0.0.1:8008/config with {"master_start_timeout": 0} # features/steps/patroni_api.py:71 2175s Mar 22 12:53:42 Then I receive a response code 200 # features/steps/patroni_api.py:98 2175s Mar 22 12:53:42 And Response on GET http://127.0.0.1:8008/config contains master_start_timeout after 10 seconds # features/steps/patroni_api.py:156 2175s Mar 22 12:53:42 When I kill postmaster on postgres0 # features/steps/basic_replication.py:44 2175s Mar 22 12:53:42 waiting for server to shut down.... done 2175s Mar 22 12:53:42 server stopped 2175s Mar 22 12:53:42 Then postgres1 is a leader after 10 seconds # features/steps/patroni_api.py:29 2177s Mar 22 12:53:44 And postgres1 role is the primary after 10 seconds # features/steps/basic_replication.py:101 2181s Mar 22 12:53:48 2181s Mar 22 12:53:48 Feature: standby cluster # features/standby_cluster.feature:1 2181s Mar 22 12:53:48 2181s Mar 22 12:53:48 Scenario: prepare the cluster with logical slots # features/standby_cluster.feature:2 2181s Mar 22 12:53:48 Given I start postgres1 # features/steps/basic_replication.py:8 2184s Mar 22 12:53:51 Then postgres1 is a leader after 10 seconds # features/steps/patroni_api.py:29 2185s Mar 22 12:53:52 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 2185s Mar 22 12:53:52 When I issue a PATCH request to http://127.0.0.1:8009/config with {"slots": {"pm_1": {"type": "physical"}}, "postgresql": {"parameters": {"wal_level": "logical"}}} # features/steps/patroni_api.py:71 2185s Mar 22 12:53:52 Then I receive a response code 200 # features/steps/patroni_api.py:98 2185s Mar 22 12:53:52 And Response on GET http://127.0.0.1:8009/config contains slots after 10 seconds # features/steps/patroni_api.py:156 2186s Mar 22 12:53:53 And I sleep for 3 seconds # features/steps/patroni_api.py:39 2189s Mar 22 12:53:56 When I issue a PATCH request to http://127.0.0.1:8009/config with {"slots": {"test_logical": {"type": "logical", "database": "postgres", "plugin": "test_decoding"}}} # features/steps/patroni_api.py:71 2189s Mar 22 12:53:56 Then I receive a response code 200 # features/steps/patroni_api.py:98 2189s Mar 22 12:53:56 And I do a backup of postgres1 # features/steps/custom_bootstrap.py:25 2189s Mar 22 12:53:56 When I start postgres0 # features/steps/basic_replication.py:8 2192s Mar 22 12:53:59 Then "members/postgres0" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 2193s Mar 22 12:54:00 And replication works from postgres1 to postgres0 after 15 seconds # features/steps/basic_replication.py:108 2194s Mar 22 12:54:01 When I issue a GET request to http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:61 2194s Mar 22 12:54:01 Then I receive a response code 200 # features/steps/patroni_api.py:98 2194s Mar 22 12:54:01 And I receive a response replication_state streaming # features/steps/patroni_api.py:98 2194s Mar 22 12:54:01 And "members/postgres0" key in DCS has replication_state=streaming after 10 seconds # features/steps/cascading_replication.py:23 2195s Mar 22 12:54:02 2195s Mar 22 12:54:02 @slot-advance 2195s Mar 22 12:54:02 Scenario: check permanent logical slots are synced to the replica # features/standby_cluster.feature:22 2195s Mar 22 12:54:02 Given I run patronictl.py restart batman postgres1 --force # features/steps/patroni_api.py:86 2198s Mar 22 12:54:05 Then Logical slot test_logical is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 2204s Mar 22 12:54:11 2204s Mar 22 12:54:11 Scenario: Detach exiting node from the cluster # features/standby_cluster.feature:26 2204s Mar 22 12:54:11 When I shut down postgres1 # features/steps/basic_replication.py:29 2206s Mar 22 12:54:13 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 2206s Mar 22 12:54:13 And "members/postgres0" key in DCS has role=master after 3 seconds # features/steps/cascading_replication.py:23 2208s Mar 22 12:54:14 When I issue a GET request to http://127.0.0.1:8008/ # features/steps/patroni_api.py:61 2208s Mar 22 12:54:14 Then I receive a response code 200 # features/steps/patroni_api.py:98 2208s Mar 22 12:54:14 2208s Mar 22 12:54:14 Scenario: check replication of a single table in a standby cluster # features/standby_cluster.feature:33 2208s Mar 22 12:54:14 Given I start postgres1 in a standby cluster batman1 as a clone of postgres0 # features/steps/standby_cluster.py:23 2209s Mar 22 12:54:16 Then postgres1 is a leader of batman1 after 10 seconds # features/steps/custom_bootstrap.py:16 2210s Mar 22 12:54:17 When I add the table foo to postgres0 # features/steps/basic_replication.py:49 2210s Mar 22 12:54:17 Then table foo is present on postgres1 after 20 seconds # features/steps/basic_replication.py:89 2210s Mar 22 12:54:17 When I issue a GET request to http://127.0.0.1:8009/patroni # features/steps/patroni_api.py:61 2210s Mar 22 12:54:17 Then I receive a response code 200 # features/steps/patroni_api.py:98 2210s Mar 22 12:54:17 And I receive a response replication_state streaming # features/steps/patroni_api.py:98 2210s Mar 22 12:54:17 And I sleep for 3 seconds # features/steps/patroni_api.py:39 2213s Mar 22 12:54:20 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:61 2213s Mar 22 12:54:20 Then I receive a response code 503 # features/steps/patroni_api.py:98 2213s Mar 22 12:54:20 When I issue a GET request to http://127.0.0.1:8009/standby_leader # features/steps/patroni_api.py:61 2213s Mar 22 12:54:20 Then I receive a response code 200 # features/steps/patroni_api.py:98 2213s Mar 22 12:54:20 And I receive a response role standby_leader # features/steps/patroni_api.py:98 2213s Mar 22 12:54:20 And there is a postgres1_cb.log with "on_role_change standby_leader batman1" in postgres1 data directory # features/steps/cascading_replication.py:12 2213s Mar 22 12:54:20 When I start postgres2 in a cluster batman1 # features/steps/standby_cluster.py:12 2215s Mar 22 12:54:22 Then postgres2 role is the replica after 24 seconds # features/steps/basic_replication.py:101 2215s Mar 22 12:54:22 And table foo is present on postgres2 after 20 seconds # features/steps/basic_replication.py:89 2221s Mar 22 12:54:28 When I issue a GET request to http://127.0.0.1:8010/patroni # features/steps/patroni_api.py:61 2222s Mar 22 12:54:28 Then I receive a response code 200 # features/steps/patroni_api.py:98 2222s Mar 22 12:54:28 And I receive a response replication_state streaming # features/steps/patroni_api.py:98 2222s Mar 22 12:54:28 And postgres1 does not have a replication slot named test_logical # features/steps/slots.py:40 2222s Mar 22 12:54:28 2222s Mar 22 12:54:28 Scenario: check switchover # features/standby_cluster.feature:56 2222s Mar 22 12:54:28 Given I run patronictl.py switchover batman1 --force # features/steps/patroni_api.py:86 2225s Mar 22 12:54:32 Then Status code on GET http://127.0.0.1:8010/standby_leader is 200 after 10 seconds # features/steps/patroni_api.py:142 2225s Mar 22 12:54:32 And postgres1 is replicating from postgres2 after 32 seconds # features/steps/standby_cluster.py:52 2227s Mar 22 12:54:34 And there is a postgres2_cb.log with "on_start replica batman1\non_role_change standby_leader batman1" in postgres2 data directory # features/steps/cascading_replication.py:12 2227s Mar 22 12:54:34 2227s Mar 22 12:54:34 Scenario: check failover # features/standby_cluster.feature:62 2227s Mar 22 12:54:34 When I kill postgres2 # features/steps/basic_replication.py:34 2228s Mar 22 12:54:35 And I kill postmaster on postgres2 # features/steps/basic_replication.py:44 2228s Mar 22 12:54:35 waiting for server to shut down.... done 2228s Mar 22 12:54:35 server stopped 2228s Mar 22 12:54:35 Then postgres1 is replicating from postgres0 after 32 seconds # features/steps/standby_cluster.py:52 2249s Mar 22 12:54:56 And Status code on GET http://127.0.0.1:8009/standby_leader is 200 after 10 seconds # features/steps/patroni_api.py:142 2249s Mar 22 12:54:56 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:61 2249s Mar 22 12:54:56 Then I receive a response code 503 # features/steps/patroni_api.py:98 2249s Mar 22 12:54:56 And I receive a response role standby_leader # features/steps/patroni_api.py:98 2249s Mar 22 12:54:56 And replication works from postgres0 to postgres1 after 15 seconds # features/steps/basic_replication.py:108 2250s Mar 22 12:54:57 And there is a postgres1_cb.log with "on_role_change replica batman1\non_role_change standby_leader batman1" in postgres1 data directory # features/steps/cascading_replication.py:12 2255s Mar 22 12:55:02 2255s Mar 22 12:55:02 Feature: watchdog # features/watchdog.feature:1 2255s Mar 22 12:55:02 Verify that watchdog gets pinged and triggered under appropriate circumstances. 2255s Mar 22 12:55:02 Scenario: watchdog is opened and pinged # features/watchdog.feature:4 2255s Mar 22 12:55:02 Given I start postgres0 with watchdog # features/steps/watchdog.py:16 2258s Mar 22 12:55:05 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 2259s Mar 22 12:55:06 And postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:101 2259s Mar 22 12:55:06 And postgres0 watchdog has been pinged after 10 seconds # features/steps/watchdog.py:21 2260s Mar 22 12:55:07 And postgres0 watchdog has a 15 second timeout # features/steps/watchdog.py:34 2260s Mar 22 12:55:07 2260s Mar 22 12:55:07 Scenario: watchdog is reconfigured after global ttl changed # features/watchdog.feature:11 2260s Mar 22 12:55:07 Given I run patronictl.py edit-config batman -s ttl=30 --force # features/steps/patroni_api.py:86 2261s Mar 22 12:55:08 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 2261s Mar 22 12:55:08 And I receive a response output "+ttl: 30" # features/steps/patroni_api.py:98 2261s Mar 22 12:55:08 When I sleep for 4 seconds # features/steps/patroni_api.py:39 2265s Mar 22 12:55:12 Then postgres0 watchdog has a 25 second timeout # features/steps/watchdog.py:34 2265s Mar 22 12:55:12 2265s Mar 22 12:55:12 Scenario: watchdog is disabled during pause # features/watchdog.feature:18 2265s Mar 22 12:55:12 Given I run patronictl.py pause batman # features/steps/patroni_api.py:86 2266s Mar 22 12:55:13 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 2266s Mar 22 12:55:13 When I sleep for 2 seconds # features/steps/patroni_api.py:39 2268s Mar 22 12:55:15 Then postgres0 watchdog has been closed # features/steps/watchdog.py:29 2268s Mar 22 12:55:15 2268s Mar 22 12:55:15 Scenario: watchdog is opened and pinged after resume # features/watchdog.feature:24 2268s Mar 22 12:55:15 Given I reset postgres0 watchdog state # features/steps/watchdog.py:39 2268s Mar 22 12:55:15 And I run patronictl.py resume batman # features/steps/patroni_api.py:86 2270s Mar 22 12:55:17 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 2270s Mar 22 12:55:17 And postgres0 watchdog has been pinged after 10 seconds # features/steps/watchdog.py:21 2270s Mar 22 12:55:17 2270s Mar 22 12:55:17 Scenario: watchdog is disabled when shutting down # features/watchdog.feature:30 2270s Mar 22 12:55:17 Given I shut down postgres0 # features/steps/basic_replication.py:29 2272s Mar 22 12:55:19 Then postgres0 watchdog has been closed # features/steps/watchdog.py:29 2272s Mar 22 12:55:19 2272s Mar 22 12:55:19 Scenario: watchdog is triggered if patroni stops responding # features/watchdog.feature:34 2272s Mar 22 12:55:19 Given I reset postgres0 watchdog state # features/steps/watchdog.py:39 2272s Mar 22 12:55:19 And I start postgres0 with watchdog # features/steps/watchdog.py:16 2274s Mar 22 12:55:21 Then postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:101 2275s Mar 22 12:55:22 When postgres0 hangs for 30 seconds # features/steps/watchdog.py:52 2275s Mar 22 12:55:22 Then postgres0 watchdog is triggered after 30 seconds # features/steps/watchdog.py:44 2299s Mar 22 12:55:46 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.7595.137973 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.5807.007058 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.6058.199342 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.8515.491784 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.6345.383652 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.6600.823961 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.6390.089878 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.8229.746252 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.7402.680556 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.6253.838715 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.6000.711748 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.5961.267707 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.7295.542783 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.6898.220329 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.7005.305953 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.6842.914655 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.7757.363128 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.7332.962004 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.6156.473539 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.7560.224840 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.6790.959945 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.8412.568996 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.6543.059065 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.5774.669756 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.5861.914278 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.6860.266655 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.8563.924145 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.8575.605283 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.8183.695006 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.6712.678745 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.7364.395981 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.6005.588181 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.8312.353928 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.5725.318848 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.6945.340168 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.6970.018800 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.8013.717134 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.5896.828448 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.8591.204559 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.7130.481279 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.7967.322865 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.8570.836419 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.8119.100695 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.7710.721078 2299s Mar 22 12:55:46 Skipping duplicate data .coverage.autopkgtest.6938.825946 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.7247.315194 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.7134.166786 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.6215.139351 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.7665.749465 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.6644.947061 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.6170.048395 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.6449.971509 2299s Mar 22 12:55:46 Combined data file .coverage.autopkgtest.7142.210488 2300s Mar 22 12:55:47 Name Stmts Miss Cover 2300s Mar 22 12:55:47 -------------------------------------------------------------------------------------------- 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/_distutils_hack/__init__.py 100 95 5% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/dateutil/__init__.py 5 2 60% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/dateutil/_common.py 25 15 40% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/dateutil/_version.py 2 0 100% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/dateutil/parser/__init__.py 33 4 88% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/dateutil/parser/_parser.py 813 436 46% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/dateutil/parser/isoparser.py 185 150 19% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/dateutil/relativedelta.py 241 206 15% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/dateutil/tz/__init__.py 4 0 100% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/dateutil/tz/_common.py 161 121 25% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/dateutil/tz/_factories.py 49 21 57% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/dateutil/tz/tz.py 800 626 22% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/dateutil/tz/win.py 153 149 3% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/kazoo/__init__.py 1 0 100% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/kazoo/client.py 629 266 58% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/kazoo/exceptions.py 110 1 99% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/kazoo/handlers/__init__.py 0 0 100% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/kazoo/handlers/threading.py 94 15 84% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/kazoo/handlers/utils.py 222 74 67% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/kazoo/hosts.py 18 4 78% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/kazoo/loggingsupport.py 1 0 100% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/kazoo/protocol/__init__.py 0 0 100% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/kazoo/protocol/connection.py 485 176 64% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/kazoo/protocol/paths.py 33 8 76% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/kazoo/protocol/serialization.py 316 111 65% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/kazoo/protocol/states.py 49 9 82% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/kazoo/python2atexit.py 32 19 41% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/kazoo/recipe/__init__.py 0 0 100% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/kazoo/recipe/barrier.py 97 80 18% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/kazoo/recipe/counter.py 49 36 27% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/kazoo/recipe/election.py 16 10 38% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/kazoo/recipe/lease.py 54 36 33% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/kazoo/recipe/lock.py 295 242 18% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/kazoo/recipe/partitioner.py 155 120 23% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/kazoo/recipe/party.py 62 43 31% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/kazoo/recipe/queue.py 157 126 20% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/kazoo/recipe/watchers.py 172 138 20% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/kazoo/retry.py 60 9 85% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/kazoo/security.py 58 35 40% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/kazoo/version.py 1 0 100% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/__init__.py 13 2 85% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/__main__.py 199 63 68% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/api.py 768 289 62% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/async_executor.py 96 15 84% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/collections.py 43 5 88% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/config.py 416 89 79% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/config_generator.py 210 153 27% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/daemon.py 76 3 96% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/dcs/__init__.py 667 97 85% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/dcs/zookeeper.py 287 70 76% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/exceptions.py 16 0 100% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/file_perm.py 43 8 81% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/ha.py 1239 373 70% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/log.py 155 31 80% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/postgresql/__init__.py 826 179 78% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/postgresql/bootstrap.py 253 63 75% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/postgresql/callback_executor.py 55 8 85% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/postgresql/cancellable.py 104 33 68% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/postgresql/citus.py 258 193 25% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/postgresql/config.py 806 219 73% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/postgresql/connection.py 75 1 99% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/postgresql/misc.py 41 8 80% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/postgresql/postmaster.py 170 82 52% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/postgresql/rewind.py 415 169 59% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/postgresql/slots.py 332 37 89% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/postgresql/sync.py 129 19 85% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/postgresql/validator.py 165 25 85% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/psycopg.py 41 15 63% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/request.py 62 7 89% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/tags.py 35 0 100% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/utils.py 318 110 65% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/validator.py 284 194 32% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/version.py 1 0 100% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/watchdog/__init__.py 2 0 100% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/watchdog/base.py 203 46 77% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/patroni/watchdog/linux.py 135 35 74% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/psutil/__init__.py 951 606 36% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/psutil/_common.py 424 207 51% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/psutil/_compat.py 302 263 13% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/psutil/_pslinux.py 1251 913 27% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/psutil/_psposix.py 96 38 60% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/psycopg2/__init__.py 19 3 84% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/psycopg2/_json.py 64 27 58% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/psycopg2/_range.py 269 172 36% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/psycopg2/errors.py 3 2 33% 2300s Mar 22 12:55:47 /usr/lib/python3/dist-packages/psycopg2/extensions.py 91 25 73% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/puresasl/__init__.py 21 2 90% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/puresasl/client.py 71 47 34% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/puresasl/mechanisms.py 363 263 28% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/six.py 504 249 51% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/urllib3/__init__.py 50 14 72% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/urllib3/_base_connection.py 70 52 26% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/urllib3/_collections.py 234 128 45% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/urllib3/_request_methods.py 53 23 57% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/urllib3/_version.py 2 0 100% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/urllib3/connection.py 324 110 66% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/urllib3/connectionpool.py 347 136 61% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/urllib3/exceptions.py 115 37 68% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/urllib3/fields.py 92 73 21% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/urllib3/filepost.py 37 24 35% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/urllib3/poolmanager.py 233 88 62% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/urllib3/response.py 562 334 41% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/urllib3/util/__init__.py 10 0 100% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/urllib3/util/connection.py 66 9 86% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/urllib3/util/proxy.py 13 6 54% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/urllib3/util/request.py 104 52 50% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/urllib3/util/response.py 32 17 47% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/urllib3/util/retry.py 173 52 70% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/urllib3/util/ssl_.py 177 75 58% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/urllib3/util/ssl_match_hostname.py 66 54 18% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/urllib3/util/ssltransport.py 160 112 30% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/urllib3/util/timeout.py 71 19 73% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/urllib3/util/url.py 205 78 62% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/urllib3/util/util.py 26 18 31% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/urllib3/util/wait.py 49 38 22% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/yaml/__init__.py 165 109 34% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/yaml/composer.py 92 17 82% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/yaml/constructor.py 479 276 42% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/yaml/cyaml.py 46 24 48% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/yaml/dumper.py 23 12 48% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/yaml/emitter.py 838 769 8% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/yaml/error.py 58 42 28% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/yaml/events.py 61 6 90% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/yaml/loader.py 47 24 49% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/yaml/nodes.py 29 7 76% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/yaml/parser.py 352 180 49% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/yaml/reader.py 122 30 75% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/yaml/representer.py 248 176 29% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/yaml/resolver.py 135 76 44% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/yaml/scanner.py 758 415 45% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/yaml/serializer.py 85 70 18% 2301s Mar 22 12:55:47 /usr/lib/python3/dist-packages/yaml/tokens.py 76 17 78% 2301s Mar 22 12:55:47 patroni/__init__.py 13 2 85% 2301s Mar 22 12:55:47 patroni/__main__.py 199 199 0% 2301s Mar 22 12:55:47 patroni/api.py 768 768 0% 2301s Mar 22 12:55:47 patroni/async_executor.py 96 69 28% 2301s Mar 22 12:55:47 patroni/collections.py 43 11 74% 2301s Mar 22 12:55:47 patroni/config.py 416 204 51% 2301s Mar 22 12:55:47 patroni/config_generator.py 210 210 0% 2301s Mar 22 12:55:47 patroni/ctl.py 940 409 56% 2301s Mar 22 12:55:47 patroni/daemon.py 76 76 0% 2301s Mar 22 12:55:47 patroni/dcs/__init__.py 667 267 60% 2301s Mar 22 12:55:47 patroni/dcs/consul.py 482 482 0% 2301s Mar 22 12:55:47 patroni/dcs/etcd3.py 683 683 0% 2301s Mar 22 12:55:47 patroni/dcs/etcd.py 602 602 0% 2301s Mar 22 12:55:47 patroni/dcs/exhibitor.py 60 60 0% 2301s Mar 22 12:55:47 patroni/dcs/kubernetes.py 935 935 0% 2301s Mar 22 12:55:47 patroni/dcs/raft.py 318 318 0% 2301s Mar 22 12:55:47 patroni/dcs/zookeeper.py 287 152 47% 2301s Mar 22 12:55:47 patroni/exceptions.py 16 1 94% 2301s Mar 22 12:55:47 patroni/file_perm.py 43 15 65% 2301s Mar 22 12:55:47 patroni/ha.py 1239 1239 0% 2301s Mar 22 12:55:47 patroni/log.py 155 155 0% 2301s Mar 22 12:55:47 patroni/postgresql/__init__.py 826 655 21% 2301s Mar 22 12:55:47 patroni/postgresql/bootstrap.py 253 224 11% 2301s Mar 22 12:55:47 patroni/postgresql/callback_executor.py 55 34 38% 2301s Mar 22 12:55:47 patroni/postgresql/cancellable.py 104 84 19% 2301s Mar 22 12:55:47 patroni/postgresql/citus.py 258 217 16% 2301s Mar 22 12:55:47 patroni/postgresql/config.py 806 693 14% 2301s Mar 22 12:55:47 patroni/postgresql/connection.py 75 50 33% 2301s Mar 22 12:55:47 patroni/postgresql/misc.py 41 29 29% 2301s Mar 22 12:55:47 patroni/postgresql/postmaster.py 170 139 18% 2301s Mar 22 12:55:47 patroni/postgresql/rewind.py 415 415 0% 2301s Mar 22 12:55:47 patroni/postgresql/slots.py 332 285 14% 2301s Mar 22 12:55:47 patroni/postgresql/sync.py 129 96 26% 2301s Mar 22 12:55:47 patroni/postgresql/validator.py 165 53 68% 2301s Mar 22 12:55:47 patroni/psycopg.py 41 27 34% 2301s Mar 22 12:55:47 patroni/raft_controller.py 22 22 0% 2301s Mar 22 12:55:47 patroni/request.py 62 6 90% 2301s Mar 22 12:55:47 patroni/scripts/__init__.py 0 0 100% 2301s Mar 22 12:55:47 patroni/scripts/aws.py 59 59 0% 2301s Mar 22 12:55:47 patroni/scripts/wale_restore.py 207 207 0% 2301s Mar 22 12:55:47 patroni/tags.py 35 10 71% 2301s Mar 22 12:55:47 patroni/utils.py 318 201 37% 2301s Mar 22 12:55:47 patroni/validator.py 284 201 29% 2301s Mar 22 12:55:47 patroni/version.py 1 0 100% 2301s Mar 22 12:55:47 patroni/watchdog/__init__.py 2 2 0% 2301s Mar 22 12:55:47 patroni/watchdog/base.py 203 203 0% 2301s Mar 22 12:55:47 patroni/watchdog/linux.py 135 135 0% 2301s Mar 22 12:55:47 -------------------------------------------------------------------------------------------- 2301s Mar 22 12:55:47 TOTAL 39235 23544 40% 2301s Mar 22 12:55:47 10 features passed, 0 failed, 1 skipped 2301s Mar 22 12:55:47 42 scenarios passed, 0 failed, 5 skipped 2301s Mar 22 12:55:47 431 steps passed, 0 failed, 61 skipped, 0 undefined 2301s Mar 22 12:55:47 Took 6m56.746s 2301s ### End 16 acceptance-zookeeper -e dcs_failsafe_mode ### 2301s + echo '### End 16 acceptance-zookeeper -e dcs_failsafe_mode ###' 2301s + rm -f '/tmp/pgpass?' 2301s ++ id -u 2301s + '[' 0 -eq 0 ']' 2301s + '[' -x /etc/init.d/zookeeper ']' 2301s + /etc/init.d/zookeeper stop 2301s Stopping zookeeper (via systemctl): zookeeper.service. 2301s autopkgtest [12:55:48]: test acceptance-zookeeper: -----------------------] 2302s autopkgtest [12:55:49]: test acceptance-zookeeper: - - - - - - - - - - results - - - - - - - - - - 2302s acceptance-zookeeper PASS 2302s autopkgtest [12:55:49]: test acceptance-raft: preparing testbed 2390s autopkgtest [12:57:17]: testbed dpkg architecture: s390x 2390s autopkgtest [12:57:17]: testbed apt version: 2.7.12 2390s autopkgtest [12:57:17]: @@@@@@@@@@@@@@@@@@@@ test bed setup 2391s Get:1 http://ftpmaster.internal/ubuntu noble-proposed InRelease [117 kB] 2392s Get:2 http://ftpmaster.internal/ubuntu noble-proposed/main Sources [496 kB] 2392s Get:3 http://ftpmaster.internal/ubuntu noble-proposed/universe Sources [3808 kB] 2393s Get:4 http://ftpmaster.internal/ubuntu noble-proposed/multiverse Sources [54.0 kB] 2393s Get:5 http://ftpmaster.internal/ubuntu noble-proposed/restricted Sources [6540 B] 2393s Get:6 http://ftpmaster.internal/ubuntu noble-proposed/main s390x Packages [665 kB] 2393s Get:7 http://ftpmaster.internal/ubuntu noble-proposed/main s390x c-n-f Metadata [3032 B] 2393s Get:8 http://ftpmaster.internal/ubuntu noble-proposed/restricted s390x Packages [1372 B] 2393s Get:9 http://ftpmaster.internal/ubuntu noble-proposed/restricted s390x c-n-f Metadata [116 B] 2393s Get:10 http://ftpmaster.internal/ubuntu noble-proposed/universe s390x Packages [3992 kB] 2394s Get:11 http://ftpmaster.internal/ubuntu noble-proposed/universe s390x c-n-f Metadata [7292 B] 2394s Get:12 http://ftpmaster.internal/ubuntu noble-proposed/multiverse s390x Packages [45.1 kB] 2394s Get:13 http://ftpmaster.internal/ubuntu noble-proposed/multiverse s390x c-n-f Metadata [116 B] 2396s Fetched 9196 kB in 4s (2540 kB/s) 2396s Reading package lists... 2398s Reading package lists... 2398s Building dependency tree... 2398s Reading state information... 2399s Calculating upgrade... 2399s The following packages will be upgraded: 2399s cloud-init debianutils fonts-ubuntu-console python3-markupsafe 2399s 4 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 2399s Need to get 719 kB of archives. 2399s After this operation, 11.3 kB disk space will be freed. 2399s Get:1 http://ftpmaster.internal/ubuntu noble/main s390x debianutils s390x 5.17 [90.1 kB] 2399s Get:2 http://ftpmaster.internal/ubuntu noble/main s390x fonts-ubuntu-console all 0.869+git20240321-0ubuntu1 [18.7 kB] 2399s Get:3 http://ftpmaster.internal/ubuntu noble/main s390x python3-markupsafe s390x 2.1.5-1build1 [12.8 kB] 2399s Get:4 http://ftpmaster.internal/ubuntu noble/main s390x cloud-init all 24.1.2-0ubuntu1 [597 kB] 2399s Preconfiguring packages ... 2399s Fetched 719 kB in 1s (1283 kB/s) 2400s (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 ... 52171 files and directories currently installed.) 2400s Preparing to unpack .../debianutils_5.17_s390x.deb ... 2400s Unpacking debianutils (5.17) over (5.16) ... 2400s Setting up debianutils (5.17) ... 2400s (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 ... 52171 files and directories currently installed.) 2400s Preparing to unpack .../fonts-ubuntu-console_0.869+git20240321-0ubuntu1_all.deb ... 2400s Unpacking fonts-ubuntu-console (0.869+git20240321-0ubuntu1) over (0.869-0ubuntu1) ... 2400s Preparing to unpack .../python3-markupsafe_2.1.5-1build1_s390x.deb ... 2400s Unpacking python3-markupsafe (2.1.5-1build1) over (2.1.5-1) ... 2400s Preparing to unpack .../cloud-init_24.1.2-0ubuntu1_all.deb ... 2400s Unpacking cloud-init (24.1.2-0ubuntu1) over (24.1.1-0ubuntu1) ... 2400s Setting up fonts-ubuntu-console (0.869+git20240321-0ubuntu1) ... 2400s Setting up cloud-init (24.1.2-0ubuntu1) ... 2401s Setting up python3-markupsafe (2.1.5-1build1) ... 2401s Processing triggers for man-db (2.12.0-3) ... 2402s Processing triggers for rsyslog (8.2312.0-3ubuntu3) ... 2403s Reading package lists... 2403s Building dependency tree... 2403s Reading state information... 2403s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 2403s Unknown architecture, assuming PC-style ttyS0 2403s sh: Attempting to set up Debian/Ubuntu apt sources automatically 2403s sh: Distribution appears to be Ubuntu 2404s Reading package lists... 2404s Building dependency tree... 2404s Reading state information... 2405s eatmydata is already the newest version (131-1). 2405s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 2405s Reading package lists... 2405s Building dependency tree... 2405s Reading state information... 2405s dbus is already the newest version (1.14.10-4ubuntu1). 2405s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 2405s Reading package lists... 2405s Building dependency tree... 2405s Reading state information... 2405s rng-tools-debian is already the newest version (2.4). 2405s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 2405s Reading package lists... 2405s Building dependency tree... 2405s Reading state information... 2406s The following packages will be REMOVED: 2406s cloud-init* python3-configobj* python3-debconf* 2406s 0 upgraded, 0 newly installed, 3 to remove and 0 not upgraded. 2406s After this operation, 3256 kB disk space will be freed. 2406s (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 ... 52170 files and directories currently installed.) 2406s Removing cloud-init (24.1.2-0ubuntu1) ... 2406s Removing python3-configobj (5.0.8-3) ... 2406s Removing python3-debconf (1.5.86) ... 2406s Processing triggers for man-db (2.12.0-3) ... 2407s (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 ... 51781 files and directories currently installed.) 2407s Purging configuration files for cloud-init (24.1.2-0ubuntu1) ... 2407s dpkg: warning: while removing cloud-init, directory '/etc/cloud/cloud.cfg.d' not empty so not removed 2407s Processing triggers for rsyslog (8.2312.0-3ubuntu3) ... 2407s invoke-rc.d: policy-rc.d denied execution of try-restart. 2407s Reading package lists... 2408s Building dependency tree... 2408s Reading state information... 2408s linux-generic is already the newest version (6.8.0-11.11+1). 2408s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 2408s Hit:1 http://ftpmaster.internal/ubuntu noble InRelease 2408s Hit:2 http://ftpmaster.internal/ubuntu noble-updates InRelease 2408s Hit:3 http://ftpmaster.internal/ubuntu noble-security InRelease 2410s Reading package lists... 2410s Reading package lists... 2410s Building dependency tree... 2410s Reading state information... 2410s Calculating upgrade... 2411s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 2411s Reading package lists... 2411s Building dependency tree... 2411s Reading state information... 2411s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 2411s autopkgtest [12:57:38]: rebooting testbed after setup commands that affected boot 2430s Reading package lists... 2430s Building dependency tree... 2430s Reading state information... 2431s Starting pkgProblemResolver with broken count: 0 2431s Starting 2 pkgProblemResolver with broken count: 0 2431s Done 2431s The following additional packages will be installed: 2431s fonts-font-awesome fonts-lato libio-pty-perl libipc-run-perl libjs-jquery 2431s libjs-sphinxdoc libjs-underscore libjson-perl libllvm17 libpq5 2431s libtime-duration-perl libtimedate-perl libxslt1.1 moreutils patroni 2431s patroni-doc postgresql postgresql-16 postgresql-client-16 2431s postgresql-client-common postgresql-common python3-behave python3-cdiff 2431s python3-click python3-colorama python3-coverage python3-dateutil 2431s python3-parse python3-parse-type python3-prettytable python3-psutil 2431s python3-psycopg2 python3-pysyncobj python3-wcwidth sphinx-rtd-theme-common 2431s ssl-cert 2431s Suggested packages: 2431s etcd-server | consul | zookeeperd vip-manager haproxy postgresql-doc 2431s postgresql-doc-16 python-coverage-doc python-psycopg2-doc 2431s Recommended packages: 2431s javascript-common libjson-xs-perl 2431s The following NEW packages will be installed: 2431s autopkgtest-satdep fonts-font-awesome fonts-lato libio-pty-perl 2431s libipc-run-perl libjs-jquery libjs-sphinxdoc libjs-underscore libjson-perl 2431s libllvm17 libpq5 libtime-duration-perl libtimedate-perl libxslt1.1 moreutils 2431s patroni patroni-doc postgresql postgresql-16 postgresql-client-16 2431s postgresql-client-common postgresql-common python3-behave python3-cdiff 2431s python3-click python3-colorama python3-coverage python3-dateutil 2431s python3-parse python3-parse-type python3-prettytable python3-psutil 2431s python3-psycopg2 python3-pysyncobj python3-wcwidth sphinx-rtd-theme-common 2431s ssl-cert 2431s 0 upgraded, 37 newly installed, 0 to remove and 0 not upgraded. 2431s Need to get 56.6 MB/56.6 MB of archives. 2431s After this operation, 243 MB of additional disk space will be used. 2431s Get:1 /tmp/autopkgtest.yyH96f/6-autopkgtest-satdep.deb autopkgtest-satdep s390x 0 [756 B] 2431s Get:2 http://ftpmaster.internal/ubuntu noble/main s390x fonts-lato all 2.015-1 [2781 kB] 2432s Get:3 http://ftpmaster.internal/ubuntu noble/main s390x libjson-perl all 4.10000-1 [81.9 kB] 2432s Get:4 http://ftpmaster.internal/ubuntu noble/main s390x postgresql-client-common all 257 [36.2 kB] 2432s Get:5 http://ftpmaster.internal/ubuntu noble/main s390x ssl-cert all 1.1.2ubuntu1 [17.8 kB] 2432s Get:6 http://ftpmaster.internal/ubuntu noble/main s390x postgresql-common all 257 [162 kB] 2432s Get:7 http://ftpmaster.internal/ubuntu noble/main s390x fonts-font-awesome all 5.0.10+really4.7.0~dfsg-4.1 [516 kB] 2432s Get:8 http://ftpmaster.internal/ubuntu noble/main s390x libio-pty-perl s390x 1:1.20-1 [31.2 kB] 2432s Get:9 http://ftpmaster.internal/ubuntu noble/main s390x libipc-run-perl all 20231003.0-1 [92.1 kB] 2432s Get:10 http://ftpmaster.internal/ubuntu noble/main s390x libjs-jquery all 3.6.1+dfsg+~3.5.14-1 [328 kB] 2432s Get:11 http://ftpmaster.internal/ubuntu noble/main s390x libjs-underscore all 1.13.4~dfsg+~1.11.4-3 [118 kB] 2432s Get:12 http://ftpmaster.internal/ubuntu noble/main s390x libjs-sphinxdoc all 7.2.6-4 [149 kB] 2432s Get:13 http://ftpmaster.internal/ubuntu noble/main s390x libllvm17 s390x 1:17.0.6-5build1 [31.2 MB] 2436s Get:14 http://ftpmaster.internal/ubuntu noble/main s390x libpq5 s390x 16.2-1 [143 kB] 2436s Get:15 http://ftpmaster.internal/ubuntu noble/main s390x libtime-duration-perl all 1.21-2 [12.3 kB] 2436s Get:16 http://ftpmaster.internal/ubuntu noble/main s390x libtimedate-perl all 2.3300-2 [34.0 kB] 2436s Get:17 http://ftpmaster.internal/ubuntu noble/main s390x libxslt1.1 s390x 1.1.35-1 [157 kB] 2436s Get:18 http://ftpmaster.internal/ubuntu noble/universe s390x moreutils s390x 0.69-1 [57.4 kB] 2436s Get:19 http://ftpmaster.internal/ubuntu noble/universe s390x python3-cdiff all 1.0-1.1 [16.4 kB] 2436s Get:20 http://ftpmaster.internal/ubuntu noble/main s390x python3-colorama all 0.4.6-4 [32.1 kB] 2436s Get:21 http://ftpmaster.internal/ubuntu noble/main s390x python3-click all 8.1.6-1 [79.0 kB] 2436s Get:22 http://ftpmaster.internal/ubuntu noble/main s390x python3-dateutil all 2.8.2-3 [79.2 kB] 2436s Get:23 http://ftpmaster.internal/ubuntu noble/main s390x python3-wcwidth all 0.2.5+dfsg1-1.1ubuntu1 [22.5 kB] 2436s Get:24 http://ftpmaster.internal/ubuntu noble/main s390x python3-prettytable all 3.6.0-1 [33.1 kB] 2436s Get:25 http://ftpmaster.internal/ubuntu noble/main s390x python3-psutil s390x 5.9.8-1 [195 kB] 2436s Get:26 http://ftpmaster.internal/ubuntu noble/main s390x python3-psycopg2 s390x 2.9.9-1 [180 kB] 2436s Get:27 http://ftpmaster.internal/ubuntu noble/universe s390x python3-pysyncobj all 0.3.12-1 [38.9 kB] 2436s Get:28 http://ftpmaster.internal/ubuntu noble/universe s390x patroni all 3.2.2-2 [253 kB] 2436s Get:29 http://ftpmaster.internal/ubuntu noble/main s390x sphinx-rtd-theme-common all 2.0.0+dfsg-1 [1012 kB] 2437s Get:30 http://ftpmaster.internal/ubuntu noble/universe s390x patroni-doc all 3.2.2-2 [476 kB] 2437s Get:31 http://ftpmaster.internal/ubuntu noble/main s390x postgresql-client-16 s390x 16.2-1 [1295 kB] 2437s Get:32 http://ftpmaster.internal/ubuntu noble/main s390x postgresql-16 s390x 16.2-1 [16.7 MB] 2439s Get:33 http://ftpmaster.internal/ubuntu noble/main s390x postgresql all 16+257 [11.4 kB] 2439s Get:34 http://ftpmaster.internal/ubuntu noble/universe s390x python3-parse all 1.19.0-0.2 [18.1 kB] 2439s Get:35 http://ftpmaster.internal/ubuntu noble/universe s390x python3-parse-type all 0.6.2-1 [22.7 kB] 2439s Get:36 http://ftpmaster.internal/ubuntu noble/universe s390x python3-behave all 1.2.6-5 [98.4 kB] 2439s Get:37 http://ftpmaster.internal/ubuntu noble/universe s390x python3-coverage s390x 7.3.2-0ubuntu1 [147 kB] 2439s Preconfiguring packages ... 2439s Fetched 56.6 MB in 8s (7219 kB/s) 2439s Selecting previously unselected package fonts-lato. 2439s (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 ... 51726 files and directories currently installed.) 2439s Preparing to unpack .../00-fonts-lato_2.015-1_all.deb ... 2439s Unpacking fonts-lato (2.015-1) ... 2440s Selecting previously unselected package libjson-perl. 2440s Preparing to unpack .../01-libjson-perl_4.10000-1_all.deb ... 2440s Unpacking libjson-perl (4.10000-1) ... 2440s Selecting previously unselected package postgresql-client-common. 2440s Preparing to unpack .../02-postgresql-client-common_257_all.deb ... 2440s Unpacking postgresql-client-common (257) ... 2440s Selecting previously unselected package ssl-cert. 2440s Preparing to unpack .../03-ssl-cert_1.1.2ubuntu1_all.deb ... 2440s Unpacking ssl-cert (1.1.2ubuntu1) ... 2440s Selecting previously unselected package postgresql-common. 2440s Preparing to unpack .../04-postgresql-common_257_all.deb ... 2440s Adding 'diversion of /usr/bin/pg_config to /usr/bin/pg_config.libpq-dev by postgresql-common' 2440s Unpacking postgresql-common (257) ... 2440s Selecting previously unselected package fonts-font-awesome. 2440s Preparing to unpack .../05-fonts-font-awesome_5.0.10+really4.7.0~dfsg-4.1_all.deb ... 2440s Unpacking fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ... 2440s Selecting previously unselected package libio-pty-perl. 2440s Preparing to unpack .../06-libio-pty-perl_1%3a1.20-1_s390x.deb ... 2440s Unpacking libio-pty-perl (1:1.20-1) ... 2440s Selecting previously unselected package libipc-run-perl. 2440s Preparing to unpack .../07-libipc-run-perl_20231003.0-1_all.deb ... 2440s Unpacking libipc-run-perl (20231003.0-1) ... 2440s Selecting previously unselected package libjs-jquery. 2440s Preparing to unpack .../08-libjs-jquery_3.6.1+dfsg+~3.5.14-1_all.deb ... 2440s Unpacking libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 2440s Selecting previously unselected package libjs-underscore. 2440s Preparing to unpack .../09-libjs-underscore_1.13.4~dfsg+~1.11.4-3_all.deb ... 2440s Unpacking libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 2440s Selecting previously unselected package libjs-sphinxdoc. 2440s Preparing to unpack .../10-libjs-sphinxdoc_7.2.6-4_all.deb ... 2440s Unpacking libjs-sphinxdoc (7.2.6-4) ... 2440s Selecting previously unselected package libllvm17:s390x. 2440s Preparing to unpack .../11-libllvm17_1%3a17.0.6-5build1_s390x.deb ... 2440s Unpacking libllvm17:s390x (1:17.0.6-5build1) ... 2441s Selecting previously unselected package libpq5:s390x. 2441s Preparing to unpack .../12-libpq5_16.2-1_s390x.deb ... 2441s Unpacking libpq5:s390x (16.2-1) ... 2441s Selecting previously unselected package libtime-duration-perl. 2441s Preparing to unpack .../13-libtime-duration-perl_1.21-2_all.deb ... 2441s Unpacking libtime-duration-perl (1.21-2) ... 2441s Selecting previously unselected package libtimedate-perl. 2441s Preparing to unpack .../14-libtimedate-perl_2.3300-2_all.deb ... 2441s Unpacking libtimedate-perl (2.3300-2) ... 2441s Selecting previously unselected package libxslt1.1:s390x. 2441s Preparing to unpack .../15-libxslt1.1_1.1.35-1_s390x.deb ... 2441s Unpacking libxslt1.1:s390x (1.1.35-1) ... 2441s Selecting previously unselected package moreutils. 2441s Preparing to unpack .../16-moreutils_0.69-1_s390x.deb ... 2441s Unpacking moreutils (0.69-1) ... 2441s Selecting previously unselected package python3-cdiff. 2441s Preparing to unpack .../17-python3-cdiff_1.0-1.1_all.deb ... 2441s Unpacking python3-cdiff (1.0-1.1) ... 2441s Selecting previously unselected package python3-colorama. 2441s Preparing to unpack .../18-python3-colorama_0.4.6-4_all.deb ... 2441s Unpacking python3-colorama (0.4.6-4) ... 2441s Selecting previously unselected package python3-click. 2441s Preparing to unpack .../19-python3-click_8.1.6-1_all.deb ... 2441s Unpacking python3-click (8.1.6-1) ... 2441s Selecting previously unselected package python3-dateutil. 2441s Preparing to unpack .../20-python3-dateutil_2.8.2-3_all.deb ... 2441s Unpacking python3-dateutil (2.8.2-3) ... 2441s Selecting previously unselected package python3-wcwidth. 2441s Preparing to unpack .../21-python3-wcwidth_0.2.5+dfsg1-1.1ubuntu1_all.deb ... 2441s Unpacking python3-wcwidth (0.2.5+dfsg1-1.1ubuntu1) ... 2441s Selecting previously unselected package python3-prettytable. 2441s Preparing to unpack .../22-python3-prettytable_3.6.0-1_all.deb ... 2441s Unpacking python3-prettytable (3.6.0-1) ... 2441s Selecting previously unselected package python3-psutil. 2441s Preparing to unpack .../23-python3-psutil_5.9.8-1_s390x.deb ... 2441s Unpacking python3-psutil (5.9.8-1) ... 2441s Selecting previously unselected package python3-psycopg2. 2441s Preparing to unpack .../24-python3-psycopg2_2.9.9-1_s390x.deb ... 2441s Unpacking python3-psycopg2 (2.9.9-1) ... 2441s Selecting previously unselected package python3-pysyncobj. 2441s Preparing to unpack .../25-python3-pysyncobj_0.3.12-1_all.deb ... 2441s Unpacking python3-pysyncobj (0.3.12-1) ... 2441s Selecting previously unselected package patroni. 2441s Preparing to unpack .../26-patroni_3.2.2-2_all.deb ... 2441s Unpacking patroni (3.2.2-2) ... 2441s Selecting previously unselected package sphinx-rtd-theme-common. 2441s Preparing to unpack .../27-sphinx-rtd-theme-common_2.0.0+dfsg-1_all.deb ... 2441s Unpacking sphinx-rtd-theme-common (2.0.0+dfsg-1) ... 2441s Selecting previously unselected package patroni-doc. 2441s Preparing to unpack .../28-patroni-doc_3.2.2-2_all.deb ... 2441s Unpacking patroni-doc (3.2.2-2) ... 2442s Selecting previously unselected package postgresql-client-16. 2442s Preparing to unpack .../29-postgresql-client-16_16.2-1_s390x.deb ... 2442s Unpacking postgresql-client-16 (16.2-1) ... 2442s Selecting previously unselected package postgresql-16. 2442s Preparing to unpack .../30-postgresql-16_16.2-1_s390x.deb ... 2442s Unpacking postgresql-16 (16.2-1) ... 2442s Selecting previously unselected package postgresql. 2442s Preparing to unpack .../31-postgresql_16+257_all.deb ... 2442s Unpacking postgresql (16+257) ... 2442s Selecting previously unselected package python3-parse. 2442s Preparing to unpack .../32-python3-parse_1.19.0-0.2_all.deb ... 2442s Unpacking python3-parse (1.19.0-0.2) ... 2442s Selecting previously unselected package python3-parse-type. 2442s Preparing to unpack .../33-python3-parse-type_0.6.2-1_all.deb ... 2442s Unpacking python3-parse-type (0.6.2-1) ... 2442s Selecting previously unselected package python3-behave. 2442s Preparing to unpack .../34-python3-behave_1.2.6-5_all.deb ... 2442s Unpacking python3-behave (1.2.6-5) ... 2442s Selecting previously unselected package python3-coverage. 2442s Preparing to unpack .../35-python3-coverage_7.3.2-0ubuntu1_s390x.deb ... 2442s Unpacking python3-coverage (7.3.2-0ubuntu1) ... 2442s Selecting previously unselected package autopkgtest-satdep. 2442s Preparing to unpack .../36-6-autopkgtest-satdep.deb ... 2442s Unpacking autopkgtest-satdep (0) ... 2442s Setting up postgresql-client-common (257) ... 2442s Setting up fonts-lato (2.015-1) ... 2442s Setting up libio-pty-perl (1:1.20-1) ... 2442s Setting up python3-pysyncobj (0.3.12-1) ... 2442s Setting up python3-colorama (0.4.6-4) ... 2443s Setting up python3-cdiff (1.0-1.1) ... 2443s Setting up libpq5:s390x (16.2-1) ... 2443s Setting up python3-coverage (7.3.2-0ubuntu1) ... 2443s Setting up python3-click (8.1.6-1) ... 2443s Setting up python3-psutil (5.9.8-1) ... 2443s Setting up python3-wcwidth (0.2.5+dfsg1-1.1ubuntu1) ... 2444s Setting up ssl-cert (1.1.2ubuntu1) ... 2444s Created symlink /etc/systemd/system/multi-user.target.wants/ssl-cert.service → /usr/lib/systemd/system/ssl-cert.service. 2445s Setting up python3-psycopg2 (2.9.9-1) ... 2445s Setting up libipc-run-perl (20231003.0-1) ... 2445s Setting up libtime-duration-perl (1.21-2) ... 2445s Setting up libtimedate-perl (2.3300-2) ... 2445s Setting up python3-parse (1.19.0-0.2) ... 2445s Setting up libjson-perl (4.10000-1) ... 2445s Setting up libxslt1.1:s390x (1.1.35-1) ... 2445s Setting up python3-dateutil (2.8.2-3) ... 2445s Setting up libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 2445s Setting up python3-prettytable (3.6.0-1) ... 2445s Setting up libllvm17:s390x (1:17.0.6-5build1) ... 2445s Setting up fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ... 2445s Setting up sphinx-rtd-theme-common (2.0.0+dfsg-1) ... 2445s Setting up libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 2445s Setting up moreutils (0.69-1) ... 2445s Setting up postgresql-client-16 (16.2-1) ... 2446s update-alternatives: using /usr/share/postgresql/16/man/man1/psql.1.gz to provide /usr/share/man/man1/psql.1.gz (psql.1.gz) in auto mode 2446s Setting up python3-parse-type (0.6.2-1) ... 2446s Setting up postgresql-common (257) ... 2446s 2446s Creating config file /etc/postgresql-common/createcluster.conf with new version 2446s Building PostgreSQL dictionaries from installed myspell/hunspell packages... 2446s Removing obsolete dictionary files: 2447s Created symlink /etc/systemd/system/multi-user.target.wants/postgresql.service → /usr/lib/systemd/system/postgresql.service. 2448s Setting up libjs-sphinxdoc (7.2.6-4) ... 2448s Setting up python3-behave (1.2.6-5) ... 2448s /usr/lib/python3/dist-packages/behave/formatter/ansi_escapes.py:57: SyntaxWarning: invalid escape sequence '\[' 2448s _ANSI_ESCAPE_PATTERN = re.compile(u"\x1b\[\d+[mA]", re.UNICODE) 2448s /usr/lib/python3/dist-packages/behave/matchers.py:267: SyntaxWarning: invalid escape sequence '\d' 2448s """Registers a custom type that will be available to "parse" 2448s Setting up patroni (3.2.2-2) ... 2448s Created symlink /etc/systemd/system/multi-user.target.wants/patroni.service → /usr/lib/systemd/system/patroni.service. 2448s Setting up postgresql-16 (16.2-1) ... 2449s Creating new PostgreSQL cluster 16/main ... 2449s /usr/lib/postgresql/16/bin/initdb -D /var/lib/postgresql/16/main --auth-local peer --auth-host scram-sha-256 --no-instructions 2449s The files belonging to this database system will be owned by user "postgres". 2449s This user must also own the server process. 2449s 2449s The database cluster will be initialized with locale "C.UTF-8". 2449s The default database encoding has accordingly been set to "UTF8". 2449s The default text search configuration will be set to "english". 2449s 2449s Data page checksums are disabled. 2449s 2449s fixing permissions on existing directory /var/lib/postgresql/16/main ... ok 2449s creating subdirectories ... ok 2449s selecting dynamic shared memory implementation ... posix 2449s selecting default max_connections ... 100 2449s selecting default shared_buffers ... 128MB 2449s selecting default time zone ... Etc/UTC 2449s creating configuration files ... ok 2449s running bootstrap script ... ok 2449s performing post-bootstrap initialization ... ok 2449s syncing data to disk ... ok 2453s Setting up patroni-doc (3.2.2-2) ... 2453s Setting up postgresql (16+257) ... 2453s Setting up autopkgtest-satdep (0) ... 2453s Processing triggers for man-db (2.12.0-3) ... 2454s Processing triggers for libc-bin (2.39-0ubuntu2) ... 2457s (Reading database ... 54680 files and directories currently installed.) 2457s Removing autopkgtest-satdep (0) ... 2460s autopkgtest [12:58:27]: test acceptance-raft: debian/tests/acceptance raft 2460s autopkgtest [12:58:27]: test acceptance-raft: [----------------------- 2460s dpkg-architecture: warning: cannot determine CC system type, falling back to default (native compilation) 2460s ++ ls -1r /usr/lib/postgresql/ 2460s + for PG_VERSION in $(ls -1r /usr/lib/postgresql/) 2460s + echo '### PostgreSQL 16 acceptance-raft ###' 2460s + '[' 16 == 10 ']' 2460s + SKIP= 2460s + bash -c 'set -o pipefail; ETCD_UNSUPPORTED_ARCH=s390x DCS=raft PATH=/usr/lib/postgresql/16/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin behave | ts' 2460s ### PostgreSQL 16 acceptance-raft ### 2467s Mar 22 12:58:34 Feature: basic replication # features/basic_replication.feature:1 2467s Mar 22 12:58:34 We should check that the basic bootstrapping, replication and failover works. 2467s Mar 22 12:58:34 Scenario: check replication of a single table # features/basic_replication.feature:4 2467s Mar 22 12:58:34 Given I start postgres0 # features/steps/basic_replication.py:8 2470s Mar 22 12:58:37 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 2471s Mar 22 12:58:38 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 2471s Mar 22 12:58:38 When I issue a PATCH request to http://127.0.0.1:8008/config with {"ttl": 20, "synchronous_mode": true} # features/steps/patroni_api.py:71 2471s Mar 22 12:58:38 Then I receive a response code 200 # features/steps/patroni_api.py:98 2471s Mar 22 12:58:38 When I start postgres1 # features/steps/basic_replication.py:8 2474s Mar 22 12:58:41 And I configure and start postgres2 with a tag replicatefrom postgres0 # features/steps/cascading_replication.py:7 2478s Mar 22 12:58:45 And "sync" key in DCS has leader=postgres0 after 20 seconds # features/steps/cascading_replication.py:23 2478s Mar 22 12:58:45 And I add the table foo to postgres0 # features/steps/basic_replication.py:49 2478s Mar 22 12:58:45 Then table foo is present on postgres1 after 20 seconds # features/steps/basic_replication.py:89 2479s Mar 22 12:58:46 Then table foo is present on postgres2 after 20 seconds # features/steps/basic_replication.py:89 2482s Mar 22 12:58:49 2482s Mar 22 12:58:49 Scenario: check restart of sync replica # features/basic_replication.feature:17 2482s Mar 22 12:58:49 Given I shut down postgres2 # features/steps/basic_replication.py:29 2483s Mar 22 12:58:50 Then "sync" key in DCS has sync_standby=postgres1 after 5 seconds # features/steps/cascading_replication.py:23 2483s Mar 22 12:58:50 When I start postgres2 # features/steps/basic_replication.py:8 2486s Mar 22 12:58:53 And I shut down postgres1 # features/steps/basic_replication.py:29 2489s Mar 22 12:58:56 Then "sync" key in DCS has sync_standby=postgres2 after 10 seconds # features/steps/cascading_replication.py:23 2490s Mar 22 12:58:57 When I start postgres1 # features/steps/basic_replication.py:8 2493s Mar 22 12:59:00 Then "members/postgres1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 2494s Mar 22 12:59:01 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 2494s Mar 22 12:59:01 And Status code on GET http://127.0.0.1:8009/async is 200 after 3 seconds # features/steps/patroni_api.py:142 2495s Mar 22 12:59:01 2495s Mar 22 12:59:01 Scenario: check stuck sync replica # features/basic_replication.feature:28 2495s Mar 22 12:59:01 Given I issue a PATCH request to http://127.0.0.1:8008/config with {"pause": true, "maximum_lag_on_syncnode": 15000000, "postgresql": {"parameters": {"synchronous_commit": "remote_apply"}}} # features/steps/patroni_api.py:71 2495s Mar 22 12:59:02 Then I receive a response code 200 # features/steps/patroni_api.py:98 2495s Mar 22 12:59:02 And I create table on postgres0 # features/steps/basic_replication.py:69 2495s Mar 22 12:59:02 And table mytest is present on postgres1 after 2 seconds # features/steps/basic_replication.py:89 2496s Mar 22 12:59:03 And table mytest is present on postgres2 after 2 seconds # features/steps/basic_replication.py:89 2496s Mar 22 12:59:03 When I pause wal replay on postgres2 # features/steps/basic_replication.py:58 2496s Mar 22 12:59:03 And I load data on postgres0 # features/steps/basic_replication.py:80 2497s Mar 22 12:59:04 Then "sync" key in DCS has sync_standby=postgres1 after 15 seconds # features/steps/cascading_replication.py:23 2500s Mar 22 12:59:07 And I resume wal replay on postgres2 # features/steps/basic_replication.py:58 2500s Mar 22 12:59:07 And Status code on GET http://127.0.0.1:8009/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 2500s Mar 22 12:59:07 And Status code on GET http://127.0.0.1:8010/async is 200 after 3 seconds # features/steps/patroni_api.py:142 2500s Mar 22 12:59:07 When I issue a PATCH request to http://127.0.0.1:8008/config with {"pause": null, "maximum_lag_on_syncnode": -1, "postgresql": {"parameters": {"synchronous_commit": "on"}}} # features/steps/patroni_api.py:71 2500s Mar 22 12:59:07 Then I receive a response code 200 # features/steps/patroni_api.py:98 2500s Mar 22 12:59:07 And I drop table on postgres0 # features/steps/basic_replication.py:69 2500s Mar 22 12:59:07 2500s Mar 22 12:59:07 Scenario: check multi sync replication # features/basic_replication.feature:44 2500s Mar 22 12:59:07 Given I issue a PATCH request to http://127.0.0.1:8008/config with {"synchronous_node_count": 2} # features/steps/patroni_api.py:71 2500s Mar 22 12:59:07 Then I receive a response code 200 # features/steps/patroni_api.py:98 2500s Mar 22 12:59:07 Then "sync" key in DCS has sync_standby=postgres1,postgres2 after 10 seconds # features/steps/cascading_replication.py:23 2504s Mar 22 12:59:11 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 2504s Mar 22 12:59:11 And Status code on GET http://127.0.0.1:8009/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 2504s Mar 22 12:59:11 When I issue a PATCH request to http://127.0.0.1:8008/config with {"synchronous_node_count": 1} # features/steps/patroni_api.py:71 2504s Mar 22 12:59:11 Then I receive a response code 200 # features/steps/patroni_api.py:98 2504s Mar 22 12:59:11 And I shut down postgres1 # features/steps/basic_replication.py:29 2507s Mar 22 12:59:14 Then "sync" key in DCS has sync_standby=postgres2 after 10 seconds # features/steps/cascading_replication.py:23 2508s Mar 22 12:59:15 When I start postgres1 # features/steps/basic_replication.py:8 2511s Mar 22 12:59:18 Then "members/postgres1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 2512s Mar 22 12:59:19 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 2512s Mar 22 12:59:19 And Status code on GET http://127.0.0.1:8009/async is 200 after 3 seconds # features/steps/patroni_api.py:142 2512s Mar 22 12:59:19 2512s Mar 22 12:59:19 Scenario: check the basic failover in synchronous mode # features/basic_replication.feature:59 2512s Mar 22 12:59:19 Given I run patronictl.py pause batman # features/steps/patroni_api.py:86 2514s Mar 22 12:59:21 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 2514s Mar 22 12:59:21 When I sleep for 2 seconds # features/steps/patroni_api.py:39 2516s Mar 22 12:59:23 And I shut down postgres0 # features/steps/basic_replication.py:29 2517s Mar 22 12:59:24 And I run patronictl.py resume batman # features/steps/patroni_api.py:86 2519s Mar 22 12:59:26 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 2519s Mar 22 12:59:26 And postgres2 role is the primary after 24 seconds # features/steps/basic_replication.py:101 2537s Mar 22 12:59:44 And Response on GET http://127.0.0.1:8010/history contains recovery after 10 seconds # features/steps/patroni_api.py:156 2539s Mar 22 12:59:46 And there is a postgres2_cb.log with "on_role_change master batman" in postgres2 data directory # features/steps/cascading_replication.py:12 2539s Mar 22 12:59:46 When I issue a PATCH request to http://127.0.0.1:8010/config with {"synchronous_mode": null, "master_start_timeout": 0} # features/steps/patroni_api.py:71 2540s Mar 22 12:59:46 Then I receive a response code 200 # features/steps/patroni_api.py:98 2540s Mar 22 12:59:46 When I add the table bar to postgres2 # features/steps/basic_replication.py:49 2540s Mar 22 12:59:46 Then table bar is present on postgres1 after 20 seconds # features/steps/basic_replication.py:89 2542s Mar 22 12:59:48 And Response on GET http://127.0.0.1:8010/config contains master_start_timeout after 10 seconds # features/steps/patroni_api.py:156 2542s Mar 22 12:59:49 2542s Mar 22 12:59:49 Scenario: check rejoin of the former primary with pg_rewind # features/basic_replication.feature:75 2542s Mar 22 12:59:49 Given I add the table splitbrain to postgres0 # features/steps/basic_replication.py:49 2542s Mar 22 12:59:49 And I start postgres0 # features/steps/basic_replication.py:8 2542s Mar 22 12:59:49 Then postgres0 role is the secondary after 20 seconds # features/steps/basic_replication.py:101 2546s Mar 22 12:59:53 When I add the table buz to postgres2 # features/steps/basic_replication.py:49 2546s Mar 22 12:59:53 Then table buz is present on postgres0 after 20 seconds # features/steps/basic_replication.py:89 2549s SKIP Scenario check graceful rejection when two nodes have the same name: Flaky test with Raft 2564s Mar 22 13:00:11 2564s Mar 22 13:00:11 @reject-duplicate-name 2564s Mar 22 13:00:11 Scenario: check graceful rejection when two nodes have the same name # features/basic_replication.feature:83 2564s Mar 22 13:00:11 Given I start duplicate postgres0 on port 8011 # None 2564s Mar 22 13:00:11 Then there is one of ["Can't start; there is already a node named 'postgres0' running"] CRITICAL in the dup-postgres0 patroni log after 5 seconds # None 2564s Mar 22 13:00:11 2564s Mar 22 13:00:11 Feature: cascading replication # features/cascading_replication.feature:1 2564s Mar 22 13:00:11 We should check that patroni can do base backup and streaming from the replica 2564s Mar 22 13:00:11 Scenario: check a base backup and streaming replication from a replica # features/cascading_replication.feature:4 2564s Mar 22 13:00:11 Given I start postgres0 # features/steps/basic_replication.py:8 2567s Mar 22 13:00:14 And postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 2568s Mar 22 13:00:15 And I configure and start postgres1 with a tag clonefrom true # features/steps/cascading_replication.py:7 2572s Mar 22 13:00:19 And replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:108 2573s Mar 22 13:00:20 And I create label with "postgres0" in postgres0 data directory # features/steps/cascading_replication.py:18 2573s Mar 22 13:00:20 And I create label with "postgres1" in postgres1 data directory # features/steps/cascading_replication.py:18 2573s Mar 22 13:00:20 And "members/postgres1" key in DCS has state=running after 12 seconds # features/steps/cascading_replication.py:23 2573s Mar 22 13:00:20 And I configure and start postgres2 with a tag replicatefrom postgres1 # features/steps/cascading_replication.py:7 2577s Mar 22 13:00:24 Then replication works from postgres0 to postgres2 after 30 seconds # features/steps/basic_replication.py:108 2582s Mar 22 13:00:29 And there is a label with "postgres1" in postgres2 data directory # features/steps/cascading_replication.py:12 2599s Mar 22 13:00:46 2599s SKIP FEATURE citus: Citus extenstion isn't available 2599s SKIP Scenario check that worker cluster is registered in the coordinator: Citus extenstion isn't available 2599s SKIP Scenario coordinator failover updates pg_dist_node: Citus extenstion isn't available 2599s SKIP Scenario worker switchover doesn't break client queries on the coordinator: Citus extenstion isn't available 2599s SKIP Scenario worker primary restart doesn't break client queries on the coordinator: Citus extenstion isn't available 2599s SKIP Scenario check that in-flight transaction is rolled back after timeout when other workers need to change pg_dist_node: Citus extenstion isn't available 2599s Mar 22 13:00:46 Feature: citus # features/citus.feature:1 2599s Mar 22 13:00:46 We should check that coordinator discovers and registers workers and clients don't have errors when worker cluster switches over 2599s Mar 22 13:00:46 Scenario: check that worker cluster is registered in the coordinator # features/citus.feature:4 2599s Mar 22 13:00:46 Given I start postgres0 in citus group 0 # None 2599s Mar 22 13:00:46 And I start postgres2 in citus group 1 # None 2599s Mar 22 13:00:46 Then postgres0 is a leader in a group 0 after 10 seconds # None 2599s Mar 22 13:00:46 And postgres2 is a leader in a group 1 after 10 seconds # None 2599s Mar 22 13:00:46 When I start postgres1 in citus group 0 # None 2599s Mar 22 13:00:46 And I start postgres3 in citus group 1 # None 2599s Mar 22 13:00:46 Then replication works from postgres0 to postgres1 after 15 seconds # None 2599s Mar 22 13:00:46 Then replication works from postgres2 to postgres3 after 15 seconds # None 2599s Mar 22 13:00:46 And postgres0 is registered in the postgres0 as the primary in group 0 after 5 seconds # None 2599s Mar 22 13:00:46 And postgres2 is registered in the postgres0 as the primary in group 1 after 5 seconds # None 2599s Mar 22 13:00:46 2599s Mar 22 13:00:46 Scenario: coordinator failover updates pg_dist_node # features/citus.feature:16 2599s Mar 22 13:00:46 Given I run patronictl.py failover batman --group 0 --candidate postgres1 --force # None 2599s Mar 22 13:00:46 Then postgres1 role is the primary after 10 seconds # None 2599s Mar 22 13:00:46 And "members/postgres0" key in a group 0 in DCS has state=running after 15 seconds # None 2599s Mar 22 13:00:46 And replication works from postgres1 to postgres0 after 15 seconds # None 2599s Mar 22 13:00:46 And postgres1 is registered in the postgres2 as the primary in group 0 after 5 seconds # None 2599s Mar 22 13:00:46 And "sync" key in a group 0 in DCS has sync_standby=postgres0 after 15 seconds # None 2599s Mar 22 13:00:46 When I run patronictl.py switchover batman --group 0 --candidate postgres0 --force # None 2599s Mar 22 13:00:46 Then postgres0 role is the primary after 10 seconds # None 2599s Mar 22 13:00:46 And replication works from postgres0 to postgres1 after 15 seconds # None 2599s Mar 22 13:00:46 And postgres0 is registered in the postgres2 as the primary in group 0 after 5 seconds # None 2599s Mar 22 13:00:46 And "sync" key in a group 0 in DCS has sync_standby=postgres1 after 15 seconds # None 2599s Mar 22 13:00:46 2599s Mar 22 13:00:46 Scenario: worker switchover doesn't break client queries on the coordinator # features/citus.feature:29 2599s Mar 22 13:00:46 Given I create a distributed table on postgres0 # None 2599s Mar 22 13:00:46 And I start a thread inserting data on postgres0 # None 2599s Mar 22 13:00:46 When I run patronictl.py switchover batman --group 1 --force # None 2599s Mar 22 13:00:46 Then I receive a response returncode 0 # None 2599s Mar 22 13:00:46 And postgres3 role is the primary after 10 seconds # None 2599s Mar 22 13:00:46 And "members/postgres2" key in a group 1 in DCS has state=running after 15 seconds # None 2599s Mar 22 13:00:46 And replication works from postgres3 to postgres2 after 15 seconds # None 2599s Mar 22 13:00:46 And postgres3 is registered in the postgres0 as the primary in group 1 after 5 seconds # None 2599s Mar 22 13:00:46 And "sync" key in a group 1 in DCS has sync_standby=postgres2 after 15 seconds # None 2599s Mar 22 13:00:46 And a thread is still alive # None 2599s Mar 22 13:00:46 When I run patronictl.py switchover batman --group 1 --force # None 2599s Mar 22 13:00:46 Then I receive a response returncode 0 # None 2599s Mar 22 13:00:46 And postgres2 role is the primary after 10 seconds # None 2599s Mar 22 13:00:46 And replication works from postgres2 to postgres3 after 15 seconds # None 2599s Mar 22 13:00:46 And postgres2 is registered in the postgres0 as the primary in group 1 after 5 seconds # None 2599s Mar 22 13:00:46 And "sync" key in a group 1 in DCS has sync_standby=postgres3 after 15 seconds # None 2599s Mar 22 13:00:46 And a thread is still alive # None 2599s Mar 22 13:00:46 When I stop a thread # None 2599s Mar 22 13:00:46 Then a distributed table on postgres0 has expected rows # None 2599s Mar 22 13:00:46 2599s Mar 22 13:00:46 Scenario: worker primary restart doesn't break client queries on the coordinator # features/citus.feature:50 2599s Mar 22 13:00:46 Given I cleanup a distributed table on postgres0 # None 2599s Mar 22 13:00:46 And I start a thread inserting data on postgres0 # None 2599s Mar 22 13:00:46 When I run patronictl.py restart batman postgres2 --group 1 --force # None 2599s Mar 22 13:00:46 Then I receive a response returncode 0 # None 2599s Mar 22 13:00:46 And postgres2 role is the primary after 10 seconds # None 2599s Mar 22 13:00:46 And replication works from postgres2 to postgres3 after 15 seconds # None 2599s Mar 22 13:00:46 And postgres2 is registered in the postgres0 as the primary in group 1 after 5 seconds # None 2599s Mar 22 13:00:46 And a thread is still alive # None 2599s Mar 22 13:00:46 When I stop a thread # None 2599s Mar 22 13:00:46 Then a distributed table on postgres0 has expected rows # None 2606s Mar 22 13:00:53 2606s Mar 22 13:00:53 Scenario: check that in-flight transaction is rolled back after timeout when other workers need to change pg_dist_node # features/citus.feature:62 2606s Mar 22 13:00:53 Given I start postgres4 in citus group 2 # None 2606s Mar 22 13:00:53 Then postgres4 is a leader in a group 2 after 10 seconds # None 2606s Mar 22 13:00:53 And "members/postgres4" key in a group 2 in DCS has role=master after 3 seconds # None 2606s Mar 22 13:00:53 When I run patronictl.py edit-config batman --group 2 -s ttl=20 --force # None 2606s Mar 22 13:00:53 Then I receive a response returncode 0 # None 2606s Mar 22 13:00:53 And I receive a response output "+ttl: 20" # None 2606s Mar 22 13:00:53 Then postgres4 is registered in the postgres2 as the primary in group 2 after 5 seconds # None 2606s Mar 22 13:00:53 When I shut down postgres4 # None 2606s Mar 22 13:00:53 Then there is a transaction in progress on postgres0 changing pg_dist_node after 5 seconds # None 2606s Mar 22 13:00:53 When I run patronictl.py restart batman postgres2 --group 1 --force # None 2606s Mar 22 13:00:53 Then a transaction finishes in 20 seconds # None 2606s Mar 22 13:00:53 2606s Mar 22 13:00:53 Feature: custom bootstrap # features/custom_bootstrap.feature:1 2606s Mar 22 13:00:53 We should check that patroni can bootstrap a new cluster from a backup 2606s Mar 22 13:00:53 Scenario: clone existing cluster using pg_basebackup # features/custom_bootstrap.feature:4 2606s Mar 22 13:00:53 Given I start postgres0 # features/steps/basic_replication.py:8 2609s Mar 22 13:00:56 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 2610s Mar 22 13:00:57 When I add the table foo to postgres0 # features/steps/basic_replication.py:49 2610s Mar 22 13:00:57 And I start postgres1 in a cluster batman1 as a clone of postgres0 # features/steps/custom_bootstrap.py:6 2614s Mar 22 13:01:01 Then postgres1 is a leader of batman1 after 10 seconds # features/steps/custom_bootstrap.py:16 2615s Mar 22 13:01:02 Then table foo is present on postgres1 after 10 seconds # features/steps/basic_replication.py:89 2615s Mar 22 13:01:02 2615s Mar 22 13:01:02 Scenario: make a backup and do a restore into a new cluster # features/custom_bootstrap.feature:12 2615s Mar 22 13:01:02 Given I add the table bar to postgres1 # features/steps/basic_replication.py:49 2615s Mar 22 13:01:02 And I do a backup of postgres1 # features/steps/custom_bootstrap.py:25 2615s Mar 22 13:01:02 When I start postgres2 in a cluster batman2 from backup # features/steps/custom_bootstrap.py:11 2621s Mar 22 13:01:08 Then postgres2 is a leader of batman2 after 30 seconds # features/steps/custom_bootstrap.py:16 2622s Mar 22 13:01:09 And table bar is present on postgres2 after 10 seconds # features/steps/basic_replication.py:89 2639s Mar 22 13:01:26 2639s Mar 22 13:01:26 Feature: dcs failsafe mode # features/dcs_failsafe_mode.feature:1 2639s Mar 22 13:01:26 We should check the basic dcs failsafe mode functioning 2639s Mar 22 13:01:26 Scenario: check failsafe mode can be successfully enabled # features/dcs_failsafe_mode.feature:4 2639s Mar 22 13:01:26 Given I start postgres0 # features/steps/basic_replication.py:8 2643s Mar 22 13:01:30 And postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 2644s Mar 22 13:01:31 Then "config" key in DCS has ttl=30 after 10 seconds # features/steps/cascading_replication.py:23 2644s Mar 22 13:01:31 When I issue a PATCH request to http://127.0.0.1:8008/config with {"loop_wait": 2, "ttl": 20, "retry_timeout": 3, "failsafe_mode": true} # features/steps/patroni_api.py:71 2644s Mar 22 13:01:31 Then I receive a response code 200 # features/steps/patroni_api.py:98 2644s Mar 22 13:01:31 And Response on GET http://127.0.0.1:8008/failsafe contains postgres0 after 10 seconds # features/steps/patroni_api.py:156 2644s Mar 22 13:01:31 When I issue a GET request to http://127.0.0.1:8008/failsafe # features/steps/patroni_api.py:61 2645s Mar 22 13:01:31 Then I receive a response code 200 # features/steps/patroni_api.py:98 2645s Mar 22 13:01:31 And I receive a response postgres0 http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:98 2645s Mar 22 13:01:31 When I issue a PATCH request to http://127.0.0.1:8008/config with {"postgresql": {"parameters": {"wal_level": "logical"}},"slots":{"dcs_slot_1": null,"postgres0":null}} # features/steps/patroni_api.py:71 2645s Mar 22 13:01:32 Then I receive a response code 200 # features/steps/patroni_api.py:98 2645s Mar 22 13:01:32 When I issue a PATCH request to http://127.0.0.1:8008/config with {"slots": {"dcs_slot_0": {"type": "logical", "database": "postgres", "plugin": "test_decoding"}}} # features/steps/patroni_api.py:71 2645s Mar 22 13:01:32 Then I receive a response code 200 # features/steps/patroni_api.py:98 2645s Mar 22 13:01:32 2645s Mar 22 13:01:32 @dcs-failsafe 2645s Mar 22 13:01:32 Scenario: check one-node cluster is functioning while DCS is down # features/dcs_failsafe_mode.feature:20 2645s Mar 22 13:01:32 Given DCS is down # features/steps/dcs_failsafe_mode.py:4 2645s Mar 22 13:01:32 Then Response on GET http://127.0.0.1:8008/primary contains failsafe_mode_is_active after 12 seconds # features/steps/patroni_api.py:156 2649s Mar 22 13:01:36 And postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:101 2649s Mar 22 13:01:36 2649s Mar 22 13:01:36 @dcs-failsafe 2649s Mar 22 13:01:36 Scenario: check new replica isn't promoted when leader is down and DCS is up # features/dcs_failsafe_mode.feature:26 2649s Mar 22 13:01:36 Given DCS is up # features/steps/dcs_failsafe_mode.py:9 2649s Mar 22 13:01:36 When I do a backup of postgres0 # features/steps/custom_bootstrap.py:25 2650s Mar 22 13:01:36 And I shut down postgres0 # features/steps/basic_replication.py:29 2651s Mar 22 13:01:38 When I start postgres1 in a cluster batman from backup with no_leader # features/steps/dcs_failsafe_mode.py:14 2655s Mar 22 13:01:41 Then postgres1 role is the replica after 12 seconds # features/steps/basic_replication.py:101 2655s Mar 22 13:01:41 2655s Mar 22 13:01:41 Scenario: check leader and replica are both in /failsafe key after leader is back # features/dcs_failsafe_mode.feature:33 2655s Mar 22 13:01:41 Given I start postgres0 # features/steps/basic_replication.py:8 2658s Mar 22 13:01:45 And I start postgres1 # features/steps/basic_replication.py:8 2658s Mar 22 13:01:45 Then "members/postgres0" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 2659s Mar 22 13:01:46 And "members/postgres1" key in DCS has state=running after 2 seconds # features/steps/cascading_replication.py:23 2659s Mar 22 13:01:46 And Response on GET http://127.0.0.1:8009/failsafe contains postgres1 after 10 seconds # features/steps/patroni_api.py:156 2664s Mar 22 13:01:51 When I issue a GET request to http://127.0.0.1:8009/failsafe # features/steps/patroni_api.py:61 2664s Mar 22 13:01:51 Then I receive a response code 200 # features/steps/patroni_api.py:98 2664s Mar 22 13:01:51 And I receive a response postgres0 http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:98 2664s Mar 22 13:01:51 And I receive a response postgres1 http://127.0.0.1:8009/patroni # features/steps/patroni_api.py:98 2664s Mar 22 13:01:51 2664s Mar 22 13:01:51 @dcs-failsafe @slot-advance 2664s Mar 22 13:01:51 Scenario: check leader and replica are functioning while DCS is down # features/dcs_failsafe_mode.feature:46 2664s Mar 22 13:01:51 Given I get all changes from physical slot dcs_slot_1 on postgres0 # features/steps/slots.py:75 2664s Mar 22 13:01:51 Then physical slot dcs_slot_1 is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 2667s Mar 22 13:01:54 And logical slot dcs_slot_0 is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 2667s Mar 22 13:01:54 And DCS is down # features/steps/dcs_failsafe_mode.py:4 2667s Mar 22 13:01:54 Then Response on GET http://127.0.0.1:8008/primary contains failsafe_mode_is_active after 12 seconds # features/steps/patroni_api.py:156 2671s Mar 22 13:01:58 Then postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:101 2671s Mar 22 13:01:58 And postgres1 role is the replica after 2 seconds # features/steps/basic_replication.py:101 2671s Mar 22 13:01:58 And replication works from postgres0 to postgres1 after 10 seconds # features/steps/basic_replication.py:108 2672s Mar 22 13:01:59 When I get all changes from logical slot dcs_slot_0 on postgres0 # features/steps/slots.py:70 2672s Mar 22 13:01:59 And I get all changes from physical slot dcs_slot_1 on postgres0 # features/steps/slots.py:75 2672s Mar 22 13:01:59 Then logical slot dcs_slot_0 is in sync between postgres0 and postgres1 after 20 seconds # features/steps/slots.py:51 2678s Mar 22 13:02:05 And physical slot dcs_slot_1 is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 2678s Mar 22 13:02:05 2678s Mar 22 13:02:05 @dcs-failsafe 2678s Mar 22 13:02:05 Scenario: check primary is demoted when one replica is shut down and DCS is down # features/dcs_failsafe_mode.feature:61 2678s Mar 22 13:02:05 Given DCS is down # features/steps/dcs_failsafe_mode.py:4 2678s Mar 22 13:02:05 And I kill postgres1 # features/steps/basic_replication.py:34 2679s Mar 22 13:02:06 And I kill postmaster on postgres1 # features/steps/basic_replication.py:44 2680s Mar 22 13:02:06 waiting for server to shut down.... done 2680s Mar 22 13:02:06 server stopped 2680s Mar 22 13:02:06 Then postgres0 role is the replica after 12 seconds # features/steps/basic_replication.py:101 2682s Mar 22 13:02:08 2682s Mar 22 13:02:08 @dcs-failsafe 2682s Mar 22 13:02:08 Scenario: check known replica is promoted when leader is down and DCS is up # features/dcs_failsafe_mode.feature:68 2682s Mar 22 13:02:08 Given I kill postgres0 # features/steps/basic_replication.py:34 2683s Mar 22 13:02:09 And I shut down postmaster on postgres0 # features/steps/basic_replication.py:39 2683s Mar 22 13:02:10 waiting for server to shut down.... done 2683s Mar 22 13:02:10 server stopped 2683s Mar 22 13:02:10 And DCS is up # features/steps/dcs_failsafe_mode.py:9 2683s Mar 22 13:02:10 When I start postgres1 # features/steps/basic_replication.py:8 2686s Mar 22 13:02:13 Then "members/postgres1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 2687s Mar 22 13:02:14 And postgres1 role is the primary after 25 seconds # features/steps/basic_replication.py:101 2689s Mar 22 13:02:16 2689s Mar 22 13:02:16 @dcs-failsafe 2689s Mar 22 13:02:16 Scenario: scale to three-node cluster # features/dcs_failsafe_mode.feature:77 2689s Mar 22 13:02:16 Given I start postgres0 # features/steps/basic_replication.py:8 2693s Mar 22 13:02:20 And I start postgres2 # features/steps/basic_replication.py:8 2697s Mar 22 13:02:24 Then "members/postgres2" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 2698s Mar 22 13:02:25 And "members/postgres0" key in DCS has state=running after 20 seconds # features/steps/cascading_replication.py:23 2698s Mar 22 13:02:25 And Response on GET http://127.0.0.1:8008/failsafe contains postgres2 after 10 seconds # features/steps/patroni_api.py:156 2699s Mar 22 13:02:26 And replication works from postgres1 to postgres0 after 10 seconds # features/steps/basic_replication.py:108 2700s Mar 22 13:02:27 And replication works from postgres1 to postgres2 after 10 seconds # features/steps/basic_replication.py:108 2701s Mar 22 13:02:28 2701s Mar 22 13:02:28 @dcs-failsafe @slot-advance 2701s Mar 22 13:02:28 Scenario: make sure permanent slots exist on replicas # features/dcs_failsafe_mode.feature:88 2701s Mar 22 13:02:28 Given I issue a PATCH request to http://127.0.0.1:8009/config with {"slots":{"dcs_slot_0":null,"dcs_slot_2":{"type":"logical","database":"postgres","plugin":"test_decoding"}}} # features/steps/patroni_api.py:71 2701s Mar 22 13:02:28 Then logical slot dcs_slot_2 is in sync between postgres1 and postgres0 after 20 seconds # features/steps/slots.py:51 2705s Mar 22 13:02:32 And logical slot dcs_slot_2 is in sync between postgres1 and postgres2 after 20 seconds # features/steps/slots.py:51 2706s Mar 22 13:02:33 When I get all changes from physical slot dcs_slot_1 on postgres1 # features/steps/slots.py:75 2706s Mar 22 13:02:33 Then physical slot dcs_slot_1 is in sync between postgres1 and postgres0 after 10 seconds # features/steps/slots.py:51 2708s Mar 22 13:02:35 And physical slot dcs_slot_1 is in sync between postgres1 and postgres2 after 10 seconds # features/steps/slots.py:51 2708s Mar 22 13:02:35 And physical slot postgres0 is in sync between postgres1 and postgres2 after 10 seconds # features/steps/slots.py:51 2708s Mar 22 13:02:35 2708s Mar 22 13:02:35 @dcs-failsafe 2708s Mar 22 13:02:35 Scenario: check three-node cluster is functioning while DCS is down # features/dcs_failsafe_mode.feature:98 2708s Mar 22 13:02:35 Given DCS is down # features/steps/dcs_failsafe_mode.py:4 2708s Mar 22 13:02:35 Then Response on GET http://127.0.0.1:8009/primary contains failsafe_mode_is_active after 12 seconds # features/steps/patroni_api.py:156 2712s Mar 22 13:02:39 Then postgres1 role is the primary after 10 seconds # features/steps/basic_replication.py:101 2712s Mar 22 13:02:39 And postgres0 role is the replica after 2 seconds # features/steps/basic_replication.py:101 2712s Mar 22 13:02:39 And postgres2 role is the replica after 2 seconds # features/steps/basic_replication.py:101 2712s Mar 22 13:02:39 2712s Mar 22 13:02:39 @dcs-failsafe @slot-advance 2712s Mar 22 13:02:39 Scenario: check that permanent slots are in sync between nodes while DCS is down # features/dcs_failsafe_mode.feature:107 2713s Mar 22 13:02:39 Given replication works from postgres1 to postgres0 after 10 seconds # features/steps/basic_replication.py:108 2713s Mar 22 13:02:39 And replication works from postgres1 to postgres2 after 10 seconds # features/steps/basic_replication.py:108 2713s Mar 22 13:02:40 When I get all changes from logical slot dcs_slot_2 on postgres1 # features/steps/slots.py:70 2713s Mar 22 13:02:40 And I get all changes from physical slot dcs_slot_1 on postgres1 # features/steps/slots.py:75 2713s Mar 22 13:02:40 Then logical slot dcs_slot_2 is in sync between postgres1 and postgres0 after 20 seconds # features/steps/slots.py:51 2719s Mar 22 13:02:46 And logical slot dcs_slot_2 is in sync between postgres1 and postgres2 after 20 seconds # features/steps/slots.py:51 2719s Mar 22 13:02:46 And physical slot dcs_slot_1 is in sync between postgres1 and postgres0 after 10 seconds # features/steps/slots.py:51 2719s Mar 22 13:02:46 And physical slot dcs_slot_1 is in sync between postgres1 and postgres2 after 10 seconds # features/steps/slots.py:51 2719s Mar 22 13:02:46 And physical slot postgres0 is in sync between postgres1 and postgres2 after 10 seconds # features/steps/slots.py:51 2732s Mar 22 13:02:59 2732s Mar 22 13:02:59 Feature: ignored slots # features/ignored_slots.feature:1 2732s Mar 22 13:02:59 2732s Mar 22 13:02:59 Scenario: check ignored slots aren't removed on failover/switchover # features/ignored_slots.feature:2 2732s Mar 22 13:02:59 Given I start postgres1 # features/steps/basic_replication.py:8 2735s Mar 22 13:03:02 Then postgres1 is a leader after 10 seconds # features/steps/patroni_api.py:29 2736s Mar 22 13:03:03 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 2736s Mar 22 13:03:03 When I issue a PATCH request to http://127.0.0.1:8009/config with {"ignore_slots": [{"name": "unmanaged_slot_0", "database": "postgres", "plugin": "test_decoding", "type": "logical"}, {"name": "unmanaged_slot_1", "database": "postgres", "plugin": "test_decoding"}, {"name": "unmanaged_slot_2", "database": "postgres"}, {"name": "unmanaged_slot_3"}], "postgresql": {"parameters": {"wal_level": "logical"}}} # features/steps/patroni_api.py:71 2736s Mar 22 13:03:03 Then I receive a response code 200 # features/steps/patroni_api.py:98 2736s Mar 22 13:03:03 And Response on GET http://127.0.0.1:8009/config contains ignore_slots after 10 seconds # features/steps/patroni_api.py:156 2736s Mar 22 13:03:03 When I shut down postgres1 # features/steps/basic_replication.py:29 2738s Mar 22 13:03:05 And I start postgres1 # features/steps/basic_replication.py:8 2741s Mar 22 13:03:08 Then postgres1 is a leader after 10 seconds # features/steps/patroni_api.py:29 2744s Mar 22 13:03:11 And "members/postgres1" key in DCS has role=master after 10 seconds # features/steps/cascading_replication.py:23 2745s Mar 22 13:03:12 And postgres1 role is the primary after 20 seconds # features/steps/basic_replication.py:101 2745s Mar 22 13:03:12 When I create a logical replication slot unmanaged_slot_0 on postgres1 with the test_decoding plugin # features/steps/slots.py:8 2745s Mar 22 13:03:12 And I create a logical replication slot unmanaged_slot_1 on postgres1 with the test_decoding plugin # features/steps/slots.py:8 2745s Mar 22 13:03:12 And I create a logical replication slot unmanaged_slot_2 on postgres1 with the test_decoding plugin # features/steps/slots.py:8 2745s Mar 22 13:03:12 And I create a logical replication slot unmanaged_slot_3 on postgres1 with the test_decoding plugin # features/steps/slots.py:8 2745s Mar 22 13:03:12 And I create a logical replication slot dummy_slot on postgres1 with the test_decoding plugin # features/steps/slots.py:8 2745s Mar 22 13:03:12 Then postgres1 has a logical replication slot named unmanaged_slot_0 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 2745s Mar 22 13:03:12 And postgres1 has a logical replication slot named unmanaged_slot_1 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 2745s Mar 22 13:03:12 And postgres1 has a logical replication slot named unmanaged_slot_2 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 2745s Mar 22 13:03:12 And postgres1 has a logical replication slot named unmanaged_slot_3 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 2745s Mar 22 13:03:12 When I start postgres0 # features/steps/basic_replication.py:8 2748s Mar 22 13:03:15 Then "members/postgres0" key in DCS has role=replica after 10 seconds # features/steps/cascading_replication.py:23 2748s Mar 22 13:03:15 And postgres0 role is the secondary after 20 seconds # features/steps/basic_replication.py:101 2748s Mar 22 13:03:15 And replication works from postgres1 to postgres0 after 20 seconds # features/steps/basic_replication.py:108 2753s Mar 22 13:03:20 When I shut down postgres1 # features/steps/basic_replication.py:29 2755s Mar 22 13:03:22 Then "members/postgres0" key in DCS has role=master after 10 seconds # features/steps/cascading_replication.py:23 2756s Mar 22 13:03:23 When I start postgres1 # features/steps/basic_replication.py:8 2760s Mar 22 13:03:26 Then postgres1 role is the secondary after 20 seconds # features/steps/basic_replication.py:101 2760s Mar 22 13:03:26 And "members/postgres1" key in DCS has role=replica after 10 seconds # features/steps/cascading_replication.py:23 2761s Mar 22 13:03:27 And I sleep for 2 seconds # features/steps/patroni_api.py:39 2763s Mar 22 13:03:29 And postgres1 has a logical replication slot named unmanaged_slot_0 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 2763s Mar 22 13:03:29 And postgres1 has a logical replication slot named unmanaged_slot_1 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 2763s Mar 22 13:03:29 And postgres1 has a logical replication slot named unmanaged_slot_2 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 2763s Mar 22 13:03:29 And postgres1 has a logical replication slot named unmanaged_slot_3 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 2763s Mar 22 13:03:29 And postgres1 does not have a replication slot named dummy_slot # features/steps/slots.py:40 2763s Mar 22 13:03:29 When I shut down postgres0 # features/steps/basic_replication.py:29 2765s Mar 22 13:03:31 Then "members/postgres1" key in DCS has role=master after 10 seconds # features/steps/cascading_replication.py:23 2766s Mar 22 13:03:32 And postgres1 has a logical replication slot named unmanaged_slot_0 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 2766s Mar 22 13:03:32 And postgres1 has a logical replication slot named unmanaged_slot_1 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 2766s Mar 22 13:03:32 And postgres1 has a logical replication slot named unmanaged_slot_2 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 2766s Mar 22 13:03:32 And postgres1 has a logical replication slot named unmanaged_slot_3 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 2774s Mar 22 13:03:41 2774s Mar 22 13:03:41 Feature: patroni api # features/patroni_api.feature:1 2774s Mar 22 13:03:41 We should check that patroni correctly responds to valid and not-valid API requests. 2774s Mar 22 13:03:41 Scenario: check API requests on a stand-alone server # features/patroni_api.feature:4 2774s Mar 22 13:03:41 Given I start postgres0 # features/steps/basic_replication.py:8 2778s Mar 22 13:03:45 And postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 2779s Mar 22 13:03:46 When I issue a GET request to http://127.0.0.1:8008/ # features/steps/patroni_api.py:61 2779s Mar 22 13:03:46 Then I receive a response code 200 # features/steps/patroni_api.py:98 2779s Mar 22 13:03:46 And I receive a response state running # features/steps/patroni_api.py:98 2779s Mar 22 13:03:46 And I receive a response role master # features/steps/patroni_api.py:98 2779s Mar 22 13:03:46 When I issue a GET request to http://127.0.0.1:8008/standby_leader # features/steps/patroni_api.py:61 2779s Mar 22 13:03:46 Then I receive a response code 503 # features/steps/patroni_api.py:98 2779s Mar 22 13:03:46 When I issue a GET request to http://127.0.0.1:8008/health # features/steps/patroni_api.py:61 2779s Mar 22 13:03:46 Then I receive a response code 200 # features/steps/patroni_api.py:98 2779s Mar 22 13:03:46 When I issue a GET request to http://127.0.0.1:8008/replica # features/steps/patroni_api.py:61 2780s Mar 22 13:03:46 Then I receive a response code 503 # features/steps/patroni_api.py:98 2780s Mar 22 13:03:46 When I issue a POST request to http://127.0.0.1:8008/reinitialize with {"force": true} # features/steps/patroni_api.py:71 2780s Mar 22 13:03:47 Then I receive a response code 503 # features/steps/patroni_api.py:98 2780s Mar 22 13:03:47 And I receive a response text I am the leader, can not reinitialize # features/steps/patroni_api.py:98 2780s Mar 22 13:03:47 When I run patronictl.py switchover batman --master postgres0 --force # features/steps/patroni_api.py:86 2781s Mar 22 13:03:48 Then I receive a response returncode 1 # features/steps/patroni_api.py:98 2781s Mar 22 13:03:48 And I receive a response output "Error: No candidates found to switchover to" # features/steps/patroni_api.py:98 2781s Mar 22 13:03:48 When I issue a POST request to http://127.0.0.1:8008/switchover with {"leader": "postgres0"} # features/steps/patroni_api.py:71 2781s Mar 22 13:03:48 Then I receive a response code 412 # features/steps/patroni_api.py:98 2781s Mar 22 13:03:48 And I receive a response text switchover is not possible: cluster does not have members except leader # features/steps/patroni_api.py:98 2781s Mar 22 13:03:48 When I issue an empty POST request to http://127.0.0.1:8008/failover # features/steps/patroni_api.py:66 2782s Mar 22 13:03:48 Then I receive a response code 400 # features/steps/patroni_api.py:98 2782s Mar 22 13:03:48 When I issue a POST request to http://127.0.0.1:8008/failover with {"foo": "bar"} # features/steps/patroni_api.py:71 2782s Mar 22 13:03:49 Then I receive a response code 400 # features/steps/patroni_api.py:98 2782s Mar 22 13:03:49 And I receive a response text "Failover could be performed only to a specific candidate" # features/steps/patroni_api.py:98 2782s Mar 22 13:03:49 2782s Mar 22 13:03:49 Scenario: check local configuration reload # features/patroni_api.feature:32 2782s Mar 22 13:03:49 Given I add tag new_tag new_value to postgres0 config # features/steps/patroni_api.py:137 2782s Mar 22 13:03:49 And I issue an empty POST request to http://127.0.0.1:8008/reload # features/steps/patroni_api.py:66 2782s Mar 22 13:03:49 Then I receive a response code 202 # features/steps/patroni_api.py:98 2782s Mar 22 13:03:49 2782s Mar 22 13:03:49 Scenario: check dynamic configuration change via DCS # features/patroni_api.feature:37 2782s Mar 22 13:03:49 Given I issue a PATCH request to http://127.0.0.1:8008/config with {"ttl": 20, "postgresql": {"parameters": {"max_connections": "101"}}} # features/steps/patroni_api.py:71 2782s Mar 22 13:03:49 Then I receive a response code 200 # features/steps/patroni_api.py:98 2782s Mar 22 13:03:49 And Response on GET http://127.0.0.1:8008/patroni contains pending_restart after 11 seconds # features/steps/patroni_api.py:156 2783s Mar 22 13:03:50 When I issue a GET request to http://127.0.0.1:8008/config # features/steps/patroni_api.py:61 2783s Mar 22 13:03:50 Then I receive a response code 200 # features/steps/patroni_api.py:98 2783s Mar 22 13:03:50 And I receive a response ttl 20 # features/steps/patroni_api.py:98 2783s Mar 22 13:03:50 When I issue a GET request to http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:61 2783s Mar 22 13:03:50 Then I receive a response code 200 # features/steps/patroni_api.py:98 2783s Mar 22 13:03:50 And I receive a response tags {'new_tag': 'new_value'} # features/steps/patroni_api.py:98 2783s Mar 22 13:03:50 And I sleep for 4 seconds # features/steps/patroni_api.py:39 2787s Mar 22 13:03:54 2787s Mar 22 13:03:54 Scenario: check the scheduled restart # features/patroni_api.feature:49 2787s Mar 22 13:03:54 Given I run patronictl.py edit-config -p 'superuser_reserved_connections=6' --force batman # features/steps/patroni_api.py:86 2789s Mar 22 13:03:56 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 2789s Mar 22 13:03:56 And I receive a response output "+ superuser_reserved_connections: 6" # features/steps/patroni_api.py:98 2789s Mar 22 13:03:56 And Response on GET http://127.0.0.1:8008/patroni contains pending_restart after 5 seconds # features/steps/patroni_api.py:156 2789s Mar 22 13:03:56 Given I issue a scheduled restart at http://127.0.0.1:8008 in 5 seconds with {"role": "replica"} # features/steps/patroni_api.py:124 2789s Mar 22 13:03:56 Then I receive a response code 202 # features/steps/patroni_api.py:98 2789s Mar 22 13:03:56 And I sleep for 8 seconds # features/steps/patroni_api.py:39 2797s Mar 22 13:04:04 And Response on GET http://127.0.0.1:8008/patroni contains pending_restart after 10 seconds # features/steps/patroni_api.py:156 2797s Mar 22 13:04:04 Given I issue a scheduled restart at http://127.0.0.1:8008 in 5 seconds with {"restart_pending": "True"} # features/steps/patroni_api.py:124 2797s Mar 22 13:04:04 Then I receive a response code 202 # features/steps/patroni_api.py:98 2797s Mar 22 13:04:04 And Response on GET http://127.0.0.1:8008/patroni does not contain pending_restart after 10 seconds # features/steps/patroni_api.py:171 2804s Mar 22 13:04:11 And postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:101 2805s Mar 22 13:04:12 2805s Mar 22 13:04:12 Scenario: check API requests for the primary-replica pair in the pause mode # features/patroni_api.feature:63 2805s Mar 22 13:04:12 Given I start postgres1 # features/steps/basic_replication.py:8 2809s Mar 22 13:04:16 Then replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:108 2810s Mar 22 13:04:17 When I run patronictl.py pause batman # features/steps/patroni_api.py:86 2812s Mar 22 13:04:19 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 2812s Mar 22 13:04:19 When I kill postmaster on postgres1 # features/steps/basic_replication.py:44 2812s Mar 22 13:04:19 waiting for server to shut down.... done 2812s Mar 22 13:04:19 server stopped 2812s Mar 22 13:04:19 And I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:61 2812s Mar 22 13:04:19 Then I receive a response code 503 # features/steps/patroni_api.py:98 2812s Mar 22 13:04:19 And "members/postgres1" key in DCS has state=stopped after 10 seconds # features/steps/cascading_replication.py:23 2813s Mar 22 13:04:20 When I run patronictl.py restart batman postgres1 --force # features/steps/patroni_api.py:86 2816s Mar 22 13:04:23 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 2816s Mar 22 13:04:23 Then replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:108 2817s Mar 22 13:04:24 And I sleep for 2 seconds # features/steps/patroni_api.py:39 2819s Mar 22 13:04:26 When I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:61 2819s Mar 22 13:04:26 Then I receive a response code 200 # features/steps/patroni_api.py:98 2819s Mar 22 13:04:26 And I receive a response state running # features/steps/patroni_api.py:98 2819s Mar 22 13:04:26 And I receive a response role replica # features/steps/patroni_api.py:98 2819s Mar 22 13:04:26 When I run patronictl.py reinit batman postgres1 --force --wait # features/steps/patroni_api.py:86 2824s Mar 22 13:04:31 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 2824s Mar 22 13:04:31 And I receive a response output "Success: reinitialize for member postgres1" # features/steps/patroni_api.py:98 2824s Mar 22 13:04:31 And postgres1 role is the secondary after 30 seconds # features/steps/basic_replication.py:101 2825s Mar 22 13:04:32 And replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:108 2826s Mar 22 13:04:33 When I run patronictl.py restart batman postgres0 --force # features/steps/patroni_api.py:86 2830s Mar 22 13:04:37 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 2830s Mar 22 13:04:37 And I receive a response output "Success: restart on member postgres0" # features/steps/patroni_api.py:98 2830s Mar 22 13:04:37 And postgres0 role is the primary after 5 seconds # features/steps/basic_replication.py:101 2831s Mar 22 13:04:38 2831s Mar 22 13:04:38 Scenario: check the switchover via the API in the pause mode # features/patroni_api.feature:90 2831s Mar 22 13:04:38 Given I issue a POST request to http://127.0.0.1:8008/switchover with {"leader": "postgres0", "candidate": "postgres1"} # features/steps/patroni_api.py:71 2833s Mar 22 13:04:40 Then I receive a response code 200 # features/steps/patroni_api.py:98 2833s Mar 22 13:04:40 And postgres1 is a leader after 5 seconds # features/steps/patroni_api.py:29 2833s Mar 22 13:04:40 And postgres1 role is the primary after 10 seconds # features/steps/basic_replication.py:101 2833s Mar 22 13:04:40 And postgres0 role is the secondary after 10 seconds # features/steps/basic_replication.py:101 2835s Mar 22 13:04:42 And replication works from postgres1 to postgres0 after 20 seconds # features/steps/basic_replication.py:108 2838s Mar 22 13:04:45 And "members/postgres0" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 2839s Mar 22 13:04:46 When I issue a GET request to http://127.0.0.1:8008/primary # features/steps/patroni_api.py:61 2839s Mar 22 13:04:46 Then I receive a response code 503 # features/steps/patroni_api.py:98 2839s Mar 22 13:04:46 When I issue a GET request to http://127.0.0.1:8008/replica # features/steps/patroni_api.py:61 2839s Mar 22 13:04:46 Then I receive a response code 200 # features/steps/patroni_api.py:98 2839s Mar 22 13:04:46 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:61 2839s Mar 22 13:04:46 Then I receive a response code 200 # features/steps/patroni_api.py:98 2839s Mar 22 13:04:46 When I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:61 2839s Mar 22 13:04:46 Then I receive a response code 503 # features/steps/patroni_api.py:98 2839s Mar 22 13:04:46 2839s Mar 22 13:04:46 Scenario: check the scheduled switchover # features/patroni_api.feature:107 2839s Mar 22 13:04:46 Given I issue a scheduled switchover from postgres1 to postgres0 in 10 seconds # features/steps/patroni_api.py:117 2841s Mar 22 13:04:48 Then I receive a response returncode 1 # features/steps/patroni_api.py:98 2841s Mar 22 13:04:48 And I receive a response output "Can't schedule switchover in the paused state" # features/steps/patroni_api.py:98 2841s Mar 22 13:04:48 When I run patronictl.py resume batman # features/steps/patroni_api.py:86 2843s Mar 22 13:04:50 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 2843s Mar 22 13:04:50 Given I issue a scheduled switchover from postgres1 to postgres0 in 10 seconds # features/steps/patroni_api.py:117 2845s Mar 22 13:04:52 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 2845s Mar 22 13:04:52 And postgres0 is a leader after 20 seconds # features/steps/patroni_api.py:29 2855s Mar 22 13:05:02 And postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:101 2855s Mar 22 13:05:02 And postgres1 role is the secondary after 10 seconds # features/steps/basic_replication.py:101 2857s Mar 22 13:05:04 And replication works from postgres0 to postgres1 after 25 seconds # features/steps/basic_replication.py:108 2858s Mar 22 13:05:05 And "members/postgres1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 2859s Mar 22 13:05:06 When I issue a GET request to http://127.0.0.1:8008/primary # features/steps/patroni_api.py:61 2859s Mar 22 13:05:06 Then I receive a response code 200 # features/steps/patroni_api.py:98 2859s Mar 22 13:05:06 When I issue a GET request to http://127.0.0.1:8008/replica # features/steps/patroni_api.py:61 2859s Mar 22 13:05:06 Then I receive a response code 503 # features/steps/patroni_api.py:98 2859s Mar 22 13:05:06 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:61 2859s Mar 22 13:05:06 Then I receive a response code 503 # features/steps/patroni_api.py:98 2859s Mar 22 13:05:06 When I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:61 2860s Mar 22 13:05:06 Then I receive a response code 200 # features/steps/patroni_api.py:98 2870s Mar 22 13:05:17 2870s Mar 22 13:05:17 Feature: permanent slots # features/permanent_slots.feature:1 2870s Mar 22 13:05:17 2870s Mar 22 13:05:17 Scenario: check that physical permanent slots are created # features/permanent_slots.feature:2 2870s Mar 22 13:05:17 Given I start postgres0 # features/steps/basic_replication.py:8 2874s Mar 22 13:05:21 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 2875s Mar 22 13:05:22 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 2875s Mar 22 13:05:22 When I issue a PATCH request to http://127.0.0.1:8008/config with {"slots":{"test_physical":0,"postgres0":0,"postgres1":0,"postgres3":0},"postgresql":{"parameters":{"wal_level":"logical"}}} # features/steps/patroni_api.py:71 2875s Mar 22 13:05:22 Then I receive a response code 200 # features/steps/patroni_api.py:98 2875s Mar 22 13:05:22 And Response on GET http://127.0.0.1:8008/config contains slots after 10 seconds # features/steps/patroni_api.py:156 2876s Mar 22 13:05:22 When I start postgres1 # features/steps/basic_replication.py:8 2879s Mar 22 13:05:26 And I start postgres2 # features/steps/basic_replication.py:8 2883s Mar 22 13:05:30 And I configure and start postgres3 with a tag replicatefrom postgres2 # features/steps/cascading_replication.py:7 2887s Mar 22 13:05:34 Then postgres0 has a physical replication slot named test_physical after 10 seconds # features/steps/slots.py:80 2887s Mar 22 13:05:34 And postgres0 has a physical replication slot named postgres1 after 10 seconds # features/steps/slots.py:80 2887s Mar 22 13:05:34 And postgres0 has a physical replication slot named postgres2 after 10 seconds # features/steps/slots.py:80 2887s Mar 22 13:05:34 And postgres2 has a physical replication slot named postgres3 after 10 seconds # features/steps/slots.py:80 2887s Mar 22 13:05:34 2887s Mar 22 13:05:34 @slot-advance 2887s Mar 22 13:05:34 Scenario: check that logical permanent slots are created # features/permanent_slots.feature:18 2887s Mar 22 13:05:34 Given I run patronictl.py restart batman postgres0 --force # features/steps/patroni_api.py:86 2891s Mar 22 13:05:38 And I issue a PATCH request to http://127.0.0.1:8008/config with {"slots":{"test_logical":{"type":"logical","database":"postgres","plugin":"test_decoding"}}} # features/steps/patroni_api.py:71 2891s Mar 22 13:05:38 Then postgres0 has a logical replication slot named test_logical with the test_decoding plugin after 10 seconds # features/steps/slots.py:19 2892s Mar 22 13:05:39 2892s Mar 22 13:05:39 @slot-advance 2892s Mar 22 13:05:39 Scenario: check that permanent slots are created on replicas # features/permanent_slots.feature:24 2892s Mar 22 13:05:39 Given postgres1 has a logical replication slot named test_logical with the test_decoding plugin after 10 seconds # features/steps/slots.py:19 2896s Mar 22 13:05:42 Then Logical slot test_logical is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 2896s Mar 22 13:05:42 And Logical slot test_logical is in sync between postgres0 and postgres2 after 10 seconds # features/steps/slots.py:51 2897s Mar 22 13:05:44 And Logical slot test_logical is in sync between postgres0 and postgres3 after 10 seconds # features/steps/slots.py:51 2898s Mar 22 13:05:45 And postgres1 has a physical replication slot named test_physical after 2 seconds # features/steps/slots.py:80 2898s Mar 22 13:05:45 And postgres2 has a physical replication slot named test_physical after 2 seconds # features/steps/slots.py:80 2898s Mar 22 13:05:45 And postgres3 has a physical replication slot named test_physical after 2 seconds # features/steps/slots.py:80 2898s Mar 22 13:05:45 2898s Mar 22 13:05:45 @slot-advance 2898s Mar 22 13:05:45 Scenario: check permanent physical slots that match with member names # features/permanent_slots.feature:34 2898s Mar 22 13:05:45 Given postgres0 has a physical replication slot named postgres3 after 2 seconds # features/steps/slots.py:80 2898s Mar 22 13:05:45 And postgres1 has a physical replication slot named postgres0 after 2 seconds # features/steps/slots.py:80 2898s Mar 22 13:05:45 And postgres1 has a physical replication slot named postgres3 after 2 seconds # features/steps/slots.py:80 2898s Mar 22 13:05:45 And postgres2 has a physical replication slot named postgres0 after 2 seconds # features/steps/slots.py:80 2898s Mar 22 13:05:45 And postgres2 has a physical replication slot named postgres3 after 2 seconds # features/steps/slots.py:80 2898s Mar 22 13:05:45 And postgres2 has a physical replication slot named postgres1 after 2 seconds # features/steps/slots.py:80 2898s Mar 22 13:05:45 And postgres1 does not have a replication slot named postgres2 # features/steps/slots.py:40 2898s Mar 22 13:05:45 And postgres3 does not have a replication slot named postgres2 # features/steps/slots.py:40 2898s Mar 22 13:05:45 2898s Mar 22 13:05:45 @slot-advance 2898s Mar 22 13:05:45 Scenario: check that permanent slots are advanced on replicas # features/permanent_slots.feature:45 2898s Mar 22 13:05:45 Given I add the table replicate_me to postgres0 # features/steps/basic_replication.py:49 2898s Mar 22 13:05:45 When I get all changes from logical slot test_logical on postgres0 # features/steps/slots.py:70 2898s Mar 22 13:05:45 And I get all changes from physical slot test_physical on postgres0 # features/steps/slots.py:75 2898s Mar 22 13:05:45 Then Logical slot test_logical is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 2899s Mar 22 13:05:46 And Physical slot test_physical is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 2899s Mar 22 13:05:46 And Logical slot test_logical is in sync between postgres0 and postgres2 after 10 seconds # features/steps/slots.py:51 2899s Mar 22 13:05:46 And Physical slot test_physical is in sync between postgres0 and postgres2 after 10 seconds # features/steps/slots.py:51 2899s Mar 22 13:05:46 And Logical slot test_logical is in sync between postgres0 and postgres3 after 10 seconds # features/steps/slots.py:51 2899s Mar 22 13:05:46 And Physical slot test_physical is in sync between postgres0 and postgres3 after 10 seconds # features/steps/slots.py:51 2899s Mar 22 13:05:46 And Physical slot postgres1 is in sync between postgres0 and postgres2 after 10 seconds # features/steps/slots.py:51 2899s Mar 22 13:05:46 And Physical slot postgres3 is in sync between postgres2 and postgres0 after 20 seconds # features/steps/slots.py:51 2901s Mar 22 13:05:48 And Physical slot postgres3 is in sync between postgres2 and postgres1 after 10 seconds # features/steps/slots.py:51 2901s Mar 22 13:05:48 And postgres1 does not have a replication slot named postgres2 # features/steps/slots.py:40 2901s Mar 22 13:05:48 And postgres3 does not have a replication slot named postgres2 # features/steps/slots.py:40 2901s Mar 22 13:05:48 2901s Mar 22 13:05:48 @slot-advance 2901s Mar 22 13:05:48 Scenario: check that only permanent slots are written to the /status key # features/permanent_slots.feature:62 2901s Mar 22 13:05:48 Given "status" key in DCS has test_physical in slots # features/steps/slots.py:96 2901s Mar 22 13:05:48 And "status" key in DCS has postgres0 in slots # features/steps/slots.py:96 2901s Mar 22 13:05:48 And "status" key in DCS has postgres1 in slots # features/steps/slots.py:96 2901s Mar 22 13:05:48 And "status" key in DCS does not have postgres2 in slots # features/steps/slots.py:102 2901s Mar 22 13:05:48 And "status" key in DCS has postgres3 in slots # features/steps/slots.py:96 2901s Mar 22 13:05:48 2901s Mar 22 13:05:48 Scenario: check permanent physical replication slot after failover # features/permanent_slots.feature:69 2901s Mar 22 13:05:48 Given I shut down postgres3 # features/steps/basic_replication.py:29 2902s Mar 22 13:05:49 And I shut down postgres2 # features/steps/basic_replication.py:29 2903s Mar 22 13:05:50 And I shut down postgres0 # features/steps/basic_replication.py:29 2905s Mar 22 13:05:52 Then postgres1 has a physical replication slot named test_physical after 10 seconds # features/steps/slots.py:80 2905s Mar 22 13:05:52 And postgres1 has a physical replication slot named postgres0 after 10 seconds # features/steps/slots.py:80 2905s Mar 22 13:05:52 And postgres1 has a physical replication slot named postgres3 after 10 seconds # features/steps/slots.py:80 2916s Mar 22 13:06:03 2916s Mar 22 13:06:03 Feature: priority replication # features/priority_failover.feature:1 2916s Mar 22 13:06:03 We should check that we can give nodes priority during failover 2916s Mar 22 13:06:03 Scenario: check failover priority 0 prevents leaderships # features/priority_failover.feature:4 2916s Mar 22 13:06:03 Given I configure and start postgres0 with a tag failover_priority 1 # features/steps/cascading_replication.py:7 2920s Mar 22 13:06:07 And I configure and start postgres1 with a tag failover_priority 0 # features/steps/cascading_replication.py:7 2924s Mar 22 13:06:11 Then replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:108 2926s Mar 22 13:06:12 When I shut down postgres0 # features/steps/basic_replication.py:29 2928s Mar 22 13:06:14 And there is one of ["following a different leader because I am not allowed to promote"] INFO in the postgres1 patroni log after 5 seconds # features/steps/basic_replication.py:117 2930s Mar 22 13:06:16 Then postgres1 role is the secondary after 10 seconds # features/steps/basic_replication.py:101 2930s Mar 22 13:06:16 When I start postgres0 # features/steps/basic_replication.py:8 2933s Mar 22 13:06:20 Then postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:101 2936s Mar 22 13:06:23 2936s Mar 22 13:06:23 Scenario: check higher failover priority is respected # features/priority_failover.feature:14 2936s Mar 22 13:06:23 Given I configure and start postgres2 with a tag failover_priority 1 # features/steps/cascading_replication.py:7 2940s Mar 22 13:06:27 And I configure and start postgres3 with a tag failover_priority 2 # features/steps/cascading_replication.py:7 2945s Mar 22 13:06:32 Then replication works from postgres0 to postgres2 after 20 seconds # features/steps/basic_replication.py:108 2946s Mar 22 13:06:33 And replication works from postgres0 to postgres3 after 20 seconds # features/steps/basic_replication.py:108 2950s Mar 22 13:06:37 When I shut down postgres0 # features/steps/basic_replication.py:29 2952s Mar 22 13:06:39 Then postgres3 role is the primary after 10 seconds # features/steps/basic_replication.py:101 2952s Mar 22 13:06:39 And there is one of ["postgres3 has equally tolerable WAL position and priority 2, while this node has priority 1","Wal position of postgres3 is ahead of my wal position"] INFO in the postgres2 patroni log after 5 seconds # features/steps/basic_replication.py:117 2952s Mar 22 13:06:39 2952s Mar 22 13:06:39 Scenario: check conflicting configuration handling # features/priority_failover.feature:23 2952s Mar 22 13:06:39 When I set nofailover tag in postgres2 config # features/steps/patroni_api.py:131 2952s Mar 22 13:06:39 And I issue an empty POST request to http://127.0.0.1:8010/reload # features/steps/patroni_api.py:66 2952s Mar 22 13:06:39 Then I receive a response code 202 # features/steps/patroni_api.py:98 2952s Mar 22 13:06:39 And there is one of ["Conflicting configuration between nofailover: True and failover_priority: 1. Defaulting to nofailover: True"] WARNING in the postgres2 patroni log after 5 seconds # features/steps/basic_replication.py:117 2953s Mar 22 13:06:40 And "members/postgres2" key in DCS has tags={'failover_priority': '1', 'nofailover': True} after 10 seconds # features/steps/cascading_replication.py:23 2954s Mar 22 13:06:41 When I issue a POST request to http://127.0.0.1:8010/failover with {"candidate": "postgres2"} # features/steps/patroni_api.py:71 2954s Mar 22 13:06:41 Then I receive a response code 412 # features/steps/patroni_api.py:98 2954s Mar 22 13:06:41 And I receive a response text "failover is not possible: no good candidates have been found" # features/steps/patroni_api.py:98 2954s Mar 22 13:06:41 When I reset nofailover tag in postgres1 config # features/steps/patroni_api.py:131 2954s Mar 22 13:06:41 And I issue an empty POST request to http://127.0.0.1:8009/reload # features/steps/patroni_api.py:66 2954s Mar 22 13:06:41 Then I receive a response code 202 # features/steps/patroni_api.py:98 2954s Mar 22 13:06:41 And there is one of ["Conflicting configuration between nofailover: False and failover_priority: 0. Defaulting to nofailover: False"] WARNING in the postgres1 patroni log after 5 seconds # features/steps/basic_replication.py:117 2956s Mar 22 13:06:43 And "members/postgres1" key in DCS has tags={'failover_priority': '0', 'nofailover': False} after 10 seconds # features/steps/cascading_replication.py:23 2957s Mar 22 13:06:44 And I issue a POST request to http://127.0.0.1:8009/failover with {"candidate": "postgres1"} # features/steps/patroni_api.py:71 2960s Mar 22 13:06:47 Then I receive a response code 200 # features/steps/patroni_api.py:98 2960s Mar 22 13:06:47 And postgres1 role is the primary after 10 seconds # features/steps/basic_replication.py:101 2973s Mar 22 13:07:00 2973s Mar 22 13:07:00 Feature: recovery # features/recovery.feature:1 2973s Mar 22 13:07:00 We want to check that crashed postgres is started back 2973s Mar 22 13:07:00 Scenario: check that timeline is not incremented when primary is started after crash # features/recovery.feature:4 2973s Mar 22 13:07:00 Given I start postgres0 # features/steps/basic_replication.py:8 2977s Mar 22 13:07:04 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 2978s Mar 22 13:07:05 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 2978s Mar 22 13:07:05 When I start postgres1 # features/steps/basic_replication.py:8 2981s Mar 22 13:07:08 And I add the table foo to postgres0 # features/steps/basic_replication.py:49 2981s Mar 22 13:07:08 Then table foo is present on postgres1 after 20 seconds # features/steps/basic_replication.py:89 2986s Mar 22 13:07:13 When I kill postmaster on postgres0 # features/steps/basic_replication.py:44 2986s Mar 22 13:07:13 waiting for server to shut down.... done 2986s Mar 22 13:07:13 server stopped 2986s Mar 22 13:07:13 Then postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:101 2988s Mar 22 13:07:15 When I issue a GET request to http://127.0.0.1:8008/ # features/steps/patroni_api.py:61 2988s Mar 22 13:07:15 Then I receive a response code 200 # features/steps/patroni_api.py:98 2988s Mar 22 13:07:15 And I receive a response role master # features/steps/patroni_api.py:98 2988s Mar 22 13:07:15 And I receive a response timeline 1 # features/steps/patroni_api.py:98 2988s Mar 22 13:07:15 And "members/postgres0" key in DCS has state=running after 12 seconds # features/steps/cascading_replication.py:23 2989s Mar 22 13:07:16 And replication works from postgres0 to postgres1 after 15 seconds # features/steps/basic_replication.py:108 2991s Mar 22 13:07:18 2991s Mar 22 13:07:18 Scenario: check immediate failover when master_start_timeout=0 # features/recovery.feature:20 2991s Mar 22 13:07:18 Given I issue a PATCH request to http://127.0.0.1:8008/config with {"master_start_timeout": 0} # features/steps/patroni_api.py:71 2991s Mar 22 13:07:18 Then I receive a response code 200 # features/steps/patroni_api.py:98 2991s Mar 22 13:07:18 And Response on GET http://127.0.0.1:8008/config contains master_start_timeout after 10 seconds # features/steps/patroni_api.py:156 2992s Mar 22 13:07:18 When I kill postmaster on postgres0 # features/steps/basic_replication.py:44 2992s Mar 22 13:07:19 waiting for server to shut down.... done 2992s Mar 22 13:07:19 server stopped 2992s Mar 22 13:07:19 Then postgres1 is a leader after 10 seconds # features/steps/patroni_api.py:29 2995s Mar 22 13:07:22 And postgres1 role is the primary after 10 seconds # features/steps/basic_replication.py:101 3004s Mar 22 13:07:31 3004s Mar 22 13:07:31 Feature: standby cluster # features/standby_cluster.feature:1 3004s Mar 22 13:07:31 3004s Mar 22 13:07:31 Scenario: prepare the cluster with logical slots # features/standby_cluster.feature:2 3004s Mar 22 13:07:31 Given I start postgres1 # features/steps/basic_replication.py:8 3008s Mar 22 13:07:35 Then postgres1 is a leader after 10 seconds # features/steps/patroni_api.py:29 3009s Mar 22 13:07:36 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 3009s Mar 22 13:07:36 When I issue a PATCH request to http://127.0.0.1:8009/config with {"slots": {"pm_1": {"type": "physical"}}, "postgresql": {"parameters": {"wal_level": "logical"}}} # features/steps/patroni_api.py:71 3009s Mar 22 13:07:36 Then I receive a response code 200 # features/steps/patroni_api.py:98 3009s Mar 22 13:07:36 And Response on GET http://127.0.0.1:8009/config contains slots after 10 seconds # features/steps/patroni_api.py:156 3010s Mar 22 13:07:36 And I sleep for 3 seconds # features/steps/patroni_api.py:39 3013s Mar 22 13:07:39 When I issue a PATCH request to http://127.0.0.1:8009/config with {"slots": {"test_logical": {"type": "logical", "database": "postgres", "plugin": "test_decoding"}}} # features/steps/patroni_api.py:71 3013s Mar 22 13:07:40 Then I receive a response code 200 # features/steps/patroni_api.py:98 3013s Mar 22 13:07:40 And I do a backup of postgres1 # features/steps/custom_bootstrap.py:25 3013s Mar 22 13:07:40 When I start postgres0 # features/steps/basic_replication.py:8 3017s Mar 22 13:07:44 Then "members/postgres0" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 3018s Mar 22 13:07:45 And replication works from postgres1 to postgres0 after 15 seconds # features/steps/basic_replication.py:108 3019s Mar 22 13:07:46 When I issue a GET request to http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:61 3019s Mar 22 13:07:46 Then I receive a response code 200 # features/steps/patroni_api.py:98 3019s Mar 22 13:07:46 And I receive a response replication_state streaming # features/steps/patroni_api.py:98 3019s Mar 22 13:07:46 And "members/postgres0" key in DCS has replication_state=streaming after 10 seconds # features/steps/cascading_replication.py:23 3019s Mar 22 13:07:46 3019s Mar 22 13:07:46 @slot-advance 3019s Mar 22 13:07:46 Scenario: check permanent logical slots are synced to the replica # features/standby_cluster.feature:22 3019s Mar 22 13:07:46 Given I run patronictl.py restart batman postgres1 --force # features/steps/patroni_api.py:86 3024s Mar 22 13:07:51 Then Logical slot test_logical is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 3029s Mar 22 13:07:56 3029s Mar 22 13:07:56 Scenario: Detach exiting node from the cluster # features/standby_cluster.feature:26 3029s Mar 22 13:07:56 When I shut down postgres1 # features/steps/basic_replication.py:29 3031s Mar 22 13:07:58 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 3031s Mar 22 13:07:58 And "members/postgres0" key in DCS has role=master after 3 seconds # features/steps/cascading_replication.py:23 3032s Mar 22 13:07:59 When I issue a GET request to http://127.0.0.1:8008/ # features/steps/patroni_api.py:61 3032s Mar 22 13:07:59 Then I receive a response code 200 # features/steps/patroni_api.py:98 3032s Mar 22 13:07:59 3032s Mar 22 13:07:59 Scenario: check replication of a single table in a standby cluster # features/standby_cluster.feature:33 3032s Mar 22 13:07:59 Given I start postgres1 in a standby cluster batman1 as a clone of postgres0 # features/steps/standby_cluster.py:23 3035s Mar 22 13:08:02 Then postgres1 is a leader of batman1 after 10 seconds # features/steps/custom_bootstrap.py:16 3038s Mar 22 13:08:05 When I add the table foo to postgres0 # features/steps/basic_replication.py:49 3038s Mar 22 13:08:05 Then table foo is present on postgres1 after 20 seconds # features/steps/basic_replication.py:89 3039s Mar 22 13:08:06 When I issue a GET request to http://127.0.0.1:8009/patroni # features/steps/patroni_api.py:61 3039s Mar 22 13:08:06 Then I receive a response code 200 # features/steps/patroni_api.py:98 3039s Mar 22 13:08:06 And I receive a response replication_state streaming # features/steps/patroni_api.py:98 3039s Mar 22 13:08:06 And I sleep for 3 seconds # features/steps/patroni_api.py:39 3042s Mar 22 13:08:09 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:61 3042s Mar 22 13:08:09 Then I receive a response code 503 # features/steps/patroni_api.py:98 3042s Mar 22 13:08:09 When I issue a GET request to http://127.0.0.1:8009/standby_leader # features/steps/patroni_api.py:61 3042s Mar 22 13:08:09 Then I receive a response code 200 # features/steps/patroni_api.py:98 3042s Mar 22 13:08:09 And I receive a response role standby_leader # features/steps/patroni_api.py:98 3042s Mar 22 13:08:09 And there is a postgres1_cb.log with "on_role_change standby_leader batman1" in postgres1 data directory # features/steps/cascading_replication.py:12 3042s Mar 22 13:08:09 When I start postgres2 in a cluster batman1 # features/steps/standby_cluster.py:12 3045s Mar 22 13:08:12 Then postgres2 role is the replica after 24 seconds # features/steps/basic_replication.py:101 3045s Mar 22 13:08:12 And table foo is present on postgres2 after 20 seconds # features/steps/basic_replication.py:89 3051s Mar 22 13:08:18 When I issue a GET request to http://127.0.0.1:8010/patroni # features/steps/patroni_api.py:61 3051s Mar 22 13:08:18 Then I receive a response code 200 # features/steps/patroni_api.py:98 3051s Mar 22 13:08:18 And I receive a response replication_state streaming # features/steps/patroni_api.py:98 3051s Mar 22 13:08:18 And postgres1 does not have a replication slot named test_logical # features/steps/slots.py:40 3051s Mar 22 13:08:18 3051s Mar 22 13:08:18 Scenario: check switchover # features/standby_cluster.feature:56 3051s Mar 22 13:08:18 Given I run patronictl.py switchover batman1 --force # features/steps/patroni_api.py:86 3055s Mar 22 13:08:22 Then Status code on GET http://127.0.0.1:8010/standby_leader is 200 after 10 seconds # features/steps/patroni_api.py:142 3055s Mar 22 13:08:22 And postgres1 is replicating from postgres2 after 32 seconds # features/steps/standby_cluster.py:52 3057s Mar 22 13:08:24 And there is a postgres2_cb.log with "on_start replica batman1\non_role_change standby_leader batman1" in postgres2 data directory # features/steps/cascading_replication.py:12 3057s Mar 22 13:08:24 3057s Mar 22 13:08:24 Scenario: check failover # features/standby_cluster.feature:62 3057s Mar 22 13:08:24 When I kill postgres2 # features/steps/basic_replication.py:34 3058s Mar 22 13:08:25 And I kill postmaster on postgres2 # features/steps/basic_replication.py:44 3058s Mar 22 13:08:25 waiting for server to shut down.... done 3058s Mar 22 13:08:25 server stopped 3058s Mar 22 13:08:25 Then postgres1 is replicating from postgres0 after 32 seconds # features/steps/standby_cluster.py:52 3077s Mar 22 13:08:44 And Status code on GET http://127.0.0.1:8009/standby_leader is 200 after 10 seconds # features/steps/patroni_api.py:142 3077s Mar 22 13:08:44 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:61 3077s Mar 22 13:08:44 Then I receive a response code 503 # features/steps/patroni_api.py:98 3077s Mar 22 13:08:44 And I receive a response role standby_leader # features/steps/patroni_api.py:98 3077s Mar 22 13:08:44 And replication works from postgres0 to postgres1 after 15 seconds # features/steps/basic_replication.py:108 3078s Mar 22 13:08:45 And there is a postgres1_cb.log with "on_role_change replica batman1\non_role_change standby_leader batman1" in postgres1 data directory # features/steps/cascading_replication.py:12 3093s Mar 22 13:09:00 3093s Mar 22 13:09:00 Feature: watchdog # features/watchdog.feature:1 3093s Mar 22 13:09:00 Verify that watchdog gets pinged and triggered under appropriate circumstances. 3093s Mar 22 13:09:00 Scenario: watchdog is opened and pinged # features/watchdog.feature:4 3093s Mar 22 13:09:00 Given I start postgres0 with watchdog # features/steps/watchdog.py:16 3097s Mar 22 13:09:04 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 3098s Mar 22 13:09:05 And postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:101 3098s Mar 22 13:09:05 And postgres0 watchdog has been pinged after 10 seconds # features/steps/watchdog.py:21 3098s Mar 22 13:09:05 And postgres0 watchdog has a 15 second timeout # features/steps/watchdog.py:34 3098s Mar 22 13:09:05 3098s Mar 22 13:09:05 Scenario: watchdog is reconfigured after global ttl changed # features/watchdog.feature:11 3098s Mar 22 13:09:05 Given I run patronictl.py edit-config batman -s ttl=30 --force # features/steps/patroni_api.py:86 3100s Mar 22 13:09:07 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 3100s Mar 22 13:09:07 And I receive a response output "+ttl: 30" # features/steps/patroni_api.py:98 3100s Mar 22 13:09:07 When I sleep for 4 seconds # features/steps/patroni_api.py:39 3104s Mar 22 13:09:11 Then postgres0 watchdog has a 25 second timeout # features/steps/watchdog.py:34 3104s Mar 22 13:09:11 3104s Mar 22 13:09:11 Scenario: watchdog is disabled during pause # features/watchdog.feature:18 3104s Mar 22 13:09:11 Given I run patronictl.py pause batman # features/steps/patroni_api.py:86 3106s Mar 22 13:09:13 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 3106s Mar 22 13:09:13 When I sleep for 2 seconds # features/steps/patroni_api.py:39 3108s Mar 22 13:09:15 Then postgres0 watchdog has been closed # features/steps/watchdog.py:29 3108s Mar 22 13:09:15 3108s Mar 22 13:09:15 Scenario: watchdog is opened and pinged after resume # features/watchdog.feature:24 3108s Mar 22 13:09:15 Given I reset postgres0 watchdog state # features/steps/watchdog.py:39 3108s Mar 22 13:09:15 And I run patronictl.py resume batman # features/steps/patroni_api.py:86 3110s Mar 22 13:09:17 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 3110s Mar 22 13:09:17 And postgres0 watchdog has been pinged after 10 seconds # features/steps/watchdog.py:21 3110s Mar 22 13:09:17 3110s Mar 22 13:09:17 Scenario: watchdog is disabled when shutting down # features/watchdog.feature:30 3110s Mar 22 13:09:17 Given I shut down postgres0 # features/steps/basic_replication.py:29 3112s Mar 22 13:09:19 Then postgres0 watchdog has been closed # features/steps/watchdog.py:29 3113s Mar 22 13:09:19 3113s Mar 22 13:09:19 Scenario: watchdog is triggered if patroni stops responding # features/watchdog.feature:34 3113s Mar 22 13:09:19 Given I reset postgres0 watchdog state # features/steps/watchdog.py:39 3113s Mar 22 13:09:19 And I start postgres0 with watchdog # features/steps/watchdog.py:16 3115s Mar 22 13:09:22 Then postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:101 3117s Mar 22 13:09:24 When postgres0 hangs for 30 seconds # features/steps/watchdog.py:52 3117s Mar 22 13:09:24 Then postgres0 watchdog is triggered after 30 seconds # features/steps/watchdog.py:44 3150s Mar 22 13:09:57 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.6273.975104 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.4970.212015 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.5151.812308 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.6424.466376 3151s Mar 22 13:09:58 Skipping duplicate data .coverage.autopkgtest.4127.760891 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.5292.737135 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.5875.754681 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.6020.536243 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.5970.676701 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.5081.499297 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.5909.161568 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.4123.316238 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.5218.758775 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.6850.743407 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.5711.297250 3151s Mar 22 13:09:58 Skipping duplicate data .coverage.autopkgtest.6910.554537 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.5671.423978 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.4720.669013 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.4174.472612 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.5256.418744 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.4608.706152 3151s Mar 22 13:09:58 Skipping duplicate data .coverage.autopkgtest.5872.834308 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.5639.285170 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.5357.596681 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.5484.048438 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.6704.710825 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.6530.690953 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.5299.983371 3151s Mar 22 13:09:58 Skipping duplicate data .coverage.autopkgtest.3956.718749 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.5323.155472 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.6427.878956 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.4321.301527 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.4040.609956 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.3806.381546 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.4230.235754 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.3703.400736 3151s Mar 22 13:09:58 Skipping duplicate data .coverage.autopkgtest.5588.195995 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.3765.938461 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.5154.399914 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.4679.529028 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.3670.858309 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.3802.302984 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.6863.641545 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.3619.971884 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.3544.797777 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.6067.306556 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.5012.109820 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.4130.853578 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.5591.496334 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.6843.585983 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.3860.320873 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.5481.580550 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.4318.926629 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.6611.433307 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.4003.852963 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.6317.453676 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.5740.403377 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.3959.559490 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.6799.303061 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.3590.813351 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.6489.024606 3151s Mar 22 13:09:58 Skipping duplicate data .coverage.autopkgtest.6270.252896 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.3541.729330 3151s Mar 22 13:09:58 Skipping duplicate data .coverage.autopkgtest.6795.895627 3151s Mar 22 13:09:58 Skipping duplicate data .coverage.autopkgtest.6846.570613 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.5204.299743 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.4917.514108 3151s Mar 22 13:09:58 Skipping duplicate data .coverage.autopkgtest.4914.603723 3151s Mar 22 13:09:58 Combined data file .coverage.autopkgtest.5491.255140 3153s Mar 22 13:10:00 Name Stmts Miss Cover 3153s Mar 22 13:10:00 ------------------------------------------------------------------------------------------------------------- 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/_distutils_hack/__init__.py 100 95 5% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/__about__.py 5 0 100% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/__init__.py 3 0 100% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/exceptions.py 26 5 81% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/fernet.py 137 54 61% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/__init__.py 2 0 100% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/_oid.py 126 0 100% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/backends/__init__.py 5 0 100% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/backends/openssl/__init__.py 3 0 100% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/backends/openssl/aead.py 213 187 12% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/backends/openssl/backend.py 919 710 23% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/backends/openssl/ciphers.py 125 50 60% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/backends/openssl/cmac.py 47 35 26% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/backends/openssl/ec.py 150 114 24% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/backends/openssl/rsa.py 262 217 17% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/backends/openssl/utils.py 35 28 20% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/__init__.py 0 0 100% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/__init__.py 0 0 100% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/_conditional.py 73 32 56% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/binding.py 73 13 82% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/__init__.py 0 0 100% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_asymmetric.py 6 0 100% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_cipheralgorithm.py 18 0 100% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_serialization.py 80 35 56% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/__init__.py 0 0 100% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/dh.py 118 47 60% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/dsa.py 134 57 57% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/ec.py 219 56 74% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/ed448.py 45 12 73% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/ed25519.py 45 12 73% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/padding.py 47 20 57% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/rsa.py 184 106 42% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/types.py 19 0 100% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/utils.py 14 5 64% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/x448.py 43 12 72% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/x25519.py 43 12 72% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/__init__.py 4 0 100% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/algorithms.py 129 30 77% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/base.py 138 57 59% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/modes.py 140 50 64% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/constant_time.py 6 3 50% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/hashes.py 128 20 84% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/hmac.py 6 0 100% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/kdf/__init__.py 7 0 100% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/kdf/pbkdf2.py 27 5 81% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/padding.py 117 27 77% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/serialization/__init__.py 5 0 100% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/serialization/base.py 22 12 45% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/serialization/pkcs12.py 82 49 40% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/serialization/ssh.py 761 605 20% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/utils.py 76 23 70% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/x509/__init__.py 70 0 100% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/x509/base.py 458 224 51% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/x509/certificate_transparency.py 42 0 100% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/x509/extensions.py 1038 569 45% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/x509/general_name.py 166 94 43% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/x509/name.py 233 142 39% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/cryptography/x509/oid.py 3 0 100% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/dateutil/__init__.py 5 2 60% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/dateutil/_common.py 25 15 40% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/dateutil/_version.py 2 0 100% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/dateutil/parser/__init__.py 33 4 88% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/dateutil/parser/_parser.py 813 436 46% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/dateutil/parser/isoparser.py 185 150 19% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/dateutil/relativedelta.py 241 206 15% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/dateutil/tz/__init__.py 4 0 100% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/dateutil/tz/_common.py 161 121 25% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/dateutil/tz/_factories.py 49 21 57% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/dateutil/tz/tz.py 800 626 22% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/dateutil/tz/win.py 153 149 3% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/__init__.py 13 2 85% 3153s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/__main__.py 199 65 67% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/api.py 768 288 62% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/async_executor.py 96 15 84% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/collections.py 43 5 88% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/config.py 416 95 77% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/config_generator.py 210 153 27% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/daemon.py 76 3 96% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/dcs/__init__.py 667 88 87% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/dcs/raft.py 318 42 87% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/exceptions.py 16 0 100% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/file_perm.py 43 8 81% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/ha.py 1239 309 75% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/log.py 155 31 80% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/postgresql/__init__.py 826 175 79% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/postgresql/bootstrap.py 253 63 75% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/postgresql/callback_executor.py 55 8 85% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/postgresql/cancellable.py 104 41 61% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/postgresql/citus.py 258 193 25% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/postgresql/config.py 806 217 73% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/postgresql/connection.py 75 0 100% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/postgresql/misc.py 41 8 80% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/postgresql/postmaster.py 170 82 52% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/postgresql/rewind.py 415 166 60% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/postgresql/slots.py 332 32 90% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/postgresql/sync.py 129 19 85% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/postgresql/validator.py 165 25 85% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/psycopg.py 41 15 63% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/request.py 62 6 90% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/tags.py 35 0 100% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/utils.py 318 110 65% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/validator.py 284 194 32% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/version.py 1 0 100% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/watchdog/__init__.py 2 0 100% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/watchdog/base.py 203 42 79% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/patroni/watchdog/linux.py 135 35 74% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/psutil/__init__.py 951 624 34% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/psutil/_common.py 424 207 51% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/psutil/_compat.py 302 263 13% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/psutil/_pslinux.py 1251 915 27% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/psutil/_psposix.py 96 38 60% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/psycopg2/__init__.py 19 3 84% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/psycopg2/_json.py 64 27 58% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/psycopg2/_range.py 269 172 36% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/psycopg2/errors.py 3 2 33% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/psycopg2/extensions.py 91 25 73% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/pysyncobj/__init__.py 2 0 100% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/pysyncobj/atomic_replace.py 4 0 100% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/pysyncobj/config.py 80 1 99% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/pysyncobj/dns_resolver.py 51 10 80% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/pysyncobj/encryptor.py 17 2 88% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/pysyncobj/fast_queue.py 21 1 95% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/pysyncobj/journal.py 193 37 81% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/pysyncobj/monotonic.py 77 70 9% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/pysyncobj/node.py 49 10 80% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/pysyncobj/pickle.py 52 32 38% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/pysyncobj/pipe_notifier.py 24 2 92% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/pysyncobj/poller.py 87 41 53% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/pysyncobj/serializer.py 166 133 20% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/pysyncobj/syncobj.py 1045 408 61% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/pysyncobj/tcp_connection.py 250 35 86% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/pysyncobj/tcp_server.py 56 12 79% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/pysyncobj/transport.py 266 57 79% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/pysyncobj/utility.py 59 9 85% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/pysyncobj/version.py 1 0 100% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/pysyncobj/win_inet_pton.py 44 31 30% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/six.py 504 250 50% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/urllib3/__init__.py 50 14 72% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/urllib3/_base_connection.py 70 52 26% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/urllib3/_collections.py 234 108 54% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/urllib3/_request_methods.py 53 15 72% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/urllib3/_version.py 2 0 100% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/urllib3/connection.py 324 104 68% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/urllib3/connectionpool.py 347 136 61% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/urllib3/exceptions.py 115 37 68% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/urllib3/fields.py 92 73 21% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/urllib3/filepost.py 37 24 35% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/urllib3/poolmanager.py 233 88 62% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/urllib3/response.py 562 336 40% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/urllib3/util/__init__.py 10 0 100% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/urllib3/util/connection.py 66 9 86% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/urllib3/util/proxy.py 13 6 54% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/urllib3/util/request.py 104 49 53% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/urllib3/util/response.py 32 17 47% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/urllib3/util/retry.py 173 49 72% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/urllib3/util/ssl_.py 177 75 58% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/urllib3/util/ssl_match_hostname.py 66 54 18% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/urllib3/util/ssltransport.py 160 112 30% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/urllib3/util/timeout.py 71 19 73% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/urllib3/util/url.py 205 78 62% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/urllib3/util/util.py 26 9 65% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/urllib3/util/wait.py 49 38 22% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/yaml/__init__.py 165 109 34% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/yaml/composer.py 92 17 82% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/yaml/constructor.py 479 276 42% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/yaml/cyaml.py 46 24 48% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/yaml/dumper.py 23 12 48% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/yaml/emitter.py 838 769 8% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/yaml/error.py 58 42 28% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/yaml/events.py 61 6 90% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/yaml/loader.py 47 24 49% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/yaml/nodes.py 29 7 76% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/yaml/parser.py 352 180 49% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/yaml/reader.py 122 30 75% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/yaml/representer.py 248 176 29% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/yaml/resolver.py 135 76 44% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/yaml/scanner.py 758 415 45% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/yaml/serializer.py 85 70 18% 3154s Mar 22 13:10:00 /usr/lib/python3/dist-packages/yaml/tokens.py 76 17 78% 3154s Mar 22 13:10:00 patroni/__init__.py 13 2 85% 3154s Mar 22 13:10:00 patroni/__main__.py 199 199 0% 3154s Mar 22 13:10:00 patroni/api.py 768 768 0% 3154s Mar 22 13:10:00 patroni/async_executor.py 96 69 28% 3154s Mar 22 13:10:00 patroni/collections.py 43 11 74% 3154s Mar 22 13:10:00 patroni/config.py 416 199 52% 3154s Mar 22 13:10:00 patroni/config_generator.py 210 210 0% 3154s Mar 22 13:10:00 patroni/ctl.py 940 409 56% 3154s Mar 22 13:10:00 patroni/daemon.py 76 6 92% 3154s Mar 22 13:10:00 patroni/dcs/__init__.py 667 264 60% 3154s Mar 22 13:10:00 patroni/dcs/consul.py 482 482 0% 3154s Mar 22 13:10:00 patroni/dcs/etcd3.py 683 683 0% 3154s Mar 22 13:10:00 patroni/dcs/etcd.py 602 602 0% 3154s Mar 22 13:10:00 patroni/dcs/exhibitor.py 60 60 0% 3154s Mar 22 13:10:00 patroni/dcs/kubernetes.py 935 935 0% 3154s Mar 22 13:10:00 patroni/dcs/raft.py 318 74 77% 3154s Mar 22 13:10:00 patroni/dcs/zookeeper.py 287 287 0% 3154s Mar 22 13:10:00 patroni/exceptions.py 16 1 94% 3154s Mar 22 13:10:00 patroni/file_perm.py 43 15 65% 3154s Mar 22 13:10:00 patroni/ha.py 1239 1239 0% 3154s Mar 22 13:10:00 patroni/log.py 155 55 65% 3154s Mar 22 13:10:00 patroni/postgresql/__init__.py 826 655 21% 3154s Mar 22 13:10:00 patroni/postgresql/bootstrap.py 253 224 11% 3154s Mar 22 13:10:00 patroni/postgresql/callback_executor.py 55 34 38% 3154s Mar 22 13:10:00 patroni/postgresql/cancellable.py 104 84 19% 3154s Mar 22 13:10:00 patroni/postgresql/citus.py 258 217 16% 3154s Mar 22 13:10:00 patroni/postgresql/config.py 806 693 14% 3154s Mar 22 13:10:00 patroni/postgresql/connection.py 75 50 33% 3154s Mar 22 13:10:00 patroni/postgresql/misc.py 41 29 29% 3154s Mar 22 13:10:00 patroni/postgresql/postmaster.py 170 139 18% 3154s Mar 22 13:10:00 patroni/postgresql/rewind.py 415 415 0% 3154s Mar 22 13:10:00 patroni/postgresql/slots.py 332 285 14% 3154s Mar 22 13:10:00 patroni/postgresql/sync.py 129 96 26% 3154s Mar 22 13:10:00 patroni/postgresql/validator.py 165 53 68% 3154s Mar 22 13:10:00 patroni/psycopg.py 41 27 34% 3154s Mar 22 13:10:00 patroni/raft_controller.py 22 1 95% 3154s Mar 22 13:10:00 patroni/request.py 62 6 90% 3154s Mar 22 13:10:00 patroni/scripts/__init__.py 0 0 100% 3154s Mar 22 13:10:00 patroni/scripts/aws.py 59 59 0% 3154s Mar 22 13:10:00 patroni/scripts/wale_restore.py 207 207 0% 3154s Mar 22 13:10:00 patroni/tags.py 35 10 71% 3154s Mar 22 13:10:00 patroni/utils.py 318 193 39% 3154s Mar 22 13:10:00 patroni/validator.py 284 201 29% 3154s Mar 22 13:10:00 patroni/version.py 1 0 100% 3154s Mar 22 13:10:00 patroni/watchdog/__init__.py 2 2 0% 3154s Mar 22 13:10:00 patroni/watchdog/base.py 203 203 0% 3154s Mar 22 13:10:00 patroni/watchdog/linux.py 135 135 0% 3154s Mar 22 13:10:00 ------------------------------------------------------------------------------------------------------------- 3154s Mar 22 13:10:00 TOTAL 45066 25846 43% 3154s Mar 22 13:10:00 11 features passed, 0 failed, 1 skipped 3154s Mar 22 13:10:00 52 scenarios passed, 0 failed, 6 skipped 3154s Mar 22 13:10:00 509 steps passed, 0 failed, 63 skipped, 0 undefined 3154s Mar 22 13:10:00 Took 8m51.251s 3154s ### End 16 acceptance-raft ### 3154s + echo '### End 16 acceptance-raft ###' 3154s + rm -f '/tmp/pgpass?' 3154s ++ id -u 3154s + '[' 1000 -eq 0 ']' 3154s autopkgtest [13:10:01]: test acceptance-raft: -----------------------] 3155s autopkgtest [13:10:02]: test acceptance-raft: - - - - - - - - - - results - - - - - - - - - - 3155s acceptance-raft PASS 3155s autopkgtest [13:10:02]: test test: preparing testbed 3247s autopkgtest [13:11:34]: testbed dpkg architecture: s390x 3247s autopkgtest [13:11:34]: testbed apt version: 2.7.12 3247s autopkgtest [13:11:34]: @@@@@@@@@@@@@@@@@@@@ test bed setup 3248s Get:1 http://ftpmaster.internal/ubuntu noble-proposed InRelease [117 kB] 3248s Get:2 http://ftpmaster.internal/ubuntu noble-proposed/universe Sources [3808 kB] 3249s Get:3 http://ftpmaster.internal/ubuntu noble-proposed/main Sources [496 kB] 3249s Get:4 http://ftpmaster.internal/ubuntu noble-proposed/restricted Sources [6540 B] 3249s Get:5 http://ftpmaster.internal/ubuntu noble-proposed/multiverse Sources [54.0 kB] 3249s Get:6 http://ftpmaster.internal/ubuntu noble-proposed/main s390x Packages [665 kB] 3249s Get:7 http://ftpmaster.internal/ubuntu noble-proposed/main s390x c-n-f Metadata [3032 B] 3249s Get:8 http://ftpmaster.internal/ubuntu noble-proposed/restricted s390x Packages [1372 B] 3249s Get:9 http://ftpmaster.internal/ubuntu noble-proposed/restricted s390x c-n-f Metadata [116 B] 3249s Get:10 http://ftpmaster.internal/ubuntu noble-proposed/universe s390x Packages [3992 kB] 3250s Get:11 http://ftpmaster.internal/ubuntu noble-proposed/universe s390x c-n-f Metadata [7292 B] 3250s Get:12 http://ftpmaster.internal/ubuntu noble-proposed/multiverse s390x Packages [45.1 kB] 3250s Get:13 http://ftpmaster.internal/ubuntu noble-proposed/multiverse s390x c-n-f Metadata [116 B] 3251s Fetched 9196 kB in 3s (3447 kB/s) 3252s Reading package lists... 3254s Reading package lists... 3254s Building dependency tree... 3254s Reading state information... 3255s Calculating upgrade... 3255s The following packages will be upgraded: 3255s cloud-init debianutils fonts-ubuntu-console python3-markupsafe 3255s 4 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 3255s Need to get 719 kB of archives. 3255s After this operation, 11.3 kB disk space will be freed. 3255s Get:1 http://ftpmaster.internal/ubuntu noble/main s390x debianutils s390x 5.17 [90.1 kB] 3255s Get:2 http://ftpmaster.internal/ubuntu noble/main s390x fonts-ubuntu-console all 0.869+git20240321-0ubuntu1 [18.7 kB] 3255s Get:3 http://ftpmaster.internal/ubuntu noble/main s390x python3-markupsafe s390x 2.1.5-1build1 [12.8 kB] 3255s Get:4 http://ftpmaster.internal/ubuntu noble/main s390x cloud-init all 24.1.2-0ubuntu1 [597 kB] 3256s Preconfiguring packages ... 3256s Fetched 719 kB in 1s (921 kB/s) 3256s (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 ... 52171 files and directories currently installed.) 3256s Preparing to unpack .../debianutils_5.17_s390x.deb ... 3256s Unpacking debianutils (5.17) over (5.16) ... 3256s Setting up debianutils (5.17) ... 3256s (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 ... 52171 files and directories currently installed.) 3256s Preparing to unpack .../fonts-ubuntu-console_0.869+git20240321-0ubuntu1_all.deb ... 3256s Unpacking fonts-ubuntu-console (0.869+git20240321-0ubuntu1) over (0.869-0ubuntu1) ... 3256s Preparing to unpack .../python3-markupsafe_2.1.5-1build1_s390x.deb ... 3256s Unpacking python3-markupsafe (2.1.5-1build1) over (2.1.5-1) ... 3256s Preparing to unpack .../cloud-init_24.1.2-0ubuntu1_all.deb ... 3256s Unpacking cloud-init (24.1.2-0ubuntu1) over (24.1.1-0ubuntu1) ... 3256s Setting up fonts-ubuntu-console (0.869+git20240321-0ubuntu1) ... 3256s Setting up cloud-init (24.1.2-0ubuntu1) ... 3258s Setting up python3-markupsafe (2.1.5-1build1) ... 3258s Processing triggers for man-db (2.12.0-3) ... 3258s Processing triggers for rsyslog (8.2312.0-3ubuntu3) ... 3259s Reading package lists... 3259s Building dependency tree... 3259s Reading state information... 3259s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 3260s Unknown architecture, assuming PC-style ttyS0 3260s sh: Attempting to set up Debian/Ubuntu apt sources automatically 3260s sh: Distribution appears to be Ubuntu 3261s Reading package lists... 3261s Building dependency tree... 3261s Reading state information... 3261s eatmydata is already the newest version (131-1). 3261s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 3261s Reading package lists... 3261s Building dependency tree... 3261s Reading state information... 3261s dbus is already the newest version (1.14.10-4ubuntu1). 3261s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 3261s Reading package lists... 3262s Building dependency tree... 3262s Reading state information... 3262s rng-tools-debian is already the newest version (2.4). 3262s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 3262s Reading package lists... 3262s Building dependency tree... 3262s Reading state information... 3262s The following packages will be REMOVED: 3262s cloud-init* python3-configobj* python3-debconf* 3262s 0 upgraded, 0 newly installed, 3 to remove and 0 not upgraded. 3262s After this operation, 3256 kB disk space will be freed. 3262s (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 ... 52170 files and directories currently installed.) 3262s Removing cloud-init (24.1.2-0ubuntu1) ... 3263s Removing python3-configobj (5.0.8-3) ... 3263s Removing python3-debconf (1.5.86) ... 3263s Processing triggers for man-db (2.12.0-3) ... 3263s (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 ... 51781 files and directories currently installed.) 3263s Purging configuration files for cloud-init (24.1.2-0ubuntu1) ... 3264s dpkg: warning: while removing cloud-init, directory '/etc/cloud/cloud.cfg.d' not empty so not removed 3264s Processing triggers for rsyslog (8.2312.0-3ubuntu3) ... 3264s invoke-rc.d: policy-rc.d denied execution of try-restart. 3264s Reading package lists... 3264s Building dependency tree... 3264s Reading state information... 3264s linux-generic is already the newest version (6.8.0-11.11+1). 3264s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 3265s Hit:1 http://ftpmaster.internal/ubuntu noble InRelease 3265s Hit:2 http://ftpmaster.internal/ubuntu noble-updates InRelease 3265s Hit:3 http://ftpmaster.internal/ubuntu noble-security InRelease 3267s Reading package lists... 3267s Reading package lists... 3267s Building dependency tree... 3267s Reading state information... 3267s Calculating upgrade... 3267s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 3267s Reading package lists... 3268s Building dependency tree... 3268s Reading state information... 3268s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 3268s autopkgtest [13:11:55]: rebooting testbed after setup commands that affected boot 3289s Reading package lists... 3289s Building dependency tree... 3289s Reading state information... 3289s Starting pkgProblemResolver with broken count: 0 3289s Starting 2 pkgProblemResolver with broken count: 0 3289s Done 3289s The following additional packages will be installed: 3289s fonts-font-awesome fonts-lato libc-ares2 libev4 libjs-jquery 3289s libjs-jquery-hotkeys libjs-jquery-isonscreen libjs-jquery-metadata 3289s libjs-jquery-tablesorter libjs-jquery-throttle-debounce libjs-sphinxdoc 3289s libjs-underscore libpq5 patroni patroni-doc python3-boto3 python3-botocore 3289s python3-cachetools python3-cdiff python3-click python3-colorama 3289s python3-consul python3-coverage python3-dateutil python3-dnspython 3289s python3-etcd python3-eventlet python3-flake8 python3-gevent 3289s python3-google-auth python3-greenlet python3-iniconfig python3-jmespath 3289s python3-kazoo python3-kerberos python3-kubernetes python3-mccabe 3289s python3-mock python3-packaging python3-pluggy python3-prettytable 3289s python3-psutil python3-psycopg2 python3-pure-sasl python3-pyasn1 3289s python3-pyasn1-modules python3-pycodestyle python3-pyflakes 3289s python3-pysyncobj python3-pytest python3-pytest-cov 3289s python3-requests-oauthlib python3-rsa python3-s3transfer python3-wcwidth 3289s python3-websocket python3-zope.event python3-zope.interface 3289s sphinx-rtd-theme-common 3289s Suggested packages: 3289s postgresql etcd-server | consul | zookeeperd vip-manager haproxy 3289s python3-tornado python3-twisted python-coverage-doc python3-trio 3289s python3-aioquic python3-h2 python3-httpx python3-httpcore etcd 3289s python-eventlet-doc python-gevent-doc python-greenlet-dev 3289s python-greenlet-doc python-kazoo-doc python-mock-doc python-psycopg2-doc 3289s Recommended packages: 3289s javascript-common pyflakes3 3289s The following NEW packages will be installed: 3289s autopkgtest-satdep fonts-font-awesome fonts-lato libc-ares2 libev4 3289s libjs-jquery libjs-jquery-hotkeys libjs-jquery-isonscreen 3289s libjs-jquery-metadata libjs-jquery-tablesorter 3289s libjs-jquery-throttle-debounce libjs-sphinxdoc libjs-underscore libpq5 3289s patroni patroni-doc python3-boto3 python3-botocore python3-cachetools 3289s python3-cdiff python3-click python3-colorama python3-consul python3-coverage 3289s python3-dateutil python3-dnspython python3-etcd python3-eventlet 3289s python3-flake8 python3-gevent python3-google-auth python3-greenlet 3289s python3-iniconfig python3-jmespath python3-kazoo python3-kerberos 3289s python3-kubernetes python3-mccabe python3-mock python3-packaging 3289s python3-pluggy python3-prettytable python3-psutil python3-psycopg2 3289s python3-pure-sasl python3-pyasn1 python3-pyasn1-modules python3-pycodestyle 3289s python3-pyflakes python3-pysyncobj python3-pytest python3-pytest-cov 3289s python3-requests-oauthlib python3-rsa python3-s3transfer python3-wcwidth 3289s python3-websocket python3-zope.event python3-zope.interface 3289s sphinx-rtd-theme-common 3289s 0 upgraded, 60 newly installed, 0 to remove and 0 not upgraded. 3289s Need to get 16.6 MB/16.6 MB of archives. 3289s After this operation, 153 MB of additional disk space will be used. 3289s Get:1 /tmp/autopkgtest.yyH96f/7-autopkgtest-satdep.deb autopkgtest-satdep s390x 0 [788 B] 3289s Get:2 http://ftpmaster.internal/ubuntu noble/main s390x fonts-lato all 2.015-1 [2781 kB] 3292s Get:3 http://ftpmaster.internal/ubuntu noble/main s390x libjs-jquery all 3.6.1+dfsg+~3.5.14-1 [328 kB] 3292s Get:4 http://ftpmaster.internal/ubuntu noble/universe s390x libjs-jquery-hotkeys all 0~20130707+git2d51e3a9+dfsg-2ubuntu2 [11.5 kB] 3292s Get:5 http://ftpmaster.internal/ubuntu noble/main s390x fonts-font-awesome all 5.0.10+really4.7.0~dfsg-4.1 [516 kB] 3292s Get:6 http://ftpmaster.internal/ubuntu noble/universe s390x libjs-jquery-metadata all 12-4 [6582 B] 3292s Get:7 http://ftpmaster.internal/ubuntu noble/universe s390x libjs-jquery-tablesorter all 1:2.31.3+dfsg1-3 [193 kB] 3292s Get:8 http://ftpmaster.internal/ubuntu noble/universe s390x libjs-jquery-throttle-debounce all 1.1+dfsg.1-2 [12.5 kB] 3292s Get:9 http://ftpmaster.internal/ubuntu noble/main s390x libjs-underscore all 1.13.4~dfsg+~1.11.4-3 [118 kB] 3292s Get:10 http://ftpmaster.internal/ubuntu noble/main s390x libjs-sphinxdoc all 7.2.6-4 [149 kB] 3292s Get:11 http://ftpmaster.internal/ubuntu noble/main s390x libpq5 s390x 16.2-1 [143 kB] 3292s Get:12 http://ftpmaster.internal/ubuntu noble/universe s390x python3-cdiff all 1.0-1.1 [16.4 kB] 3292s Get:13 http://ftpmaster.internal/ubuntu noble/main s390x python3-colorama all 0.4.6-4 [32.1 kB] 3292s Get:14 http://ftpmaster.internal/ubuntu noble/main s390x python3-click all 8.1.6-1 [79.0 kB] 3292s Get:15 http://ftpmaster.internal/ubuntu noble/main s390x python3-dateutil all 2.8.2-3 [79.2 kB] 3292s Get:16 http://ftpmaster.internal/ubuntu noble/main s390x python3-wcwidth all 0.2.5+dfsg1-1.1ubuntu1 [22.5 kB] 3292s Get:17 http://ftpmaster.internal/ubuntu noble/main s390x python3-prettytable all 3.6.0-1 [33.1 kB] 3292s Get:18 http://ftpmaster.internal/ubuntu noble/main s390x python3-psutil s390x 5.9.8-1 [195 kB] 3292s Get:19 http://ftpmaster.internal/ubuntu noble/main s390x python3-psycopg2 s390x 2.9.9-1 [180 kB] 3293s Get:20 http://ftpmaster.internal/ubuntu noble/main s390x python3-dnspython all 2.6.1-1ubuntu1 [163 kB] 3293s Get:21 http://ftpmaster.internal/ubuntu noble/universe s390x python3-etcd all 0.4.5-4 [31.9 kB] 3293s Get:22 http://ftpmaster.internal/ubuntu noble/universe s390x python3-consul all 0.7.1-2 [21.6 kB] 3293s Get:23 http://ftpmaster.internal/ubuntu noble/main s390x python3-greenlet s390x 3.0.1-2 [174 kB] 3293s Get:24 http://ftpmaster.internal/ubuntu noble/main s390x python3-eventlet all 0.35.1-0ubuntu1 [162 kB] 3293s Get:25 http://ftpmaster.internal/ubuntu noble/universe s390x python3-zope.event all 5.0-0.1 [7512 B] 3293s Get:26 http://ftpmaster.internal/ubuntu noble/main s390x python3-zope.interface s390x 6.1-1 [181 kB] 3293s Get:27 http://ftpmaster.internal/ubuntu noble/main s390x libc-ares2 s390x 1.27.0-1 [79.2 kB] 3293s Get:28 http://ftpmaster.internal/ubuntu noble/universe s390x libev4 s390x 1:4.33-2 [31.4 kB] 3293s Get:29 http://ftpmaster.internal/ubuntu noble/universe s390x python3-gevent s390x 23.9.1-0.2 [1222 kB] 3294s Get:30 http://ftpmaster.internal/ubuntu noble/universe s390x python3-kerberos s390x 1.1.14-3.1build8 [22.7 kB] 3294s Get:31 http://ftpmaster.internal/ubuntu noble/universe s390x python3-pure-sasl all 0.5.1+dfsg1-4 [11.4 kB] 3294s Get:32 http://ftpmaster.internal/ubuntu noble/universe s390x python3-kazoo all 2.9.0-2 [103 kB] 3294s Get:33 http://ftpmaster.internal/ubuntu noble/main s390x python3-cachetools all 5.3.0-2 [10.6 kB] 3294s Get:34 http://ftpmaster.internal/ubuntu noble/main s390x python3-pyasn1 all 0.4.8-4 [51.2 kB] 3294s Get:35 http://ftpmaster.internal/ubuntu noble/main s390x python3-pyasn1-modules all 0.2.8-1 [68.0 kB] 3294s Get:36 http://ftpmaster.internal/ubuntu noble/universe s390x python3-rsa all 4.9-2 [28.2 kB] 3294s Get:37 http://ftpmaster.internal/ubuntu noble/universe s390x python3-google-auth all 1.5.1-3 [35.7 kB] 3294s Get:38 http://ftpmaster.internal/ubuntu noble/universe s390x python3-requests-oauthlib all 1.3.1-1 [18.8 kB] 3294s Get:39 http://ftpmaster.internal/ubuntu noble/universe s390x python3-websocket all 1.7.0-1 [38.1 kB] 3294s Get:40 http://ftpmaster.internal/ubuntu noble/universe s390x python3-kubernetes all 22.6.0-2 [330 kB] 3294s Get:41 http://ftpmaster.internal/ubuntu noble/universe s390x python3-pysyncobj all 0.3.12-1 [38.9 kB] 3294s Get:42 http://ftpmaster.internal/ubuntu noble/universe s390x patroni all 3.2.2-2 [253 kB] 3295s Get:43 http://ftpmaster.internal/ubuntu noble/main s390x sphinx-rtd-theme-common all 2.0.0+dfsg-1 [1012 kB] 3295s Get:44 http://ftpmaster.internal/ubuntu noble/universe s390x patroni-doc all 3.2.2-2 [476 kB] 3295s Get:45 http://ftpmaster.internal/ubuntu noble/main s390x python3-jmespath all 1.0.1-1 [21.3 kB] 3296s Get:46 http://ftpmaster.internal/ubuntu noble/universe s390x python3-botocore all 1.34.46+repack-1 [6211 kB] 3300s Get:47 http://ftpmaster.internal/ubuntu noble/universe s390x python3-s3transfer all 0.10.0-1 [53.9 kB] 3300s Get:48 http://ftpmaster.internal/ubuntu noble/universe s390x python3-boto3 all 1.34.18+dfsg-1 [72.3 kB] 3300s Get:49 http://ftpmaster.internal/ubuntu noble/universe s390x python3-coverage s390x 7.3.2-0ubuntu1 [147 kB] 3300s Get:50 http://ftpmaster.internal/ubuntu noble/universe s390x python3-mccabe all 0.7.0-1 [8678 B] 3300s Get:51 http://ftpmaster.internal/ubuntu noble/universe s390x python3-pycodestyle all 2.11.1-1 [29.9 kB] 3300s Get:52 http://ftpmaster.internal/ubuntu noble/universe s390x python3-pyflakes all 3.1.0-1 [52.6 kB] 3300s Get:53 http://ftpmaster.internal/ubuntu noble/universe s390x python3-flake8 all 5.0.4-4 [47.0 kB] 3300s Get:54 http://ftpmaster.internal/ubuntu noble/universe s390x python3-iniconfig all 1.1.1-2 [6024 B] 3300s Get:55 http://ftpmaster.internal/ubuntu noble/main s390x python3-packaging all 23.2-1 [40.6 kB] 3300s Get:56 http://ftpmaster.internal/ubuntu noble/universe s390x python3-pluggy all 1.4.0-1 [20.4 kB] 3300s Get:57 http://ftpmaster.internal/ubuntu noble/universe s390x python3-pytest all 7.4.4-1 [305 kB] 3301s Get:58 http://ftpmaster.internal/ubuntu noble/universe s390x libjs-jquery-isonscreen all 1.2.0-1.1 [3244 B] 3301s Get:59 http://ftpmaster.internal/ubuntu noble/universe s390x python3-pytest-cov all 4.1.0-1 [21.5 kB] 3301s Get:60 http://ftpmaster.internal/ubuntu noble/universe s390x python3-mock all 5.1.0-1 [64.1 kB] 3301s Fetched 16.6 MB in 12s (1441 kB/s) 3301s Selecting previously unselected package fonts-lato. 3301s (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 ... 51726 files and directories currently installed.) 3301s Preparing to unpack .../00-fonts-lato_2.015-1_all.deb ... 3301s Unpacking fonts-lato (2.015-1) ... 3302s Selecting previously unselected package libjs-jquery. 3302s Preparing to unpack .../01-libjs-jquery_3.6.1+dfsg+~3.5.14-1_all.deb ... 3302s Unpacking libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 3302s Selecting previously unselected package libjs-jquery-hotkeys. 3302s Preparing to unpack .../02-libjs-jquery-hotkeys_0~20130707+git2d51e3a9+dfsg-2ubuntu2_all.deb ... 3302s Unpacking libjs-jquery-hotkeys (0~20130707+git2d51e3a9+dfsg-2ubuntu2) ... 3302s Selecting previously unselected package fonts-font-awesome. 3302s Preparing to unpack .../03-fonts-font-awesome_5.0.10+really4.7.0~dfsg-4.1_all.deb ... 3302s Unpacking fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ... 3302s Selecting previously unselected package libjs-jquery-metadata. 3302s Preparing to unpack .../04-libjs-jquery-metadata_12-4_all.deb ... 3302s Unpacking libjs-jquery-metadata (12-4) ... 3302s Selecting previously unselected package libjs-jquery-tablesorter. 3302s Preparing to unpack .../05-libjs-jquery-tablesorter_1%3a2.31.3+dfsg1-3_all.deb ... 3302s Unpacking libjs-jquery-tablesorter (1:2.31.3+dfsg1-3) ... 3302s Selecting previously unselected package libjs-jquery-throttle-debounce. 3302s Preparing to unpack .../06-libjs-jquery-throttle-debounce_1.1+dfsg.1-2_all.deb ... 3302s Unpacking libjs-jquery-throttle-debounce (1.1+dfsg.1-2) ... 3302s Selecting previously unselected package libjs-underscore. 3302s Preparing to unpack .../07-libjs-underscore_1.13.4~dfsg+~1.11.4-3_all.deb ... 3302s Unpacking libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 3302s Selecting previously unselected package libjs-sphinxdoc. 3302s Preparing to unpack .../08-libjs-sphinxdoc_7.2.6-4_all.deb ... 3302s Unpacking libjs-sphinxdoc (7.2.6-4) ... 3302s Selecting previously unselected package libpq5:s390x. 3302s Preparing to unpack .../09-libpq5_16.2-1_s390x.deb ... 3302s Unpacking libpq5:s390x (16.2-1) ... 3302s Selecting previously unselected package python3-cdiff. 3302s Preparing to unpack .../10-python3-cdiff_1.0-1.1_all.deb ... 3302s Unpacking python3-cdiff (1.0-1.1) ... 3302s Selecting previously unselected package python3-colorama. 3302s Preparing to unpack .../11-python3-colorama_0.4.6-4_all.deb ... 3302s Unpacking python3-colorama (0.4.6-4) ... 3302s Selecting previously unselected package python3-click. 3302s Preparing to unpack .../12-python3-click_8.1.6-1_all.deb ... 3302s Unpacking python3-click (8.1.6-1) ... 3302s Selecting previously unselected package python3-dateutil. 3302s Preparing to unpack .../13-python3-dateutil_2.8.2-3_all.deb ... 3302s Unpacking python3-dateutil (2.8.2-3) ... 3302s Selecting previously unselected package python3-wcwidth. 3302s Preparing to unpack .../14-python3-wcwidth_0.2.5+dfsg1-1.1ubuntu1_all.deb ... 3302s Unpacking python3-wcwidth (0.2.5+dfsg1-1.1ubuntu1) ... 3302s Selecting previously unselected package python3-prettytable. 3302s Preparing to unpack .../15-python3-prettytable_3.6.0-1_all.deb ... 3302s Unpacking python3-prettytable (3.6.0-1) ... 3302s Selecting previously unselected package python3-psutil. 3302s Preparing to unpack .../16-python3-psutil_5.9.8-1_s390x.deb ... 3302s Unpacking python3-psutil (5.9.8-1) ... 3302s Selecting previously unselected package python3-psycopg2. 3302s Preparing to unpack .../17-python3-psycopg2_2.9.9-1_s390x.deb ... 3302s Unpacking python3-psycopg2 (2.9.9-1) ... 3302s Selecting previously unselected package python3-dnspython. 3302s Preparing to unpack .../18-python3-dnspython_2.6.1-1ubuntu1_all.deb ... 3302s Unpacking python3-dnspython (2.6.1-1ubuntu1) ... 3302s Selecting previously unselected package python3-etcd. 3302s Preparing to unpack .../19-python3-etcd_0.4.5-4_all.deb ... 3302s Unpacking python3-etcd (0.4.5-4) ... 3302s Selecting previously unselected package python3-consul. 3302s Preparing to unpack .../20-python3-consul_0.7.1-2_all.deb ... 3302s Unpacking python3-consul (0.7.1-2) ... 3302s Selecting previously unselected package python3-greenlet. 3302s Preparing to unpack .../21-python3-greenlet_3.0.1-2_s390x.deb ... 3302s Unpacking python3-greenlet (3.0.1-2) ... 3302s Selecting previously unselected package python3-eventlet. 3302s Preparing to unpack .../22-python3-eventlet_0.35.1-0ubuntu1_all.deb ... 3302s Unpacking python3-eventlet (0.35.1-0ubuntu1) ... 3302s Selecting previously unselected package python3-zope.event. 3302s Preparing to unpack .../23-python3-zope.event_5.0-0.1_all.deb ... 3302s Unpacking python3-zope.event (5.0-0.1) ... 3302s Selecting previously unselected package python3-zope.interface. 3302s Preparing to unpack .../24-python3-zope.interface_6.1-1_s390x.deb ... 3302s Unpacking python3-zope.interface (6.1-1) ... 3302s Selecting previously unselected package libc-ares2:s390x. 3302s Preparing to unpack .../25-libc-ares2_1.27.0-1_s390x.deb ... 3302s Unpacking libc-ares2:s390x (1.27.0-1) ... 3302s Selecting previously unselected package libev4:s390x. 3302s Preparing to unpack .../26-libev4_1%3a4.33-2_s390x.deb ... 3302s Unpacking libev4:s390x (1:4.33-2) ... 3302s Selecting previously unselected package python3-gevent. 3302s Preparing to unpack .../27-python3-gevent_23.9.1-0.2_s390x.deb ... 3302s Unpacking python3-gevent (23.9.1-0.2) ... 3302s Selecting previously unselected package python3-kerberos. 3302s Preparing to unpack .../28-python3-kerberos_1.1.14-3.1build8_s390x.deb ... 3302s Unpacking python3-kerberos (1.1.14-3.1build8) ... 3302s Selecting previously unselected package python3-pure-sasl. 3302s Preparing to unpack .../29-python3-pure-sasl_0.5.1+dfsg1-4_all.deb ... 3302s Unpacking python3-pure-sasl (0.5.1+dfsg1-4) ... 3302s Selecting previously unselected package python3-kazoo. 3302s Preparing to unpack .../30-python3-kazoo_2.9.0-2_all.deb ... 3302s Unpacking python3-kazoo (2.9.0-2) ... 3302s Selecting previously unselected package python3-cachetools. 3302s Preparing to unpack .../31-python3-cachetools_5.3.0-2_all.deb ... 3302s Unpacking python3-cachetools (5.3.0-2) ... 3302s Selecting previously unselected package python3-pyasn1. 3302s Preparing to unpack .../32-python3-pyasn1_0.4.8-4_all.deb ... 3302s Unpacking python3-pyasn1 (0.4.8-4) ... 3302s Selecting previously unselected package python3-pyasn1-modules. 3302s Preparing to unpack .../33-python3-pyasn1-modules_0.2.8-1_all.deb ... 3302s Unpacking python3-pyasn1-modules (0.2.8-1) ... 3302s Selecting previously unselected package python3-rsa. 3302s Preparing to unpack .../34-python3-rsa_4.9-2_all.deb ... 3302s Unpacking python3-rsa (4.9-2) ... 3302s Selecting previously unselected package python3-google-auth. 3302s Preparing to unpack .../35-python3-google-auth_1.5.1-3_all.deb ... 3302s Unpacking python3-google-auth (1.5.1-3) ... 3302s Selecting previously unselected package python3-requests-oauthlib. 3302s Preparing to unpack .../36-python3-requests-oauthlib_1.3.1-1_all.deb ... 3302s Unpacking python3-requests-oauthlib (1.3.1-1) ... 3302s Selecting previously unselected package python3-websocket. 3302s Preparing to unpack .../37-python3-websocket_1.7.0-1_all.deb ... 3302s Unpacking python3-websocket (1.7.0-1) ... 3302s Selecting previously unselected package python3-kubernetes. 3302s Preparing to unpack .../38-python3-kubernetes_22.6.0-2_all.deb ... 3302s Unpacking python3-kubernetes (22.6.0-2) ... 3302s Selecting previously unselected package python3-pysyncobj. 3302s Preparing to unpack .../39-python3-pysyncobj_0.3.12-1_all.deb ... 3302s Unpacking python3-pysyncobj (0.3.12-1) ... 3303s Selecting previously unselected package patroni. 3303s Preparing to unpack .../40-patroni_3.2.2-2_all.deb ... 3303s Unpacking patroni (3.2.2-2) ... 3303s Selecting previously unselected package sphinx-rtd-theme-common. 3303s Preparing to unpack .../41-sphinx-rtd-theme-common_2.0.0+dfsg-1_all.deb ... 3303s Unpacking sphinx-rtd-theme-common (2.0.0+dfsg-1) ... 3303s Selecting previously unselected package patroni-doc. 3303s Preparing to unpack .../42-patroni-doc_3.2.2-2_all.deb ... 3303s Unpacking patroni-doc (3.2.2-2) ... 3303s Selecting previously unselected package python3-jmespath. 3303s Preparing to unpack .../43-python3-jmespath_1.0.1-1_all.deb ... 3303s Unpacking python3-jmespath (1.0.1-1) ... 3303s Selecting previously unselected package python3-botocore. 3303s Preparing to unpack .../44-python3-botocore_1.34.46+repack-1_all.deb ... 3303s Unpacking python3-botocore (1.34.46+repack-1) ... 3303s Selecting previously unselected package python3-s3transfer. 3303s Preparing to unpack .../45-python3-s3transfer_0.10.0-1_all.deb ... 3303s Unpacking python3-s3transfer (0.10.0-1) ... 3303s Selecting previously unselected package python3-boto3. 3303s Preparing to unpack .../46-python3-boto3_1.34.18+dfsg-1_all.deb ... 3304s Unpacking python3-boto3 (1.34.18+dfsg-1) ... 3304s Selecting previously unselected package python3-coverage. 3304s Preparing to unpack .../47-python3-coverage_7.3.2-0ubuntu1_s390x.deb ... 3304s Unpacking python3-coverage (7.3.2-0ubuntu1) ... 3304s Selecting previously unselected package python3-mccabe. 3304s Preparing to unpack .../48-python3-mccabe_0.7.0-1_all.deb ... 3304s Unpacking python3-mccabe (0.7.0-1) ... 3304s Selecting previously unselected package python3-pycodestyle. 3304s Preparing to unpack .../49-python3-pycodestyle_2.11.1-1_all.deb ... 3304s Unpacking python3-pycodestyle (2.11.1-1) ... 3304s Selecting previously unselected package python3-pyflakes. 3304s Preparing to unpack .../50-python3-pyflakes_3.1.0-1_all.deb ... 3304s Unpacking python3-pyflakes (3.1.0-1) ... 3304s Selecting previously unselected package python3-flake8. 3304s Preparing to unpack .../51-python3-flake8_5.0.4-4_all.deb ... 3304s Unpacking python3-flake8 (5.0.4-4) ... 3304s Selecting previously unselected package python3-iniconfig. 3304s Preparing to unpack .../52-python3-iniconfig_1.1.1-2_all.deb ... 3304s Unpacking python3-iniconfig (1.1.1-2) ... 3304s Selecting previously unselected package python3-packaging. 3304s Preparing to unpack .../53-python3-packaging_23.2-1_all.deb ... 3304s Unpacking python3-packaging (23.2-1) ... 3304s Selecting previously unselected package python3-pluggy. 3304s Preparing to unpack .../54-python3-pluggy_1.4.0-1_all.deb ... 3304s Unpacking python3-pluggy (1.4.0-1) ... 3304s Selecting previously unselected package python3-pytest. 3304s Preparing to unpack .../55-python3-pytest_7.4.4-1_all.deb ... 3304s Unpacking python3-pytest (7.4.4-1) ... 3304s Selecting previously unselected package libjs-jquery-isonscreen. 3304s Preparing to unpack .../56-libjs-jquery-isonscreen_1.2.0-1.1_all.deb ... 3304s Unpacking libjs-jquery-isonscreen (1.2.0-1.1) ... 3304s Selecting previously unselected package python3-pytest-cov. 3304s Preparing to unpack .../57-python3-pytest-cov_4.1.0-1_all.deb ... 3304s Unpacking python3-pytest-cov (4.1.0-1) ... 3304s Selecting previously unselected package python3-mock. 3304s Preparing to unpack .../58-python3-mock_5.1.0-1_all.deb ... 3304s Unpacking python3-mock (5.1.0-1) ... 3304s Selecting previously unselected package autopkgtest-satdep. 3304s Preparing to unpack .../59-7-autopkgtest-satdep.deb ... 3304s Unpacking autopkgtest-satdep (0) ... 3304s Setting up python3-iniconfig (1.1.1-2) ... 3304s Setting up fonts-lato (2.015-1) ... 3304s Setting up python3-pysyncobj (0.3.12-1) ... 3304s Setting up python3-cachetools (5.3.0-2) ... 3304s Setting up python3-colorama (0.4.6-4) ... 3304s Setting up python3-zope.event (5.0-0.1) ... 3304s Setting up python3-zope.interface (6.1-1) ... 3305s Setting up libev4:s390x (1:4.33-2) ... 3305s Setting up python3-cdiff (1.0-1.1) ... 3305s Setting up python3-pyflakes (3.1.0-1) ... 3305s Setting up libpq5:s390x (16.2-1) ... 3305s Setting up python3-kerberos (1.1.14-3.1build8) ... 3305s Setting up python3-coverage (7.3.2-0ubuntu1) ... 3305s Setting up libc-ares2:s390x (1.27.0-1) ... 3305s Setting up libjs-jquery-throttle-debounce (1.1+dfsg.1-2) ... 3305s Setting up python3-click (8.1.6-1) ... 3305s Setting up python3-psutil (5.9.8-1) ... 3305s Setting up python3-mock (5.1.0-1) ... 3306s Setting up python3-pycodestyle (2.11.1-1) ... 3306s Setting up python3-packaging (23.2-1) ... 3306s Setting up python3-wcwidth (0.2.5+dfsg1-1.1ubuntu1) ... 3306s Setting up python3-jmespath (1.0.1-1) ... 3306s Setting up python3-greenlet (3.0.1-2) ... 3307s Setting up python3-psycopg2 (2.9.9-1) ... 3307s Setting up python3-pluggy (1.4.0-1) ... 3307s Setting up python3-dnspython (2.6.1-1ubuntu1) ... 3307s Setting up python3-pyasn1 (0.4.8-4) ... 3307s Setting up python3-dateutil (2.8.2-3) ... 3308s Setting up python3-mccabe (0.7.0-1) ... 3308s Setting up python3-consul (0.7.1-2) ... 3308s Setting up libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 3308s Setting up libjs-jquery-hotkeys (0~20130707+git2d51e3a9+dfsg-2ubuntu2) ... 3308s Setting up python3-prettytable (3.6.0-1) ... 3308s Setting up fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ... 3308s Setting up sphinx-rtd-theme-common (2.0.0+dfsg-1) ... 3308s Setting up python3-websocket (1.7.0-1) ... 3308s Setting up python3-requests-oauthlib (1.3.1-1) ... 3308s Setting up libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 3308s Setting up python3-pure-sasl (0.5.1+dfsg1-4) ... 3309s Setting up python3-etcd (0.4.5-4) ... 3309s Setting up python3-pytest (7.4.4-1) ... 3309s Setting up python3-gevent (23.9.1-0.2) ... 3309s Setting up python3-flake8 (5.0.4-4) ... 3309s Setting up python3-eventlet (0.35.1-0ubuntu1) ... 3310s Setting up python3-kazoo (2.9.0-2) ... 3310s Setting up python3-pyasn1-modules (0.2.8-1) ... 3310s Setting up libjs-jquery-metadata (12-4) ... 3310s Setting up python3-botocore (1.34.46+repack-1) ... 3310s Setting up libjs-jquery-isonscreen (1.2.0-1.1) ... 3310s Setting up libjs-sphinxdoc (7.2.6-4) ... 3310s Setting up libjs-jquery-tablesorter (1:2.31.3+dfsg1-3) ... 3310s Setting up python3-rsa (4.9-2) ... 3311s Setting up patroni (3.2.2-2) ... 3311s Created symlink /etc/systemd/system/multi-user.target.wants/patroni.service → /usr/lib/systemd/system/patroni.service. 3311s Setting up patroni-doc (3.2.2-2) ... 3311s Setting up python3-s3transfer (0.10.0-1) ... 3311s Setting up python3-pytest-cov (4.1.0-1) ... 3312s Setting up python3-google-auth (1.5.1-3) ... 3312s Setting up python3-boto3 (1.34.18+dfsg-1) ... 3312s Setting up python3-kubernetes (22.6.0-2) ... 3313s Setting up autopkgtest-satdep (0) ... 3313s Processing triggers for man-db (2.12.0-3) ... 3313s Processing triggers for libc-bin (2.39-0ubuntu2) ... 3317s (Reading database ... 57415 files and directories currently installed.) 3317s Removing autopkgtest-satdep (0) ... 3321s autopkgtest [13:12:48]: test test: [----------------------- 3322s running test 3322s ============================= test session starts ============================== 3322s platform linux -- Python 3.12.2, pytest-7.4.4, pluggy-1.4.0 -- /usr/bin/python3 3322s cachedir: .pytest_cache 3322s rootdir: /tmp/autopkgtest.yyH96f/build.Y0F/src 3322s plugins: cov-4.1.0 3329s collecting ... collected 607 items 3329s 3329s tests/test_api.py::TestRestApiHandler::test_RestApiServer_query PASSED [ 0%] 3329s tests/test_api.py::TestRestApiHandler::test_basicauth PASSED [ 0%] 3329s tests/test_api.py::TestRestApiHandler::test_do_DELETE_restart PASSED [ 0%] 3329s tests/test_api.py::TestRestApiHandler::test_do_DELETE_switchover PASSED [ 0%] 3329s tests/test_api.py::TestRestApiHandler::test_do_GET PASSED [ 0%] 3329s tests/test_api.py::TestRestApiHandler::test_do_GET_cluster PASSED [ 0%] 3329s tests/test_api.py::TestRestApiHandler::test_do_GET_config PASSED [ 1%] 3329s tests/test_api.py::TestRestApiHandler::test_do_GET_failsafe PASSED [ 1%] 3329s tests/test_api.py::TestRestApiHandler::test_do_GET_history PASSED [ 1%] 3329s tests/test_api.py::TestRestApiHandler::test_do_GET_liveness PASSED [ 1%] 3329s tests/test_api.py::TestRestApiHandler::test_do_GET_metrics PASSED [ 1%] 3329s tests/test_api.py::TestRestApiHandler::test_do_GET_patroni PASSED [ 1%] 3329s tests/test_api.py::TestRestApiHandler::test_do_GET_readiness PASSED [ 2%] 3329s tests/test_api.py::TestRestApiHandler::test_do_HEAD PASSED [ 2%] 3329s tests/test_api.py::TestRestApiHandler::test_do_OPTIONS PASSED [ 2%] 3329s tests/test_api.py::TestRestApiHandler::test_do_PATCH_config PASSED [ 2%] 3329s tests/test_api.py::TestRestApiHandler::test_do_POST_citus PASSED [ 2%] 3329s tests/test_api.py::TestRestApiHandler::test_do_POST_failover PASSED [ 2%] 3329s tests/test_api.py::TestRestApiHandler::test_do_POST_failsafe PASSED [ 3%] 3329s tests/test_api.py::TestRestApiHandler::test_do_POST_reinitialize PASSED [ 3%] 3329s tests/test_api.py::TestRestApiHandler::test_do_POST_reload PASSED [ 3%] 3329s tests/test_api.py::TestRestApiHandler::test_do_POST_restart PASSED [ 3%] 3329s tests/test_api.py::TestRestApiHandler::test_do_POST_sigterm PASSED [ 3%] 3329s tests/test_api.py::TestRestApiHandler::test_do_POST_switchover PASSED [ 3%] 3329s tests/test_api.py::TestRestApiHandler::test_do_PUT_config PASSED [ 4%] 3329s tests/test_api.py::TestRestApiServer::test_check_access PASSED [ 4%] 3329s tests/test_api.py::TestRestApiServer::test_get_certificate_serial_number PASSED [ 4%] 3329s tests/test_api.py::TestRestApiServer::test_handle_error PASSED [ 4%] 3329s tests/test_api.py::TestRestApiServer::test_process_request_error PASSED [ 4%] 3329s tests/test_api.py::TestRestApiServer::test_process_request_thread PASSED [ 4%] 3329s tests/test_api.py::TestRestApiServer::test_query PASSED [ 5%] 3329s tests/test_api.py::TestRestApiServer::test_reload_config PASSED [ 5%] 3329s tests/test_api.py::TestRestApiServer::test_reload_local_certificate PASSED [ 5%] 3329s tests/test_api.py::TestRestApiServer::test_socket_error PASSED [ 5%] 3329s tests/test_async_executor.py::TestAsyncExecutor::test_cancel PASSED [ 5%] 3329s tests/test_async_executor.py::TestAsyncExecutor::test_run PASSED [ 5%] 3329s tests/test_async_executor.py::TestAsyncExecutor::test_run_async PASSED [ 6%] 3329s tests/test_async_executor.py::TestCriticalTask::test_completed_task PASSED [ 6%] 3329s tests/test_aws.py::TestAWSConnection::test_aws_bizare_response PASSED [ 6%] 3329s tests/test_aws.py::TestAWSConnection::test_main PASSED [ 6%] 3329s tests/test_aws.py::TestAWSConnection::test_non_aws PASSED [ 6%] 3330s tests/test_aws.py::TestAWSConnection::test_on_role_change PASSED [ 6%] 3330s tests/test_bootstrap.py::TestBootstrap::test__initdb PASSED [ 7%] 3330s tests/test_bootstrap.py::TestBootstrap::test__process_user_options PASSED [ 7%] 3330s tests/test_bootstrap.py::TestBootstrap::test_basebackup PASSED [ 7%] 3330s tests/test_bootstrap.py::TestBootstrap::test_bootstrap PASSED [ 7%] 3330s tests/test_bootstrap.py::TestBootstrap::test_call_post_bootstrap PASSED [ 7%] 3330s tests/test_bootstrap.py::TestBootstrap::test_clone PASSED [ 7%] 3330s tests/test_bootstrap.py::TestBootstrap::test_create_replica PASSED [ 8%] 3330s tests/test_bootstrap.py::TestBootstrap::test_create_replica_old_format PASSED [ 8%] 3330s tests/test_bootstrap.py::TestBootstrap::test_custom_bootstrap PASSED [ 8%] 3330s tests/test_bootstrap.py::TestBootstrap::test_post_bootstrap PASSED [ 8%] 3330s tests/test_callback_executor.py::TestCallbackExecutor::test_callback_executor PASSED [ 8%] 3330s tests/test_cancellable.py::TestCancellableSubprocess::test__kill_children PASSED [ 8%] 3330s tests/test_cancellable.py::TestCancellableSubprocess::test_call PASSED [ 9%] 3330s tests/test_cancellable.py::TestCancellableSubprocess::test_cancel PASSED [ 9%] 3330s tests/test_citus.py::TestCitus::test_add_task SKIPPED (Citus not tested) [ 9%] 3330s tests/test_citus.py::TestCitus::test_adjust_postgres_gucs SKIPPED (C...) [ 9%] 3330s tests/test_citus.py::TestCitus::test_bootstrap SKIPPED (Citus not te...) [ 9%] 3330s tests/test_citus.py::TestCitus::test_bootstrap_duplicate_database SKIPPED [ 9%] 3330s tests/test_citus.py::TestCitus::test_handle_event SKIPPED (Citus not...) [ 10%] 3330s tests/test_citus.py::TestCitus::test_ignore_replication_slot SKIPPED [ 10%] 3330s tests/test_citus.py::TestCitus::test_load_pg_dist_node SKIPPED (Citu...) [ 10%] 3330s tests/test_citus.py::TestCitus::test_on_demote SKIPPED (Citus not te...) [ 10%] 3330s tests/test_citus.py::TestCitus::test_pick_task SKIPPED (Citus not te...) [ 10%] 3330s tests/test_citus.py::TestCitus::test_process_task SKIPPED (Citus not...) [ 10%] 3330s tests/test_citus.py::TestCitus::test_process_tasks SKIPPED (Citus no...) [ 11%] 3330s tests/test_citus.py::TestCitus::test_run SKIPPED (Citus not tested) [ 11%] 3330s tests/test_citus.py::TestCitus::test_sync_pg_dist_node SKIPPED (Citu...) [ 11%] 3330s tests/test_citus.py::TestCitus::test_wait SKIPPED (Citus not tested) [ 11%] 3330s tests/test_config.py::TestConfig::test__process_postgresql_parameters PASSED [ 11%] 3330s tests/test_config.py::TestConfig::test__validate_and_adjust_timeouts PASSED [ 11%] 3330s tests/test_config.py::TestConfig::test__validate_failover_tags PASSED [ 12%] 3330s tests/test_config.py::TestConfig::test_configuration_directory PASSED [ 12%] 3330s tests/test_config.py::TestConfig::test_global_config_is_synchronous_mode PASSED [ 12%] 3330s tests/test_config.py::TestConfig::test_invalid_path PASSED [ 12%] 3330s tests/test_config.py::TestConfig::test_reload_local_configuration PASSED [ 12%] 3330s tests/test_config.py::TestConfig::test_save_cache PASSED [ 12%] 3330s tests/test_config.py::TestConfig::test_set_dynamic_configuration PASSED [ 13%] 3330s tests/test_config.py::TestConfig::test_standby_cluster_parameters PASSED [ 13%] 3330s tests/test_config_generator.py::TestGenerateConfig::test_generate_config_running_instance_16 PASSED [ 13%] 3330s tests/test_config_generator.py::TestGenerateConfig::test_generate_config_running_instance_16_connect_from_env PASSED [ 13%] 3330s tests/test_config_generator.py::TestGenerateConfig::test_generate_config_running_instance_errors PASSED [ 13%] 3330s tests/test_config_generator.py::TestGenerateConfig::test_generate_sample_config_16 PASSED [ 13%] 3330s tests/test_config_generator.py::TestGenerateConfig::test_generate_sample_config_pre_13_dir_creation PASSED [ 14%] 3330s tests/test_config_generator.py::TestGenerateConfig::test_get_address PASSED [ 14%] 3330s tests/test_consul.py::TestHTTPClient::test_get PASSED [ 14%] 3330s tests/test_consul.py::TestHTTPClient::test_put PASSED [ 14%] 3330s tests/test_consul.py::TestHTTPClient::test_unknown_method PASSED [ 14%] 3330s tests/test_consul.py::TestConsul::test__get_citus_cluster PASSED [ 14%] 3330s tests/test_consul.py::TestConsul::test_cancel_initialization PASSED [ 14%] 3330s tests/test_consul.py::TestConsul::test_create_session PASSED [ 15%] 3330s tests/test_consul.py::TestConsul::test_delete_cluster PASSED [ 15%] 3330s tests/test_consul.py::TestConsul::test_delete_leader PASSED [ 15%] 3331s tests/test_consul.py::TestConsul::test_get_cluster PASSED [ 15%] 3331s tests/test_consul.py::TestConsul::test_initialize PASSED [ 15%] 3331s tests/test_consul.py::TestConsul::test_referesh_session PASSED [ 15%] 3331s tests/test_consul.py::TestConsul::test_reload_config PASSED [ 16%] 3331s tests/test_consul.py::TestConsul::test_set_config_value PASSED [ 16%] 3331s tests/test_consul.py::TestConsul::test_set_failover_value PASSED [ 16%] 3331s tests/test_consul.py::TestConsul::test_set_history_value PASSED [ 16%] 3331s tests/test_consul.py::TestConsul::test_set_retry_timeout PASSED [ 16%] 3331s tests/test_consul.py::TestConsul::test_sync_state PASSED [ 16%] 3331s tests/test_consul.py::TestConsul::test_take_leader PASSED [ 17%] 3331s tests/test_consul.py::TestConsul::test_touch_member PASSED [ 17%] 3331s tests/test_consul.py::TestConsul::test_update_leader PASSED [ 17%] 3331s tests/test_consul.py::TestConsul::test_update_service PASSED [ 17%] 3331s tests/test_consul.py::TestConsul::test_watch PASSED [ 17%] 3331s tests/test_consul.py::TestConsul::test_write_leader_optime PASSED [ 17%] 3331s tests/test_ctl.py::TestCtl::test_apply_config_changes PASSED [ 18%] 3331s tests/test_ctl.py::TestCtl::test_ctl PASSED [ 18%] 3331s tests/test_ctl.py::TestCtl::test_dsn PASSED [ 18%] 3331s tests/test_ctl.py::TestCtl::test_edit_config PASSED [ 18%] 3331s tests/test_ctl.py::TestCtl::test_failover PASSED [ 18%] 3331s tests/test_ctl.py::TestCtl::test_flush_restart PASSED [ 18%] 3331s tests/test_ctl.py::TestCtl::test_flush_switchover PASSED [ 19%] 3331s tests/test_ctl.py::TestCtl::test_format_pg_version PASSED [ 19%] 3331s tests/test_ctl.py::TestCtl::test_get_all_members PASSED [ 19%] 3331s tests/test_ctl.py::TestCtl::test_get_any_member PASSED [ 19%] 3331s tests/test_ctl.py::TestCtl::test_get_cursor PASSED [ 19%] 3331s tests/test_ctl.py::TestCtl::test_get_dcs PASSED [ 19%] 3331s tests/test_ctl.py::TestCtl::test_get_members PASSED [ 20%] 3331s tests/test_ctl.py::TestCtl::test_history PASSED [ 20%] 3331s tests/test_ctl.py::TestCtl::test_invoke_editor PASSED [ 20%] 3331s tests/test_ctl.py::TestCtl::test_list_extended PASSED [ 20%] 3331s tests/test_ctl.py::TestCtl::test_load_config PASSED [ 20%] 3331s tests/test_ctl.py::TestCtl::test_members PASSED [ 20%] 3331s tests/test_ctl.py::TestCtl::test_output_members PASSED [ 21%] 3331s tests/test_ctl.py::TestCtl::test_parse_dcs PASSED [ 21%] 3331s tests/test_ctl.py::TestCtl::test_pause_cluster PASSED [ 21%] 3331s tests/test_ctl.py::TestCtl::test_query PASSED [ 21%] 3331s tests/test_ctl.py::TestCtl::test_query_member PASSED [ 21%] 3331s tests/test_ctl.py::TestCtl::test_reinit_wait PASSED [ 21%] 3331s tests/test_ctl.py::TestCtl::test_reload PASSED [ 22%] 3331s tests/test_ctl.py::TestCtl::test_remove PASSED [ 22%] 3331s tests/test_ctl.py::TestCtl::test_restart_reinit PASSED [ 22%] 3331s tests/test_ctl.py::TestCtl::test_resume_cluster PASSED [ 22%] 3331s tests/test_ctl.py::TestCtl::test_show_config PASSED [ 22%] 3331s tests/test_ctl.py::TestCtl::test_show_diff PASSED [ 22%] 3331s tests/test_ctl.py::TestCtl::test_switchover PASSED [ 23%] 3331s tests/test_ctl.py::TestCtl::test_topology PASSED [ 23%] 3331s tests/test_ctl.py::TestCtl::test_version PASSED [ 23%] 3331s tests/test_ctl.py::TestPatronictlPrettyTable::test__get_hline PASSED [ 23%] 3331s tests/test_ctl.py::TestPatronictlPrettyTable::test__stringify_hrule PASSED [ 23%] 3331s tests/test_ctl.py::TestPatronictlPrettyTable::test_output PASSED [ 23%] 3331s tests/test_etcd.py::TestDnsCachingResolver::test_run PASSED [ 24%] 3331s tests/test_etcd.py::TestClient::test___del__ PASSED [ 24%] 3331s tests/test_etcd.py::TestClient::test__get_machines_cache_from_dns PASSED [ 24%] 3331s tests/test_etcd.py::TestClient::test__get_machines_cache_from_srv PASSED [ 24%] 3331s tests/test_etcd.py::TestClient::test__load_machines_cache PASSED [ 24%] 3331s tests/test_etcd.py::TestClient::test__refresh_machines_cache PASSED [ 24%] 3332s tests/test_etcd.py::TestClient::test_api_execute PASSED [ 25%] 3332s tests/test_etcd.py::TestClient::test_create_connection_patched PASSED [ 25%] 3332s tests/test_etcd.py::TestClient::test_get_srv_record PASSED [ 25%] 3332s tests/test_etcd.py::TestClient::test_machines PASSED [ 25%] 3332s tests/test_etcd.py::TestEtcd::test__get_citus_cluster PASSED [ 25%] 3332s tests/test_etcd.py::TestEtcd::test_attempt_to_acquire_leader PASSED [ 25%] 3332s tests/test_etcd.py::TestEtcd::test_base_path PASSED [ 26%] 3332s tests/test_etcd.py::TestEtcd::test_cancel_initializion PASSED [ 26%] 3332s tests/test_etcd.py::TestEtcd::test_delete_cluster PASSED [ 26%] 3332s tests/test_etcd.py::TestEtcd::test_delete_leader PASSED [ 26%] 3332s tests/test_etcd.py::TestEtcd::test_get_cluster PASSED [ 26%] 3332s tests/test_etcd.py::TestEtcd::test_get_etcd_client PASSED [ 26%] 3332s tests/test_etcd.py::TestEtcd::test_initialize PASSED [ 27%] 3332s tests/test_etcd.py::TestEtcd::test_last_seen PASSED [ 27%] 3332s tests/test_etcd.py::TestEtcd::test_other_exceptions PASSED [ 27%] 3332s tests/test_etcd.py::TestEtcd::test_set_history_value PASSED [ 27%] 3332s tests/test_etcd.py::TestEtcd::test_set_ttl PASSED [ 27%] 3332s tests/test_etcd.py::TestEtcd::test_sync_state PASSED [ 27%] 3332s tests/test_etcd.py::TestEtcd::test_take_leader PASSED [ 28%] 3332s tests/test_etcd.py::TestEtcd::test_touch_member PASSED [ 28%] 3332s tests/test_etcd.py::TestEtcd::test_update_leader PASSED [ 28%] 3332s tests/test_etcd.py::TestEtcd::test_watch PASSED [ 28%] 3332s tests/test_etcd.py::TestEtcd::test_write_leader_optime PASSED [ 28%] 3332s tests/test_etcd3.py::TestEtcd3Client::test_authenticate PASSED [ 28%] 3332s tests/test_etcd3.py::TestKVCache::test__build_cache PASSED [ 28%] 3332s tests/test_etcd3.py::TestKVCache::test__do_watch PASSED [ 29%] 3332s tests/test_etcd3.py::TestKVCache::test_kill_stream PASSED [ 29%] 3332s tests/test_etcd3.py::TestKVCache::test_run PASSED [ 29%] 3332s tests/test_etcd3.py::TestPatroniEtcd3Client::test__ensure_version_prefix PASSED [ 29%] 3332s tests/test_etcd3.py::TestPatroniEtcd3Client::test__handle_auth_errors PASSED [ 29%] 3332s tests/test_etcd3.py::TestPatroniEtcd3Client::test__handle_server_response PASSED [ 29%] 3332s tests/test_etcd3.py::TestPatroniEtcd3Client::test__init__ PASSED [ 30%] 3332s tests/test_etcd3.py::TestPatroniEtcd3Client::test__restart_watcher PASSED [ 30%] 3332s tests/test_etcd3.py::TestPatroniEtcd3Client::test__wait_cache PASSED [ 30%] 3332s tests/test_etcd3.py::TestPatroniEtcd3Client::test_call_rpc PASSED [ 30%] 3332s tests/test_etcd3.py::TestPatroniEtcd3Client::test_txn PASSED [ 30%] 3332s tests/test_etcd3.py::TestEtcd3::test__get_citus_cluster PASSED [ 30%] 3332s tests/test_etcd3.py::TestEtcd3::test__update_leader PASSED [ 31%] 3332s tests/test_etcd3.py::TestEtcd3::test_attempt_to_acquire_leader PASSED [ 31%] 3332s tests/test_etcd3.py::TestEtcd3::test_cancel_initialization PASSED [ 31%] 3332s tests/test_etcd3.py::TestEtcd3::test_create_lease PASSED [ 31%] 3332s tests/test_etcd3.py::TestEtcd3::test_delete_cluster PASSED [ 31%] 3332s tests/test_etcd3.py::TestEtcd3::test_delete_leader PASSED [ 31%] 3332s tests/test_etcd3.py::TestEtcd3::test_delete_sync_state PASSED [ 32%] 3332s tests/test_etcd3.py::TestEtcd3::test_get_cluster PASSED [ 32%] 3332s tests/test_etcd3.py::TestEtcd3::test_initialize PASSED [ 32%] 3332s tests/test_etcd3.py::TestEtcd3::test_refresh_lease PASSED [ 32%] 3332s tests/test_etcd3.py::TestEtcd3::test_set_config_value PASSED [ 32%] 3332s tests/test_etcd3.py::TestEtcd3::test_set_failover_value PASSED [ 32%] 3332s tests/test_etcd3.py::TestEtcd3::test_set_history_value PASSED [ 33%] 3332s tests/test_etcd3.py::TestEtcd3::test_set_socket_options PASSED [ 33%] 3332s tests/test_etcd3.py::TestEtcd3::test_set_sync_state_value PASSED [ 33%] 3332s tests/test_etcd3.py::TestEtcd3::test_set_ttl PASSED [ 33%] 3332s tests/test_etcd3.py::TestEtcd3::test_take_leader PASSED [ 33%] 3332s tests/test_etcd3.py::TestEtcd3::test_touch_member PASSED [ 33%] 3332s tests/test_etcd3.py::TestEtcd3::test_watch PASSED [ 34%] 3332s tests/test_exhibitor.py::TestExhibitorEnsembleProvider::test_init PASSED [ 34%] 3332s tests/test_exhibitor.py::TestExhibitorEnsembleProvider::test_poll PASSED [ 34%] 3332s tests/test_exhibitor.py::TestExhibitor::test_get_cluster PASSED [ 34%] 3332s tests/test_file_perm.py::TestFilePermissions::test_set_permissions_from_data_directory PASSED [ 34%] 3332s tests/test_file_perm.py::TestFilePermissions::test_set_umask PASSED [ 34%] 3332s tests/test_ha.py::TestHa::test__is_healthiest_node PASSED [ 35%] 3332s tests/test_ha.py::TestHa::test_abort_join PASSED [ 35%] 3332s tests/test_ha.py::TestHa::test_acquire_lock PASSED [ 35%] 3332s tests/test_ha.py::TestHa::test_acquire_lock_as_primary PASSED [ 35%] 3332s tests/test_ha.py::TestHa::test_after_pause PASSED [ 35%] 3332s tests/test_ha.py::TestHa::test_bootstrap_as_standby_leader PASSED [ 35%] 3332s tests/test_ha.py::TestHa::test_bootstrap_from_another_member PASSED [ 36%] 3332s tests/test_ha.py::TestHa::test_bootstrap_initialize_lock_failed PASSED [ 36%] 3332s tests/test_ha.py::TestHa::test_bootstrap_initialized_new_cluster PASSED [ 36%] 3332s tests/test_ha.py::TestHa::test_bootstrap_not_running_concurrently PASSED [ 36%] 3332s tests/test_ha.py::TestHa::test_bootstrap_release_initialize_key_on_failure PASSED [ 36%] 3332s tests/test_ha.py::TestHa::test_bootstrap_release_initialize_key_on_watchdog_failure PASSED [ 36%] 3332s tests/test_ha.py::TestHa::test_bootstrap_waiting_for_leader PASSED [ 37%] 3332s tests/test_ha.py::TestHa::test_bootstrap_waiting_for_standby_leader PASSED [ 37%] 3332s tests/test_ha.py::TestHa::test_bootstrap_without_leader PASSED [ 37%] 3332s tests/test_ha.py::TestHa::test_check_failsafe_topology PASSED [ 37%] 3332s tests/test_ha.py::TestHa::test_coordinator_leader_with_lock PASSED [ 37%] 3332s tests/test_ha.py::TestHa::test_crash_recovery PASSED [ 37%] 3332s tests/test_ha.py::TestHa::test_crash_recovery_before_rewind PASSED [ 38%] 3332s tests/test_ha.py::TestHa::test_delete_future_restarts PASSED [ 38%] 3332s tests/test_ha.py::TestHa::test_demote_after_failing_to_obtain_lock PASSED [ 38%] 3332s tests/test_ha.py::TestHa::test_demote_because_not_having_lock PASSED [ 38%] 3332s tests/test_ha.py::TestHa::test_demote_because_not_healthiest PASSED [ 38%] 3332s tests/test_ha.py::TestHa::test_demote_because_update_lock_failed PASSED [ 38%] 3332s tests/test_ha.py::TestHa::test_demote_immediate PASSED [ 39%] 3332s tests/test_ha.py::TestHa::test_disable_sync_when_restarting PASSED [ 39%] 3332s tests/test_ha.py::TestHa::test_effective_tags PASSED [ 39%] 3332s tests/test_ha.py::TestHa::test_empty_directory_in_pause PASSED [ 39%] 3332s tests/test_ha.py::TestHa::test_enable_synchronous_mode PASSED [ 39%] 3332s tests/test_ha.py::TestHa::test_evaluate_scheduled_restart PASSED [ 39%] 3332s tests/test_ha.py::TestHa::test_failed_to_update_lock_in_pause PASSED [ 40%] 3332s tests/test_ha.py::TestHa::test_failover_immediately_on_zero_primary_start_timeout PASSED [ 40%] 3332s tests/test_ha.py::TestHa::test_fetch_node_status PASSED [ 40%] 3332s tests/test_ha.py::TestHa::test_follow PASSED [ 40%] 3332s tests/test_ha.py::TestHa::test_follow_copy PASSED [ 40%] 3332s tests/test_ha.py::TestHa::test_follow_in_pause PASSED [ 40%] 3332s tests/test_ha.py::TestHa::test_follow_new_leader_after_failing_to_obtain_lock PASSED [ 41%] 3332s tests/test_ha.py::TestHa::test_follow_new_leader_because_not_healthiest PASSED [ 41%] 3332s tests/test_ha.py::TestHa::test_follow_triggers_rewind PASSED [ 41%] 3332s tests/test_ha.py::TestHa::test_inconsistent_synchronous_state PASSED [ 41%] 3332s tests/test_ha.py::TestHa::test_is_healthiest_node PASSED [ 41%] 3332s tests/test_ha.py::TestHa::test_is_leader PASSED [ 41%] 3332s tests/test_ha.py::TestHa::test_leader_race_stale_primary PASSED [ 42%] 3332s tests/test_ha.py::TestHa::test_leader_with_lock PASSED [ 42%] 3333s tests/test_ha.py::TestHa::test_leader_with_not_accessible_data_directory PASSED [ 42%] 3333s tests/test_ha.py::TestHa::test_long_promote PASSED [ 42%] 3333s tests/test_ha.py::TestHa::test_lost_leader_lock_during_promote PASSED [ 42%] 3333s tests/test_ha.py::TestHa::test_manual_failover_from_leader PASSED [ 42%] 3333s tests/test_ha.py::TestHa::test_manual_failover_from_leader_in_pause PASSED [ 42%] 3333s tests/test_ha.py::TestHa::test_manual_failover_from_leader_in_synchronous_mode PASSED [ 43%] 3333s tests/test_ha.py::TestHa::test_manual_failover_process_no_leader PASSED [ 43%] 3333s tests/test_ha.py::TestHa::test_manual_failover_process_no_leader_in_pause PASSED [ 43%] 3333s tests/test_ha.py::TestHa::test_manual_failover_process_no_leader_in_synchronous_mode PASSED [ 43%] 3333s tests/test_ha.py::TestHa::test_manual_failover_while_starting PASSED [ 43%] 3333s tests/test_ha.py::TestHa::test_manual_switchover_from_leader PASSED [ 43%] 3333s tests/test_ha.py::TestHa::test_manual_switchover_from_leader_in_pause PASSED [ 44%] 3333s tests/test_ha.py::TestHa::test_manual_switchover_from_leader_in_synchronous_mode PASSED [ 44%] 3333s tests/test_ha.py::TestHa::test_manual_switchover_process_no_leader PASSED [ 44%] 3333s tests/test_ha.py::TestHa::test_manual_switchover_process_no_leader_in_pause PASSED [ 44%] 3333s tests/test_ha.py::TestHa::test_manual_switchover_process_no_leader_in_synchronous_mode PASSED [ 44%] 3333s tests/test_ha.py::TestHa::test_no_dcs_connection_primary_demote PASSED [ 44%] 3333s tests/test_ha.py::TestHa::test_no_dcs_connection_primary_failsafe PASSED [ 45%] 3333s tests/test_ha.py::TestHa::test_no_dcs_connection_replica_failsafe PASSED [ 45%] 3333s tests/test_ha.py::TestHa::test_no_dcs_connection_replica_failsafe_not_enabled_but_active PASSED [ 45%] 3333s tests/test_ha.py::TestHa::test_no_etcd_connection_in_pause PASSED [ 45%] 3333s tests/test_ha.py::TestHa::test_notify_citus_coordinator PASSED [ 45%] 3333s tests/test_ha.py::TestHa::test_permanent_logical_slots_after_promote PASSED [ 45%] 3333s tests/test_ha.py::TestHa::test_post_recover PASSED [ 46%] 3333s tests/test_ha.py::TestHa::test_postgres_unhealthy_in_pause PASSED [ 46%] 3333s tests/test_ha.py::TestHa::test_primary_stop_timeout PASSED [ 46%] 3333s tests/test_ha.py::TestHa::test_process_healthy_cluster_in_pause PASSED [ 46%] 3333s tests/test_ha.py::TestHa::test_process_healthy_standby_cluster_as_cascade_replica PASSED [ 46%] 3333s tests/test_ha.py::TestHa::test_process_healthy_standby_cluster_as_standby_leader PASSED [ 46%] 3333s tests/test_ha.py::TestHa::test_process_sync_replication PASSED [ 47%] 3333s tests/test_ha.py::TestHa::test_process_unhealthy_standby_cluster_as_cascade_replica PASSED [ 47%] 3333s tests/test_ha.py::TestHa::test_process_unhealthy_standby_cluster_as_standby_leader PASSED [ 47%] 3333s tests/test_ha.py::TestHa::test_promote_because_have_lock PASSED [ 47%] 3333s tests/test_ha.py::TestHa::test_promote_without_watchdog PASSED [ 47%] 3333s tests/test_ha.py::TestHa::test_promoted_by_acquiring_lock PASSED [ 47%] 3333s tests/test_ha.py::TestHa::test_promotion_cancelled_after_pre_promote_failed PASSED [ 48%] 3333s tests/test_ha.py::TestHa::test_readonly_dcs_primary_failsafe PASSED [ 48%] 3333s tests/test_ha.py::TestHa::test_recover_former_primary PASSED [ 48%] 3333s tests/test_ha.py::TestHa::test_recover_raft PASSED [ 48%] 3333s tests/test_ha.py::TestHa::test_recover_replica_failed PASSED [ 48%] 3333s tests/test_ha.py::TestHa::test_recover_unhealthy_leader_in_standby_cluster PASSED [ 48%] 3333s tests/test_ha.py::TestHa::test_recover_unhealthy_unlocked_standby_cluster PASSED [ 49%] 3333s tests/test_ha.py::TestHa::test_recover_with_reinitialize PASSED [ 49%] 3333s tests/test_ha.py::TestHa::test_recover_with_rewind PASSED [ 49%] 3333s tests/test_ha.py::TestHa::test_reinitialize PASSED [ 49%] 3333s tests/test_ha.py::TestHa::test_restart PASSED [ 49%] 3333s tests/test_ha.py::TestHa::test_restart_in_progress PASSED [ 49%] 3333s tests/test_ha.py::TestHa::test_restart_matches PASSED [ 50%] 3333s tests/test_ha.py::TestHa::test_restore_cluster_config PASSED [ 50%] 3333s tests/test_ha.py::TestHa::test_run_cycle PASSED [ 50%] 3333s tests/test_ha.py::TestHa::test_schedule_future_restart PASSED [ 50%] 3333s tests/test_ha.py::TestHa::test_scheduled_restart PASSED [ 50%] 3333s tests/test_ha.py::TestHa::test_scheduled_switchover_from_leader PASSED [ 50%] 3333s tests/test_ha.py::TestHa::test_shutdown PASSED [ 51%] 3333s tests/test_ha.py::TestHa::test_shutdown_citus_worker PASSED [ 51%] 3333s tests/test_ha.py::TestHa::test_start_as_cascade_replica_in_standby_cluster PASSED [ 51%] 3333s tests/test_ha.py::TestHa::test_start_as_readonly PASSED [ 51%] 3333s tests/test_ha.py::TestHa::test_start_as_replica PASSED [ 51%] 3333s tests/test_ha.py::TestHa::test_start_primary_after_failure PASSED [ 51%] 3333s tests/test_ha.py::TestHa::test_starting_timeout PASSED [ 52%] 3333s tests/test_ha.py::TestHa::test_sync_replication_become_primary PASSED [ 52%] 3333s tests/test_ha.py::TestHa::test_sysid_no_match PASSED [ 52%] 3333s tests/test_ha.py::TestHa::test_sysid_no_match_in_pause PASSED [ 52%] 3333s tests/test_ha.py::TestHa::test_touch_member PASSED [ 52%] 3333s tests/test_ha.py::TestHa::test_unhealthy_sync_mode PASSED [ 52%] 3333s tests/test_ha.py::TestHa::test_update_cluster_history PASSED [ 53%] 3333s tests/test_ha.py::TestHa::test_update_failsafe PASSED [ 53%] 3333s tests/test_ha.py::TestHa::test_update_lock PASSED [ 53%] 3333s tests/test_ha.py::TestHa::test_wakup PASSED [ 53%] 3334s tests/test_ha.py::TestHa::test_watch PASSED [ 53%] 3334s tests/test_ha.py::TestHa::test_worker_restart PASSED [ 53%] 3334s tests/test_kubernetes.py::TestK8sConfig::test_load_incluster_config PASSED [ 54%] 3334s tests/test_kubernetes.py::TestK8sConfig::test_load_kube_config PASSED [ 54%] 3334s tests/test_kubernetes.py::TestK8sConfig::test_refresh_token PASSED [ 54%] 3334s tests/test_kubernetes.py::TestApiClient::test__do_http_request PASSED [ 54%] 3334s tests/test_kubernetes.py::TestApiClient::test__refresh_api_servers_cache PASSED [ 54%] 3334s tests/test_kubernetes.py::TestApiClient::test_request PASSED [ 54%] 3334s tests/test_kubernetes.py::TestCoreV1Api::test_create_namespaced_service PASSED [ 55%] 3334s tests/test_kubernetes.py::TestCoreV1Api::test_delete_namespaced_pod PASSED [ 55%] 3334s tests/test_kubernetes.py::TestCoreV1Api::test_list_namespaced_endpoints PASSED [ 55%] 3334s tests/test_kubernetes.py::TestCoreV1Api::test_list_namespaced_pod PASSED [ 55%] 3334s tests/test_kubernetes.py::TestCoreV1Api::test_patch_namespaced_config_map PASSED [ 55%] 3334s tests/test_kubernetes.py::TestKubernetesConfigMaps::test__get_citus_cluster PASSED [ 55%] 3334s tests/test_kubernetes.py::TestKubernetesConfigMaps::test__wait_caches PASSED [ 56%] 3334s tests/test_kubernetes.py::TestKubernetesConfigMaps::test_attempt_to_acquire_leader PASSED [ 56%] 3334s tests/test_kubernetes.py::TestKubernetesConfigMaps::test_cancel_initialization PASSED [ 56%] 3334s tests/test_kubernetes.py::TestKubernetesConfigMaps::test_delete_cluster PASSED [ 56%] 3334s tests/test_kubernetes.py::TestKubernetesConfigMaps::test_delete_leader PASSED [ 56%] 3334s tests/test_kubernetes.py::TestKubernetesConfigMaps::test_get_citus_coordinator PASSED [ 56%] 3334s tests/test_kubernetes.py::TestKubernetesConfigMaps::test_get_cluster PASSED [ 57%] 3334s tests/test_kubernetes.py::TestKubernetesConfigMaps::test_initialize PASSED [ 57%] 3334s tests/test_kubernetes.py::TestKubernetesConfigMaps::test_manual_failover PASSED [ 57%] 3334s tests/test_kubernetes.py::TestKubernetesConfigMaps::test_reload_config PASSED [ 57%] 3334s tests/test_kubernetes.py::TestKubernetesConfigMaps::test_set_config_value PASSED [ 57%] 3334s tests/test_kubernetes.py::TestKubernetesConfigMaps::test_set_history_value PASSED [ 57%] 3334s tests/test_kubernetes.py::TestKubernetesConfigMaps::test_take_leader PASSED [ 57%] 3334s tests/test_kubernetes.py::TestKubernetesConfigMaps::test_touch_member PASSED [ 58%] 3334s tests/test_kubernetes.py::TestKubernetesConfigMaps::test_watch PASSED [ 58%] 3334s tests/test_kubernetes.py::TestKubernetesEndpointsNoPodIP::test_update_leader PASSED [ 58%] 3334s tests/test_kubernetes.py::TestKubernetesEndpoints::test__create_config_service PASSED [ 58%] 3334s tests/test_kubernetes.py::TestKubernetesEndpoints::test__update_leader_with_retry PASSED [ 58%] 3335s tests/test_kubernetes.py::TestKubernetesEndpoints::test_delete_sync_state PASSED [ 58%] 3335s tests/test_kubernetes.py::TestKubernetesEndpoints::test_update_leader PASSED [ 59%] 3335s tests/test_kubernetes.py::TestKubernetesEndpoints::test_write_leader_optime PASSED [ 59%] 3335s tests/test_kubernetes.py::TestKubernetesEndpoints::test_write_sync_state PASSED [ 59%] 3335s tests/test_kubernetes.py::TestCacheBuilder::test__build_cache PASSED [ 59%] 3335s tests/test_kubernetes.py::TestCacheBuilder::test__do_watch PASSED [ 59%] 3335s tests/test_kubernetes.py::TestCacheBuilder::test__list PASSED [ 59%] 3335s tests/test_kubernetes.py::TestCacheBuilder::test_kill_stream PASSED [ 60%] 3335s tests/test_kubernetes.py::TestCacheBuilder::test_run PASSED [ 60%] 3335s tests/test_log.py::TestPatroniLogger::test_interceptor PASSED [ 60%] 3335s tests/test_log.py::TestPatroniLogger::test_patroni_logger PASSED [ 60%] 3335s tests/test_patroni.py::TestPatroni::test__filter_tags PASSED [ 60%] 3335s tests/test_patroni.py::TestPatroni::test_check_psycopg PASSED [ 60%] 3335s tests/test_patroni.py::TestPatroni::test_ensure_unique_name PASSED [ 61%] 3335s tests/test_patroni.py::TestPatroni::test_failover_priority PASSED [ 61%] 3335s tests/test_patroni.py::TestPatroni::test_load_dynamic_configuration PASSED [ 61%] 3335s tests/test_patroni.py::TestPatroni::test_no_config PASSED [ 61%] 3335s tests/test_patroni.py::TestPatroni::test_nofailover PASSED [ 61%] 3335s tests/test_patroni.py::TestPatroni::test_noloadbalance PASSED [ 61%] 3335s tests/test_patroni.py::TestPatroni::test_nosync PASSED [ 62%] 3335s tests/test_patroni.py::TestPatroni::test_patroni_main PASSED [ 62%] 3335s tests/test_patroni.py::TestPatroni::test_patroni_patroni_main PASSED [ 62%] 3335s tests/test_patroni.py::TestPatroni::test_reload_config PASSED [ 62%] 3335s tests/test_patroni.py::TestPatroni::test_replicatefrom PASSED [ 62%] 3335s tests/test_patroni.py::TestPatroni::test_run PASSED [ 62%] 3335s tests/test_patroni.py::TestPatroni::test_schedule_next_run PASSED [ 63%] 3335s tests/test_patroni.py::TestPatroni::test_shutdown PASSED [ 63%] 3336s tests/test_patroni.py::TestPatroni::test_sigterm_handler PASSED [ 63%] 3336s tests/test_patroni.py::TestPatroni::test_validate_config PASSED [ 63%] 3336s tests/test_postgresql.py::TestPostgresql::test__do_stop PASSED [ 63%] 3336s tests/test_postgresql.py::TestPostgresql::test__get_postgres_guc_validators PASSED [ 63%] 3336s tests/test_postgresql.py::TestPostgresql::test__load_postgres_gucs_validators PASSED [ 64%] 3336s tests/test_postgresql.py::TestPostgresql::test__query PASSED [ 64%] 3336s tests/test_postgresql.py::TestPostgresql::test__read_postgres_gucs_validators_file PASSED [ 64%] 3336s tests/test_postgresql.py::TestPostgresql::test__read_recovery_params PASSED [ 64%] 3336s tests/test_postgresql.py::TestPostgresql::test__read_recovery_params_pre_v12 PASSED [ 64%] 3336s tests/test_postgresql.py::TestPostgresql::test__wait_for_connection_close PASSED [ 64%] 3336s tests/test_postgresql.py::TestPostgresql::test__write_recovery_params PASSED [ 65%] 3336s tests/test_postgresql.py::TestPostgresql::test_call_nowait PASSED [ 65%] 3336s tests/test_postgresql.py::TestPostgresql::test_can_create_replica_without_replication_connection PASSED [ 65%] 3336s tests/test_postgresql.py::TestPostgresql::test_check_for_startup PASSED [ 65%] 3336s tests/test_postgresql.py::TestPostgresql::test_check_recovery_conf PASSED [ 65%] 3336s tests/test_postgresql.py::TestPostgresql::test_checkpoint PASSED [ 65%] 3336s tests/test_postgresql.py::TestPostgresql::test_controldata PASSED [ 66%] 3336s tests/test_postgresql.py::TestPostgresql::test_effective_configuration PASSED [ 66%] 3336s tests/test_postgresql.py::TestPostgresql::test_follow PASSED [ 66%] 3336s tests/test_postgresql.py::TestPostgresql::test_get_major_version PASSED [ 66%] 3336s tests/test_postgresql.py::TestPostgresql::test_get_postgres_role_from_data_directory PASSED [ 66%] 3336s tests/test_postgresql.py::TestPostgresql::test_get_primary_timeline PASSED [ 66%] 3336s tests/test_postgresql.py::TestPostgresql::test_get_server_parameters PASSED [ 67%] 3336s tests/test_postgresql.py::TestPostgresql::test_handle_parameter_change PASSED [ 67%] 3336s tests/test_postgresql.py::TestPostgresql::test_is_healthy PASSED [ 67%] 3336s tests/test_postgresql.py::TestPostgresql::test_is_primary PASSED [ 67%] 3336s tests/test_postgresql.py::TestPostgresql::test_is_primary_exception PASSED [ 67%] 3336s tests/test_postgresql.py::TestPostgresql::test_is_running PASSED [ 67%] 3336s tests/test_postgresql.py::TestPostgresql::test_latest_checkpoint_location PASSED [ 68%] 3336s tests/test_postgresql.py::TestPostgresql::test_move_data_directory PASSED [ 68%] 3336s tests/test_postgresql.py::TestPostgresql::test_pgpass_is_dir PASSED [ 68%] 3336s tests/test_postgresql.py::TestPostgresql::test_postmaster_start_time PASSED [ 68%] 3336s tests/test_postgresql.py::TestPostgresql::test_promote PASSED [ 68%] 3336s tests/test_postgresql.py::TestPostgresql::test_query PASSED [ 68%] 3336s tests/test_postgresql.py::TestPostgresql::test_received_timeline PASSED [ 69%] 3336s tests/test_postgresql.py::TestPostgresql::test_reload PASSED [ 69%] 3336s tests/test_postgresql.py::TestPostgresql::test_reload_config PASSED [ 69%] 3336s tests/test_postgresql.py::TestPostgresql::test_remove_data_directory PASSED [ 69%] 3336s tests/test_postgresql.py::TestPostgresql::test_replica_cached_timeline PASSED [ 69%] 3336s tests/test_postgresql.py::TestPostgresql::test_replica_method_can_work_without_replication_connection PASSED [ 69%] 3336s tests/test_postgresql.py::TestPostgresql::test_resolve_connection_addresses PASSED [ 70%] 3336s tests/test_postgresql.py::TestPostgresql::test_restart PASSED [ 70%] 3336s tests/test_postgresql.py::TestPostgresql::test_restore_configuration_files PASSED [ 70%] 3336s tests/test_postgresql.py::TestPostgresql::test_save_configuration_files PASSED [ 70%] 3336s tests/test_postgresql.py::TestPostgresql::test_set_enforce_hot_standby_feedback PASSED [ 70%] 3336s tests/test_postgresql.py::TestPostgresql::test_start PASSED [ 70%] 3336s tests/test_postgresql.py::TestPostgresql::test_stop PASSED [ 71%] 3336s tests/test_postgresql.py::TestPostgresql::test_sysid PASSED [ 71%] 3336s tests/test_postgresql.py::TestPostgresql::test_terminate_starting_postmaster PASSED [ 71%] 3336s tests/test_postgresql.py::TestPostgresql::test_timeline_wal_position PASSED [ 71%] 3336s tests/test_postgresql.py::TestPostgresql::test_validator_factory PASSED [ 71%] 3336s tests/test_postgresql.py::TestPostgresql::test_wait_for_port_open PASSED [ 71%] 3336s tests/test_postgresql.py::TestPostgresql::test_wait_for_startup PASSED [ 71%] 3336s tests/test_postgresql.py::TestPostgresql::test_write_pgpass PASSED [ 72%] 3336s tests/test_postgresql.py::TestPostgresql::test_write_postgresql_and_sanitize_auto_conf PASSED [ 72%] 3336s tests/test_postgresql.py::TestPostgresql2::test_available_gucs PASSED [ 72%] 3336s tests/test_postgresql.py::TestPostgresql2::test_cluster_info_query PASSED [ 72%] 3336s tests/test_postgresql.py::TestPostgresql2::test_load_current_server_parameters PASSED [ 72%] 3336s tests/test_postmaster.py::TestPostmasterProcess::test_from_pid PASSED [ 72%] 3336s tests/test_postmaster.py::TestPostmasterProcess::test_from_pidfile PASSED [ 73%] 3336s tests/test_postmaster.py::TestPostmasterProcess::test_init PASSED [ 73%] 3336s tests/test_postmaster.py::TestPostmasterProcess::test_read_postmaster_pidfile PASSED [ 73%] 3336s tests/test_postmaster.py::TestPostmasterProcess::test_signal_kill PASSED [ 73%] 3336s tests/test_postmaster.py::TestPostmasterProcess::test_signal_stop PASSED [ 73%] 3336s tests/test_postmaster.py::TestPostmasterProcess::test_signal_stop_nt PASSED [ 73%] 3336s tests/test_postmaster.py::TestPostmasterProcess::test_start PASSED [ 74%] 3336s tests/test_postmaster.py::TestPostmasterProcess::test_wait_for_user_backends_to_close PASSED [ 74%] 3336s tests/test_raft.py::TestTCPTransport::test__connectIfNecessarySingle PASSED [ 74%] 3336s tests/test_raft.py::TestDynMemberSyncObj::test__SyncObj__doChangeCluster PASSED [ 74%] 3336s tests/test_raft.py::TestDynMemberSyncObj::test_add_member PASSED [ 74%] 3336s tests/test_raft.py::TestDynMemberSyncObj::test_getMembers PASSED [ 74%] 3338s tests/test_raft.py::TestKVStoreTTL::test_delete PASSED [ 75%] 3341s tests/test_raft.py::TestKVStoreTTL::test_expire PASSED [ 75%] 3344s tests/test_raft.py::TestKVStoreTTL::test_on_ready_override PASSED [ 75%] 3344s tests/test_raft.py::TestKVStoreTTL::test_retry PASSED [ 75%] 3345s tests/test_raft.py::TestKVStoreTTL::test_set PASSED [ 75%] 3345s tests/test_raft.py::TestRaft::test_init PASSED [ 75%] 3347s tests/test_raft.py::TestRaft::test_raft PASSED [ 76%] 3347s tests/test_raft_controller.py::TestPatroniRaftController::test_patroni_raft_controller_main PASSED [ 76%] 3347s tests/test_raft_controller.py::TestPatroniRaftController::test_reload_config PASSED [ 76%] 3347s tests/test_raft_controller.py::TestPatroniRaftController::test_run PASSED [ 76%] 3347s tests/test_rewind.py::TestRewind::test__check_timeline_and_lsn PASSED [ 76%] 3347s tests/test_rewind.py::TestRewind::test__get_local_timeline_lsn PASSED [ 76%] 3347s tests/test_rewind.py::TestRewind::test__log_primary_history PASSED [ 77%] 3347s tests/test_rewind.py::TestRewind::test_archive_ready_wals PASSED [ 77%] 3347s tests/test_rewind.py::TestRewind::test_can_rewind PASSED [ 77%] 3347s tests/test_rewind.py::TestRewind::test_check_leader_is_not_in_recovery PASSED [ 77%] 3347s tests/test_rewind.py::TestRewind::test_cleanup_archive_status PASSED [ 77%] 3347s tests/test_rewind.py::TestRewind::test_ensure_checkpoint_after_promote PASSED [ 77%] 3347s tests/test_rewind.py::TestRewind::test_ensure_clean_shutdown PASSED [ 78%] 3347s tests/test_rewind.py::TestRewind::test_execute PASSED [ 78%] 3347s tests/test_rewind.py::TestRewind::test_maybe_clean_pg_replslot PASSED [ 78%] 3347s tests/test_rewind.py::TestRewind::test_pg_rewind PASSED [ 78%] 3347s tests/test_rewind.py::TestRewind::test_read_postmaster_opts PASSED [ 78%] 3347s tests/test_rewind.py::TestRewind::test_single_user_mode PASSED [ 78%] 3347s tests/test_slots.py::TestSlotsHandler::test__ensure_logical_slots_replica PASSED [ 79%] 3347s tests/test_slots.py::TestSlotsHandler::test_advance_physical_slots PASSED [ 79%] 3347s tests/test_slots.py::TestSlotsHandler::test_cascading_replica_sync_replication_slots PASSED [ 79%] 3347s tests/test_slots.py::TestSlotsHandler::test_check_logical_slots_readiness PASSED [ 79%] 3347s tests/test_slots.py::TestSlotsHandler::test_copy_logical_slots PASSED [ 79%] 3347s tests/test_slots.py::TestSlotsHandler::test_fsync_dir PASSED [ 79%] 3347s tests/test_slots.py::TestSlotsHandler::test_on_promote PASSED [ 80%] 3347s tests/test_slots.py::TestSlotsHandler::test_process_permanent_slots PASSED [ 80%] 3347s tests/test_slots.py::TestSlotsHandler::test_slots_advance_thread PASSED [ 80%] 3347s tests/test_slots.py::TestSlotsHandler::test_sync_replication_slots PASSED [ 80%] 3347s tests/test_sync.py::TestSync::test_pick_sync_standby PASSED [ 80%] 3347s tests/test_sync.py::TestSync::test_set_sync_standby PASSED [ 80%] 3347s tests/test_utils.py::TestUtils::test_enable_keepalive PASSED [ 81%] 3347s tests/test_utils.py::TestUtils::test_polling_loop PASSED [ 81%] 3347s tests/test_utils.py::TestUtils::test_unquote PASSED [ 81%] 3347s tests/test_utils.py::TestUtils::test_validate_directory_couldnt_create PASSED [ 81%] 3347s tests/test_utils.py::TestUtils::test_validate_directory_is_not_a_directory PASSED [ 81%] 3347s tests/test_utils.py::TestUtils::test_validate_directory_not_writable PASSED [ 81%] 3347s tests/test_utils.py::TestUtils::test_validate_directory_writable PASSED [ 82%] 3347s tests/test_utils.py::TestRetrySleeper::test_copy PASSED [ 82%] 3347s tests/test_utils.py::TestRetrySleeper::test_deadline PASSED [ 82%] 3347s tests/test_utils.py::TestRetrySleeper::test_maximum_delay PASSED [ 82%] 3347s tests/test_utils.py::TestRetrySleeper::test_reset PASSED [ 82%] 3347s tests/test_utils.py::TestRetrySleeper::test_too_many_tries PASSED [ 82%] 3347s tests/test_validator.py::TestValidator::test_bin_dir_is_empty PASSED [ 83%] 3347s tests/test_validator.py::TestValidator::test_bin_dir_is_empty_string_excutables_in_path PASSED [ 83%] 3347s tests/test_validator.py::TestValidator::test_bin_dir_is_file PASSED [ 83%] 3347s tests/test_validator.py::TestValidator::test_complete_config PASSED [ 83%] 3347s tests/test_validator.py::TestValidator::test_data_dir_contains_pg_version PASSED [ 83%] 3347s tests/test_validator.py::TestValidator::test_data_dir_is_empty_string PASSED [ 83%] 3347s tests/test_validator.py::TestValidator::test_directory_contains PASSED [ 84%] 3347s tests/test_validator.py::TestValidator::test_empty_config PASSED [ 84%] 3347s tests/test_validator.py::TestValidator::test_failover_priority_int PASSED [ 84%] 3347s tests/test_validator.py::TestValidator::test_one_of PASSED [ 84%] 3347s tests/test_validator.py::TestValidator::test_pg_version_missmatch PASSED [ 84%] 3347s tests/test_validator.py::TestValidator::test_pg_wal_doesnt_exist PASSED [ 84%] 3347s tests/test_validator.py::TestValidator::test_validate_binary_name PASSED [ 85%] 3347s tests/test_validator.py::TestValidator::test_validate_binary_name_empty_string PASSED [ 85%] 3347s tests/test_validator.py::TestValidator::test_validate_binary_name_missing PASSED [ 85%] 3347s tests/test_wale_restore.py::TestWALERestore::test_create_replica_with_s3 PASSED [ 85%] 3347s tests/test_wale_restore.py::TestWALERestore::test_fix_subdirectory_path_if_broken PASSED [ 85%] 3347s tests/test_wale_restore.py::TestWALERestore::test_get_major_version PASSED [ 85%] 3347s tests/test_wale_restore.py::TestWALERestore::test_main PASSED [ 85%] 3347s tests/test_wale_restore.py::TestWALERestore::test_run PASSED [ 86%] 3347s tests/test_wale_restore.py::TestWALERestore::test_should_use_s3_to_create_replica PASSED [ 86%] 3347s tests/test_watchdog.py::TestWatchdog::test_basic_operation PASSED [ 86%] 3347s tests/test_watchdog.py::TestWatchdog::test_config_reload PASSED [ 86%] 3347s tests/test_watchdog.py::TestWatchdog::test_exceptions PASSED [ 86%] 3347s tests/test_watchdog.py::TestWatchdog::test_invalid_timings PASSED [ 86%] 3347s tests/test_watchdog.py::TestWatchdog::test_parse_mode PASSED [ 87%] 3347s tests/test_watchdog.py::TestWatchdog::test_timeout_does_not_ensure_safe_termination PASSED [ 87%] 3347s tests/test_watchdog.py::TestWatchdog::test_unsafe_timeout_disable_watchdog_and_exit PASSED [ 87%] 3347s tests/test_watchdog.py::TestWatchdog::test_unsupported_platform PASSED [ 87%] 3347s tests/test_watchdog.py::TestWatchdog::test_watchdog_activate PASSED [ 87%] 3347s tests/test_watchdog.py::TestWatchdog::test_watchdog_not_activated PASSED [ 87%] 3347s tests/test_watchdog.py::TestNullWatchdog::test_basics PASSED [ 88%] 3347s tests/test_watchdog.py::TestLinuxWatchdogDevice::test__ioctl PASSED [ 88%] 3347s tests/test_watchdog.py::TestLinuxWatchdogDevice::test_basics PASSED [ 88%] 3347s tests/test_watchdog.py::TestLinuxWatchdogDevice::test_error_handling PASSED [ 88%] 3347s tests/test_watchdog.py::TestLinuxWatchdogDevice::test_is_healthy PASSED [ 88%] 3347s tests/test_watchdog.py::TestLinuxWatchdogDevice::test_open PASSED [ 88%] 3347s tests/test_zookeeper.py::TestPatroniSequentialThreadingHandler::test_create_connection PASSED [ 89%] 3347s tests/test_zookeeper.py::TestPatroniSequentialThreadingHandler::test_select PASSED [ 89%] 3347s tests/test_zookeeper.py::TestPatroniKazooClient::test__call PASSED [ 89%] 3347s tests/test_zookeeper.py::TestZooKeeper::test__cluster_loader PASSED [ 89%] 3347s tests/test_zookeeper.py::TestZooKeeper::test__get_citus_cluster PASSED [ 89%] 3347s tests/test_zookeeper.py::TestZooKeeper::test__kazoo_connect PASSED [ 89%] 3347s tests/test_zookeeper.py::TestZooKeeper::test_attempt_to_acquire_leader PASSED [ 90%] 3347s tests/test_zookeeper.py::TestZooKeeper::test_cancel_initialization PASSED [ 90%] 3347s tests/test_zookeeper.py::TestZooKeeper::test_delete_cluster PASSED [ 90%] 3347s tests/test_zookeeper.py::TestZooKeeper::test_delete_leader PASSED [ 90%] 3347s tests/test_zookeeper.py::TestZooKeeper::test_get_children PASSED [ 90%] 3347s tests/test_zookeeper.py::TestZooKeeper::test_get_citus_coordinator PASSED [ 90%] 3347s tests/test_zookeeper.py::TestZooKeeper::test_get_cluster PASSED [ 91%] 3347s tests/test_zookeeper.py::TestZooKeeper::test_get_node PASSED [ 91%] 3347s tests/test_zookeeper.py::TestZooKeeper::test_initialize PASSED [ 91%] 3347s tests/test_zookeeper.py::TestZooKeeper::test_reload_config PASSED [ 91%] 3347s tests/test_zookeeper.py::TestZooKeeper::test_set_config_value PASSED [ 91%] 3347s tests/test_zookeeper.py::TestZooKeeper::test_set_failover_value PASSED [ 91%] 3347s tests/test_zookeeper.py::TestZooKeeper::test_set_history_value PASSED [ 92%] 3347s tests/test_zookeeper.py::TestZooKeeper::test_sync_state PASSED [ 92%] 3347s tests/test_zookeeper.py::TestZooKeeper::test_take_leader PASSED [ 92%] 3347s tests/test_zookeeper.py::TestZooKeeper::test_touch_member PASSED [ 92%] 3347s tests/test_zookeeper.py::TestZooKeeper::test_update_leader PASSED [ 92%] 3347s tests/test_zookeeper.py::TestZooKeeper::test_watch PASSED [ 92%] 3347s tests/test_zookeeper.py::TestZooKeeper::test_watcher PASSED [ 93%] 3347s tests/test_zookeeper.py::TestZooKeeper::test_write_leader_optime PASSED [ 93%] 3347s patroni/__init__.py::patroni.parse_version PASSED [ 93%] 3347s patroni/api.py::patroni.api.check_access PASSED [ 93%] 3347s patroni/collections.py::patroni.collections.CaseInsensitiveDict.__len__ PASSED [ 93%] 3347s patroni/collections.py::patroni.collections.CaseInsensitiveDict.__repr__ PASSED [ 93%] 3347s patroni/collections.py::patroni.collections.CaseInsensitiveSet.__len__ PASSED [ 94%] 3347s patroni/collections.py::patroni.collections.CaseInsensitiveSet.__repr__ PASSED [ 94%] 3347s patroni/collections.py::patroni.collections.CaseInsensitiveSet.__str__ SKIPPED [ 94%] 3347s patroni/ctl.py::patroni.ctl.format_pg_version PASSED [ 94%] 3347s patroni/ctl.py::patroni.ctl.parse_dcs PASSED [ 94%] 3347s patroni/ctl.py::patroni.ctl.parse_scheduled PASSED [ 94%] 3348s patroni/ctl.py::patroni.ctl.watching PASSED [ 95%] 3348s patroni/utils.py::patroni.utils.compare_values PASSED [ 95%] 3348s patroni/utils.py::patroni.utils.convert_to_base_unit PASSED [ 95%] 3348s patroni/utils.py::patroni.utils.deep_compare PASSED [ 95%] 3348s patroni/utils.py::patroni.utils.parse_bool PASSED [ 95%] 3349s patroni/utils.py::patroni.utils.parse_int PASSED [ 95%] 3349s patroni/utils.py::patroni.utils.parse_real PASSED [ 96%] 3349s patroni/utils.py::patroni.utils.split_host_port PASSED [ 96%] 3349s patroni/utils.py::patroni.utils.strtod PASSED [ 96%] 3349s patroni/utils.py::patroni.utils.strtol PASSED [ 96%] 3349s patroni/utils.py::patroni.utils.unquote PASSED [ 96%] 3349s patroni/dcs/__init__.py::patroni.dcs.Cluster.__len__ PASSED [ 96%] 3349s patroni/dcs/__init__.py::patroni.dcs.Cluster.timeline PASSED [ 97%] 3349s patroni/dcs/__init__.py::patroni.dcs.ClusterConfig.from_node PASSED [ 97%] 3349s patroni/dcs/__init__.py::patroni.dcs.Failover PASSED [ 97%] 3349s patroni/dcs/__init__.py::patroni.dcs.Failover.__len__ PASSED [ 97%] 3349s patroni/dcs/__init__.py::patroni.dcs.Leader.checkpoint_after_promote PASSED [ 97%] 3349s patroni/dcs/__init__.py::patroni.dcs.Member.from_node PASSED [ 97%] 3349s patroni/dcs/__init__.py::patroni.dcs.Member.patroni_version PASSED [ 98%] 3349s patroni/dcs/__init__.py::patroni.dcs.SyncState.from_node PASSED [ 98%] 3349s patroni/dcs/__init__.py::patroni.dcs.SyncState.matches PASSED [ 98%] 3349s patroni/dcs/__init__.py::patroni.dcs.TimelineHistory.from_node PASSED [ 98%] 3349s patroni/dcs/kubernetes.py::patroni.dcs.kubernetes.Kubernetes.subsets_changed PASSED [ 98%] 3349s patroni/postgresql/bootstrap.py::patroni.postgresql.bootstrap.Bootstrap.process_user_options PASSED [ 98%] 3349s patroni/postgresql/config.py::patroni.postgresql.config.parse_dsn PASSED [ 99%] 3349s patroni/postgresql/config.py::patroni.postgresql.config.read_recovery_param_value PASSED [ 99%] 3349s patroni/postgresql/misc.py::patroni.postgresql.misc.postgres_major_version_to_int PASSED [ 99%] 3349s patroni/postgresql/misc.py::patroni.postgresql.misc.postgres_version_to_int PASSED [ 99%] 3349s patroni/postgresql/sync.py::patroni.postgresql.sync.parse_sync_standby_names PASSED [ 99%] 3349s patroni/scripts/wale_restore.py::patroni.scripts.wale_restore.repr_size PASSED [ 99%] 3351s patroni/scripts/wale_restore.py::patroni.scripts.wale_restore.size_as_bytes PASSED [100%] 3351s 3351s =============================== warnings summary =============================== 3351s ../../../../usr/lib/python3/dist-packages/dateutil/tz/tz.py:37 3351s /usr/lib/python3/dist-packages/dateutil/tz/tz.py:37: DeprecationWarning: datetime.datetime.utcfromtimestamp() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.fromtimestamp(timestamp, datetime.UTC). 3351s EPOCH = datetime.datetime.utcfromtimestamp(0) 3351s 3351s tests/test_ha.py::TestHa::test_scheduled_switchover_from_leader 3351s /tmp/autopkgtest.yyH96f/build.Y0F/src/tests/test_ha.py:787: DeprecationWarning: datetime.datetime.utcnow() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.now(datetime.UTC). 3351s scheduled = datetime.datetime.utcnow().replace(tzinfo=tzutc) 3351s 3351s tests/test_kubernetes.py::TestKubernetesConfigMaps::test__get_citus_cluster 3351s tests/test_kubernetes.py::TestKubernetesConfigMaps::test_delete_leader 3351s tests/test_kubernetes.py::TestKubernetesConfigMaps::test_get_citus_coordinator 3351s tests/test_kubernetes.py::TestKubernetesConfigMaps::test_get_citus_coordinator 3351s tests/test_kubernetes.py::TestKubernetesConfigMaps::test_get_cluster 3351s tests/test_kubernetes.py::TestKubernetesConfigMaps::test_get_cluster 3351s tests/test_kubernetes.py::TestKubernetesEndpointsNoPodIP::test_update_leader 3351s tests/test_kubernetes.py::TestKubernetesEndpoints::test__update_leader_with_retry 3351s tests/test_kubernetes.py::TestKubernetesEndpoints::test_update_leader 3351s /usr/lib/python3/dist-packages/urllib3/_request_methods.py:143: DeprecationWarning: URLs without a scheme (ie 'https://') are deprecated and will raise an error in a future version of urllib3. To avoid this DeprecationWarning ensure all URLs start with 'https://' or 'http://'. Read more in this issue: https://github.com/urllib3/urllib3/issues/2920 3351s return self.urlopen(method, url, **extra_kw) 3351s 3351s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 3351s 3351s ---------- coverage: platform linux, python 3.12.2-final-0 ----------- 3351s Name Stmts Miss Cover Missing 3351s ----------------------------------------------------------------------- 3351s patroni/__init__.py 13 0 100% 3351s patroni/__main__.py 199 1 99% 395 3351s patroni/api.py 768 0 100% 3351s patroni/async_executor.py 96 0 100% 3351s patroni/collections.py 43 3 93% 49, 98, 106 3351s patroni/config.py 416 0 100% 3351s patroni/config_generator.py 210 0 100% 3351s patroni/ctl.py 940 0 100% 3351s patroni/daemon.py 76 0 100% 3351s patroni/dcs/__init__.py 667 0 100% 3351s patroni/dcs/consul.py 482 0 100% 3351s patroni/dcs/etcd3.py 683 0 100% 3351s patroni/dcs/etcd.py 602 0 100% 3351s patroni/dcs/exhibitor.py 60 0 100% 3351s patroni/dcs/kubernetes.py 935 0 100% 3351s patroni/dcs/raft.py 318 0 100% 3351s patroni/dcs/zookeeper.py 287 0 100% 3351s patroni/exceptions.py 16 0 100% 3351s patroni/file_perm.py 43 0 100% 3351s patroni/ha.py 1239 2 99% 1914-1915 3351s patroni/log.py 155 0 100% 3351s patroni/postgresql/__init__.py 826 0 100% 3351s patroni/postgresql/bootstrap.py 253 0 100% 3351s patroni/postgresql/callback_executor.py 55 0 100% 3351s patroni/postgresql/cancellable.py 104 0 100% 3351s patroni/postgresql/citus.py 258 123 52% 46, 49, 59, 63, 108-117, 122-135, 156-159, 178-200, 203-207, 228-244, 247-272, 275-293, 303, 311, 316-319, 333-334, 342-353, 357, 367-371, 407, 418-419 3351s patroni/postgresql/config.py 806 0 100% 3351s patroni/postgresql/connection.py 75 0 100% 3351s patroni/postgresql/misc.py 41 0 100% 3351s patroni/postgresql/postmaster.py 170 0 100% 3351s patroni/postgresql/rewind.py 415 0 100% 3351s patroni/postgresql/slots.py 332 0 100% 3351s patroni/postgresql/sync.py 129 0 100% 3351s patroni/postgresql/validator.py 165 0 100% 3351s patroni/psycopg.py 41 15 63% 19, 25-26, 42, 44-81, 119 3351s patroni/raft_controller.py 22 0 100% 3351s patroni/request.py 62 0 100% 3351s patroni/scripts/__init__.py 0 0 100% 3351s patroni/scripts/aws.py 59 1 98% 86 3351s patroni/scripts/wale_restore.py 207 1 99% 374 3351s patroni/tags.py 35 0 100% 3351s patroni/utils.py 318 0 100% 3351s patroni/validator.py 284 0 100% 3351s patroni/version.py 1 0 100% 3351s patroni/watchdog/__init__.py 2 0 100% 3351s patroni/watchdog/base.py 203 0 100% 3351s patroni/watchdog/linux.py 135 1 99% 36 3351s ----------------------------------------------------------------------- 3351s TOTAL 13246 147 99% 3351s Coverage XML written to file coverage.xml 3351s 3351s ================ 592 passed, 15 skipped, 11 warnings in 29.12s ================= 3352s autopkgtest [13:13:19]: test test: -----------------------] 3352s autopkgtest [13:13:19]: test test: - - - - - - - - - - results - - - - - - - - - - 3352s test PASS 3353s autopkgtest [13:13:20]: @@@@@@@@@@@@@@@@@@@@ summary 3353s acceptance-etcd3 PASS 3353s acceptance-etcd-basic PASS 3353s acceptance-etcd PASS 3353s acceptance-consul SKIP installation fails and skip-not-installable set 3353s acceptance-zookeeper PASS 3353s acceptance-raft PASS 3353s test PASS 3369s Creating nova instance adt-noble-s390x-patroni-20240322-121727-juju-7f2275-prod-proposed-migration-environment-2 from image adt/ubuntu-noble-s390x-server-20240321.img (UUID f7ee8f0f-480f-4014-94f0-3be2a19e259d)... 3369s Creating nova instance adt-noble-s390x-patroni-20240322-121727-juju-7f2275-prod-proposed-migration-environment-2 from image adt/ubuntu-noble-s390x-server-20240321.img (UUID f7ee8f0f-480f-4014-94f0-3be2a19e259d)... 3369s Creating nova instance adt-noble-s390x-patroni-20240322-121727-juju-7f2275-prod-proposed-migration-environment-2 from image adt/ubuntu-noble-s390x-server-20240321.img (UUID f7ee8f0f-480f-4014-94f0-3be2a19e259d)... 3369s Creating nova instance adt-noble-s390x-patroni-20240322-121727-juju-7f2275-prod-proposed-migration-environment-2 from image adt/ubuntu-noble-s390x-server-20240321.img (UUID f7ee8f0f-480f-4014-94f0-3be2a19e259d)... 3369s Creating nova instance adt-noble-s390x-patroni-20240322-121727-juju-7f2275-prod-proposed-migration-environment-2 from image adt/ubuntu-noble-s390x-server-20240321.img (UUID f7ee8f0f-480f-4014-94f0-3be2a19e259d)... 3369s Creating nova instance adt-noble-s390x-patroni-20240322-121727-juju-7f2275-prod-proposed-migration-environment-2 from image adt/ubuntu-noble-s390x-server-20240321.img (UUID f7ee8f0f-480f-4014-94f0-3be2a19e259d)...