0s autopkgtest [19:30:38]: starting date and time: 2024-12-27 19:30:38+0000 0s autopkgtest [19:30:38]: git checkout: 325255d2 Merge branch 'pin-any-arch' into 'ubuntu/production' 0s autopkgtest [19:30:38]: host juju-7f2275-prod-proposed-migration-environment-20; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.xbo69tnn/out --timeout-copy=6000 --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --apt-pocket=proposed=src:sphinx --apt-upgrade patroni --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 --env=ADT_TEST_TRIGGERS=sphinx/8.1.3-3 -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor autopkgtest-ppc64el --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-20@bos03-ppc64el-7.secgroup --name adt-plucky-ppc64el-patroni-20241227-165920-juju-7f2275-prod-proposed-migration-environment-20-b5e15e32-2ed5-4b60-9c8a-ee6f34926235 --image adt/ubuntu-plucky-ppc64el-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-20 --net-id=net_prod-proposed-migration-ppc64el -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,keyserver.ubuntu.com,launchpadlibrarian.net,launchpadcontent.net,launchpad.net,10.24.0.0/24,keystone.ps5.canonical.com,objectstorage.prodstack5.canonical.com,radosgw.ps5.canonical.com'"'"'' --mirror=http://ftpmaster.internal/ubuntu/ 80s autopkgtest [19:31:58]: testbed dpkg architecture: ppc64el 81s autopkgtest [19:31:59]: testbed apt version: 2.9.18 81s autopkgtest [19:31:59]: @@@@@@@@@@@@@@@@@@@@ test bed setup 81s autopkgtest [19:31:59]: testbed release detected to be: None 82s autopkgtest [19:32:00]: updating testbed package index (apt update) 82s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [73.9 kB] 82s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 82s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 82s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 82s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [11.5 kB] 82s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [56.0 kB] 82s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [637 kB] 83s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/restricted Sources [9708 B] 83s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/main ppc64el Packages [57.9 kB] 83s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/restricted ppc64el Packages [756 B] 83s Get:11 http://ftpmaster.internal/ubuntu plucky-proposed/universe ppc64el Packages [497 kB] 83s Get:12 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse ppc64el Packages [4256 B] 83s Fetched 1348 kB in 1s (980 kB/s) 84s Reading package lists... 85s Reading package lists... 85s Building dependency tree... 85s Reading state information... 85s Calculating upgrade... 85s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 85s Reading package lists... 86s Building dependency tree... 86s Reading state information... 86s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 86s autopkgtest [19:32:04]: upgrading testbed (apt dist-upgrade and autopurge) 86s Reading package lists... 86s Building dependency tree... 86s Reading state information... 87s Calculating upgrade...Starting pkgProblemResolver with broken count: 0 87s Starting 2 pkgProblemResolver with broken count: 0 87s Done 87s Entering ResolveByKeep 87s 87s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 88s Reading package lists... 88s Building dependency tree... 88s Reading state information... 88s Starting pkgProblemResolver with broken count: 0 88s Starting 2 pkgProblemResolver with broken count: 0 88s Done 88s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 91s autopkgtest [19:32:09]: testbed running kernel: Linux 6.11.0-8-generic #8-Ubuntu SMP Mon Sep 16 13:49:23 UTC 2024 91s autopkgtest [19:32:09]: @@@@@@@@@@@@@@@@@@@@ apt-source patroni 94s Get:1 http://ftpmaster.internal/ubuntu plucky/universe patroni 3.3.4-1 (dsc) [2870 B] 94s Get:2 http://ftpmaster.internal/ubuntu plucky/universe patroni 3.3.4-1 (tar) [1159 kB] 94s Get:3 http://ftpmaster.internal/ubuntu plucky/universe patroni 3.3.4-1 (diff) [26.5 kB] 94s gpgv: Signature made Sun Nov 17 16:29:00 2024 UTC 94s gpgv: using RSA key 9CA877749FAB2E4FA96862ECDC686A27B43481B0 94s gpgv: Can't check signature: No public key 94s dpkg-source: warning: cannot verify inline signature for ./patroni_3.3.4-1.dsc: no acceptable signature found 94s autopkgtest [19:32:12]: testing package patroni version 3.3.4-1 94s autopkgtest [19:32:12]: build not needed 95s autopkgtest [19:32:13]: test acceptance-etcd3: preparing testbed 95s Reading package lists... 95s Building dependency tree... 95s Reading state information... 95s Starting pkgProblemResolver with broken count: 0 95s Starting 2 pkgProblemResolver with broken count: 0 95s Done 96s The following NEW packages will be installed: 96s etcd-server fonts-font-awesome fonts-lato libio-pty-perl libipc-run-perl 96s libjs-jquery libjs-sphinxdoc libjs-underscore libjson-perl libpq5 96s libpython3.13-minimal libpython3.13-stdlib libtime-duration-perl 96s libtimedate-perl libxslt1.1 moreutils patroni patroni-doc postgresql 96s postgresql-16 postgresql-client-16 postgresql-client-common 96s postgresql-common python3-behave python3-cdiff python3-click 96s python3-colorama python3-coverage python3-dateutil python3-dnspython 96s python3-etcd python3-parse python3-parse-type python3-prettytable 96s python3-psutil python3-psycopg2 python3-six python3-wcwidth python3-ydiff 96s python3.13 python3.13-minimal sphinx-rtd-theme-common ssl-cert 96s 0 upgraded, 43 newly installed, 0 to remove and 0 not upgraded. 96s Need to get 42.3 MB of archives. 96s After this operation, 163 MB of additional disk space will be used. 96s Get:1 http://ftpmaster.internal/ubuntu plucky/main ppc64el fonts-lato all 2.015-1 [2781 kB] 97s Get:2 http://ftpmaster.internal/ubuntu plucky/main ppc64el libjson-perl all 4.10000-1 [81.9 kB] 97s Get:3 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql-client-common all 262 [36.7 kB] 97s Get:4 http://ftpmaster.internal/ubuntu plucky/main ppc64el ssl-cert all 1.1.3ubuntu1 [18.7 kB] 97s Get:5 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql-common all 262 [162 kB] 97s Get:6 http://ftpmaster.internal/ubuntu plucky/main ppc64el libpython3.13-minimal ppc64el 3.13.1-2 [883 kB] 98s Get:7 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3.13-minimal ppc64el 3.13.1-2 [2496 kB] 98s Get:8 http://ftpmaster.internal/ubuntu plucky/universe ppc64el etcd-server ppc64el 3.5.16-3 [10.5 MB] 99s Get:9 http://ftpmaster.internal/ubuntu plucky/main ppc64el fonts-font-awesome all 5.0.10+really4.7.0~dfsg-4.1 [516 kB] 99s Get:10 http://ftpmaster.internal/ubuntu plucky/main ppc64el libio-pty-perl ppc64el 1:1.20-1build3 [32.0 kB] 99s Get:11 http://ftpmaster.internal/ubuntu plucky/main ppc64el libipc-run-perl all 20231003.0-2 [91.5 kB] 99s Get:12 http://ftpmaster.internal/ubuntu plucky/main ppc64el libjs-jquery all 3.6.1+dfsg+~3.5.14-1 [328 kB] 99s Get:13 http://ftpmaster.internal/ubuntu plucky/main ppc64el libjs-underscore all 1.13.4~dfsg+~1.11.4-3 [118 kB] 99s Get:14 http://ftpmaster.internal/ubuntu plucky-proposed/main ppc64el libjs-sphinxdoc all 8.1.3-3 [30.9 kB] 99s Get:15 http://ftpmaster.internal/ubuntu plucky/main ppc64el libpq5 ppc64el 17.2-1 [173 kB] 99s Get:16 http://ftpmaster.internal/ubuntu plucky/main ppc64el libpython3.13-stdlib ppc64el 3.13.1-2 [2131 kB] 99s Get:17 http://ftpmaster.internal/ubuntu plucky/main ppc64el libtime-duration-perl all 1.21-2 [12.3 kB] 99s Get:18 http://ftpmaster.internal/ubuntu plucky/main ppc64el libtimedate-perl all 2.3300-2 [34.0 kB] 99s Get:19 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxslt1.1 ppc64el 1.1.39-0exp1ubuntu2 [191 kB] 99s Get:20 http://ftpmaster.internal/ubuntu plucky/universe ppc64el moreutils ppc64el 0.69-1 [59.1 kB] 99s Get:21 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-ydiff all 1.4.2-1 [19.0 kB] 99s Get:22 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-cdiff all 1.4.2-1 [1778 B] 99s Get:23 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-colorama all 0.4.6-4 [32.1 kB] 99s Get:24 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-click all 8.1.7-2 [79.5 kB] 99s Get:25 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-dateutil all 2.9.0-3 [80.2 kB] 99s Get:26 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-wcwidth all 0.2.13+dfsg1-1 [26.3 kB] 100s Get:27 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-prettytable all 3.12.0-1 [36.5 kB] 100s Get:28 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-psutil ppc64el 5.9.8-2build3 [197 kB] 100s Get:29 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-psycopg2 ppc64el 2.9.10-1 [160 kB] 100s Get:30 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-dnspython all 2.6.1-1ubuntu1 [163 kB] 100s Get:31 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-etcd all 0.4.5-6 [32.1 kB] 100s Get:32 http://ftpmaster.internal/ubuntu plucky/universe ppc64el patroni all 3.3.4-1 [269 kB] 100s Get:33 http://ftpmaster.internal/ubuntu plucky/main ppc64el sphinx-rtd-theme-common all 3.0.2+dfsg-1 [1014 kB] 100s Get:34 http://ftpmaster.internal/ubuntu plucky/universe ppc64el patroni-doc all 3.3.4-1 [508 kB] 100s Get:35 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql-client-16 ppc64el 16.4-3 [1400 kB] 100s Get:36 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql-16 ppc64el 16.4-3 [16.6 MB] 100s Get:37 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql all 16+262 [11.8 kB] 100s Get:38 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-parse all 1.20.2-1 [27.0 kB] 100s Get:39 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-six all 1.17.0-1 [13.2 kB] 100s Get:40 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-parse-type all 0.6.4-1 [23.4 kB] 101s Get:41 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-behave all 1.2.6-6 [98.6 kB] 101s Get:42 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3.13 ppc64el 3.13.1-2 [729 kB] 101s Get:43 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-coverage ppc64el 7.4.4+dfsg1-0ubuntu3 [151 kB] 101s Preconfiguring packages ... 101s Fetched 42.3 MB in 5s (8639 kB/s) 101s Selecting previously unselected package fonts-lato. 101s (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 ... 73900 files and directories currently installed.) 101s Preparing to unpack .../00-fonts-lato_2.015-1_all.deb ... 101s Unpacking fonts-lato (2.015-1) ... 101s Selecting previously unselected package libjson-perl. 101s Preparing to unpack .../01-libjson-perl_4.10000-1_all.deb ... 101s Unpacking libjson-perl (4.10000-1) ... 101s Selecting previously unselected package postgresql-client-common. 101s Preparing to unpack .../02-postgresql-client-common_262_all.deb ... 101s Unpacking postgresql-client-common (262) ... 101s Selecting previously unselected package ssl-cert. 101s Preparing to unpack .../03-ssl-cert_1.1.3ubuntu1_all.deb ... 101s Unpacking ssl-cert (1.1.3ubuntu1) ... 101s Selecting previously unselected package postgresql-common. 101s Preparing to unpack .../04-postgresql-common_262_all.deb ... 101s Adding 'diversion of /usr/bin/pg_config to /usr/bin/pg_config.libpq-dev by postgresql-common' 101s Unpacking postgresql-common (262) ... 101s Selecting previously unselected package libpython3.13-minimal:ppc64el. 101s Preparing to unpack .../05-libpython3.13-minimal_3.13.1-2_ppc64el.deb ... 101s Unpacking libpython3.13-minimal:ppc64el (3.13.1-2) ... 101s Selecting previously unselected package python3.13-minimal. 101s Preparing to unpack .../06-python3.13-minimal_3.13.1-2_ppc64el.deb ... 101s Unpacking python3.13-minimal (3.13.1-2) ... 102s Selecting previously unselected package etcd-server. 102s Preparing to unpack .../07-etcd-server_3.5.16-3_ppc64el.deb ... 102s Unpacking etcd-server (3.5.16-3) ... 102s Selecting previously unselected package fonts-font-awesome. 102s Preparing to unpack .../08-fonts-font-awesome_5.0.10+really4.7.0~dfsg-4.1_all.deb ... 102s Unpacking fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ... 102s Selecting previously unselected package libio-pty-perl. 102s Preparing to unpack .../09-libio-pty-perl_1%3a1.20-1build3_ppc64el.deb ... 102s Unpacking libio-pty-perl (1:1.20-1build3) ... 102s Selecting previously unselected package libipc-run-perl. 102s Preparing to unpack .../10-libipc-run-perl_20231003.0-2_all.deb ... 102s Unpacking libipc-run-perl (20231003.0-2) ... 102s Selecting previously unselected package libjs-jquery. 102s Preparing to unpack .../11-libjs-jquery_3.6.1+dfsg+~3.5.14-1_all.deb ... 102s Unpacking libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 102s Selecting previously unselected package libjs-underscore. 102s Preparing to unpack .../12-libjs-underscore_1.13.4~dfsg+~1.11.4-3_all.deb ... 102s Unpacking libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 102s Selecting previously unselected package libjs-sphinxdoc. 102s Preparing to unpack .../13-libjs-sphinxdoc_8.1.3-3_all.deb ... 102s Unpacking libjs-sphinxdoc (8.1.3-3) ... 102s Selecting previously unselected package libpq5:ppc64el. 102s Preparing to unpack .../14-libpq5_17.2-1_ppc64el.deb ... 102s Unpacking libpq5:ppc64el (17.2-1) ... 102s Selecting previously unselected package libpython3.13-stdlib:ppc64el. 102s Preparing to unpack .../15-libpython3.13-stdlib_3.13.1-2_ppc64el.deb ... 102s Unpacking libpython3.13-stdlib:ppc64el (3.13.1-2) ... 102s Selecting previously unselected package libtime-duration-perl. 102s Preparing to unpack .../16-libtime-duration-perl_1.21-2_all.deb ... 102s Unpacking libtime-duration-perl (1.21-2) ... 102s Selecting previously unselected package libtimedate-perl. 102s Preparing to unpack .../17-libtimedate-perl_2.3300-2_all.deb ... 102s Unpacking libtimedate-perl (2.3300-2) ... 102s Selecting previously unselected package libxslt1.1:ppc64el. 102s Preparing to unpack .../18-libxslt1.1_1.1.39-0exp1ubuntu2_ppc64el.deb ... 102s Unpacking libxslt1.1:ppc64el (1.1.39-0exp1ubuntu2) ... 102s Selecting previously unselected package moreutils. 102s Preparing to unpack .../19-moreutils_0.69-1_ppc64el.deb ... 102s Unpacking moreutils (0.69-1) ... 102s Selecting previously unselected package python3-ydiff. 102s Preparing to unpack .../20-python3-ydiff_1.4.2-1_all.deb ... 102s Unpacking python3-ydiff (1.4.2-1) ... 102s Selecting previously unselected package python3-cdiff. 102s Preparing to unpack .../21-python3-cdiff_1.4.2-1_all.deb ... 102s Unpacking python3-cdiff (1.4.2-1) ... 102s Selecting previously unselected package python3-colorama. 102s Preparing to unpack .../22-python3-colorama_0.4.6-4_all.deb ... 102s Unpacking python3-colorama (0.4.6-4) ... 102s Selecting previously unselected package python3-click. 102s Preparing to unpack .../23-python3-click_8.1.7-2_all.deb ... 102s Unpacking python3-click (8.1.7-2) ... 102s Selecting previously unselected package python3-dateutil. 102s Preparing to unpack .../24-python3-dateutil_2.9.0-3_all.deb ... 102s Unpacking python3-dateutil (2.9.0-3) ... 102s Selecting previously unselected package python3-wcwidth. 102s Preparing to unpack .../25-python3-wcwidth_0.2.13+dfsg1-1_all.deb ... 102s Unpacking python3-wcwidth (0.2.13+dfsg1-1) ... 102s Selecting previously unselected package python3-prettytable. 102s Preparing to unpack .../26-python3-prettytable_3.12.0-1_all.deb ... 102s Unpacking python3-prettytable (3.12.0-1) ... 102s Selecting previously unselected package python3-psutil. 102s Preparing to unpack .../27-python3-psutil_5.9.8-2build3_ppc64el.deb ... 102s Unpacking python3-psutil (5.9.8-2build3) ... 102s Selecting previously unselected package python3-psycopg2. 102s Preparing to unpack .../28-python3-psycopg2_2.9.10-1_ppc64el.deb ... 102s Unpacking python3-psycopg2 (2.9.10-1) ... 102s Selecting previously unselected package python3-dnspython. 102s Preparing to unpack .../29-python3-dnspython_2.6.1-1ubuntu1_all.deb ... 102s Unpacking python3-dnspython (2.6.1-1ubuntu1) ... 102s Selecting previously unselected package python3-etcd. 102s Preparing to unpack .../30-python3-etcd_0.4.5-6_all.deb ... 102s Unpacking python3-etcd (0.4.5-6) ... 102s Selecting previously unselected package patroni. 102s Preparing to unpack .../31-patroni_3.3.4-1_all.deb ... 102s Unpacking patroni (3.3.4-1) ... 102s Selecting previously unselected package sphinx-rtd-theme-common. 102s Preparing to unpack .../32-sphinx-rtd-theme-common_3.0.2+dfsg-1_all.deb ... 102s Unpacking sphinx-rtd-theme-common (3.0.2+dfsg-1) ... 102s Selecting previously unselected package patroni-doc. 102s Preparing to unpack .../33-patroni-doc_3.3.4-1_all.deb ... 102s Unpacking patroni-doc (3.3.4-1) ... 102s Selecting previously unselected package postgresql-client-16. 102s Preparing to unpack .../34-postgresql-client-16_16.4-3_ppc64el.deb ... 102s Unpacking postgresql-client-16 (16.4-3) ... 103s Selecting previously unselected package postgresql-16. 103s Preparing to unpack .../35-postgresql-16_16.4-3_ppc64el.deb ... 103s Unpacking postgresql-16 (16.4-3) ... 103s Selecting previously unselected package postgresql. 103s Preparing to unpack .../36-postgresql_16+262_all.deb ... 103s Unpacking postgresql (16+262) ... 103s Selecting previously unselected package python3-parse. 103s Preparing to unpack .../37-python3-parse_1.20.2-1_all.deb ... 103s Unpacking python3-parse (1.20.2-1) ... 103s Selecting previously unselected package python3-six. 103s Preparing to unpack .../38-python3-six_1.17.0-1_all.deb ... 103s Unpacking python3-six (1.17.0-1) ... 103s Selecting previously unselected package python3-parse-type. 103s Preparing to unpack .../39-python3-parse-type_0.6.4-1_all.deb ... 103s Unpacking python3-parse-type (0.6.4-1) ... 103s Selecting previously unselected package python3-behave. 103s Preparing to unpack .../40-python3-behave_1.2.6-6_all.deb ... 103s Unpacking python3-behave (1.2.6-6) ... 103s Selecting previously unselected package python3.13. 103s Preparing to unpack .../41-python3.13_3.13.1-2_ppc64el.deb ... 103s Unpacking python3.13 (3.13.1-2) ... 103s Selecting previously unselected package python3-coverage. 103s Preparing to unpack .../42-python3-coverage_7.4.4+dfsg1-0ubuntu3_ppc64el.deb ... 103s Unpacking python3-coverage (7.4.4+dfsg1-0ubuntu3) ... 103s Setting up postgresql-client-common (262) ... 103s Setting up fonts-lato (2.015-1) ... 103s Setting up libio-pty-perl (1:1.20-1build3) ... 103s Setting up python3-colorama (0.4.6-4) ... 103s Setting up python3-ydiff (1.4.2-1) ... 104s Setting up libpq5:ppc64el (17.2-1) ... 104s Setting up python3-click (8.1.7-2) ... 104s Setting up python3-psutil (5.9.8-2build3) ... 104s Setting up python3-six (1.17.0-1) ... 105s Setting up libpython3.13-minimal:ppc64el (3.13.1-2) ... 105s Setting up python3-wcwidth (0.2.13+dfsg1-1) ... 105s Setting up ssl-cert (1.1.3ubuntu1) ... 105s Created symlink '/etc/systemd/system/multi-user.target.wants/ssl-cert.service' → '/usr/lib/systemd/system/ssl-cert.service'. 106s Setting up python3-psycopg2 (2.9.10-1) ... 106s Setting up libipc-run-perl (20231003.0-2) ... 106s Setting up libtime-duration-perl (1.21-2) ... 106s Setting up libtimedate-perl (2.3300-2) ... 106s Setting up python3-dnspython (2.6.1-1ubuntu1) ... 106s Setting up python3-parse (1.20.2-1) ... 107s Setting up libjson-perl (4.10000-1) ... 107s Setting up libxslt1.1:ppc64el (1.1.39-0exp1ubuntu2) ... 107s Setting up python3.13-minimal (3.13.1-2) ... 107s Setting up python3-dateutil (2.9.0-3) ... 108s Setting up etcd-server (3.5.16-3) ... 108s info: Selecting UID from range 100 to 999 ... 108s 108s info: Selecting GID from range 100 to 999 ... 108s info: Adding system user `etcd' (UID 107) ... 108s info: Adding new group `etcd' (GID 111) ... 108s info: Adding new user `etcd' (UID 107) with group `etcd' ... 108s info: Creating home directory `/var/lib/etcd/' ... 108s Created symlink '/etc/systemd/system/etcd2.service' → '/usr/lib/systemd/system/etcd.service'. 108s Created symlink '/etc/systemd/system/multi-user.target.wants/etcd.service' → '/usr/lib/systemd/system/etcd.service'. 109s Setting up libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 109s Setting up python3-prettytable (3.12.0-1) ... 109s Setting up libpython3.13-stdlib:ppc64el (3.13.1-2) ... 109s Setting up fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ... 109s Setting up sphinx-rtd-theme-common (3.0.2+dfsg-1) ... 109s Setting up libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 109s Setting up moreutils (0.69-1) ... 109s Setting up python3.13 (3.13.1-2) ... 110s Setting up python3-etcd (0.4.5-6) ... 110s Setting up postgresql-client-16 (16.4-3) ... 111s 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 111s Setting up python3-cdiff (1.4.2-1) ... 111s Setting up python3-coverage (7.4.4+dfsg1-0ubuntu3) ... 111s Setting up python3-parse-type (0.6.4-1) ... 111s Setting up postgresql-common (262) ... 112s Creating config file /etc/postgresql-common/createcluster.conf with new version 112s Building PostgreSQL dictionaries from installed myspell/hunspell packages... 112s Removing obsolete dictionary files: 112s Created symlink '/etc/systemd/system/multi-user.target.wants/postgresql.service' → '/usr/lib/systemd/system/postgresql.service'. 113s Setting up libjs-sphinxdoc (8.1.3-3) ... 113s Setting up python3-behave (1.2.6-6) ... 113s /usr/lib/python3/dist-packages/behave/formatter/ansi_escapes.py:57: SyntaxWarning: invalid escape sequence '\[' 113s _ANSI_ESCAPE_PATTERN = re.compile(u"\x1b\[\d+[mA]", re.UNICODE) 113s /usr/lib/python3/dist-packages/behave/matchers.py:267: SyntaxWarning: invalid escape sequence '\d' 113s """Registers a custom type that will be available to "parse" 113s /usr/lib/python3/dist-packages/behave/formatter/ansi_escapes.py:57: SyntaxWarning: invalid escape sequence '\[' 113s _ANSI_ESCAPE_PATTERN = re.compile(u"\x1b\[\d+[mA]", re.UNICODE) 113s /usr/lib/python3/dist-packages/behave/matchers.py:267: SyntaxWarning: invalid escape sequence '\d' 113s """Registers a custom type that will be available to "parse" 113s Setting up patroni (3.3.4-1) ... 113s Created symlink '/etc/systemd/system/multi-user.target.wants/patroni.service' → '/usr/lib/systemd/system/patroni.service'. 114s Setting up postgresql-16 (16.4-3) ... 115s Creating new PostgreSQL cluster 16/main ... 115s /usr/lib/postgresql/16/bin/initdb -D /var/lib/postgresql/16/main --auth-local peer --auth-host scram-sha-256 --no-instructions 115s The files belonging to this database system will be owned by user "postgres". 115s This user must also own the server process. 115s 115s The database cluster will be initialized with locale "C.UTF-8". 115s The default database encoding has accordingly been set to "UTF8". 115s The default text search configuration will be set to "english". 115s 115s Data page checksums are disabled. 115s 115s fixing permissions on existing directory /var/lib/postgresql/16/main ... ok 115s creating subdirectories ... ok 115s selecting dynamic shared memory implementation ... posix 115s selecting default max_connections ... 100 115s selecting default shared_buffers ... 128MB 115s selecting default time zone ... Etc/UTC 115s creating configuration files ... ok 115s running bootstrap script ... ok 115s performing post-bootstrap initialization ... ok 115s syncing data to disk ... ok 119s Setting up patroni-doc (3.3.4-1) ... 119s Setting up postgresql (16+262) ... 119s Processing triggers for systemd (257-2ubuntu1) ... 119s Processing triggers for man-db (2.13.0-1) ... 120s Processing triggers for libc-bin (2.40-4ubuntu1) ... 121s autopkgtest [19:32:39]: test acceptance-etcd3: debian/tests/acceptance etcd3 121s autopkgtest [19:32:39]: test acceptance-etcd3: [----------------------- 121s dpkg-architecture: warning: cannot determine CC system type, falling back to default (native compilation) 121s ++ ls -1r /usr/lib/postgresql/ 121s ### PostgreSQL 16 acceptance-etcd3 ### 121s + for PG_VERSION in $(ls -1r /usr/lib/postgresql/) 121s + '[' 16 == 10 -o 16 == 11 ']' 121s + echo '### PostgreSQL 16 acceptance-etcd3 ###' 121s + bash -c 'set -o pipefail; ETCD_UNSUPPORTED_ARCH= 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' 122s Dec 27 19:32:40 Feature: basic replication # features/basic_replication.feature:1 122s Dec 27 19:32:40 We should check that the basic bootstrapping, replication and failover works. 122s Dec 27 19:32:40 Scenario: check replication of a single table # features/basic_replication.feature:4 122s Dec 27 19:32:40 Given I start postgres0 # features/steps/basic_replication.py:8 126s Dec 27 19:32:44 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 126s Dec 27 19:32:44 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 126s Dec 27 19:32:44 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 126s Dec 27 19:32:44 Then I receive a response code 200 # features/steps/patroni_api.py:98 126s Dec 27 19:32:44 When I start postgres1 # features/steps/basic_replication.py:8 130s Dec 27 19:32:48 And I configure and start postgres2 with a tag replicatefrom postgres0 # features/steps/cascading_replication.py:7 134s Dec 27 19:32:52 And "sync" key in DCS has leader=postgres0 after 20 seconds # features/steps/cascading_replication.py:23 134s Dec 27 19:32:52 And I add the table foo to postgres0 # features/steps/basic_replication.py:54 135s Dec 27 19:32:52 Then table foo is present on postgres1 after 20 seconds # features/steps/basic_replication.py:93 136s Dec 27 19:32:53 Then table foo is present on postgres2 after 20 seconds # features/steps/basic_replication.py:93 136s Dec 27 19:32:53 136s Dec 27 19:32:53 Scenario: check restart of sync replica # features/basic_replication.feature:17 136s Dec 27 19:32:53 Given I shut down postgres2 # features/steps/basic_replication.py:29 137s Dec 27 19:32:54 Then "sync" key in DCS has sync_standby=postgres1 after 5 seconds # features/steps/cascading_replication.py:23 137s Dec 27 19:32:54 When I start postgres2 # features/steps/basic_replication.py:8 141s Dec 27 19:32:59 And I shut down postgres1 # features/steps/basic_replication.py:29 144s Dec 27 19:33:02 Then "sync" key in DCS has sync_standby=postgres2 after 10 seconds # features/steps/cascading_replication.py:23 144s Dec 27 19:33:02 When I start postgres1 # features/steps/basic_replication.py:8 148s Dec 27 19:33:06 Then "members/postgres1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 148s Dec 27 19:33:06 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 148s Dec 27 19:33:06 And Status code on GET http://127.0.0.1:8009/async is 200 after 3 seconds # features/steps/patroni_api.py:142 148s Dec 27 19:33:06 148s Dec 27 19:33:06 Scenario: check stuck sync replica # features/basic_replication.feature:28 148s Dec 27 19:33:06 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 148s Dec 27 19:33:06 Then I receive a response code 200 # features/steps/patroni_api.py:98 148s Dec 27 19:33:06 And I create table on postgres0 # features/steps/basic_replication.py:73 148s Dec 27 19:33:06 And table mytest is present on postgres1 after 2 seconds # features/steps/basic_replication.py:93 148s Dec 27 19:33:06 And table mytest is present on postgres2 after 2 seconds # features/steps/basic_replication.py:93 148s Dec 27 19:33:06 When I pause wal replay on postgres2 # features/steps/basic_replication.py:64 148s Dec 27 19:33:06 And I load data on postgres0 # features/steps/basic_replication.py:84 148s Dec 27 19:33:06 Then "sync" key in DCS has sync_standby=postgres1 after 15 seconds # features/steps/cascading_replication.py:23 151s Dec 27 19:33:09 And I resume wal replay on postgres2 # features/steps/basic_replication.py:64 152s Dec 27 19:33:09 And Status code on GET http://127.0.0.1:8009/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 152s Dec 27 19:33:09 And Status code on GET http://127.0.0.1:8010/async is 200 after 3 seconds # features/steps/patroni_api.py:142 152s Dec 27 19:33:09 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 152s Dec 27 19:33:10 Then I receive a response code 200 # features/steps/patroni_api.py:98 152s Dec 27 19:33:10 And I drop table on postgres0 # features/steps/basic_replication.py:73 152s Dec 27 19:33:10 152s Dec 27 19:33:10 Scenario: check multi sync replication # features/basic_replication.feature:44 152s Dec 27 19:33:10 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 152s Dec 27 19:33:10 Then I receive a response code 200 # features/steps/patroni_api.py:98 152s Dec 27 19:33:10 Then "sync" key in DCS has sync_standby=postgres1,postgres2 after 10 seconds # features/steps/cascading_replication.py:23 156s Dec 27 19:33:14 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 156s Dec 27 19:33:14 And Status code on GET http://127.0.0.1:8009/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 156s Dec 27 19:33:14 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 156s Dec 27 19:33:14 Then I receive a response code 200 # features/steps/patroni_api.py:98 156s Dec 27 19:33:14 And I shut down postgres1 # features/steps/basic_replication.py:29 159s Dec 27 19:33:17 Then "sync" key in DCS has sync_standby=postgres2 after 10 seconds # features/steps/cascading_replication.py:23 160s Dec 27 19:33:18 When I start postgres1 # features/steps/basic_replication.py:8 164s Dec 27 19:33:22 Then "members/postgres1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 164s Dec 27 19:33:22 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 164s Dec 27 19:33:22 And Status code on GET http://127.0.0.1:8009/async is 200 after 3 seconds # features/steps/patroni_api.py:142 164s Dec 27 19:33:22 164s Dec 27 19:33:22 Scenario: check the basic failover in synchronous mode # features/basic_replication.feature:59 164s Dec 27 19:33:22 Given I run patronictl.py pause batman # features/steps/patroni_api.py:86 166s Dec 27 19:33:24 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 166s Dec 27 19:33:24 When I sleep for 2 seconds # features/steps/patroni_api.py:39 168s Dec 27 19:33:26 And I shut down postgres0 # features/steps/basic_replication.py:29 169s Dec 27 19:33:27 And I run patronictl.py resume batman # features/steps/patroni_api.py:86 171s Dec 27 19:33:29 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 171s Dec 27 19:33:29 And postgres2 role is the primary after 24 seconds # features/steps/basic_replication.py:105 189s Dec 27 19:33:47 And Response on GET http://127.0.0.1:8010/history contains recovery after 10 seconds # features/steps/patroni_api.py:156 192s Dec 27 19:33:50 And there is a postgres2_cb.log with "on_role_change master batman" in postgres2 data directory # features/steps/cascading_replication.py:12 192s Dec 27 19:33:50 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 192s Dec 27 19:33:50 Then I receive a response code 200 # features/steps/patroni_api.py:98 192s Dec 27 19:33:50 When I add the table bar to postgres2 # features/steps/basic_replication.py:54 192s Dec 27 19:33:50 Then table bar is present on postgres1 after 20 seconds # features/steps/basic_replication.py:93 195s Dec 27 19:33:53 And Response on GET http://127.0.0.1:8010/config contains master_start_timeout after 10 seconds # features/steps/patroni_api.py:156 195s Dec 27 19:33:53 195s Dec 27 19:33:53 Scenario: check rejoin of the former primary with pg_rewind # features/basic_replication.feature:75 195s Dec 27 19:33:53 Given I add the table splitbrain to postgres0 # features/steps/basic_replication.py:54 195s Dec 27 19:33:53 And I start postgres0 # features/steps/basic_replication.py:8 195s Dec 27 19:33:53 Then postgres0 role is the secondary after 20 seconds # features/steps/basic_replication.py:105 200s Dec 27 19:33:58 When I add the table buz to postgres2 # features/steps/basic_replication.py:54 200s Dec 27 19:33:58 Then table buz is present on postgres0 after 20 seconds # features/steps/basic_replication.py:93 203s Dec 27 19:34:01 203s Dec 27 19:34:01 @reject-duplicate-name 203s Dec 27 19:34:01 Scenario: check graceful rejection when two nodes have the same name # features/basic_replication.feature:83 203s Dec 27 19:34:01 Given I start duplicate postgres0 on port 8011 # features/steps/basic_replication.py:13 206s Dec 27 19:34:04 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:121 210s Dec 27 19:34:08 210s Dec 27 19:34:08 Feature: cascading replication # features/cascading_replication.feature:1 210s Dec 27 19:34:08 We should check that patroni can do base backup and streaming from the replica 210s Dec 27 19:34:08 Scenario: check a base backup and streaming replication from a replica # features/cascading_replication.feature:4 210s Dec 27 19:34:08 Given I start postgres0 # features/steps/basic_replication.py:8 214s Dec 27 19:34:12 And postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 214s Dec 27 19:34:12 And I configure and start postgres1 with a tag clonefrom true # features/steps/cascading_replication.py:7 218s Dec 27 19:34:16 And replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:112 223s Dec 27 19:34:21 And I create label with "postgres0" in postgres0 data directory # features/steps/cascading_replication.py:18 223s Dec 27 19:34:21 And I create label with "postgres1" in postgres1 data directory # features/steps/cascading_replication.py:18 223s Dec 27 19:34:21 And "members/postgres1" key in DCS has state=running after 12 seconds # features/steps/cascading_replication.py:23 223s Dec 27 19:34:21 And I configure and start postgres2 with a tag replicatefrom postgres1 # features/steps/cascading_replication.py:7 227s Dec 27 19:34:25 Then replication works from postgres0 to postgres2 after 30 seconds # features/steps/basic_replication.py:112 228s Dec 27 19:34:26 And there is a label with "postgres1" in postgres2 data directory # features/steps/cascading_replication.py:12 233s Dec 27 19:34:31 233s SKIP FEATURE citus: Citus extenstion isn't available 233s Dec 27 19:34:31 Feature: citus # features/citus.feature:1 233s Dec 27 19:34:31 We should check that coordinator discovers and registers workers and clients don't have errors when worker cluster switches over 233s Dec 27 19:34:31 Scenario: check that worker cluster is registered in the coordinator # features/citus.feature:4 233s Dec 27 19:34:31 Given I start postgres0 in citus group 0 # None 233s Dec 27 19:34:31 And I start postgres2 in citus group 1 # None 233s Dec 27 19:34:31 Then postgres0 is a leader in a group 0 after 10 seconds # None 233s Dec 27 19:34:31 And postgres2 is a leader in a group 1 after 10 seconds # None 233s Dec 27 19:34:31 When I start postgres1 in citus group 0 # None 233s Dec 27 19:34:31 And I start postgres3 in citus group 1 # None 233s Dec 27 19:34:31 Then replication works from postgres0 to postgres1 after 15 seconds # None 233s Dec 27 19:34:31 Then replication works from postgres2 to postgres3 after 15 seconds # None 233s Dec 27 19:34:31 And postgres0 is registered in the postgres0 as the primary in group 0 after 5 seconds # None 233s Dec 27 19:34:31 And postgres2 is registered in the postgres0 as the primary in group 1 after 5 seconds # None 233s SKIP Scenario check that worker cluster is registered in the coordinator: Citus extenstion isn't available 233s SKIP Scenario coordinator failover updates pg_dist_node: Citus extenstion isn't available 233s SKIP Scenario worker switchover doesn't break client queries on the coordinator: Citus extenstion isn't available 233s SKIP Scenario worker primary restart doesn't break client queries on the coordinator: Citus extenstion isn't available 233s 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 233s Dec 27 19:34:31 233s Dec 27 19:34:31 Scenario: coordinator failover updates pg_dist_node # features/citus.feature:16 233s Dec 27 19:34:31 Given I run patronictl.py failover batman --group 0 --candidate postgres1 --force # None 233s Dec 27 19:34:31 Then postgres1 role is the primary after 10 seconds # None 233s Dec 27 19:34:31 And "members/postgres0" key in a group 0 in DCS has state=running after 15 seconds # None 233s Dec 27 19:34:31 And replication works from postgres1 to postgres0 after 15 seconds # None 233s Dec 27 19:34:31 And postgres1 is registered in the postgres2 as the primary in group 0 after 5 seconds # None 233s Dec 27 19:34:31 And "sync" key in a group 0 in DCS has sync_standby=postgres0 after 15 seconds # None 233s Dec 27 19:34:31 When I run patronictl.py switchover batman --group 0 --candidate postgres0 --force # None 233s Dec 27 19:34:31 Then postgres0 role is the primary after 10 seconds # None 233s Dec 27 19:34:31 And replication works from postgres0 to postgres1 after 15 seconds # None 233s Dec 27 19:34:31 And postgres0 is registered in the postgres2 as the primary in group 0 after 5 seconds # None 233s Dec 27 19:34:31 And "sync" key in a group 0 in DCS has sync_standby=postgres1 after 15 seconds # None 233s Dec 27 19:34:31 233s Dec 27 19:34:31 Scenario: worker switchover doesn't break client queries on the coordinator # features/citus.feature:29 233s Dec 27 19:34:31 Given I create a distributed table on postgres0 # None 233s Dec 27 19:34:31 And I start a thread inserting data on postgres0 # None 233s Dec 27 19:34:31 When I run patronictl.py switchover batman --group 1 --force # None 233s Dec 27 19:34:31 Then I receive a response returncode 0 # None 233s Dec 27 19:34:31 And postgres3 role is the primary after 10 seconds # None 233s Dec 27 19:34:31 And "members/postgres2" key in a group 1 in DCS has state=running after 15 seconds # None 233s Dec 27 19:34:31 And replication works from postgres3 to postgres2 after 15 seconds # None 233s Dec 27 19:34:31 And postgres3 is registered in the postgres0 as the primary in group 1 after 5 seconds # None 233s Dec 27 19:34:31 And "sync" key in a group 1 in DCS has sync_standby=postgres2 after 15 seconds # None 233s Dec 27 19:34:31 And a thread is still alive # None 233s Dec 27 19:34:31 When I run patronictl.py switchover batman --group 1 --force # None 233s Dec 27 19:34:31 Then I receive a response returncode 0 # None 233s Dec 27 19:34:31 And postgres2 role is the primary after 10 seconds # None 233s Dec 27 19:34:31 And replication works from postgres2 to postgres3 after 15 seconds # None 233s Dec 27 19:34:31 And postgres2 is registered in the postgres0 as the primary in group 1 after 5 seconds # None 233s Dec 27 19:34:31 And "sync" key in a group 1 in DCS has sync_standby=postgres3 after 15 seconds # None 233s Dec 27 19:34:31 And a thread is still alive # None 233s Dec 27 19:34:31 When I stop a thread # None 233s Dec 27 19:34:31 Then a distributed table on postgres0 has expected rows # None 233s Dec 27 19:34:31 233s Dec 27 19:34:31 Scenario: worker primary restart doesn't break client queries on the coordinator # features/citus.feature:50 233s Dec 27 19:34:31 Given I cleanup a distributed table on postgres0 # None 233s Dec 27 19:34:31 And I start a thread inserting data on postgres0 # None 233s Dec 27 19:34:31 When I run patronictl.py restart batman postgres2 --group 1 --force # None 233s Dec 27 19:34:31 Then I receive a response returncode 0 # None 233s Dec 27 19:34:31 And postgres2 role is the primary after 10 seconds # None 233s Dec 27 19:34:31 And replication works from postgres2 to postgres3 after 15 seconds # None 233s Dec 27 19:34:31 And postgres2 is registered in the postgres0 as the primary in group 1 after 5 seconds # None 233s Dec 27 19:34:31 And a thread is still alive # None 233s Dec 27 19:34:31 When I stop a thread # None 233s Dec 27 19:34:31 Then a distributed table on postgres0 has expected rows # None 233s Dec 27 19:34:31 233s Dec 27 19:34:31 Scenario: check that in-flight transaction is rolled back after timeout when other workers need to change pg_dist_node # features/citus.feature:62 233s Dec 27 19:34:31 Given I start postgres4 in citus group 2 # None 233s Dec 27 19:34:31 Then postgres4 is a leader in a group 2 after 10 seconds # None 233s Dec 27 19:34:31 And "members/postgres4" key in a group 2 in DCS has role=master after 3 seconds # None 233s Dec 27 19:34:31 When I run patronictl.py edit-config batman --group 2 -s ttl=20 --force # None 233s Dec 27 19:34:31 Then I receive a response returncode 0 # None 233s Dec 27 19:34:31 And I receive a response output "+ttl: 20" # None 233s Dec 27 19:34:31 Then postgres4 is registered in the postgres2 as the primary in group 2 after 5 seconds # None 233s Dec 27 19:34:31 When I shut down postgres4 # None 233s Dec 27 19:34:31 Then there is a transaction in progress on postgres0 changing pg_dist_node after 5 seconds # None 233s Dec 27 19:34:31 When I run patronictl.py restart batman postgres2 --group 1 --force # None 233s Dec 27 19:34:31 Then a transaction finishes in 20 seconds # None 233s Dec 27 19:34:31 233s Dec 27 19:34:31 Feature: custom bootstrap # features/custom_bootstrap.feature:1 233s Dec 27 19:34:31 We should check that patroni can bootstrap a new cluster from a backup 233s Dec 27 19:34:31 Scenario: clone existing cluster using pg_basebackup # features/custom_bootstrap.feature:4 233s Dec 27 19:34:31 Given I start postgres0 # features/steps/basic_replication.py:8 237s Dec 27 19:34:35 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 238s Dec 27 19:34:36 When I add the table foo to postgres0 # features/steps/basic_replication.py:54 238s Dec 27 19:34:36 And I start postgres1 in a cluster batman1 as a clone of postgres0 # features/steps/custom_bootstrap.py:6 243s Dec 27 19:34:41 Then postgres1 is a leader of batman1 after 10 seconds # features/steps/custom_bootstrap.py:16 244s Dec 27 19:34:42 Then table foo is present on postgres1 after 10 seconds # features/steps/basic_replication.py:93 244s Dec 27 19:34:42 244s Dec 27 19:34:42 Scenario: make a backup and do a restore into a new cluster # features/custom_bootstrap.feature:12 244s Dec 27 19:34:42 Given I add the table bar to postgres1 # features/steps/basic_replication.py:54 244s Dec 27 19:34:42 And I do a backup of postgres1 # features/steps/custom_bootstrap.py:25 245s Dec 27 19:34:43 When I start postgres2 in a cluster batman2 from backup # features/steps/custom_bootstrap.py:11 250s Dec 27 19:34:48 Then postgres2 is a leader of batman2 after 30 seconds # features/steps/custom_bootstrap.py:16 251s Dec 27 19:34:49 And table bar is present on postgres2 after 10 seconds # features/steps/basic_replication.py:93 257s Dec 27 19:34:55 257s Dec 27 19:34:55 Feature: dcs failsafe mode # features/dcs_failsafe_mode.feature:1 257s Dec 27 19:34:55 We should check the basic dcs failsafe mode functioning 257s Dec 27 19:34:55 Scenario: check failsafe mode can be successfully enabled # features/dcs_failsafe_mode.feature:4 257s Dec 27 19:34:55 Given I start postgres0 # features/steps/basic_replication.py:8 261s Dec 27 19:34:59 And postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 262s Dec 27 19:35:00 Then "config" key in DCS has ttl=30 after 10 seconds # features/steps/cascading_replication.py:23 262s Dec 27 19:35:00 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 262s Dec 27 19:35:00 Then I receive a response code 200 # features/steps/patroni_api.py:98 262s Dec 27 19:35:00 And Response on GET http://127.0.0.1:8008/failsafe contains postgres0 after 10 seconds # features/steps/patroni_api.py:156 263s Dec 27 19:35:01 When I issue a GET request to http://127.0.0.1:8008/failsafe # features/steps/patroni_api.py:61 263s Dec 27 19:35:01 Then I receive a response code 200 # features/steps/patroni_api.py:98 263s Dec 27 19:35:01 And I receive a response postgres0 http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:98 263s Dec 27 19:35:01 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 263s Dec 27 19:35:01 Then I receive a response code 200 # features/steps/patroni_api.py:98 263s Dec 27 19:35:01 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 263s Dec 27 19:35:01 Then I receive a response code 200 # features/steps/patroni_api.py:98 263s SKIP Scenario check one-node cluster is functioning while DCS is down: it is not possible to control state of etcd3 from tests 263s 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 263s Dec 27 19:35:01 263s Dec 27 19:35:01 @dcs-failsafe 263s Dec 27 19:35:01 Scenario: check one-node cluster is functioning while DCS is down # features/dcs_failsafe_mode.feature:20 263s Dec 27 19:35:01 Given DCS is down # None 263s Dec 27 19:35:01 Then Response on GET http://127.0.0.1:8008/primary contains failsafe_mode_is_active after 12 seconds # None 263s Dec 27 19:35:01 And postgres0 role is the primary after 10 seconds # None 263s Dec 27 19:35:01 263s Dec 27 19:35:01 @dcs-failsafe 263s Dec 27 19:35:01 Scenario: check new replica isn't promoted when leader is down and DCS is up # features/dcs_failsafe_mode.feature:26 263s Dec 27 19:35:01 Given DCS is up # None 263s Dec 27 19:35:01 When I do a backup of postgres0 # None 263s Dec 27 19:35:01 And I shut down postgres0 # None 263s Dec 27 19:35:01 When I start postgres1 in a cluster batman from backup with no_leader # None 263s Dec 27 19:35:01 Then postgres1 role is the replica after 12 seconds # None 263s Dec 27 19:35:01 263s Dec 27 19:35:01 Scenario: check leader and replica are both in /failsafe key after leader is back # features/dcs_failsafe_mode.feature:33 263s Dec 27 19:35:01 Given I start postgres0 # features/steps/basic_replication.py:8 263s Dec 27 19:35:01 And I start postgres1 # features/steps/basic_replication.py:8 267s Dec 27 19:35:05 Then "members/postgres0" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 267s Dec 27 19:35:05 And "members/postgres1" key in DCS has state=running after 2 seconds # features/steps/cascading_replication.py:23 268s Dec 27 19:35:06 And Response on GET http://127.0.0.1:8009/failsafe contains postgres1 after 10 seconds # features/steps/patroni_api.py:156 268s Dec 27 19:35:06 When I issue a GET request to http://127.0.0.1:8009/failsafe # features/steps/patroni_api.py:61 268s SKIP Scenario check leader and replica are functioning while DCS is down: it is not possible to control state of etcd3 from tests 268s 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 268s Dec 27 19:35:06 Then I receive a response code 200 # features/steps/patroni_api.py:98 268s Dec 27 19:35:06 And I receive a response postgres0 http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:98 268s Dec 27 19:35:06 And I receive a response postgres1 http://127.0.0.1:8009/patroni # features/steps/patroni_api.py:98 268s Dec 27 19:35:06 268s Dec 27 19:35:06 @dcs-failsafe @slot-advance 268s Dec 27 19:35:06 Scenario: check leader and replica are functioning while DCS is down # features/dcs_failsafe_mode.feature:46 268s Dec 27 19:35:06 Given I get all changes from physical slot dcs_slot_1 on postgres0 # None 268s Dec 27 19:35:06 Then physical slot dcs_slot_1 is in sync between postgres0 and postgres1 after 10 seconds # None 268s Dec 27 19:35:06 And logical slot dcs_slot_0 is in sync between postgres0 and postgres1 after 10 seconds # None 268s Dec 27 19:35:06 And DCS is down # None 268s Dec 27 19:35:06 Then Response on GET http://127.0.0.1:8008/primary contains failsafe_mode_is_active after 12 seconds # None 268s Dec 27 19:35:06 Then postgres0 role is the primary after 10 seconds # None 268s Dec 27 19:35:06 And postgres1 role is the replica after 2 seconds # None 268s Dec 27 19:35:06 And replication works from postgres0 to postgres1 after 10 seconds # None 268s Dec 27 19:35:06 When I get all changes from logical slot dcs_slot_0 on postgres0 # None 268s Dec 27 19:35:06 And I get all changes from physical slot dcs_slot_1 on postgres0 # None 268s Dec 27 19:35:06 Then logical slot dcs_slot_0 is in sync between postgres0 and postgres1 after 20 seconds # None 268s Dec 27 19:35:06 And physical slot dcs_slot_1 is in sync between postgres0 and postgres1 after 10 seconds # None 268s 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 268s Dec 27 19:35:06 268s Dec 27 19:35:06 @dcs-failsafe 268s Dec 27 19:35:06 Scenario: check primary is demoted when one replica is shut down and DCS is down # features/dcs_failsafe_mode.feature:61 268s Dec 27 19:35:06 Given DCS is down # None 268s Dec 27 19:35:06 And I kill postgres1 # None 268s Dec 27 19:35:06 And I kill postmaster on postgres1 # None 268s Dec 27 19:35:06 Then postgres0 role is the replica after 12 seconds # None 268s SKIP Scenario scale to three-node cluster: it is not possible to control state of etcd3 from tests 268s Dec 27 19:35:06 268s Dec 27 19:35:06 @dcs-failsafe 268s Dec 27 19:35:06 Scenario: check known replica is promoted when leader is down and DCS is up # features/dcs_failsafe_mode.feature:68 268s Dec 27 19:35:06 Given I kill postgres0 # None 268s Dec 27 19:35:06 And I shut down postmaster on postgres0 # None 268s Dec 27 19:35:06 And DCS is up # None 268s Dec 27 19:35:06 When I start postgres1 # None 268s Dec 27 19:35:06 Then "members/postgres1" key in DCS has state=running after 10 seconds # None 268s Dec 27 19:35:06 And postgres1 role is the primary after 25 seconds # None 268s SKIP Scenario make sure permanent slots exist on replicas: it is not possible to control state of etcd3 from tests 268s SKIP Scenario check three-node cluster is functioning while DCS is down: it is not possible to control state of etcd3 from tests 268s Dec 27 19:35:06 268s Dec 27 19:35:06 @dcs-failsafe 268s Dec 27 19:35:06 Scenario: scale to three-node cluster # features/dcs_failsafe_mode.feature:77 268s Dec 27 19:35:06 Given I start postgres0 # None 268s Dec 27 19:35:06 And I configure and start postgres2 with a tag replicatefrom postgres0 # None 268s Dec 27 19:35:06 Then "members/postgres2" key in DCS has state=running after 10 seconds # None 268s Dec 27 19:35:06 And "members/postgres0" key in DCS has state=running after 20 seconds # None 268s Dec 27 19:35:06 And Response on GET http://127.0.0.1:8008/failsafe contains postgres2 after 10 seconds # None 268s Dec 27 19:35:06 And replication works from postgres1 to postgres0 after 10 seconds # None 268s Dec 27 19:35:06 And replication works from postgres1 to postgres2 after 10 seconds # None 269s 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 269s Dec 27 19:35:06 269s Dec 27 19:35:06 @dcs-failsafe @slot-advance 269s Dec 27 19:35:06 Scenario: make sure permanent slots exist on replicas # features/dcs_failsafe_mode.feature:88 269s Dec 27 19:35:06 Given I issue a PATCH request to http://127.0.0.1:8009/config with {"slots":{"postgres2":0,"dcs_slot_0":null,"dcs_slot_2":{"type":"logical","database":"postgres","plugin":"test_decoding"}}} # None 269s Dec 27 19:35:06 Then logical slot dcs_slot_2 is in sync between postgres1 and postgres0 after 20 seconds # None 269s Dec 27 19:35:06 And logical slot dcs_slot_2 is in sync between postgres1 and postgres2 after 20 seconds # None 269s Dec 27 19:35:06 When I get all changes from physical slot dcs_slot_1 on postgres1 # None 269s Dec 27 19:35:06 Then physical slot dcs_slot_1 is in sync between postgres1 and postgres0 after 10 seconds # None 269s Dec 27 19:35:06 And physical slot dcs_slot_1 is in sync between postgres1 and postgres2 after 10 seconds # None 269s Dec 27 19:35:06 And physical slot postgres0 is in sync between postgres1 and postgres2 after 10 seconds # None 269s Dec 27 19:35:06 And physical slot postgres2 is in sync between postgres0 and postgres1 after 10 seconds # None 269s Dec 27 19:35:06 269s Dec 27 19:35:06 @dcs-failsafe 269s Dec 27 19:35:06 Scenario: check three-node cluster is functioning while DCS is down # features/dcs_failsafe_mode.feature:99 269s Dec 27 19:35:06 Given DCS is down # None 269s Dec 27 19:35:06 Then Response on GET http://127.0.0.1:8009/primary contains failsafe_mode_is_active after 12 seconds # None 269s Dec 27 19:35:06 Then postgres1 role is the primary after 10 seconds # None 269s Dec 27 19:35:06 And postgres0 role is the replica after 2 seconds # None 269s Dec 27 19:35:06 And postgres2 role is the replica after 2 seconds # None 273s Dec 27 19:35:10 273s Dec 27 19:35:10 @dcs-failsafe @slot-advance 273s Dec 27 19:35:10 Scenario: check that permanent slots are in sync between nodes while DCS is down # features/dcs_failsafe_mode.feature:108 273s Dec 27 19:35:10 Given replication works from postgres1 to postgres0 after 10 seconds # None 273s Dec 27 19:35:10 And replication works from postgres1 to postgres2 after 10 seconds # None 273s Dec 27 19:35:10 When I get all changes from logical slot dcs_slot_2 on postgres1 # None 273s Dec 27 19:35:10 And I get all changes from physical slot dcs_slot_1 on postgres1 # None 273s Dec 27 19:35:10 Then logical slot dcs_slot_2 is in sync between postgres1 and postgres0 after 20 seconds # None 273s Dec 27 19:35:10 And logical slot dcs_slot_2 is in sync between postgres1 and postgres2 after 20 seconds # None 273s Dec 27 19:35:10 And physical slot dcs_slot_1 is in sync between postgres1 and postgres0 after 10 seconds # None 273s Dec 27 19:35:10 And physical slot dcs_slot_1 is in sync between postgres1 and postgres2 after 10 seconds # None 273s Dec 27 19:35:10 And physical slot postgres0 is in sync between postgres1 and postgres2 after 10 seconds # None 273s Dec 27 19:35:10 And physical slot postgres2 is in sync between postgres0 and postgres1 after 10 seconds # None 273s Dec 27 19:35:10 273s Dec 27 19:35:10 Feature: ignored slots # features/ignored_slots.feature:1 273s Dec 27 19:35:10 273s Dec 27 19:35:10 Scenario: check ignored slots aren't removed on failover/switchover # features/ignored_slots.feature:2 273s Dec 27 19:35:10 Given I start postgres1 # features/steps/basic_replication.py:8 277s Dec 27 19:35:15 Then postgres1 is a leader after 10 seconds # features/steps/patroni_api.py:29 277s Dec 27 19:35:15 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 277s Dec 27 19:35:15 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 277s Dec 27 19:35:15 Then I receive a response code 200 # features/steps/patroni_api.py:98 277s Dec 27 19:35:15 And Response on GET http://127.0.0.1:8009/config contains ignore_slots after 10 seconds # features/steps/patroni_api.py:156 277s Dec 27 19:35:15 When I shut down postgres1 # features/steps/basic_replication.py:29 279s Dec 27 19:35:17 And I start postgres1 # features/steps/basic_replication.py:8 282s Dec 27 19:35:20 Then postgres1 is a leader after 10 seconds # features/steps/patroni_api.py:29 283s Dec 27 19:35:21 And "members/postgres1" key in DCS has role=master after 10 seconds # features/steps/cascading_replication.py:23 284s Dec 27 19:35:22 And postgres1 role is the primary after 20 seconds # features/steps/basic_replication.py:105 284s Dec 27 19:35:22 When I create a logical replication slot unmanaged_slot_0 on postgres1 with the test_decoding plugin # features/steps/slots.py:8 284s Dec 27 19:35:22 And I create a logical replication slot unmanaged_slot_1 on postgres1 with the test_decoding plugin # features/steps/slots.py:8 284s Dec 27 19:35:22 And I create a logical replication slot unmanaged_slot_2 on postgres1 with the test_decoding plugin # features/steps/slots.py:8 284s Dec 27 19:35:22 And I create a logical replication slot unmanaged_slot_3 on postgres1 with the test_decoding plugin # features/steps/slots.py:8 284s Dec 27 19:35:22 And I create a logical replication slot dummy_slot on postgres1 with the test_decoding plugin # features/steps/slots.py:8 284s Dec 27 19:35:22 Then postgres1 has a logical replication slot named unmanaged_slot_0 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 284s Dec 27 19:35:22 And postgres1 has a logical replication slot named unmanaged_slot_1 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 284s Dec 27 19:35:22 And postgres1 has a logical replication slot named unmanaged_slot_2 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 284s Dec 27 19:35:22 And postgres1 has a logical replication slot named unmanaged_slot_3 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 284s Dec 27 19:35:22 When I start postgres0 # features/steps/basic_replication.py:8 288s Dec 27 19:35:26 Then "members/postgres0" key in DCS has role=replica after 10 seconds # features/steps/cascading_replication.py:23 288s Dec 27 19:35:26 And postgres0 role is the secondary after 20 seconds # features/steps/basic_replication.py:105 288s Dec 27 19:35:26 And replication works from postgres1 to postgres0 after 20 seconds # features/steps/basic_replication.py:112 293s Dec 27 19:35:31 When I shut down postgres1 # features/steps/basic_replication.py:29 295s Dec 27 19:35:33 Then "members/postgres0" key in DCS has role=master after 10 seconds # features/steps/cascading_replication.py:23 296s Dec 27 19:35:34 When I start postgres1 # features/steps/basic_replication.py:8 300s Dec 27 19:35:38 Then postgres1 role is the secondary after 20 seconds # features/steps/basic_replication.py:105 300s Dec 27 19:35:38 And "members/postgres1" key in DCS has role=replica after 10 seconds # features/steps/cascading_replication.py:23 300s Dec 27 19:35:38 And I sleep for 2 seconds # features/steps/patroni_api.py:39 302s Dec 27 19:35:40 And postgres1 has a logical replication slot named unmanaged_slot_0 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 302s Dec 27 19:35:40 And postgres1 has a logical replication slot named unmanaged_slot_1 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 302s Dec 27 19:35:40 And postgres1 has a logical replication slot named unmanaged_slot_2 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 302s Dec 27 19:35:40 And postgres1 has a logical replication slot named unmanaged_slot_3 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 302s Dec 27 19:35:40 And postgres1 does not have a replication slot named dummy_slot # features/steps/slots.py:40 302s Dec 27 19:35:40 When I shut down postgres0 # features/steps/basic_replication.py:29 304s Dec 27 19:35:42 Then "members/postgres1" key in DCS has role=master after 10 seconds # features/steps/cascading_replication.py:23 305s Dec 27 19:35:43 And postgres1 has a logical replication slot named unmanaged_slot_0 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 305s Dec 27 19:35:43 And postgres1 has a logical replication slot named unmanaged_slot_1 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 305s Dec 27 19:35:43 And postgres1 has a logical replication slot named unmanaged_slot_2 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 305s Dec 27 19:35:43 And postgres1 has a logical replication slot named unmanaged_slot_3 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 307s Dec 27 19:35:45 307s Dec 27 19:35:45 Feature: nostream node # features/nostream_node.feature:1 307s Dec 27 19:35:45 307s Dec 27 19:35:45 Scenario: check nostream node is recovering from archive # features/nostream_node.feature:3 307s Dec 27 19:35:45 When I start postgres0 # features/steps/basic_replication.py:8 311s Dec 27 19:35:49 And I configure and start postgres1 with a tag nostream true # features/steps/cascading_replication.py:7 315s Dec 27 19:35:53 Then "members/postgres1" key in DCS has replication_state=in archive recovery after 10 seconds # features/steps/cascading_replication.py:23 316s Dec 27 19:35:54 And replication works from postgres0 to postgres1 after 30 seconds # features/steps/basic_replication.py:112 320s Dec 27 19:35:58 320s Dec 27 19:35:58 @slot-advance 320s Dec 27 19:35:58 Scenario: check permanent logical replication slots are not copied # features/nostream_node.feature:10 320s Dec 27 19:35:58 When I issue a PATCH request to http://127.0.0.1:8008/config with {"postgresql": {"parameters": {"wal_level": "logical"}}, "slots":{"test_logical":{"type":"logical","database":"postgres","plugin":"test_decoding"}}} # features/steps/patroni_api.py:71 320s Dec 27 19:35:58 Then I receive a response code 200 # features/steps/patroni_api.py:98 320s Dec 27 19:35:58 When I run patronictl.py restart batman postgres0 --force # features/steps/patroni_api.py:86 324s Dec 27 19:36:02 Then postgres0 has a logical replication slot named test_logical with the test_decoding plugin after 10 seconds # features/steps/slots.py:19 325s Dec 27 19:36:03 When I configure and start postgres2 with a tag replicatefrom postgres1 # features/steps/cascading_replication.py:7 329s Dec 27 19:36:07 Then "members/postgres2" key in DCS has replication_state=streaming after 10 seconds # features/steps/cascading_replication.py:23 336s Dec 27 19:36:14 And postgres1 does not have a replication slot named test_logical # features/steps/slots.py:40 336s Dec 27 19:36:14 And postgres2 does not have a replication slot named test_logical # features/steps/slots.py:40 342s Dec 27 19:36:20 342s Dec 27 19:36:20 Feature: patroni api # features/patroni_api.feature:1 342s Dec 27 19:36:20 We should check that patroni correctly responds to valid and not-valid API requests. 342s Dec 27 19:36:20 Scenario: check API requests on a stand-alone server # features/patroni_api.feature:4 342s Dec 27 19:36:20 Given I start postgres0 # features/steps/basic_replication.py:8 346s Dec 27 19:36:24 And postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 346s Dec 27 19:36:24 When I issue a GET request to http://127.0.0.1:8008/ # features/steps/patroni_api.py:61 346s Dec 27 19:36:24 Then I receive a response code 200 # features/steps/patroni_api.py:98 346s Dec 27 19:36:24 And I receive a response state running # features/steps/patroni_api.py:98 346s Dec 27 19:36:24 And I receive a response role master # features/steps/patroni_api.py:98 346s Dec 27 19:36:24 When I issue a GET request to http://127.0.0.1:8008/standby_leader # features/steps/patroni_api.py:61 346s Dec 27 19:36:24 Then I receive a response code 503 # features/steps/patroni_api.py:98 346s Dec 27 19:36:24 When I issue a GET request to http://127.0.0.1:8008/health # features/steps/patroni_api.py:61 347s Dec 27 19:36:25 Then I receive a response code 200 # features/steps/patroni_api.py:98 347s Dec 27 19:36:25 When I issue a GET request to http://127.0.0.1:8008/replica # features/steps/patroni_api.py:61 347s Dec 27 19:36:25 Then I receive a response code 503 # features/steps/patroni_api.py:98 347s Dec 27 19:36:25 When I issue a POST request to http://127.0.0.1:8008/reinitialize with {"force": true} # features/steps/patroni_api.py:71 347s Dec 27 19:36:25 Then I receive a response code 503 # features/steps/patroni_api.py:98 347s Dec 27 19:36:25 And I receive a response text I am the leader, can not reinitialize # features/steps/patroni_api.py:98 347s Dec 27 19:36:25 When I run patronictl.py switchover batman --master postgres0 --force # features/steps/patroni_api.py:86 349s Dec 27 19:36:27 Then I receive a response returncode 1 # features/steps/patroni_api.py:98 349s Dec 27 19:36:27 And I receive a response output "Error: No candidates found to switchover to" # features/steps/patroni_api.py:98 349s Dec 27 19:36:27 When I issue a POST request to http://127.0.0.1:8008/switchover with {"leader": "postgres0"} # features/steps/patroni_api.py:71 349s Dec 27 19:36:27 Then I receive a response code 412 # features/steps/patroni_api.py:98 349s Dec 27 19:36:27 And I receive a response text switchover is not possible: cluster does not have members except leader # features/steps/patroni_api.py:98 349s Dec 27 19:36:27 When I issue an empty POST request to http://127.0.0.1:8008/failover # features/steps/patroni_api.py:66 349s Dec 27 19:36:27 Then I receive a response code 400 # features/steps/patroni_api.py:98 349s Dec 27 19:36:27 When I issue a POST request to http://127.0.0.1:8008/failover with {"foo": "bar"} # features/steps/patroni_api.py:71 349s Dec 27 19:36:27 Then I receive a response code 400 # features/steps/patroni_api.py:98 349s Dec 27 19:36:27 And I receive a response text "Failover could be performed only to a specific candidate" # features/steps/patroni_api.py:98 349s Dec 27 19:36:27 349s Dec 27 19:36:27 Scenario: check local configuration reload # features/patroni_api.feature:32 349s Dec 27 19:36:27 Given I add tag new_tag new_value to postgres0 config # features/steps/patroni_api.py:137 349s Dec 27 19:36:27 And I issue an empty POST request to http://127.0.0.1:8008/reload # features/steps/patroni_api.py:66 349s Dec 27 19:36:27 Then I receive a response code 202 # features/steps/patroni_api.py:98 349s Dec 27 19:36:27 349s Dec 27 19:36:27 Scenario: check dynamic configuration change via DCS # features/patroni_api.feature:37 349s Dec 27 19:36:27 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 349s Dec 27 19:36:27 Then I receive a response code 200 # features/steps/patroni_api.py:98 349s Dec 27 19:36:27 And Response on GET http://127.0.0.1:8008/patroni contains pending_restart after 11 seconds # features/steps/patroni_api.py:156 352s Dec 27 19:36:30 When I issue a GET request to http://127.0.0.1:8008/config # features/steps/patroni_api.py:61 352s Dec 27 19:36:30 Then I receive a response code 200 # features/steps/patroni_api.py:98 352s Dec 27 19:36:30 And I receive a response ttl 20 # features/steps/patroni_api.py:98 352s Dec 27 19:36:30 When I issue a GET request to http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:61 352s Dec 27 19:36:30 Then I receive a response code 200 # features/steps/patroni_api.py:98 352s Dec 27 19:36:30 And I receive a response tags {'new_tag': 'new_value'} # features/steps/patroni_api.py:98 352s Dec 27 19:36:30 And I sleep for 4 seconds # features/steps/patroni_api.py:39 356s Dec 27 19:36:34 356s Dec 27 19:36:34 Scenario: check the scheduled restart # features/patroni_api.feature:49 356s Dec 27 19:36:34 Given I run patronictl.py edit-config -p 'superuser_reserved_connections=6' --force batman # features/steps/patroni_api.py:86 359s Dec 27 19:36:37 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 359s Dec 27 19:36:37 And I receive a response output "+ superuser_reserved_connections: 6" # features/steps/patroni_api.py:98 359s Dec 27 19:36:37 And Response on GET http://127.0.0.1:8008/patroni contains pending_restart after 5 seconds # features/steps/patroni_api.py:156 359s Dec 27 19:36:37 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 359s Dec 27 19:36:37 Then I receive a response code 202 # features/steps/patroni_api.py:98 359s Dec 27 19:36:37 And I sleep for 8 seconds # features/steps/patroni_api.py:39 367s Dec 27 19:36:45 And Response on GET http://127.0.0.1:8008/patroni contains pending_restart after 10 seconds # features/steps/patroni_api.py:156 367s Dec 27 19:36:45 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 367s Dec 27 19:36:45 Then I receive a response code 202 # features/steps/patroni_api.py:98 367s Dec 27 19:36:45 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 374s Dec 27 19:36:52 And postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:105 375s Dec 27 19:36:53 375s Dec 27 19:36:53 Scenario: check API requests for the primary-replica pair in the pause mode # features/patroni_api.feature:63 375s Dec 27 19:36:53 Given I start postgres1 # features/steps/basic_replication.py:8 379s Dec 27 19:36:57 Then replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:112 379s Dec 27 19:36:57 When I run patronictl.py pause batman # features/steps/patroni_api.py:86 381s Dec 27 19:36:59 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 381s Dec 27 19:36:59 When I kill postmaster on postgres1 # features/steps/basic_replication.py:44 381s Dec 27 19:36:59 waiting for server to shut down.... done 381s Dec 27 19:36:59 server stopped 381s Dec 27 19:36:59 And I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:61 381s Dec 27 19:36:59 Then I receive a response code 503 # features/steps/patroni_api.py:98 381s Dec 27 19:36:59 And "members/postgres1" key in DCS has state=stopped after 10 seconds # features/steps/cascading_replication.py:23 383s Dec 27 19:37:01 When I run patronictl.py restart batman postgres1 --force # features/steps/patroni_api.py:86 387s Dec 27 19:37:05 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 387s Dec 27 19:37:05 Then replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:112 388s Dec 27 19:37:06 And I sleep for 2 seconds # features/steps/patroni_api.py:39 390s Dec 27 19:37:08 When I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:61 390s Dec 27 19:37:08 Then I receive a response code 200 # features/steps/patroni_api.py:98 390s Dec 27 19:37:08 And I receive a response state running # features/steps/patroni_api.py:98 390s Dec 27 19:37:08 And I receive a response role replica # features/steps/patroni_api.py:98 390s Dec 27 19:37:08 When I run patronictl.py reinit batman postgres1 --force --wait # features/steps/patroni_api.py:86 394s Dec 27 19:37:12 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 394s Dec 27 19:37:12 And I receive a response output "Success: reinitialize for member postgres1" # features/steps/patroni_api.py:98 394s Dec 27 19:37:12 And postgres1 role is the secondary after 30 seconds # features/steps/basic_replication.py:105 395s Dec 27 19:37:13 And replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:112 396s Dec 27 19:37:14 When I run patronictl.py restart batman postgres0 --force # features/steps/patroni_api.py:86 399s Dec 27 19:37:17 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 399s Dec 27 19:37:17 And I receive a response output "Success: restart on member postgres0" # features/steps/patroni_api.py:98 399s Dec 27 19:37:17 And postgres0 role is the primary after 5 seconds # features/steps/basic_replication.py:105 400s Dec 27 19:37:18 400s Dec 27 19:37:18 Scenario: check the switchover via the API in the pause mode # features/patroni_api.feature:90 400s Dec 27 19:37:18 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 402s Dec 27 19:37:20 Then I receive a response code 200 # features/steps/patroni_api.py:98 402s Dec 27 19:37:20 And postgres1 is a leader after 5 seconds # features/steps/patroni_api.py:29 402s Dec 27 19:37:20 And postgres1 role is the primary after 10 seconds # features/steps/basic_replication.py:105 403s Dec 27 19:37:21 And postgres0 role is the secondary after 10 seconds # features/steps/basic_replication.py:105 408s Dec 27 19:37:26 And replication works from postgres1 to postgres0 after 20 seconds # features/steps/basic_replication.py:112 408s Dec 27 19:37:26 And "members/postgres0" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 408s Dec 27 19:37:26 When I issue a GET request to http://127.0.0.1:8008/primary # features/steps/patroni_api.py:61 408s Dec 27 19:37:26 Then I receive a response code 503 # features/steps/patroni_api.py:98 408s Dec 27 19:37:26 When I issue a GET request to http://127.0.0.1:8008/replica # features/steps/patroni_api.py:61 408s Dec 27 19:37:26 Then I receive a response code 200 # features/steps/patroni_api.py:98 408s Dec 27 19:37:26 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:61 408s Dec 27 19:37:26 Then I receive a response code 200 # features/steps/patroni_api.py:98 408s Dec 27 19:37:26 When I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:61 408s Dec 27 19:37:26 Then I receive a response code 503 # features/steps/patroni_api.py:98 408s Dec 27 19:37:26 408s Dec 27 19:37:26 Scenario: check the scheduled switchover # features/patroni_api.feature:107 408s Dec 27 19:37:26 Given I issue a scheduled switchover from postgres1 to postgres0 in 10 seconds # features/steps/patroni_api.py:117 411s Dec 27 19:37:29 Then I receive a response returncode 1 # features/steps/patroni_api.py:98 411s Dec 27 19:37:29 And I receive a response output "Can't schedule switchover in the paused state" # features/steps/patroni_api.py:98 411s Dec 27 19:37:29 When I run patronictl.py resume batman # features/steps/patroni_api.py:86 413s Dec 27 19:37:31 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 413s Dec 27 19:37:31 Given I issue a scheduled switchover from postgres1 to postgres0 in 10 seconds # features/steps/patroni_api.py:117 415s Dec 27 19:37:33 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 415s Dec 27 19:37:33 And postgres0 is a leader after 20 seconds # features/steps/patroni_api.py:29 425s Dec 27 19:37:43 And postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:105 425s Dec 27 19:37:43 And postgres1 role is the secondary after 10 seconds # features/steps/basic_replication.py:105 428s Dec 27 19:37:46 And replication works from postgres0 to postgres1 after 25 seconds # features/steps/basic_replication.py:112 428s Dec 27 19:37:46 And "members/postgres1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 429s Dec 27 19:37:47 When I issue a GET request to http://127.0.0.1:8008/primary # features/steps/patroni_api.py:61 429s Dec 27 19:37:47 Then I receive a response code 200 # features/steps/patroni_api.py:98 429s Dec 27 19:37:47 When I issue a GET request to http://127.0.0.1:8008/replica # features/steps/patroni_api.py:61 429s Dec 27 19:37:47 Then I receive a response code 503 # features/steps/patroni_api.py:98 429s Dec 27 19:37:47 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:61 429s Dec 27 19:37:47 Then I receive a response code 503 # features/steps/patroni_api.py:98 429s Dec 27 19:37:47 When I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:61 429s Dec 27 19:37:47 Then I receive a response code 200 # features/steps/patroni_api.py:98 433s Dec 27 19:37:51 433s Dec 27 19:37:51 Feature: permanent slots # features/permanent_slots.feature:1 433s Dec 27 19:37:51 433s Dec 27 19:37:51 Scenario: check that physical permanent slots are created # features/permanent_slots.feature:2 433s Dec 27 19:37:51 Given I start postgres0 # features/steps/basic_replication.py:8 437s Dec 27 19:37:55 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 437s Dec 27 19:37:55 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 437s Dec 27 19:37:55 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 438s Dec 27 19:37:55 Then I receive a response code 200 # features/steps/patroni_api.py:98 438s Dec 27 19:37:55 And Response on GET http://127.0.0.1:8008/config contains slots after 10 seconds # features/steps/patroni_api.py:156 438s Dec 27 19:37:56 When I start postgres1 # features/steps/basic_replication.py:8 442s Dec 27 19:38:00 And I configure and start postgres2 with a tag nofailover true # features/steps/cascading_replication.py:7 446s Dec 27 19:38:04 And I configure and start postgres3 with a tag replicatefrom postgres2 # features/steps/cascading_replication.py:7 450s Dec 27 19:38:08 Then postgres0 has a physical replication slot named test_physical after 10 seconds # features/steps/slots.py:80 450s Dec 27 19:38:08 And postgres0 has a physical replication slot named postgres1 after 10 seconds # features/steps/slots.py:80 450s Dec 27 19:38:08 And postgres0 has a physical replication slot named postgres2 after 10 seconds # features/steps/slots.py:80 450s Dec 27 19:38:08 And postgres2 has a physical replication slot named postgres3 after 10 seconds # features/steps/slots.py:80 450s Dec 27 19:38:08 And postgres2 does not have a replication slot named test_physical # features/steps/slots.py:40 450s Dec 27 19:38:08 450s Dec 27 19:38:08 @slot-advance 450s Dec 27 19:38:08 Scenario: check that logical permanent slots are created # features/permanent_slots.feature:19 450s Dec 27 19:38:08 Given I run patronictl.py restart batman postgres0 --force # features/steps/patroni_api.py:86 454s Dec 27 19:38:12 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 454s Dec 27 19:38:12 Then postgres0 has a logical replication slot named test_logical with the test_decoding plugin after 10 seconds # features/steps/slots.py:19 455s Dec 27 19:38:13 455s Dec 27 19:38:13 @slot-advance 455s Dec 27 19:38:13 Scenario: check that permanent slots are created on replicas # features/permanent_slots.feature:25 455s Dec 27 19:38:13 Given postgres1 has a logical replication slot named test_logical with the test_decoding plugin after 10 seconds # features/steps/slots.py:19 460s Dec 27 19:38:18 Then Logical slot test_logical is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 460s Dec 27 19:38:18 And Logical slot test_logical is in sync between postgres0 and postgres3 after 10 seconds # features/steps/slots.py:51 461s Dec 27 19:38:19 And postgres1 has a physical replication slot named test_physical after 2 seconds # features/steps/slots.py:80 461s Dec 27 19:38:19 And postgres2 does not have a replication slot named test_logical # features/steps/slots.py:40 461s Dec 27 19:38:19 And postgres3 has a physical replication slot named test_physical after 2 seconds # features/steps/slots.py:80 461s Dec 27 19:38:19 461s Dec 27 19:38:19 @slot-advance 461s Dec 27 19:38:19 Scenario: check permanent physical slots that match with member names # features/permanent_slots.feature:34 461s Dec 27 19:38:19 Given postgres0 has a physical replication slot named postgres3 after 2 seconds # features/steps/slots.py:80 461s Dec 27 19:38:19 And postgres1 has a physical replication slot named postgres0 after 2 seconds # features/steps/slots.py:80 461s Dec 27 19:38:19 And postgres1 has a physical replication slot named postgres3 after 2 seconds # features/steps/slots.py:80 461s Dec 27 19:38:19 And postgres2 does not have a replication slot named postgres0 # features/steps/slots.py:40 461s Dec 27 19:38:19 And postgres2 does not have a replication slot named postgres1 # features/steps/slots.py:40 461s Dec 27 19:38:19 And postgres2 has a physical replication slot named postgres3 after 2 seconds # features/steps/slots.py:80 461s Dec 27 19:38:19 And postgres1 does not have a replication slot named postgres2 # features/steps/slots.py:40 461s Dec 27 19:38:19 And postgres3 does not have a replication slot named postgres2 # features/steps/slots.py:40 461s Dec 27 19:38:19 461s Dec 27 19:38:19 @slot-advance 461s Dec 27 19:38:19 Scenario: check that permanent slots are advanced on replicas # features/permanent_slots.feature:45 461s Dec 27 19:38:19 Given I add the table replicate_me to postgres0 # features/steps/basic_replication.py:54 461s Dec 27 19:38:19 When I get all changes from logical slot test_logical on postgres0 # features/steps/slots.py:70 461s Dec 27 19:38:19 And I get all changes from physical slot test_physical on postgres0 # features/steps/slots.py:75 461s Dec 27 19:38:19 Then Logical slot test_logical is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 463s Dec 27 19:38:21 And Physical slot test_physical is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 463s Dec 27 19:38:21 And Logical slot test_logical is in sync between postgres0 and postgres3 after 10 seconds # features/steps/slots.py:51 463s Dec 27 19:38:21 And Physical slot test_physical is in sync between postgres0 and postgres3 after 10 seconds # features/steps/slots.py:51 463s Dec 27 19:38:21 And Physical slot postgres3 is in sync between postgres2 and postgres0 after 20 seconds # features/steps/slots.py:51 465s Dec 27 19:38:23 And Physical slot postgres3 is in sync between postgres2 and postgres1 after 10 seconds # features/steps/slots.py:51 465s Dec 27 19:38:23 And postgres1 does not have a replication slot named postgres2 # features/steps/slots.py:40 465s Dec 27 19:38:23 And postgres3 does not have a replication slot named postgres2 # features/steps/slots.py:40 465s Dec 27 19:38:23 465s Dec 27 19:38:23 @slot-advance 465s Dec 27 19:38:23 Scenario: check that only permanent slots are written to the /status key # features/permanent_slots.feature:59 465s Dec 27 19:38:23 Given "status" key in DCS has test_physical in slots # features/steps/slots.py:116 465s Dec 27 19:38:23 And "status" key in DCS has postgres0 in slots # features/steps/slots.py:116 465s Dec 27 19:38:23 And "status" key in DCS has postgres1 in slots # features/steps/slots.py:116 465s Dec 27 19:38:23 And "status" key in DCS does not have postgres2 in slots # features/steps/slots.py:122 465s Dec 27 19:38:23 And "status" key in DCS has postgres3 in slots # features/steps/slots.py:116 465s Dec 27 19:38:23 465s Dec 27 19:38:23 Scenario: check permanent physical replication slot after failover # features/permanent_slots.feature:66 465s Dec 27 19:38:23 Given I shut down postgres3 # features/steps/basic_replication.py:29 466s Dec 27 19:38:24 And I shut down postgres2 # features/steps/basic_replication.py:29 467s Dec 27 19:38:25 And I shut down postgres0 # features/steps/basic_replication.py:29 469s Dec 27 19:38:27 Then postgres1 has a physical replication slot named test_physical after 10 seconds # features/steps/slots.py:80 469s Dec 27 19:38:27 And postgres1 has a physical replication slot named postgres0 after 10 seconds # features/steps/slots.py:80 469s Dec 27 19:38:27 And postgres1 has a physical replication slot named postgres3 after 10 seconds # features/steps/slots.py:80 469s Dec 27 19:38:27 When I start postgres0 # features/steps/basic_replication.py:8 473s Dec 27 19:38:31 Then postgres0 role is the replica after 20 seconds # features/steps/basic_replication.py:105 473s Dec 27 19:38:31 And physical replication slot named postgres1 on postgres0 has no xmin value after 10 seconds # features/steps/slots.py:96 473s Dec 27 19:38:31 And physical replication slot named postgres2 on postgres0 has no xmin value after 10 seconds # features/steps/slots.py:96 476s Dec 27 19:38:34 476s Dec 27 19:38:34 Feature: priority replication # features/priority_failover.feature:1 476s Dec 27 19:38:34 We should check that we can give nodes priority during failover 476s Dec 27 19:38:34 Scenario: check failover priority 0 prevents leaderships # features/priority_failover.feature:4 476s Dec 27 19:38:34 Given I configure and start postgres0 with a tag failover_priority 1 # features/steps/cascading_replication.py:7 480s Dec 27 19:38:38 And I configure and start postgres1 with a tag failover_priority 0 # features/steps/cascading_replication.py:7 484s Dec 27 19:38:42 Then replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:112 490s Dec 27 19:38:48 When I shut down postgres0 # features/steps/basic_replication.py:29 492s Dec 27 19:38:50 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:121 494s Dec 27 19:38:52 Then postgres1 role is the secondary after 10 seconds # features/steps/basic_replication.py:105 494s Dec 27 19:38:52 When I start postgres0 # features/steps/basic_replication.py:8 498s Dec 27 19:38:56 Then postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:105 499s Dec 27 19:38:57 499s Dec 27 19:38:57 Scenario: check higher failover priority is respected # features/priority_failover.feature:14 499s Dec 27 19:38:57 Given I configure and start postgres2 with a tag failover_priority 1 # features/steps/cascading_replication.py:7 503s Dec 27 19:39:01 And I configure and start postgres3 with a tag failover_priority 2 # features/steps/cascading_replication.py:7 507s Dec 27 19:39:05 Then replication works from postgres0 to postgres2 after 20 seconds # features/steps/basic_replication.py:112 508s Dec 27 19:39:06 And replication works from postgres0 to postgres3 after 20 seconds # features/steps/basic_replication.py:112 509s Dec 27 19:39:07 When I shut down postgres0 # features/steps/basic_replication.py:29 511s Dec 27 19:39:09 Then postgres3 role is the primary after 10 seconds # features/steps/basic_replication.py:105 511s Dec 27 19:39:09 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:121 511s Dec 27 19:39:09 511s Dec 27 19:39:09 Scenario: check conflicting configuration handling # features/priority_failover.feature:23 511s Dec 27 19:39:09 When I set nofailover tag in postgres2 config # features/steps/patroni_api.py:131 511s Dec 27 19:39:09 And I issue an empty POST request to http://127.0.0.1:8010/reload # features/steps/patroni_api.py:66 511s Dec 27 19:39:09 Then I receive a response code 202 # features/steps/patroni_api.py:98 511s Dec 27 19:39:09 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:121 512s Dec 27 19:39:10 And "members/postgres2" key in DCS has tags={'failover_priority': '1', 'nofailover': True} after 10 seconds # features/steps/cascading_replication.py:23 514s Dec 27 19:39:11 When I issue a POST request to http://127.0.0.1:8010/failover with {"candidate": "postgres2"} # features/steps/patroni_api.py:71 514s Dec 27 19:39:12 Then I receive a response code 412 # features/steps/patroni_api.py:98 514s Dec 27 19:39:12 And I receive a response text "failover is not possible: no good candidates have been found" # features/steps/patroni_api.py:98 514s Dec 27 19:39:12 When I reset nofailover tag in postgres1 config # features/steps/patroni_api.py:131 514s Dec 27 19:39:12 And I issue an empty POST request to http://127.0.0.1:8009/reload # features/steps/patroni_api.py:66 514s Dec 27 19:39:12 Then I receive a response code 202 # features/steps/patroni_api.py:98 514s Dec 27 19:39:12 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:121 516s Dec 27 19:39:14 And "members/postgres1" key in DCS has tags={'failover_priority': '0', 'nofailover': False} after 10 seconds # features/steps/cascading_replication.py:23 517s Dec 27 19:39:15 And I issue a POST request to http://127.0.0.1:8009/failover with {"candidate": "postgres1"} # features/steps/patroni_api.py:71 520s Dec 27 19:39:18 Then I receive a response code 200 # features/steps/patroni_api.py:98 520s Dec 27 19:39:18 And postgres1 role is the primary after 10 seconds # features/steps/basic_replication.py:105 525s Dec 27 19:39:23 525s Dec 27 19:39:23 Feature: recovery # features/recovery.feature:1 525s Dec 27 19:39:23 We want to check that crashed postgres is started back 525s Dec 27 19:39:23 Scenario: check that timeline is not incremented when primary is started after crash # features/recovery.feature:4 525s Dec 27 19:39:23 Given I start postgres0 # features/steps/basic_replication.py:8 529s Dec 27 19:39:27 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 529s Dec 27 19:39:27 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 529s Dec 27 19:39:27 When I start postgres1 # features/steps/basic_replication.py:8 533s Dec 27 19:39:31 And I add the table foo to postgres0 # features/steps/basic_replication.py:54 533s Dec 27 19:39:31 Then table foo is present on postgres1 after 20 seconds # features/steps/basic_replication.py:93 538s Dec 27 19:39:36 When I kill postmaster on postgres0 # features/steps/basic_replication.py:44 538s Dec 27 19:39:36 waiting for server to shut down.... done 538s Dec 27 19:39:36 server stopped 538s Dec 27 19:39:36 Then postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:105 540s Dec 27 19:39:38 When I issue a GET request to http://127.0.0.1:8008/ # features/steps/patroni_api.py:61 540s Dec 27 19:39:38 Then I receive a response code 200 # features/steps/patroni_api.py:98 540s Dec 27 19:39:38 And I receive a response role master # features/steps/patroni_api.py:98 540s Dec 27 19:39:38 And I receive a response timeline 1 # features/steps/patroni_api.py:98 540s Dec 27 19:39:38 And "members/postgres0" key in DCS has state=running after 12 seconds # features/steps/cascading_replication.py:23 541s Dec 27 19:39:39 And replication works from postgres0 to postgres1 after 15 seconds # features/steps/basic_replication.py:112 543s Dec 27 19:39:41 543s Dec 27 19:39:41 Scenario: check immediate failover when master_start_timeout=0 # features/recovery.feature:20 543s Dec 27 19:39:41 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 543s Dec 27 19:39:41 Then I receive a response code 200 # features/steps/patroni_api.py:98 543s Dec 27 19:39:41 And Response on GET http://127.0.0.1:8008/config contains master_start_timeout after 10 seconds # features/steps/patroni_api.py:156 543s Dec 27 19:39:41 When I kill postmaster on postgres0 # features/steps/basic_replication.py:44 543s Dec 27 19:39:41 waiting for server to shut down.... done 543s Dec 27 19:39:41 server stopped 543s Dec 27 19:39:41 Then postgres1 is a leader after 10 seconds # features/steps/patroni_api.py:29 547s Dec 27 19:39:44 And postgres1 role is the primary after 10 seconds # features/steps/basic_replication.py:105 550s Dec 27 19:39:48 550s Dec 27 19:39:48 Feature: standby cluster # features/standby_cluster.feature:1 550s Dec 27 19:39:48 550s Dec 27 19:39:48 Scenario: prepare the cluster with logical slots # features/standby_cluster.feature:2 550s Dec 27 19:39:48 Given I start postgres1 # features/steps/basic_replication.py:8 554s Dec 27 19:39:52 Then postgres1 is a leader after 10 seconds # features/steps/patroni_api.py:29 554s Dec 27 19:39:52 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 554s Dec 27 19:39: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 554s Dec 27 19:39:52 Then I receive a response code 200 # features/steps/patroni_api.py:98 554s Dec 27 19:39:52 And Response on GET http://127.0.0.1:8009/config contains slots after 10 seconds # features/steps/patroni_api.py:156 554s Dec 27 19:39:52 And I sleep for 3 seconds # features/steps/patroni_api.py:39 557s Dec 27 19:39:55 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 557s Dec 27 19:39:55 Then I receive a response code 200 # features/steps/patroni_api.py:98 557s Dec 27 19:39:55 And I do a backup of postgres1 # features/steps/custom_bootstrap.py:25 557s Dec 27 19:39:55 When I start postgres0 # features/steps/basic_replication.py:8 561s Dec 27 19:39:59 Then "members/postgres0" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 562s Dec 27 19:40:00 And replication works from postgres1 to postgres0 after 15 seconds # features/steps/basic_replication.py:112 563s Dec 27 19:40:01 When I issue a GET request to http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:61 563s Dec 27 19:40:01 Then I receive a response code 200 # features/steps/patroni_api.py:98 563s Dec 27 19:40:01 And I receive a response replication_state streaming # features/steps/patroni_api.py:98 563s Dec 27 19:40:01 And "members/postgres0" key in DCS has replication_state=streaming after 10 seconds # features/steps/cascading_replication.py:23 563s Dec 27 19:40:01 563s Dec 27 19:40:01 @slot-advance 563s Dec 27 19:40:01 Scenario: check permanent logical slots are synced to the replica # features/standby_cluster.feature:22 563s Dec 27 19:40:01 Given I run patronictl.py restart batman postgres1 --force # features/steps/patroni_api.py:86 567s Dec 27 19:40:05 Then Logical slot test_logical is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 573s Dec 27 19:40:11 573s Dec 27 19:40:11 Scenario: Detach exiting node from the cluster # features/standby_cluster.feature:26 573s Dec 27 19:40:11 When I shut down postgres1 # features/steps/basic_replication.py:29 575s Dec 27 19:40:13 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 575s Dec 27 19:40:13 And "members/postgres0" key in DCS has role=master after 5 seconds # features/steps/cascading_replication.py:23 576s Dec 27 19:40:14 When I issue a GET request to http://127.0.0.1:8008/ # features/steps/patroni_api.py:61 576s Dec 27 19:40:14 Then I receive a response code 200 # features/steps/patroni_api.py:98 576s Dec 27 19:40:14 576s Dec 27 19:40:14 Scenario: check replication of a single table in a standby cluster # features/standby_cluster.feature:33 576s Dec 27 19:40:14 Given I start postgres1 in a standby cluster batman1 as a clone of postgres0 # features/steps/standby_cluster.py:23 580s Dec 27 19:40:18 Then postgres1 is a leader of batman1 after 10 seconds # features/steps/custom_bootstrap.py:16 581s Dec 27 19:40:19 When I add the table foo to postgres0 # features/steps/basic_replication.py:54 581s Dec 27 19:40:19 Then table foo is present on postgres1 after 20 seconds # features/steps/basic_replication.py:93 581s Dec 27 19:40:19 When I issue a GET request to http://127.0.0.1:8009/patroni # features/steps/patroni_api.py:61 581s Dec 27 19:40:19 Then I receive a response code 200 # features/steps/patroni_api.py:98 581s Dec 27 19:40:19 And I receive a response replication_state streaming # features/steps/patroni_api.py:98 581s Dec 27 19:40:19 And I sleep for 3 seconds # features/steps/patroni_api.py:39 584s Dec 27 19:40:22 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:61 584s Dec 27 19:40:22 Then I receive a response code 503 # features/steps/patroni_api.py:98 584s Dec 27 19:40:22 When I issue a GET request to http://127.0.0.1:8009/standby_leader # features/steps/patroni_api.py:61 584s Dec 27 19:40:22 Then I receive a response code 200 # features/steps/patroni_api.py:98 584s Dec 27 19:40:22 And I receive a response role standby_leader # features/steps/patroni_api.py:98 584s Dec 27 19:40:22 And there is a postgres1_cb.log with "on_role_change standby_leader batman1" in postgres1 data directory # features/steps/cascading_replication.py:12 584s Dec 27 19:40:22 When I start postgres2 in a cluster batman1 # features/steps/standby_cluster.py:12 588s Dec 27 19:40:26 Then postgres2 role is the replica after 24 seconds # features/steps/basic_replication.py:105 588s Dec 27 19:40:26 And postgres2 is replicating from postgres1 after 10 seconds # features/steps/standby_cluster.py:52 589s Dec 27 19:40:27 And table foo is present on postgres2 after 20 seconds # features/steps/basic_replication.py:93 589s Dec 27 19:40:27 When I issue a GET request to http://127.0.0.1:8010/patroni # features/steps/patroni_api.py:61 590s Dec 27 19:40:28 Then I receive a response code 200 # features/steps/patroni_api.py:98 590s Dec 27 19:40:28 And I receive a response replication_state streaming # features/steps/patroni_api.py:98 590s Dec 27 19:40:28 And postgres1 does not have a replication slot named test_logical # features/steps/slots.py:40 590s Dec 27 19:40:28 590s Dec 27 19:40:28 Scenario: check switchover # features/standby_cluster.feature:57 590s Dec 27 19:40:28 Given I run patronictl.py switchover batman1 --force # features/steps/patroni_api.py:86 594s Dec 27 19:40: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 594s Dec 27 19:40:32 And postgres1 is replicating from postgres2 after 32 seconds # features/steps/standby_cluster.py:52 596s Dec 27 19:40: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 596s Dec 27 19:40:34 596s Dec 27 19:40:34 Scenario: check failover # features/standby_cluster.feature:63 596s Dec 27 19:40:34 When I kill postgres2 # features/steps/basic_replication.py:34 597s Dec 27 19:40:35 And I kill postmaster on postgres2 # features/steps/basic_replication.py:44 597s Dec 27 19:40:35 waiting for server to shut down.... done 597s Dec 27 19:40:35 server stopped 597s Dec 27 19:40:35 Then postgres1 is replicating from postgres0 after 32 seconds # features/steps/standby_cluster.py:52 616s Dec 27 19:40:54 And Status code on GET http://127.0.0.1:8009/standby_leader is 200 after 10 seconds # features/steps/patroni_api.py:142 616s Dec 27 19:40:54 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:61 616s Dec 27 19:40:54 Then I receive a response code 503 # features/steps/patroni_api.py:98 616s Dec 27 19:40:54 And I receive a response role standby_leader # features/steps/patroni_api.py:98 616s Dec 27 19:40:54 And replication works from postgres0 to postgres1 after 15 seconds # features/steps/basic_replication.py:112 617s Dec 27 19:40:55 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 621s Dec 27 19:40:59 621s Dec 27 19:40:59 Feature: watchdog # features/watchdog.feature:1 621s Dec 27 19:40:59 Verify that watchdog gets pinged and triggered under appropriate circumstances. 621s Dec 27 19:40:59 Scenario: watchdog is opened and pinged # features/watchdog.feature:4 621s Dec 27 19:40:59 Given I start postgres0 with watchdog # features/steps/watchdog.py:16 625s Dec 27 19:41:03 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 625s Dec 27 19:41:03 And postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:105 625s Dec 27 19:41:03 And postgres0 watchdog has been pinged after 10 seconds # features/steps/watchdog.py:21 626s Dec 27 19:41:04 And postgres0 watchdog has a 15 second timeout # features/steps/watchdog.py:34 626s Dec 27 19:41:04 626s Dec 27 19:41:04 Scenario: watchdog is reconfigured after global ttl changed # features/watchdog.feature:11 626s Dec 27 19:41:04 Given I run patronictl.py edit-config batman -s ttl=30 --force # features/steps/patroni_api.py:86 629s Dec 27 19:41:07 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 629s Dec 27 19:41:07 And I receive a response output "+ttl: 30" # features/steps/patroni_api.py:98 629s Dec 27 19:41:07 When I sleep for 4 seconds # features/steps/patroni_api.py:39 633s Dec 27 19:41:11 Then postgres0 watchdog has a 25 second timeout # features/steps/watchdog.py:34 633s Dec 27 19:41:11 633s Dec 27 19:41:11 Scenario: watchdog is disabled during pause # features/watchdog.feature:18 633s Dec 27 19:41:11 Given I run patronictl.py pause batman # features/steps/patroni_api.py:86 635s Dec 27 19:41:13 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 635s Dec 27 19:41:13 When I sleep for 2 seconds # features/steps/patroni_api.py:39 637s Dec 27 19:41:15 Then postgres0 watchdog has been closed # features/steps/watchdog.py:29 637s Dec 27 19:41:15 637s Dec 27 19:41:15 Scenario: watchdog is opened and pinged after resume # features/watchdog.feature:24 637s Dec 27 19:41:15 Given I reset postgres0 watchdog state # features/steps/watchdog.py:39 637s Dec 27 19:41:15 And I run patronictl.py resume batman # features/steps/patroni_api.py:86 639s Dec 27 19:41:17 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 639s Dec 27 19:41:17 And postgres0 watchdog has been pinged after 10 seconds # features/steps/watchdog.py:21 640s Dec 27 19:41:18 640s Dec 27 19:41:18 Scenario: watchdog is disabled when shutting down # features/watchdog.feature:30 640s Dec 27 19:41:18 Given I shut down postgres0 # features/steps/basic_replication.py:29 642s Dec 27 19:41:20 Then postgres0 watchdog has been closed # features/steps/watchdog.py:29 642s Dec 27 19:41:20 642s Dec 27 19:41:20 Scenario: watchdog is triggered if patroni stops responding # features/watchdog.feature:34 642s Dec 27 19:41:20 Given I reset postgres0 watchdog state # features/steps/watchdog.py:39 642s Dec 27 19:41:20 And I start postgres0 with watchdog # features/steps/watchdog.py:16 645s Dec 27 19:41:23 Then postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:105 647s Dec 27 19:41:25 When postgres0 hangs for 30 seconds # features/steps/watchdog.py:52 647s Dec 27 19:41:25 Then postgres0 watchdog is triggered after 30 seconds # features/steps/watchdog.py:44 674s Dec 27 19:41:52 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.4640.XyJTtRKx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.4686.XBOxfTqx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.4727.XwmxNusx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.4781.XCcimQox 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.4829.XXNLGEBx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.4902.XlSOyWUx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.4953.XKoyXaBx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.4956.XHdsSxWx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.5043.XjCSGfbx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.5147.XzSmqvqx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.5157.XMDaQUCx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.5201.XvuULaix 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.5264.XJYMYFNx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.5376.XMjyvUXx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.5425.XUFcaqHx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.5481.XYnICAtx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.5571.XSSHywFx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.5626.XhpWvgLx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.5725.XdrfMRUx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.5777.XbRnZplx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.5839.XCjvAtLx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.5939.XfktdmTx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.6038.XffnRuXx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.6082.XhgFZZZx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.6145.XAFxUABx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.6186.XCrYIEix 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.6363.XgxtgDDx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.6413.XPpSnybx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.6431.Xxhdtcox 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.6471.XITNDcQx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.6514.XRaCHoAx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.6524.XASWIMDx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.6562.XOTnNXdx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.6608.XHAfEPux 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.6775.XCrSrewx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.6777.XYdNxBex 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.6783.XqpvBmFx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.6918.XSWPQLbx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.6964.XiRkIxpx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.7004.XVBPbtlx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.7051.XvHArNHx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.7093.XFYwRFFx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.7247.XWXLAnGx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.7315.XlZChDdx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.7360.XSASAIIx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.7442.XstQgEYx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.7515.Xvznyxzx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.7589.XXTmnsKx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.7934.XyxHROEx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.7978.Xlcacmax 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.8130.XqRWmTNx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.8193.XnLxazXx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.8254.XevxFMGx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.8368.XIahTINx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.8493.XqjIMfHx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.8623.XqWysejx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.8667.XZFYFQux 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.8669.XDPFhDKx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.8672.XUsoGGdx 675s Dec 27 19:41:53 Combined data file .coverage.autopkgtest.8683.XGjoTimx 677s Dec 27 19:41:55 Name Stmts Miss Cover 677s Dec 27 19:41:55 ------------------------------------------------------------------------------------------------------------- 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/OpenSSL/SSL.py 1159 642 45% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/OpenSSL/__init__.py 4 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/OpenSSL/_util.py 42 14 67% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/OpenSSL/crypto.py 865 658 24% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/OpenSSL/version.py 10 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/_distutils_hack/__init__.py 101 96 5% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/bcrypt/__init__.py 3 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/__about__.py 5 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/__init__.py 3 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/exceptions.py 26 5 81% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/hazmat/__init__.py 2 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/hazmat/_oid.py 135 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/__init__.py 0 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/__init__.py 0 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/_conditional.py 38 17 55% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/binding.py 51 4 92% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/hazmat/decrepit/__init__.py 1 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/hazmat/decrepit/ciphers/__init__.py 1 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/hazmat/decrepit/ciphers/algorithms.py 68 18 74% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/__init__.py 0 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_asymmetric.py 6 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_cipheralgorithm.py 23 4 83% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_serialization.py 79 35 56% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/__init__.py 0 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/dh.py 47 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/dsa.py 55 5 91% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/ec.py 172 22 87% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/ed448.py 45 12 73% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/ed25519.py 43 12 72% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/padding.py 55 23 58% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/rsa.py 93 40 57% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/types.py 19 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/utils.py 14 5 64% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/x448.py 43 12 72% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/x25519.py 41 12 71% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/__init__.py 4 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/algorithms.py 72 15 79% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/base.py 54 12 78% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/modes.py 140 59 58% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/constant_time.py 6 3 50% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/hashes.py 127 20 84% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/serialization/__init__.py 5 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/serialization/base.py 7 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/serialization/ssh.py 775 614 21% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/utils.py 76 28 63% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/x509/__init__.py 70 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/x509/base.py 488 227 53% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/x509/certificate_transparency.py 42 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/x509/extensions.py 1024 552 46% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/x509/general_name.py 166 94 43% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/x509/name.py 236 144 39% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/x509/oid.py 3 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/cryptography/x509/verification.py 12 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dateutil/__init__.py 13 4 69% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dateutil/_common.py 25 15 40% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dateutil/_version.py 11 2 82% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dateutil/parser/__init__.py 33 4 88% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dateutil/parser/_parser.py 811 436 46% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dateutil/parser/isoparser.py 184 150 18% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dateutil/relativedelta.py 240 206 14% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dateutil/tz/__init__.py 4 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dateutil/tz/_common.py 151 114 25% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dateutil/tz/_factories.py 49 21 57% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dateutil/tz/tz.py 795 626 21% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dateutil/tz/win.py 153 149 3% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/__init__.py 3 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/_asyncbackend.py 14 6 57% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/_ddr.py 105 86 18% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/_features.py 44 7 84% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/_immutable_ctx.py 40 5 88% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/asyncbackend.py 44 32 27% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/asyncquery.py 277 242 13% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/edns.py 270 161 40% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/entropy.py 80 49 39% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/enum.py 72 46 36% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/exception.py 60 33 45% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/flags.py 41 14 66% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/grange.py 34 30 12% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/immutable.py 41 30 27% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/inet.py 80 65 19% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/ipv4.py 27 20 26% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/ipv6.py 115 100 13% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/message.py 809 662 18% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/name.py 620 427 31% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/nameserver.py 101 54 47% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/node.py 118 71 40% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/opcode.py 31 7 77% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/query.py 536 462 14% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/quic/__init__.py 26 23 12% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/rcode.py 69 13 81% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/rdata.py 377 269 29% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/rdataclass.py 44 9 80% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/rdataset.py 193 133 31% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/rdatatype.py 214 25 88% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/OPT.py 34 19 44% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/SOA.py 41 26 37% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/TSIG.py 58 42 28% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/ZONEMD.py 43 27 37% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/__init__.py 2 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/rdtypes/__init__.py 2 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/rdtypes/svcbbase.py 397 261 34% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/rdtypes/util.py 191 154 19% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/renderer.py 152 118 22% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/resolver.py 899 719 20% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/reversename.py 33 24 27% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/rrset.py 78 56 28% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/serial.py 93 79 15% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/set.py 149 108 28% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/tokenizer.py 335 279 17% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/transaction.py 271 203 25% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/tsig.py 177 122 31% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/ttl.py 45 38 16% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/version.py 7 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/wire.py 64 42 34% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/xfr.py 148 126 15% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/zone.py 508 383 25% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/zonefile.py 429 380 11% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/dns/zonetypes.py 15 2 87% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/etcd/__init__.py 125 63 50% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/etcd/client.py 380 256 33% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/etcd/lock.py 125 103 18% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/idna/__init__.py 4 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/idna/core.py 292 257 12% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/idna/idnadata.py 4 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/idna/intranges.py 30 24 20% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/idna/package_data.py 1 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/__init__.py 13 2 85% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/__main__.py 199 63 68% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/api.py 780 289 63% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/async_executor.py 96 15 84% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/collections.py 56 6 89% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/config.py 371 94 75% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/config_generator.py 212 159 25% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/daemon.py 76 3 96% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/dcs/__init__.py 654 78 88% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/dcs/etcd3.py 679 125 82% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/dcs/etcd.py 603 253 58% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/dynamic_loader.py 35 7 80% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/exceptions.py 16 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/file_perm.py 43 8 81% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/global_config.py 81 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/ha.py 1270 380 70% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/log.py 221 71 68% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/postgresql/__init__.py 822 173 79% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/postgresql/available_parameters/__init__.py 24 3 88% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/postgresql/bootstrap.py 255 62 76% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/postgresql/callback_executor.py 55 8 85% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/postgresql/cancellable.py 104 41 61% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/postgresql/config.py 838 219 74% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/postgresql/connection.py 75 1 99% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/postgresql/misc.py 43 8 81% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/postgresql/mpp/__init__.py 89 11 88% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/postgresql/postmaster.py 170 85 50% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/postgresql/rewind.py 416 163 61% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/postgresql/slots.py 349 35 90% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/postgresql/sync.py 130 19 85% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/postgresql/validator.py 157 24 85% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/psycopg.py 46 20 57% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/request.py 58 7 88% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/tags.py 38 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/utils.py 370 105 72% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/validator.py 307 214 30% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/version.py 1 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/watchdog/__init__.py 2 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/watchdog/base.py 203 42 79% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/patroni/watchdog/linux.py 135 35 74% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/psutil/__init__.py 951 629 34% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/psutil/_common.py 424 212 50% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/psutil/_compat.py 302 263 13% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/psutil/_pslinux.py 1251 924 26% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/psutil/_psposix.py 96 38 60% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/psycopg2/__init__.py 19 3 84% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/psycopg2/_json.py 64 27 58% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/psycopg2/_range.py 269 172 36% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/psycopg2/errors.py 3 2 33% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/psycopg2/extensions.py 91 25 73% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/urllib3/__init__.py 50 14 72% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/urllib3/_base_connection.py 70 52 26% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/urllib3/_collections.py 234 123 47% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/urllib3/_request_methods.py 53 23 57% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/urllib3/_version.py 2 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/urllib3/connection.py 324 99 69% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/urllib3/connectionpool.py 347 124 64% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/urllib3/contrib/__init__.py 0 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/urllib3/contrib/pyopenssl.py 257 96 63% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/urllib3/exceptions.py 115 32 72% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/urllib3/fields.py 92 73 21% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/urllib3/filepost.py 37 24 35% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/urllib3/poolmanager.py 233 85 64% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/urllib3/response.py 562 274 51% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/urllib3/util/__init__.py 10 0 100% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/urllib3/util/connection.py 66 42 36% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/urllib3/util/proxy.py 13 6 54% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/urllib3/util/request.py 104 49 53% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/urllib3/util/response.py 32 15 53% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/urllib3/util/retry.py 173 49 72% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/urllib3/util/ssl_.py 177 78 56% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/urllib3/util/ssl_match_hostname.py 66 54 18% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/urllib3/util/ssltransport.py 160 112 30% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/urllib3/util/timeout.py 71 14 80% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/urllib3/util/url.py 205 72 65% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/urllib3/util/util.py 26 10 62% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/urllib3/util/wait.py 49 18 63% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/yaml/__init__.py 165 109 34% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/yaml/composer.py 92 17 82% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/yaml/constructor.py 479 276 42% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/yaml/cyaml.py 46 24 48% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/yaml/dumper.py 23 12 48% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/yaml/emitter.py 838 769 8% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/yaml/error.py 58 42 28% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/yaml/events.py 61 6 90% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/yaml/loader.py 47 24 49% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/yaml/nodes.py 29 7 76% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/yaml/parser.py 352 198 44% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/yaml/reader.py 122 34 72% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/yaml/representer.py 248 176 29% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/yaml/resolver.py 135 76 44% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/yaml/scanner.py 758 437 42% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/yaml/serializer.py 85 70 18% 677s Dec 27 19:41:55 /usr/lib/python3/dist-packages/yaml/tokens.py 76 17 78% 677s Dec 27 19:41:55 patroni/__init__.py 13 2 85% 677s Dec 27 19:41:55 patroni/__main__.py 199 199 0% 677s Dec 27 19:41:55 patroni/api.py 780 780 0% 677s Dec 27 19:41:55 patroni/async_executor.py 96 69 28% 677s Dec 27 19:41:55 patroni/collections.py 56 15 73% 677s Dec 27 19:41:55 patroni/config.py 371 196 47% 677s Dec 27 19:41:55 patroni/config_generator.py 212 212 0% 677s Dec 27 19:41:55 patroni/ctl.py 936 411 56% 677s Dec 27 19:41:55 patroni/daemon.py 76 76 0% 677s Dec 27 19:41:55 patroni/dcs/__init__.py 654 274 58% 677s Dec 27 19:41:55 patroni/dcs/consul.py 484 484 0% 677s Dec 27 19:41:55 patroni/dcs/etcd3.py 679 346 49% 677s Dec 27 19:41:55 patroni/dcs/etcd.py 603 277 54% 677s Dec 27 19:41:55 patroni/dcs/exhibitor.py 62 62 0% 677s Dec 27 19:41:55 patroni/dcs/kubernetes.py 940 940 0% 677s Dec 27 19:41:55 patroni/dcs/raft.py 319 319 0% 677s Dec 27 19:41:55 patroni/dcs/zookeeper.py 289 289 0% 677s Dec 27 19:41:55 patroni/dynamic_loader.py 35 7 80% 677s Dec 27 19:41:55 patroni/exceptions.py 16 1 94% 677s Dec 27 19:41:55 patroni/file_perm.py 43 15 65% 677s Dec 27 19:41:55 patroni/global_config.py 81 18 78% 677s Dec 27 19:41:55 patroni/ha.py 1270 1270 0% 677s Dec 27 19:41:55 patroni/log.py 221 175 21% 677s Dec 27 19:41:55 patroni/postgresql/__init__.py 822 652 21% 677s Dec 27 19:41:55 patroni/postgresql/available_parameters/__init__.py 24 3 88% 677s Dec 27 19:41:55 patroni/postgresql/bootstrap.py 255 225 12% 677s Dec 27 19:41:55 patroni/postgresql/callback_executor.py 55 34 38% 677s Dec 27 19:41:55 patroni/postgresql/cancellable.py 104 84 19% 677s Dec 27 19:41:55 patroni/postgresql/config.py 838 718 14% 677s Dec 27 19:41:55 patroni/postgresql/connection.py 75 50 33% 677s Dec 27 19:41:55 patroni/postgresql/misc.py 43 30 30% 677s Dec 27 19:41:55 patroni/postgresql/mpp/__init__.py 89 21 76% 677s Dec 27 19:41:55 patroni/postgresql/mpp/citus.py 259 259 0% 677s Dec 27 19:41:55 patroni/postgresql/postmaster.py 170 139 18% 677s Dec 27 19:41:55 patroni/postgresql/rewind.py 416 416 0% 677s Dec 27 19:41:55 patroni/postgresql/slots.py 349 300 14% 677s Dec 27 19:41:55 patroni/postgresql/sync.py 130 96 26% 677s Dec 27 19:41:55 patroni/postgresql/validator.py 157 52 67% 677s Dec 27 19:41:55 patroni/psycopg.py 46 32 30% 677s Dec 27 19:41:55 patroni/raft_controller.py 22 22 0% 677s Dec 27 19:41:55 patroni/request.py 58 6 90% 677s Dec 27 19:41:55 patroni/scripts/__init__.py 0 0 100% 677s Dec 27 19:41:55 patroni/scripts/aws.py 59 59 0% 677s Dec 27 19:41:55 patroni/scripts/barman/__init__.py 0 0 100% 677s Dec 27 19:41:55 patroni/scripts/barman/cli.py 51 51 0% 677s Dec 27 19:41:55 patroni/scripts/barman/config_switch.py 51 51 0% 677s Dec 27 19:41:55 patroni/scripts/barman/recover.py 37 37 0% 677s Dec 27 19:41:55 patroni/scripts/barman/utils.py 94 94 0% 677s Dec 27 19:41:55 patroni/scripts/wale_restore.py 207 207 0% 677s Dec 27 19:41:55 patroni/tags.py 38 11 71% 677s Dec 27 19:41:55 patroni/utils.py 370 186 50% 677s Dec 27 19:41:55 patroni/validator.py 307 221 28% 677s Dec 27 19:41:55 patroni/version.py 1 0 100% 677s Dec 27 19:41:55 patroni/watchdog/__init__.py 2 2 0% 677s Dec 27 19:41:55 patroni/watchdog/base.py 203 203 0% 677s Dec 27 19:41:55 patroni/watchdog/linux.py 135 135 0% 677s Dec 27 19:41:55 ------------------------------------------------------------------------------------------------------------- 677s Dec 27 19:41:55 TOTAL 53248 31911 40% 677s Dec 27 19:41:55 12 features passed, 0 failed, 1 skipped 677s Dec 27 19:41:55 46 scenarios passed, 0 failed, 14 skipped 677s Dec 27 19:41:55 467 steps passed, 0 failed, 121 skipped, 0 undefined 677s Dec 27 19:41:55 Took 8m23.043s 677s ### End 16 acceptance-etcd3 ### 677s + echo '### End 16 acceptance-etcd3 ###' 677s + rm -f '/tmp/pgpass?' 677s ++ id -u 677s + '[' 1000 -eq 0 ']' 678s autopkgtest [19:41:56]: test acceptance-etcd3: -----------------------] 678s autopkgtest [19:41:56]: test acceptance-etcd3: - - - - - - - - - - results - - - - - - - - - - 678s acceptance-etcd3 PASS 679s autopkgtest [19:41:57]: test acceptance-etcd-basic: preparing testbed 747s autopkgtest [19:43:05]: testbed dpkg architecture: ppc64el 747s autopkgtest [19:43:05]: testbed apt version: 2.9.18 748s autopkgtest [19:43:06]: @@@@@@@@@@@@@@@@@@@@ test bed setup 748s autopkgtest [19:43:06]: testbed release detected to be: plucky 749s autopkgtest [19:43:07]: updating testbed package index (apt update) 749s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [73.9 kB] 749s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 749s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 749s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 749s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [56.0 kB] 749s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [11.5 kB] 749s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [637 kB] 750s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/restricted Sources [9708 B] 750s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/main ppc64el Packages [57.9 kB] 750s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/restricted ppc64el Packages [756 B] 750s Get:11 http://ftpmaster.internal/ubuntu plucky-proposed/universe ppc64el Packages [497 kB] 750s Get:12 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse ppc64el Packages [4256 B] 750s Fetched 1348 kB in 1s (1377 kB/s) 751s Reading package lists... 751s Reading package lists... 751s Building dependency tree... 751s Reading state information... 751s Calculating upgrade... 751s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 752s Reading package lists... 752s Building dependency tree... 752s Reading state information... 752s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 752s autopkgtest [19:43:10]: upgrading testbed (apt dist-upgrade and autopurge) 752s Reading package lists... 752s Building dependency tree... 752s Reading state information... 752s Calculating upgrade...Starting pkgProblemResolver with broken count: 0 753s Starting 2 pkgProblemResolver with broken count: 0 753s Done 753s Entering ResolveByKeep 753s 753s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 753s Reading package lists... 753s Building dependency tree... 753s Reading state information... 754s Starting pkgProblemResolver with broken count: 0 754s Starting 2 pkgProblemResolver with broken count: 0 754s Done 754s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 756s Reading package lists... 757s Building dependency tree... 757s Reading state information... 757s Starting pkgProblemResolver with broken count: 0 757s Starting 2 pkgProblemResolver with broken count: 0 757s Done 757s The following NEW packages will be installed: 757s etcd-server fonts-font-awesome fonts-lato libio-pty-perl libipc-run-perl 757s libjs-jquery libjs-sphinxdoc libjs-underscore libjson-perl libpq5 757s libpython3.13-minimal libpython3.13-stdlib libtime-duration-perl 757s libtimedate-perl libxslt1.1 moreutils patroni patroni-doc postgresql 757s postgresql-16 postgresql-client-16 postgresql-client-common 757s postgresql-common python3-behave python3-cdiff python3-click 757s python3-colorama python3-coverage python3-dateutil python3-dnspython 757s python3-etcd python3-parse python3-parse-type python3-prettytable 757s python3-psutil python3-psycopg2 python3-six python3-wcwidth python3-ydiff 757s python3.13 python3.13-minimal sphinx-rtd-theme-common ssl-cert 757s 0 upgraded, 43 newly installed, 0 to remove and 0 not upgraded. 757s Need to get 42.3 MB of archives. 757s After this operation, 163 MB of additional disk space will be used. 757s Get:1 http://ftpmaster.internal/ubuntu plucky/main ppc64el fonts-lato all 2.015-1 [2781 kB] 758s Get:2 http://ftpmaster.internal/ubuntu plucky/main ppc64el libjson-perl all 4.10000-1 [81.9 kB] 758s Get:3 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql-client-common all 262 [36.7 kB] 758s Get:4 http://ftpmaster.internal/ubuntu plucky/main ppc64el ssl-cert all 1.1.3ubuntu1 [18.7 kB] 758s Get:5 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql-common all 262 [162 kB] 758s Get:6 http://ftpmaster.internal/ubuntu plucky/main ppc64el libpython3.13-minimal ppc64el 3.13.1-2 [883 kB] 758s Get:7 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3.13-minimal ppc64el 3.13.1-2 [2496 kB] 758s Get:8 http://ftpmaster.internal/ubuntu plucky/universe ppc64el etcd-server ppc64el 3.5.16-3 [10.5 MB] 758s Get:9 http://ftpmaster.internal/ubuntu plucky/main ppc64el fonts-font-awesome all 5.0.10+really4.7.0~dfsg-4.1 [516 kB] 758s Get:10 http://ftpmaster.internal/ubuntu plucky/main ppc64el libio-pty-perl ppc64el 1:1.20-1build3 [32.0 kB] 758s Get:11 http://ftpmaster.internal/ubuntu plucky/main ppc64el libipc-run-perl all 20231003.0-2 [91.5 kB] 758s Get:12 http://ftpmaster.internal/ubuntu plucky/main ppc64el libjs-jquery all 3.6.1+dfsg+~3.5.14-1 [328 kB] 758s Get:13 http://ftpmaster.internal/ubuntu plucky/main ppc64el libjs-underscore all 1.13.4~dfsg+~1.11.4-3 [118 kB] 758s Get:14 http://ftpmaster.internal/ubuntu plucky-proposed/main ppc64el libjs-sphinxdoc all 8.1.3-3 [30.9 kB] 758s Get:15 http://ftpmaster.internal/ubuntu plucky/main ppc64el libpq5 ppc64el 17.2-1 [173 kB] 758s Get:16 http://ftpmaster.internal/ubuntu plucky/main ppc64el libpython3.13-stdlib ppc64el 3.13.1-2 [2131 kB] 758s Get:17 http://ftpmaster.internal/ubuntu plucky/main ppc64el libtime-duration-perl all 1.21-2 [12.3 kB] 758s Get:18 http://ftpmaster.internal/ubuntu plucky/main ppc64el libtimedate-perl all 2.3300-2 [34.0 kB] 758s Get:19 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxslt1.1 ppc64el 1.1.39-0exp1ubuntu2 [191 kB] 758s Get:20 http://ftpmaster.internal/ubuntu plucky/universe ppc64el moreutils ppc64el 0.69-1 [59.1 kB] 758s Get:21 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-ydiff all 1.4.2-1 [19.0 kB] 758s Get:22 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-cdiff all 1.4.2-1 [1778 B] 758s Get:23 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-colorama all 0.4.6-4 [32.1 kB] 758s Get:24 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-click all 8.1.7-2 [79.5 kB] 758s Get:25 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-dateutil all 2.9.0-3 [80.2 kB] 758s Get:26 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-wcwidth all 0.2.13+dfsg1-1 [26.3 kB] 758s Get:27 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-prettytable all 3.12.0-1 [36.5 kB] 758s Get:28 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-psutil ppc64el 5.9.8-2build3 [197 kB] 759s Get:29 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-psycopg2 ppc64el 2.9.10-1 [160 kB] 759s Get:30 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-dnspython all 2.6.1-1ubuntu1 [163 kB] 759s Get:31 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-etcd all 0.4.5-6 [32.1 kB] 759s Get:32 http://ftpmaster.internal/ubuntu plucky/universe ppc64el patroni all 3.3.4-1 [269 kB] 759s Get:33 http://ftpmaster.internal/ubuntu plucky/main ppc64el sphinx-rtd-theme-common all 3.0.2+dfsg-1 [1014 kB] 759s Get:34 http://ftpmaster.internal/ubuntu plucky/universe ppc64el patroni-doc all 3.3.4-1 [508 kB] 759s Get:35 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql-client-16 ppc64el 16.4-3 [1400 kB] 759s Get:36 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql-16 ppc64el 16.4-3 [16.6 MB] 759s Get:37 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql all 16+262 [11.8 kB] 759s Get:38 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-parse all 1.20.2-1 [27.0 kB] 759s Get:39 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-six all 1.17.0-1 [13.2 kB] 759s Get:40 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-parse-type all 0.6.4-1 [23.4 kB] 759s Get:41 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-behave all 1.2.6-6 [98.6 kB] 759s Get:42 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3.13 ppc64el 3.13.1-2 [729 kB] 759s Get:43 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-coverage ppc64el 7.4.4+dfsg1-0ubuntu3 [151 kB] 760s Preconfiguring packages ... 760s Fetched 42.3 MB in 2s (20.4 MB/s) 760s Selecting previously unselected package fonts-lato. 760s (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 ... 73900 files and directories currently installed.) 760s Preparing to unpack .../00-fonts-lato_2.015-1_all.deb ... 760s Unpacking fonts-lato (2.015-1) ... 760s Selecting previously unselected package libjson-perl. 760s Preparing to unpack .../01-libjson-perl_4.10000-1_all.deb ... 760s Unpacking libjson-perl (4.10000-1) ... 760s Selecting previously unselected package postgresql-client-common. 760s Preparing to unpack .../02-postgresql-client-common_262_all.deb ... 760s Unpacking postgresql-client-common (262) ... 760s Selecting previously unselected package ssl-cert. 760s Preparing to unpack .../03-ssl-cert_1.1.3ubuntu1_all.deb ... 760s Unpacking ssl-cert (1.1.3ubuntu1) ... 760s Selecting previously unselected package postgresql-common. 760s Preparing to unpack .../04-postgresql-common_262_all.deb ... 760s Adding 'diversion of /usr/bin/pg_config to /usr/bin/pg_config.libpq-dev by postgresql-common' 760s Unpacking postgresql-common (262) ... 760s Selecting previously unselected package libpython3.13-minimal:ppc64el. 760s Preparing to unpack .../05-libpython3.13-minimal_3.13.1-2_ppc64el.deb ... 760s Unpacking libpython3.13-minimal:ppc64el (3.13.1-2) ... 760s Selecting previously unselected package python3.13-minimal. 760s Preparing to unpack .../06-python3.13-minimal_3.13.1-2_ppc64el.deb ... 760s Unpacking python3.13-minimal (3.13.1-2) ... 760s Selecting previously unselected package etcd-server. 760s Preparing to unpack .../07-etcd-server_3.5.16-3_ppc64el.deb ... 760s Unpacking etcd-server (3.5.16-3) ... 761s Selecting previously unselected package fonts-font-awesome. 761s Preparing to unpack .../08-fonts-font-awesome_5.0.10+really4.7.0~dfsg-4.1_all.deb ... 761s Unpacking fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ... 761s Selecting previously unselected package libio-pty-perl. 761s Preparing to unpack .../09-libio-pty-perl_1%3a1.20-1build3_ppc64el.deb ... 761s Unpacking libio-pty-perl (1:1.20-1build3) ... 761s Selecting previously unselected package libipc-run-perl. 761s Preparing to unpack .../10-libipc-run-perl_20231003.0-2_all.deb ... 761s Unpacking libipc-run-perl (20231003.0-2) ... 761s Selecting previously unselected package libjs-jquery. 761s Preparing to unpack .../11-libjs-jquery_3.6.1+dfsg+~3.5.14-1_all.deb ... 761s Unpacking libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 761s Selecting previously unselected package libjs-underscore. 761s Preparing to unpack .../12-libjs-underscore_1.13.4~dfsg+~1.11.4-3_all.deb ... 761s Unpacking libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 761s Selecting previously unselected package libjs-sphinxdoc. 761s Preparing to unpack .../13-libjs-sphinxdoc_8.1.3-3_all.deb ... 761s Unpacking libjs-sphinxdoc (8.1.3-3) ... 761s Selecting previously unselected package libpq5:ppc64el. 761s Preparing to unpack .../14-libpq5_17.2-1_ppc64el.deb ... 761s Unpacking libpq5:ppc64el (17.2-1) ... 761s Selecting previously unselected package libpython3.13-stdlib:ppc64el. 761s Preparing to unpack .../15-libpython3.13-stdlib_3.13.1-2_ppc64el.deb ... 761s Unpacking libpython3.13-stdlib:ppc64el (3.13.1-2) ... 761s Selecting previously unselected package libtime-duration-perl. 761s Preparing to unpack .../16-libtime-duration-perl_1.21-2_all.deb ... 761s Unpacking libtime-duration-perl (1.21-2) ... 761s Selecting previously unselected package libtimedate-perl. 761s Preparing to unpack .../17-libtimedate-perl_2.3300-2_all.deb ... 761s Unpacking libtimedate-perl (2.3300-2) ... 761s Selecting previously unselected package libxslt1.1:ppc64el. 761s Preparing to unpack .../18-libxslt1.1_1.1.39-0exp1ubuntu2_ppc64el.deb ... 761s Unpacking libxslt1.1:ppc64el (1.1.39-0exp1ubuntu2) ... 761s Selecting previously unselected package moreutils. 761s Preparing to unpack .../19-moreutils_0.69-1_ppc64el.deb ... 761s Unpacking moreutils (0.69-1) ... 761s Selecting previously unselected package python3-ydiff. 761s Preparing to unpack .../20-python3-ydiff_1.4.2-1_all.deb ... 761s Unpacking python3-ydiff (1.4.2-1) ... 761s Selecting previously unselected package python3-cdiff. 761s Preparing to unpack .../21-python3-cdiff_1.4.2-1_all.deb ... 761s Unpacking python3-cdiff (1.4.2-1) ... 761s Selecting previously unselected package python3-colorama. 761s Preparing to unpack .../22-python3-colorama_0.4.6-4_all.deb ... 761s Unpacking python3-colorama (0.4.6-4) ... 761s Selecting previously unselected package python3-click. 761s Preparing to unpack .../23-python3-click_8.1.7-2_all.deb ... 761s Unpacking python3-click (8.1.7-2) ... 761s Selecting previously unselected package python3-dateutil. 761s Preparing to unpack .../24-python3-dateutil_2.9.0-3_all.deb ... 761s Unpacking python3-dateutil (2.9.0-3) ... 761s Selecting previously unselected package python3-wcwidth. 761s Preparing to unpack .../25-python3-wcwidth_0.2.13+dfsg1-1_all.deb ... 761s Unpacking python3-wcwidth (0.2.13+dfsg1-1) ... 761s Selecting previously unselected package python3-prettytable. 761s Preparing to unpack .../26-python3-prettytable_3.12.0-1_all.deb ... 761s Unpacking python3-prettytable (3.12.0-1) ... 761s Selecting previously unselected package python3-psutil. 761s Preparing to unpack .../27-python3-psutil_5.9.8-2build3_ppc64el.deb ... 761s Unpacking python3-psutil (5.9.8-2build3) ... 761s Selecting previously unselected package python3-psycopg2. 761s Preparing to unpack .../28-python3-psycopg2_2.9.10-1_ppc64el.deb ... 761s Unpacking python3-psycopg2 (2.9.10-1) ... 761s Selecting previously unselected package python3-dnspython. 761s Preparing to unpack .../29-python3-dnspython_2.6.1-1ubuntu1_all.deb ... 761s Unpacking python3-dnspython (2.6.1-1ubuntu1) ... 761s Selecting previously unselected package python3-etcd. 761s Preparing to unpack .../30-python3-etcd_0.4.5-6_all.deb ... 761s Unpacking python3-etcd (0.4.5-6) ... 761s Selecting previously unselected package patroni. 761s Preparing to unpack .../31-patroni_3.3.4-1_all.deb ... 761s Unpacking patroni (3.3.4-1) ... 761s Selecting previously unselected package sphinx-rtd-theme-common. 761s Preparing to unpack .../32-sphinx-rtd-theme-common_3.0.2+dfsg-1_all.deb ... 761s Unpacking sphinx-rtd-theme-common (3.0.2+dfsg-1) ... 761s Selecting previously unselected package patroni-doc. 761s Preparing to unpack .../33-patroni-doc_3.3.4-1_all.deb ... 761s Unpacking patroni-doc (3.3.4-1) ... 761s Selecting previously unselected package postgresql-client-16. 761s Preparing to unpack .../34-postgresql-client-16_16.4-3_ppc64el.deb ... 761s Unpacking postgresql-client-16 (16.4-3) ... 761s Selecting previously unselected package postgresql-16. 761s Preparing to unpack .../35-postgresql-16_16.4-3_ppc64el.deb ... 761s Unpacking postgresql-16 (16.4-3) ... 762s Selecting previously unselected package postgresql. 762s Preparing to unpack .../36-postgresql_16+262_all.deb ... 762s Unpacking postgresql (16+262) ... 762s Selecting previously unselected package python3-parse. 762s Preparing to unpack .../37-python3-parse_1.20.2-1_all.deb ... 762s Unpacking python3-parse (1.20.2-1) ... 762s Selecting previously unselected package python3-six. 762s Preparing to unpack .../38-python3-six_1.17.0-1_all.deb ... 762s Unpacking python3-six (1.17.0-1) ... 762s Selecting previously unselected package python3-parse-type. 762s Preparing to unpack .../39-python3-parse-type_0.6.4-1_all.deb ... 762s Unpacking python3-parse-type (0.6.4-1) ... 762s Selecting previously unselected package python3-behave. 762s Preparing to unpack .../40-python3-behave_1.2.6-6_all.deb ... 762s Unpacking python3-behave (1.2.6-6) ... 762s Selecting previously unselected package python3.13. 762s Preparing to unpack .../41-python3.13_3.13.1-2_ppc64el.deb ... 762s Unpacking python3.13 (3.13.1-2) ... 762s Selecting previously unselected package python3-coverage. 762s Preparing to unpack .../42-python3-coverage_7.4.4+dfsg1-0ubuntu3_ppc64el.deb ... 762s Unpacking python3-coverage (7.4.4+dfsg1-0ubuntu3) ... 762s Setting up postgresql-client-common (262) ... 762s Setting up fonts-lato (2.015-1) ... 762s Setting up libio-pty-perl (1:1.20-1build3) ... 762s Setting up python3-colorama (0.4.6-4) ... 762s Setting up python3-ydiff (1.4.2-1) ... 762s Setting up libpq5:ppc64el (17.2-1) ... 762s Setting up python3-click (8.1.7-2) ... 762s Setting up python3-psutil (5.9.8-2build3) ... 763s Setting up python3-six (1.17.0-1) ... 763s Setting up libpython3.13-minimal:ppc64el (3.13.1-2) ... 763s Setting up python3-wcwidth (0.2.13+dfsg1-1) ... 763s Setting up ssl-cert (1.1.3ubuntu1) ... 764s Created symlink '/etc/systemd/system/multi-user.target.wants/ssl-cert.service' → '/usr/lib/systemd/system/ssl-cert.service'. 764s Setting up python3-psycopg2 (2.9.10-1) ... 764s Setting up libipc-run-perl (20231003.0-2) ... 764s Setting up libtime-duration-perl (1.21-2) ... 764s Setting up libtimedate-perl (2.3300-2) ... 764s Setting up python3-dnspython (2.6.1-1ubuntu1) ... 765s Setting up python3-parse (1.20.2-1) ... 765s Setting up libjson-perl (4.10000-1) ... 765s Setting up libxslt1.1:ppc64el (1.1.39-0exp1ubuntu2) ... 765s Setting up python3.13-minimal (3.13.1-2) ... 766s Setting up python3-dateutil (2.9.0-3) ... 766s Setting up etcd-server (3.5.16-3) ... 766s info: Selecting UID from range 100 to 999 ... 766s 766s info: Selecting GID from range 100 to 999 ... 766s info: Adding system user `etcd' (UID 107) ... 766s info: Adding new group `etcd' (GID 111) ... 766s info: Adding new user `etcd' (UID 107) with group `etcd' ... 766s info: Creating home directory `/var/lib/etcd/' ... 766s Created symlink '/etc/systemd/system/etcd2.service' → '/usr/lib/systemd/system/etcd.service'. 766s Created symlink '/etc/systemd/system/multi-user.target.wants/etcd.service' → '/usr/lib/systemd/system/etcd.service'. 767s Setting up libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 767s Setting up python3-prettytable (3.12.0-1) ... 767s Setting up libpython3.13-stdlib:ppc64el (3.13.1-2) ... 767s Setting up fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ... 767s Setting up sphinx-rtd-theme-common (3.0.2+dfsg-1) ... 767s Setting up libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 767s Setting up moreutils (0.69-1) ... 767s Setting up python3.13 (3.13.1-2) ... 768s Setting up python3-etcd (0.4.5-6) ... 768s Setting up postgresql-client-16 (16.4-3) ... 769s 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 769s Setting up python3-cdiff (1.4.2-1) ... 769s Setting up python3-coverage (7.4.4+dfsg1-0ubuntu3) ... 769s Setting up python3-parse-type (0.6.4-1) ... 769s Setting up postgresql-common (262) ... 770s Creating config file /etc/postgresql-common/createcluster.conf with new version 770s Building PostgreSQL dictionaries from installed myspell/hunspell packages... 770s Removing obsolete dictionary files: 770s Created symlink '/etc/systemd/system/multi-user.target.wants/postgresql.service' → '/usr/lib/systemd/system/postgresql.service'. 771s Setting up libjs-sphinxdoc (8.1.3-3) ... 771s Setting up python3-behave (1.2.6-6) ... 771s /usr/lib/python3/dist-packages/behave/formatter/ansi_escapes.py:57: SyntaxWarning: invalid escape sequence '\[' 771s _ANSI_ESCAPE_PATTERN = re.compile(u"\x1b\[\d+[mA]", re.UNICODE) 771s /usr/lib/python3/dist-packages/behave/matchers.py:267: SyntaxWarning: invalid escape sequence '\d' 771s """Registers a custom type that will be available to "parse" 771s /usr/lib/python3/dist-packages/behave/formatter/ansi_escapes.py:57: SyntaxWarning: invalid escape sequence '\[' 771s _ANSI_ESCAPE_PATTERN = re.compile(u"\x1b\[\d+[mA]", re.UNICODE) 771s /usr/lib/python3/dist-packages/behave/matchers.py:267: SyntaxWarning: invalid escape sequence '\d' 771s """Registers a custom type that will be available to "parse" 771s Setting up patroni (3.3.4-1) ... 771s Created symlink '/etc/systemd/system/multi-user.target.wants/patroni.service' → '/usr/lib/systemd/system/patroni.service'. 772s Setting up postgresql-16 (16.4-3) ... 772s Creating new PostgreSQL cluster 16/main ... 772s /usr/lib/postgresql/16/bin/initdb -D /var/lib/postgresql/16/main --auth-local peer --auth-host scram-sha-256 --no-instructions 772s The files belonging to this database system will be owned by user "postgres". 772s This user must also own the server process. 772s 772s The database cluster will be initialized with locale "C.UTF-8". 772s The default database encoding has accordingly been set to "UTF8". 772s The default text search configuration will be set to "english". 772s 772s Data page checksums are disabled. 772s 772s fixing permissions on existing directory /var/lib/postgresql/16/main ... ok 772s creating subdirectories ... ok 772s selecting dynamic shared memory implementation ... posix 773s selecting default max_connections ... 100 773s selecting default shared_buffers ... 128MB 773s selecting default time zone ... Etc/UTC 773s creating configuration files ... ok 773s running bootstrap script ... ok 773s performing post-bootstrap initialization ... ok 773s syncing data to disk ... ok 776s Setting up patroni-doc (3.3.4-1) ... 776s Setting up postgresql (16+262) ... 776s Processing triggers for systemd (257-2ubuntu1) ... 776s Processing triggers for man-db (2.13.0-1) ... 778s Processing triggers for libc-bin (2.40-4ubuntu1) ... 781s autopkgtest [19:43:39]: test acceptance-etcd-basic: debian/tests/acceptance etcd features/basic_replication.feature 781s autopkgtest [19:43:39]: test acceptance-etcd-basic: [----------------------- 781s dpkg-architecture: warning: cannot determine CC system type, falling back to default (native compilation) 782s ○ etcd.service - etcd - highly-available key value store 782s Loaded: loaded (/usr/lib/systemd/system/etcd.service; enabled; preset: enabled) 782s Active: inactive (dead) since Fri 2024-12-27 19:43:40 UTC; 11ms ago 782s Duration: 14.526s 782s Invocation: 7f34b473f15d415dbd5fe9d10bd3fe3f 782s Docs: https://etcd.io/docs 782s man:etcd 782s Process: 2350 ExecStart=/usr/bin/etcd $DAEMON_ARGS (code=killed, signal=TERM) 782s Main PID: 2350 (code=killed, signal=TERM) 782s Mem peak: 20.4M 782s CPU: 77ms 782s 782s Dec 27 19:43:40 autopkgtest etcd[2350]: {"level":"info","ts":"2024-12-27T19:43:40.004534Z","caller":"osutil/interrupt_unix.go:64","msg":"received signal; shutting down","signal":"terminated"} 782s Dec 27 19:43:40 autopkgtest etcd[2350]: {"level":"info","ts":"2024-12-27T19:43:40.004599Z","caller":"embed/etcd.go:378","msg":"closing etcd server","name":"autopkgtest","data-dir":"/var/lib/etcd/default","advertise-peer-urls":["http://localhost:2380"],"advertise-client-urls":["http://localhost:2379"]} 782s Dec 27 19:43:40 autopkgtest etcd[2350]: {"level":"warn","ts":"2024-12-27T19:43:40.004704Z","caller":"embed/serve.go:161","msg":"stopping insecure grpc server due to error","error":"accept tcp 127.0.0.1:2379: use of closed network connection"} 782s Dec 27 19:43:40 autopkgtest etcd[2350]: {"level":"warn","ts":"2024-12-27T19:43:40.004929Z","caller":"embed/serve.go:163","msg":"stopped insecure grpc server due to error","error":"accept tcp 127.0.0.1:2379: use of closed network connection"} 782s Dec 27 19:43:40 autopkgtest etcd[2350]: {"level":"info","ts":"2024-12-27T19:43:40.005336Z","caller":"etcdserver/server.go:1543","msg":"skipped leadership transfer for single voting member cluster","local-member-id":"8e9e05c52164694d","current-leader-member-id":"8e9e05c52164694d"} 782s Dec 27 19:43:40 autopkgtest etcd[2350]: {"level":"info","ts":"2024-12-27T19:43:40.009808Z","caller":"embed/etcd.go:582","msg":"stopping serving peer traffic","address":"127.0.0.1:2380"} 782s Dec 27 19:43:40 autopkgtest etcd[2350]: {"level":"info","ts":"2024-12-27T19:43:40.010026Z","caller":"embed/etcd.go:587","msg":"stopped serving peer traffic","address":"127.0.0.1:2380"} 782s Dec 27 19:43:40 autopkgtest etcd[2350]: {"level":"info","ts":"2024-12-27T19:43:40.010121Z","caller":"embed/etcd.go:380","msg":"closed etcd server","name":"autopkgtest","data-dir":"/var/lib/etcd/default","advertise-peer-urls":["http://localhost:2380"],"advertise-client-urls":["http://localhost:2379"]} 782s Dec 27 19:43:40 autopkgtest systemd[1]: etcd.service: Deactivated successfully. 782s Dec 27 19:43:40 autopkgtest systemd[1]: Stopped etcd.service - etcd - highly-available key value store. 782s ++ ls -1r /usr/lib/postgresql/ 782s + for PG_VERSION in $(ls -1r /usr/lib/postgresql/) 782s + '[' 16 == 10 -o 16 == 11 ']' 782s + echo '### PostgreSQL 16 acceptance-etcd features/basic_replication.feature ###' 782s + su postgres -p -c 'set -o pipefail; ETCD_UNSUPPORTED_ARCH= 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' 782s ### PostgreSQL 16 acceptance-etcd features/basic_replication.feature ### 783s Dec 27 19:43:41 Feature: basic replication # features/basic_replication.feature:1 783s Dec 27 19:43:41 We should check that the basic bootstrapping, replication and failover works. 783s Dec 27 19:43:41 Scenario: check replication of a single table # features/basic_replication.feature:4 783s Dec 27 19:43:41 Given I start postgres0 # features/steps/basic_replication.py:8 787s Dec 27 19:43:45 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 788s Dec 27 19:43:46 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 788s Dec 27 19:43:46 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 788s Dec 27 19:43:46 Then I receive a response code 200 # features/steps/patroni_api.py:98 788s Dec 27 19:43:46 When I start postgres1 # features/steps/basic_replication.py:8 792s Dec 27 19:43:50 And I configure and start postgres2 with a tag replicatefrom postgres0 # features/steps/cascading_replication.py:7 797s Dec 27 19:43:54 And "sync" key in DCS has leader=postgres0 after 20 seconds # features/steps/cascading_replication.py:23 797s Dec 27 19:43:54 And I add the table foo to postgres0 # features/steps/basic_replication.py:54 797s Dec 27 19:43:55 Then table foo is present on postgres1 after 20 seconds # features/steps/basic_replication.py:93 798s Dec 27 19:43:56 Then table foo is present on postgres2 after 20 seconds # features/steps/basic_replication.py:93 798s Dec 27 19:43:56 798s Dec 27 19:43:56 Scenario: check restart of sync replica # features/basic_replication.feature:17 798s Dec 27 19:43:56 Given I shut down postgres2 # features/steps/basic_replication.py:29 799s Dec 27 19:43:57 Then "sync" key in DCS has sync_standby=postgres1 after 5 seconds # features/steps/cascading_replication.py:23 799s Dec 27 19:43:57 When I start postgres2 # features/steps/basic_replication.py:8 803s Dec 27 19:44:01 And I shut down postgres1 # features/steps/basic_replication.py:29 806s Dec 27 19:44:04 Then "sync" key in DCS has sync_standby=postgres2 after 10 seconds # features/steps/cascading_replication.py:23 807s Dec 27 19:44:05 When I start postgres1 # features/steps/basic_replication.py:8 811s Dec 27 19:44:09 Then "members/postgres1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 811s Dec 27 19:44:09 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 811s Dec 27 19:44:09 And Status code on GET http://127.0.0.1:8009/async is 200 after 3 seconds # features/steps/patroni_api.py:142 811s Dec 27 19:44:09 811s Dec 27 19:44:09 Scenario: check stuck sync replica # features/basic_replication.feature:28 811s Dec 27 19:44:09 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 811s Dec 27 19:44:09 Then I receive a response code 200 # features/steps/patroni_api.py:98 811s Dec 27 19:44:09 And I create table on postgres0 # features/steps/basic_replication.py:73 811s Dec 27 19:44:09 And table mytest is present on postgres1 after 2 seconds # features/steps/basic_replication.py:93 812s Dec 27 19:44:10 And table mytest is present on postgres2 after 2 seconds # features/steps/basic_replication.py:93 812s Dec 27 19:44:10 When I pause wal replay on postgres2 # features/steps/basic_replication.py:64 812s Dec 27 19:44:10 And I load data on postgres0 # features/steps/basic_replication.py:84 812s Dec 27 19:44:10 Then "sync" key in DCS has sync_standby=postgres1 after 15 seconds # features/steps/cascading_replication.py:23 815s Dec 27 19:44:13 And I resume wal replay on postgres2 # features/steps/basic_replication.py:64 816s Dec 27 19:44:13 And Status code on GET http://127.0.0.1:8009/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 816s Dec 27 19:44:14 And Status code on GET http://127.0.0.1:8010/async is 200 after 3 seconds # features/steps/patroni_api.py:142 816s Dec 27 19:44:14 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 816s Dec 27 19:44:14 Then I receive a response code 200 # features/steps/patroni_api.py:98 816s Dec 27 19:44:14 And I drop table on postgres0 # features/steps/basic_replication.py:73 816s Dec 27 19:44:14 816s Dec 27 19:44:14 Scenario: check multi sync replication # features/basic_replication.feature:44 816s Dec 27 19:44:14 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 816s Dec 27 19:44:14 Then I receive a response code 200 # features/steps/patroni_api.py:98 816s Dec 27 19:44:14 Then "sync" key in DCS has sync_standby=postgres1,postgres2 after 10 seconds # features/steps/cascading_replication.py:23 820s Dec 27 19:44:18 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 820s Dec 27 19:44:18 And Status code on GET http://127.0.0.1:8009/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 820s Dec 27 19:44:18 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 820s Dec 27 19:44:18 Then I receive a response code 200 # features/steps/patroni_api.py:98 820s Dec 27 19:44:18 And I shut down postgres1 # features/steps/basic_replication.py:29 823s Dec 27 19:44:21 Then "sync" key in DCS has sync_standby=postgres2 after 10 seconds # features/steps/cascading_replication.py:23 824s Dec 27 19:44:22 When I start postgres1 # features/steps/basic_replication.py:8 828s Dec 27 19:44:26 Then "members/postgres1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 828s Dec 27 19:44:26 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 828s Dec 27 19:44:26 And Status code on GET http://127.0.0.1:8009/async is 200 after 3 seconds # features/steps/patroni_api.py:142 828s Dec 27 19:44:26 828s Dec 27 19:44:26 Scenario: check the basic failover in synchronous mode # features/basic_replication.feature:59 828s Dec 27 19:44:26 Given I run patronictl.py pause batman # features/steps/patroni_api.py:86 830s Dec 27 19:44:28 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 830s Dec 27 19:44:28 When I sleep for 2 seconds # features/steps/patroni_api.py:39 832s Dec 27 19:44:30 And I shut down postgres0 # features/steps/basic_replication.py:29 833s Dec 27 19:44:31 And I run patronictl.py resume batman # features/steps/patroni_api.py:86 836s Dec 27 19:44:33 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 836s Dec 27 19:44:33 And postgres2 role is the primary after 24 seconds # features/steps/basic_replication.py:105 855s Dec 27 19:44:53 And Response on GET http://127.0.0.1:8010/history contains recovery after 10 seconds # features/steps/patroni_api.py:156 857s Dec 27 19:44:55 And there is a postgres2_cb.log with "on_role_change master batman" in postgres2 data directory # features/steps/cascading_replication.py:12 857s Dec 27 19:44:55 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 857s Dec 27 19:44:55 Then I receive a response code 200 # features/steps/patroni_api.py:98 857s Dec 27 19:44:55 When I add the table bar to postgres2 # features/steps/basic_replication.py:54 857s Dec 27 19:44:55 Then table bar is present on postgres1 after 20 seconds # features/steps/basic_replication.py:93 860s Dec 27 19:44:58 And Response on GET http://127.0.0.1:8010/config contains master_start_timeout after 10 seconds # features/steps/patroni_api.py:156 860s Dec 27 19:44:58 860s Dec 27 19:44:58 Scenario: check rejoin of the former primary with pg_rewind # features/basic_replication.feature:75 860s Dec 27 19:44:58 Given I add the table splitbrain to postgres0 # features/steps/basic_replication.py:54 860s Dec 27 19:44:58 And I start postgres0 # features/steps/basic_replication.py:8 860s Dec 27 19:44:58 Then postgres0 role is the secondary after 20 seconds # features/steps/basic_replication.py:105 868s Dec 27 19:45:06 When I add the table buz to postgres2 # features/steps/basic_replication.py:54 868s Dec 27 19:45:06 Then table buz is present on postgres0 after 20 seconds # features/steps/basic_replication.py:93 868s Dec 27 19:45:06 868s Dec 27 19:45:06 @reject-duplicate-name 868s Dec 27 19:45:06 Scenario: check graceful rejection when two nodes have the same name # features/basic_replication.feature:83 868s Dec 27 19:45:06 Given I start duplicate postgres0 on port 8011 # features/steps/basic_replication.py:13 871s Dec 27 19:45:09 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:121 875s Dec 27 19:45:13 875s 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'))") 876s 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'))") 876s 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'))") 876s Dec 27 19:45:14 Combined data file .coverage.autopkgtest.4518.XcQaryjx 876s Dec 27 19:45:14 Combined data file .coverage.autopkgtest.4563.Xhzcronx 876s Dec 27 19:45:14 Combined data file .coverage.autopkgtest.4610.XWrppqAx 876s Dec 27 19:45:14 Combined data file .coverage.autopkgtest.4657.XtriPnix 876s Dec 27 19:45:14 Combined data file .coverage.autopkgtest.4703.XNfIkYcx 876s Dec 27 19:45:14 Combined data file .coverage.autopkgtest.4775.XnRPIomx 876s Dec 27 19:45:14 Combined data file .coverage.autopkgtest.4823.XENpCwdx 876s Dec 27 19:45:14 Combined data file .coverage.autopkgtest.4826.XhKVGxfx 876s Dec 27 19:45:14 Combined data file .coverage.autopkgtest.4920.XMpBPvXx 876s Dec 27 19:45:14 Combined data file .coverage.autopkgtest.5023.Xpzrvunx 879s Dec 27 19:45:17 Name Stmts Miss Cover 879s Dec 27 19:45:17 ------------------------------------------------------------------------------------------------------------- 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/OpenSSL/SSL.py 1159 647 44% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/OpenSSL/__init__.py 4 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/OpenSSL/_util.py 42 14 67% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/OpenSSL/crypto.py 865 658 24% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/OpenSSL/version.py 10 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/_distutils_hack/__init__.py 101 96 5% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/bcrypt/__init__.py 3 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/__about__.py 5 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/__init__.py 3 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/exceptions.py 26 5 81% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/hazmat/__init__.py 2 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/hazmat/_oid.py 135 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/__init__.py 0 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/__init__.py 0 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/_conditional.py 38 17 55% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/binding.py 51 4 92% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/hazmat/decrepit/__init__.py 1 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/hazmat/decrepit/ciphers/__init__.py 1 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/hazmat/decrepit/ciphers/algorithms.py 68 18 74% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/__init__.py 0 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_asymmetric.py 6 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_cipheralgorithm.py 23 4 83% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_serialization.py 79 35 56% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/__init__.py 0 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/dh.py 47 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/dsa.py 55 5 91% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/ec.py 172 22 87% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/ed448.py 45 12 73% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/ed25519.py 43 12 72% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/padding.py 55 23 58% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/rsa.py 93 40 57% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/types.py 19 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/utils.py 14 5 64% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/x448.py 43 12 72% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/x25519.py 41 12 71% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/__init__.py 4 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/algorithms.py 72 15 79% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/base.py 54 12 78% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/modes.py 140 59 58% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/constant_time.py 6 3 50% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/hashes.py 127 20 84% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/serialization/__init__.py 5 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/serialization/base.py 7 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/serialization/ssh.py 775 614 21% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/utils.py 76 28 63% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/x509/__init__.py 70 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/x509/base.py 488 227 53% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/x509/certificate_transparency.py 42 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/x509/extensions.py 1024 552 46% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/x509/general_name.py 166 94 43% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/x509/name.py 236 144 39% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/x509/oid.py 3 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/cryptography/x509/verification.py 12 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dateutil/__init__.py 13 4 69% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dateutil/_common.py 25 15 40% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dateutil/_version.py 11 2 82% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dateutil/parser/__init__.py 33 4 88% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dateutil/parser/_parser.py 811 688 15% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dateutil/parser/isoparser.py 184 150 18% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dateutil/relativedelta.py 240 206 14% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dateutil/tz/__init__.py 4 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dateutil/tz/_common.py 151 117 23% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dateutil/tz/_factories.py 49 21 57% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dateutil/tz/tz.py 795 629 21% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dateutil/tz/win.py 153 149 3% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/__init__.py 3 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/_asyncbackend.py 14 6 57% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/_ddr.py 105 86 18% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/_features.py 44 7 84% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/_immutable_ctx.py 40 5 88% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/asyncbackend.py 44 32 27% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/asyncquery.py 277 242 13% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/edns.py 270 161 40% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/entropy.py 80 49 39% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/enum.py 72 46 36% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/exception.py 60 33 45% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/flags.py 41 14 66% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/grange.py 34 30 12% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/immutable.py 41 30 27% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/inet.py 80 65 19% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/ipv4.py 27 20 26% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/ipv6.py 115 100 13% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/message.py 809 662 18% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/name.py 620 427 31% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/nameserver.py 101 54 47% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/node.py 118 71 40% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/opcode.py 31 7 77% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/query.py 536 462 14% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/quic/__init__.py 26 23 12% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/rcode.py 69 13 81% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/rdata.py 377 269 29% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/rdataclass.py 44 9 80% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/rdataset.py 193 133 31% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/rdatatype.py 214 25 88% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/OPT.py 34 19 44% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/SOA.py 41 26 37% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/TSIG.py 58 42 28% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/ZONEMD.py 43 27 37% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/__init__.py 2 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/rdtypes/__init__.py 2 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/rdtypes/svcbbase.py 397 261 34% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/rdtypes/util.py 191 154 19% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/renderer.py 152 118 22% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/resolver.py 899 719 20% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/reversename.py 33 24 27% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/rrset.py 78 56 28% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/serial.py 93 79 15% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/set.py 149 108 28% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/tokenizer.py 335 279 17% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/transaction.py 271 203 25% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/tsig.py 177 122 31% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/ttl.py 45 38 16% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/version.py 7 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/wire.py 64 42 34% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/xfr.py 148 126 15% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/zone.py 508 383 25% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/zonefile.py 429 380 11% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/dns/zonetypes.py 15 2 87% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/etcd/__init__.py 125 27 78% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/etcd/client.py 380 195 49% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/etcd/lock.py 125 103 18% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/idna/__init__.py 4 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/idna/core.py 292 257 12% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/idna/idnadata.py 4 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/idna/intranges.py 30 24 20% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/idna/package_data.py 1 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/__init__.py 13 2 85% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/__main__.py 199 67 66% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/api.py 780 433 44% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/async_executor.py 96 19 80% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/collections.py 56 6 89% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/config.py 371 110 70% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/config_generator.py 212 159 25% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/daemon.py 76 6 92% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/dcs/__init__.py 654 151 77% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/dcs/etcd.py 603 180 70% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/dynamic_loader.py 35 7 80% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/exceptions.py 16 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/file_perm.py 43 9 79% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/global_config.py 81 4 95% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/ha.py 1270 629 50% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/log.py 221 73 67% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/postgresql/__init__.py 822 239 71% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/postgresql/available_parameters/__init__.py 24 3 88% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/postgresql/bootstrap.py 255 91 64% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/postgresql/callback_executor.py 55 8 85% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/postgresql/cancellable.py 104 41 61% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/postgresql/config.py 838 255 70% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/postgresql/connection.py 75 7 91% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/postgresql/misc.py 43 13 70% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/postgresql/mpp/__init__.py 89 12 87% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/postgresql/postmaster.py 170 92 46% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/postgresql/rewind.py 416 200 52% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/postgresql/slots.py 349 188 46% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/postgresql/sync.py 130 19 85% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/postgresql/validator.py 157 24 85% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/psycopg.py 46 20 57% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/request.py 58 7 88% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/tags.py 38 5 87% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/utils.py 370 139 62% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/validator.py 307 217 29% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/version.py 1 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/watchdog/__init__.py 2 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/watchdog/base.py 203 49 76% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/patroni/watchdog/linux.py 135 50 63% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/psutil/__init__.py 951 636 33% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/psutil/_common.py 424 212 50% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/psutil/_compat.py 302 264 13% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/psutil/_pslinux.py 1251 936 25% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/psutil/_psposix.py 96 41 57% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/psycopg2/__init__.py 19 3 84% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/psycopg2/_json.py 64 27 58% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/psycopg2/_range.py 269 172 36% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/psycopg2/errors.py 3 2 33% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/psycopg2/extensions.py 91 25 73% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/urllib3/__init__.py 50 14 72% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/urllib3/_base_connection.py 70 52 26% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/urllib3/_collections.py 234 100 57% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/urllib3/_request_methods.py 53 11 79% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/urllib3/_version.py 2 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/urllib3/connection.py 324 100 69% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/urllib3/connectionpool.py 347 130 63% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/urllib3/contrib/__init__.py 0 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/urllib3/contrib/pyopenssl.py 257 98 62% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/urllib3/exceptions.py 115 37 68% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/urllib3/fields.py 92 73 21% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/urllib3/filepost.py 37 24 35% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/urllib3/poolmanager.py 233 85 64% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/urllib3/response.py 562 318 43% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/urllib3/util/__init__.py 10 0 100% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/urllib3/util/connection.py 66 42 36% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/urllib3/util/proxy.py 13 6 54% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/urllib3/util/request.py 104 49 53% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/urllib3/util/response.py 32 17 47% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/urllib3/util/retry.py 173 55 68% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/urllib3/util/ssl_.py 177 78 56% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/urllib3/util/ssl_match_hostname.py 66 54 18% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/urllib3/util/ssltransport.py 160 112 30% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/urllib3/util/timeout.py 71 14 80% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/urllib3/util/url.py 205 68 67% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/urllib3/util/util.py 26 10 62% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/urllib3/util/wait.py 49 18 63% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/yaml/__init__.py 165 109 34% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/yaml/composer.py 92 17 82% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/yaml/constructor.py 479 276 42% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/yaml/cyaml.py 46 24 48% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/yaml/dumper.py 23 12 48% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/yaml/emitter.py 838 769 8% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/yaml/error.py 58 42 28% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/yaml/events.py 61 6 90% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/yaml/loader.py 47 24 49% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/yaml/nodes.py 29 7 76% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/yaml/parser.py 352 198 44% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/yaml/reader.py 122 34 72% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/yaml/representer.py 248 176 29% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/yaml/resolver.py 135 76 44% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/yaml/scanner.py 758 437 42% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/yaml/serializer.py 85 70 18% 879s Dec 27 19:45:17 /usr/lib/python3/dist-packages/yaml/tokens.py 76 17 78% 879s Dec 27 19:45:17 patroni/__init__.py 13 2 85% 879s Dec 27 19:45:17 patroni/__main__.py 199 199 0% 879s Dec 27 19:45:17 patroni/api.py 780 780 0% 879s Dec 27 19:45:17 patroni/async_executor.py 96 69 28% 879s Dec 27 19:45:17 patroni/collections.py 56 15 73% 879s Dec 27 19:45:17 patroni/config.py 371 196 47% 879s Dec 27 19:45:17 patroni/config_generator.py 212 212 0% 879s Dec 27 19:45:17 patroni/ctl.py 936 663 29% 879s Dec 27 19:45:17 patroni/daemon.py 76 76 0% 879s Dec 27 19:45:17 patroni/dcs/__init__.py 654 313 52% 879s Dec 27 19:45:17 patroni/dcs/consul.py 484 484 0% 879s Dec 27 19:45:17 patroni/dcs/etcd3.py 679 679 0% 879s Dec 27 19:45:17 patroni/dcs/etcd.py 603 232 62% 879s Dec 27 19:45:17 patroni/dcs/exhibitor.py 62 62 0% 879s Dec 27 19:45:17 patroni/dcs/kubernetes.py 940 940 0% 879s Dec 27 19:45:17 patroni/dcs/raft.py 319 319 0% 879s Dec 27 19:45:17 patroni/dcs/zookeeper.py 289 289 0% 879s Dec 27 19:45:17 patroni/dynamic_loader.py 35 7 80% 879s Dec 27 19:45:17 patroni/exceptions.py 16 1 94% 879s Dec 27 19:45:17 patroni/file_perm.py 43 15 65% 879s Dec 27 19:45:17 patroni/global_config.py 81 23 72% 879s Dec 27 19:45:17 patroni/ha.py 1270 1270 0% 879s Dec 27 19:45:17 patroni/log.py 221 175 21% 879s Dec 27 19:45:17 patroni/postgresql/__init__.py 822 652 21% 879s Dec 27 19:45:17 patroni/postgresql/available_parameters/__init__.py 24 6 75% 879s Dec 27 19:45:17 patroni/postgresql/bootstrap.py 255 225 12% 879s Dec 27 19:45:17 patroni/postgresql/callback_executor.py 55 34 38% 879s Dec 27 19:45:17 patroni/postgresql/cancellable.py 104 84 19% 879s Dec 27 19:45:17 patroni/postgresql/config.py 838 718 14% 879s Dec 27 19:45:17 patroni/postgresql/connection.py 75 50 33% 879s Dec 27 19:45:17 patroni/postgresql/misc.py 43 30 30% 879s Dec 27 19:45:17 patroni/postgresql/mpp/__init__.py 89 21 76% 879s Dec 27 19:45:17 patroni/postgresql/mpp/citus.py 259 259 0% 879s Dec 27 19:45:17 patroni/postgresql/postmaster.py 170 139 18% 879s Dec 27 19:45:17 patroni/postgresql/rewind.py 416 416 0% 879s Dec 27 19:45:17 patroni/postgresql/slots.py 349 300 14% 879s Dec 27 19:45:17 patroni/postgresql/sync.py 130 96 26% 879s Dec 27 19:45:17 patroni/postgresql/validator.py 157 52 67% 879s Dec 27 19:45:17 patroni/psycopg.py 46 32 30% 879s Dec 27 19:45:17 patroni/raft_controller.py 22 22 0% 879s Dec 27 19:45:17 patroni/request.py 58 6 90% 879s Dec 27 19:45:17 patroni/scripts/__init__.py 0 0 100% 879s Dec 27 19:45:17 patroni/scripts/aws.py 59 59 0% 879s Dec 27 19:45:17 patroni/scripts/barman/__init__.py 0 0 100% 879s Dec 27 19:45:17 patroni/scripts/barman/cli.py 51 51 0% 879s Dec 27 19:45:17 patroni/scripts/barman/config_switch.py 51 51 0% 879s Dec 27 19:45:17 patroni/scripts/barman/recover.py 37 37 0% 879s Dec 27 19:45:17 patroni/scripts/barman/utils.py 94 94 0% 879s Dec 27 19:45:17 patroni/scripts/wale_restore.py 207 207 0% 879s Dec 27 19:45:17 patroni/tags.py 38 15 61% 879s Dec 27 19:45:17 patroni/utils.py 370 264 29% 879s Dec 27 19:45:17 patroni/validator.py 307 221 28% 879s Dec 27 19:45:17 patroni/version.py 1 0 100% 879s Dec 27 19:45:17 patroni/watchdog/__init__.py 2 2 0% 879s Dec 27 19:45:17 patroni/watchdog/base.py 203 203 0% 879s Dec 27 19:45:17 patroni/watchdog/linux.py 135 135 0% 879s Dec 27 19:45:17 ------------------------------------------------------------------------------------------------------------- 879s Dec 27 19:45:17 TOTAL 52569 33502 36% 879s Dec 27 19:45:17 1 feature passed, 0 failed, 0 skipped 879s Dec 27 19:45:17 7 scenarios passed, 0 failed, 0 skipped 879s Dec 27 19:45:17 68 steps passed, 0 failed, 0 skipped, 0 undefined 879s Dec 27 19:45:17 Took 1m27.612s 879s ### End 16 acceptance-etcd features/basic_replication.feature ### 879s + echo '### End 16 acceptance-etcd features/basic_replication.feature ###' 879s + rm -f '/tmp/pgpass?' 879s ++ id -u 879s + '[' 0 -eq 0 ']' 879s + '[' -x /etc/init.d/zookeeper ']' 880s autopkgtest [19:45:18]: test acceptance-etcd-basic: -----------------------] 880s autopkgtest [19:45:18]: test acceptance-etcd-basic: - - - - - - - - - - results - - - - - - - - - - 880s acceptance-etcd-basic PASS 880s autopkgtest [19:45:18]: test acceptance-etcd: preparing testbed 881s Reading package lists... 881s Building dependency tree... 881s Reading state information... 881s Starting pkgProblemResolver with broken count: 0 881s Starting 2 pkgProblemResolver with broken count: 0 881s Done 881s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 882s autopkgtest [19:45:20]: test acceptance-etcd: debian/tests/acceptance etcd 882s autopkgtest [19:45:20]: test acceptance-etcd: [----------------------- 882s dpkg-architecture: warning: cannot determine CC system type, falling back to default (native compilation) 883s ○ etcd.service - etcd - highly-available key value store 883s Loaded: loaded (/usr/lib/systemd/system/etcd.service; enabled; preset: enabled) 883s Active: inactive (dead) since Fri 2024-12-27 19:43:40 UTC; 1min 41s ago 883s Duration: 14.526s 883s Invocation: 7f34b473f15d415dbd5fe9d10bd3fe3f 883s Docs: https://etcd.io/docs 883s man:etcd 883s Process: 2350 ExecStart=/usr/bin/etcd $DAEMON_ARGS (code=killed, signal=TERM) 883s Main PID: 2350 (code=killed, signal=TERM) 883s Mem peak: 20.4M 883s CPU: 77ms 883s 883s Dec 27 19:43:40 autopkgtest etcd[2350]: {"level":"info","ts":"2024-12-27T19:43:40.004534Z","caller":"osutil/interrupt_unix.go:64","msg":"received signal; shutting down","signal":"terminated"} 883s Dec 27 19:43:40 autopkgtest etcd[2350]: {"level":"info","ts":"2024-12-27T19:43:40.004599Z","caller":"embed/etcd.go:378","msg":"closing etcd server","name":"autopkgtest","data-dir":"/var/lib/etcd/default","advertise-peer-urls":["http://localhost:2380"],"advertise-client-urls":["http://localhost:2379"]} 883s Dec 27 19:43:40 autopkgtest etcd[2350]: {"level":"warn","ts":"2024-12-27T19:43:40.004704Z","caller":"embed/serve.go:161","msg":"stopping insecure grpc server due to error","error":"accept tcp 127.0.0.1:2379: use of closed network connection"} 883s Dec 27 19:43:40 autopkgtest etcd[2350]: {"level":"warn","ts":"2024-12-27T19:43:40.004929Z","caller":"embed/serve.go:163","msg":"stopped insecure grpc server due to error","error":"accept tcp 127.0.0.1:2379: use of closed network connection"} 883s Dec 27 19:43:40 autopkgtest etcd[2350]: {"level":"info","ts":"2024-12-27T19:43:40.005336Z","caller":"etcdserver/server.go:1543","msg":"skipped leadership transfer for single voting member cluster","local-member-id":"8e9e05c52164694d","current-leader-member-id":"8e9e05c52164694d"} 883s Dec 27 19:43:40 autopkgtest etcd[2350]: {"level":"info","ts":"2024-12-27T19:43:40.009808Z","caller":"embed/etcd.go:582","msg":"stopping serving peer traffic","address":"127.0.0.1:2380"} 883s Dec 27 19:43:40 autopkgtest etcd[2350]: {"level":"info","ts":"2024-12-27T19:43:40.010026Z","caller":"embed/etcd.go:587","msg":"stopped serving peer traffic","address":"127.0.0.1:2380"} 883s Dec 27 19:43:40 autopkgtest etcd[2350]: {"level":"info","ts":"2024-12-27T19:43:40.010121Z","caller":"embed/etcd.go:380","msg":"closed etcd server","name":"autopkgtest","data-dir":"/var/lib/etcd/default","advertise-peer-urls":["http://localhost:2380"],"advertise-client-urls":["http://localhost:2379"]} 883s Dec 27 19:43:40 autopkgtest systemd[1]: etcd.service: Deactivated successfully. 883s Dec 27 19:43:40 autopkgtest systemd[1]: Stopped etcd.service - etcd - highly-available key value store. 883s ++ ls -1r /usr/lib/postgresql/ 883s + for PG_VERSION in $(ls -1r /usr/lib/postgresql/) 883s + '[' 16 == 10 -o 16 == 11 ']' 883s + echo '### PostgreSQL 16 acceptance-etcd ###' 883s + su postgres -p -c 'set -o pipefail; ETCD_UNSUPPORTED_ARCH= 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' 883s ### PostgreSQL 16 acceptance-etcd ### 885s Dec 27 19:45:23 Feature: basic replication # features/basic_replication.feature:1 885s Dec 27 19:45:23 We should check that the basic bootstrapping, replication and failover works. 885s Dec 27 19:45:23 Scenario: check replication of a single table # features/basic_replication.feature:4 885s Dec 27 19:45:23 Given I start postgres0 # features/steps/basic_replication.py:8 889s Dec 27 19:45:27 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 890s Dec 27 19:45:28 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 890s Dec 27 19:45:28 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 890s Dec 27 19:45:28 Then I receive a response code 200 # features/steps/patroni_api.py:98 890s Dec 27 19:45:28 When I start postgres1 # features/steps/basic_replication.py:8 894s Dec 27 19:45:32 And I configure and start postgres2 with a tag replicatefrom postgres0 # features/steps/cascading_replication.py:7 898s Dec 27 19:45:36 And "sync" key in DCS has leader=postgres0 after 20 seconds # features/steps/cascading_replication.py:23 898s Dec 27 19:45:36 And I add the table foo to postgres0 # features/steps/basic_replication.py:54 898s Dec 27 19:45:36 Then table foo is present on postgres1 after 20 seconds # features/steps/basic_replication.py:93 899s Dec 27 19:45:37 Then table foo is present on postgres2 after 20 seconds # features/steps/basic_replication.py:93 899s Dec 27 19:45:37 899s Dec 27 19:45:37 Scenario: check restart of sync replica # features/basic_replication.feature:17 899s Dec 27 19:45:37 Given I shut down postgres2 # features/steps/basic_replication.py:29 900s Dec 27 19:45:38 Then "sync" key in DCS has sync_standby=postgres1 after 5 seconds # features/steps/cascading_replication.py:23 900s Dec 27 19:45:38 When I start postgres2 # features/steps/basic_replication.py:8 904s Dec 27 19:45:42 And I shut down postgres1 # features/steps/basic_replication.py:29 907s Dec 27 19:45:45 Then "sync" key in DCS has sync_standby=postgres2 after 10 seconds # features/steps/cascading_replication.py:23 908s Dec 27 19:45:46 When I start postgres1 # features/steps/basic_replication.py:8 912s Dec 27 19:45:50 Then "members/postgres1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 912s Dec 27 19:45:50 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 912s Dec 27 19:45:50 And Status code on GET http://127.0.0.1:8009/async is 200 after 3 seconds # features/steps/patroni_api.py:142 912s Dec 27 19:45:50 912s Dec 27 19:45:50 Scenario: check stuck sync replica # features/basic_replication.feature:28 912s Dec 27 19:45:50 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 912s Dec 27 19:45:50 Then I receive a response code 200 # features/steps/patroni_api.py:98 912s Dec 27 19:45:50 And I create table on postgres0 # features/steps/basic_replication.py:73 912s Dec 27 19:45:50 And table mytest is present on postgres1 after 2 seconds # features/steps/basic_replication.py:93 913s Dec 27 19:45:51 And table mytest is present on postgres2 after 2 seconds # features/steps/basic_replication.py:93 913s Dec 27 19:45:51 When I pause wal replay on postgres2 # features/steps/basic_replication.py:64 913s Dec 27 19:45:51 And I load data on postgres0 # features/steps/basic_replication.py:84 914s Dec 27 19:45:52 Then "sync" key in DCS has sync_standby=postgres1 after 15 seconds # features/steps/cascading_replication.py:23 917s Dec 27 19:45:55 And I resume wal replay on postgres2 # features/steps/basic_replication.py:64 917s Dec 27 19:45:55 And Status code on GET http://127.0.0.1:8009/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 917s Dec 27 19:45:55 And Status code on GET http://127.0.0.1:8010/async is 200 after 3 seconds # features/steps/patroni_api.py:142 917s Dec 27 19:45:55 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 917s Dec 27 19:45:55 Then I receive a response code 200 # features/steps/patroni_api.py:98 917s Dec 27 19:45:55 And I drop table on postgres0 # features/steps/basic_replication.py:73 917s Dec 27 19:45:55 917s Dec 27 19:45:55 Scenario: check multi sync replication # features/basic_replication.feature:44 917s Dec 27 19:45:55 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 917s Dec 27 19:45:55 Then I receive a response code 200 # features/steps/patroni_api.py:98 917s Dec 27 19:45:55 Then "sync" key in DCS has sync_standby=postgres1,postgres2 after 10 seconds # features/steps/cascading_replication.py:23 921s Dec 27 19:45:59 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 921s Dec 27 19:45:59 And Status code on GET http://127.0.0.1:8009/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 921s Dec 27 19:45:59 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 921s Dec 27 19:45:59 Then I receive a response code 200 # features/steps/patroni_api.py:98 921s Dec 27 19:45:59 And I shut down postgres1 # features/steps/basic_replication.py:29 924s Dec 27 19:46:02 Then "sync" key in DCS has sync_standby=postgres2 after 10 seconds # features/steps/cascading_replication.py:23 925s Dec 27 19:46:03 When I start postgres1 # features/steps/basic_replication.py:8 929s Dec 27 19:46:07 Then "members/postgres1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 929s Dec 27 19:46:07 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 929s Dec 27 19:46:07 And Status code on GET http://127.0.0.1:8009/async is 200 after 3 seconds # features/steps/patroni_api.py:142 930s Dec 27 19:46:07 930s Dec 27 19:46:07 Scenario: check the basic failover in synchronous mode # features/basic_replication.feature:59 930s Dec 27 19:46:07 Given I run patronictl.py pause batman # features/steps/patroni_api.py:86 932s Dec 27 19:46:10 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 932s Dec 27 19:46:10 When I sleep for 2 seconds # features/steps/patroni_api.py:39 934s Dec 27 19:46:12 And I shut down postgres0 # features/steps/basic_replication.py:29 935s Dec 27 19:46:13 And I run patronictl.py resume batman # features/steps/patroni_api.py:86 937s Dec 27 19:46:15 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 937s Dec 27 19:46:15 And postgres2 role is the primary after 24 seconds # features/steps/basic_replication.py:105 956s Dec 27 19:46:34 And Response on GET http://127.0.0.1:8010/history contains recovery after 10 seconds # features/steps/patroni_api.py:156 958s Dec 27 19:46:36 And there is a postgres2_cb.log with "on_role_change master batman" in postgres2 data directory # features/steps/cascading_replication.py:12 958s Dec 27 19:46: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 958s Dec 27 19:46:36 Then I receive a response code 200 # features/steps/patroni_api.py:98 958s Dec 27 19:46:36 When I add the table bar to postgres2 # features/steps/basic_replication.py:54 958s Dec 27 19:46:36 Then table bar is present on postgres1 after 20 seconds # features/steps/basic_replication.py:93 961s Dec 27 19:46: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 961s Dec 27 19:46:39 961s Dec 27 19:46:39 Scenario: check rejoin of the former primary with pg_rewind # features/basic_replication.feature:75 961s Dec 27 19:46:39 Given I add the table splitbrain to postgres0 # features/steps/basic_replication.py:54 961s Dec 27 19:46:39 And I start postgres0 # features/steps/basic_replication.py:8 961s Dec 27 19:46:39 Then postgres0 role is the secondary after 20 seconds # features/steps/basic_replication.py:105 969s Dec 27 19:46:47 When I add the table buz to postgres2 # features/steps/basic_replication.py:54 969s Dec 27 19:46:47 Then table buz is present on postgres0 after 20 seconds # features/steps/basic_replication.py:93 969s Dec 27 19:46:47 969s Dec 27 19:46:47 @reject-duplicate-name 969s Dec 27 19:46:47 Scenario: check graceful rejection when two nodes have the same name # features/basic_replication.feature:83 969s Dec 27 19:46:47 Given I start duplicate postgres0 on port 8011 # features/steps/basic_replication.py:13 972s Dec 27 19:46:50 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:121 977s Dec 27 19:46:55 977s Dec 27 19:46:55 Feature: cascading replication # features/cascading_replication.feature:1 977s Dec 27 19:46:55 We should check that patroni can do base backup and streaming from the replica 977s Dec 27 19:46:55 Scenario: check a base backup and streaming replication from a replica # features/cascading_replication.feature:4 977s Dec 27 19:46:55 Given I start postgres0 # features/steps/basic_replication.py:8 981s Dec 27 19:46:59 And postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 982s Dec 27 19:47:00 And I configure and start postgres1 with a tag clonefrom true # features/steps/cascading_replication.py:7 986s Dec 27 19:47:04 And replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:112 987s Dec 27 19:47:05 And I create label with "postgres0" in postgres0 data directory # features/steps/cascading_replication.py:18 987s Dec 27 19:47:05 And I create label with "postgres1" in postgres1 data directory # features/steps/cascading_replication.py:18 987s Dec 27 19:47:05 And "members/postgres1" key in DCS has state=running after 12 seconds # features/steps/cascading_replication.py:23 987s Dec 27 19:47:05 And I configure and start postgres2 with a tag replicatefrom postgres1 # features/steps/cascading_replication.py:7 991s Dec 27 19:47:09 Then replication works from postgres0 to postgres2 after 30 seconds # features/steps/basic_replication.py:112 992s Dec 27 19:47:10 And there is a label with "postgres1" in postgres2 data directory # features/steps/cascading_replication.py:12 998s Dec 27 19:47:16 998s SKIP FEATURE citus: Citus extenstion isn't available 998s SKIP Scenario check that worker cluster is registered in the coordinator: Citus extenstion isn't available 998s SKIP Scenario coordinator failover updates pg_dist_node: Citus extenstion isn't available 998s SKIP Scenario worker switchover doesn't break client queries on the coordinator: Citus extenstion isn't available 998s SKIP Scenario worker primary restart doesn't break client queries on the coordinator: Citus extenstion isn't available 998s 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 998s Dec 27 19:47:16 Feature: citus # features/citus.feature:1 998s Dec 27 19:47:16 We should check that coordinator discovers and registers workers and clients don't have errors when worker cluster switches over 998s Dec 27 19:47:16 Scenario: check that worker cluster is registered in the coordinator # features/citus.feature:4 998s Dec 27 19:47:16 Given I start postgres0 in citus group 0 # None 998s Dec 27 19:47:16 And I start postgres2 in citus group 1 # None 998s Dec 27 19:47:16 Then postgres0 is a leader in a group 0 after 10 seconds # None 998s Dec 27 19:47:16 And postgres2 is a leader in a group 1 after 10 seconds # None 998s Dec 27 19:47:16 When I start postgres1 in citus group 0 # None 998s Dec 27 19:47:16 And I start postgres3 in citus group 1 # None 998s Dec 27 19:47:16 Then replication works from postgres0 to postgres1 after 15 seconds # None 998s Dec 27 19:47:16 Then replication works from postgres2 to postgres3 after 15 seconds # None 998s Dec 27 19:47:16 And postgres0 is registered in the postgres0 as the primary in group 0 after 5 seconds # None 998s Dec 27 19:47:16 And postgres2 is registered in the postgres0 as the primary in group 1 after 5 seconds # None 998s Dec 27 19:47:16 998s Dec 27 19:47:16 Scenario: coordinator failover updates pg_dist_node # features/citus.feature:16 998s Dec 27 19:47:16 Given I run patronictl.py failover batman --group 0 --candidate postgres1 --force # None 998s Dec 27 19:47:16 Then postgres1 role is the primary after 10 seconds # None 998s Dec 27 19:47:16 And "members/postgres0" key in a group 0 in DCS has state=running after 15 seconds # None 998s Dec 27 19:47:16 And replication works from postgres1 to postgres0 after 15 seconds # None 998s Dec 27 19:47:16 And postgres1 is registered in the postgres2 as the primary in group 0 after 5 seconds # None 998s Dec 27 19:47:16 And "sync" key in a group 0 in DCS has sync_standby=postgres0 after 15 seconds # None 998s Dec 27 19:47:16 When I run patronictl.py switchover batman --group 0 --candidate postgres0 --force # None 998s Dec 27 19:47:16 Then postgres0 role is the primary after 10 seconds # None 998s Dec 27 19:47:16 And replication works from postgres0 to postgres1 after 15 seconds # None 998s Dec 27 19:47:16 And postgres0 is registered in the postgres2 as the primary in group 0 after 5 seconds # None 998s Dec 27 19:47:16 And "sync" key in a group 0 in DCS has sync_standby=postgres1 after 15 seconds # None 998s Dec 27 19:47:16 998s Dec 27 19:47:16 Scenario: worker switchover doesn't break client queries on the coordinator # features/citus.feature:29 998s Dec 27 19:47:16 Given I create a distributed table on postgres0 # None 998s Dec 27 19:47:16 And I start a thread inserting data on postgres0 # None 998s Dec 27 19:47:16 When I run patronictl.py switchover batman --group 1 --force # None 998s Dec 27 19:47:16 Then I receive a response returncode 0 # None 998s Dec 27 19:47:16 And postgres3 role is the primary after 10 seconds # None 998s Dec 27 19:47:16 And "members/postgres2" key in a group 1 in DCS has state=running after 15 seconds # None 998s Dec 27 19:47:16 And replication works from postgres3 to postgres2 after 15 seconds # None 998s Dec 27 19:47:16 And postgres3 is registered in the postgres0 as the primary in group 1 after 5 seconds # None 998s Dec 27 19:47:16 And "sync" key in a group 1 in DCS has sync_standby=postgres2 after 15 seconds # None 998s Dec 27 19:47:16 And a thread is still alive # None 998s Dec 27 19:47:16 When I run patronictl.py switchover batman --group 1 --force # None 998s Dec 27 19:47:16 Then I receive a response returncode 0 # None 998s Dec 27 19:47:16 And postgres2 role is the primary after 10 seconds # None 998s Dec 27 19:47:16 And replication works from postgres2 to postgres3 after 15 seconds # None 998s Dec 27 19:47:16 And postgres2 is registered in the postgres0 as the primary in group 1 after 5 seconds # None 998s Dec 27 19:47:16 And "sync" key in a group 1 in DCS has sync_standby=postgres3 after 15 seconds # None 998s Dec 27 19:47:16 And a thread is still alive # None 998s Dec 27 19:47:16 When I stop a thread # None 998s Dec 27 19:47:16 Then a distributed table on postgres0 has expected rows # None 998s Dec 27 19:47:16 998s Dec 27 19:47:16 Scenario: worker primary restart doesn't break client queries on the coordinator # features/citus.feature:50 998s Dec 27 19:47:16 Given I cleanup a distributed table on postgres0 # None 998s Dec 27 19:47:16 And I start a thread inserting data on postgres0 # None 998s Dec 27 19:47:16 When I run patronictl.py restart batman postgres2 --group 1 --force # None 998s Dec 27 19:47:16 Then I receive a response returncode 0 # None 998s Dec 27 19:47:16 And postgres2 role is the primary after 10 seconds # None 998s Dec 27 19:47:16 And replication works from postgres2 to postgres3 after 15 seconds # None 998s Dec 27 19:47:16 And postgres2 is registered in the postgres0 as the primary in group 1 after 5 seconds # None 998s Dec 27 19:47:16 And a thread is still alive # None 998s Dec 27 19:47:16 When I stop a thread # None 998s Dec 27 19:47:16 Then a distributed table on postgres0 has expected rows # None 998s Dec 27 19:47:16 998s Dec 27 19:47:16 Scenario: check that in-flight transaction is rolled back after timeout when other workers need to change pg_dist_node # features/citus.feature:62 998s Dec 27 19:47:16 Given I start postgres4 in citus group 2 # None 998s Dec 27 19:47:16 Then postgres4 is a leader in a group 2 after 10 seconds # None 998s Dec 27 19:47:16 And "members/postgres4" key in a group 2 in DCS has role=master after 3 seconds # None 998s Dec 27 19:47:16 When I run patronictl.py edit-config batman --group 2 -s ttl=20 --force # None 998s Dec 27 19:47:16 Then I receive a response returncode 0 # None 998s Dec 27 19:47:16 And I receive a response output "+ttl: 20" # None 998s Dec 27 19:47:16 Then postgres4 is registered in the postgres2 as the primary in group 2 after 5 seconds # None 998s Dec 27 19:47:16 When I shut down postgres4 # None 998s Dec 27 19:47:16 Then there is a transaction in progress on postgres0 changing pg_dist_node after 5 seconds # None 998s Dec 27 19:47:16 When I run patronictl.py restart batman postgres2 --group 1 --force # None 998s Dec 27 19:47:16 Then a transaction finishes in 20 seconds # None 998s Dec 27 19:47:16 998s Dec 27 19:47:16 Feature: custom bootstrap # features/custom_bootstrap.feature:1 998s Dec 27 19:47:16 We should check that patroni can bootstrap a new cluster from a backup 998s Dec 27 19:47:16 Scenario: clone existing cluster using pg_basebackup # features/custom_bootstrap.feature:4 998s Dec 27 19:47:16 Given I start postgres0 # features/steps/basic_replication.py:8 1002s Dec 27 19:47:20 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 1003s Dec 27 19:47:21 When I add the table foo to postgres0 # features/steps/basic_replication.py:54 1003s Dec 27 19:47:21 And I start postgres1 in a cluster batman1 as a clone of postgres0 # features/steps/custom_bootstrap.py:6 1008s Dec 27 19:47:26 Then postgres1 is a leader of batman1 after 10 seconds # features/steps/custom_bootstrap.py:16 1009s Dec 27 19:47:27 Then table foo is present on postgres1 after 10 seconds # features/steps/basic_replication.py:93 1009s Dec 27 19:47:27 1009s Dec 27 19:47:27 Scenario: make a backup and do a restore into a new cluster # features/custom_bootstrap.feature:12 1009s Dec 27 19:47:27 Given I add the table bar to postgres1 # features/steps/basic_replication.py:54 1009s Dec 27 19:47:27 And I do a backup of postgres1 # features/steps/custom_bootstrap.py:25 1010s Dec 27 19:47:28 When I start postgres2 in a cluster batman2 from backup # features/steps/custom_bootstrap.py:11 1015s Dec 27 19:47:33 Then postgres2 is a leader of batman2 after 30 seconds # features/steps/custom_bootstrap.py:16 1016s Dec 27 19:47:34 And table bar is present on postgres2 after 10 seconds # features/steps/basic_replication.py:93 1022s Dec 27 19:47:40 1022s Dec 27 19:47:40 Feature: dcs failsafe mode # features/dcs_failsafe_mode.feature:1 1022s Dec 27 19:47:40 We should check the basic dcs failsafe mode functioning 1022s Dec 27 19:47:40 Scenario: check failsafe mode can be successfully enabled # features/dcs_failsafe_mode.feature:4 1022s Dec 27 19:47:40 Given I start postgres0 # features/steps/basic_replication.py:8 1026s Dec 27 19:47:44 And postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 1027s Dec 27 19:47:45 Then "config" key in DCS has ttl=30 after 10 seconds # features/steps/cascading_replication.py:23 1027s Dec 27 19:47:45 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 1027s Dec 27 19:47:45 Then I receive a response code 200 # features/steps/patroni_api.py:98 1027s Dec 27 19:47:45 And Response on GET http://127.0.0.1:8008/failsafe contains postgres0 after 10 seconds # features/steps/patroni_api.py:156 1027s Dec 27 19:47:45 When I issue a GET request to http://127.0.0.1:8008/failsafe # features/steps/patroni_api.py:61 1027s Dec 27 19:47:45 Then I receive a response code 200 # features/steps/patroni_api.py:98 1027s Dec 27 19:47:45 And I receive a response postgres0 http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:98 1027s Dec 27 19:47:45 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 1027s Dec 27 19:47:45 Then I receive a response code 200 # features/steps/patroni_api.py:98 1027s Dec 27 19:47:45 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 1027s Dec 27 19:47:45 Then I receive a response code 200 # features/steps/patroni_api.py:98 1027s Dec 27 19:47:45 1027s Dec 27 19:47:45 @dcs-failsafe 1027s Dec 27 19:47:45 Scenario: check one-node cluster is functioning while DCS is down # features/dcs_failsafe_mode.feature:20 1027s Dec 27 19:47:45 Given DCS is down # features/steps/dcs_failsafe_mode.py:4 1027s Dec 27 19:47:45 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 1033s Dec 27 19:47:51 And postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:105 1033s Dec 27 19:47:51 1033s Dec 27 19:47:51 @dcs-failsafe 1033s Dec 27 19:47:51 Scenario: check new replica isn't promoted when leader is down and DCS is up # features/dcs_failsafe_mode.feature:26 1033s Dec 27 19:47:51 Given DCS is up # features/steps/dcs_failsafe_mode.py:9 1033s Dec 27 19:47:51 When I do a backup of postgres0 # features/steps/custom_bootstrap.py:25 1034s Dec 27 19:47:52 And I shut down postgres0 # features/steps/basic_replication.py:29 1036s Dec 27 19:47:54 When I start postgres1 in a cluster batman from backup with no_leader # features/steps/dcs_failsafe_mode.py:14 1040s Dec 27 19:47:58 Then postgres1 role is the replica after 12 seconds # features/steps/basic_replication.py:105 1040s Dec 27 19:47:58 1040s Dec 27 19:47:58 Scenario: check leader and replica are both in /failsafe key after leader is back # features/dcs_failsafe_mode.feature:33 1040s Dec 27 19:47:58 Given I start postgres0 # features/steps/basic_replication.py:8 1043s Dec 27 19:48:01 And I start postgres1 # features/steps/basic_replication.py:8 1043s Dec 27 19:48:01 Then "members/postgres0" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 1044s Dec 27 19:48:02 And "members/postgres1" key in DCS has state=running after 2 seconds # features/steps/cascading_replication.py:23 1044s Dec 27 19:48:02 And Response on GET http://127.0.0.1:8009/failsafe contains postgres1 after 10 seconds # features/steps/patroni_api.py:156 1045s Dec 27 19:48:03 When I issue a GET request to http://127.0.0.1:8009/failsafe # features/steps/patroni_api.py:61 1045s Dec 27 19:48:03 Then I receive a response code 200 # features/steps/patroni_api.py:98 1045s Dec 27 19:48:03 And I receive a response postgres0 http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:98 1045s Dec 27 19:48:03 And I receive a response postgres1 http://127.0.0.1:8009/patroni # features/steps/patroni_api.py:98 1045s Dec 27 19:48:03 1045s Dec 27 19:48:03 @dcs-failsafe @slot-advance 1045s Dec 27 19:48:03 Scenario: check leader and replica are functioning while DCS is down # features/dcs_failsafe_mode.feature:46 1045s Dec 27 19:48:03 Given I get all changes from physical slot dcs_slot_1 on postgres0 # features/steps/slots.py:75 1045s Dec 27 19:48:03 Then physical slot dcs_slot_1 is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 1051s Dec 27 19:48:09 And logical slot dcs_slot_0 is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 1051s Dec 27 19:48:09 And DCS is down # features/steps/dcs_failsafe_mode.py:4 1051s Dec 27 19:48:09 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 1059s Dec 27 19:48:16 Then postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:105 1059s Dec 27 19:48:16 And postgres1 role is the replica after 2 seconds # features/steps/basic_replication.py:105 1059s Dec 27 19:48:16 And replication works from postgres0 to postgres1 after 10 seconds # features/steps/basic_replication.py:112 1059s Dec 27 19:48:17 When I get all changes from logical slot dcs_slot_0 on postgres0 # features/steps/slots.py:70 1059s Dec 27 19:48:17 And I get all changes from physical slot dcs_slot_1 on postgres0 # features/steps/slots.py:75 1059s Dec 27 19:48:17 Then logical slot dcs_slot_0 is in sync between postgres0 and postgres1 after 20 seconds # features/steps/slots.py:51 1061s Dec 27 19:48:19 And physical slot dcs_slot_1 is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 1061s Dec 27 19:48:19 1061s Dec 27 19:48:19 @dcs-failsafe 1061s Dec 27 19:48:19 Scenario: check primary is demoted when one replica is shut down and DCS is down # features/dcs_failsafe_mode.feature:61 1061s Dec 27 19:48:19 Given DCS is down # features/steps/dcs_failsafe_mode.py:4 1061s Dec 27 19:48:19 And I kill postgres1 # features/steps/basic_replication.py:34 1062s Dec 27 19:48:20 And I kill postmaster on postgres1 # features/steps/basic_replication.py:44 1062s Dec 27 19:48:20 waiting for server to shut down.... done 1062s Dec 27 19:48:20 server stopped 1062s Dec 27 19:48:20 Then postgres0 role is the replica after 12 seconds # features/steps/basic_replication.py:105 1064s Dec 27 19:48:22 1064s Dec 27 19:48:22 @dcs-failsafe 1064s Dec 27 19:48:22 Scenario: check known replica is promoted when leader is down and DCS is up # features/dcs_failsafe_mode.feature:68 1064s Dec 27 19:48:22 Given I kill postgres0 # features/steps/basic_replication.py:34 1065s Dec 27 19:48:23 And I shut down postmaster on postgres0 # features/steps/basic_replication.py:39 1065s Dec 27 19:48:23 waiting for server to shut down.... done 1065s Dec 27 19:48:23 server stopped 1065s Dec 27 19:48:23 And DCS is up # features/steps/dcs_failsafe_mode.py:9 1065s Dec 27 19:48:23 When I start postgres1 # features/steps/basic_replication.py:8 1069s Dec 27 19:48:27 Then "members/postgres1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 1069s Dec 27 19:48:27 And postgres1 role is the primary after 25 seconds # features/steps/basic_replication.py:105 1072s Dec 27 19:48:30 1072s Dec 27 19:48:30 @dcs-failsafe 1072s Dec 27 19:48:30 Scenario: scale to three-node cluster # features/dcs_failsafe_mode.feature:77 1072s Dec 27 19:48:30 Given I start postgres0 # features/steps/basic_replication.py:8 1078s Dec 27 19:48:36 And I configure and start postgres2 with a tag replicatefrom postgres0 # features/steps/cascading_replication.py:7 1082s Dec 27 19:48:40 Then "members/postgres2" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 1083s Dec 27 19:48:41 And "members/postgres0" key in DCS has state=running after 20 seconds # features/steps/cascading_replication.py:23 1083s Dec 27 19:48:41 And Response on GET http://127.0.0.1:8008/failsafe contains postgres2 after 10 seconds # features/steps/patroni_api.py:156 1083s Dec 27 19:48:41 And replication works from postgres1 to postgres0 after 10 seconds # features/steps/basic_replication.py:112 1084s Dec 27 19:48:42 And replication works from postgres1 to postgres2 after 10 seconds # features/steps/basic_replication.py:112 1085s Dec 27 19:48:43 1085s Dec 27 19:48:43 @dcs-failsafe @slot-advance 1085s Dec 27 19:48:43 Scenario: make sure permanent slots exist on replicas # features/dcs_failsafe_mode.feature:88 1085s Dec 27 19:48:43 Given I issue a PATCH request to http://127.0.0.1:8009/config with {"slots":{"postgres2":0,"dcs_slot_0":null,"dcs_slot_2":{"type":"logical","database":"postgres","plugin":"test_decoding"}}} # features/steps/patroni_api.py:71 1085s Dec 27 19:48:43 Then logical slot dcs_slot_2 is in sync between postgres1 and postgres0 after 20 seconds # features/steps/slots.py:51 1091s Dec 27 19:48:49 And logical slot dcs_slot_2 is in sync between postgres1 and postgres2 after 20 seconds # features/steps/slots.py:51 1092s Dec 27 19:48:50 When I get all changes from physical slot dcs_slot_1 on postgres1 # features/steps/slots.py:75 1092s Dec 27 19:48:50 Then physical slot dcs_slot_1 is in sync between postgres1 and postgres0 after 10 seconds # features/steps/slots.py:51 1093s Dec 27 19:48:51 And physical slot dcs_slot_1 is in sync between postgres1 and postgres2 after 10 seconds # features/steps/slots.py:51 1093s Dec 27 19:48:51 And physical slot postgres0 is in sync between postgres1 and postgres2 after 10 seconds # features/steps/slots.py:51 1093s Dec 27 19:48:51 And physical slot postgres2 is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 1093s Dec 27 19:48:51 1093s Dec 27 19:48:51 @dcs-failsafe 1093s Dec 27 19:48:51 Scenario: check three-node cluster is functioning while DCS is down # features/dcs_failsafe_mode.feature:99 1093s Dec 27 19:48:51 Given DCS is down # features/steps/dcs_failsafe_mode.py:4 1093s Dec 27 19:48:51 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 1101s Dec 27 19:48:59 Then postgres1 role is the primary after 10 seconds # features/steps/basic_replication.py:105 1101s Dec 27 19:48:59 And postgres0 role is the replica after 2 seconds # features/steps/basic_replication.py:105 1101s Dec 27 19:48:59 And postgres2 role is the replica after 2 seconds # features/steps/basic_replication.py:105 1101s Dec 27 19:48:59 1101s Dec 27 19:48:59 @dcs-failsafe @slot-advance 1101s Dec 27 19:48:59 Scenario: check that permanent slots are in sync between nodes while DCS is down # features/dcs_failsafe_mode.feature:108 1101s Dec 27 19:48:59 Given replication works from postgres1 to postgres0 after 10 seconds # features/steps/basic_replication.py:112 1101s Dec 27 19:48:59 And replication works from postgres1 to postgres2 after 10 seconds # features/steps/basic_replication.py:112 1102s Dec 27 19:49:00 When I get all changes from logical slot dcs_slot_2 on postgres1 # features/steps/slots.py:70 1102s Dec 27 19:49:00 And I get all changes from physical slot dcs_slot_1 on postgres1 # features/steps/slots.py:75 1102s Dec 27 19:49:00 Then logical slot dcs_slot_2 is in sync between postgres1 and postgres0 after 20 seconds # features/steps/slots.py:51 1103s Dec 27 19:49:01 And logical slot dcs_slot_2 is in sync between postgres1 and postgres2 after 20 seconds # features/steps/slots.py:51 1103s Dec 27 19:49:01 And physical slot dcs_slot_1 is in sync between postgres1 and postgres0 after 10 seconds # features/steps/slots.py:51 1103s Dec 27 19:49:01 And physical slot dcs_slot_1 is in sync between postgres1 and postgres2 after 10 seconds # features/steps/slots.py:51 1103s Dec 27 19:49:01 And physical slot postgres0 is in sync between postgres1 and postgres2 after 10 seconds # features/steps/slots.py:51 1103s Dec 27 19:49:01 And physical slot postgres2 is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 1109s Dec 27 19:49:07 1109s Dec 27 19:49:07 Feature: ignored slots # features/ignored_slots.feature:1 1109s Dec 27 19:49:07 1109s Dec 27 19:49:07 Scenario: check ignored slots aren't removed on failover/switchover # features/ignored_slots.feature:2 1109s Dec 27 19:49:07 Given I start postgres1 # features/steps/basic_replication.py:8 1113s Dec 27 19:49:11 Then postgres1 is a leader after 10 seconds # features/steps/patroni_api.py:29 1114s Dec 27 19:49:12 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 1114s Dec 27 19:49:12 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 1114s Dec 27 19:49:12 Then I receive a response code 200 # features/steps/patroni_api.py:98 1114s Dec 27 19:49:12 And Response on GET http://127.0.0.1:8009/config contains ignore_slots after 10 seconds # features/steps/patroni_api.py:156 1114s Dec 27 19:49:12 When I shut down postgres1 # features/steps/basic_replication.py:29 1116s Dec 27 19:49:14 And I start postgres1 # features/steps/basic_replication.py:8 1119s Dec 27 19:49:17 Then postgres1 is a leader after 10 seconds # features/steps/patroni_api.py:29 1120s Dec 27 19:49:18 And "members/postgres1" key in DCS has role=master after 10 seconds # features/steps/cascading_replication.py:23 1121s Dec 27 19:49:19 And postgres1 role is the primary after 20 seconds # features/steps/basic_replication.py:105 1121s Dec 27 19:49:19 When I create a logical replication slot unmanaged_slot_0 on postgres1 with the test_decoding plugin # features/steps/slots.py:8 1121s Dec 27 19:49:19 And I create a logical replication slot unmanaged_slot_1 on postgres1 with the test_decoding plugin # features/steps/slots.py:8 1121s Dec 27 19:49:19 And I create a logical replication slot unmanaged_slot_2 on postgres1 with the test_decoding plugin # features/steps/slots.py:8 1121s Dec 27 19:49:19 And I create a logical replication slot unmanaged_slot_3 on postgres1 with the test_decoding plugin # features/steps/slots.py:8 1121s Dec 27 19:49:19 And I create a logical replication slot dummy_slot on postgres1 with the test_decoding plugin # features/steps/slots.py:8 1121s Dec 27 19:49:19 Then postgres1 has a logical replication slot named unmanaged_slot_0 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1121s Dec 27 19:49:19 And postgres1 has a logical replication slot named unmanaged_slot_1 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1121s Dec 27 19:49:19 And postgres1 has a logical replication slot named unmanaged_slot_2 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1121s Dec 27 19:49:19 And postgres1 has a logical replication slot named unmanaged_slot_3 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1121s Dec 27 19:49:19 When I start postgres0 # features/steps/basic_replication.py:8 1125s Dec 27 19:49:23 Then "members/postgres0" key in DCS has role=replica after 10 seconds # features/steps/cascading_replication.py:23 1126s Dec 27 19:49:24 And postgres0 role is the secondary after 20 seconds # features/steps/basic_replication.py:105 1126s Dec 27 19:49:24 And replication works from postgres1 to postgres0 after 20 seconds # features/steps/basic_replication.py:112 1127s Dec 27 19:49:25 When I shut down postgres1 # features/steps/basic_replication.py:29 1129s Dec 27 19:49:27 Then "members/postgres0" key in DCS has role=master after 10 seconds # features/steps/cascading_replication.py:23 1130s Dec 27 19:49:28 When I start postgres1 # features/steps/basic_replication.py:8 1134s Dec 27 19:49:32 Then postgres1 role is the secondary after 20 seconds # features/steps/basic_replication.py:105 1134s Dec 27 19:49:32 And "members/postgres1" key in DCS has role=replica after 10 seconds # features/steps/cascading_replication.py:23 1134s Dec 27 19:49:32 And I sleep for 2 seconds # features/steps/patroni_api.py:39 1136s Dec 27 19:49:34 And postgres1 has a logical replication slot named unmanaged_slot_0 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1136s Dec 27 19:49:34 And postgres1 has a logical replication slot named unmanaged_slot_1 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1136s Dec 27 19:49:34 And postgres1 has a logical replication slot named unmanaged_slot_2 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1136s Dec 27 19:49:34 And postgres1 has a logical replication slot named unmanaged_slot_3 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1136s Dec 27 19:49:34 And postgres1 does not have a replication slot named dummy_slot # features/steps/slots.py:40 1136s Dec 27 19:49:34 When I shut down postgres0 # features/steps/basic_replication.py:29 1139s Dec 27 19:49:36 Then "members/postgres1" key in DCS has role=master after 10 seconds # features/steps/cascading_replication.py:23 1139s Dec 27 19:49:37 And postgres1 has a logical replication slot named unmanaged_slot_0 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1139s Dec 27 19:49:37 And postgres1 has a logical replication slot named unmanaged_slot_1 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1139s Dec 27 19:49:37 And postgres1 has a logical replication slot named unmanaged_slot_2 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1139s Dec 27 19:49:37 And postgres1 has a logical replication slot named unmanaged_slot_3 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1141s Dec 27 19:49:39 1141s Dec 27 19:49:39 Feature: nostream node # features/nostream_node.feature:1 1141s Dec 27 19:49:39 1141s Dec 27 19:49:39 Scenario: check nostream node is recovering from archive # features/nostream_node.feature:3 1141s Dec 27 19:49:39 When I start postgres0 # features/steps/basic_replication.py:8 1146s Dec 27 19:49:43 And I configure and start postgres1 with a tag nostream true # features/steps/cascading_replication.py:7 1150s Dec 27 19:49:48 Then "members/postgres1" key in DCS has replication_state=in archive recovery after 10 seconds # features/steps/cascading_replication.py:23 1151s Dec 27 19:49:49 And replication works from postgres0 to postgres1 after 30 seconds # features/steps/basic_replication.py:112 1155s Dec 27 19:49:53 1155s Dec 27 19:49:53 @slot-advance 1155s Dec 27 19:49:53 Scenario: check permanent logical replication slots are not copied # features/nostream_node.feature:10 1155s Dec 27 19:49:53 When I issue a PATCH request to http://127.0.0.1:8008/config with {"postgresql": {"parameters": {"wal_level": "logical"}}, "slots":{"test_logical":{"type":"logical","database":"postgres","plugin":"test_decoding"}}} # features/steps/patroni_api.py:71 1155s Dec 27 19:49:53 Then I receive a response code 200 # features/steps/patroni_api.py:98 1155s Dec 27 19:49:53 When I run patronictl.py restart batman postgres0 --force # features/steps/patroni_api.py:86 1159s Dec 27 19:49:56 Then postgres0 has a logical replication slot named test_logical with the test_decoding plugin after 10 seconds # features/steps/slots.py:19 1159s Dec 27 19:49:57 When I configure and start postgres2 with a tag replicatefrom postgres1 # features/steps/cascading_replication.py:7 1164s Dec 27 19:50:01 Then "members/postgres2" key in DCS has replication_state=streaming after 10 seconds # features/steps/cascading_replication.py:23 1171s Dec 27 19:50:08 And postgres1 does not have a replication slot named test_logical # features/steps/slots.py:40 1171s Dec 27 19:50:08 And postgres2 does not have a replication slot named test_logical # features/steps/slots.py:40 1177s Dec 27 19:50:15 1177s Dec 27 19:50:15 Feature: patroni api # features/patroni_api.feature:1 1177s Dec 27 19:50:15 We should check that patroni correctly responds to valid and not-valid API requests. 1177s Dec 27 19:50:15 Scenario: check API requests on a stand-alone server # features/patroni_api.feature:4 1177s Dec 27 19:50:15 Given I start postgres0 # features/steps/basic_replication.py:8 1181s Dec 27 19:50:19 And postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 1181s Dec 27 19:50:19 When I issue a GET request to http://127.0.0.1:8008/ # features/steps/patroni_api.py:61 1181s Dec 27 19:50:19 Then I receive a response code 200 # features/steps/patroni_api.py:98 1181s Dec 27 19:50:19 And I receive a response state running # features/steps/patroni_api.py:98 1181s Dec 27 19:50:19 And I receive a response role master # features/steps/patroni_api.py:98 1181s Dec 27 19:50:19 When I issue a GET request to http://127.0.0.1:8008/standby_leader # features/steps/patroni_api.py:61 1181s Dec 27 19:50:19 Then I receive a response code 503 # features/steps/patroni_api.py:98 1181s Dec 27 19:50:19 When I issue a GET request to http://127.0.0.1:8008/health # features/steps/patroni_api.py:61 1181s Dec 27 19:50:19 Then I receive a response code 200 # features/steps/patroni_api.py:98 1181s Dec 27 19:50:19 When I issue a GET request to http://127.0.0.1:8008/replica # features/steps/patroni_api.py:61 1181s Dec 27 19:50:19 Then I receive a response code 503 # features/steps/patroni_api.py:98 1181s Dec 27 19:50:19 When I issue a POST request to http://127.0.0.1:8008/reinitialize with {"force": true} # features/steps/patroni_api.py:71 1181s Dec 27 19:50:19 Then I receive a response code 503 # features/steps/patroni_api.py:98 1181s Dec 27 19:50:19 And I receive a response text I am the leader, can not reinitialize # features/steps/patroni_api.py:98 1181s Dec 27 19:50:19 When I run patronictl.py switchover batman --master postgres0 --force # features/steps/patroni_api.py:86 1183s Dec 27 19:50:21 Then I receive a response returncode 1 # features/steps/patroni_api.py:98 1183s Dec 27 19:50:21 And I receive a response output "Error: No candidates found to switchover to" # features/steps/patroni_api.py:98 1183s Dec 27 19:50:21 When I issue a POST request to http://127.0.0.1:8008/switchover with {"leader": "postgres0"} # features/steps/patroni_api.py:71 1183s Dec 27 19:50:21 Then I receive a response code 412 # features/steps/patroni_api.py:98 1183s Dec 27 19:50:21 And I receive a response text switchover is not possible: cluster does not have members except leader # features/steps/patroni_api.py:98 1183s Dec 27 19:50:21 When I issue an empty POST request to http://127.0.0.1:8008/failover # features/steps/patroni_api.py:66 1183s Dec 27 19:50:21 Then I receive a response code 400 # features/steps/patroni_api.py:98 1183s Dec 27 19:50:21 When I issue a POST request to http://127.0.0.1:8008/failover with {"foo": "bar"} # features/steps/patroni_api.py:71 1183s Dec 27 19:50:21 Then I receive a response code 400 # features/steps/patroni_api.py:98 1183s Dec 27 19:50:21 And I receive a response text "Failover could be performed only to a specific candidate" # features/steps/patroni_api.py:98 1183s Dec 27 19:50:21 1183s Dec 27 19:50:21 Scenario: check local configuration reload # features/patroni_api.feature:32 1183s Dec 27 19:50:21 Given I add tag new_tag new_value to postgres0 config # features/steps/patroni_api.py:137 1183s Dec 27 19:50:21 And I issue an empty POST request to http://127.0.0.1:8008/reload # features/steps/patroni_api.py:66 1183s Dec 27 19:50:21 Then I receive a response code 202 # features/steps/patroni_api.py:98 1183s Dec 27 19:50:21 1183s Dec 27 19:50:21 Scenario: check dynamic configuration change via DCS # features/patroni_api.feature:37 1183s Dec 27 19:50:21 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 1184s Dec 27 19:50:22 Then I receive a response code 200 # features/steps/patroni_api.py:98 1184s Dec 27 19:50:22 And Response on GET http://127.0.0.1:8008/patroni contains pending_restart after 11 seconds # features/steps/patroni_api.py:156 1186s Dec 27 19:50:24 When I issue a GET request to http://127.0.0.1:8008/config # features/steps/patroni_api.py:61 1186s Dec 27 19:50:24 Then I receive a response code 200 # features/steps/patroni_api.py:98 1186s Dec 27 19:50:24 And I receive a response ttl 20 # features/steps/patroni_api.py:98 1186s Dec 27 19:50:24 When I issue a GET request to http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:61 1186s Dec 27 19:50:24 Then I receive a response code 200 # features/steps/patroni_api.py:98 1186s Dec 27 19:50:24 And I receive a response tags {'new_tag': 'new_value'} # features/steps/patroni_api.py:98 1186s Dec 27 19:50:24 And I sleep for 4 seconds # features/steps/patroni_api.py:39 1190s Dec 27 19:50:28 1190s Dec 27 19:50:28 Scenario: check the scheduled restart # features/patroni_api.feature:49 1190s Dec 27 19:50:28 Given I run patronictl.py edit-config -p 'superuser_reserved_connections=6' --force batman # features/steps/patroni_api.py:86 1192s Dec 27 19:50:30 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 1192s Dec 27 19:50:30 And I receive a response output "+ superuser_reserved_connections: 6" # features/steps/patroni_api.py:98 1192s Dec 27 19:50:30 And Response on GET http://127.0.0.1:8008/patroni contains pending_restart after 5 seconds # features/steps/patroni_api.py:156 1192s Dec 27 19:50: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 1192s Dec 27 19:50:30 Then I receive a response code 202 # features/steps/patroni_api.py:98 1192s Dec 27 19:50:30 And I sleep for 8 seconds # features/steps/patroni_api.py:39 1200s Dec 27 19:50:38 And Response on GET http://127.0.0.1:8008/patroni contains pending_restart after 10 seconds # features/steps/patroni_api.py:156 1200s Dec 27 19:50: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 1200s Dec 27 19:50:38 Then I receive a response code 202 # features/steps/patroni_api.py:98 1200s Dec 27 19:50: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 1207s Dec 27 19:50:45 And postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:105 1208s Dec 27 19:50:46 1208s Dec 27 19:50:46 Scenario: check API requests for the primary-replica pair in the pause mode # features/patroni_api.feature:63 1208s Dec 27 19:50:46 Given I start postgres1 # features/steps/basic_replication.py:8 1212s Dec 27 19:50:50 Then replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:112 1213s Dec 27 19:50:51 When I run patronictl.py pause batman # features/steps/patroni_api.py:86 1215s Dec 27 19:50:53 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 1215s Dec 27 19:50:53 When I kill postmaster on postgres1 # features/steps/basic_replication.py:44 1215s Dec 27 19:50:53 waiting for server to shut down.... done 1215s Dec 27 19:50:53 server stopped 1215s Dec 27 19:50:53 And I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:61 1215s Dec 27 19:50:53 Then I receive a response code 503 # features/steps/patroni_api.py:98 1215s Dec 27 19:50:53 And "members/postgres1" key in DCS has state=stopped after 10 seconds # features/steps/cascading_replication.py:23 1216s Dec 27 19:50:54 When I run patronictl.py restart batman postgres1 --force # features/steps/patroni_api.py:86 1220s Dec 27 19:50:58 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 1220s Dec 27 19:50:58 Then replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:112 1221s Dec 27 19:50:59 And I sleep for 2 seconds # features/steps/patroni_api.py:39 1223s Dec 27 19:51:01 When I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:61 1223s Dec 27 19:51:01 Then I receive a response code 200 # features/steps/patroni_api.py:98 1223s Dec 27 19:51:01 And I receive a response state running # features/steps/patroni_api.py:98 1223s Dec 27 19:51:01 And I receive a response role replica # features/steps/patroni_api.py:98 1223s Dec 27 19:51:01 When I run patronictl.py reinit batman postgres1 --force --wait # features/steps/patroni_api.py:86 1228s Dec 27 19:51:06 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 1228s Dec 27 19:51:06 And I receive a response output "Success: reinitialize for member postgres1" # features/steps/patroni_api.py:98 1228s Dec 27 19:51:06 And postgres1 role is the secondary after 30 seconds # features/steps/basic_replication.py:105 1229s Dec 27 19:51:07 And replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:112 1230s Dec 27 19:51:08 When I run patronictl.py restart batman postgres0 --force # features/steps/patroni_api.py:86 1233s Dec 27 19:51:11 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 1233s Dec 27 19:51:11 And I receive a response output "Success: restart on member postgres0" # features/steps/patroni_api.py:98 1233s Dec 27 19:51:11 And postgres0 role is the primary after 5 seconds # features/steps/basic_replication.py:105 1234s Dec 27 19:51:12 1234s Dec 27 19:51:12 Scenario: check the switchover via the API in the pause mode # features/patroni_api.feature:90 1234s Dec 27 19:51:12 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 1236s Dec 27 19:51:14 Then I receive a response code 200 # features/steps/patroni_api.py:98 1236s Dec 27 19:51:14 And postgres1 is a leader after 5 seconds # features/steps/patroni_api.py:29 1236s Dec 27 19:51:14 And postgres1 role is the primary after 10 seconds # features/steps/basic_replication.py:105 1237s Dec 27 19:51:15 And postgres0 role is the secondary after 10 seconds # features/steps/basic_replication.py:105 1241s Dec 27 19:51:19 And replication works from postgres1 to postgres0 after 20 seconds # features/steps/basic_replication.py:112 1241s Dec 27 19:51:19 And "members/postgres0" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 1242s Dec 27 19:51:20 When I issue a GET request to http://127.0.0.1:8008/primary # features/steps/patroni_api.py:61 1242s Dec 27 19:51:20 Then I receive a response code 503 # features/steps/patroni_api.py:98 1242s Dec 27 19:51:20 When I issue a GET request to http://127.0.0.1:8008/replica # features/steps/patroni_api.py:61 1242s Dec 27 19:51:20 Then I receive a response code 200 # features/steps/patroni_api.py:98 1242s Dec 27 19:51:20 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:61 1242s Dec 27 19:51:20 Then I receive a response code 200 # features/steps/patroni_api.py:98 1242s Dec 27 19:51:20 When I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:61 1242s Dec 27 19:51:20 Then I receive a response code 503 # features/steps/patroni_api.py:98 1242s Dec 27 19:51:20 1242s Dec 27 19:51:20 Scenario: check the scheduled switchover # features/patroni_api.feature:107 1242s Dec 27 19:51:20 Given I issue a scheduled switchover from postgres1 to postgres0 in 10 seconds # features/steps/patroni_api.py:117 1244s Dec 27 19:51:22 Then I receive a response returncode 1 # features/steps/patroni_api.py:98 1244s Dec 27 19:51:22 And I receive a response output "Can't schedule switchover in the paused state" # features/steps/patroni_api.py:98 1244s Dec 27 19:51:22 When I run patronictl.py resume batman # features/steps/patroni_api.py:86 1247s Dec 27 19:51:25 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 1247s Dec 27 19:51:25 Given I issue a scheduled switchover from postgres1 to postgres0 in 10 seconds # features/steps/patroni_api.py:117 1249s Dec 27 19:51:27 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 1249s Dec 27 19:51:27 And postgres0 is a leader after 20 seconds # features/steps/patroni_api.py:29 1259s Dec 27 19:51:37 And postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:105 1259s Dec 27 19:51:37 And postgres1 role is the secondary after 10 seconds # features/steps/basic_replication.py:105 1261s Dec 27 19:51:39 And replication works from postgres0 to postgres1 after 25 seconds # features/steps/basic_replication.py:112 1261s Dec 27 19:51:39 And "members/postgres1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 1262s Dec 27 19:51:40 When I issue a GET request to http://127.0.0.1:8008/primary # features/steps/patroni_api.py:61 1262s Dec 27 19:51:40 Then I receive a response code 200 # features/steps/patroni_api.py:98 1262s Dec 27 19:51:40 When I issue a GET request to http://127.0.0.1:8008/replica # features/steps/patroni_api.py:61 1262s Dec 27 19:51:40 Then I receive a response code 503 # features/steps/patroni_api.py:98 1262s Dec 27 19:51:40 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:61 1262s Dec 27 19:51:40 Then I receive a response code 503 # features/steps/patroni_api.py:98 1262s Dec 27 19:51:40 When I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:61 1262s Dec 27 19:51:40 Then I receive a response code 200 # features/steps/patroni_api.py:98 1266s Dec 27 19:51:44 1266s Dec 27 19:51:44 Feature: permanent slots # features/permanent_slots.feature:1 1266s Dec 27 19:51:44 1266s Dec 27 19:51:44 Scenario: check that physical permanent slots are created # features/permanent_slots.feature:2 1266s Dec 27 19:51:44 Given I start postgres0 # features/steps/basic_replication.py:8 1270s Dec 27 19:51:48 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 1271s Dec 27 19:51:49 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 1271s Dec 27 19:51: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 1271s Dec 27 19:51:49 Then I receive a response code 200 # features/steps/patroni_api.py:98 1271s Dec 27 19:51:49 And Response on GET http://127.0.0.1:8008/config contains slots after 10 seconds # features/steps/patroni_api.py:156 1272s Dec 27 19:51:50 When I start postgres1 # features/steps/basic_replication.py:8 1276s Dec 27 19:51:54 And I configure and start postgres2 with a tag nofailover true # features/steps/cascading_replication.py:7 1280s Dec 27 19:51:58 And I configure and start postgres3 with a tag replicatefrom postgres2 # features/steps/cascading_replication.py:7 1284s Dec 27 19:52:02 Then postgres0 has a physical replication slot named test_physical after 10 seconds # features/steps/slots.py:80 1284s Dec 27 19:52:02 And postgres0 has a physical replication slot named postgres1 after 10 seconds # features/steps/slots.py:80 1284s Dec 27 19:52:02 And postgres0 has a physical replication slot named postgres2 after 10 seconds # features/steps/slots.py:80 1284s Dec 27 19:52:02 And postgres2 has a physical replication slot named postgres3 after 10 seconds # features/steps/slots.py:80 1284s Dec 27 19:52:02 And postgres2 does not have a replication slot named test_physical # features/steps/slots.py:40 1284s Dec 27 19:52:02 1284s Dec 27 19:52:02 @slot-advance 1284s Dec 27 19:52:02 Scenario: check that logical permanent slots are created # features/permanent_slots.feature:19 1284s Dec 27 19:52:02 Given I run patronictl.py restart batman postgres0 --force # features/steps/patroni_api.py:86 1288s Dec 27 19:52:06 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 1288s Dec 27 19:52:06 Then postgres0 has a logical replication slot named test_logical with the test_decoding plugin after 10 seconds # features/steps/slots.py:19 1289s Dec 27 19:52:07 1289s Dec 27 19:52:07 @slot-advance 1289s Dec 27 19:52:07 Scenario: check that permanent slots are created on replicas # features/permanent_slots.feature:25 1289s Dec 27 19:52:07 Given postgres1 has a logical replication slot named test_logical with the test_decoding plugin after 10 seconds # features/steps/slots.py:19 1294s Dec 27 19:52:12 Then Logical slot test_logical is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 1294s Dec 27 19:52:12 And Logical slot test_logical is in sync between postgres0 and postgres3 after 10 seconds # features/steps/slots.py:51 1295s Dec 27 19:52:13 And postgres1 has a physical replication slot named test_physical after 2 seconds # features/steps/slots.py:80 1295s Dec 27 19:52:13 And postgres2 does not have a replication slot named test_logical # features/steps/slots.py:40 1295s Dec 27 19:52:13 And postgres3 has a physical replication slot named test_physical after 2 seconds # features/steps/slots.py:80 1295s Dec 27 19:52:13 1295s Dec 27 19:52:13 @slot-advance 1295s Dec 27 19:52:13 Scenario: check permanent physical slots that match with member names # features/permanent_slots.feature:34 1295s Dec 27 19:52:13 Given postgres0 has a physical replication slot named postgres3 after 2 seconds # features/steps/slots.py:80 1295s Dec 27 19:52:13 And postgres1 has a physical replication slot named postgres0 after 2 seconds # features/steps/slots.py:80 1295s Dec 27 19:52:13 And postgres1 has a physical replication slot named postgres3 after 2 seconds # features/steps/slots.py:80 1295s Dec 27 19:52:13 And postgres2 does not have a replication slot named postgres0 # features/steps/slots.py:40 1295s Dec 27 19:52:13 And postgres2 does not have a replication slot named postgres1 # features/steps/slots.py:40 1295s Dec 27 19:52:13 And postgres2 has a physical replication slot named postgres3 after 2 seconds # features/steps/slots.py:80 1295s Dec 27 19:52:13 And postgres1 does not have a replication slot named postgres2 # features/steps/slots.py:40 1295s Dec 27 19:52:13 And postgres3 does not have a replication slot named postgres2 # features/steps/slots.py:40 1295s Dec 27 19:52:13 1295s Dec 27 19:52:13 @slot-advance 1295s Dec 27 19:52:13 Scenario: check that permanent slots are advanced on replicas # features/permanent_slots.feature:45 1295s Dec 27 19:52:13 Given I add the table replicate_me to postgres0 # features/steps/basic_replication.py:54 1295s Dec 27 19:52:13 When I get all changes from logical slot test_logical on postgres0 # features/steps/slots.py:70 1295s Dec 27 19:52:13 And I get all changes from physical slot test_physical on postgres0 # features/steps/slots.py:75 1295s Dec 27 19:52:13 Then Logical slot test_logical is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 1296s Dec 27 19:52:14 And Physical slot test_physical is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 1296s Dec 27 19:52:14 And Logical slot test_logical is in sync between postgres0 and postgres3 after 10 seconds # features/steps/slots.py:51 1296s Dec 27 19:52:14 And Physical slot test_physical is in sync between postgres0 and postgres3 after 10 seconds # features/steps/slots.py:51 1296s Dec 27 19:52:14 And Physical slot postgres3 is in sync between postgres2 and postgres0 after 20 seconds # features/steps/slots.py:51 1298s Dec 27 19:52:16 And Physical slot postgres3 is in sync between postgres2 and postgres1 after 10 seconds # features/steps/slots.py:51 1298s Dec 27 19:52:16 And postgres1 does not have a replication slot named postgres2 # features/steps/slots.py:40 1298s Dec 27 19:52:16 And postgres3 does not have a replication slot named postgres2 # features/steps/slots.py:40 1298s Dec 27 19:52:16 1298s Dec 27 19:52:16 @slot-advance 1298s Dec 27 19:52:16 Scenario: check that only permanent slots are written to the /status key # features/permanent_slots.feature:59 1298s Dec 27 19:52:16 Given "status" key in DCS has test_physical in slots # features/steps/slots.py:116 1298s Dec 27 19:52:16 And "status" key in DCS has postgres0 in slots # features/steps/slots.py:116 1298s Dec 27 19:52:16 And "status" key in DCS has postgres1 in slots # features/steps/slots.py:116 1298s Dec 27 19:52:16 And "status" key in DCS does not have postgres2 in slots # features/steps/slots.py:122 1298s Dec 27 19:52:16 And "status" key in DCS has postgres3 in slots # features/steps/slots.py:116 1298s Dec 27 19:52:16 1298s Dec 27 19:52:16 Scenario: check permanent physical replication slot after failover # features/permanent_slots.feature:66 1298s Dec 27 19:52:16 Given I shut down postgres3 # features/steps/basic_replication.py:29 1299s Dec 27 19:52:17 And I shut down postgres2 # features/steps/basic_replication.py:29 1300s Dec 27 19:52:18 And I shut down postgres0 # features/steps/basic_replication.py:29 1302s Dec 27 19:52:20 Then postgres1 has a physical replication slot named test_physical after 10 seconds # features/steps/slots.py:80 1302s Dec 27 19:52:20 And postgres1 has a physical replication slot named postgres0 after 10 seconds # features/steps/slots.py:80 1302s Dec 27 19:52:20 And postgres1 has a physical replication slot named postgres3 after 10 seconds # features/steps/slots.py:80 1302s Dec 27 19:52:20 When I start postgres0 # features/steps/basic_replication.py:8 1306s Dec 27 19:52:24 Then postgres0 role is the replica after 20 seconds # features/steps/basic_replication.py:105 1306s Dec 27 19:52:24 And physical replication slot named postgres1 on postgres0 has no xmin value after 10 seconds # features/steps/slots.py:96 1306s Dec 27 19:52:24 And physical replication slot named postgres2 on postgres0 has no xmin value after 10 seconds # features/steps/slots.py:96 1309s Dec 27 19:52:27 1309s Dec 27 19:52:27 Feature: priority replication # features/priority_failover.feature:1 1309s Dec 27 19:52:27 We should check that we can give nodes priority during failover 1309s Dec 27 19:52:27 Scenario: check failover priority 0 prevents leaderships # features/priority_failover.feature:4 1309s Dec 27 19:52:27 Given I configure and start postgres0 with a tag failover_priority 1 # features/steps/cascading_replication.py:7 1313s Dec 27 19:52:31 And I configure and start postgres1 with a tag failover_priority 0 # features/steps/cascading_replication.py:7 1317s Dec 27 19:52:35 Then replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:112 1317s Dec 27 19:52:35 When I shut down postgres0 # features/steps/basic_replication.py:29 1319s Dec 27 19:52:37 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:121 1321s Dec 27 19:52:39 Then postgres1 role is the secondary after 10 seconds # features/steps/basic_replication.py:105 1321s Dec 27 19:52:39 When I start postgres0 # features/steps/basic_replication.py:8 1324s Dec 27 19:52:42 Then postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:105 1326s Dec 27 19:52:44 1326s Dec 27 19:52:44 Scenario: check higher failover priority is respected # features/priority_failover.feature:14 1326s Dec 27 19:52:44 Given I configure and start postgres2 with a tag failover_priority 1 # features/steps/cascading_replication.py:7 1330s Dec 27 19:52:48 And I configure and start postgres3 with a tag failover_priority 2 # features/steps/cascading_replication.py:7 1334s Dec 27 19:52:52 Then replication works from postgres0 to postgres2 after 20 seconds # features/steps/basic_replication.py:112 1335s Dec 27 19:52:53 And replication works from postgres0 to postgres3 after 20 seconds # features/steps/basic_replication.py:112 1336s Dec 27 19:52:54 When I shut down postgres0 # features/steps/basic_replication.py:29 1338s Dec 27 19:52:56 Then postgres3 role is the primary after 10 seconds # features/steps/basic_replication.py:105 1340s Dec 27 19:52:57 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:121 1340s Dec 27 19:52:57 1340s Dec 27 19:52:57 Scenario: check conflicting configuration handling # features/priority_failover.feature:23 1340s Dec 27 19:52:57 When I set nofailover tag in postgres2 config # features/steps/patroni_api.py:131 1340s Dec 27 19:52:57 And I issue an empty POST request to http://127.0.0.1:8010/reload # features/steps/patroni_api.py:66 1340s Dec 27 19:52:58 Then I receive a response code 202 # features/steps/patroni_api.py:98 1340s Dec 27 19:52:58 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:121 1341s Dec 27 19:52:59 And "members/postgres2" key in DCS has tags={'failover_priority': '1', 'nofailover': True} after 10 seconds # features/steps/cascading_replication.py:23 1342s Dec 27 19:53:00 When I issue a POST request to http://127.0.0.1:8010/failover with {"candidate": "postgres2"} # features/steps/patroni_api.py:71 1342s Dec 27 19:53:00 Then I receive a response code 412 # features/steps/patroni_api.py:98 1342s Dec 27 19:53:00 And I receive a response text "failover is not possible: no good candidates have been found" # features/steps/patroni_api.py:98 1342s Dec 27 19:53:00 When I reset nofailover tag in postgres1 config # features/steps/patroni_api.py:131 1342s Dec 27 19:53:00 And I issue an empty POST request to http://127.0.0.1:8009/reload # features/steps/patroni_api.py:66 1342s Dec 27 19:53:00 Then I receive a response code 202 # features/steps/patroni_api.py:98 1342s Dec 27 19:53:00 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:121 1344s Dec 27 19:53:02 And "members/postgres1" key in DCS has tags={'failover_priority': '0', 'nofailover': False} after 10 seconds # features/steps/cascading_replication.py:23 1345s Dec 27 19:53:03 And I issue a POST request to http://127.0.0.1:8009/failover with {"candidate": "postgres1"} # features/steps/patroni_api.py:71 1347s Dec 27 19:53:05 Then I receive a response code 200 # features/steps/patroni_api.py:98 1347s Dec 27 19:53:05 And postgres1 role is the primary after 10 seconds # features/steps/basic_replication.py:105 1351s Dec 27 19:53:09 1351s Dec 27 19:53:09 Feature: recovery # features/recovery.feature:1 1351s Dec 27 19:53:09 We want to check that crashed postgres is started back 1351s Dec 27 19:53:09 Scenario: check that timeline is not incremented when primary is started after crash # features/recovery.feature:4 1351s Dec 27 19:53:09 Given I start postgres0 # features/steps/basic_replication.py:8 1355s Dec 27 19:53:13 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 1356s Dec 27 19:53:14 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 1356s Dec 27 19:53:14 When I start postgres1 # features/steps/basic_replication.py:8 1361s Dec 27 19:53:18 And I add the table foo to postgres0 # features/steps/basic_replication.py:54 1361s Dec 27 19:53:18 Then table foo is present on postgres1 after 20 seconds # features/steps/basic_replication.py:93 1361s Dec 27 19:53:19 When I kill postmaster on postgres0 # features/steps/basic_replication.py:44 1361s Dec 27 19:53:19 waiting for server to shut down.... done 1361s Dec 27 19:53:19 server stopped 1361s Dec 27 19:53:19 Then postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:105 1362s Dec 27 19:53:20 When I issue a GET request to http://127.0.0.1:8008/ # features/steps/patroni_api.py:61 1362s Dec 27 19:53:20 Then I receive a response code 200 # features/steps/patroni_api.py:98 1362s Dec 27 19:53:20 And I receive a response role master # features/steps/patroni_api.py:98 1362s Dec 27 19:53:20 And I receive a response timeline 1 # features/steps/patroni_api.py:98 1362s Dec 27 19:53:20 And "members/postgres0" key in DCS has state=running after 12 seconds # features/steps/cascading_replication.py:23 1363s Dec 27 19:53:21 And replication works from postgres0 to postgres1 after 15 seconds # features/steps/basic_replication.py:112 1367s Dec 27 19:53:25 1367s Dec 27 19:53:25 Scenario: check immediate failover when master_start_timeout=0 # features/recovery.feature:20 1367s Dec 27 19:53:25 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 1367s Dec 27 19:53:25 Then I receive a response code 200 # features/steps/patroni_api.py:98 1367s Dec 27 19:53:25 And Response on GET http://127.0.0.1:8008/config contains master_start_timeout after 10 seconds # features/steps/patroni_api.py:156 1367s Dec 27 19:53:25 When I kill postmaster on postgres0 # features/steps/basic_replication.py:44 1368s Dec 27 19:53:25 waiting for server to shut down.... done 1368s Dec 27 19:53:25 server stopped 1368s Dec 27 19:53:25 Then postgres1 is a leader after 10 seconds # features/steps/patroni_api.py:29 1370s Dec 27 19:53:27 And postgres1 role is the primary after 10 seconds # features/steps/basic_replication.py:105 1374s Dec 27 19:53:32 1374s Dec 27 19:53:32 Feature: standby cluster # features/standby_cluster.feature:1 1374s Dec 27 19:53:32 1374s Dec 27 19:53:32 Scenario: prepare the cluster with logical slots # features/standby_cluster.feature:2 1374s Dec 27 19:53:32 Given I start postgres1 # features/steps/basic_replication.py:8 1378s Dec 27 19:53:36 Then postgres1 is a leader after 10 seconds # features/steps/patroni_api.py:29 1379s Dec 27 19:53:37 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 1379s Dec 27 19:53:37 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 1379s Dec 27 19:53:37 Then I receive a response code 200 # features/steps/patroni_api.py:98 1379s Dec 27 19:53:37 And Response on GET http://127.0.0.1:8009/config contains slots after 10 seconds # features/steps/patroni_api.py:156 1379s Dec 27 19:53:37 And I sleep for 3 seconds # features/steps/patroni_api.py:39 1382s Dec 27 19:53:40 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 1382s Dec 27 19:53:40 Then I receive a response code 200 # features/steps/patroni_api.py:98 1382s Dec 27 19:53:40 And I do a backup of postgres1 # features/steps/custom_bootstrap.py:25 1382s Dec 27 19:53:40 When I start postgres0 # features/steps/basic_replication.py:8 1386s Dec 27 19:53:44 Then "members/postgres0" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 1386s Dec 27 19:53:44 And replication works from postgres1 to postgres0 after 15 seconds # features/steps/basic_replication.py:112 1387s Dec 27 19:53:45 When I issue a GET request to http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:61 1387s Dec 27 19:53:45 Then I receive a response code 200 # features/steps/patroni_api.py:98 1387s Dec 27 19:53:45 And I receive a response replication_state streaming # features/steps/patroni_api.py:98 1387s Dec 27 19:53:45 And "members/postgres0" key in DCS has replication_state=streaming after 10 seconds # features/steps/cascading_replication.py:23 1387s Dec 27 19:53:45 1387s Dec 27 19:53:45 @slot-advance 1387s Dec 27 19:53:45 Scenario: check permanent logical slots are synced to the replica # features/standby_cluster.feature:22 1387s Dec 27 19:53:45 Given I run patronictl.py restart batman postgres1 --force # features/steps/patroni_api.py:86 1390s Dec 27 19:53:48 Then Logical slot test_logical is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 1395s Dec 27 19:53:53 1395s Dec 27 19:53:53 Scenario: Detach exiting node from the cluster # features/standby_cluster.feature:26 1395s Dec 27 19:53:53 When I shut down postgres1 # features/steps/basic_replication.py:29 1397s Dec 27 19:53:55 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 1397s Dec 27 19:53:55 And "members/postgres0" key in DCS has role=master after 5 seconds # features/steps/cascading_replication.py:23 1398s Dec 27 19:53:56 When I issue a GET request to http://127.0.0.1:8008/ # features/steps/patroni_api.py:61 1398s Dec 27 19:53:56 Then I receive a response code 200 # features/steps/patroni_api.py:98 1398s Dec 27 19:53:56 1398s Dec 27 19:53:56 Scenario: check replication of a single table in a standby cluster # features/standby_cluster.feature:33 1398s Dec 27 19:53:56 Given I start postgres1 in a standby cluster batman1 as a clone of postgres0 # features/steps/standby_cluster.py:23 1402s Dec 27 19:54:00 Then postgres1 is a leader of batman1 after 10 seconds # features/steps/custom_bootstrap.py:16 1402s Dec 27 19:54:00 When I add the table foo to postgres0 # features/steps/basic_replication.py:54 1402s Dec 27 19:54:00 Then table foo is present on postgres1 after 20 seconds # features/steps/basic_replication.py:93 1402s Dec 27 19:54:00 When I issue a GET request to http://127.0.0.1:8009/patroni # features/steps/patroni_api.py:61 1402s Dec 27 19:54:00 Then I receive a response code 200 # features/steps/patroni_api.py:98 1402s Dec 27 19:54:00 And I receive a response replication_state streaming # features/steps/patroni_api.py:98 1402s Dec 27 19:54:00 And I sleep for 3 seconds # features/steps/patroni_api.py:39 1405s Dec 27 19:54:03 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:61 1406s Dec 27 19:54:03 Then I receive a response code 503 # features/steps/patroni_api.py:98 1406s Dec 27 19:54:03 When I issue a GET request to http://127.0.0.1:8009/standby_leader # features/steps/patroni_api.py:61 1406s Dec 27 19:54:04 Then I receive a response code 200 # features/steps/patroni_api.py:98 1406s Dec 27 19:54:04 And I receive a response role standby_leader # features/steps/patroni_api.py:98 1406s Dec 27 19:54:04 And there is a postgres1_cb.log with "on_role_change standby_leader batman1" in postgres1 data directory # features/steps/cascading_replication.py:12 1406s Dec 27 19:54:04 When I start postgres2 in a cluster batman1 # features/steps/standby_cluster.py:12 1410s Dec 27 19:54:08 Then postgres2 role is the replica after 24 seconds # features/steps/basic_replication.py:105 1410s Dec 27 19:54:08 And postgres2 is replicating from postgres1 after 10 seconds # features/steps/standby_cluster.py:52 1410s Dec 27 19:54:08 And table foo is present on postgres2 after 20 seconds # features/steps/basic_replication.py:93 1410s Dec 27 19:54:08 When I issue a GET request to http://127.0.0.1:8010/patroni # features/steps/patroni_api.py:61 1410s Dec 27 19:54:08 Then I receive a response code 200 # features/steps/patroni_api.py:98 1410s Dec 27 19:54:08 And I receive a response replication_state streaming # features/steps/patroni_api.py:98 1410s Dec 27 19:54:08 And postgres1 does not have a replication slot named test_logical # features/steps/slots.py:40 1410s Dec 27 19:54:08 1410s Dec 27 19:54:08 Scenario: check switchover # features/standby_cluster.feature:57 1410s Dec 27 19:54:08 Given I run patronictl.py switchover batman1 --force # features/steps/patroni_api.py:86 1414s Dec 27 19:54:12 Then Status code on GET http://127.0.0.1:8010/standby_leader is 200 after 10 seconds # features/steps/patroni_api.py:142 1414s Dec 27 19:54:12 And postgres1 is replicating from postgres2 after 32 seconds # features/steps/standby_cluster.py:52 1416s Dec 27 19:54:14 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 1416s Dec 27 19:54:14 1416s Dec 27 19:54:14 Scenario: check failover # features/standby_cluster.feature:63 1416s Dec 27 19:54:14 When I kill postgres2 # features/steps/basic_replication.py:34 1417s Dec 27 19:54:15 And I kill postmaster on postgres2 # features/steps/basic_replication.py:44 1417s Dec 27 19:54:15 waiting for server to shut down.... done 1417s Dec 27 19:54:15 server stopped 1417s Dec 27 19:54:15 Then postgres1 is replicating from postgres0 after 32 seconds # features/steps/standby_cluster.py:52 1436s Dec 27 19:54:34 And Status code on GET http://127.0.0.1:8009/standby_leader is 200 after 10 seconds # features/steps/patroni_api.py:142 1436s Dec 27 19:54:34 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:61 1436s Dec 27 19:54:34 Then I receive a response code 503 # features/steps/patroni_api.py:98 1436s Dec 27 19:54:34 And I receive a response role standby_leader # features/steps/patroni_api.py:98 1436s Dec 27 19:54:34 And replication works from postgres0 to postgres1 after 15 seconds # features/steps/basic_replication.py:112 1437s Dec 27 19:54:35 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 1442s Dec 27 19:54:39 1442s Dec 27 19:54:39 Feature: watchdog # features/watchdog.feature:1 1442s Dec 27 19:54:39 Verify that watchdog gets pinged and triggered under appropriate circumstances. 1442s Dec 27 19:54:39 Scenario: watchdog is opened and pinged # features/watchdog.feature:4 1442s Dec 27 19:54:39 Given I start postgres0 with watchdog # features/steps/watchdog.py:16 1445s Dec 27 19:54:43 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 1445s Dec 27 19:54:43 And postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:105 1445s Dec 27 19:54:43 And postgres0 watchdog has been pinged after 10 seconds # features/steps/watchdog.py:21 1447s Dec 27 19:54:44 And postgres0 watchdog has a 15 second timeout # features/steps/watchdog.py:34 1447s Dec 27 19:54:44 1447s Dec 27 19:54:44 Scenario: watchdog is reconfigured after global ttl changed # features/watchdog.feature:11 1447s Dec 27 19:54:44 Given I run patronictl.py edit-config batman -s ttl=30 --force # features/steps/patroni_api.py:86 1449s Dec 27 19:54:47 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 1449s Dec 27 19:54:47 And I receive a response output "+ttl: 30" # features/steps/patroni_api.py:98 1449s Dec 27 19:54:47 When I sleep for 4 seconds # features/steps/patroni_api.py:39 1453s Dec 27 19:54:51 Then postgres0 watchdog has a 25 second timeout # features/steps/watchdog.py:34 1453s Dec 27 19:54:51 1453s Dec 27 19:54:51 Scenario: watchdog is disabled during pause # features/watchdog.feature:18 1453s Dec 27 19:54:51 Given I run patronictl.py pause batman # features/steps/patroni_api.py:86 1455s Dec 27 19:54:53 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 1455s Dec 27 19:54:53 When I sleep for 2 seconds # features/steps/patroni_api.py:39 1457s Dec 27 19:54:55 Then postgres0 watchdog has been closed # features/steps/watchdog.py:29 1457s Dec 27 19:54:55 1457s Dec 27 19:54:55 Scenario: watchdog is opened and pinged after resume # features/watchdog.feature:24 1457s Dec 27 19:54:55 Given I reset postgres0 watchdog state # features/steps/watchdog.py:39 1457s Dec 27 19:54:55 And I run patronictl.py resume batman # features/steps/patroni_api.py:86 1459s Dec 27 19:54:57 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 1459s Dec 27 19:54:57 And postgres0 watchdog has been pinged after 10 seconds # features/steps/watchdog.py:21 1460s Dec 27 19:54:58 1460s Dec 27 19:54:58 Scenario: watchdog is disabled when shutting down # features/watchdog.feature:30 1460s Dec 27 19:54:58 Given I shut down postgres0 # features/steps/basic_replication.py:29 1462s Dec 27 19:55:00 Then postgres0 watchdog has been closed # features/steps/watchdog.py:29 1462s Dec 27 19:55:00 1462s Dec 27 19:55:00 Scenario: watchdog is triggered if patroni stops responding # features/watchdog.feature:34 1462s Dec 27 19:55:00 Given I reset postgres0 watchdog state # features/steps/watchdog.py:39 1462s Dec 27 19:55:00 And I start postgres0 with watchdog # features/steps/watchdog.py:16 1465s Dec 27 19:55:03 Then postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:105 1468s Dec 27 19:55:05 When postgres0 hangs for 30 seconds # features/steps/watchdog.py:52 1468s Dec 27 19:55:05 Then postgres0 watchdog is triggered after 30 seconds # features/steps/watchdog.py:44 1495s Dec 27 19:55:32 1496s 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'))") 1496s 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'))") 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.5224.XzgthCAx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.5270.XOsZNJux 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.5315.XJwHmoGx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.5365.XtVscghx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.5411.XPJyKZox 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.5483.XHsHWNTx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.5531.XcKAikxx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.5534.XZchEcHx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.5629.XWEgpwYx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.5727.XQHXTOBx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.5734.XlfgKSDx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.5779.XUeFagzx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.5825.XenJbGWx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.5992.XEPCKjGx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.6039.XLCVnMxx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.6094.XCHgcsqx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.6182.XypycKnx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.6507.XfSbjjHx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.6583.XkLhklyx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.6671.Xzoajzzx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.6900.XUPZYlFx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.6953.XGXdXvVx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.7015.XURudpDx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.7106.XvmTbsUx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.7203.XYgaerqx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.7237.XcyoRorx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.7312.XXCYToox 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.7348.XiEWqXUx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.7531.XBElsXgx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.7580.XXufISlx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.7595.XWFZeKLx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.7635.XiQEZGmx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.7682.XjTSqFpx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.7687.XYcaHCUx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.7725.XxJaFAex 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.7768.XMkwCYbx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.7934.XfhTXnOx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.7936.XTFksZDx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.7941.XFJlkjxx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.8075.XekeuDYx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.8123.XQlxuQdx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.8169.XHGZvmJx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.8224.XcqbWhMx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.8274.XabwGxux 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.8434.XdreXUcx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.8499.XXtxfkix 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.8542.XDNhcuQx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.8613.XuWCyaZx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.8695.XexCoQnx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.8760.XMlTyHix 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.9090.XbLXIzKx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.9135.XWkWEigx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.9273.XcxWSLPx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.9338.XEGrzntx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.9397.XeAvHLcx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.9501.XkBgbWNx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.9615.XzuTNSXx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.9742.XCorWzfx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.9785.XqYNjPmx 1496s Dec 27 19:55:34 Skipping duplicate data .coverage.autopkgtest.9787.XspcAWmx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.9790.XdQuoCZx 1496s Dec 27 19:55:34 Combined data file .coverage.autopkgtest.9801.XhvonHHx 1499s Dec 27 19:55:37 Name Stmts Miss Cover 1499s Dec 27 19:55:37 ------------------------------------------------------------------------------------------------------------- 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/OpenSSL/SSL.py 1159 642 45% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/OpenSSL/__init__.py 4 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/OpenSSL/_util.py 42 14 67% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/OpenSSL/crypto.py 865 658 24% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/OpenSSL/version.py 10 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/_distutils_hack/__init__.py 101 96 5% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/bcrypt/__init__.py 3 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/__about__.py 5 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/__init__.py 3 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/exceptions.py 26 5 81% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/hazmat/__init__.py 2 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/hazmat/_oid.py 135 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/__init__.py 0 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/__init__.py 0 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/_conditional.py 38 17 55% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/binding.py 51 4 92% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/hazmat/decrepit/__init__.py 1 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/hazmat/decrepit/ciphers/__init__.py 1 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/hazmat/decrepit/ciphers/algorithms.py 68 18 74% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/__init__.py 0 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_asymmetric.py 6 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_cipheralgorithm.py 23 4 83% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_serialization.py 79 35 56% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/__init__.py 0 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/dh.py 47 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/dsa.py 55 5 91% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/ec.py 172 22 87% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/ed448.py 45 12 73% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/ed25519.py 43 12 72% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/padding.py 55 23 58% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/rsa.py 93 40 57% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/types.py 19 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/utils.py 14 5 64% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/x448.py 43 12 72% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/x25519.py 41 12 71% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/__init__.py 4 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/algorithms.py 72 15 79% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/base.py 54 12 78% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/modes.py 140 59 58% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/constant_time.py 6 3 50% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/hashes.py 127 20 84% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/serialization/__init__.py 5 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/serialization/base.py 7 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/serialization/ssh.py 775 614 21% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/utils.py 76 28 63% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/x509/__init__.py 70 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/x509/base.py 488 227 53% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/x509/certificate_transparency.py 42 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/x509/extensions.py 1024 552 46% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/x509/general_name.py 166 94 43% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/x509/name.py 236 144 39% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/x509/oid.py 3 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/cryptography/x509/verification.py 12 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dateutil/__init__.py 13 4 69% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dateutil/_common.py 25 15 40% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dateutil/_version.py 11 2 82% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dateutil/parser/__init__.py 33 4 88% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dateutil/parser/_parser.py 811 436 46% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dateutil/parser/isoparser.py 184 150 18% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dateutil/relativedelta.py 240 206 14% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dateutil/tz/__init__.py 4 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dateutil/tz/_common.py 151 114 25% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dateutil/tz/_factories.py 49 21 57% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dateutil/tz/tz.py 795 626 21% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dateutil/tz/win.py 153 149 3% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/__init__.py 3 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/_asyncbackend.py 14 6 57% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/_ddr.py 105 86 18% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/_features.py 44 7 84% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/_immutable_ctx.py 40 5 88% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/asyncbackend.py 44 32 27% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/asyncquery.py 277 242 13% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/edns.py 270 161 40% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/entropy.py 80 49 39% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/enum.py 72 46 36% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/exception.py 60 33 45% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/flags.py 41 14 66% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/grange.py 34 30 12% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/immutable.py 41 30 27% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/inet.py 80 65 19% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/ipv4.py 27 20 26% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/ipv6.py 115 100 13% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/message.py 809 662 18% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/name.py 620 427 31% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/nameserver.py 101 54 47% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/node.py 118 71 40% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/opcode.py 31 7 77% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/query.py 536 462 14% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/quic/__init__.py 26 23 12% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/rcode.py 69 13 81% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/rdata.py 377 269 29% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/rdataclass.py 44 9 80% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/rdataset.py 193 133 31% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/rdatatype.py 214 25 88% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/OPT.py 34 19 44% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/SOA.py 41 26 37% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/TSIG.py 58 42 28% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/ZONEMD.py 43 27 37% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/__init__.py 2 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/rdtypes/__init__.py 2 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/rdtypes/svcbbase.py 397 261 34% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/rdtypes/util.py 191 154 19% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/renderer.py 152 118 22% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/resolver.py 899 719 20% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/reversename.py 33 24 27% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/rrset.py 78 56 28% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/serial.py 93 79 15% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/set.py 149 108 28% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/tokenizer.py 335 279 17% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/transaction.py 271 203 25% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/tsig.py 177 122 31% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/ttl.py 45 38 16% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/version.py 7 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/wire.py 64 42 34% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/xfr.py 148 126 15% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/zone.py 508 383 25% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/zonefile.py 429 380 11% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/dns/zonetypes.py 15 2 87% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/etcd/__init__.py 125 24 81% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/etcd/client.py 380 192 49% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/etcd/lock.py 125 103 18% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/idna/__init__.py 4 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/idna/core.py 292 257 12% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/idna/idnadata.py 4 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/idna/intranges.py 30 24 20% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/idna/package_data.py 1 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/__init__.py 13 2 85% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/__main__.py 199 63 68% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/api.py 780 278 64% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/async_executor.py 96 15 84% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/collections.py 56 6 89% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/config.py 371 94 75% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/config_generator.py 212 159 25% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/daemon.py 76 3 96% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/dcs/__init__.py 654 77 88% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/dcs/etcd.py 603 119 80% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/dynamic_loader.py 35 7 80% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/exceptions.py 16 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/file_perm.py 43 8 81% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/global_config.py 81 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/ha.py 1270 321 75% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/log.py 221 69 69% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/postgresql/__init__.py 822 173 79% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/postgresql/available_parameters/__init__.py 24 3 88% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/postgresql/bootstrap.py 255 62 76% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/postgresql/callback_executor.py 55 8 85% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/postgresql/cancellable.py 104 41 61% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/postgresql/config.py 838 217 74% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/postgresql/connection.py 75 1 99% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/postgresql/misc.py 43 8 81% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/postgresql/mpp/__init__.py 89 11 88% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/postgresql/postmaster.py 170 85 50% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/postgresql/rewind.py 416 163 61% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/postgresql/slots.py 349 38 89% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/postgresql/sync.py 130 19 85% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/postgresql/validator.py 157 24 85% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/psycopg.py 46 20 57% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/request.py 58 6 90% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/tags.py 38 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/utils.py 370 119 68% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/validator.py 307 214 30% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/version.py 1 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/watchdog/__init__.py 2 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/watchdog/base.py 203 42 79% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/patroni/watchdog/linux.py 135 35 74% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/psutil/__init__.py 951 629 34% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/psutil/_common.py 424 212 50% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/psutil/_compat.py 302 263 13% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/psutil/_pslinux.py 1251 924 26% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/psutil/_psposix.py 96 38 60% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/psycopg2/__init__.py 19 3 84% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/psycopg2/_json.py 64 27 58% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/psycopg2/_range.py 269 172 36% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/psycopg2/errors.py 3 2 33% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/psycopg2/extensions.py 91 25 73% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/urllib3/__init__.py 50 14 72% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/urllib3/_base_connection.py 70 52 26% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/urllib3/_collections.py 234 100 57% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/urllib3/_request_methods.py 53 9 83% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/urllib3/_version.py 2 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/urllib3/connection.py 324 99 69% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/urllib3/connectionpool.py 347 120 65% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/urllib3/contrib/__init__.py 0 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/urllib3/contrib/pyopenssl.py 257 96 63% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/urllib3/exceptions.py 115 37 68% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/urllib3/fields.py 92 73 21% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/urllib3/filepost.py 37 24 35% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/urllib3/poolmanager.py 233 85 64% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/urllib3/response.py 562 310 45% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/urllib3/util/__init__.py 10 0 100% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/urllib3/util/connection.py 66 42 36% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/urllib3/util/proxy.py 13 6 54% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/urllib3/util/request.py 104 49 53% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/urllib3/util/response.py 32 17 47% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/urllib3/util/retry.py 173 47 73% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/urllib3/util/ssl_.py 177 78 56% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/urllib3/util/ssl_match_hostname.py 66 54 18% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/urllib3/util/ssltransport.py 160 112 30% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/urllib3/util/timeout.py 71 14 80% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/urllib3/util/url.py 205 68 67% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/urllib3/util/util.py 26 10 62% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/urllib3/util/wait.py 49 18 63% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/yaml/__init__.py 165 109 34% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/yaml/composer.py 92 17 82% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/yaml/constructor.py 479 276 42% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/yaml/cyaml.py 46 24 48% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/yaml/dumper.py 23 12 48% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/yaml/emitter.py 838 769 8% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/yaml/error.py 58 42 28% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/yaml/events.py 61 6 90% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/yaml/loader.py 47 24 49% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/yaml/nodes.py 29 7 76% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/yaml/parser.py 352 198 44% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/yaml/reader.py 122 34 72% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/yaml/representer.py 248 176 29% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/yaml/resolver.py 135 76 44% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/yaml/scanner.py 758 437 42% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/yaml/serializer.py 85 70 18% 1499s Dec 27 19:55:37 /usr/lib/python3/dist-packages/yaml/tokens.py 76 17 78% 1499s Dec 27 19:55:37 patroni/__init__.py 13 2 85% 1499s Dec 27 19:55:37 patroni/__main__.py 199 199 0% 1499s Dec 27 19:55:37 patroni/api.py 780 780 0% 1499s Dec 27 19:55:37 patroni/async_executor.py 96 69 28% 1499s Dec 27 19:55:37 patroni/collections.py 56 15 73% 1499s Dec 27 19:55:37 patroni/config.py 371 196 47% 1499s Dec 27 19:55:37 patroni/config_generator.py 212 212 0% 1499s Dec 27 19:55:37 patroni/ctl.py 936 411 56% 1499s Dec 27 19:55:37 patroni/daemon.py 76 76 0% 1499s Dec 27 19:55:37 patroni/dcs/__init__.py 654 275 58% 1499s Dec 27 19:55:37 patroni/dcs/consul.py 484 484 0% 1499s Dec 27 19:55:37 patroni/dcs/etcd3.py 679 679 0% 1499s Dec 27 19:55:37 patroni/dcs/etcd.py 603 224 63% 1499s Dec 27 19:55:37 patroni/dcs/exhibitor.py 62 62 0% 1499s Dec 27 19:55:37 patroni/dcs/kubernetes.py 940 940 0% 1499s Dec 27 19:55:37 patroni/dcs/raft.py 319 319 0% 1499s Dec 27 19:55:37 patroni/dcs/zookeeper.py 289 289 0% 1499s Dec 27 19:55:37 patroni/dynamic_loader.py 35 7 80% 1499s Dec 27 19:55:37 patroni/exceptions.py 16 1 94% 1499s Dec 27 19:55:37 patroni/file_perm.py 43 15 65% 1499s Dec 27 19:55:37 patroni/global_config.py 81 18 78% 1499s Dec 27 19:55:37 patroni/ha.py 1270 1270 0% 1499s Dec 27 19:55:37 patroni/log.py 221 175 21% 1499s Dec 27 19:55:37 patroni/postgresql/__init__.py 822 652 21% 1499s Dec 27 19:55:37 patroni/postgresql/available_parameters/__init__.py 24 6 75% 1499s Dec 27 19:55:37 patroni/postgresql/bootstrap.py 255 225 12% 1499s Dec 27 19:55:37 patroni/postgresql/callback_executor.py 55 34 38% 1499s Dec 27 19:55:37 patroni/postgresql/cancellable.py 104 84 19% 1499s Dec 27 19:55:37 patroni/postgresql/config.py 838 718 14% 1499s Dec 27 19:55:37 patroni/postgresql/connection.py 75 50 33% 1499s Dec 27 19:55:37 patroni/postgresql/misc.py 43 30 30% 1499s Dec 27 19:55:37 patroni/postgresql/mpp/__init__.py 89 21 76% 1499s Dec 27 19:55:37 patroni/postgresql/mpp/citus.py 259 259 0% 1499s Dec 27 19:55:37 patroni/postgresql/postmaster.py 170 139 18% 1499s Dec 27 19:55:37 patroni/postgresql/rewind.py 416 416 0% 1499s Dec 27 19:55:37 patroni/postgresql/slots.py 349 300 14% 1499s Dec 27 19:55:37 patroni/postgresql/sync.py 130 96 26% 1499s Dec 27 19:55:37 patroni/postgresql/validator.py 157 52 67% 1499s Dec 27 19:55:37 patroni/psycopg.py 46 32 30% 1499s Dec 27 19:55:37 patroni/raft_controller.py 22 22 0% 1499s Dec 27 19:55:37 patroni/request.py 58 6 90% 1499s Dec 27 19:55:37 patroni/scripts/__init__.py 0 0 100% 1499s Dec 27 19:55:37 patroni/scripts/aws.py 59 59 0% 1499s Dec 27 19:55:37 patroni/scripts/barman/__init__.py 0 0 100% 1499s Dec 27 19:55:37 patroni/scripts/barman/cli.py 51 51 0% 1499s Dec 27 19:55:37 patroni/scripts/barman/config_switch.py 51 51 0% 1499s Dec 27 19:55:37 patroni/scripts/barman/recover.py 37 37 0% 1499s Dec 27 19:55:37 patroni/scripts/barman/utils.py 94 94 0% 1499s Dec 27 19:55:37 patroni/scripts/wale_restore.py 207 207 0% 1499s Dec 27 19:55:37 patroni/tags.py 38 11 71% 1499s Dec 27 19:55:37 patroni/utils.py 370 214 42% 1499s Dec 27 19:55:37 patroni/validator.py 307 221 28% 1499s Dec 27 19:55:37 patroni/version.py 1 0 100% 1499s Dec 27 19:55:37 patroni/watchdog/__init__.py 2 2 0% 1499s Dec 27 19:55:37 patroni/watchdog/base.py 203 203 0% 1499s Dec 27 19:55:37 patroni/watchdog/linux.py 135 135 0% 1499s Dec 27 19:55:37 ------------------------------------------------------------------------------------------------------------- 1499s Dec 27 19:55:37 TOTAL 52569 31798 40% 1499s Dec 27 19:55:37 12 features passed, 0 failed, 1 skipped 1499s Dec 27 19:55:37 55 scenarios passed, 0 failed, 5 skipped 1499s Dec 27 19:55:37 527 steps passed, 0 failed, 61 skipped, 0 undefined 1499s Dec 27 19:55:37 Took 9m19.819s 1499s ### End 16 acceptance-etcd ### 1499s + echo '### End 16 acceptance-etcd ###' 1499s + rm -f '/tmp/pgpass?' 1499s ++ id -u 1499s + '[' 0 -eq 0 ']' 1499s + '[' -x /etc/init.d/zookeeper ']' 1499s autopkgtest [19:55:37]: test acceptance-etcd: -----------------------] 1500s acceptance-etcd PASS 1500s autopkgtest [19:55:38]: test acceptance-etcd: - - - - - - - - - - results - - - - - - - - - - 1500s autopkgtest [19:55:38]: test acceptance-zookeeper: preparing testbed 1556s autopkgtest [19:56:34]: testbed dpkg architecture: ppc64el 1556s autopkgtest [19:56:34]: testbed apt version: 2.9.18 1556s autopkgtest [19:56:34]: @@@@@@@@@@@@@@@@@@@@ test bed setup 1556s autopkgtest [19:56:34]: testbed release detected to be: plucky 1557s autopkgtest [19:56:35]: updating testbed package index (apt update) 1557s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [73.9 kB] 1558s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 1558s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 1558s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 1558s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [637 kB] 1558s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/restricted Sources [9708 B] 1558s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [11.5 kB] 1558s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [56.0 kB] 1558s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/main ppc64el Packages [57.9 kB] 1558s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/restricted ppc64el Packages [756 B] 1558s Get:11 http://ftpmaster.internal/ubuntu plucky-proposed/universe ppc64el Packages [497 kB] 1558s Get:12 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse ppc64el Packages [4256 B] 1558s Fetched 1348 kB in 1s (1463 kB/s) 1559s Reading package lists... 1559s Reading package lists... 1560s Building dependency tree... 1560s Reading state information... 1560s Calculating upgrade... 1560s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1560s Reading package lists... 1560s Building dependency tree... 1560s Reading state information... 1560s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1560s autopkgtest [19:56:38]: upgrading testbed (apt dist-upgrade and autopurge) 1560s Reading package lists... 1561s Building dependency tree... 1561s Reading state information... 1561s Calculating upgrade...Starting pkgProblemResolver with broken count: 0 1561s Starting 2 pkgProblemResolver with broken count: 0 1561s Done 1561s Entering ResolveByKeep 1561s 1561s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1562s Reading package lists... 1562s Building dependency tree... 1562s Reading state information... 1562s Starting pkgProblemResolver with broken count: 0 1562s Starting 2 pkgProblemResolver with broken count: 0 1562s Done 1562s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1565s Reading package lists... 1565s Building dependency tree... 1565s Reading state information... 1565s Starting pkgProblemResolver with broken count: 0 1565s Starting 2 pkgProblemResolver with broken count: 0 1565s Done 1565s The following NEW packages will be installed: 1565s adwaita-icon-theme at-spi2-common ca-certificates-java 1565s dconf-gsettings-backend dconf-service default-jre default-jre-headless 1565s fontconfig fontconfig-config fonts-dejavu-core fonts-dejavu-mono 1565s fonts-font-awesome fonts-lato gtk-update-icon-cache hicolor-icon-theme 1565s humanity-icon-theme java-common junit4 libactivation-java libapache-pom-java 1565s libapr1t64 libasm-java libasound2-data libasound2t64 1565s libatinject-jsr330-api-java libatk-bridge2.0-0t64 libatk1.0-0t64 1565s libatspi2.0-0t64 libavahi-client3 libavahi-common-data libavahi-common3 1565s libcairo-gobject2 libcairo2 libcares2 libcolord2 libcommons-cli-java 1565s libcommons-io-java libcommons-logging-java libcommons-parent-java 1565s libcups2t64 libdatrie1 libdconf1 libdeflate0 libdrm-radeon1 1565s libdropwizard-metrics-java libeclipse-jdt-core-compiler-batch-java 1565s libeclipse-jdt-core-java libel-api-java libepoxy0 liberror-prone-java 1565s libev4t64 libfindbugs-annotations-java libfontconfig1 libgbm1 1565s libgdk-pixbuf-2.0-0 libgdk-pixbuf2.0-common libgif7 libgl1 libgl1-mesa-dri 1565s libglapi-mesa libglvnd0 libglx-mesa0 libglx0 libgraphite2-3 libgtk-3-0t64 1565s libgtk-3-common libguava-java libhamcrest-java libharfbuzz0b libio-pty-perl 1565s libipc-run-perl libjackson2-annotations-java libjackson2-core-java 1565s libjackson2-databind-java libjaxb-api-java libjbig0 libjctools-java 1565s libjetty9-extra-java libjetty9-java libjffi-java libjffi-jni 1565s libjnr-constants-java libjnr-enxio-java libjnr-ffi-java libjnr-posix-java 1565s libjnr-unixsocket-java libjnr-x86asm-java libjpeg-turbo8 libjpeg8 1565s libjs-jquery libjs-sphinxdoc libjs-underscore libjson-perl libjsp-api-java 1565s libjsr305-java liblcms2-2 liblerc4 liblog4j1.2-java libmail-java 1565s libnetty-java libnetty-tcnative-java libnetty-tcnative-jni libpango-1.0-0 1565s libpangocairo-1.0-0 libpangoft2-1.0-0 libpcsclite1 libpixman-1-0 libpq5 1565s libpython3.13-minimal libpython3.13-stdlib libservlet-api-java libsharpyuv0 1565s libslf4j-java libsnappy-java libsnappy-jni libsnappy1v5 libspring-beans-java 1565s libspring-core-java libtaglibs-standard-impl-java 1565s libtaglibs-standard-spec-java libthai-data libthai0 libtiff6 1565s libtime-duration-perl libtimedate-perl libtomcat9-java libvulkan1 1565s libwayland-client0 libwayland-cursor0 libwayland-egl1 libwayland-server0 1565s libwebp7 libwebsocket-api-java libx11-xcb1 libxcb-dri2-0 libxcb-dri3-0 1565s libxcb-glx0 libxcb-present0 libxcb-randr0 libxcb-render0 libxcb-shm0 1565s libxcb-sync1 libxcb-xfixes0 libxcomposite1 libxcursor1 libxdamage1 1565s libxfixes3 libxi6 libxinerama1 libxrandr2 libxrender1 libxshmfence1 1565s libxslt1.1 libxtst6 libxxf86vm1 libzookeeper-java mesa-libgallium moreutils 1565s openjdk-21-jre openjdk-21-jre-headless patroni patroni-doc postgresql 1565s postgresql-16 postgresql-client-16 postgresql-client-common 1565s postgresql-common python3-behave python3-cdiff python3-click 1565s python3-colorama python3-coverage python3-dateutil python3-dnspython 1565s python3-eventlet python3-gevent python3-greenlet python3-kazoo 1565s python3-kerberos python3-parse python3-parse-type python3-prettytable 1565s python3-psutil python3-psycopg2 python3-pure-sasl python3-six 1565s python3-wcwidth python3-ydiff python3-zope.event python3-zope.interface 1565s python3.13 python3.13-minimal sphinx-rtd-theme-common ssl-cert ubuntu-mono 1565s x11-common zookeeper zookeeperd 1565s 0 upgraded, 198 newly installed, 0 to remove and 0 not upgraded. 1565s Need to get 140 MB of archives. 1565s After this operation, 517 MB of additional disk space will be used. 1565s Get:1 http://ftpmaster.internal/ubuntu plucky/main ppc64el fonts-lato all 2.015-1 [2781 kB] 1566s Get:2 http://ftpmaster.internal/ubuntu plucky/main ppc64el libjson-perl all 4.10000-1 [81.9 kB] 1566s Get:3 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql-client-common all 262 [36.7 kB] 1566s Get:4 http://ftpmaster.internal/ubuntu plucky/main ppc64el ssl-cert all 1.1.3ubuntu1 [18.7 kB] 1566s Get:5 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql-common all 262 [162 kB] 1566s Get:6 http://ftpmaster.internal/ubuntu plucky/main ppc64el libpython3.13-minimal ppc64el 3.13.1-2 [883 kB] 1566s Get:7 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3.13-minimal ppc64el 3.13.1-2 [2496 kB] 1566s Get:8 http://ftpmaster.internal/ubuntu plucky/main ppc64el ca-certificates-java all 20240118 [11.6 kB] 1566s Get:9 http://ftpmaster.internal/ubuntu plucky/main ppc64el java-common all 0.76 [6852 B] 1566s Get:10 http://ftpmaster.internal/ubuntu plucky/main ppc64el liblcms2-2 ppc64el 2.16-2 [243 kB] 1566s Get:11 http://ftpmaster.internal/ubuntu plucky/main ppc64el libjpeg-turbo8 ppc64el 2.1.5-3ubuntu2 [215 kB] 1566s Get:12 http://ftpmaster.internal/ubuntu plucky/main ppc64el libjpeg8 ppc64el 8c-2ubuntu11 [2148 B] 1566s Get:13 http://ftpmaster.internal/ubuntu plucky/main ppc64el libpcsclite1 ppc64el 2.3.0-3 [31.3 kB] 1566s Get:14 http://ftpmaster.internal/ubuntu plucky/main ppc64el openjdk-21-jre-headless ppc64el 21.0.5+11-1 [45.7 MB] 1567s Get:15 http://ftpmaster.internal/ubuntu plucky/main ppc64el default-jre-headless ppc64el 2:1.21-76 [3184 B] 1567s Get:16 http://ftpmaster.internal/ubuntu plucky/main ppc64el libgdk-pixbuf2.0-common all 2.42.12+dfsg-1 [7888 B] 1567s Get:17 http://ftpmaster.internal/ubuntu plucky/main ppc64el libdeflate0 ppc64el 1.22-1 [63.3 kB] 1567s Get:18 http://ftpmaster.internal/ubuntu plucky/main ppc64el libjbig0 ppc64el 2.1-6.1ubuntu2 [35.9 kB] 1567s Get:19 http://ftpmaster.internal/ubuntu plucky/main ppc64el liblerc4 ppc64el 4.0.0+ds-5ubuntu1 [298 kB] 1567s Get:20 http://ftpmaster.internal/ubuntu plucky/main ppc64el libsharpyuv0 ppc64el 1.4.0-0.1 [22.0 kB] 1567s Get:21 http://ftpmaster.internal/ubuntu plucky/main ppc64el libwebp7 ppc64el 1.4.0-0.1 [309 kB] 1567s Get:22 http://ftpmaster.internal/ubuntu plucky/main ppc64el libtiff6 ppc64el 4.5.1+git230720-4ubuntu4 [272 kB] 1567s Get:23 http://ftpmaster.internal/ubuntu plucky/main ppc64el libgdk-pixbuf-2.0-0 ppc64el 2.42.12+dfsg-1 [186 kB] 1567s Get:24 http://ftpmaster.internal/ubuntu plucky/main ppc64el gtk-update-icon-cache ppc64el 4.17.1+ds-2 [54.0 kB] 1567s Get:25 http://ftpmaster.internal/ubuntu plucky/main ppc64el hicolor-icon-theme all 0.18-1 [13.5 kB] 1567s Get:26 http://ftpmaster.internal/ubuntu plucky/main ppc64el humanity-icon-theme all 0.6.16 [1282 kB] 1567s Get:27 http://ftpmaster.internal/ubuntu plucky/main ppc64el ubuntu-mono all 24.04-0ubuntu1 [151 kB] 1567s Get:28 http://ftpmaster.internal/ubuntu plucky/main ppc64el adwaita-icon-theme all 47.0-2 [525 kB] 1567s Get:29 http://ftpmaster.internal/ubuntu plucky/main ppc64el at-spi2-common all 2.54.0-1 [8774 B] 1567s Get:30 http://ftpmaster.internal/ubuntu plucky/main ppc64el libatk1.0-0t64 ppc64el 2.54.0-1 [59.7 kB] 1567s Get:31 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxi6 ppc64el 2:1.8.2-1 [37.9 kB] 1567s Get:32 http://ftpmaster.internal/ubuntu plucky/main ppc64el libatspi2.0-0t64 ppc64el 2.54.0-1 [96.9 kB] 1567s Get:33 http://ftpmaster.internal/ubuntu plucky/main ppc64el libatk-bridge2.0-0t64 ppc64el 2.54.0-1 [77.8 kB] 1567s Get:34 http://ftpmaster.internal/ubuntu plucky/main ppc64el fonts-dejavu-mono all 2.37-8 [502 kB] 1567s Get:35 http://ftpmaster.internal/ubuntu plucky/main ppc64el fonts-dejavu-core all 2.37-8 [835 kB] 1567s Get:36 http://ftpmaster.internal/ubuntu plucky/main ppc64el fontconfig-config ppc64el 2.15.0-1.1ubuntu2 [37.4 kB] 1567s Get:37 http://ftpmaster.internal/ubuntu plucky/main ppc64el libfontconfig1 ppc64el 2.15.0-1.1ubuntu2 [190 kB] 1567s Get:38 http://ftpmaster.internal/ubuntu plucky/main ppc64el libpixman-1-0 ppc64el 0.44.0-3 [334 kB] 1567s Get:39 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxcb-render0 ppc64el 1.17.0-2 [17.2 kB] 1567s Get:40 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxcb-shm0 ppc64el 1.17.0-2 [5980 B] 1567s Get:41 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxrender1 ppc64el 1:0.9.10-1.1build1 [23.1 kB] 1567s Get:42 http://ftpmaster.internal/ubuntu plucky/main ppc64el libcairo2 ppc64el 1.18.2-2 [747 kB] 1567s Get:43 http://ftpmaster.internal/ubuntu plucky/main ppc64el libcairo-gobject2 ppc64el 1.18.2-2 [127 kB] 1567s Get:44 http://ftpmaster.internal/ubuntu plucky/main ppc64el libcolord2 ppc64el 1.4.7-1build2 [164 kB] 1567s Get:45 http://ftpmaster.internal/ubuntu plucky/main ppc64el libavahi-common-data ppc64el 0.8-14ubuntu1 [30.5 kB] 1568s Get:46 http://ftpmaster.internal/ubuntu plucky/main ppc64el libavahi-common3 ppc64el 0.8-14ubuntu1 [26.0 kB] 1568s Get:47 http://ftpmaster.internal/ubuntu plucky/main ppc64el libavahi-client3 ppc64el 0.8-14ubuntu1 [31.0 kB] 1568s Get:48 http://ftpmaster.internal/ubuntu plucky/main ppc64el libcups2t64 ppc64el 2.4.11-0ubuntu2 [347 kB] 1568s Get:49 http://ftpmaster.internal/ubuntu plucky/main ppc64el libepoxy0 ppc64el 1.5.10-2 [234 kB] 1568s Get:50 http://ftpmaster.internal/ubuntu plucky/main ppc64el libgraphite2-3 ppc64el 1.3.14-2ubuntu1 [84.6 kB] 1568s Get:51 http://ftpmaster.internal/ubuntu plucky/main ppc64el libharfbuzz0b ppc64el 10.1.0-1 [597 kB] 1568s Get:52 http://ftpmaster.internal/ubuntu plucky/main ppc64el fontconfig ppc64el 2.15.0-1.1ubuntu2 [192 kB] 1568s Get:53 http://ftpmaster.internal/ubuntu plucky/main ppc64el libthai-data all 0.1.29-2build1 [158 kB] 1568s Get:54 http://ftpmaster.internal/ubuntu plucky/main ppc64el libdatrie1 ppc64el 0.2.13-3build1 [22.7 kB] 1568s Get:55 http://ftpmaster.internal/ubuntu plucky/main ppc64el libthai0 ppc64el 0.1.29-2build1 [21.8 kB] 1568s Get:56 http://ftpmaster.internal/ubuntu plucky/main ppc64el libpango-1.0-0 ppc64el 1.55.0+ds-3 [276 kB] 1568s Get:57 http://ftpmaster.internal/ubuntu plucky/main ppc64el libpangoft2-1.0-0 ppc64el 1.55.0+ds-3 [57.7 kB] 1568s Get:58 http://ftpmaster.internal/ubuntu plucky/main ppc64el libpangocairo-1.0-0 ppc64el 1.55.0+ds-3 [30.6 kB] 1568s Get:59 http://ftpmaster.internal/ubuntu plucky/main ppc64el libwayland-client0 ppc64el 1.23.0-1 [31.4 kB] 1568s Get:60 http://ftpmaster.internal/ubuntu plucky/main ppc64el libwayland-cursor0 ppc64el 1.23.0-1 [11.9 kB] 1568s Get:61 http://ftpmaster.internal/ubuntu plucky/main ppc64el libwayland-egl1 ppc64el 1.23.0-1 [5730 B] 1568s Get:62 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxcomposite1 ppc64el 1:0.4.6-1 [6816 B] 1568s Get:63 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxfixes3 ppc64el 1:6.0.0-2build1 [11.8 kB] 1568s Get:64 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxcursor1 ppc64el 1:1.2.2-1 [26.3 kB] 1568s Get:65 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxdamage1 ppc64el 1:1.1.6-1build1 [6550 B] 1568s Get:66 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxinerama1 ppc64el 2:1.1.4-3build1 [6908 B] 1568s Get:67 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxrandr2 ppc64el 2:1.5.4-1 [21.7 kB] 1568s Get:68 http://ftpmaster.internal/ubuntu plucky/main ppc64el libdconf1 ppc64el 0.40.0-4build2 [44.0 kB] 1568s Get:69 http://ftpmaster.internal/ubuntu plucky/main ppc64el dconf-service ppc64el 0.40.0-4build2 [31.1 kB] 1568s Get:70 http://ftpmaster.internal/ubuntu plucky/main ppc64el dconf-gsettings-backend ppc64el 0.40.0-4build2 [26.5 kB] 1568s Get:71 http://ftpmaster.internal/ubuntu plucky/main ppc64el libgtk-3-common all 3.24.43-4ubuntu1 [1203 kB] 1568s Get:72 http://ftpmaster.internal/ubuntu plucky/main ppc64el libgtk-3-0t64 ppc64el 3.24.43-4ubuntu1 [3367 kB] 1568s Get:73 http://ftpmaster.internal/ubuntu plucky/main ppc64el libglvnd0 ppc64el 1.7.0-1build1 [72.4 kB] 1568s Get:74 http://ftpmaster.internal/ubuntu plucky/main ppc64el libglapi-mesa ppc64el 24.2.8-1ubuntu1 [44.6 kB] 1568s Get:75 http://ftpmaster.internal/ubuntu plucky/main ppc64el libx11-xcb1 ppc64el 2:1.8.10-2 [8008 B] 1568s Get:76 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxcb-dri2-0 ppc64el 1.17.0-2 [7508 B] 1568s Get:77 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxcb-dri3-0 ppc64el 1.17.0-2 [7842 B] 1568s Get:78 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxcb-glx0 ppc64el 1.17.0-2 [26.3 kB] 1568s Get:79 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxcb-present0 ppc64el 1.17.0-2 [6276 B] 1568s Get:80 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxcb-randr0 ppc64el 1.17.0-2 [19.1 kB] 1568s Get:81 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxcb-sync1 ppc64el 1.17.0-2 [9804 B] 1568s Get:82 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxcb-xfixes0 ppc64el 1.17.0-2 [10.7 kB] 1568s Get:83 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxshmfence1 ppc64el 1.3-1build5 [4964 B] 1568s Get:84 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxxf86vm1 ppc64el 1:1.1.4-1build4 [11.1 kB] 1568s Get:85 http://ftpmaster.internal/ubuntu plucky/main ppc64el libdrm-radeon1 ppc64el 2.4.123-1 [29.0 kB] 1568s Get:86 http://ftpmaster.internal/ubuntu plucky/main ppc64el mesa-libgallium ppc64el 24.2.8-1ubuntu1 [9164 kB] 1568s Get:87 http://ftpmaster.internal/ubuntu plucky/main ppc64el libvulkan1 ppc64el 1.3.296.0-1 [163 kB] 1568s Get:88 http://ftpmaster.internal/ubuntu plucky/main ppc64el libwayland-server0 ppc64el 1.23.0-1 [41.3 kB] 1568s Get:89 http://ftpmaster.internal/ubuntu plucky/main ppc64el libgbm1 ppc64el 24.2.8-1ubuntu1 [38.2 kB] 1568s Get:90 http://ftpmaster.internal/ubuntu plucky/main ppc64el libgl1-mesa-dri ppc64el 24.2.8-1ubuntu1 [34.1 kB] 1568s Get:91 http://ftpmaster.internal/ubuntu plucky/main ppc64el libglx-mesa0 ppc64el 24.2.8-1ubuntu1 [187 kB] 1568s Get:92 http://ftpmaster.internal/ubuntu plucky/main ppc64el libglx0 ppc64el 1.7.0-1build1 [42.7 kB] 1568s Get:93 http://ftpmaster.internal/ubuntu plucky/main ppc64el libgl1 ppc64el 1.7.0-1build1 [107 kB] 1568s Get:94 http://ftpmaster.internal/ubuntu plucky/main ppc64el libasound2-data all 1.2.12-1 [21.0 kB] 1568s Get:95 http://ftpmaster.internal/ubuntu plucky/main ppc64el libasound2t64 ppc64el 1.2.12-1 [493 kB] 1568s Get:96 http://ftpmaster.internal/ubuntu plucky/main ppc64el libgif7 ppc64el 5.2.2-1ubuntu1 [41.2 kB] 1568s Get:97 http://ftpmaster.internal/ubuntu plucky/main ppc64el x11-common all 1:7.7+23ubuntu3 [21.7 kB] 1568s Get:98 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxtst6 ppc64el 2:1.2.3-1.1build1 [14.4 kB] 1568s Get:99 http://ftpmaster.internal/ubuntu plucky/main ppc64el openjdk-21-jre ppc64el 21.0.5+11-1 [246 kB] 1568s Get:100 http://ftpmaster.internal/ubuntu plucky/main ppc64el default-jre ppc64el 2:1.21-76 [918 B] 1568s Get:101 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libhamcrest-java all 2.2-2 [117 kB] 1568s Get:102 http://ftpmaster.internal/ubuntu plucky/universe ppc64el junit4 all 4.13.2-5 [348 kB] 1569s Get:103 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libcommons-cli-java all 1.6.0-1 [59.9 kB] 1569s Get:104 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libapache-pom-java all 33-2 [5874 B] 1569s Get:105 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libcommons-parent-java all 56-1 [10.7 kB] 1569s Get:106 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libcommons-io-java all 2.17.0-1 [457 kB] 1569s Get:107 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libdropwizard-metrics-java all 3.2.6-1 [240 kB] 1569s Get:108 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libfindbugs-annotations-java all 3.1.0~preview2-4 [48.9 kB] 1569s Get:109 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libatinject-jsr330-api-java all 1.0+ds1-5 [5348 B] 1569s Get:110 http://ftpmaster.internal/ubuntu plucky/universe ppc64el liberror-prone-java all 2.18.0-1 [22.5 kB] 1569s Get:111 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjsr305-java all 0.1~+svn49-11 [27.0 kB] 1569s Get:112 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libguava-java all 32.0.1-1 [2692 kB] 1569s Get:113 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjackson2-annotations-java all 2.14.0-1 [64.7 kB] 1569s Get:114 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjackson2-core-java all 2.14.1-1 [432 kB] 1569s Get:115 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjackson2-databind-java all 2.14.0-1 [1531 kB] 1569s Get:116 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libasm-java all 9.7.1-1 [388 kB] 1570s Get:117 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libel-api-java all 3.0.0-3 [64.9 kB] 1570s Get:118 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjsp-api-java all 2.3.4-3 [53.7 kB] 1570s Get:119 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libservlet-api-java all 4.0.1-2 [81.0 kB] 1570s Get:120 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libwebsocket-api-java all 1.1-2 [40.1 kB] 1570s Get:121 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjetty9-java all 9.4.56-1 [2790 kB] 1570s Get:122 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjnr-constants-java all 0.10.4-2 [1397 kB] 1570s Get:123 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjffi-jni ppc64el 1.3.13+ds-1 [31.1 kB] 1570s Get:124 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjffi-java all 1.3.13+ds-1 [112 kB] 1570s Get:125 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjnr-x86asm-java all 1.0.2-5.1 [207 kB] 1570s Get:126 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjnr-ffi-java all 2.2.15-2 [627 kB] 1570s Get:127 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjnr-enxio-java all 0.32.16-1 [33.7 kB] 1570s Get:128 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjnr-posix-java all 3.1.18-1 [267 kB] 1570s Get:129 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjnr-unixsocket-java all 0.38.21-2 [46.9 kB] 1570s Get:130 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libactivation-java all 1.2.0-2 [84.7 kB] 1570s Get:131 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libmail-java all 1.6.5-3 [681 kB] 1570s Get:132 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libcommons-logging-java all 1.3.0-1ubuntu1 [63.8 kB] 1570s Get:133 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjaxb-api-java all 2.3.1-1 [119 kB] 1570s Get:134 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libspring-core-java all 4.3.30-2ubuntu1 [1015 kB] 1570s Get:135 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libspring-beans-java all 4.3.30-2ubuntu1 [677 kB] 1571s Get:136 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libtaglibs-standard-spec-java all 1.2.5-3 [35.2 kB] 1571s Get:137 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libtaglibs-standard-impl-java all 1.2.5-3 [182 kB] 1571s Get:138 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libeclipse-jdt-core-compiler-batch-java all 3.35.0+eclipse4.29-2 [2933 kB] 1571s Get:139 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libeclipse-jdt-core-java all 3.35.0+eclipse4.29-2 [3831 kB] 1571s Get:140 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libtomcat9-java all 9.0.70-2ubuntu1.1 [6161 kB] 1572s Get:141 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjetty9-extra-java all 9.4.56-1 [1199 kB] 1572s Get:142 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjctools-java all 2.0.2-1 [188 kB] 1572s Get:143 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libnetty-java all 1:4.1.48-10 [3628 kB] 1573s Get:144 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libslf4j-java all 1.7.32-1 [141 kB] 1573s Get:145 http://ftpmaster.internal/ubuntu plucky/main ppc64el libsnappy1v5 ppc64el 1.2.1-1 [33.4 kB] 1573s Get:146 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libsnappy-jni ppc64el 1.1.10.7-1 [6650 B] 1573s Get:147 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libsnappy-java all 1.1.10.7-1 [83.6 kB] 1573s Get:148 http://ftpmaster.internal/ubuntu plucky/main ppc64el libapr1t64 ppc64el 1.7.5-1 [137 kB] 1573s Get:149 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libnetty-tcnative-jni ppc64el 2.0.28-1build4 [42.3 kB] 1573s Get:150 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libnetty-tcnative-java all 2.0.28-1build4 [24.8 kB] 1573s Get:151 http://ftpmaster.internal/ubuntu plucky/universe ppc64el liblog4j1.2-java all 1.2.17-11 [439 kB] 1573s Get:152 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libzookeeper-java all 3.9.3-1 [1890 kB] 1573s Get:153 http://ftpmaster.internal/ubuntu plucky/universe ppc64el zookeeper all 3.9.3-1 [57.8 kB] 1573s Get:154 http://ftpmaster.internal/ubuntu plucky/universe ppc64el zookeeperd all 3.9.3-1 [6022 B] 1573s Get:155 http://ftpmaster.internal/ubuntu plucky/main ppc64el fonts-font-awesome all 5.0.10+really4.7.0~dfsg-4.1 [516 kB] 1573s Get:156 http://ftpmaster.internal/ubuntu plucky/main ppc64el libcares2 ppc64el 1.34.4-1 [126 kB] 1573s Get:157 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libev4t64 ppc64el 1:4.33-2.1build1 [34.9 kB] 1573s Get:158 http://ftpmaster.internal/ubuntu plucky/main ppc64el libio-pty-perl ppc64el 1:1.20-1build3 [32.0 kB] 1573s Get:159 http://ftpmaster.internal/ubuntu plucky/main ppc64el libipc-run-perl all 20231003.0-2 [91.5 kB] 1573s Get:160 http://ftpmaster.internal/ubuntu plucky/main ppc64el libjs-jquery all 3.6.1+dfsg+~3.5.14-1 [328 kB] 1573s Get:161 http://ftpmaster.internal/ubuntu plucky/main ppc64el libjs-underscore all 1.13.4~dfsg+~1.11.4-3 [118 kB] 1573s Get:162 http://ftpmaster.internal/ubuntu plucky-proposed/main ppc64el libjs-sphinxdoc all 8.1.3-3 [30.9 kB] 1573s Get:163 http://ftpmaster.internal/ubuntu plucky/main ppc64el libpq5 ppc64el 17.2-1 [173 kB] 1573s Get:164 http://ftpmaster.internal/ubuntu plucky/main ppc64el libpython3.13-stdlib ppc64el 3.13.1-2 [2131 kB] 1574s Get:165 http://ftpmaster.internal/ubuntu plucky/main ppc64el libtime-duration-perl all 1.21-2 [12.3 kB] 1574s Get:166 http://ftpmaster.internal/ubuntu plucky/main ppc64el libtimedate-perl all 2.3300-2 [34.0 kB] 1574s Get:167 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxslt1.1 ppc64el 1.1.39-0exp1ubuntu2 [191 kB] 1574s Get:168 http://ftpmaster.internal/ubuntu plucky/universe ppc64el moreutils ppc64el 0.69-1 [59.1 kB] 1574s Get:169 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-ydiff all 1.4.2-1 [19.0 kB] 1574s Get:170 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-cdiff all 1.4.2-1 [1778 B] 1574s Get:171 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-colorama all 0.4.6-4 [32.1 kB] 1574s Get:172 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-click all 8.1.7-2 [79.5 kB] 1574s Get:173 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-dateutil all 2.9.0-3 [80.2 kB] 1574s Get:174 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-wcwidth all 0.2.13+dfsg1-1 [26.3 kB] 1574s Get:175 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-prettytable all 3.12.0-1 [36.5 kB] 1574s Get:176 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-psutil ppc64el 5.9.8-2build3 [197 kB] 1574s Get:177 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-psycopg2 ppc64el 2.9.10-1 [160 kB] 1574s Get:178 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-greenlet ppc64el 3.1.0-1 [184 kB] 1574s Get:179 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-dnspython all 2.6.1-1ubuntu1 [163 kB] 1574s Get:180 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-eventlet all 0.36.1-11ubuntu1 [275 kB] 1574s Get:181 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-zope.event all 5.0-0.1 [7512 B] 1574s Get:182 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-zope.interface ppc64el 7.2-1 [142 kB] 1574s Get:183 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-gevent ppc64el 24.11.1-1 [1130 kB] 1574s Get:184 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-kerberos ppc64el 1.1.14-3.1build10 [22.1 kB] 1574s Get:185 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-pure-sasl all 0.5.1+dfsg1-5 [11.4 kB] 1574s Get:186 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-six all 1.17.0-1 [13.2 kB] 1574s Get:187 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-kazoo all 2.9.0-2 [103 kB] 1574s Get:188 http://ftpmaster.internal/ubuntu plucky/universe ppc64el patroni all 3.3.4-1 [269 kB] 1574s Get:189 http://ftpmaster.internal/ubuntu plucky/main ppc64el sphinx-rtd-theme-common all 3.0.2+dfsg-1 [1014 kB] 1574s Get:190 http://ftpmaster.internal/ubuntu plucky/universe ppc64el patroni-doc all 3.3.4-1 [508 kB] 1574s Get:191 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql-client-16 ppc64el 16.4-3 [1400 kB] 1574s Get:192 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql-16 ppc64el 16.4-3 [16.6 MB] 1576s Get:193 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql all 16+262 [11.8 kB] 1576s Get:194 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-parse all 1.20.2-1 [27.0 kB] 1576s Get:195 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-parse-type all 0.6.4-1 [23.4 kB] 1576s Get:196 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-behave all 1.2.6-6 [98.6 kB] 1576s Get:197 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3.13 ppc64el 3.13.1-2 [729 kB] 1576s Get:198 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-coverage ppc64el 7.4.4+dfsg1-0ubuntu3 [151 kB] 1577s Preconfiguring packages ... 1577s Fetched 140 MB in 11s (12.5 MB/s) 1577s Selecting previously unselected package fonts-lato. 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 ... 73900 files and directories currently installed.) 1577s Preparing to unpack .../000-fonts-lato_2.015-1_all.deb ... 1577s Unpacking fonts-lato (2.015-1) ... 1578s Selecting previously unselected package libjson-perl. 1578s Preparing to unpack .../001-libjson-perl_4.10000-1_all.deb ... 1578s Unpacking libjson-perl (4.10000-1) ... 1578s Selecting previously unselected package postgresql-client-common. 1578s Preparing to unpack .../002-postgresql-client-common_262_all.deb ... 1578s Unpacking postgresql-client-common (262) ... 1578s Selecting previously unselected package ssl-cert. 1578s Preparing to unpack .../003-ssl-cert_1.1.3ubuntu1_all.deb ... 1578s Unpacking ssl-cert (1.1.3ubuntu1) ... 1578s Selecting previously unselected package postgresql-common. 1578s Preparing to unpack .../004-postgresql-common_262_all.deb ... 1578s Adding 'diversion of /usr/bin/pg_config to /usr/bin/pg_config.libpq-dev by postgresql-common' 1578s Unpacking postgresql-common (262) ... 1578s Selecting previously unselected package libpython3.13-minimal:ppc64el. 1578s Preparing to unpack .../005-libpython3.13-minimal_3.13.1-2_ppc64el.deb ... 1578s Unpacking libpython3.13-minimal:ppc64el (3.13.1-2) ... 1578s Selecting previously unselected package python3.13-minimal. 1578s Preparing to unpack .../006-python3.13-minimal_3.13.1-2_ppc64el.deb ... 1578s Unpacking python3.13-minimal (3.13.1-2) ... 1578s Selecting previously unselected package ca-certificates-java. 1578s Preparing to unpack .../007-ca-certificates-java_20240118_all.deb ... 1578s Unpacking ca-certificates-java (20240118) ... 1578s Selecting previously unselected package java-common. 1578s Preparing to unpack .../008-java-common_0.76_all.deb ... 1578s Unpacking java-common (0.76) ... 1578s Selecting previously unselected package liblcms2-2:ppc64el. 1578s Preparing to unpack .../009-liblcms2-2_2.16-2_ppc64el.deb ... 1578s Unpacking liblcms2-2:ppc64el (2.16-2) ... 1578s Selecting previously unselected package libjpeg-turbo8:ppc64el. 1578s Preparing to unpack .../010-libjpeg-turbo8_2.1.5-3ubuntu2_ppc64el.deb ... 1578s Unpacking libjpeg-turbo8:ppc64el (2.1.5-3ubuntu2) ... 1578s Selecting previously unselected package libjpeg8:ppc64el. 1578s Preparing to unpack .../011-libjpeg8_8c-2ubuntu11_ppc64el.deb ... 1578s Unpacking libjpeg8:ppc64el (8c-2ubuntu11) ... 1578s Selecting previously unselected package libpcsclite1:ppc64el. 1578s Preparing to unpack .../012-libpcsclite1_2.3.0-3_ppc64el.deb ... 1578s Unpacking libpcsclite1:ppc64el (2.3.0-3) ... 1578s Selecting previously unselected package openjdk-21-jre-headless:ppc64el. 1578s Preparing to unpack .../013-openjdk-21-jre-headless_21.0.5+11-1_ppc64el.deb ... 1578s Unpacking openjdk-21-jre-headless:ppc64el (21.0.5+11-1) ... 1579s Selecting previously unselected package default-jre-headless. 1579s Preparing to unpack .../014-default-jre-headless_2%3a1.21-76_ppc64el.deb ... 1579s Unpacking default-jre-headless (2:1.21-76) ... 1579s Selecting previously unselected package libgdk-pixbuf2.0-common. 1579s Preparing to unpack .../015-libgdk-pixbuf2.0-common_2.42.12+dfsg-1_all.deb ... 1579s Unpacking libgdk-pixbuf2.0-common (2.42.12+dfsg-1) ... 1579s Selecting previously unselected package libdeflate0:ppc64el. 1579s Preparing to unpack .../016-libdeflate0_1.22-1_ppc64el.deb ... 1579s Unpacking libdeflate0:ppc64el (1.22-1) ... 1579s Selecting previously unselected package libjbig0:ppc64el. 1579s Preparing to unpack .../017-libjbig0_2.1-6.1ubuntu2_ppc64el.deb ... 1579s Unpacking libjbig0:ppc64el (2.1-6.1ubuntu2) ... 1579s Selecting previously unselected package liblerc4:ppc64el. 1579s Preparing to unpack .../018-liblerc4_4.0.0+ds-5ubuntu1_ppc64el.deb ... 1579s Unpacking liblerc4:ppc64el (4.0.0+ds-5ubuntu1) ... 1579s Selecting previously unselected package libsharpyuv0:ppc64el. 1579s Preparing to unpack .../019-libsharpyuv0_1.4.0-0.1_ppc64el.deb ... 1579s Unpacking libsharpyuv0:ppc64el (1.4.0-0.1) ... 1579s Selecting previously unselected package libwebp7:ppc64el. 1579s Preparing to unpack .../020-libwebp7_1.4.0-0.1_ppc64el.deb ... 1579s Unpacking libwebp7:ppc64el (1.4.0-0.1) ... 1579s Selecting previously unselected package libtiff6:ppc64el. 1579s Preparing to unpack .../021-libtiff6_4.5.1+git230720-4ubuntu4_ppc64el.deb ... 1579s Unpacking libtiff6:ppc64el (4.5.1+git230720-4ubuntu4) ... 1579s Selecting previously unselected package libgdk-pixbuf-2.0-0:ppc64el. 1579s Preparing to unpack .../022-libgdk-pixbuf-2.0-0_2.42.12+dfsg-1_ppc64el.deb ... 1579s Unpacking libgdk-pixbuf-2.0-0:ppc64el (2.42.12+dfsg-1) ... 1579s Selecting previously unselected package gtk-update-icon-cache. 1579s Preparing to unpack .../023-gtk-update-icon-cache_4.17.1+ds-2_ppc64el.deb ... 1579s No diversion 'diversion of /usr/sbin/update-icon-caches to /usr/sbin/update-icon-caches.gtk2 by libgtk-3-bin', none removed. 1579s No diversion 'diversion of /usr/share/man/man8/update-icon-caches.8.gz to /usr/share/man/man8/update-icon-caches.gtk2.8.gz by libgtk-3-bin', none removed. 1579s Unpacking gtk-update-icon-cache (4.17.1+ds-2) ... 1579s Selecting previously unselected package hicolor-icon-theme. 1579s Preparing to unpack .../024-hicolor-icon-theme_0.18-1_all.deb ... 1579s Unpacking hicolor-icon-theme (0.18-1) ... 1579s Selecting previously unselected package humanity-icon-theme. 1579s Preparing to unpack .../025-humanity-icon-theme_0.6.16_all.deb ... 1579s Unpacking humanity-icon-theme (0.6.16) ... 1580s Selecting previously unselected package ubuntu-mono. 1580s Preparing to unpack .../026-ubuntu-mono_24.04-0ubuntu1_all.deb ... 1580s Unpacking ubuntu-mono (24.04-0ubuntu1) ... 1580s Selecting previously unselected package adwaita-icon-theme. 1580s Preparing to unpack .../027-adwaita-icon-theme_47.0-2_all.deb ... 1580s Unpacking adwaita-icon-theme (47.0-2) ... 1580s Selecting previously unselected package at-spi2-common. 1580s Preparing to unpack .../028-at-spi2-common_2.54.0-1_all.deb ... 1580s Unpacking at-spi2-common (2.54.0-1) ... 1580s Selecting previously unselected package libatk1.0-0t64:ppc64el. 1580s Preparing to unpack .../029-libatk1.0-0t64_2.54.0-1_ppc64el.deb ... 1580s Unpacking libatk1.0-0t64:ppc64el (2.54.0-1) ... 1580s Selecting previously unselected package libxi6:ppc64el. 1580s Preparing to unpack .../030-libxi6_2%3a1.8.2-1_ppc64el.deb ... 1580s Unpacking libxi6:ppc64el (2:1.8.2-1) ... 1580s Selecting previously unselected package libatspi2.0-0t64:ppc64el. 1580s Preparing to unpack .../031-libatspi2.0-0t64_2.54.0-1_ppc64el.deb ... 1580s Unpacking libatspi2.0-0t64:ppc64el (2.54.0-1) ... 1580s Selecting previously unselected package libatk-bridge2.0-0t64:ppc64el. 1580s Preparing to unpack .../032-libatk-bridge2.0-0t64_2.54.0-1_ppc64el.deb ... 1580s Unpacking libatk-bridge2.0-0t64:ppc64el (2.54.0-1) ... 1580s Selecting previously unselected package fonts-dejavu-mono. 1580s Preparing to unpack .../033-fonts-dejavu-mono_2.37-8_all.deb ... 1580s Unpacking fonts-dejavu-mono (2.37-8) ... 1580s Selecting previously unselected package fonts-dejavu-core. 1580s Preparing to unpack .../034-fonts-dejavu-core_2.37-8_all.deb ... 1580s Unpacking fonts-dejavu-core (2.37-8) ... 1580s Selecting previously unselected package fontconfig-config. 1580s Preparing to unpack .../035-fontconfig-config_2.15.0-1.1ubuntu2_ppc64el.deb ... 1580s Unpacking fontconfig-config (2.15.0-1.1ubuntu2) ... 1580s Selecting previously unselected package libfontconfig1:ppc64el. 1580s Preparing to unpack .../036-libfontconfig1_2.15.0-1.1ubuntu2_ppc64el.deb ... 1580s Unpacking libfontconfig1:ppc64el (2.15.0-1.1ubuntu2) ... 1580s Selecting previously unselected package libpixman-1-0:ppc64el. 1580s Preparing to unpack .../037-libpixman-1-0_0.44.0-3_ppc64el.deb ... 1580s Unpacking libpixman-1-0:ppc64el (0.44.0-3) ... 1580s Selecting previously unselected package libxcb-render0:ppc64el. 1580s Preparing to unpack .../038-libxcb-render0_1.17.0-2_ppc64el.deb ... 1580s Unpacking libxcb-render0:ppc64el (1.17.0-2) ... 1580s Selecting previously unselected package libxcb-shm0:ppc64el. 1580s Preparing to unpack .../039-libxcb-shm0_1.17.0-2_ppc64el.deb ... 1580s Unpacking libxcb-shm0:ppc64el (1.17.0-2) ... 1580s Selecting previously unselected package libxrender1:ppc64el. 1580s Preparing to unpack .../040-libxrender1_1%3a0.9.10-1.1build1_ppc64el.deb ... 1580s Unpacking libxrender1:ppc64el (1:0.9.10-1.1build1) ... 1580s Selecting previously unselected package libcairo2:ppc64el. 1580s Preparing to unpack .../041-libcairo2_1.18.2-2_ppc64el.deb ... 1580s Unpacking libcairo2:ppc64el (1.18.2-2) ... 1580s Selecting previously unselected package libcairo-gobject2:ppc64el. 1580s Preparing to unpack .../042-libcairo-gobject2_1.18.2-2_ppc64el.deb ... 1580s Unpacking libcairo-gobject2:ppc64el (1.18.2-2) ... 1580s Selecting previously unselected package libcolord2:ppc64el. 1580s Preparing to unpack .../043-libcolord2_1.4.7-1build2_ppc64el.deb ... 1580s Unpacking libcolord2:ppc64el (1.4.7-1build2) ... 1580s Selecting previously unselected package libavahi-common-data:ppc64el. 1580s Preparing to unpack .../044-libavahi-common-data_0.8-14ubuntu1_ppc64el.deb ... 1580s Unpacking libavahi-common-data:ppc64el (0.8-14ubuntu1) ... 1580s Selecting previously unselected package libavahi-common3:ppc64el. 1580s Preparing to unpack .../045-libavahi-common3_0.8-14ubuntu1_ppc64el.deb ... 1580s Unpacking libavahi-common3:ppc64el (0.8-14ubuntu1) ... 1580s Selecting previously unselected package libavahi-client3:ppc64el. 1580s Preparing to unpack .../046-libavahi-client3_0.8-14ubuntu1_ppc64el.deb ... 1580s Unpacking libavahi-client3:ppc64el (0.8-14ubuntu1) ... 1580s Selecting previously unselected package libcups2t64:ppc64el. 1580s Preparing to unpack .../047-libcups2t64_2.4.11-0ubuntu2_ppc64el.deb ... 1580s Unpacking libcups2t64:ppc64el (2.4.11-0ubuntu2) ... 1580s Selecting previously unselected package libepoxy0:ppc64el. 1580s Preparing to unpack .../048-libepoxy0_1.5.10-2_ppc64el.deb ... 1580s Unpacking libepoxy0:ppc64el (1.5.10-2) ... 1581s Selecting previously unselected package libgraphite2-3:ppc64el. 1581s Preparing to unpack .../049-libgraphite2-3_1.3.14-2ubuntu1_ppc64el.deb ... 1581s Unpacking libgraphite2-3:ppc64el (1.3.14-2ubuntu1) ... 1581s Selecting previously unselected package libharfbuzz0b:ppc64el. 1581s Preparing to unpack .../050-libharfbuzz0b_10.1.0-1_ppc64el.deb ... 1581s Unpacking libharfbuzz0b:ppc64el (10.1.0-1) ... 1581s Selecting previously unselected package fontconfig. 1581s Preparing to unpack .../051-fontconfig_2.15.0-1.1ubuntu2_ppc64el.deb ... 1581s Unpacking fontconfig (2.15.0-1.1ubuntu2) ... 1581s Selecting previously unselected package libthai-data. 1581s Preparing to unpack .../052-libthai-data_0.1.29-2build1_all.deb ... 1581s Unpacking libthai-data (0.1.29-2build1) ... 1581s Selecting previously unselected package libdatrie1:ppc64el. 1581s Preparing to unpack .../053-libdatrie1_0.2.13-3build1_ppc64el.deb ... 1581s Unpacking libdatrie1:ppc64el (0.2.13-3build1) ... 1581s Selecting previously unselected package libthai0:ppc64el. 1581s Preparing to unpack .../054-libthai0_0.1.29-2build1_ppc64el.deb ... 1581s Unpacking libthai0:ppc64el (0.1.29-2build1) ... 1581s Selecting previously unselected package libpango-1.0-0:ppc64el. 1581s Preparing to unpack .../055-libpango-1.0-0_1.55.0+ds-3_ppc64el.deb ... 1581s Unpacking libpango-1.0-0:ppc64el (1.55.0+ds-3) ... 1581s Selecting previously unselected package libpangoft2-1.0-0:ppc64el. 1581s Preparing to unpack .../056-libpangoft2-1.0-0_1.55.0+ds-3_ppc64el.deb ... 1581s Unpacking libpangoft2-1.0-0:ppc64el (1.55.0+ds-3) ... 1581s Selecting previously unselected package libpangocairo-1.0-0:ppc64el. 1581s Preparing to unpack .../057-libpangocairo-1.0-0_1.55.0+ds-3_ppc64el.deb ... 1581s Unpacking libpangocairo-1.0-0:ppc64el (1.55.0+ds-3) ... 1581s Selecting previously unselected package libwayland-client0:ppc64el. 1581s Preparing to unpack .../058-libwayland-client0_1.23.0-1_ppc64el.deb ... 1581s Unpacking libwayland-client0:ppc64el (1.23.0-1) ... 1581s Selecting previously unselected package libwayland-cursor0:ppc64el. 1581s Preparing to unpack .../059-libwayland-cursor0_1.23.0-1_ppc64el.deb ... 1581s Unpacking libwayland-cursor0:ppc64el (1.23.0-1) ... 1581s Selecting previously unselected package libwayland-egl1:ppc64el. 1581s Preparing to unpack .../060-libwayland-egl1_1.23.0-1_ppc64el.deb ... 1581s Unpacking libwayland-egl1:ppc64el (1.23.0-1) ... 1581s Selecting previously unselected package libxcomposite1:ppc64el. 1581s Preparing to unpack .../061-libxcomposite1_1%3a0.4.6-1_ppc64el.deb ... 1581s Unpacking libxcomposite1:ppc64el (1:0.4.6-1) ... 1581s Selecting previously unselected package libxfixes3:ppc64el. 1581s Preparing to unpack .../062-libxfixes3_1%3a6.0.0-2build1_ppc64el.deb ... 1581s Unpacking libxfixes3:ppc64el (1:6.0.0-2build1) ... 1581s Selecting previously unselected package libxcursor1:ppc64el. 1581s Preparing to unpack .../063-libxcursor1_1%3a1.2.2-1_ppc64el.deb ... 1581s Unpacking libxcursor1:ppc64el (1:1.2.2-1) ... 1581s Selecting previously unselected package libxdamage1:ppc64el. 1581s Preparing to unpack .../064-libxdamage1_1%3a1.1.6-1build1_ppc64el.deb ... 1581s Unpacking libxdamage1:ppc64el (1:1.1.6-1build1) ... 1581s Selecting previously unselected package libxinerama1:ppc64el. 1581s Preparing to unpack .../065-libxinerama1_2%3a1.1.4-3build1_ppc64el.deb ... 1581s Unpacking libxinerama1:ppc64el (2:1.1.4-3build1) ... 1581s Selecting previously unselected package libxrandr2:ppc64el. 1581s Preparing to unpack .../066-libxrandr2_2%3a1.5.4-1_ppc64el.deb ... 1581s Unpacking libxrandr2:ppc64el (2:1.5.4-1) ... 1581s Selecting previously unselected package libdconf1:ppc64el. 1581s Preparing to unpack .../067-libdconf1_0.40.0-4build2_ppc64el.deb ... 1581s Unpacking libdconf1:ppc64el (0.40.0-4build2) ... 1581s Selecting previously unselected package dconf-service. 1581s Preparing to unpack .../068-dconf-service_0.40.0-4build2_ppc64el.deb ... 1581s Unpacking dconf-service (0.40.0-4build2) ... 1581s Selecting previously unselected package dconf-gsettings-backend:ppc64el. 1581s Preparing to unpack .../069-dconf-gsettings-backend_0.40.0-4build2_ppc64el.deb ... 1581s Unpacking dconf-gsettings-backend:ppc64el (0.40.0-4build2) ... 1581s Selecting previously unselected package libgtk-3-common. 1581s Preparing to unpack .../070-libgtk-3-common_3.24.43-4ubuntu1_all.deb ... 1581s Unpacking libgtk-3-common (3.24.43-4ubuntu1) ... 1581s Selecting previously unselected package libgtk-3-0t64:ppc64el. 1581s Preparing to unpack .../071-libgtk-3-0t64_3.24.43-4ubuntu1_ppc64el.deb ... 1581s Unpacking libgtk-3-0t64:ppc64el (3.24.43-4ubuntu1) ... 1581s Selecting previously unselected package libglvnd0:ppc64el. 1581s Preparing to unpack .../072-libglvnd0_1.7.0-1build1_ppc64el.deb ... 1581s Unpacking libglvnd0:ppc64el (1.7.0-1build1) ... 1581s Selecting previously unselected package libglapi-mesa:ppc64el. 1581s Preparing to unpack .../073-libglapi-mesa_24.2.8-1ubuntu1_ppc64el.deb ... 1581s Unpacking libglapi-mesa:ppc64el (24.2.8-1ubuntu1) ... 1581s Selecting previously unselected package libx11-xcb1:ppc64el. 1581s Preparing to unpack .../074-libx11-xcb1_2%3a1.8.10-2_ppc64el.deb ... 1581s Unpacking libx11-xcb1:ppc64el (2:1.8.10-2) ... 1581s Selecting previously unselected package libxcb-dri2-0:ppc64el. 1581s Preparing to unpack .../075-libxcb-dri2-0_1.17.0-2_ppc64el.deb ... 1581s Unpacking libxcb-dri2-0:ppc64el (1.17.0-2) ... 1581s Selecting previously unselected package libxcb-dri3-0:ppc64el. 1581s Preparing to unpack .../076-libxcb-dri3-0_1.17.0-2_ppc64el.deb ... 1581s Unpacking libxcb-dri3-0:ppc64el (1.17.0-2) ... 1581s Selecting previously unselected package libxcb-glx0:ppc64el. 1581s Preparing to unpack .../077-libxcb-glx0_1.17.0-2_ppc64el.deb ... 1581s Unpacking libxcb-glx0:ppc64el (1.17.0-2) ... 1581s Selecting previously unselected package libxcb-present0:ppc64el. 1581s Preparing to unpack .../078-libxcb-present0_1.17.0-2_ppc64el.deb ... 1581s Unpacking libxcb-present0:ppc64el (1.17.0-2) ... 1581s Selecting previously unselected package libxcb-randr0:ppc64el. 1581s Preparing to unpack .../079-libxcb-randr0_1.17.0-2_ppc64el.deb ... 1581s Unpacking libxcb-randr0:ppc64el (1.17.0-2) ... 1581s Selecting previously unselected package libxcb-sync1:ppc64el. 1581s Preparing to unpack .../080-libxcb-sync1_1.17.0-2_ppc64el.deb ... 1581s Unpacking libxcb-sync1:ppc64el (1.17.0-2) ... 1581s Selecting previously unselected package libxcb-xfixes0:ppc64el. 1581s Preparing to unpack .../081-libxcb-xfixes0_1.17.0-2_ppc64el.deb ... 1581s Unpacking libxcb-xfixes0:ppc64el (1.17.0-2) ... 1581s Selecting previously unselected package libxshmfence1:ppc64el. 1581s Preparing to unpack .../082-libxshmfence1_1.3-1build5_ppc64el.deb ... 1581s Unpacking libxshmfence1:ppc64el (1.3-1build5) ... 1581s Selecting previously unselected package libxxf86vm1:ppc64el. 1581s Preparing to unpack .../083-libxxf86vm1_1%3a1.1.4-1build4_ppc64el.deb ... 1581s Unpacking libxxf86vm1:ppc64el (1:1.1.4-1build4) ... 1581s Selecting previously unselected package libdrm-radeon1:ppc64el. 1581s Preparing to unpack .../084-libdrm-radeon1_2.4.123-1_ppc64el.deb ... 1581s Unpacking libdrm-radeon1:ppc64el (2.4.123-1) ... 1581s Selecting previously unselected package mesa-libgallium:ppc64el. 1581s Preparing to unpack .../085-mesa-libgallium_24.2.8-1ubuntu1_ppc64el.deb ... 1581s Unpacking mesa-libgallium:ppc64el (24.2.8-1ubuntu1) ... 1581s Selecting previously unselected package libvulkan1:ppc64el. 1581s Preparing to unpack .../086-libvulkan1_1.3.296.0-1_ppc64el.deb ... 1581s Unpacking libvulkan1:ppc64el (1.3.296.0-1) ... 1581s Selecting previously unselected package libwayland-server0:ppc64el. 1581s Preparing to unpack .../087-libwayland-server0_1.23.0-1_ppc64el.deb ... 1581s Unpacking libwayland-server0:ppc64el (1.23.0-1) ... 1581s Selecting previously unselected package libgbm1:ppc64el. 1581s Preparing to unpack .../088-libgbm1_24.2.8-1ubuntu1_ppc64el.deb ... 1581s Unpacking libgbm1:ppc64el (24.2.8-1ubuntu1) ... 1581s Selecting previously unselected package libgl1-mesa-dri:ppc64el. 1581s Preparing to unpack .../089-libgl1-mesa-dri_24.2.8-1ubuntu1_ppc64el.deb ... 1581s Unpacking libgl1-mesa-dri:ppc64el (24.2.8-1ubuntu1) ... 1581s Selecting previously unselected package libglx-mesa0:ppc64el. 1581s Preparing to unpack .../090-libglx-mesa0_24.2.8-1ubuntu1_ppc64el.deb ... 1581s Unpacking libglx-mesa0:ppc64el (24.2.8-1ubuntu1) ... 1581s Selecting previously unselected package libglx0:ppc64el. 1581s Preparing to unpack .../091-libglx0_1.7.0-1build1_ppc64el.deb ... 1581s Unpacking libglx0:ppc64el (1.7.0-1build1) ... 1581s Selecting previously unselected package libgl1:ppc64el. 1581s Preparing to unpack .../092-libgl1_1.7.0-1build1_ppc64el.deb ... 1581s Unpacking libgl1:ppc64el (1.7.0-1build1) ... 1581s Selecting previously unselected package libasound2-data. 1581s Preparing to unpack .../093-libasound2-data_1.2.12-1_all.deb ... 1581s Unpacking libasound2-data (1.2.12-1) ... 1581s Selecting previously unselected package libasound2t64:ppc64el. 1581s Preparing to unpack .../094-libasound2t64_1.2.12-1_ppc64el.deb ... 1581s Unpacking libasound2t64:ppc64el (1.2.12-1) ... 1581s Selecting previously unselected package libgif7:ppc64el. 1581s Preparing to unpack .../095-libgif7_5.2.2-1ubuntu1_ppc64el.deb ... 1581s Unpacking libgif7:ppc64el (5.2.2-1ubuntu1) ... 1581s Selecting previously unselected package x11-common. 1581s Preparing to unpack .../096-x11-common_1%3a7.7+23ubuntu3_all.deb ... 1581s Unpacking x11-common (1:7.7+23ubuntu3) ... 1582s Selecting previously unselected package libxtst6:ppc64el. 1582s Preparing to unpack .../097-libxtst6_2%3a1.2.3-1.1build1_ppc64el.deb ... 1582s Unpacking libxtst6:ppc64el (2:1.2.3-1.1build1) ... 1582s Selecting previously unselected package openjdk-21-jre:ppc64el. 1582s Preparing to unpack .../098-openjdk-21-jre_21.0.5+11-1_ppc64el.deb ... 1582s Unpacking openjdk-21-jre:ppc64el (21.0.5+11-1) ... 1582s Selecting previously unselected package default-jre. 1582s Preparing to unpack .../099-default-jre_2%3a1.21-76_ppc64el.deb ... 1582s Unpacking default-jre (2:1.21-76) ... 1582s Selecting previously unselected package libhamcrest-java. 1582s Preparing to unpack .../100-libhamcrest-java_2.2-2_all.deb ... 1582s Unpacking libhamcrest-java (2.2-2) ... 1582s Selecting previously unselected package junit4. 1582s Preparing to unpack .../101-junit4_4.13.2-5_all.deb ... 1582s Unpacking junit4 (4.13.2-5) ... 1582s Selecting previously unselected package libcommons-cli-java. 1582s Preparing to unpack .../102-libcommons-cli-java_1.6.0-1_all.deb ... 1582s Unpacking libcommons-cli-java (1.6.0-1) ... 1582s Selecting previously unselected package libapache-pom-java. 1582s Preparing to unpack .../103-libapache-pom-java_33-2_all.deb ... 1582s Unpacking libapache-pom-java (33-2) ... 1582s Selecting previously unselected package libcommons-parent-java. 1582s Preparing to unpack .../104-libcommons-parent-java_56-1_all.deb ... 1582s Unpacking libcommons-parent-java (56-1) ... 1582s Selecting previously unselected package libcommons-io-java. 1582s Preparing to unpack .../105-libcommons-io-java_2.17.0-1_all.deb ... 1582s Unpacking libcommons-io-java (2.17.0-1) ... 1582s Selecting previously unselected package libdropwizard-metrics-java. 1582s Preparing to unpack .../106-libdropwizard-metrics-java_3.2.6-1_all.deb ... 1582s Unpacking libdropwizard-metrics-java (3.2.6-1) ... 1582s Selecting previously unselected package libfindbugs-annotations-java. 1582s Preparing to unpack .../107-libfindbugs-annotations-java_3.1.0~preview2-4_all.deb ... 1582s Unpacking libfindbugs-annotations-java (3.1.0~preview2-4) ... 1582s Selecting previously unselected package libatinject-jsr330-api-java. 1582s Preparing to unpack .../108-libatinject-jsr330-api-java_1.0+ds1-5_all.deb ... 1582s Unpacking libatinject-jsr330-api-java (1.0+ds1-5) ... 1582s Selecting previously unselected package liberror-prone-java. 1582s Preparing to unpack .../109-liberror-prone-java_2.18.0-1_all.deb ... 1582s Unpacking liberror-prone-java (2.18.0-1) ... 1582s Selecting previously unselected package libjsr305-java. 1582s Preparing to unpack .../110-libjsr305-java_0.1~+svn49-11_all.deb ... 1582s Unpacking libjsr305-java (0.1~+svn49-11) ... 1582s Selecting previously unselected package libguava-java. 1582s Preparing to unpack .../111-libguava-java_32.0.1-1_all.deb ... 1582s Unpacking libguava-java (32.0.1-1) ... 1582s Selecting previously unselected package libjackson2-annotations-java. 1582s Preparing to unpack .../112-libjackson2-annotations-java_2.14.0-1_all.deb ... 1582s Unpacking libjackson2-annotations-java (2.14.0-1) ... 1582s Selecting previously unselected package libjackson2-core-java. 1582s Preparing to unpack .../113-libjackson2-core-java_2.14.1-1_all.deb ... 1582s Unpacking libjackson2-core-java (2.14.1-1) ... 1582s Selecting previously unselected package libjackson2-databind-java. 1582s Preparing to unpack .../114-libjackson2-databind-java_2.14.0-1_all.deb ... 1582s Unpacking libjackson2-databind-java (2.14.0-1) ... 1582s Selecting previously unselected package libasm-java. 1582s Preparing to unpack .../115-libasm-java_9.7.1-1_all.deb ... 1582s Unpacking libasm-java (9.7.1-1) ... 1582s Selecting previously unselected package libel-api-java. 1582s Preparing to unpack .../116-libel-api-java_3.0.0-3_all.deb ... 1582s Unpacking libel-api-java (3.0.0-3) ... 1582s Selecting previously unselected package libjsp-api-java. 1582s Preparing to unpack .../117-libjsp-api-java_2.3.4-3_all.deb ... 1582s Unpacking libjsp-api-java (2.3.4-3) ... 1582s Selecting previously unselected package libservlet-api-java. 1582s Preparing to unpack .../118-libservlet-api-java_4.0.1-2_all.deb ... 1582s Unpacking libservlet-api-java (4.0.1-2) ... 1582s Selecting previously unselected package libwebsocket-api-java. 1582s Preparing to unpack .../119-libwebsocket-api-java_1.1-2_all.deb ... 1582s Unpacking libwebsocket-api-java (1.1-2) ... 1582s Selecting previously unselected package libjetty9-java. 1582s Preparing to unpack .../120-libjetty9-java_9.4.56-1_all.deb ... 1582s Unpacking libjetty9-java (9.4.56-1) ... 1582s Selecting previously unselected package libjnr-constants-java. 1582s Preparing to unpack .../121-libjnr-constants-java_0.10.4-2_all.deb ... 1582s Unpacking libjnr-constants-java (0.10.4-2) ... 1582s Selecting previously unselected package libjffi-jni:ppc64el. 1582s Preparing to unpack .../122-libjffi-jni_1.3.13+ds-1_ppc64el.deb ... 1582s Unpacking libjffi-jni:ppc64el (1.3.13+ds-1) ... 1582s Selecting previously unselected package libjffi-java. 1582s Preparing to unpack .../123-libjffi-java_1.3.13+ds-1_all.deb ... 1582s Unpacking libjffi-java (1.3.13+ds-1) ... 1582s Selecting previously unselected package libjnr-x86asm-java. 1582s Preparing to unpack .../124-libjnr-x86asm-java_1.0.2-5.1_all.deb ... 1582s Unpacking libjnr-x86asm-java (1.0.2-5.1) ... 1582s Selecting previously unselected package libjnr-ffi-java. 1582s Preparing to unpack .../125-libjnr-ffi-java_2.2.15-2_all.deb ... 1582s Unpacking libjnr-ffi-java (2.2.15-2) ... 1582s Selecting previously unselected package libjnr-enxio-java. 1582s Preparing to unpack .../126-libjnr-enxio-java_0.32.16-1_all.deb ... 1582s Unpacking libjnr-enxio-java (0.32.16-1) ... 1582s Selecting previously unselected package libjnr-posix-java. 1582s Preparing to unpack .../127-libjnr-posix-java_3.1.18-1_all.deb ... 1582s Unpacking libjnr-posix-java (3.1.18-1) ... 1582s Selecting previously unselected package libjnr-unixsocket-java. 1582s Preparing to unpack .../128-libjnr-unixsocket-java_0.38.21-2_all.deb ... 1582s Unpacking libjnr-unixsocket-java (0.38.21-2) ... 1582s Selecting previously unselected package libactivation-java. 1582s Preparing to unpack .../129-libactivation-java_1.2.0-2_all.deb ... 1582s Unpacking libactivation-java (1.2.0-2) ... 1582s Selecting previously unselected package libmail-java. 1582s Preparing to unpack .../130-libmail-java_1.6.5-3_all.deb ... 1582s Unpacking libmail-java (1.6.5-3) ... 1582s Selecting previously unselected package libcommons-logging-java. 1582s Preparing to unpack .../131-libcommons-logging-java_1.3.0-1ubuntu1_all.deb ... 1582s Unpacking libcommons-logging-java (1.3.0-1ubuntu1) ... 1582s Selecting previously unselected package libjaxb-api-java. 1582s Preparing to unpack .../132-libjaxb-api-java_2.3.1-1_all.deb ... 1582s Unpacking libjaxb-api-java (2.3.1-1) ... 1582s Selecting previously unselected package libspring-core-java. 1582s Preparing to unpack .../133-libspring-core-java_4.3.30-2ubuntu1_all.deb ... 1582s Unpacking libspring-core-java (4.3.30-2ubuntu1) ... 1582s Selecting previously unselected package libspring-beans-java. 1582s Preparing to unpack .../134-libspring-beans-java_4.3.30-2ubuntu1_all.deb ... 1582s Unpacking libspring-beans-java (4.3.30-2ubuntu1) ... 1582s Selecting previously unselected package libtaglibs-standard-spec-java. 1582s Preparing to unpack .../135-libtaglibs-standard-spec-java_1.2.5-3_all.deb ... 1582s Unpacking libtaglibs-standard-spec-java (1.2.5-3) ... 1582s Selecting previously unselected package libtaglibs-standard-impl-java. 1582s Preparing to unpack .../136-libtaglibs-standard-impl-java_1.2.5-3_all.deb ... 1582s Unpacking libtaglibs-standard-impl-java (1.2.5-3) ... 1582s Selecting previously unselected package libeclipse-jdt-core-compiler-batch-java. 1582s Preparing to unpack .../137-libeclipse-jdt-core-compiler-batch-java_3.35.0+eclipse4.29-2_all.deb ... 1582s Unpacking libeclipse-jdt-core-compiler-batch-java (3.35.0+eclipse4.29-2) ... 1582s Selecting previously unselected package libeclipse-jdt-core-java. 1582s Preparing to unpack .../138-libeclipse-jdt-core-java_3.35.0+eclipse4.29-2_all.deb ... 1582s Unpacking libeclipse-jdt-core-java (3.35.0+eclipse4.29-2) ... 1582s Selecting previously unselected package libtomcat9-java. 1582s Preparing to unpack .../139-libtomcat9-java_9.0.70-2ubuntu1.1_all.deb ... 1582s Unpacking libtomcat9-java (9.0.70-2ubuntu1.1) ... 1582s Selecting previously unselected package libjetty9-extra-java. 1582s Preparing to unpack .../140-libjetty9-extra-java_9.4.56-1_all.deb ... 1582s Unpacking libjetty9-extra-java (9.4.56-1) ... 1582s Selecting previously unselected package libjctools-java. 1582s Preparing to unpack .../141-libjctools-java_2.0.2-1_all.deb ... 1582s Unpacking libjctools-java (2.0.2-1) ... 1583s Selecting previously unselected package libnetty-java. 1583s Preparing to unpack .../142-libnetty-java_1%3a4.1.48-10_all.deb ... 1583s Unpacking libnetty-java (1:4.1.48-10) ... 1583s Selecting previously unselected package libslf4j-java. 1583s Preparing to unpack .../143-libslf4j-java_1.7.32-1_all.deb ... 1583s Unpacking libslf4j-java (1.7.32-1) ... 1583s Selecting previously unselected package libsnappy1v5:ppc64el. 1583s Preparing to unpack .../144-libsnappy1v5_1.2.1-1_ppc64el.deb ... 1583s Unpacking libsnappy1v5:ppc64el (1.2.1-1) ... 1583s Selecting previously unselected package libsnappy-jni. 1583s Preparing to unpack .../145-libsnappy-jni_1.1.10.7-1_ppc64el.deb ... 1583s Unpacking libsnappy-jni (1.1.10.7-1) ... 1583s Selecting previously unselected package libsnappy-java. 1583s Preparing to unpack .../146-libsnappy-java_1.1.10.7-1_all.deb ... 1583s Unpacking libsnappy-java (1.1.10.7-1) ... 1583s Selecting previously unselected package libapr1t64:ppc64el. 1583s Preparing to unpack .../147-libapr1t64_1.7.5-1_ppc64el.deb ... 1583s Unpacking libapr1t64:ppc64el (1.7.5-1) ... 1583s Selecting previously unselected package libnetty-tcnative-jni. 1583s Preparing to unpack .../148-libnetty-tcnative-jni_2.0.28-1build4_ppc64el.deb ... 1583s Unpacking libnetty-tcnative-jni (2.0.28-1build4) ... 1583s Selecting previously unselected package libnetty-tcnative-java. 1583s Preparing to unpack .../149-libnetty-tcnative-java_2.0.28-1build4_all.deb ... 1583s Unpacking libnetty-tcnative-java (2.0.28-1build4) ... 1583s Selecting previously unselected package liblog4j1.2-java. 1583s Preparing to unpack .../150-liblog4j1.2-java_1.2.17-11_all.deb ... 1583s Unpacking liblog4j1.2-java (1.2.17-11) ... 1583s Selecting previously unselected package libzookeeper-java. 1583s Preparing to unpack .../151-libzookeeper-java_3.9.3-1_all.deb ... 1583s Unpacking libzookeeper-java (3.9.3-1) ... 1583s Selecting previously unselected package zookeeper. 1583s Preparing to unpack .../152-zookeeper_3.9.3-1_all.deb ... 1583s Unpacking zookeeper (3.9.3-1) ... 1583s Selecting previously unselected package zookeeperd. 1583s Preparing to unpack .../153-zookeeperd_3.9.3-1_all.deb ... 1583s Unpacking zookeeperd (3.9.3-1) ... 1583s Selecting previously unselected package fonts-font-awesome. 1583s Preparing to unpack .../154-fonts-font-awesome_5.0.10+really4.7.0~dfsg-4.1_all.deb ... 1583s Unpacking fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ... 1583s Selecting previously unselected package libcares2:ppc64el. 1583s Preparing to unpack .../155-libcares2_1.34.4-1_ppc64el.deb ... 1583s Unpacking libcares2:ppc64el (1.34.4-1) ... 1583s Selecting previously unselected package libev4t64:ppc64el. 1583s Preparing to unpack .../156-libev4t64_1%3a4.33-2.1build1_ppc64el.deb ... 1583s Unpacking libev4t64:ppc64el (1:4.33-2.1build1) ... 1583s Selecting previously unselected package libio-pty-perl. 1583s Preparing to unpack .../157-libio-pty-perl_1%3a1.20-1build3_ppc64el.deb ... 1583s Unpacking libio-pty-perl (1:1.20-1build3) ... 1583s Selecting previously unselected package libipc-run-perl. 1583s Preparing to unpack .../158-libipc-run-perl_20231003.0-2_all.deb ... 1583s Unpacking libipc-run-perl (20231003.0-2) ... 1583s Selecting previously unselected package libjs-jquery. 1583s Preparing to unpack .../159-libjs-jquery_3.6.1+dfsg+~3.5.14-1_all.deb ... 1583s Unpacking libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 1583s Selecting previously unselected package libjs-underscore. 1583s Preparing to unpack .../160-libjs-underscore_1.13.4~dfsg+~1.11.4-3_all.deb ... 1583s Unpacking libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 1583s Selecting previously unselected package libjs-sphinxdoc. 1583s Preparing to unpack .../161-libjs-sphinxdoc_8.1.3-3_all.deb ... 1583s Unpacking libjs-sphinxdoc (8.1.3-3) ... 1583s Selecting previously unselected package libpq5:ppc64el. 1583s Preparing to unpack .../162-libpq5_17.2-1_ppc64el.deb ... 1583s Unpacking libpq5:ppc64el (17.2-1) ... 1583s Selecting previously unselected package libpython3.13-stdlib:ppc64el. 1583s Preparing to unpack .../163-libpython3.13-stdlib_3.13.1-2_ppc64el.deb ... 1583s Unpacking libpython3.13-stdlib:ppc64el (3.13.1-2) ... 1583s Selecting previously unselected package libtime-duration-perl. 1583s Preparing to unpack .../164-libtime-duration-perl_1.21-2_all.deb ... 1583s Unpacking libtime-duration-perl (1.21-2) ... 1583s Selecting previously unselected package libtimedate-perl. 1583s Preparing to unpack .../165-libtimedate-perl_2.3300-2_all.deb ... 1583s Unpacking libtimedate-perl (2.3300-2) ... 1583s Selecting previously unselected package libxslt1.1:ppc64el. 1583s Preparing to unpack .../166-libxslt1.1_1.1.39-0exp1ubuntu2_ppc64el.deb ... 1583s Unpacking libxslt1.1:ppc64el (1.1.39-0exp1ubuntu2) ... 1583s Selecting previously unselected package moreutils. 1583s Preparing to unpack .../167-moreutils_0.69-1_ppc64el.deb ... 1583s Unpacking moreutils (0.69-1) ... 1583s Selecting previously unselected package python3-ydiff. 1583s Preparing to unpack .../168-python3-ydiff_1.4.2-1_all.deb ... 1583s Unpacking python3-ydiff (1.4.2-1) ... 1583s Selecting previously unselected package python3-cdiff. 1583s Preparing to unpack .../169-python3-cdiff_1.4.2-1_all.deb ... 1583s Unpacking python3-cdiff (1.4.2-1) ... 1583s Selecting previously unselected package python3-colorama. 1583s Preparing to unpack .../170-python3-colorama_0.4.6-4_all.deb ... 1583s Unpacking python3-colorama (0.4.6-4) ... 1583s Selecting previously unselected package python3-click. 1583s Preparing to unpack .../171-python3-click_8.1.7-2_all.deb ... 1583s Unpacking python3-click (8.1.7-2) ... 1583s Selecting previously unselected package python3-dateutil. 1583s Preparing to unpack .../172-python3-dateutil_2.9.0-3_all.deb ... 1583s Unpacking python3-dateutil (2.9.0-3) ... 1583s Selecting previously unselected package python3-wcwidth. 1583s Preparing to unpack .../173-python3-wcwidth_0.2.13+dfsg1-1_all.deb ... 1583s Unpacking python3-wcwidth (0.2.13+dfsg1-1) ... 1583s Selecting previously unselected package python3-prettytable. 1583s Preparing to unpack .../174-python3-prettytable_3.12.0-1_all.deb ... 1583s Unpacking python3-prettytable (3.12.0-1) ... 1583s Selecting previously unselected package python3-psutil. 1583s Preparing to unpack .../175-python3-psutil_5.9.8-2build3_ppc64el.deb ... 1583s Unpacking python3-psutil (5.9.8-2build3) ... 1583s Selecting previously unselected package python3-psycopg2. 1583s Preparing to unpack .../176-python3-psycopg2_2.9.10-1_ppc64el.deb ... 1583s Unpacking python3-psycopg2 (2.9.10-1) ... 1583s Selecting previously unselected package python3-greenlet. 1583s Preparing to unpack .../177-python3-greenlet_3.1.0-1_ppc64el.deb ... 1583s Unpacking python3-greenlet (3.1.0-1) ... 1583s Selecting previously unselected package python3-dnspython. 1583s Preparing to unpack .../178-python3-dnspython_2.6.1-1ubuntu1_all.deb ... 1583s Unpacking python3-dnspython (2.6.1-1ubuntu1) ... 1583s Selecting previously unselected package python3-eventlet. 1583s Preparing to unpack .../179-python3-eventlet_0.36.1-11ubuntu1_all.deb ... 1583s Unpacking python3-eventlet (0.36.1-11ubuntu1) ... 1583s Selecting previously unselected package python3-zope.event. 1583s Preparing to unpack .../180-python3-zope.event_5.0-0.1_all.deb ... 1583s Unpacking python3-zope.event (5.0-0.1) ... 1583s Selecting previously unselected package python3-zope.interface. 1583s Preparing to unpack .../181-python3-zope.interface_7.2-1_ppc64el.deb ... 1583s Unpacking python3-zope.interface (7.2-1) ... 1583s Selecting previously unselected package python3-gevent. 1583s Preparing to unpack .../182-python3-gevent_24.11.1-1_ppc64el.deb ... 1583s Unpacking python3-gevent (24.11.1-1) ... 1583s Selecting previously unselected package python3-kerberos. 1583s Preparing to unpack .../183-python3-kerberos_1.1.14-3.1build10_ppc64el.deb ... 1583s Unpacking python3-kerberos (1.1.14-3.1build10) ... 1583s Selecting previously unselected package python3-pure-sasl. 1584s Preparing to unpack .../184-python3-pure-sasl_0.5.1+dfsg1-5_all.deb ... 1584s Unpacking python3-pure-sasl (0.5.1+dfsg1-5) ... 1584s Selecting previously unselected package python3-six. 1584s Preparing to unpack .../185-python3-six_1.17.0-1_all.deb ... 1584s Unpacking python3-six (1.17.0-1) ... 1584s Selecting previously unselected package python3-kazoo. 1584s Preparing to unpack .../186-python3-kazoo_2.9.0-2_all.deb ... 1584s Unpacking python3-kazoo (2.9.0-2) ... 1584s Selecting previously unselected package patroni. 1584s Preparing to unpack .../187-patroni_3.3.4-1_all.deb ... 1584s Unpacking patroni (3.3.4-1) ... 1584s Selecting previously unselected package sphinx-rtd-theme-common. 1584s Preparing to unpack .../188-sphinx-rtd-theme-common_3.0.2+dfsg-1_all.deb ... 1584s Unpacking sphinx-rtd-theme-common (3.0.2+dfsg-1) ... 1584s Selecting previously unselected package patroni-doc. 1584s Preparing to unpack .../189-patroni-doc_3.3.4-1_all.deb ... 1584s Unpacking patroni-doc (3.3.4-1) ... 1584s Selecting previously unselected package postgresql-client-16. 1584s Preparing to unpack .../190-postgresql-client-16_16.4-3_ppc64el.deb ... 1584s Unpacking postgresql-client-16 (16.4-3) ... 1584s Selecting previously unselected package postgresql-16. 1584s Preparing to unpack .../191-postgresql-16_16.4-3_ppc64el.deb ... 1584s Unpacking postgresql-16 (16.4-3) ... 1584s Selecting previously unselected package postgresql. 1584s Preparing to unpack .../192-postgresql_16+262_all.deb ... 1584s Unpacking postgresql (16+262) ... 1584s Selecting previously unselected package python3-parse. 1584s Preparing to unpack .../193-python3-parse_1.20.2-1_all.deb ... 1584s Unpacking python3-parse (1.20.2-1) ... 1584s Selecting previously unselected package python3-parse-type. 1584s Preparing to unpack .../194-python3-parse-type_0.6.4-1_all.deb ... 1584s Unpacking python3-parse-type (0.6.4-1) ... 1584s Selecting previously unselected package python3-behave. 1584s Preparing to unpack .../195-python3-behave_1.2.6-6_all.deb ... 1584s Unpacking python3-behave (1.2.6-6) ... 1584s Selecting previously unselected package python3.13. 1584s Preparing to unpack .../196-python3.13_3.13.1-2_ppc64el.deb ... 1584s Unpacking python3.13 (3.13.1-2) ... 1584s Selecting previously unselected package python3-coverage. 1584s Preparing to unpack .../197-python3-coverage_7.4.4+dfsg1-0ubuntu3_ppc64el.deb ... 1584s Unpacking python3-coverage (7.4.4+dfsg1-0ubuntu3) ... 1584s Setting up postgresql-client-common (262) ... 1584s Setting up libgraphite2-3:ppc64el (1.3.14-2ubuntu1) ... 1584s Setting up libxcb-dri3-0:ppc64el (1.17.0-2) ... 1584s Setting up liblcms2-2:ppc64el (2.16-2) ... 1584s Setting up libtaglibs-standard-spec-java (1.2.5-3) ... 1584s Setting up libpixman-1-0:ppc64el (0.44.0-3) ... 1584s Setting up libev4t64:ppc64el (1:4.33-2.1build1) ... 1584s Setting up libjackson2-annotations-java (2.14.0-1) ... 1584s Setting up libsharpyuv0:ppc64el (1.4.0-0.1) ... 1584s Setting up libwayland-server0:ppc64el (1.23.0-1) ... 1584s Setting up libx11-xcb1:ppc64el (2:1.8.10-2) ... 1584s Setting up libslf4j-java (1.7.32-1) ... 1584s Setting up fonts-lato (2.015-1) ... 1584s Setting up libeclipse-jdt-core-compiler-batch-java (3.35.0+eclipse4.29-2) ... 1584s Setting up libxdamage1:ppc64el (1:1.1.6-1build1) ... 1584s Setting up libxcb-xfixes0:ppc64el (1.17.0-2) ... 1584s Setting up liblerc4:ppc64el (4.0.0+ds-5ubuntu1) ... 1584s Setting up libjsr305-java (0.1~+svn49-11) ... 1584s Setting up hicolor-icon-theme (0.18-1) ... 1584s Setting up libxi6:ppc64el (2:1.8.2-1) ... 1584s Setting up java-common (0.76) ... 1584s Setting up libxrender1:ppc64el (1:0.9.10-1.1build1) ... 1584s Setting up libdatrie1:ppc64el (0.2.13-3build1) ... 1584s Setting up libcommons-cli-java (1.6.0-1) ... 1584s Setting up libio-pty-perl (1:1.20-1build3) ... 1584s Setting up python3-colorama (0.4.6-4) ... 1584s Setting up libxcb-render0:ppc64el (1.17.0-2) ... 1584s Setting up python3-zope.event (5.0-0.1) ... 1585s Setting up python3-zope.interface (7.2-1) ... 1585s Setting up libdrm-radeon1:ppc64el (2.4.123-1) ... 1585s Setting up libglvnd0:ppc64el (1.7.0-1build1) ... 1585s Setting up libxcb-glx0:ppc64el (1.17.0-2) ... 1585s Setting up libgdk-pixbuf2.0-common (2.42.12+dfsg-1) ... 1585s Setting up python3-ydiff (1.4.2-1) ... 1585s Setting up libasm-java (9.7.1-1) ... 1585s Setting up x11-common (1:7.7+23ubuntu3) ... 1586s Setting up libpq5:ppc64el (17.2-1) ... 1586s Setting up libdeflate0:ppc64el (1.22-1) ... 1586s Setting up python3-kerberos (1.1.14-3.1build10) ... 1586s Setting up liblog4j1.2-java (1.2.17-11) ... 1586s Setting up libel-api-java (3.0.0-3) ... 1586s Setting up libxcb-shm0:ppc64el (1.17.0-2) ... 1586s Setting up python3-click (8.1.7-2) ... 1586s Setting up libjnr-x86asm-java (1.0.2-5.1) ... 1586s Setting up libjbig0:ppc64el (2.1-6.1ubuntu2) ... 1586s Setting up libcolord2:ppc64el (1.4.7-1build2) ... 1586s Setting up python3-psutil (5.9.8-2build3) ... 1587s Setting up libeclipse-jdt-core-java (3.35.0+eclipse4.29-2) ... 1587s Setting up libxxf86vm1:ppc64el (1:1.1.4-1build4) ... 1587s Setting up libsnappy1v5:ppc64el (1.2.1-1) ... 1587s Setting up libxcb-present0:ppc64el (1.17.0-2) ... 1587s Setting up libtaglibs-standard-impl-java (1.2.5-3) ... 1587s Setting up libdconf1:ppc64el (0.40.0-4build2) ... 1587s Setting up libjctools-java (2.0.2-1) ... 1587s Setting up libdropwizard-metrics-java (3.2.6-1) ... 1587s Setting up python3-six (1.17.0-1) ... 1587s Setting up libpython3.13-minimal:ppc64el (3.13.1-2) ... 1587s Setting up libasound2-data (1.2.12-1) ... 1587s Setting up libasound2t64:ppc64el (1.2.12-1) ... 1587s Setting up python3-wcwidth (0.2.13+dfsg1-1) ... 1587s Setting up libfindbugs-annotations-java (3.1.0~preview2-4) ... 1587s Setting up libepoxy0:ppc64el (1.5.10-2) ... 1587s Setting up ssl-cert (1.1.3ubuntu1) ... 1587s Created symlink '/etc/systemd/system/multi-user.target.wants/ssl-cert.service' → '/usr/lib/systemd/system/ssl-cert.service'. 1588s Setting up libxfixes3:ppc64el (1:6.0.0-2build1) ... 1588s Setting up libxcb-sync1:ppc64el (1.17.0-2) ... 1588s Setting up libapache-pom-java (33-2) ... 1588s Setting up libavahi-common-data:ppc64el (0.8-14ubuntu1) ... 1588s Setting up libatinject-jsr330-api-java (1.0+ds1-5) ... 1588s Setting up libatspi2.0-0t64:ppc64el (2.54.0-1) ... 1588s Setting up libwebsocket-api-java (1.1-2) ... 1588s Setting up python3-greenlet (3.1.0-1) ... 1588s Setting up libxinerama1:ppc64el (2:1.1.4-3build1) ... 1588s Setting up fonts-dejavu-mono (2.37-8) ... 1588s Setting up libcares2:ppc64el (1.34.4-1) ... 1588s Setting up libxrandr2:ppc64el (2:1.5.4-1) ... 1588s Setting up python3-psycopg2 (2.9.10-1) ... 1588s Setting up fonts-dejavu-core (2.37-8) ... 1588s Setting up libipc-run-perl (20231003.0-2) ... 1588s Setting up libpcsclite1:ppc64el (2.3.0-3) ... 1588s Setting up libjpeg-turbo8:ppc64el (2.1.5-3ubuntu2) ... 1588s Setting up libactivation-java (1.2.0-2) ... 1588s Setting up libtomcat9-java (9.0.70-2ubuntu1.1) ... 1588s Setting up libhamcrest-java (2.2-2) ... 1588s Setting up libglapi-mesa:ppc64el (24.2.8-1ubuntu1) ... 1588s Setting up libjsp-api-java (2.3.4-3) ... 1588s Setting up libvulkan1:ppc64el (1.3.296.0-1) ... 1588s Setting up libtime-duration-perl (1.21-2) ... 1588s Setting up libwebp7:ppc64el (1.4.0-0.1) ... 1588s Setting up libtimedate-perl (2.3300-2) ... 1588s Setting up libxcb-dri2-0:ppc64el (1.17.0-2) ... 1588s Setting up libgif7:ppc64el (5.2.2-1ubuntu1) ... 1588s Setting up libxshmfence1:ppc64el (1.3-1build5) ... 1588s Setting up libmail-java (1.6.5-3) ... 1588s Setting up at-spi2-common (2.54.0-1) ... 1588s Setting up python3-dnspython (2.6.1-1ubuntu1) ... 1589s Setting up libnetty-java (1:4.1.48-10) ... 1589s Setting up libxcb-randr0:ppc64el (1.17.0-2) ... 1589s Setting up python3-parse (1.20.2-1) ... 1589s Setting up libapr1t64:ppc64el (1.7.5-1) ... 1589s Setting up libjson-perl (4.10000-1) ... 1589s Setting up libxslt1.1:ppc64el (1.1.39-0exp1ubuntu2) ... 1589s Setting up libservlet-api-java (4.0.1-2) ... 1589s Setting up libjackson2-core-java (2.14.1-1) ... 1589s Setting up python3.13-minimal (3.13.1-2) ... 1590s Setting up libharfbuzz0b:ppc64el (10.1.0-1) ... 1590s Setting up libthai-data (0.1.29-2build1) ... 1590s Setting up python3-dateutil (2.9.0-3) ... 1590s Setting up libjffi-jni:ppc64el (1.3.13+ds-1) ... 1590s Setting up libwayland-egl1:ppc64el (1.23.0-1) ... 1590s Setting up libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 1590s Setting up ca-certificates-java (20240118) ... 1590s No JRE found. Skipping Java certificates setup. 1590s Setting up python3-prettytable (3.12.0-1) ... 1590s Setting up libsnappy-jni (1.1.10.7-1) ... 1590s Setting up libxcomposite1:ppc64el (1:0.4.6-1) ... 1590s Setting up libpython3.13-stdlib:ppc64el (3.13.1-2) ... 1590s Setting up fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ... 1590s Setting up sphinx-rtd-theme-common (3.0.2+dfsg-1) ... 1590s Setting up libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 1590s Setting up libjnr-constants-java (0.10.4-2) ... 1590s Setting up libwayland-client0:ppc64el (1.23.0-1) ... 1590s Setting up libjpeg8:ppc64el (8c-2ubuntu11) ... 1590s Setting up libjaxb-api-java (2.3.1-1) ... 1590s Setting up libjffi-java (1.3.13+ds-1) ... 1590s Setting up mesa-libgallium:ppc64el (24.2.8-1ubuntu1) ... 1590s Setting up libjetty9-java (9.4.56-1) ... 1590s Setting up moreutils (0.69-1) ... 1590s Setting up libatk1.0-0t64:ppc64el (2.54.0-1) ... 1590s Setting up openjdk-21-jre-headless:ppc64el (21.0.5+11-1) ... 1590s update-alternatives: using /usr/lib/jvm/java-21-openjdk-ppc64el/bin/java to provide /usr/bin/java (java) in auto mode 1590s update-alternatives: using /usr/lib/jvm/java-21-openjdk-ppc64el/bin/jpackage to provide /usr/bin/jpackage (jpackage) in auto mode 1590s update-alternatives: using /usr/lib/jvm/java-21-openjdk-ppc64el/bin/keytool to provide /usr/bin/keytool (keytool) in auto mode 1590s update-alternatives: using /usr/lib/jvm/java-21-openjdk-ppc64el/bin/rmiregistry to provide /usr/bin/rmiregistry (rmiregistry) in auto mode 1590s update-alternatives: using /usr/lib/jvm/java-21-openjdk-ppc64el/lib/jexec to provide /usr/bin/jexec (jexec) in auto mode 1590s Setting up python3-pure-sasl (0.5.1+dfsg1-5) ... 1590s Setting up libgbm1:ppc64el (24.2.8-1ubuntu1) ... 1590s Setting up python3.13 (3.13.1-2) ... 1591s Setting up fontconfig-config (2.15.0-1.1ubuntu2) ... 1591s Setting up libxtst6:ppc64el (2:1.2.3-1.1build1) ... 1591s Setting up libxcursor1:ppc64el (1:1.2.2-1) ... 1591s Setting up postgresql-client-16 (16.4-3) ... 1592s 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 1592s Setting up python3-cdiff (1.4.2-1) ... 1592s Setting up libgl1-mesa-dri:ppc64el (24.2.8-1ubuntu1) ... 1592s Setting up libcommons-parent-java (56-1) ... 1592s Setting up libavahi-common3:ppc64el (0.8-14ubuntu1) ... 1592s Setting up libcommons-logging-java (1.3.0-1ubuntu1) ... 1592s Setting up python3-coverage (7.4.4+dfsg1-0ubuntu3) ... 1592s Setting up dconf-service (0.40.0-4build2) ... 1592s Setting up python3-gevent (24.11.1-1) ... 1593s Setting up libjackson2-databind-java (2.14.0-1) ... 1593s Setting up libthai0:ppc64el (0.1.29-2build1) ... 1593s Setting up python3-parse-type (0.6.4-1) ... 1593s Setting up python3-eventlet (0.36.1-11ubuntu1) ... 1593s Setting up libnetty-tcnative-jni (2.0.28-1build4) ... 1593s Setting up python3-kazoo (2.9.0-2) ... 1594s Setting up postgresql-common (262) ... 1594s Creating config file /etc/postgresql-common/createcluster.conf with new version 1594s Building PostgreSQL dictionaries from installed myspell/hunspell packages... 1594s Removing obsolete dictionary files: 1595s Created symlink '/etc/systemd/system/multi-user.target.wants/postgresql.service' → '/usr/lib/systemd/system/postgresql.service'. 1595s Setting up libjs-sphinxdoc (8.1.3-3) ... 1595s Setting up libtiff6:ppc64el (4.5.1+git230720-4ubuntu4) ... 1595s Setting up libwayland-cursor0:ppc64el (1.23.0-1) ... 1595s Setting up libgdk-pixbuf-2.0-0:ppc64el (2.42.12+dfsg-1) ... 1595s Setting up python3-behave (1.2.6-6) ... 1595s /usr/lib/python3/dist-packages/behave/formatter/ansi_escapes.py:57: SyntaxWarning: invalid escape sequence '\[' 1595s _ANSI_ESCAPE_PATTERN = re.compile(u"\x1b\[\d+[mA]", re.UNICODE) 1595s /usr/lib/python3/dist-packages/behave/matchers.py:267: SyntaxWarning: invalid escape sequence '\d' 1595s """Registers a custom type that will be available to "parse" 1595s /usr/lib/python3/dist-packages/behave/formatter/ansi_escapes.py:57: SyntaxWarning: invalid escape sequence '\[' 1595s _ANSI_ESCAPE_PATTERN = re.compile(u"\x1b\[\d+[mA]", re.UNICODE) 1595s /usr/lib/python3/dist-packages/behave/matchers.py:267: SyntaxWarning: invalid escape sequence '\d' 1595s """Registers a custom type that will be available to "parse" 1595s Setting up libsnappy-java (1.1.10.7-1) ... 1595s Setting up libfontconfig1:ppc64el (2.15.0-1.1ubuntu2) ... 1595s Setting up patroni (3.3.4-1) ... 1596s Created symlink '/etc/systemd/system/multi-user.target.wants/patroni.service' → '/usr/lib/systemd/system/patroni.service'. 1596s Setting up libavahi-client3:ppc64el (0.8-14ubuntu1) ... 1596s Setting up libjnr-ffi-java (2.2.15-2) ... 1596s Setting up libatk-bridge2.0-0t64:ppc64el (2.54.0-1) ... 1596s Setting up gtk-update-icon-cache (4.17.1+ds-2) ... 1596s Setting up fontconfig (2.15.0-1.1ubuntu2) ... 1598s Regenerating fonts cache... done. 1598s Setting up libglx-mesa0:ppc64el (24.2.8-1ubuntu1) ... 1598s Setting up postgresql-16 (16.4-3) ... 1599s Creating new PostgreSQL cluster 16/main ... 1599s /usr/lib/postgresql/16/bin/initdb -D /var/lib/postgresql/16/main --auth-local peer --auth-host scram-sha-256 --no-instructions 1599s The files belonging to this database system will be owned by user "postgres". 1599s This user must also own the server process. 1599s 1599s The database cluster will be initialized with locale "C.UTF-8". 1599s The default database encoding has accordingly been set to "UTF8". 1599s The default text search configuration will be set to "english". 1599s 1599s Data page checksums are disabled. 1599s 1599s fixing permissions on existing directory /var/lib/postgresql/16/main ... ok 1599s creating subdirectories ... ok 1599s selecting dynamic shared memory implementation ... posix 1599s selecting default max_connections ... 100 1599s selecting default shared_buffers ... 128MB 1599s selecting default time zone ... Etc/UTC 1599s creating configuration files ... ok 1599s running bootstrap script ... ok 1599s performing post-bootstrap initialization ... ok 1599s syncing data to disk ... ok 1603s Setting up libglx0:ppc64el (1.7.0-1build1) ... 1603s Setting up libspring-core-java (4.3.30-2ubuntu1) ... 1603s Setting up dconf-gsettings-backend:ppc64el (0.40.0-4build2) ... 1603s Setting up libcommons-io-java (2.17.0-1) ... 1603s Setting up patroni-doc (3.3.4-1) ... 1603s Setting up libpango-1.0-0:ppc64el (1.55.0+ds-3) ... 1603s Setting up libcairo2:ppc64el (1.18.2-2) ... 1603s Setting up libjnr-enxio-java (0.32.16-1) ... 1603s Setting up libgl1:ppc64el (1.7.0-1build1) ... 1603s Setting up libcairo-gobject2:ppc64el (1.18.2-2) ... 1603s Setting up postgresql (16+262) ... 1603s Setting up libpangoft2-1.0-0:ppc64el (1.55.0+ds-3) ... 1603s Setting up libcups2t64:ppc64el (2.4.11-0ubuntu2) ... 1603s Setting up libgtk-3-common (3.24.43-4ubuntu1) ... 1603s Setting up libjnr-posix-java (3.1.18-1) ... 1603s Setting up libpangocairo-1.0-0:ppc64el (1.55.0+ds-3) ... 1603s Setting up libspring-beans-java (4.3.30-2ubuntu1) ... 1603s Setting up libjnr-unixsocket-java (0.38.21-2) ... 1603s Setting up libjetty9-extra-java (9.4.56-1) ... 1603s Setting up libguava-java (32.0.1-1) ... 1603s Setting up adwaita-icon-theme (47.0-2) ... 1603s update-alternatives: using /usr/share/icons/Adwaita/cursor.theme to provide /usr/share/icons/default/index.theme (x-cursor-theme) in auto mode 1603s Setting up liberror-prone-java (2.18.0-1) ... 1603s Setting up humanity-icon-theme (0.6.16) ... 1603s Setting up ubuntu-mono (24.04-0ubuntu1) ... 1603s Processing triggers for systemd (257-2ubuntu1) ... 1603s Processing triggers for man-db (2.13.0-1) ... 1605s Processing triggers for libglib2.0-0t64:ppc64el (2.82.4-1) ... 1605s Setting up libgtk-3-0t64:ppc64el (3.24.43-4ubuntu1) ... 1605s Processing triggers for libc-bin (2.40-4ubuntu1) ... 1605s Processing triggers for ca-certificates-java (20240118) ... 1605s Adding debian:ACCVRAIZ1.pem 1605s Adding debian:AC_RAIZ_FNMT-RCM.pem 1605s Adding debian:AC_RAIZ_FNMT-RCM_SERVIDORES_SEGUROS.pem 1605s Adding debian:ANF_Secure_Server_Root_CA.pem 1605s Adding debian:Actalis_Authentication_Root_CA.pem 1605s Adding debian:AffirmTrust_Commercial.pem 1605s Adding debian:AffirmTrust_Networking.pem 1605s Adding debian:AffirmTrust_Premium.pem 1605s Adding debian:AffirmTrust_Premium_ECC.pem 1605s Adding debian:Amazon_Root_CA_1.pem 1605s Adding debian:Amazon_Root_CA_2.pem 1605s Adding debian:Amazon_Root_CA_3.pem 1605s Adding debian:Amazon_Root_CA_4.pem 1605s Adding debian:Atos_TrustedRoot_2011.pem 1605s Adding debian:Atos_TrustedRoot_Root_CA_ECC_TLS_2021.pem 1605s Adding debian:Atos_TrustedRoot_Root_CA_RSA_TLS_2021.pem 1605s Adding debian:Autoridad_de_Certificacion_Firmaprofesional_CIF_A62634068.pem 1605s Adding debian:BJCA_Global_Root_CA1.pem 1605s Adding debian:BJCA_Global_Root_CA2.pem 1605s Adding debian:Baltimore_CyberTrust_Root.pem 1605s Adding debian:Buypass_Class_2_Root_CA.pem 1605s Adding debian:Buypass_Class_3_Root_CA.pem 1605s Adding debian:CA_Disig_Root_R2.pem 1605s Adding debian:CFCA_EV_ROOT.pem 1605s Adding debian:COMODO_Certification_Authority.pem 1605s Adding debian:COMODO_ECC_Certification_Authority.pem 1605s Adding debian:COMODO_RSA_Certification_Authority.pem 1605s Adding debian:Certainly_Root_E1.pem 1605s Adding debian:Certainly_Root_R1.pem 1605s Adding debian:Certigna.pem 1605s Adding debian:Certigna_Root_CA.pem 1605s Adding debian:Certum_EC-384_CA.pem 1605s Adding debian:Certum_Trusted_Network_CA.pem 1605s Adding debian:Certum_Trusted_Network_CA_2.pem 1605s Adding debian:Certum_Trusted_Root_CA.pem 1605s Adding debian:CommScope_Public_Trust_ECC_Root-01.pem 1605s Adding debian:CommScope_Public_Trust_ECC_Root-02.pem 1605s Adding debian:CommScope_Public_Trust_RSA_Root-01.pem 1605s Adding debian:CommScope_Public_Trust_RSA_Root-02.pem 1605s Adding debian:Comodo_AAA_Services_root.pem 1605s Adding debian:D-TRUST_BR_Root_CA_1_2020.pem 1605s Adding debian:D-TRUST_EV_Root_CA_1_2020.pem 1605s Adding debian:D-TRUST_Root_Class_3_CA_2_2009.pem 1605s Adding debian:D-TRUST_Root_Class_3_CA_2_EV_2009.pem 1605s Adding debian:DigiCert_Assured_ID_Root_CA.pem 1605s Adding debian:DigiCert_Assured_ID_Root_G2.pem 1605s Adding debian:DigiCert_Assured_ID_Root_G3.pem 1605s Adding debian:DigiCert_Global_Root_CA.pem 1605s Adding debian:DigiCert_Global_Root_G2.pem 1605s Adding debian:DigiCert_Global_Root_G3.pem 1605s Adding debian:DigiCert_High_Assurance_EV_Root_CA.pem 1605s Adding debian:DigiCert_TLS_ECC_P384_Root_G5.pem 1605s Adding debian:DigiCert_TLS_RSA4096_Root_G5.pem 1605s Adding debian:DigiCert_Trusted_Root_G4.pem 1605s Adding debian:Entrust.net_Premium_2048_Secure_Server_CA.pem 1605s Adding debian:Entrust_Root_Certification_Authority.pem 1605s Adding debian:Entrust_Root_Certification_Authority_-_EC1.pem 1605s Adding debian:Entrust_Root_Certification_Authority_-_G2.pem 1605s Adding debian:Entrust_Root_Certification_Authority_-_G4.pem 1605s Adding debian:GDCA_TrustAUTH_R5_ROOT.pem 1605s Adding debian:GLOBALTRUST_2020.pem 1605s Adding debian:GTS_Root_R1.pem 1605s Adding debian:GTS_Root_R2.pem 1605s Adding debian:GTS_Root_R3.pem 1605s Adding debian:GTS_Root_R4.pem 1605s Adding debian:GlobalSign_ECC_Root_CA_-_R4.pem 1605s Adding debian:GlobalSign_ECC_Root_CA_-_R5.pem 1605s Adding debian:GlobalSign_Root_CA.pem 1605s Adding debian:GlobalSign_Root_CA_-_R3.pem 1605s Adding debian:GlobalSign_Root_CA_-_R6.pem 1605s Adding debian:GlobalSign_Root_E46.pem 1605s Adding debian:GlobalSign_Root_R46.pem 1605s Adding debian:Go_Daddy_Class_2_CA.pem 1606s Adding debian:Go_Daddy_Root_Certificate_Authority_-_G2.pem 1606s Adding debian:HARICA_TLS_ECC_Root_CA_2021.pem 1606s Adding debian:HARICA_TLS_RSA_Root_CA_2021.pem 1606s Adding debian:Hellenic_Academic_and_Research_Institutions_ECC_RootCA_2015.pem 1606s Adding debian:Hellenic_Academic_and_Research_Institutions_RootCA_2015.pem 1606s Adding debian:HiPKI_Root_CA_-_G1.pem 1606s Adding debian:Hongkong_Post_Root_CA_3.pem 1606s Adding debian:ISRG_Root_X1.pem 1606s Adding debian:ISRG_Root_X2.pem 1606s Adding debian:IdenTrust_Commercial_Root_CA_1.pem 1606s Adding debian:IdenTrust_Public_Sector_Root_CA_1.pem 1606s Adding debian:Izenpe.com.pem 1606s Adding debian:Microsec_e-Szigno_Root_CA_2009.pem 1606s Adding debian:Microsoft_ECC_Root_Certificate_Authority_2017.pem 1606s Adding debian:Microsoft_RSA_Root_Certificate_Authority_2017.pem 1606s Adding debian:NAVER_Global_Root_Certification_Authority.pem 1606s Adding debian:NetLock_Arany_=Class_Gold=_Főtanúsítvány.pem 1606s Adding debian:OISTE_WISeKey_Global_Root_GB_CA.pem 1606s Adding debian:OISTE_WISeKey_Global_Root_GC_CA.pem 1606s Adding debian:QuoVadis_Root_CA_1_G3.pem 1606s Adding debian:QuoVadis_Root_CA_2.pem 1606s Adding debian:QuoVadis_Root_CA_2_G3.pem 1606s Adding debian:QuoVadis_Root_CA_3.pem 1606s Adding debian:QuoVadis_Root_CA_3_G3.pem 1606s Adding debian:SSL.com_EV_Root_Certification_Authority_ECC.pem 1606s Adding debian:SSL.com_EV_Root_Certification_Authority_RSA_R2.pem 1606s Adding debian:SSL.com_Root_Certification_Authority_ECC.pem 1606s Adding debian:SSL.com_Root_Certification_Authority_RSA.pem 1606s Adding debian:SSL.com_TLS_ECC_Root_CA_2022.pem 1606s Adding debian:SSL.com_TLS_RSA_Root_CA_2022.pem 1606s Adding debian:SZAFIR_ROOT_CA2.pem 1606s Adding debian:Sectigo_Public_Server_Authentication_Root_E46.pem 1606s Adding debian:Sectigo_Public_Server_Authentication_Root_R46.pem 1606s Adding debian:SecureSign_RootCA11.pem 1606s Adding debian:SecureTrust_CA.pem 1606s Adding debian:Secure_Global_CA.pem 1606s Adding debian:Security_Communication_ECC_RootCA1.pem 1606s Adding debian:Security_Communication_RootCA2.pem 1606s Adding debian:Security_Communication_RootCA3.pem 1606s Adding debian:Security_Communication_Root_CA.pem 1606s Adding debian:Starfield_Class_2_CA.pem 1606s Adding debian:Starfield_Root_Certificate_Authority_-_G2.pem 1606s Adding debian:Starfield_Services_Root_Certificate_Authority_-_G2.pem 1606s Adding debian:SwissSign_Gold_CA_-_G2.pem 1606s Adding debian:SwissSign_Silver_CA_-_G2.pem 1606s Adding debian:T-TeleSec_GlobalRoot_Class_2.pem 1606s Adding debian:T-TeleSec_GlobalRoot_Class_3.pem 1606s Adding debian:TUBITAK_Kamu_SM_SSL_Kok_Sertifikasi_-_Surum_1.pem 1606s Adding debian:TWCA_Global_Root_CA.pem 1606s Adding debian:TWCA_Root_Certification_Authority.pem 1606s Adding debian:TeliaSonera_Root_CA_v1.pem 1606s Adding debian:Telia_Root_CA_v2.pem 1606s Adding debian:TrustAsia_Global_Root_CA_G3.pem 1606s Adding debian:TrustAsia_Global_Root_CA_G4.pem 1606s Adding debian:Trustwave_Global_Certification_Authority.pem 1606s Adding debian:Trustwave_Global_ECC_P256_Certification_Authority.pem 1606s Adding debian:Trustwave_Global_ECC_P384_Certification_Authority.pem 1606s Adding debian:TunTrust_Root_CA.pem 1606s Adding debian:UCA_Extended_Validation_Root.pem 1606s Adding debian:UCA_Global_G2_Root.pem 1606s Adding debian:USERTrust_ECC_Certification_Authority.pem 1606s Adding debian:USERTrust_RSA_Certification_Authority.pem 1606s Adding debian:XRamp_Global_CA_Root.pem 1606s Adding debian:certSIGN_ROOT_CA.pem 1606s Adding debian:certSIGN_Root_CA_G2.pem 1606s Adding debian:e-Szigno_Root_CA_2017.pem 1606s Adding debian:ePKI_Root_Certification_Authority.pem 1606s Adding debian:emSign_ECC_Root_CA_-_C3.pem 1606s Adding debian:emSign_ECC_Root_CA_-_G3.pem 1606s Adding debian:emSign_Root_CA_-_C1.pem 1606s Adding debian:emSign_Root_CA_-_G1.pem 1606s Adding debian:vTrus_ECC_Root_CA.pem 1606s Adding debian:vTrus_Root_CA.pem 1606s done. 1606s Setting up openjdk-21-jre:ppc64el (21.0.5+11-1) ... 1606s Setting up junit4 (4.13.2-5) ... 1606s Setting up default-jre-headless (2:1.21-76) ... 1606s Setting up default-jre (2:1.21-76) ... 1606s Setting up libnetty-tcnative-java (2.0.28-1build4) ... 1606s Setting up libzookeeper-java (3.9.3-1) ... 1606s Setting up zookeeper (3.9.3-1) ... 1606s warn: The home directory `/var/lib/zookeeper' already exists. Not touching this directory. 1606s warn: Warning: The home directory `/var/lib/zookeeper' does not belong to the user you are currently creating. 1606s update-alternatives: using /etc/zookeeper/conf_example to provide /etc/zookeeper/conf (zookeeper-conf) in auto mode 1606s Setting up zookeeperd (3.9.3-1) ... 1608s autopkgtest [19:57:26]: test acceptance-zookeeper: debian/tests/acceptance zookeeper "-e dcs_failsafe_mode" 1608s autopkgtest [19:57:26]: test acceptance-zookeeper: [----------------------- 1614s dpkg-architecture: warning: cannot determine CC system type, falling back to default (native compilation) 1614s ++ ls -1r /usr/lib/postgresql/ 1614s ### PostgreSQL 16 acceptance-zookeeper -e dcs_failsafe_mode ### 1614s + for PG_VERSION in $(ls -1r /usr/lib/postgresql/) 1614s + '[' 16 == 10 -o 16 == 11 ']' 1614s + echo '### PostgreSQL 16 acceptance-zookeeper -e dcs_failsafe_mode ###' 1614s + su postgres -p -c 'set -o pipefail; ETCD_UNSUPPORTED_ARCH= 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' 1614s Dec 27 19:57:32 Feature: basic replication # features/basic_replication.feature:1 1614s Dec 27 19:57:32 We should check that the basic bootstrapping, replication and failover works. 1614s Dec 27 19:57:32 Scenario: check replication of a single table # features/basic_replication.feature:4 1614s Dec 27 19:57:32 Given I start postgres0 # features/steps/basic_replication.py:8 1617s Dec 27 19:57:35 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 1618s Dec 27 19:57:36 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 1619s Dec 27 19:57:36 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 1619s Dec 27 19:57:37 Then I receive a response code 200 # features/steps/patroni_api.py:98 1619s Dec 27 19:57:37 When I start postgres1 # features/steps/basic_replication.py:8 1622s Dec 27 19:57:40 And I configure and start postgres2 with a tag replicatefrom postgres0 # features/steps/cascading_replication.py:7 1625s Dec 27 19:57:43 And "sync" key in DCS has leader=postgres0 after 20 seconds # features/steps/cascading_replication.py:23 1625s Dec 27 19:57:43 And I add the table foo to postgres0 # features/steps/basic_replication.py:54 1625s Dec 27 19:57:43 Then table foo is present on postgres1 after 20 seconds # features/steps/basic_replication.py:93 1626s Dec 27 19:57:44 Then table foo is present on postgres2 after 20 seconds # features/steps/basic_replication.py:93 1626s Dec 27 19:57:44 1626s Dec 27 19:57:44 Scenario: check restart of sync replica # features/basic_replication.feature:17 1626s Dec 27 19:57:44 Given I shut down postgres2 # features/steps/basic_replication.py:29 1627s Dec 27 19:57:45 Then "sync" key in DCS has sync_standby=postgres1 after 5 seconds # features/steps/cascading_replication.py:23 1627s Dec 27 19:57:45 When I start postgres2 # features/steps/basic_replication.py:8 1630s Dec 27 19:57:48 And I shut down postgres1 # features/steps/basic_replication.py:29 1633s Dec 27 19:57:51 Then "sync" key in DCS has sync_standby=postgres2 after 10 seconds # features/steps/cascading_replication.py:23 1634s Dec 27 19:57:52 When I start postgres1 # features/steps/basic_replication.py:8 1637s Dec 27 19:57:55 Then "members/postgres1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 1638s Dec 27 19:57:56 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 1638s Dec 27 19:57:56 And Status code on GET http://127.0.0.1:8009/async is 200 after 3 seconds # features/steps/patroni_api.py:142 1638s Dec 27 19:57:56 1638s Dec 27 19:57:56 Scenario: check stuck sync replica # features/basic_replication.feature:28 1638s Dec 27 19:57:56 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 1638s Dec 27 19:57:56 Then I receive a response code 200 # features/steps/patroni_api.py:98 1638s Dec 27 19:57:56 And I create table on postgres0 # features/steps/basic_replication.py:73 1638s Dec 27 19:57:56 And table mytest is present on postgres1 after 2 seconds # features/steps/basic_replication.py:93 1639s Dec 27 19:57:57 And table mytest is present on postgres2 after 2 seconds # features/steps/basic_replication.py:93 1639s Dec 27 19:57:57 When I pause wal replay on postgres2 # features/steps/basic_replication.py:64 1639s Dec 27 19:57:57 And I load data on postgres0 # features/steps/basic_replication.py:84 1639s Dec 27 19:57:57 Then "sync" key in DCS has sync_standby=postgres1 after 15 seconds # features/steps/cascading_replication.py:23 1642s Dec 27 19:58:00 And I resume wal replay on postgres2 # features/steps/basic_replication.py:64 1642s Dec 27 19:58:00 And Status code on GET http://127.0.0.1:8009/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 1644s Dec 27 19:58:02 And Status code on GET http://127.0.0.1:8010/async is 200 after 3 seconds # features/steps/patroni_api.py:142 1644s Dec 27 19:58:02 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 1644s Dec 27 19:58:02 Then I receive a response code 200 # features/steps/patroni_api.py:98 1644s Dec 27 19:58:02 And I drop table on postgres0 # features/steps/basic_replication.py:73 1644s Dec 27 19:58:02 1644s Dec 27 19:58:02 Scenario: check multi sync replication # features/basic_replication.feature:44 1644s Dec 27 19:58:02 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 1644s Dec 27 19:58:02 Then I receive a response code 200 # features/steps/patroni_api.py:98 1644s Dec 27 19:58:02 Then "sync" key in DCS has sync_standby=postgres1,postgres2 after 10 seconds # features/steps/cascading_replication.py:23 1648s Dec 27 19:58:06 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 1648s Dec 27 19:58:06 And Status code on GET http://127.0.0.1:8009/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 1648s Dec 27 19:58:06 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 1648s Dec 27 19:58:06 Then I receive a response code 200 # features/steps/patroni_api.py:98 1648s Dec 27 19:58:06 And I shut down postgres1 # features/steps/basic_replication.py:29 1651s Dec 27 19:58:09 Then "sync" key in DCS has sync_standby=postgres2 after 10 seconds # features/steps/cascading_replication.py:23 1652s Dec 27 19:58:10 When I start postgres1 # features/steps/basic_replication.py:8 1655s Dec 27 19:58:13 Then "members/postgres1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 1656s Dec 27 19:58:14 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 1656s Dec 27 19:58:14 And Status code on GET http://127.0.0.1:8009/async is 200 after 3 seconds # features/steps/patroni_api.py:142 1656s Dec 27 19:58:14 1656s Dec 27 19:58:14 Scenario: check the basic failover in synchronous mode # features/basic_replication.feature:59 1656s Dec 27 19:58:14 Given I run patronictl.py pause batman # features/steps/patroni_api.py:86 1658s Dec 27 19:58:16 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 1658s Dec 27 19:58:16 When I sleep for 2 seconds # features/steps/patroni_api.py:39 1660s Dec 27 19:58:18 And I shut down postgres0 # features/steps/basic_replication.py:29 1661s Dec 27 19:58:19 And I run patronictl.py resume batman # features/steps/patroni_api.py:86 1662s Dec 27 19:58:20 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 1662s Dec 27 19:58:20 And postgres2 role is the primary after 24 seconds # features/steps/basic_replication.py:105 1682s Dec 27 19:58:40 And Response on GET http://127.0.0.1:8010/history contains recovery after 10 seconds # features/steps/patroni_api.py:156 1685s Dec 27 19:58:43 And there is a postgres2_cb.log with "on_role_change master batman" in postgres2 data directory # features/steps/cascading_replication.py:12 1685s Dec 27 19:58:43 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 1685s Dec 27 19:58:43 Then I receive a response code 200 # features/steps/patroni_api.py:98 1685s Dec 27 19:58:43 When I add the table bar to postgres2 # features/steps/basic_replication.py:54 1685s Dec 27 19:58:43 Then table bar is present on postgres1 after 20 seconds # features/steps/basic_replication.py:93 1688s Dec 27 19:58:46 And Response on GET http://127.0.0.1:8010/config contains master_start_timeout after 10 seconds # features/steps/patroni_api.py:156 1688s Dec 27 19:58:46 1688s Dec 27 19:58:46 Scenario: check rejoin of the former primary with pg_rewind # features/basic_replication.feature:75 1688s Dec 27 19:58:46 Given I add the table splitbrain to postgres0 # features/steps/basic_replication.py:54 1688s Dec 27 19:58:46 And I start postgres0 # features/steps/basic_replication.py:8 1688s Dec 27 19:58:46 Then postgres0 role is the secondary after 20 seconds # features/steps/basic_replication.py:105 1692s Dec 27 19:58:50 When I add the table buz to postgres2 # features/steps/basic_replication.py:54 1692s Dec 27 19:58:50 Then table buz is present on postgres0 after 20 seconds # features/steps/basic_replication.py:93 1695s Dec 27 19:58:53 1695s Dec 27 19:58:53 @reject-duplicate-name 1695s Dec 27 19:58:53 Scenario: check graceful rejection when two nodes have the same name # features/basic_replication.feature:83 1695s Dec 27 19:58:53 Given I start duplicate postgres0 on port 8011 # features/steps/basic_replication.py:13 1697s Dec 27 19:58:55 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:121 1701s Dec 27 19:58:59 1701s Dec 27 19:58:59 Feature: cascading replication # features/cascading_replication.feature:1 1701s Dec 27 19:58:59 We should check that patroni can do base backup and streaming from the replica 1701s Dec 27 19:58:59 Scenario: check a base backup and streaming replication from a replica # features/cascading_replication.feature:4 1701s Dec 27 19:58:59 Given I start postgres0 # features/steps/basic_replication.py:8 1705s Dec 27 19:59:03 And postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 1706s Dec 27 19:59:04 And I configure and start postgres1 with a tag clonefrom true # features/steps/cascading_replication.py:7 1709s Dec 27 19:59:07 And replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:112 1710s Dec 27 19:59:08 And I create label with "postgres0" in postgres0 data directory # features/steps/cascading_replication.py:18 1710s Dec 27 19:59:08 And I create label with "postgres1" in postgres1 data directory # features/steps/cascading_replication.py:18 1710s Dec 27 19:59:08 And "members/postgres1" key in DCS has state=running after 12 seconds # features/steps/cascading_replication.py:23 1710s Dec 27 19:59:08 And I configure and start postgres2 with a tag replicatefrom postgres1 # features/steps/cascading_replication.py:7 1713s Dec 27 19:59:11 Then replication works from postgres0 to postgres2 after 30 seconds # features/steps/basic_replication.py:112 1714s Dec 27 19:59:12 And there is a label with "postgres1" in postgres2 data directory # features/steps/cascading_replication.py:12 1719s Dec 27 19:59:17 1719s SKIP FEATURE citus: Citus extenstion isn't available 1719s SKIP Scenario check that worker cluster is registered in the coordinator: Citus extenstion isn't available 1719s SKIP Scenario coordinator failover updates pg_dist_node: Citus extenstion isn't available 1719s SKIP Scenario worker switchover doesn't break client queries on the coordinator: Citus extenstion isn't available 1719s SKIP Scenario worker primary restart doesn't break client queries on the coordinator: Citus extenstion isn't available 1719s 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 1719s Dec 27 19:59:17 Feature: citus # features/citus.feature:1 1719s Dec 27 19:59:17 We should check that coordinator discovers and registers workers and clients don't have errors when worker cluster switches over 1719s Dec 27 19:59:17 Scenario: check that worker cluster is registered in the coordinator # features/citus.feature:4 1719s Dec 27 19:59:17 Given I start postgres0 in citus group 0 # None 1719s Dec 27 19:59:17 And I start postgres2 in citus group 1 # None 1719s Dec 27 19:59:17 Then postgres0 is a leader in a group 0 after 10 seconds # None 1719s Dec 27 19:59:17 And postgres2 is a leader in a group 1 after 10 seconds # None 1719s Dec 27 19:59:17 When I start postgres1 in citus group 0 # None 1719s Dec 27 19:59:17 And I start postgres3 in citus group 1 # None 1719s Dec 27 19:59:17 Then replication works from postgres0 to postgres1 after 15 seconds # None 1719s Dec 27 19:59:17 Then replication works from postgres2 to postgres3 after 15 seconds # None 1719s Dec 27 19:59:17 And postgres0 is registered in the postgres0 as the primary in group 0 after 5 seconds # None 1719s Dec 27 19:59:17 And postgres2 is registered in the postgres0 as the primary in group 1 after 5 seconds # None 1719s Dec 27 19:59:17 1719s Dec 27 19:59:17 Scenario: coordinator failover updates pg_dist_node # features/citus.feature:16 1719s Dec 27 19:59:17 Given I run patronictl.py failover batman --group 0 --candidate postgres1 --force # None 1719s Dec 27 19:59:17 Then postgres1 role is the primary after 10 seconds # None 1719s Dec 27 19:59:17 And "members/postgres0" key in a group 0 in DCS has state=running after 15 seconds # None 1719s Dec 27 19:59:17 And replication works from postgres1 to postgres0 after 15 seconds # None 1719s Dec 27 19:59:17 And postgres1 is registered in the postgres2 as the primary in group 0 after 5 seconds # None 1719s Dec 27 19:59:17 And "sync" key in a group 0 in DCS has sync_standby=postgres0 after 15 seconds # None 1719s Dec 27 19:59:17 When I run patronictl.py switchover batman --group 0 --candidate postgres0 --force # None 1719s Dec 27 19:59:17 Then postgres0 role is the primary after 10 seconds # None 1719s Dec 27 19:59:17 And replication works from postgres0 to postgres1 after 15 seconds # None 1719s Dec 27 19:59:17 And postgres0 is registered in the postgres2 as the primary in group 0 after 5 seconds # None 1719s Dec 27 19:59:17 And "sync" key in a group 0 in DCS has sync_standby=postgres1 after 15 seconds # None 1719s Dec 27 19:59:17 1719s Dec 27 19:59:17 Scenario: worker switchover doesn't break client queries on the coordinator # features/citus.feature:29 1719s Dec 27 19:59:17 Given I create a distributed table on postgres0 # None 1719s Dec 27 19:59:17 And I start a thread inserting data on postgres0 # None 1719s Dec 27 19:59:17 When I run patronictl.py switchover batman --group 1 --force # None 1719s Dec 27 19:59:17 Then I receive a response returncode 0 # None 1719s Dec 27 19:59:17 And postgres3 role is the primary after 10 seconds # None 1719s Dec 27 19:59:17 And "members/postgres2" key in a group 1 in DCS has state=running after 15 seconds # None 1719s Dec 27 19:59:17 And replication works from postgres3 to postgres2 after 15 seconds # None 1719s Dec 27 19:59:17 And postgres3 is registered in the postgres0 as the primary in group 1 after 5 seconds # None 1719s Dec 27 19:59:17 And "sync" key in a group 1 in DCS has sync_standby=postgres2 after 15 seconds # None 1719s Dec 27 19:59:17 And a thread is still alive # None 1719s Dec 27 19:59:17 When I run patronictl.py switchover batman --group 1 --force # None 1719s Dec 27 19:59:17 Then I receive a response returncode 0 # None 1719s Dec 27 19:59:17 And postgres2 role is the primary after 10 seconds # None 1719s Dec 27 19:59:17 And replication works from postgres2 to postgres3 after 15 seconds # None 1719s Dec 27 19:59:17 And postgres2 is registered in the postgres0 as the primary in group 1 after 5 seconds # None 1719s Dec 27 19:59:17 And "sync" key in a group 1 in DCS has sync_standby=postgres3 after 15 seconds # None 1719s Dec 27 19:59:17 And a thread is still alive # None 1719s Dec 27 19:59:17 When I stop a thread # None 1719s Dec 27 19:59:17 Then a distributed table on postgres0 has expected rows # None 1719s Dec 27 19:59:17 1719s Dec 27 19:59:17 Scenario: worker primary restart doesn't break client queries on the coordinator # features/citus.feature:50 1719s Dec 27 19:59:17 Given I cleanup a distributed table on postgres0 # None 1719s Dec 27 19:59:17 And I start a thread inserting data on postgres0 # None 1719s Dec 27 19:59:17 When I run patronictl.py restart batman postgres2 --group 1 --force # None 1719s Dec 27 19:59:17 Then I receive a response returncode 0 # None 1719s Dec 27 19:59:17 And postgres2 role is the primary after 10 seconds # None 1719s Dec 27 19:59:17 And replication works from postgres2 to postgres3 after 15 seconds # None 1719s Dec 27 19:59:17 And postgres2 is registered in the postgres0 as the primary in group 1 after 5 seconds # None 1719s Dec 27 19:59:17 And a thread is still alive # None 1719s Dec 27 19:59:17 When I stop a thread # None 1719s Dec 27 19:59:17 Then a distributed table on postgres0 has expected rows # None 1719s Dec 27 19:59:17 1719s Dec 27 19:59:17 Scenario: check that in-flight transaction is rolled back after timeout when other workers need to change pg_dist_node # features/citus.feature:62 1719s Dec 27 19:59:17 Given I start postgres4 in citus group 2 # None 1719s Dec 27 19:59:17 Then postgres4 is a leader in a group 2 after 10 seconds # None 1719s Dec 27 19:59:17 And "members/postgres4" key in a group 2 in DCS has role=master after 3 seconds # None 1719s Dec 27 19:59:17 When I run patronictl.py edit-config batman --group 2 -s ttl=20 --force # None 1719s Dec 27 19:59:17 Then I receive a response returncode 0 # None 1719s Dec 27 19:59:17 And I receive a response output "+ttl: 20" # None 1719s Dec 27 19:59:17 Then postgres4 is registered in the postgres2 as the primary in group 2 after 5 seconds # None 1719s Dec 27 19:59:17 When I shut down postgres4 # None 1719s Dec 27 19:59:17 Then there is a transaction in progress on postgres0 changing pg_dist_node after 5 seconds # None 1719s Dec 27 19:59:17 When I run patronictl.py restart batman postgres2 --group 1 --force # None 1719s Dec 27 19:59:17 Then a transaction finishes in 20 seconds # None 1719s Dec 27 19:59:17 1719s Dec 27 19:59:17 Feature: custom bootstrap # features/custom_bootstrap.feature:1 1719s Dec 27 19:59:17 We should check that patroni can bootstrap a new cluster from a backup 1719s Dec 27 19:59:17 Scenario: clone existing cluster using pg_basebackup # features/custom_bootstrap.feature:4 1719s Dec 27 19:59:17 Given I start postgres0 # features/steps/basic_replication.py:8 1722s Dec 27 19:59:20 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 1723s Dec 27 19:59:21 When I add the table foo to postgres0 # features/steps/basic_replication.py:54 1723s Dec 27 19:59:21 And I start postgres1 in a cluster batman1 as a clone of postgres0 # features/steps/custom_bootstrap.py:6 1727s Dec 27 19:59:25 Then postgres1 is a leader of batman1 after 10 seconds # features/steps/custom_bootstrap.py:16 1728s Dec 27 19:59:26 Then table foo is present on postgres1 after 10 seconds # features/steps/basic_replication.py:93 1728s Dec 27 19:59:26 1728s Dec 27 19:59:26 Scenario: make a backup and do a restore into a new cluster # features/custom_bootstrap.feature:12 1728s Dec 27 19:59:26 Given I add the table bar to postgres1 # features/steps/basic_replication.py:54 1728s Dec 27 19:59:26 And I do a backup of postgres1 # features/steps/custom_bootstrap.py:25 1729s Dec 27 19:59:27 When I start postgres2 in a cluster batman2 from backup # features/steps/custom_bootstrap.py:11 1733s Dec 27 19:59:31 Then postgres2 is a leader of batman2 after 30 seconds # features/steps/custom_bootstrap.py:16 1734s Dec 27 19:59:32 And table bar is present on postgres2 after 10 seconds # features/steps/basic_replication.py:93 1740s Dec 27 19:59:38 1740s Dec 27 19:59:38 Feature: ignored slots # features/ignored_slots.feature:1 1740s Dec 27 19:59:38 1740s Dec 27 19:59:38 Scenario: check ignored slots aren't removed on failover/switchover # features/ignored_slots.feature:2 1740s Dec 27 19:59:38 Given I start postgres1 # features/steps/basic_replication.py:8 1743s Dec 27 19:59:41 Then postgres1 is a leader after 10 seconds # features/steps/patroni_api.py:29 1743s Dec 27 19:59:41 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 1743s Dec 27 19:59:41 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 1743s Dec 27 19:59:41 Then I receive a response code 200 # features/steps/patroni_api.py:98 1743s Dec 27 19:59:41 And Response on GET http://127.0.0.1:8009/config contains ignore_slots after 10 seconds # features/steps/patroni_api.py:156 1743s Dec 27 19:59:41 When I shut down postgres1 # features/steps/basic_replication.py:29 1745s Dec 27 19:59:43 And I start postgres1 # features/steps/basic_replication.py:8 1748s Dec 27 19:59:46 Then postgres1 is a leader after 10 seconds # features/steps/patroni_api.py:29 1749s Dec 27 19:59:47 And "members/postgres1" key in DCS has role=master after 10 seconds # features/steps/cascading_replication.py:23 1750s Dec 27 19:59:48 And postgres1 role is the primary after 20 seconds # features/steps/basic_replication.py:105 1750s Dec 27 19:59:48 When I create a logical replication slot unmanaged_slot_0 on postgres1 with the test_decoding plugin # features/steps/slots.py:8 1750s Dec 27 19:59:48 And I create a logical replication slot unmanaged_slot_1 on postgres1 with the test_decoding plugin # features/steps/slots.py:8 1750s Dec 27 19:59:48 And I create a logical replication slot unmanaged_slot_2 on postgres1 with the test_decoding plugin # features/steps/slots.py:8 1750s Dec 27 19:59:48 And I create a logical replication slot unmanaged_slot_3 on postgres1 with the test_decoding plugin # features/steps/slots.py:8 1750s Dec 27 19:59:48 And I create a logical replication slot dummy_slot on postgres1 with the test_decoding plugin # features/steps/slots.py:8 1750s Dec 27 19:59:48 Then postgres1 has a logical replication slot named unmanaged_slot_0 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1750s Dec 27 19:59: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 1750s Dec 27 19:59: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 1750s Dec 27 19:59: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 1750s Dec 27 19:59:48 When I start postgres0 # features/steps/basic_replication.py:8 1753s Dec 27 19:59:51 Then "members/postgres0" key in DCS has role=replica after 10 seconds # features/steps/cascading_replication.py:23 1754s Dec 27 19:59:52 And postgres0 role is the secondary after 20 seconds # features/steps/basic_replication.py:105 1754s Dec 27 19:59:52 And replication works from postgres1 to postgres0 after 20 seconds # features/steps/basic_replication.py:112 1755s Dec 27 19:59:53 When I shut down postgres1 # features/steps/basic_replication.py:29 1757s Dec 27 19:59:55 Then "members/postgres0" key in DCS has role=master after 10 seconds # features/steps/cascading_replication.py:23 1758s Dec 27 19:59:56 When I start postgres1 # features/steps/basic_replication.py:8 1761s Dec 27 19:59:59 Then postgres1 role is the secondary after 20 seconds # features/steps/basic_replication.py:105 1761s Dec 27 19:59:59 And "members/postgres1" key in DCS has role=replica after 10 seconds # features/steps/cascading_replication.py:23 1762s Dec 27 20:00:00 And I sleep for 2 seconds # features/steps/patroni_api.py:39 1764s Dec 27 20:00:02 And postgres1 has a logical replication slot named unmanaged_slot_0 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1764s Dec 27 20:00:02 And postgres1 has a logical replication slot named unmanaged_slot_1 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1764s Dec 27 20:00:02 And postgres1 has a logical replication slot named unmanaged_slot_2 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1764s Dec 27 20:00:02 And postgres1 has a logical replication slot named unmanaged_slot_3 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1764s Dec 27 20:00:02 And postgres1 does not have a replication slot named dummy_slot # features/steps/slots.py:40 1764s Dec 27 20:00:02 When I shut down postgres0 # features/steps/basic_replication.py:29 1766s Dec 27 20:00:04 Then "members/postgres1" key in DCS has role=master after 10 seconds # features/steps/cascading_replication.py:23 1767s Dec 27 20:00:05 And postgres1 has a logical replication slot named unmanaged_slot_0 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1767s Dec 27 20:00:05 And postgres1 has a logical replication slot named unmanaged_slot_1 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1767s Dec 27 20:00:05 And postgres1 has a logical replication slot named unmanaged_slot_2 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1767s Dec 27 20:00:05 And postgres1 has a logical replication slot named unmanaged_slot_3 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 1770s Dec 27 20:00:07 1770s Dec 27 20:00:07 Feature: nostream node # features/nostream_node.feature:1 1770s Dec 27 20:00:07 1770s Dec 27 20:00:07 Scenario: check nostream node is recovering from archive # features/nostream_node.feature:3 1770s Dec 27 20:00:07 When I start postgres0 # features/steps/basic_replication.py:8 1773s Dec 27 20:00:11 And I configure and start postgres1 with a tag nostream true # features/steps/cascading_replication.py:7 1776s Dec 27 20:00:14 Then "members/postgres1" key in DCS has replication_state=in archive recovery after 10 seconds # features/steps/cascading_replication.py:23 1777s Dec 27 20:00:15 And replication works from postgres0 to postgres1 after 30 seconds # features/steps/basic_replication.py:112 1782s Dec 27 20:00:20 1782s Dec 27 20:00:20 @slot-advance 1782s Dec 27 20:00:20 Scenario: check permanent logical replication slots are not copied # features/nostream_node.feature:10 1782s Dec 27 20:00:20 When I issue a PATCH request to http://127.0.0.1:8008/config with {"postgresql": {"parameters": {"wal_level": "logical"}}, "slots":{"test_logical":{"type":"logical","database":"postgres","plugin":"test_decoding"}}} # features/steps/patroni_api.py:71 1782s Dec 27 20:00:20 Then I receive a response code 200 # features/steps/patroni_api.py:98 1782s Dec 27 20:00:20 When I run patronictl.py restart batman postgres0 --force # features/steps/patroni_api.py:86 1785s Dec 27 20:00:23 Then postgres0 has a logical replication slot named test_logical with the test_decoding plugin after 10 seconds # features/steps/slots.py:19 1786s Dec 27 20:00:24 When I configure and start postgres2 with a tag replicatefrom postgres1 # features/steps/cascading_replication.py:7 1789s Dec 27 20:00:27 Then "members/postgres2" key in DCS has replication_state=streaming after 10 seconds # features/steps/cascading_replication.py:23 1796s Dec 27 20:00:34 And postgres1 does not have a replication slot named test_logical # features/steps/slots.py:40 1796s Dec 27 20:00:34 And postgres2 does not have a replication slot named test_logical # features/steps/slots.py:40 1801s Dec 27 20:00:39 1801s Dec 27 20:00:39 Feature: patroni api # features/patroni_api.feature:1 1801s Dec 27 20:00:39 We should check that patroni correctly responds to valid and not-valid API requests. 1801s Dec 27 20:00:39 Scenario: check API requests on a stand-alone server # features/patroni_api.feature:4 1801s Dec 27 20:00:39 Given I start postgres0 # features/steps/basic_replication.py:8 1804s Dec 27 20:00:42 And postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 1805s Dec 27 20:00:43 When I issue a GET request to http://127.0.0.1:8008/ # features/steps/patroni_api.py:61 1805s Dec 27 20:00:43 Then I receive a response code 200 # features/steps/patroni_api.py:98 1805s Dec 27 20:00:43 And I receive a response state running # features/steps/patroni_api.py:98 1805s Dec 27 20:00:43 And I receive a response role master # features/steps/patroni_api.py:98 1805s Dec 27 20:00:43 When I issue a GET request to http://127.0.0.1:8008/standby_leader # features/steps/patroni_api.py:61 1805s Dec 27 20:00:43 Then I receive a response code 503 # features/steps/patroni_api.py:98 1805s Dec 27 20:00:43 When I issue a GET request to http://127.0.0.1:8008/health # features/steps/patroni_api.py:61 1805s Dec 27 20:00:43 Then I receive a response code 200 # features/steps/patroni_api.py:98 1805s Dec 27 20:00:43 When I issue a GET request to http://127.0.0.1:8008/replica # features/steps/patroni_api.py:61 1805s Dec 27 20:00:43 Then I receive a response code 503 # features/steps/patroni_api.py:98 1805s Dec 27 20:00:43 When I issue a POST request to http://127.0.0.1:8008/reinitialize with {"force": true} # features/steps/patroni_api.py:71 1805s Dec 27 20:00:43 Then I receive a response code 503 # features/steps/patroni_api.py:98 1805s Dec 27 20:00:43 And I receive a response text I am the leader, can not reinitialize # features/steps/patroni_api.py:98 1805s Dec 27 20:00:43 When I run patronictl.py switchover batman --master postgres0 --force # features/steps/patroni_api.py:86 1807s Dec 27 20:00:45 Then I receive a response returncode 1 # features/steps/patroni_api.py:98 1807s Dec 27 20:00:45 And I receive a response output "Error: No candidates found to switchover to" # features/steps/patroni_api.py:98 1807s Dec 27 20:00:45 When I issue a POST request to http://127.0.0.1:8008/switchover with {"leader": "postgres0"} # features/steps/patroni_api.py:71 1807s Dec 27 20:00:45 Then I receive a response code 412 # features/steps/patroni_api.py:98 1807s Dec 27 20:00:45 And I receive a response text switchover is not possible: cluster does not have members except leader # features/steps/patroni_api.py:98 1807s Dec 27 20:00:45 When I issue an empty POST request to http://127.0.0.1:8008/failover # features/steps/patroni_api.py:66 1807s Dec 27 20:00:45 Then I receive a response code 400 # features/steps/patroni_api.py:98 1807s Dec 27 20:00:45 When I issue a POST request to http://127.0.0.1:8008/failover with {"foo": "bar"} # features/steps/patroni_api.py:71 1807s Dec 27 20:00:45 Then I receive a response code 400 # features/steps/patroni_api.py:98 1807s Dec 27 20:00:45 And I receive a response text "Failover could be performed only to a specific candidate" # features/steps/patroni_api.py:98 1807s Dec 27 20:00:45 1807s Dec 27 20:00:45 Scenario: check local configuration reload # features/patroni_api.feature:32 1807s Dec 27 20:00:45 Given I add tag new_tag new_value to postgres0 config # features/steps/patroni_api.py:137 1807s Dec 27 20:00:45 And I issue an empty POST request to http://127.0.0.1:8008/reload # features/steps/patroni_api.py:66 1807s Dec 27 20:00:45 Then I receive a response code 202 # features/steps/patroni_api.py:98 1807s Dec 27 20:00:45 1807s Dec 27 20:00:45 Scenario: check dynamic configuration change via DCS # features/patroni_api.feature:37 1807s Dec 27 20:00:45 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 1807s Dec 27 20:00:45 Then I receive a response code 200 # features/steps/patroni_api.py:98 1807s Dec 27 20:00:45 And Response on GET http://127.0.0.1:8008/patroni contains pending_restart after 11 seconds # features/steps/patroni_api.py:156 1809s Dec 27 20:00:47 When I issue a GET request to http://127.0.0.1:8008/config # features/steps/patroni_api.py:61 1810s Dec 27 20:00:47 Then I receive a response code 200 # features/steps/patroni_api.py:98 1810s Dec 27 20:00:47 And I receive a response ttl 20 # features/steps/patroni_api.py:98 1810s Dec 27 20:00:47 When I issue a GET request to http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:61 1810s Dec 27 20:00:48 Then I receive a response code 200 # features/steps/patroni_api.py:98 1810s Dec 27 20:00:48 And I receive a response tags {'new_tag': 'new_value'} # features/steps/patroni_api.py:98 1810s Dec 27 20:00:48 And I sleep for 4 seconds # features/steps/patroni_api.py:39 1814s Dec 27 20:00:52 1814s Dec 27 20:00:52 Scenario: check the scheduled restart # features/patroni_api.feature:49 1814s Dec 27 20:00:52 Given I run patronictl.py edit-config -p 'superuser_reserved_connections=6' --force batman # features/steps/patroni_api.py:86 1815s Dec 27 20:00:53 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 1815s Dec 27 20:00:53 And I receive a response output "+ superuser_reserved_connections: 6" # features/steps/patroni_api.py:98 1815s Dec 27 20:00:53 And Response on GET http://127.0.0.1:8008/patroni contains pending_restart after 5 seconds # features/steps/patroni_api.py:156 1815s Dec 27 20:00:53 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 1815s Dec 27 20:00:53 Then I receive a response code 202 # features/steps/patroni_api.py:98 1815s Dec 27 20:00:53 And I sleep for 8 seconds # features/steps/patroni_api.py:39 1823s Dec 27 20:01:01 And Response on GET http://127.0.0.1:8008/patroni contains pending_restart after 10 seconds # features/steps/patroni_api.py:156 1823s Dec 27 20:01:01 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 1823s Dec 27 20:01:01 Then I receive a response code 202 # features/steps/patroni_api.py:98 1823s Dec 27 20:01:01 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 1830s Dec 27 20:01:08 And postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:105 1831s Dec 27 20:01:09 1831s Dec 27 20:01:09 Scenario: check API requests for the primary-replica pair in the pause mode # features/patroni_api.feature:63 1831s Dec 27 20:01:09 Given I start postgres1 # features/steps/basic_replication.py:8 1834s Dec 27 20:01:12 Then replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:112 1835s Dec 27 20:01:13 When I run patronictl.py pause batman # features/steps/patroni_api.py:86 1837s Dec 27 20:01:15 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 1837s Dec 27 20:01:15 When I kill postmaster on postgres1 # features/steps/basic_replication.py:44 1837s Dec 27 20:01:15 waiting for server to shut down.... done 1837s Dec 27 20:01:15 server stopped 1837s Dec 27 20:01:15 And I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:61 1837s Dec 27 20:01:15 Then I receive a response code 503 # features/steps/patroni_api.py:98 1837s Dec 27 20:01:15 And "members/postgres1" key in DCS has state=stopped after 10 seconds # features/steps/cascading_replication.py:23 1838s Dec 27 20:01:16 When I run patronictl.py restart batman postgres1 --force # features/steps/patroni_api.py:86 1841s Dec 27 20:01:19 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 1841s Dec 27 20:01:19 Then replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:112 1842s Dec 27 20:01:20 And I sleep for 2 seconds # features/steps/patroni_api.py:39 1844s Dec 27 20:01:22 When I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:61 1844s Dec 27 20:01:22 Then I receive a response code 200 # features/steps/patroni_api.py:98 1844s Dec 27 20:01:22 And I receive a response state running # features/steps/patroni_api.py:98 1844s Dec 27 20:01:22 And I receive a response role replica # features/steps/patroni_api.py:98 1844s Dec 27 20:01:22 When I run patronictl.py reinit batman postgres1 --force --wait # features/steps/patroni_api.py:86 1848s Dec 27 20:01:26 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 1848s Dec 27 20:01:26 And I receive a response output "Success: reinitialize for member postgres1" # features/steps/patroni_api.py:98 1848s Dec 27 20:01:26 And postgres1 role is the secondary after 30 seconds # features/steps/basic_replication.py:105 1849s Dec 27 20:01:27 And replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:112 1849s Dec 27 20:01:27 When I run patronictl.py restart batman postgres0 --force # features/steps/patroni_api.py:86 1851s Dec 27 20:01:29 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 1851s Dec 27 20:01:29 And I receive a response output "Success: restart on member postgres0" # features/steps/patroni_api.py:98 1851s Dec 27 20:01:29 And postgres0 role is the primary after 5 seconds # features/steps/basic_replication.py:105 1852s Dec 27 20:01:30 1852s Dec 27 20:01:30 Scenario: check the switchover via the API in the pause mode # features/patroni_api.feature:90 1852s Dec 27 20:01:30 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 1854s Dec 27 20:01:32 Then I receive a response code 200 # features/steps/patroni_api.py:98 1854s Dec 27 20:01:32 And postgres1 is a leader after 5 seconds # features/steps/patroni_api.py:29 1854s Dec 27 20:01:32 And postgres1 role is the primary after 10 seconds # features/steps/basic_replication.py:105 1854s Dec 27 20:01:32 And postgres0 role is the secondary after 10 seconds # features/steps/basic_replication.py:105 1856s Dec 27 20:01:34 And replication works from postgres1 to postgres0 after 20 seconds # features/steps/basic_replication.py:112 1856s Dec 27 20:01:34 And "members/postgres0" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 1858s Dec 27 20:01:36 When I issue a GET request to http://127.0.0.1:8008/primary # features/steps/patroni_api.py:61 1858s Dec 27 20:01:36 Then I receive a response code 503 # features/steps/patroni_api.py:98 1858s Dec 27 20:01:36 When I issue a GET request to http://127.0.0.1:8008/replica # features/steps/patroni_api.py:61 1858s Dec 27 20:01:36 Then I receive a response code 200 # features/steps/patroni_api.py:98 1858s Dec 27 20:01:36 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:61 1858s Dec 27 20:01:36 Then I receive a response code 200 # features/steps/patroni_api.py:98 1858s Dec 27 20:01:36 When I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:61 1858s Dec 27 20:01:36 Then I receive a response code 503 # features/steps/patroni_api.py:98 1858s Dec 27 20:01:36 1858s Dec 27 20:01:36 Scenario: check the scheduled switchover # features/patroni_api.feature:107 1858s Dec 27 20:01:36 Given I issue a scheduled switchover from postgres1 to postgres0 in 10 seconds # features/steps/patroni_api.py:117 1860s Dec 27 20:01:38 Then I receive a response returncode 1 # features/steps/patroni_api.py:98 1860s Dec 27 20:01:38 And I receive a response output "Can't schedule switchover in the paused state" # features/steps/patroni_api.py:98 1860s Dec 27 20:01:38 When I run patronictl.py resume batman # features/steps/patroni_api.py:86 1862s Dec 27 20:01:40 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 1862s Dec 27 20:01:40 Given I issue a scheduled switchover from postgres1 to postgres0 in 10 seconds # features/steps/patroni_api.py:117 1864s Dec 27 20:01:42 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 1864s Dec 27 20:01:42 And postgres0 is a leader after 20 seconds # features/steps/patroni_api.py:29 1874s Dec 27 20:01:52 And postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:105 1874s Dec 27 20:01:52 And postgres1 role is the secondary after 10 seconds # features/steps/basic_replication.py:105 1877s Dec 27 20:01:55 And replication works from postgres0 to postgres1 after 25 seconds # features/steps/basic_replication.py:112 1877s Dec 27 20:01:55 And "members/postgres1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 1878s Dec 27 20:01:56 When I issue a GET request to http://127.0.0.1:8008/primary # features/steps/patroni_api.py:61 1878s Dec 27 20:01:56 Then I receive a response code 200 # features/steps/patroni_api.py:98 1878s Dec 27 20:01:56 When I issue a GET request to http://127.0.0.1:8008/replica # features/steps/patroni_api.py:61 1878s Dec 27 20:01:56 Then I receive a response code 503 # features/steps/patroni_api.py:98 1878s Dec 27 20:01:56 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:61 1878s Dec 27 20:01:56 Then I receive a response code 503 # features/steps/patroni_api.py:98 1878s Dec 27 20:01:56 When I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:61 1878s Dec 27 20:01:56 Then I receive a response code 200 # features/steps/patroni_api.py:98 1882s Dec 27 20:02:00 1882s Dec 27 20:02:00 Feature: permanent slots # features/permanent_slots.feature:1 1882s Dec 27 20:02:00 1882s Dec 27 20:02:00 Scenario: check that physical permanent slots are created # features/permanent_slots.feature:2 1882s Dec 27 20:02:00 Given I start postgres0 # features/steps/basic_replication.py:8 1885s Dec 27 20:02:03 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 1885s Dec 27 20:02:03 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 1885s Dec 27 20:02:03 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 1885s Dec 27 20:02:03 Then I receive a response code 200 # features/steps/patroni_api.py:98 1885s Dec 27 20:02:03 And Response on GET http://127.0.0.1:8008/config contains slots after 10 seconds # features/steps/patroni_api.py:156 1885s Dec 27 20:02:03 When I start postgres1 # features/steps/basic_replication.py:8 1888s Dec 27 20:02:06 And I configure and start postgres2 with a tag nofailover true # features/steps/cascading_replication.py:7 1891s Dec 27 20:02:09 And I configure and start postgres3 with a tag replicatefrom postgres2 # features/steps/cascading_replication.py:7 1894s Dec 27 20:02:12 Then postgres0 has a physical replication slot named test_physical after 10 seconds # features/steps/slots.py:80 1894s Dec 27 20:02:12 And postgres0 has a physical replication slot named postgres1 after 10 seconds # features/steps/slots.py:80 1894s Dec 27 20:02:12 And postgres0 has a physical replication slot named postgres2 after 10 seconds # features/steps/slots.py:80 1894s Dec 27 20:02:12 And postgres2 has a physical replication slot named postgres3 after 10 seconds # features/steps/slots.py:80 1894s Dec 27 20:02:12 And postgres2 does not have a replication slot named test_physical # features/steps/slots.py:40 1894s Dec 27 20:02:12 1894s Dec 27 20:02:12 @slot-advance 1894s Dec 27 20:02:12 Scenario: check that logical permanent slots are created # features/permanent_slots.feature:19 1894s Dec 27 20:02:12 Given I run patronictl.py restart batman postgres0 --force # features/steps/patroni_api.py:86 1898s Dec 27 20:02:16 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 1898s Dec 27 20:02:16 Then postgres0 has a logical replication slot named test_logical with the test_decoding plugin after 10 seconds # features/steps/slots.py:19 1899s Dec 27 20:02:17 1899s Dec 27 20:02:17 @slot-advance 1899s Dec 27 20:02:17 Scenario: check that permanent slots are created on replicas # features/permanent_slots.feature:25 1899s Dec 27 20:02:17 Given postgres1 has a logical replication slot named test_logical with the test_decoding plugin after 10 seconds # features/steps/slots.py:19 1905s Dec 27 20:02:23 Then Logical slot test_logical is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 1905s Dec 27 20:02:23 And Logical slot test_logical is in sync between postgres0 and postgres3 after 10 seconds # features/steps/slots.py:51 1906s Dec 27 20:02:24 And postgres1 has a physical replication slot named test_physical after 2 seconds # features/steps/slots.py:80 1906s Dec 27 20:02:24 And postgres2 does not have a replication slot named test_logical # features/steps/slots.py:40 1906s Dec 27 20:02:24 And postgres3 has a physical replication slot named test_physical after 2 seconds # features/steps/slots.py:80 1906s Dec 27 20:02:24 1906s Dec 27 20:02:24 @slot-advance 1906s Dec 27 20:02:24 Scenario: check permanent physical slots that match with member names # features/permanent_slots.feature:34 1906s Dec 27 20:02:24 Given postgres0 has a physical replication slot named postgres3 after 2 seconds # features/steps/slots.py:80 1906s Dec 27 20:02:24 And postgres1 has a physical replication slot named postgres0 after 2 seconds # features/steps/slots.py:80 1906s Dec 27 20:02:24 And postgres1 has a physical replication slot named postgres3 after 2 seconds # features/steps/slots.py:80 1906s Dec 27 20:02:24 And postgres2 does not have a replication slot named postgres0 # features/steps/slots.py:40 1906s Dec 27 20:02:24 And postgres2 does not have a replication slot named postgres1 # features/steps/slots.py:40 1906s Dec 27 20:02:24 And postgres2 has a physical replication slot named postgres3 after 2 seconds # features/steps/slots.py:80 1906s Dec 27 20:02:24 And postgres1 does not have a replication slot named postgres2 # features/steps/slots.py:40 1906s Dec 27 20:02:24 And postgres3 does not have a replication slot named postgres2 # features/steps/slots.py:40 1906s Dec 27 20:02:24 1906s Dec 27 20:02:24 @slot-advance 1906s Dec 27 20:02:24 Scenario: check that permanent slots are advanced on replicas # features/permanent_slots.feature:45 1906s Dec 27 20:02:24 Given I add the table replicate_me to postgres0 # features/steps/basic_replication.py:54 1906s Dec 27 20:02:24 When I get all changes from logical slot test_logical on postgres0 # features/steps/slots.py:70 1906s Dec 27 20:02:24 And I get all changes from physical slot test_physical on postgres0 # features/steps/slots.py:75 1906s Dec 27 20:02:24 Then Logical slot test_logical is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 1910s Dec 27 20:02:28 And Physical slot test_physical is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 1910s Dec 27 20:02:28 And Logical slot test_logical is in sync between postgres0 and postgres3 after 10 seconds # features/steps/slots.py:51 1910s Dec 27 20:02:28 And Physical slot test_physical is in sync between postgres0 and postgres3 after 10 seconds # features/steps/slots.py:51 1910s Dec 27 20:02:28 And Physical slot postgres3 is in sync between postgres2 and postgres0 after 20 seconds # features/steps/slots.py:51 1910s Dec 27 20:02:28 And Physical slot postgres3 is in sync between postgres2 and postgres1 after 10 seconds # features/steps/slots.py:51 1910s Dec 27 20:02:28 And postgres1 does not have a replication slot named postgres2 # features/steps/slots.py:40 1910s Dec 27 20:02:28 And postgres3 does not have a replication slot named postgres2 # features/steps/slots.py:40 1910s Dec 27 20:02:28 1910s Dec 27 20:02:28 @slot-advance 1910s Dec 27 20:02:28 Scenario: check that only permanent slots are written to the /status key # features/permanent_slots.feature:59 1910s Dec 27 20:02:28 Given "status" key in DCS has test_physical in slots # features/steps/slots.py:116 1910s Dec 27 20:02:28 And "status" key in DCS has postgres0 in slots # features/steps/slots.py:116 1910s Dec 27 20:02:28 And "status" key in DCS has postgres1 in slots # features/steps/slots.py:116 1910s Dec 27 20:02:28 And "status" key in DCS does not have postgres2 in slots # features/steps/slots.py:122 1910s Dec 27 20:02:28 And "status" key in DCS has postgres3 in slots # features/steps/slots.py:116 1910s Dec 27 20:02:28 1910s Dec 27 20:02:28 Scenario: check permanent physical replication slot after failover # features/permanent_slots.feature:66 1910s Dec 27 20:02:28 Given I shut down postgres3 # features/steps/basic_replication.py:29 1911s Dec 27 20:02:29 And I shut down postgres2 # features/steps/basic_replication.py:29 1912s Dec 27 20:02:30 And I shut down postgres0 # features/steps/basic_replication.py:29 1914s Dec 27 20:02:32 Then postgres1 has a physical replication slot named test_physical after 10 seconds # features/steps/slots.py:80 1914s Dec 27 20:02:32 And postgres1 has a physical replication slot named postgres0 after 10 seconds # features/steps/slots.py:80 1914s Dec 27 20:02:32 And postgres1 has a physical replication slot named postgres3 after 10 seconds # features/steps/slots.py:80 1914s Dec 27 20:02:32 When I start postgres0 # features/steps/basic_replication.py:8 1917s Dec 27 20:02:35 Then postgres0 role is the replica after 20 seconds # features/steps/basic_replication.py:105 1917s Dec 27 20:02:35 And physical replication slot named postgres1 on postgres0 has no xmin value after 10 seconds # features/steps/slots.py:96 1918s Dec 27 20:02:36 And physical replication slot named postgres2 on postgres0 has no xmin value after 10 seconds # features/steps/slots.py:96 1921s Dec 27 20:02:39 1921s Dec 27 20:02:39 Feature: priority replication # features/priority_failover.feature:1 1921s Dec 27 20:02:39 We should check that we can give nodes priority during failover 1921s Dec 27 20:02:39 Scenario: check failover priority 0 prevents leaderships # features/priority_failover.feature:4 1921s Dec 27 20:02:39 Given I configure and start postgres0 with a tag failover_priority 1 # features/steps/cascading_replication.py:7 1924s Dec 27 20:02:42 And I configure and start postgres1 with a tag failover_priority 0 # features/steps/cascading_replication.py:7 1927s Dec 27 20:02:45 Then replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:112 1928s Dec 27 20:02:46 When I shut down postgres0 # features/steps/basic_replication.py:29 1930s Dec 27 20:02:48 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:121 1932s Dec 27 20:02:50 Then postgres1 role is the secondary after 10 seconds # features/steps/basic_replication.py:105 1932s Dec 27 20:02:50 When I start postgres0 # features/steps/basic_replication.py:8 1935s Dec 27 20:02:53 Then postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:105 1936s Dec 27 20:02:54 1936s Dec 27 20:02:54 Scenario: check higher failover priority is respected # features/priority_failover.feature:14 1936s Dec 27 20:02:54 Given I configure and start postgres2 with a tag failover_priority 1 # features/steps/cascading_replication.py:7 1939s Dec 27 20:02:57 And I configure and start postgres3 with a tag failover_priority 2 # features/steps/cascading_replication.py:7 1942s Dec 27 20:03:00 Then replication works from postgres0 to postgres2 after 20 seconds # features/steps/basic_replication.py:112 1943s Dec 27 20:03:01 And replication works from postgres0 to postgres3 after 20 seconds # features/steps/basic_replication.py:112 1945s Dec 27 20:03:02 When I shut down postgres0 # features/steps/basic_replication.py:29 1947s Dec 27 20:03:04 Then postgres3 role is the primary after 10 seconds # features/steps/basic_replication.py:105 1948s Dec 27 20:03:05 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:121 1948s Dec 27 20:03:05 1948s Dec 27 20:03:05 Scenario: check conflicting configuration handling # features/priority_failover.feature:23 1948s Dec 27 20:03:05 When I set nofailover tag in postgres2 config # features/steps/patroni_api.py:131 1948s Dec 27 20:03:06 And I issue an empty POST request to http://127.0.0.1:8010/reload # features/steps/patroni_api.py:66 1948s Dec 27 20:03:06 Then I receive a response code 202 # features/steps/patroni_api.py:98 1948s Dec 27 20:03:06 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:121 1949s Dec 27 20:03:07 And "members/postgres2" key in DCS has tags={'failover_priority': '1', 'nofailover': True} after 10 seconds # features/steps/cascading_replication.py:23 1950s Dec 27 20:03:08 When I issue a POST request to http://127.0.0.1:8010/failover with {"candidate": "postgres2"} # features/steps/patroni_api.py:71 1950s Dec 27 20:03:08 Then I receive a response code 412 # features/steps/patroni_api.py:98 1950s Dec 27 20:03:08 And I receive a response text "failover is not possible: no good candidates have been found" # features/steps/patroni_api.py:98 1950s Dec 27 20:03:08 When I reset nofailover tag in postgres1 config # features/steps/patroni_api.py:131 1950s Dec 27 20:03:08 And I issue an empty POST request to http://127.0.0.1:8009/reload # features/steps/patroni_api.py:66 1950s Dec 27 20:03:08 Then I receive a response code 202 # features/steps/patroni_api.py:98 1950s Dec 27 20:03:08 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:121 1951s Dec 27 20:03:09 And "members/postgres1" key in DCS has tags={'failover_priority': '0', 'nofailover': False} after 10 seconds # features/steps/cascading_replication.py:23 1952s Dec 27 20:03:10 And I issue a POST request to http://127.0.0.1:8009/failover with {"candidate": "postgres1"} # features/steps/patroni_api.py:71 1955s Dec 27 20:03:13 Then I receive a response code 200 # features/steps/patroni_api.py:98 1955s Dec 27 20:03:13 And postgres1 role is the primary after 10 seconds # features/steps/basic_replication.py:105 1959s Dec 27 20:03:17 1959s Dec 27 20:03:17 Feature: recovery # features/recovery.feature:1 1959s Dec 27 20:03:17 We want to check that crashed postgres is started back 1959s Dec 27 20:03:17 Scenario: check that timeline is not incremented when primary is started after crash # features/recovery.feature:4 1959s Dec 27 20:03:17 Given I start postgres0 # features/steps/basic_replication.py:8 1963s Dec 27 20:03:21 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 1963s Dec 27 20:03:21 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 1963s Dec 27 20:03:21 When I start postgres1 # features/steps/basic_replication.py:8 1966s Dec 27 20:03:24 And I add the table foo to postgres0 # features/steps/basic_replication.py:54 1966s Dec 27 20:03:24 Then table foo is present on postgres1 after 20 seconds # features/steps/basic_replication.py:93 1967s Dec 27 20:03:25 When I kill postmaster on postgres0 # features/steps/basic_replication.py:44 1967s Dec 27 20:03:25 waiting for server to shut down.... done 1967s Dec 27 20:03:25 server stopped 1967s Dec 27 20:03:25 Then postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:105 1969s Dec 27 20:03:27 When I issue a GET request to http://127.0.0.1:8008/ # features/steps/patroni_api.py:61 1969s Dec 27 20:03:27 Then I receive a response code 200 # features/steps/patroni_api.py:98 1969s Dec 27 20:03:27 And I receive a response role master # features/steps/patroni_api.py:98 1969s Dec 27 20:03:27 And I receive a response timeline 1 # features/steps/patroni_api.py:98 1969s Dec 27 20:03:27 And "members/postgres0" key in DCS has state=running after 12 seconds # features/steps/cascading_replication.py:23 1970s Dec 27 20:03:28 And replication works from postgres0 to postgres1 after 15 seconds # features/steps/basic_replication.py:112 1972s Dec 27 20:03:30 1972s Dec 27 20:03:30 Scenario: check immediate failover when master_start_timeout=0 # features/recovery.feature:20 1972s Dec 27 20:03:30 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 1972s Dec 27 20:03:30 Then I receive a response code 200 # features/steps/patroni_api.py:98 1972s Dec 27 20:03:30 And Response on GET http://127.0.0.1:8008/config contains master_start_timeout after 10 seconds # features/steps/patroni_api.py:156 1972s Dec 27 20:03:30 When I kill postmaster on postgres0 # features/steps/basic_replication.py:44 1973s Dec 27 20:03:31 waiting for server to shut down.... done 1973s Dec 27 20:03:31 server stopped 1973s Dec 27 20:03:31 Then postgres1 is a leader after 10 seconds # features/steps/patroni_api.py:29 1975s Dec 27 20:03:33 And postgres1 role is the primary after 10 seconds # features/steps/basic_replication.py:105 1979s Dec 27 20:03:37 1979s Dec 27 20:03:37 Feature: standby cluster # features/standby_cluster.feature:1 1979s Dec 27 20:03:37 1979s Dec 27 20:03:37 Scenario: prepare the cluster with logical slots # features/standby_cluster.feature:2 1979s Dec 27 20:03:37 Given I start postgres1 # features/steps/basic_replication.py:8 1983s Dec 27 20:03:41 Then postgres1 is a leader after 10 seconds # features/steps/patroni_api.py:29 1983s Dec 27 20:03:41 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 1983s Dec 27 20:03:41 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 1983s Dec 27 20:03:41 Then I receive a response code 200 # features/steps/patroni_api.py:98 1983s Dec 27 20:03:41 And Response on GET http://127.0.0.1:8009/config contains slots after 10 seconds # features/steps/patroni_api.py:156 1983s Dec 27 20:03:41 And I sleep for 3 seconds # features/steps/patroni_api.py:39 1986s Dec 27 20:03:44 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 1986s Dec 27 20:03:44 Then I receive a response code 200 # features/steps/patroni_api.py:98 1986s Dec 27 20:03:44 And I do a backup of postgres1 # features/steps/custom_bootstrap.py:25 1986s Dec 27 20:03:44 When I start postgres0 # features/steps/basic_replication.py:8 1989s Dec 27 20:03:47 Then "members/postgres0" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 1990s Dec 27 20:03:48 And replication works from postgres1 to postgres0 after 15 seconds # features/steps/basic_replication.py:112 1991s Dec 27 20:03:49 When I issue a GET request to http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:61 1991s Dec 27 20:03:49 Then I receive a response code 200 # features/steps/patroni_api.py:98 1991s Dec 27 20:03:49 And I receive a response replication_state streaming # features/steps/patroni_api.py:98 1991s Dec 27 20:03:49 And "members/postgres0" key in DCS has replication_state=streaming after 10 seconds # features/steps/cascading_replication.py:23 1991s Dec 27 20:03:49 1991s Dec 27 20:03:49 @slot-advance 1991s Dec 27 20:03:49 Scenario: check permanent logical slots are synced to the replica # features/standby_cluster.feature:22 1991s Dec 27 20:03:49 Given I run patronictl.py restart batman postgres1 --force # features/steps/patroni_api.py:86 1995s Dec 27 20:03:53 Then Logical slot test_logical is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 2002s Dec 27 20:04:00 2002s Dec 27 20:04:00 Scenario: Detach exiting node from the cluster # features/standby_cluster.feature:26 2002s Dec 27 20:04:00 When I shut down postgres1 # features/steps/basic_replication.py:29 2004s Dec 27 20:04:02 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 2004s Dec 27 20:04:02 And "members/postgres0" key in DCS has role=master after 5 seconds # features/steps/cascading_replication.py:23 2005s Dec 27 20:04:03 When I issue a GET request to http://127.0.0.1:8008/ # features/steps/patroni_api.py:61 2005s Dec 27 20:04:03 Then I receive a response code 200 # features/steps/patroni_api.py:98 2005s Dec 27 20:04:03 2005s Dec 27 20:04:03 Scenario: check replication of a single table in a standby cluster # features/standby_cluster.feature:33 2005s Dec 27 20:04:03 Given I start postgres1 in a standby cluster batman1 as a clone of postgres0 # features/steps/standby_cluster.py:23 2008s Dec 27 20:04:06 Then postgres1 is a leader of batman1 after 10 seconds # features/steps/custom_bootstrap.py:16 2009s Dec 27 20:04:07 When I add the table foo to postgres0 # features/steps/basic_replication.py:54 2009s Dec 27 20:04:07 Then table foo is present on postgres1 after 20 seconds # features/steps/basic_replication.py:93 2009s Dec 27 20:04:07 When I issue a GET request to http://127.0.0.1:8009/patroni # features/steps/patroni_api.py:61 2009s Dec 27 20:04:07 Then I receive a response code 200 # features/steps/patroni_api.py:98 2009s Dec 27 20:04:07 And I receive a response replication_state streaming # features/steps/patroni_api.py:98 2009s Dec 27 20:04:07 And I sleep for 3 seconds # features/steps/patroni_api.py:39 2012s Dec 27 20:04:10 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:61 2012s Dec 27 20:04:10 Then I receive a response code 503 # features/steps/patroni_api.py:98 2012s Dec 27 20:04:10 When I issue a GET request to http://127.0.0.1:8009/standby_leader # features/steps/patroni_api.py:61 2012s Dec 27 20:04:10 Then I receive a response code 200 # features/steps/patroni_api.py:98 2012s Dec 27 20:04:10 And I receive a response role standby_leader # features/steps/patroni_api.py:98 2012s Dec 27 20:04:10 And there is a postgres1_cb.log with "on_role_change standby_leader batman1" in postgres1 data directory # features/steps/cascading_replication.py:12 2012s Dec 27 20:04:10 When I start postgres2 in a cluster batman1 # features/steps/standby_cluster.py:12 2015s Dec 27 20:04:13 Then postgres2 role is the replica after 24 seconds # features/steps/basic_replication.py:105 2015s Dec 27 20:04:13 And postgres2 is replicating from postgres1 after 10 seconds # features/steps/standby_cluster.py:52 2016s Dec 27 20:04:14 And table foo is present on postgres2 after 20 seconds # features/steps/basic_replication.py:93 2016s Dec 27 20:04:14 When I issue a GET request to http://127.0.0.1:8010/patroni # features/steps/patroni_api.py:61 2016s Dec 27 20:04:14 Then I receive a response code 200 # features/steps/patroni_api.py:98 2016s Dec 27 20:04:14 And I receive a response replication_state streaming # features/steps/patroni_api.py:98 2016s Dec 27 20:04:14 And postgres1 does not have a replication slot named test_logical # features/steps/slots.py:40 2016s Dec 27 20:04:14 2016s Dec 27 20:04:14 Scenario: check switchover # features/standby_cluster.feature:57 2016s Dec 27 20:04:14 Given I run patronictl.py switchover batman1 --force # features/steps/patroni_api.py:86 2020s Dec 27 20:04:18 Then Status code on GET http://127.0.0.1:8010/standby_leader is 200 after 10 seconds # features/steps/patroni_api.py:142 2020s Dec 27 20:04:18 And postgres1 is replicating from postgres2 after 32 seconds # features/steps/standby_cluster.py:52 2022s Dec 27 20:04:20 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 2022s Dec 27 20:04:20 2022s Dec 27 20:04:20 Scenario: check failover # features/standby_cluster.feature:63 2022s Dec 27 20:04:20 When I kill postgres2 # features/steps/basic_replication.py:34 2023s Dec 27 20:04:21 And I kill postmaster on postgres2 # features/steps/basic_replication.py:44 2023s Dec 27 20:04:21 waiting for server to shut down.... done 2023s Dec 27 20:04:21 server stopped 2023s Dec 27 20:04:21 Then postgres1 is replicating from postgres0 after 32 seconds # features/steps/standby_cluster.py:52 2042s Dec 27 20:04:40 And Status code on GET http://127.0.0.1:8009/standby_leader is 200 after 10 seconds # features/steps/patroni_api.py:142 2042s Dec 27 20:04:40 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:61 2042s Dec 27 20:04:40 Then I receive a response code 503 # features/steps/patroni_api.py:98 2042s Dec 27 20:04:40 And I receive a response role standby_leader # features/steps/patroni_api.py:98 2042s Dec 27 20:04:40 And replication works from postgres0 to postgres1 after 15 seconds # features/steps/basic_replication.py:112 2043s Dec 27 20:04:41 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 2047s Dec 27 20:04:45 2047s Dec 27 20:04:45 Feature: watchdog # features/watchdog.feature:1 2047s Dec 27 20:04:45 Verify that watchdog gets pinged and triggered under appropriate circumstances. 2047s Dec 27 20:04:45 Scenario: watchdog is opened and pinged # features/watchdog.feature:4 2047s Dec 27 20:04:45 Given I start postgres0 with watchdog # features/steps/watchdog.py:16 2050s Dec 27 20:04:48 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 2051s Dec 27 20:04:49 And postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:105 2051s Dec 27 20:04:49 And postgres0 watchdog has been pinged after 10 seconds # features/steps/watchdog.py:21 2052s Dec 27 20:04:50 And postgres0 watchdog has a 15 second timeout # features/steps/watchdog.py:34 2052s Dec 27 20:04:50 2052s Dec 27 20:04:50 Scenario: watchdog is reconfigured after global ttl changed # features/watchdog.feature:11 2052s Dec 27 20:04:50 Given I run patronictl.py edit-config batman -s ttl=30 --force # features/steps/patroni_api.py:86 2054s Dec 27 20:04:52 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 2054s Dec 27 20:04:52 And I receive a response output "+ttl: 30" # features/steps/patroni_api.py:98 2054s Dec 27 20:04:52 When I sleep for 4 seconds # features/steps/patroni_api.py:39 2058s Dec 27 20:04:56 Then postgres0 watchdog has a 25 second timeout # features/steps/watchdog.py:34 2058s Dec 27 20:04:56 2058s Dec 27 20:04:56 Scenario: watchdog is disabled during pause # features/watchdog.feature:18 2058s Dec 27 20:04:56 Given I run patronictl.py pause batman # features/steps/patroni_api.py:86 2060s Dec 27 20:04:58 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 2060s Dec 27 20:04:58 When I sleep for 2 seconds # features/steps/patroni_api.py:39 2062s Dec 27 20:05:00 Then postgres0 watchdog has been closed # features/steps/watchdog.py:29 2062s Dec 27 20:05:00 2062s Dec 27 20:05:00 Scenario: watchdog is opened and pinged after resume # features/watchdog.feature:24 2062s Dec 27 20:05:00 Given I reset postgres0 watchdog state # features/steps/watchdog.py:39 2062s Dec 27 20:05:00 And I run patronictl.py resume batman # features/steps/patroni_api.py:86 2063s Dec 27 20:05:01 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 2063s Dec 27 20:05:01 And postgres0 watchdog has been pinged after 10 seconds # features/steps/watchdog.py:21 2063s Dec 27 20:05:01 2063s Dec 27 20:05:01 Scenario: watchdog is disabled when shutting down # features/watchdog.feature:30 2063s Dec 27 20:05:01 Given I shut down postgres0 # features/steps/basic_replication.py:29 2065s Dec 27 20:05:03 Then postgres0 watchdog has been closed # features/steps/watchdog.py:29 2065s Dec 27 20:05:03 2065s Dec 27 20:05:03 Scenario: watchdog is triggered if patroni stops responding # features/watchdog.feature:34 2065s Dec 27 20:05:03 Given I reset postgres0 watchdog state # features/steps/watchdog.py:39 2065s Dec 27 20:05:03 And I start postgres0 with watchdog # features/steps/watchdog.py:16 2068s Dec 27 20:05:06 Then postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:105 2069s Dec 27 20:05:07 When postgres0 hangs for 30 seconds # features/steps/watchdog.py:52 2069s Dec 27 20:05:07 Then postgres0 watchdog is triggered after 30 seconds # features/steps/watchdog.py:44 2092s Dec 27 20:05:30 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.10057.XsZHBZWx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.10113.XbSEgJWx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.10227.XzNwyanx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.10350.XUbqFdMx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.10486.XfUHzWwx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.10536.XfMTdIVx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.10543.XMUTyESx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.10548.XfbqqWxx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.10567.XAVreqkx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.6612.XBmGGoIx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.6662.XJQNtLbx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.6707.XzVFztYx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.6771.XsBFekXx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.6818.XhUpTqDx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.6892.XrTPDBEx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.6942.XOEtJUbx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.6948.XAOrVQcx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.7043.XQCGVuMx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.7152.XavBQbvx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.7166.XTMKzBrx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.7213.XfkrOgax 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.7272.XtkGcVGx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.7400.XmOcllJx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.7448.XrbWxmxx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.7505.XMNrzKcx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.7604.XWWpkZrx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.7661.XxQpeZDx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.7725.XJRFMtMx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.7820.XNXcIXvx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.7927.XXummzSx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.7969.XfWJkYnx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.8042.XrspWOux 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.8077.XMuTzdHx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.8213.XEmizvJx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.8266.XQHEPVmx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.8286.XEcbaFUx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.8344.XyoMUqSx 2093s Dec 27 20:05:31 Skipping duplicate data .coverage.autopkgtest.8396.XWyDnzhx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.8405.XqZyuHTx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.8446.XlTisjax 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.8492.XowpSkdx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.8624.XYYEbzLx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.8628.XqnqPBux 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.8636.XuIAvwUx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.8780.XaDajlmx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.8828.XxuKFHjx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.8871.XKXiVbyx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.8915.XKTfngrx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.8961.XILgchmx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.9127.XuWeWVMx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.9188.XYPYcyhx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.9233.XJEeCpax 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.9308.XCJVPwFx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.9384.XJszoWix 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.9434.XUADyQVx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.9796.XRGjihrx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.9842.XVayHxUx 2093s Dec 27 20:05:31 Combined data file .coverage.autopkgtest.9993.XqPuqewx 2095s Dec 27 20:05:33 Name Stmts Miss Cover 2095s Dec 27 20:05:33 -------------------------------------------------------------------------------------------------------- 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/_distutils_hack/__init__.py 101 96 5% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/dateutil/__init__.py 13 4 69% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/dateutil/_common.py 25 15 40% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/dateutil/_version.py 11 2 82% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/dateutil/parser/__init__.py 33 4 88% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/dateutil/parser/_parser.py 811 436 46% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/dateutil/parser/isoparser.py 184 150 18% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/dateutil/relativedelta.py 240 206 14% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/dateutil/tz/__init__.py 4 0 100% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/dateutil/tz/_common.py 151 114 25% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/dateutil/tz/_factories.py 49 21 57% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/dateutil/tz/tz.py 795 626 21% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/dateutil/tz/win.py 153 149 3% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/kazoo/__init__.py 1 0 100% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/kazoo/client.py 629 266 58% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/kazoo/exceptions.py 110 1 99% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/kazoo/handlers/__init__.py 0 0 100% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/kazoo/handlers/threading.py 94 15 84% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/kazoo/handlers/utils.py 222 74 67% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/kazoo/hosts.py 18 4 78% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/kazoo/loggingsupport.py 1 0 100% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/kazoo/protocol/__init__.py 0 0 100% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/kazoo/protocol/connection.py 485 176 64% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/kazoo/protocol/paths.py 33 8 76% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/kazoo/protocol/serialization.py 316 111 65% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/kazoo/protocol/states.py 49 9 82% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/kazoo/python2atexit.py 32 19 41% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/kazoo/recipe/__init__.py 0 0 100% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/kazoo/recipe/barrier.py 97 80 18% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/kazoo/recipe/counter.py 49 36 27% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/kazoo/recipe/election.py 16 10 38% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/kazoo/recipe/lease.py 54 36 33% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/kazoo/recipe/lock.py 295 242 18% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/kazoo/recipe/partitioner.py 155 120 23% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/kazoo/recipe/party.py 62 43 31% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/kazoo/recipe/queue.py 157 126 20% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/kazoo/recipe/watchers.py 172 138 20% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/kazoo/retry.py 60 9 85% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/kazoo/security.py 58 35 40% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/kazoo/version.py 1 0 100% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/__init__.py 13 2 85% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/__main__.py 199 63 68% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/api.py 780 292 63% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/async_executor.py 96 15 84% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/collections.py 56 6 89% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/config.py 371 92 75% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/config_generator.py 212 159 25% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/daemon.py 76 3 96% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/dcs/__init__.py 654 91 86% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/dcs/zookeeper.py 289 69 76% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/dynamic_loader.py 35 7 80% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/exceptions.py 16 0 100% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/file_perm.py 43 8 81% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/global_config.py 81 0 100% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/ha.py 1270 391 69% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/log.py 221 71 68% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/postgresql/__init__.py 822 179 78% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/postgresql/available_parameters/__init__.py 24 3 88% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/postgresql/bootstrap.py 255 62 76% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/postgresql/callback_executor.py 55 8 85% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/postgresql/cancellable.py 104 41 61% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/postgresql/config.py 838 215 74% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/postgresql/connection.py 75 1 99% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/postgresql/misc.py 43 8 81% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/postgresql/mpp/__init__.py 89 11 88% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/postgresql/postmaster.py + echo '### End 16 acceptance-zookeeper -e dcs_failsafe_mode ###' 2095s + rm -f '/tmp/pgpass?' 2095s ++ id -u 2095s + '[' 0 -eq 0 ']' 2095s + '[' -x /etc/init.d/zookeeper ']' 2095s + /etc/init.d/zookeeper stop 2095s 170 85 50% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/postgresql/rewind.py 416 167 60% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/postgresql/slots.py 349 38 89% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/postgresql/sync.py 130 19 85% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/postgresql/validator.py 157 24 85% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/psycopg.py 46 20 57% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/request.py 58 7 88% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/tags.py 38 0 100% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/utils.py 370 122 67% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/validator.py 307 214 30% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/version.py 1 0 100% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/watchdog/__init__.py 2 0 100% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/watchdog/base.py 203 46 77% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/patroni/watchdog/linux.py 135 35 74% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/psutil/__init__.py 951 629 34% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/psutil/_common.py 424 212 50% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/psutil/_compat.py 302 263 13% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/psutil/_pslinux.py 1251 924 26% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/psutil/_psposix.py 96 38 60% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/psycopg2/__init__.py 19 3 84% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/psycopg2/_json.py 64 27 58% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/psycopg2/_range.py 269 172 36% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/psycopg2/errors.py 3 2 33% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/psycopg2/extensions.py 91 25 73% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/puresasl/__init__.py 21 2 90% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/puresasl/client.py 71 47 34% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/puresasl/mechanisms.py 363 263 28% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/six.py 506 259 49% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/urllib3/__init__.py 50 14 72% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/urllib3/_base_connection.py 70 52 26% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/urllib3/_collections.py 234 128 45% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/urllib3/_request_methods.py 53 23 57% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/urllib3/_version.py 2 0 100% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/urllib3/connection.py 324 110 66% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/urllib3/connectionpool.py 347 136 61% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/urllib3/exceptions.py 115 37 68% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/urllib3/fields.py 92 73 21% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/urllib3/filepost.py 37 24 35% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/urllib3/poolmanager.py 233 88 62% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/urllib3/response.py 562 334 41% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/urllib3/util/__init__.py 10 0 100% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/urllib3/util/connection.py 66 9 86% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/urllib3/util/proxy.py 13 6 54% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/urllib3/util/request.py 104 52 50% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/urllib3/util/response.py 32 17 47% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/urllib3/util/retry.py 173 52 70% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/urllib3/util/ssl_.py 177 75 58% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/urllib3/util/ssl_match_hostname.py 66 54 18% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/urllib3/util/ssltransport.py 160 112 30% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/urllib3/util/timeout.py 71 19 73% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/urllib3/util/url.py 205 78 62% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/urllib3/util/util.py 26 18 31% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/urllib3/util/wait.py 49 38 22% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/yaml/__init__.py 165 109 34% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/yaml/composer.py 92 17 82% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/yaml/constructor.py 479 276 42% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/yaml/cyaml.py 46 24 48% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/yaml/dumper.py 23 12 48% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/yaml/emitter.py 838 769 8% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/yaml/error.py 58 42 28% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/yaml/events.py 61 6 90% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/yaml/loader.py 47 24 49% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/yaml/nodes.py 29 7 76% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/yaml/parser.py 352 180 49% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/yaml/reader.py 122 30 75% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/yaml/representer.py 248 176 29% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/yaml/resolver.py 135 76 44% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/yaml/scanner.py 758 415 45% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/yaml/serializer.py 85 70 18% 2095s Dec 27 20:05:33 /usr/lib/python3/dist-packages/yaml/tokens.py 76 17 78% 2095s Dec 27 20:05:33 patroni/__init__.py 13 2 85% 2095s Dec 27 20:05:33 patroni/__main__.py 199 199 0% 2095s Dec 27 20:05:33 patroni/api.py 780 780 0% 2095s Dec 27 20:05:33 patroni/async_executor.py 96 69 28% 2095s Dec 27 20:05:33 patroni/collections.py 56 15 73% 2095s Dec 27 20:05:33 patroni/config.py 371 194 48% 2095s Dec 27 20:05:33 patroni/config_generator.py 212 212 0% 2095s Dec 27 20:05:33 patroni/ctl.py 936 411 56% 2095s Dec 27 20:05:33 patroni/daemon.py 76 76 0% 2095s Dec 27 20:05:33 patroni/dcs/__init__.py 654 274 58% 2095s Dec 27 20:05:33 patroni/dcs/consul.py 484 484 0% 2095s Dec 27 20:05:33 patroni/dcs/etcd3.py 679 679 0% 2095s Dec 27 20:05:33 patroni/dcs/etcd.py 603 603 0% 2095s Dec 27 20:05:33 patroni/dcs/exhibitor.py 62 62 0% 2095s Dec 27 20:05:33 patroni/dcs/kubernetes.py 940 940 0% 2095s Dec 27 20:05:33 patroni/dcs/raft.py 319 319 0% 2095s Dec 27 20:05:33 patroni/dcs/zookeeper.py 289 150 48% 2095s Dec 27 20:05:33 patroni/dynamic_loader.py 35 7 80% 2095s Dec 27 20:05:33 patroni/exceptions.py 16 1 94% 2095s Dec 27 20:05:33 patroni/file_perm.py 43 15 65% 2095s Dec 27 20:05:33 patroni/global_config.py 81 18 78% 2095s Dec 27 20:05:33 patroni/ha.py 1270 1270 0% 2095s Dec 27 20:05:33 patroni/log.py 221 175 21% 2095s Dec 27 20:05:33 patroni/postgresql/__init__.py 822 652 21% 2095s Dec 27 20:05:33 patroni/postgresql/available_parameters/__init__.py 24 6 75% 2095s Dec 27 20:05:33 patroni/postgresql/bootstrap.py 255 225 12% 2095s Dec 27 20:05:33 patroni/postgresql/callback_executor.py 55 34 38% 2095s Dec 27 20:05:33 patroni/postgresql/cancellable.py 104 84 19% 2095s Dec 27 20:05:33 patroni/postgresql/config.py 838 718 14% 2095s Dec 27 20:05:33 patroni/postgresql/connection.py 75 50 33% 2095s Dec 27 20:05:33 patroni/postgresql/misc.py 43 30 30% 2095s Dec 27 20:05:33 patroni/postgresql/mpp/__init__.py 89 21 76% 2095s Dec 27 20:05:33 patroni/postgresql/mpp/citus.py 259 259 0% 2095s Dec 27 20:05:33 patroni/postgresql/postmaster.py 170 139 18% 2095s Dec 27 20:05:33 patroni/postgresql/rewind.py 416 416 0% 2095s Dec 27 20:05:33 patroni/postgresql/slots.py 349 300 14% 2095s Dec 27 20:05:33 patroni/postgresql/sync.py 130 96 26% 2095s Dec 27 20:05:33 patroni/postgresql/validator.py 157 52 67% 2095s Dec 27 20:05:33 patroni/psycopg.py 46 32 30% 2095s Dec 27 20:05:33 patroni/raft_controller.py 22 22 0% 2095s Dec 27 20:05:33 patroni/request.py 58 6 90% 2095s Dec 27 20:05:33 patroni/scripts/__init__.py 0 0 100% 2095s Dec 27 20:05:33 patroni/scripts/aws.py 59 59 0% 2095s Dec 27 20:05:33 patroni/scripts/barman/__init__.py 0 0 100% 2095s Dec 27 20:05:33 patroni/scripts/barman/cli.py 51 51 0% 2095s Dec 27 20:05:33 patroni/scripts/barman/config_switch.py 51 51 0% 2095s Dec 27 20:05:33 patroni/scripts/barman/recover.py 37 37 0% 2095s Dec 27 20:05:33 patroni/scripts/barman/utils.py 94 94 0% 2095s Dec 27 20:05:33 patroni/scripts/wale_restore.py 207 207 0% 2095s Dec 27 20:05:33 patroni/tags.py 38 11 71% 2095s Dec 27 20:05:33 patroni/utils.py 370 246 34% 2095s Dec 27 20:05:33 patroni/validator.py 307 221 28% 2095s Dec 27 20:05:33 patroni/version.py 1 0 100% 2095s Dec 27 20:05:33 patroni/watchdog/__init__.py 2 2 0% 2095s Dec 27 20:05:33 patroni/watchdog/base.py 203 203 0% 2095s Dec 27 20:05:33 patroni/watchdog/linux.py 135 135 0% 2095s Dec 27 20:05:33 -------------------------------------------------------------------------------------------------------- 2095s Dec 27 20:05:33 TOTAL 40053 24034 40% 2095s Dec 27 20:05:33 11 features passed, 0 failed, 1 skipped 2095s Dec 27 20:05:33 44 scenarios passed, 0 failed, 5 skipped 2095s Dec 27 20:05:33 445 steps passed, 0 failed, 61 skipped, 0 undefined 2095s Dec 27 20:05:33 Took 7m14.159s 2095s ### End 16 acceptance-zookeeper -e dcs_failsafe_mode ### 2095s Stopping zookeeper (via systemctl): zookeeper.service. 2096s autopkgtest [20:05:34]: test acceptance-zookeeper: -----------------------] 2096s acceptance-zookeeper PASS 2096s autopkgtest [20:05:34]: test acceptance-zookeeper: - - - - - - - - - - results - - - - - - - - - - 2097s autopkgtest [20:05:35]: test acceptance-raft: preparing testbed 2164s autopkgtest [20:06:42]: testbed dpkg architecture: ppc64el 2164s autopkgtest [20:06:42]: testbed apt version: 2.9.18 2165s autopkgtest [20:06:43]: @@@@@@@@@@@@@@@@@@@@ test bed setup 2165s autopkgtest [20:06:43]: testbed release detected to be: plucky 2166s autopkgtest [20:06:44]: updating testbed package index (apt update) 2166s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [73.9 kB] 2166s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 2166s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 2166s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 2166s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [637 kB] 2167s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [11.5 kB] 2167s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [56.0 kB] 2167s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/restricted Sources [9708 B] 2167s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/main ppc64el Packages [57.9 kB] 2167s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/restricted ppc64el Packages [756 B] 2167s Get:11 http://ftpmaster.internal/ubuntu plucky-proposed/universe ppc64el Packages [498 kB] 2167s Get:12 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse ppc64el Packages [4256 B] 2167s Fetched 1348 kB in 1s (1424 kB/s) 2168s Reading package lists... 2168s Reading package lists... 2168s Building dependency tree... 2168s Reading state information... 2168s Calculating upgrade... 2169s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 2169s Reading package lists... 2169s Building dependency tree... 2169s Reading state information... 2169s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 2169s autopkgtest [20:06:47]: upgrading testbed (apt dist-upgrade and autopurge) 2169s Reading package lists... 2169s Building dependency tree... 2169s Reading state information... 2170s Calculating upgrade...Starting pkgProblemResolver with broken count: 0 2170s Starting 2 pkgProblemResolver with broken count: 0 2170s Done 2170s Entering ResolveByKeep 2170s 2170s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 2170s Reading package lists... 2171s Building dependency tree... 2171s Reading state information... 2171s Starting pkgProblemResolver with broken count: 0 2171s Starting 2 pkgProblemResolver with broken count: 0 2171s Done 2171s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 2174s Reading package lists... 2174s Building dependency tree... 2174s Reading state information... 2174s Starting pkgProblemResolver with broken count: 0 2174s Starting 2 pkgProblemResolver with broken count: 0 2174s Done 2174s The following NEW packages will be installed: 2174s fonts-font-awesome fonts-lato libio-pty-perl libipc-run-perl libjs-jquery 2174s libjs-sphinxdoc libjs-underscore libjson-perl libpq5 libpython3.13-minimal 2174s libpython3.13-stdlib libtime-duration-perl libtimedate-perl libxslt1.1 2174s moreutils patroni patroni-doc postgresql postgresql-16 postgresql-client-16 2174s postgresql-client-common postgresql-common python3-behave python3-cdiff 2174s python3-click python3-colorama python3-coverage python3-dateutil 2174s python3-parse python3-parse-type python3-prettytable python3-psutil 2174s python3-psycopg2 python3-pysyncobj python3-six python3-wcwidth python3-ydiff 2174s python3.13 python3.13-minimal sphinx-rtd-theme-common ssl-cert 2174s 0 upgraded, 41 newly installed, 0 to remove and 0 not upgraded. 2174s Need to get 31.7 MB of archives. 2174s After this operation, 121 MB of additional disk space will be used. 2174s Get:1 http://ftpmaster.internal/ubuntu plucky/main ppc64el fonts-lato all 2.015-1 [2781 kB] 2175s Get:2 http://ftpmaster.internal/ubuntu plucky/main ppc64el libjson-perl all 4.10000-1 [81.9 kB] 2175s Get:3 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql-client-common all 262 [36.7 kB] 2175s Get:4 http://ftpmaster.internal/ubuntu plucky/main ppc64el ssl-cert all 1.1.3ubuntu1 [18.7 kB] 2175s Get:5 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql-common all 262 [162 kB] 2175s Get:6 http://ftpmaster.internal/ubuntu plucky/main ppc64el libpython3.13-minimal ppc64el 3.13.1-2 [883 kB] 2175s Get:7 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3.13-minimal ppc64el 3.13.1-2 [2496 kB] 2175s Get:8 http://ftpmaster.internal/ubuntu plucky/main ppc64el fonts-font-awesome all 5.0.10+really4.7.0~dfsg-4.1 [516 kB] 2175s Get:9 http://ftpmaster.internal/ubuntu plucky/main ppc64el libio-pty-perl ppc64el 1:1.20-1build3 [32.0 kB] 2175s Get:10 http://ftpmaster.internal/ubuntu plucky/main ppc64el libipc-run-perl all 20231003.0-2 [91.5 kB] 2175s Get:11 http://ftpmaster.internal/ubuntu plucky/main ppc64el libjs-jquery all 3.6.1+dfsg+~3.5.14-1 [328 kB] 2175s Get:12 http://ftpmaster.internal/ubuntu plucky/main ppc64el libjs-underscore all 1.13.4~dfsg+~1.11.4-3 [118 kB] 2175s Get:13 http://ftpmaster.internal/ubuntu plucky-proposed/main ppc64el libjs-sphinxdoc all 8.1.3-3 [30.9 kB] 2175s Get:14 http://ftpmaster.internal/ubuntu plucky/main ppc64el libpq5 ppc64el 17.2-1 [173 kB] 2175s Get:15 http://ftpmaster.internal/ubuntu plucky/main ppc64el libpython3.13-stdlib ppc64el 3.13.1-2 [2131 kB] 2175s Get:16 http://ftpmaster.internal/ubuntu plucky/main ppc64el libtime-duration-perl all 1.21-2 [12.3 kB] 2175s Get:17 http://ftpmaster.internal/ubuntu plucky/main ppc64el libtimedate-perl all 2.3300-2 [34.0 kB] 2175s Get:18 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxslt1.1 ppc64el 1.1.39-0exp1ubuntu2 [191 kB] 2175s Get:19 http://ftpmaster.internal/ubuntu plucky/universe ppc64el moreutils ppc64el 0.69-1 [59.1 kB] 2175s Get:20 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-ydiff all 1.4.2-1 [19.0 kB] 2175s Get:21 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-cdiff all 1.4.2-1 [1778 B] 2175s Get:22 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-colorama all 0.4.6-4 [32.1 kB] 2175s Get:23 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-click all 8.1.7-2 [79.5 kB] 2175s Get:24 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-dateutil all 2.9.0-3 [80.2 kB] 2175s Get:25 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-wcwidth all 0.2.13+dfsg1-1 [26.3 kB] 2175s Get:26 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-prettytable all 3.12.0-1 [36.5 kB] 2175s Get:27 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-psutil ppc64el 5.9.8-2build3 [197 kB] 2175s Get:28 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-psycopg2 ppc64el 2.9.10-1 [160 kB] 2175s Get:29 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-pysyncobj all 0.3.12-1 [38.9 kB] 2175s Get:30 http://ftpmaster.internal/ubuntu plucky/universe ppc64el patroni all 3.3.4-1 [269 kB] 2175s Get:31 http://ftpmaster.internal/ubuntu plucky/main ppc64el sphinx-rtd-theme-common all 3.0.2+dfsg-1 [1014 kB] 2175s Get:32 http://ftpmaster.internal/ubuntu plucky/universe ppc64el patroni-doc all 3.3.4-1 [508 kB] 2175s Get:33 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql-client-16 ppc64el 16.4-3 [1400 kB] 2175s Get:34 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql-16 ppc64el 16.4-3 [16.6 MB] 2176s Get:35 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql all 16+262 [11.8 kB] 2176s Get:36 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-parse all 1.20.2-1 [27.0 kB] 2176s Get:37 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-six all 1.17.0-1 [13.2 kB] 2176s Get:38 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-parse-type all 0.6.4-1 [23.4 kB] 2176s Get:39 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-behave all 1.2.6-6 [98.6 kB] 2176s Get:40 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3.13 ppc64el 3.13.1-2 [729 kB] 2176s Get:41 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-coverage ppc64el 7.4.4+dfsg1-0ubuntu3 [151 kB] 2177s Preconfiguring packages ... 2177s Fetched 31.7 MB in 2s (14.8 MB/s) 2177s Selecting previously unselected package fonts-lato. 2177s (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 ... 73900 files and directories currently installed.) 2177s Preparing to unpack .../00-fonts-lato_2.015-1_all.deb ... 2177s Unpacking fonts-lato (2.015-1) ... 2177s Selecting previously unselected package libjson-perl. 2177s Preparing to unpack .../01-libjson-perl_4.10000-1_all.deb ... 2177s Unpacking libjson-perl (4.10000-1) ... 2177s Selecting previously unselected package postgresql-client-common. 2177s Preparing to unpack .../02-postgresql-client-common_262_all.deb ... 2177s Unpacking postgresql-client-common (262) ... 2177s Selecting previously unselected package ssl-cert. 2177s Preparing to unpack .../03-ssl-cert_1.1.3ubuntu1_all.deb ... 2177s Unpacking ssl-cert (1.1.3ubuntu1) ... 2177s Selecting previously unselected package postgresql-common. 2177s Preparing to unpack .../04-postgresql-common_262_all.deb ... 2177s Adding 'diversion of /usr/bin/pg_config to /usr/bin/pg_config.libpq-dev by postgresql-common' 2177s Unpacking postgresql-common (262) ... 2177s Selecting previously unselected package libpython3.13-minimal:ppc64el. 2177s Preparing to unpack .../05-libpython3.13-minimal_3.13.1-2_ppc64el.deb ... 2177s Unpacking libpython3.13-minimal:ppc64el (3.13.1-2) ... 2177s Selecting previously unselected package python3.13-minimal. 2177s Preparing to unpack .../06-python3.13-minimal_3.13.1-2_ppc64el.deb ... 2177s Unpacking python3.13-minimal (3.13.1-2) ... 2177s Selecting previously unselected package fonts-font-awesome. 2177s Preparing to unpack .../07-fonts-font-awesome_5.0.10+really4.7.0~dfsg-4.1_all.deb ... 2177s Unpacking fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ... 2177s Selecting previously unselected package libio-pty-perl. 2177s Preparing to unpack .../08-libio-pty-perl_1%3a1.20-1build3_ppc64el.deb ... 2177s Unpacking libio-pty-perl (1:1.20-1build3) ... 2177s Selecting previously unselected package libipc-run-perl. 2177s Preparing to unpack .../09-libipc-run-perl_20231003.0-2_all.deb ... 2177s Unpacking libipc-run-perl (20231003.0-2) ... 2178s Selecting previously unselected package libjs-jquery. 2178s Preparing to unpack .../10-libjs-jquery_3.6.1+dfsg+~3.5.14-1_all.deb ... 2178s Unpacking libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 2178s Selecting previously unselected package libjs-underscore. 2178s Preparing to unpack .../11-libjs-underscore_1.13.4~dfsg+~1.11.4-3_all.deb ... 2178s Unpacking libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 2178s Selecting previously unselected package libjs-sphinxdoc. 2178s Preparing to unpack .../12-libjs-sphinxdoc_8.1.3-3_all.deb ... 2178s Unpacking libjs-sphinxdoc (8.1.3-3) ... 2178s Selecting previously unselected package libpq5:ppc64el. 2178s Preparing to unpack .../13-libpq5_17.2-1_ppc64el.deb ... 2178s Unpacking libpq5:ppc64el (17.2-1) ... 2178s Selecting previously unselected package libpython3.13-stdlib:ppc64el. 2178s Preparing to unpack .../14-libpython3.13-stdlib_3.13.1-2_ppc64el.deb ... 2178s Unpacking libpython3.13-stdlib:ppc64el (3.13.1-2) ... 2178s Selecting previously unselected package libtime-duration-perl. 2178s Preparing to unpack .../15-libtime-duration-perl_1.21-2_all.deb ... 2178s Unpacking libtime-duration-perl (1.21-2) ... 2178s Selecting previously unselected package libtimedate-perl. 2178s Preparing to unpack .../16-libtimedate-perl_2.3300-2_all.deb ... 2178s Unpacking libtimedate-perl (2.3300-2) ... 2178s Selecting previously unselected package libxslt1.1:ppc64el. 2178s Preparing to unpack .../17-libxslt1.1_1.1.39-0exp1ubuntu2_ppc64el.deb ... 2178s Unpacking libxslt1.1:ppc64el (1.1.39-0exp1ubuntu2) ... 2178s Selecting previously unselected package moreutils. 2178s Preparing to unpack .../18-moreutils_0.69-1_ppc64el.deb ... 2178s Unpacking moreutils (0.69-1) ... 2178s Selecting previously unselected package python3-ydiff. 2178s Preparing to unpack .../19-python3-ydiff_1.4.2-1_all.deb ... 2178s Unpacking python3-ydiff (1.4.2-1) ... 2178s Selecting previously unselected package python3-cdiff. 2178s Preparing to unpack .../20-python3-cdiff_1.4.2-1_all.deb ... 2178s Unpacking python3-cdiff (1.4.2-1) ... 2178s Selecting previously unselected package python3-colorama. 2178s Preparing to unpack .../21-python3-colorama_0.4.6-4_all.deb ... 2178s Unpacking python3-colorama (0.4.6-4) ... 2178s Selecting previously unselected package python3-click. 2178s Preparing to unpack .../22-python3-click_8.1.7-2_all.deb ... 2178s Unpacking python3-click (8.1.7-2) ... 2178s Selecting previously unselected package python3-dateutil. 2178s Preparing to unpack .../23-python3-dateutil_2.9.0-3_all.deb ... 2178s Unpacking python3-dateutil (2.9.0-3) ... 2178s Selecting previously unselected package python3-wcwidth. 2178s Preparing to unpack .../24-python3-wcwidth_0.2.13+dfsg1-1_all.deb ... 2178s Unpacking python3-wcwidth (0.2.13+dfsg1-1) ... 2178s Selecting previously unselected package python3-prettytable. 2178s Preparing to unpack .../25-python3-prettytable_3.12.0-1_all.deb ... 2178s Unpacking python3-prettytable (3.12.0-1) ... 2178s Selecting previously unselected package python3-psutil. 2178s Preparing to unpack .../26-python3-psutil_5.9.8-2build3_ppc64el.deb ... 2178s Unpacking python3-psutil (5.9.8-2build3) ... 2178s Selecting previously unselected package python3-psycopg2. 2178s Preparing to unpack .../27-python3-psycopg2_2.9.10-1_ppc64el.deb ... 2178s Unpacking python3-psycopg2 (2.9.10-1) ... 2178s Selecting previously unselected package python3-pysyncobj. 2178s Preparing to unpack .../28-python3-pysyncobj_0.3.12-1_all.deb ... 2178s Unpacking python3-pysyncobj (0.3.12-1) ... 2178s Selecting previously unselected package patroni. 2178s Preparing to unpack .../29-patroni_3.3.4-1_all.deb ... 2178s Unpacking patroni (3.3.4-1) ... 2178s Selecting previously unselected package sphinx-rtd-theme-common. 2178s Preparing to unpack .../30-sphinx-rtd-theme-common_3.0.2+dfsg-1_all.deb ... 2178s Unpacking sphinx-rtd-theme-common (3.0.2+dfsg-1) ... 2178s Selecting previously unselected package patroni-doc. 2178s Preparing to unpack .../31-patroni-doc_3.3.4-1_all.deb ... 2178s Unpacking patroni-doc (3.3.4-1) ... 2178s Selecting previously unselected package postgresql-client-16. 2178s Preparing to unpack .../32-postgresql-client-16_16.4-3_ppc64el.deb ... 2178s Unpacking postgresql-client-16 (16.4-3) ... 2178s Selecting previously unselected package postgresql-16. 2178s Preparing to unpack .../33-postgresql-16_16.4-3_ppc64el.deb ... 2178s Unpacking postgresql-16 (16.4-3) ... 2178s Selecting previously unselected package postgresql. 2178s Preparing to unpack .../34-postgresql_16+262_all.deb ... 2178s Unpacking postgresql (16+262) ... 2178s Selecting previously unselected package python3-parse. 2178s Preparing to unpack .../35-python3-parse_1.20.2-1_all.deb ... 2178s Unpacking python3-parse (1.20.2-1) ... 2178s Selecting previously unselected package python3-six. 2178s Preparing to unpack .../36-python3-six_1.17.0-1_all.deb ... 2178s Unpacking python3-six (1.17.0-1) ... 2178s Selecting previously unselected package python3-parse-type. 2178s Preparing to unpack .../37-python3-parse-type_0.6.4-1_all.deb ... 2178s Unpacking python3-parse-type (0.6.4-1) ... 2178s Selecting previously unselected package python3-behave. 2178s Preparing to unpack .../38-python3-behave_1.2.6-6_all.deb ... 2178s Unpacking python3-behave (1.2.6-6) ... 2178s Selecting previously unselected package python3.13. 2179s Preparing to unpack .../39-python3.13_3.13.1-2_ppc64el.deb ... 2179s Unpacking python3.13 (3.13.1-2) ... 2179s Selecting previously unselected package python3-coverage. 2179s Preparing to unpack .../40-python3-coverage_7.4.4+dfsg1-0ubuntu3_ppc64el.deb ... 2179s Unpacking python3-coverage (7.4.4+dfsg1-0ubuntu3) ... 2179s Setting up postgresql-client-common (262) ... 2179s Setting up fonts-lato (2.015-1) ... 2179s Setting up libio-pty-perl (1:1.20-1build3) ... 2179s Setting up python3-pysyncobj (0.3.12-1) ... 2179s Setting up python3-colorama (0.4.6-4) ... 2179s Setting up python3-ydiff (1.4.2-1) ... 2179s Setting up libpq5:ppc64el (17.2-1) ... 2179s Setting up python3-click (8.1.7-2) ... 2179s Setting up python3-psutil (5.9.8-2build3) ... 2180s Setting up python3-six (1.17.0-1) ... 2180s Setting up libpython3.13-minimal:ppc64el (3.13.1-2) ... 2180s Setting up python3-wcwidth (0.2.13+dfsg1-1) ... 2180s Setting up ssl-cert (1.1.3ubuntu1) ... 2181s Created symlink '/etc/systemd/system/multi-user.target.wants/ssl-cert.service' → '/usr/lib/systemd/system/ssl-cert.service'. 2181s Setting up python3-psycopg2 (2.9.10-1) ... 2181s Setting up libipc-run-perl (20231003.0-2) ... 2181s Setting up libtime-duration-perl (1.21-2) ... 2181s Setting up libtimedate-perl (2.3300-2) ... 2181s Setting up python3-parse (1.20.2-1) ... 2181s Setting up libjson-perl (4.10000-1) ... 2181s Setting up libxslt1.1:ppc64el (1.1.39-0exp1ubuntu2) ... 2181s Setting up python3.13-minimal (3.13.1-2) ... 2182s Setting up python3-dateutil (2.9.0-3) ... 2182s Setting up libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 2182s Setting up python3-prettytable (3.12.0-1) ... 2183s Setting up libpython3.13-stdlib:ppc64el (3.13.1-2) ... 2183s Setting up fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ... 2183s Setting up sphinx-rtd-theme-common (3.0.2+dfsg-1) ... 2183s Setting up libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 2183s Setting up moreutils (0.69-1) ... 2183s Setting up python3.13 (3.13.1-2) ... 2184s Setting up postgresql-client-16 (16.4-3) ... 2184s 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 2184s Setting up python3-cdiff (1.4.2-1) ... 2184s Setting up python3-coverage (7.4.4+dfsg1-0ubuntu3) ... 2184s Setting up python3-parse-type (0.6.4-1) ... 2185s Setting up postgresql-common (262) ... 2185s Creating config file /etc/postgresql-common/createcluster.conf with new version 2185s Building PostgreSQL dictionaries from installed myspell/hunspell packages... 2185s Removing obsolete dictionary files: 2186s Created symlink '/etc/systemd/system/multi-user.target.wants/postgresql.service' → '/usr/lib/systemd/system/postgresql.service'. 2186s Setting up libjs-sphinxdoc (8.1.3-3) ... 2186s Setting up python3-behave (1.2.6-6) ... 2186s /usr/lib/python3/dist-packages/behave/formatter/ansi_escapes.py:57: SyntaxWarning: invalid escape sequence '\[' 2186s _ANSI_ESCAPE_PATTERN = re.compile(u"\x1b\[\d+[mA]", re.UNICODE) 2186s /usr/lib/python3/dist-packages/behave/matchers.py:267: SyntaxWarning: invalid escape sequence '\d' 2186s """Registers a custom type that will be available to "parse" 2186s /usr/lib/python3/dist-packages/behave/formatter/ansi_escapes.py:57: SyntaxWarning: invalid escape sequence '\[' 2186s _ANSI_ESCAPE_PATTERN = re.compile(u"\x1b\[\d+[mA]", re.UNICODE) 2186s /usr/lib/python3/dist-packages/behave/matchers.py:267: SyntaxWarning: invalid escape sequence '\d' 2186s """Registers a custom type that will be available to "parse" 2186s Setting up patroni (3.3.4-1) ... 2186s Created symlink '/etc/systemd/system/multi-user.target.wants/patroni.service' → '/usr/lib/systemd/system/patroni.service'. 2187s Setting up postgresql-16 (16.4-3) ... 2188s Creating new PostgreSQL cluster 16/main ... 2188s /usr/lib/postgresql/16/bin/initdb -D /var/lib/postgresql/16/main --auth-local peer --auth-host scram-sha-256 --no-instructions 2188s The files belonging to this database system will be owned by user "postgres". 2188s This user must also own the server process. 2188s 2188s The database cluster will be initialized with locale "C.UTF-8". 2188s The default database encoding has accordingly been set to "UTF8". 2188s The default text search configuration will be set to "english". 2188s 2188s Data page checksums are disabled. 2188s 2188s fixing permissions on existing directory /var/lib/postgresql/16/main ... ok 2188s creating subdirectories ... ok 2188s selecting dynamic shared memory implementation ... posix 2188s selecting default max_connections ... 100 2188s selecting default shared_buffers ... 128MB 2188s selecting default time zone ... Etc/UTC 2188s creating configuration files ... ok 2188s running bootstrap script ... ok 2188s performing post-bootstrap initialization ... ok 2188s syncing data to disk ... ok 2192s Setting up patroni-doc (3.3.4-1) ... 2192s Setting up postgresql (16+262) ... 2192s Processing triggers for systemd (257-2ubuntu1) ... 2192s Processing triggers for man-db (2.13.0-1) ... 2193s Processing triggers for libc-bin (2.40-4ubuntu1) ... 2196s autopkgtest [20:07:14]: test acceptance-raft: debian/tests/acceptance raft 2196s autopkgtest [20:07:14]: test acceptance-raft: [----------------------- 2196s dpkg-architecture: warning: cannot determine CC system type, falling back to default (native compilation) 2196s ++ ls -1r /usr/lib/postgresql/ 2196s ### PostgreSQL 16 acceptance-raft ### 2196s + for PG_VERSION in $(ls -1r /usr/lib/postgresql/) 2196s + '[' 16 == 10 -o 16 == 11 ']' 2196s + echo '### PostgreSQL 16 acceptance-raft ###' 2196s + bash -c 'set -o pipefail; ETCD_UNSUPPORTED_ARCH= 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' 2202s Dec 27 20:07:20 Feature: basic replication # features/basic_replication.feature:1 2202s Dec 27 20:07:20 We should check that the basic bootstrapping, replication and failover works. 2202s Dec 27 20:07:20 Scenario: check replication of a single table # features/basic_replication.feature:4 2202s Dec 27 20:07:20 Given I start postgres0 # features/steps/basic_replication.py:8 2206s Dec 27 20:07:24 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 2207s Dec 27 20:07:25 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 2207s Dec 27 20:07:25 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 2207s Dec 27 20:07:25 Then I receive a response code 200 # features/steps/patroni_api.py:98 2207s Dec 27 20:07:25 When I start postgres1 # features/steps/basic_replication.py:8 2217s Dec 27 20:07:35 And I configure and start postgres2 with a tag replicatefrom postgres0 # features/steps/cascading_replication.py:7 2221s Dec 27 20:07:39 And "sync" key in DCS has leader=postgres0 after 20 seconds # features/steps/cascading_replication.py:23 2221s Dec 27 20:07:39 And I add the table foo to postgres0 # features/steps/basic_replication.py:54 2221s Dec 27 20:07:39 Then table foo is present on postgres1 after 20 seconds # features/steps/basic_replication.py:93 2222s Dec 27 20:07:40 Then table foo is present on postgres2 after 20 seconds # features/steps/basic_replication.py:93 2222s Dec 27 20:07:40 2222s Dec 27 20:07:40 Scenario: check restart of sync replica # features/basic_replication.feature:17 2222s Dec 27 20:07:40 Given I shut down postgres2 # features/steps/basic_replication.py:29 2223s Dec 27 20:07:41 Then "sync" key in DCS has sync_standby=postgres1 after 5 seconds # features/steps/cascading_replication.py:23 2223s Dec 27 20:07:41 When I start postgres2 # features/steps/basic_replication.py:8 2226s Dec 27 20:07:44 And I shut down postgres1 # features/steps/basic_replication.py:29 2229s Dec 27 20:07:47 Then "sync" key in DCS has sync_standby=postgres2 after 10 seconds # features/steps/cascading_replication.py:23 2230s Dec 27 20:07:48 When I start postgres1 # features/steps/basic_replication.py:8 2233s Dec 27 20:07:51 Then "members/postgres1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 2234s Dec 27 20:07:52 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 2234s Dec 27 20:07:52 And Status code on GET http://127.0.0.1:8009/async is 200 after 3 seconds # features/steps/patroni_api.py:142 2234s Dec 27 20:07:52 2234s Dec 27 20:07:52 Scenario: check stuck sync replica # features/basic_replication.feature:28 2234s Dec 27 20:07: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 2234s Dec 27 20:07:52 Then I receive a response code 200 # features/steps/patroni_api.py:98 2234s Dec 27 20:07:52 And I create table on postgres0 # features/steps/basic_replication.py:73 2234s Dec 27 20:07:52 And table mytest is present on postgres1 after 2 seconds # features/steps/basic_replication.py:93 2234s Dec 27 20:07:52 And table mytest is present on postgres2 after 2 seconds # features/steps/basic_replication.py:93 2234s Dec 27 20:07:52 When I pause wal replay on postgres2 # features/steps/basic_replication.py:64 2234s Dec 27 20:07:52 And I load data on postgres0 # features/steps/basic_replication.py:84 2235s Dec 27 20:07:53 Then "sync" key in DCS has sync_standby=postgres1 after 15 seconds # features/steps/cascading_replication.py:23 2238s Dec 27 20:07:56 And I resume wal replay on postgres2 # features/steps/basic_replication.py:64 2238s Dec 27 20:07:56 And Status code on GET http://127.0.0.1:8009/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 2238s Dec 27 20:07:56 And Status code on GET http://127.0.0.1:8010/async is 200 after 3 seconds # features/steps/patroni_api.py:142 2238s Dec 27 20:07:56 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 2238s Dec 27 20:07:56 Then I receive a response code 200 # features/steps/patroni_api.py:98 2238s Dec 27 20:07:56 And I drop table on postgres0 # features/steps/basic_replication.py:73 2238s Dec 27 20:07:56 2238s Dec 27 20:07:56 Scenario: check multi sync replication # features/basic_replication.feature:44 2238s Dec 27 20:07:56 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 2238s Dec 27 20:07:56 Then I receive a response code 200 # features/steps/patroni_api.py:98 2238s Dec 27 20:07:56 Then "sync" key in DCS has sync_standby=postgres1,postgres2 after 10 seconds # features/steps/cascading_replication.py:23 2242s Dec 27 20:08:00 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 2242s Dec 27 20:08:00 And Status code on GET http://127.0.0.1:8009/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 2242s Dec 27 20:08:00 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 2242s Dec 27 20:08:00 Then I receive a response code 200 # features/steps/patroni_api.py:98 2242s Dec 27 20:08:00 And I shut down postgres1 # features/steps/basic_replication.py:29 2245s Dec 27 20:08:03 Then "sync" key in DCS has sync_standby=postgres2 after 10 seconds # features/steps/cascading_replication.py:23 2246s Dec 27 20:08:04 When I start postgres1 # features/steps/basic_replication.py:8 2251s Dec 27 20:08:08 Then "members/postgres1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 2251s Dec 27 20:08:08 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:142 2251s Dec 27 20:08:09 And Status code on GET http://127.0.0.1:8009/async is 200 after 3 seconds # features/steps/patroni_api.py:142 2251s Dec 27 20:08:09 2251s Dec 27 20:08:09 Scenario: check the basic failover in synchronous mode # features/basic_replication.feature:59 2251s Dec 27 20:08:09 Given I run patronictl.py pause batman # features/steps/patroni_api.py:86 2253s Dec 27 20:08:11 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 2253s Dec 27 20:08:11 When I sleep for 2 seconds # features/steps/patroni_api.py:39 2255s Dec 27 20:08:13 And I shut down postgres0 # features/steps/basic_replication.py:29 2256s Dec 27 20:08:14 And I run patronictl.py resume batman # features/steps/patroni_api.py:86 2258s Dec 27 20:08:16 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 2258s Dec 27 20:08:16 And postgres2 role is the primary after 24 seconds # features/steps/basic_replication.py:105 2276s Dec 27 20:08:34 And Response on GET http://127.0.0.1:8010/history contains recovery after 10 seconds # features/steps/patroni_api.py:156 2278s Dec 27 20:08:36 And there is a postgres2_cb.log with "on_role_change master batman" in postgres2 data directory # features/steps/cascading_replication.py:12 2278s Dec 27 20:08: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 2278s Dec 27 20:08:36 Then I receive a response code 200 # features/steps/patroni_api.py:98 2278s Dec 27 20:08:36 When I add the table bar to postgres2 # features/steps/basic_replication.py:54 2278s Dec 27 20:08:36 Then table bar is present on postgres1 after 20 seconds # features/steps/basic_replication.py:93 2281s Dec 27 20:08: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 2281s Dec 27 20:08:39 2281s Dec 27 20:08:39 Scenario: check rejoin of the former primary with pg_rewind # features/basic_replication.feature:75 2281s Dec 27 20:08:39 Given I add the table splitbrain to postgres0 # features/steps/basic_replication.py:54 2281s Dec 27 20:08:39 And I start postgres0 # features/steps/basic_replication.py:8 2281s Dec 27 20:08:39 Then postgres0 role is the secondary after 20 seconds # features/steps/basic_replication.py:105 2289s Dec 27 20:08:47 When I add the table buz to postgres2 # features/steps/basic_replication.py:54 2289s Dec 27 20:08:47 Then table buz is present on postgres0 after 20 seconds # features/steps/basic_replication.py:93 2289s SKIP Scenario check graceful rejection when two nodes have the same name: Flaky test with Raft 2306s Dec 27 20:09:04 2306s Dec 27 20:09:04 @reject-duplicate-name 2306s Dec 27 20:09:04 Scenario: check graceful rejection when two nodes have the same name # features/basic_replication.feature:83 2306s Dec 27 20:09:04 Given I start duplicate postgres0 on port 8011 # None 2306s Dec 27 20:09:04 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 2306s Dec 27 20:09:04 2306s Dec 27 20:09:04 Feature: cascading replication # features/cascading_replication.feature:1 2306s Dec 27 20:09:04 We should check that patroni can do base backup and streaming from the replica 2306s Dec 27 20:09:04 Scenario: check a base backup and streaming replication from a replica # features/cascading_replication.feature:4 2306s Dec 27 20:09:04 Given I start postgres0 # features/steps/basic_replication.py:8 2310s Dec 27 20:09:08 And postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 2311s Dec 27 20:09:09 And I configure and start postgres1 with a tag clonefrom true # features/steps/cascading_replication.py:7 2315s Dec 27 20:09:13 And replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:112 2316s Dec 27 20:09:14 And I create label with "postgres0" in postgres0 data directory # features/steps/cascading_replication.py:18 2316s Dec 27 20:09:14 And I create label with "postgres1" in postgres1 data directory # features/steps/cascading_replication.py:18 2316s Dec 27 20:09:14 And "members/postgres1" key in DCS has state=running after 12 seconds # features/steps/cascading_replication.py:23 2316s Dec 27 20:09:14 And I configure and start postgres2 with a tag replicatefrom postgres1 # features/steps/cascading_replication.py:7 2320s Dec 27 20:09:18 Then replication works from postgres0 to postgres2 after 30 seconds # features/steps/basic_replication.py:112 2321s Dec 27 20:09:19 And there is a label with "postgres1" in postgres2 data directory # features/steps/cascading_replication.py:12 2336s Dec 27 20:09:34 2336s SKIP FEATURE citus: Citus extenstion isn't available 2336s SKIP Scenario check that worker cluster is registered in the coordinator: Citus extenstion isn't available 2336s SKIP Scenario coordinator failover updates pg_dist_node: Citus extenstion isn't available 2336s SKIP Scenario worker switchover doesn't break client queries on the coordinator: Citus extenstion isn't available 2336s SKIP Scenario worker primary restart doesn't break client queries on the coordinator: Citus extenstion isn't available 2336s 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 2336s Dec 27 20:09:34 Feature: citus # features/citus.feature:1 2336s Dec 27 20:09:34 We should check that coordinator discovers and registers workers and clients don't have errors when worker cluster switches over 2336s Dec 27 20:09:34 Scenario: check that worker cluster is registered in the coordinator # features/citus.feature:4 2336s Dec 27 20:09:34 Given I start postgres0 in citus group 0 # None 2336s Dec 27 20:09:34 And I start postgres2 in citus group 1 # None 2336s Dec 27 20:09:34 Then postgres0 is a leader in a group 0 after 10 seconds # None 2336s Dec 27 20:09:34 And postgres2 is a leader in a group 1 after 10 seconds # None 2336s Dec 27 20:09:34 When I start postgres1 in citus group 0 # None 2336s Dec 27 20:09:34 And I start postgres3 in citus group 1 # None 2336s Dec 27 20:09:34 Then replication works from postgres0 to postgres1 after 15 seconds # None 2336s Dec 27 20:09:34 Then replication works from postgres2 to postgres3 after 15 seconds # None 2336s Dec 27 20:09:34 And postgres0 is registered in the postgres0 as the primary in group 0 after 5 seconds # None 2336s Dec 27 20:09:34 And postgres2 is registered in the postgres0 as the primary in group 1 after 5 seconds # None 2336s Dec 27 20:09:34 2336s Dec 27 20:09:34 Scenario: coordinator failover updates pg_dist_node # features/citus.feature:16 2336s Dec 27 20:09:34 Given I run patronictl.py failover batman --group 0 --candidate postgres1 --force # None 2336s Dec 27 20:09:34 Then postgres1 role is the primary after 10 seconds # None 2336s Dec 27 20:09:34 And "members/postgres0" key in a group 0 in DCS has state=running after 15 seconds # None 2336s Dec 27 20:09:34 And replication works from postgres1 to postgres0 after 15 seconds # None 2336s Dec 27 20:09:34 And postgres1 is registered in the postgres2 as the primary in group 0 after 5 seconds # None 2336s Dec 27 20:09:34 And "sync" key in a group 0 in DCS has sync_standby=postgres0 after 15 seconds # None 2336s Dec 27 20:09:34 When I run patronictl.py switchover batman --group 0 --candidate postgres0 --force # None 2336s Dec 27 20:09:34 Then postgres0 role is the primary after 10 seconds # None 2336s Dec 27 20:09:34 And replication works from postgres0 to postgres1 after 15 seconds # None 2336s Dec 27 20:09:34 And postgres0 is registered in the postgres2 as the primary in group 0 after 5 seconds # None 2336s Dec 27 20:09:34 And "sync" key in a group 0 in DCS has sync_standby=postgres1 after 15 seconds # None 2336s Dec 27 20:09:34 2336s Dec 27 20:09:34 Scenario: worker switchover doesn't break client queries on the coordinator # features/citus.feature:29 2336s Dec 27 20:09:34 Given I create a distributed table on postgres0 # None 2336s Dec 27 20:09:34 And I start a thread inserting data on postgres0 # None 2336s Dec 27 20:09:34 When I run patronictl.py switchover batman --group 1 --force # None 2336s Dec 27 20:09:34 Then I receive a response returncode 0 # None 2336s Dec 27 20:09:34 And postgres3 role is the primary after 10 seconds # None 2336s Dec 27 20:09:34 And "members/postgres2" key in a group 1 in DCS has state=running after 15 seconds # None 2336s Dec 27 20:09:34 And replication works from postgres3 to postgres2 after 15 seconds # None 2336s Dec 27 20:09:34 And postgres3 is registered in the postgres0 as the primary in group 1 after 5 seconds # None 2336s Dec 27 20:09:34 And "sync" key in a group 1 in DCS has sync_standby=postgres2 after 15 seconds # None 2336s Dec 27 20:09:34 And a thread is still alive # None 2336s Dec 27 20:09:34 When I run patronictl.py switchover batman --group 1 --force # None 2336s Dec 27 20:09:34 Then I receive a response returncode 0 # None 2336s Dec 27 20:09:34 And postgres2 role is the primary after 10 seconds # None 2336s Dec 27 20:09:34 And replication works from postgres2 to postgres3 after 15 seconds # None 2336s Dec 27 20:09:34 And postgres2 is registered in the postgres0 as the primary in group 1 after 5 seconds # None 2336s Dec 27 20:09:34 And "sync" key in a group 1 in DCS has sync_standby=postgres3 after 15 seconds # None 2336s Dec 27 20:09:34 And a thread is still alive # None 2336s Dec 27 20:09:34 When I stop a thread # None 2336s Dec 27 20:09:34 Then a distributed table on postgres0 has expected rows # None 2336s Dec 27 20:09:34 2336s Dec 27 20:09:34 Scenario: worker primary restart doesn't break client queries on the coordinator # features/citus.feature:50 2336s Dec 27 20:09:34 Given I cleanup a distributed table on postgres0 # None 2336s Dec 27 20:09:34 And I start a thread inserting data on postgres0 # None 2336s Dec 27 20:09:34 When I run patronictl.py restart batman postgres2 --group 1 --force # None 2336s Dec 27 20:09:34 Then I receive a response returncode 0 # None 2336s Dec 27 20:09:34 And postgres2 role is the primary after 10 seconds # None 2336s Dec 27 20:09:34 And replication works from postgres2 to postgres3 after 15 seconds # None 2336s Dec 27 20:09:34 And postgres2 is registered in the postgres0 as the primary in group 1 after 5 seconds # None 2336s Dec 27 20:09:34 And a thread is still alive # None 2336s Dec 27 20:09:34 When I stop a thread # None 2336s Dec 27 20:09:34 Then a distributed table on postgres0 has expected rows # None 2343s Dec 27 20:09:41 2343s Dec 27 20:09:41 Scenario: check that in-flight transaction is rolled back after timeout when other workers need to change pg_dist_node # features/citus.feature:62 2343s Dec 27 20:09:41 Given I start postgres4 in citus group 2 # None 2343s Dec 27 20:09:41 Then postgres4 is a leader in a group 2 after 10 seconds # None 2343s Dec 27 20:09:41 And "members/postgres4" key in a group 2 in DCS has role=master after 3 seconds # None 2343s Dec 27 20:09:41 When I run patronictl.py edit-config batman --group 2 -s ttl=20 --force # None 2343s Dec 27 20:09:41 Then I receive a response returncode 0 # None 2343s Dec 27 20:09:41 And I receive a response output "+ttl: 20" # None 2343s Dec 27 20:09:41 Then postgres4 is registered in the postgres2 as the primary in group 2 after 5 seconds # None 2343s Dec 27 20:09:41 When I shut down postgres4 # None 2343s Dec 27 20:09:41 Then there is a transaction in progress on postgres0 changing pg_dist_node after 5 seconds # None 2343s Dec 27 20:09:41 When I run patronictl.py restart batman postgres2 --group 1 --force # None 2343s Dec 27 20:09:41 Then a transaction finishes in 20 seconds # None 2343s Dec 27 20:09:41 2343s Dec 27 20:09:41 Feature: custom bootstrap # features/custom_bootstrap.feature:1 2343s Dec 27 20:09:41 We should check that patroni can bootstrap a new cluster from a backup 2343s Dec 27 20:09:41 Scenario: clone existing cluster using pg_basebackup # features/custom_bootstrap.feature:4 2343s Dec 27 20:09:41 Given I start postgres0 # features/steps/basic_replication.py:8 2353s Dec 27 20:09:51 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 2354s Dec 27 20:09:52 When I add the table foo to postgres0 # features/steps/basic_replication.py:54 2354s Dec 27 20:09:52 And I start postgres1 in a cluster batman1 as a clone of postgres0 # features/steps/custom_bootstrap.py:6 2358s Dec 27 20:09:56 Then postgres1 is a leader of batman1 after 10 seconds # features/steps/custom_bootstrap.py:16 2359s Dec 27 20:09:57 Then table foo is present on postgres1 after 10 seconds # features/steps/basic_replication.py:93 2359s Dec 27 20:09:57 2359s Dec 27 20:09:57 Scenario: make a backup and do a restore into a new cluster # features/custom_bootstrap.feature:12 2359s Dec 27 20:09:57 Given I add the table bar to postgres1 # features/steps/basic_replication.py:54 2359s Dec 27 20:09:57 And I do a backup of postgres1 # features/steps/custom_bootstrap.py:25 2359s Dec 27 20:09:57 When I start postgres2 in a cluster batman2 from backup # features/steps/custom_bootstrap.py:11 2364s Dec 27 20:10:02 Then postgres2 is a leader of batman2 after 30 seconds # features/steps/custom_bootstrap.py:16 2365s Dec 27 20:10:03 And table bar is present on postgres2 after 10 seconds # features/steps/basic_replication.py:93 2383s Dec 27 20:10:21 2383s Dec 27 20:10:21 Feature: dcs failsafe mode # features/dcs_failsafe_mode.feature:1 2383s Dec 27 20:10:21 We should check the basic dcs failsafe mode functioning 2383s Dec 27 20:10:21 Scenario: check failsafe mode can be successfully enabled # features/dcs_failsafe_mode.feature:4 2383s Dec 27 20:10:21 Given I start postgres0 # features/steps/basic_replication.py:8 2387s Dec 27 20:10:25 And postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 2388s Dec 27 20:10:26 Then "config" key in DCS has ttl=30 after 10 seconds # features/steps/cascading_replication.py:23 2388s Dec 27 20:10:26 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 2388s Dec 27 20:10:26 Then I receive a response code 200 # features/steps/patroni_api.py:98 2388s Dec 27 20:10:26 And Response on GET http://127.0.0.1:8008/failsafe contains postgres0 after 10 seconds # features/steps/patroni_api.py:156 2388s Dec 27 20:10:26 When I issue a GET request to http://127.0.0.1:8008/failsafe # features/steps/patroni_api.py:61 2388s Dec 27 20:10:26 Then I receive a response code 200 # features/steps/patroni_api.py:98 2388s Dec 27 20:10:26 And I receive a response postgres0 http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:98 2388s Dec 27 20:10:26 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 2388s Dec 27 20:10:26 Then I receive a response code 200 # features/steps/patroni_api.py:98 2388s Dec 27 20:10:26 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 2388s Dec 27 20:10:26 Then I receive a response code 200 # features/steps/patroni_api.py:98 2388s Dec 27 20:10:26 2388s Dec 27 20:10:26 @dcs-failsafe 2388s Dec 27 20:10:26 Scenario: check one-node cluster is functioning while DCS is down # features/dcs_failsafe_mode.feature:20 2388s Dec 27 20:10:26 Given DCS is down # features/steps/dcs_failsafe_mode.py:4 2388s Dec 27 20:10:26 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 2393s Dec 27 20:10:30 And postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:105 2393s Dec 27 20:10:30 2393s Dec 27 20:10:30 @dcs-failsafe 2393s Dec 27 20:10:30 Scenario: check new replica isn't promoted when leader is down and DCS is up # features/dcs_failsafe_mode.feature:26 2393s Dec 27 20:10:30 Given DCS is up # features/steps/dcs_failsafe_mode.py:9 2393s Dec 27 20:10:30 When I do a backup of postgres0 # features/steps/custom_bootstrap.py:25 2393s Dec 27 20:10:31 And I shut down postgres0 # features/steps/basic_replication.py:29 2395s Dec 27 20:10:33 When I start postgres1 in a cluster batman from backup with no_leader # features/steps/dcs_failsafe_mode.py:14 2399s Dec 27 20:10:37 Then postgres1 role is the replica after 12 seconds # features/steps/basic_replication.py:105 2399s Dec 27 20:10:37 2399s Dec 27 20:10:37 Scenario: check leader and replica are both in /failsafe key after leader is back # features/dcs_failsafe_mode.feature:33 2399s Dec 27 20:10:37 Given I start postgres0 # features/steps/basic_replication.py:8 2402s Dec 27 20:10:40 And I start postgres1 # features/steps/basic_replication.py:8 2402s Dec 27 20:10:40 Then "members/postgres0" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 2403s Dec 27 20:10:41 And "members/postgres1" key in DCS has state=running after 2 seconds # features/steps/cascading_replication.py:23 2403s Dec 27 20:10:41 And Response on GET http://127.0.0.1:8009/failsafe contains postgres1 after 10 seconds # features/steps/patroni_api.py:156 2408s Dec 27 20:10:46 When I issue a GET request to http://127.0.0.1:8009/failsafe # features/steps/patroni_api.py:61 2408s Dec 27 20:10:46 Then I receive a response code 200 # features/steps/patroni_api.py:98 2408s Dec 27 20:10:46 And I receive a response postgres0 http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:98 2408s Dec 27 20:10:46 And I receive a response postgres1 http://127.0.0.1:8009/patroni # features/steps/patroni_api.py:98 2408s Dec 27 20:10:46 2408s Dec 27 20:10:46 @dcs-failsafe @slot-advance 2408s Dec 27 20:10:46 Scenario: check leader and replica are functioning while DCS is down # features/dcs_failsafe_mode.feature:46 2408s Dec 27 20:10:46 Given I get all changes from physical slot dcs_slot_1 on postgres0 # features/steps/slots.py:75 2408s Dec 27 20:10:46 Then physical slot dcs_slot_1 is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 2412s Dec 27 20:10:50 And logical slot dcs_slot_0 is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 2412s Dec 27 20:10:50 And DCS is down # features/steps/dcs_failsafe_mode.py:4 2412s Dec 27 20:10:50 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 2418s Dec 27 20:10:56 Then postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:105 2418s Dec 27 20:10:56 And postgres1 role is the replica after 2 seconds # features/steps/basic_replication.py:105 2418s Dec 27 20:10:56 And replication works from postgres0 to postgres1 after 10 seconds # features/steps/basic_replication.py:112 2418s Dec 27 20:10:56 When I get all changes from logical slot dcs_slot_0 on postgres0 # features/steps/slots.py:70 2418s Dec 27 20:10:56 And I get all changes from physical slot dcs_slot_1 on postgres0 # features/steps/slots.py:75 2418s Dec 27 20:10:56 Then logical slot dcs_slot_0 is in sync between postgres0 and postgres1 after 20 seconds # features/steps/slots.py:51 2425s Dec 27 20:11:03 And physical slot dcs_slot_1 is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 2425s Dec 27 20:11:03 2425s Dec 27 20:11:03 @dcs-failsafe 2425s Dec 27 20:11:03 Scenario: check primary is demoted when one replica is shut down and DCS is down # features/dcs_failsafe_mode.feature:61 2425s Dec 27 20:11:03 Given DCS is down # features/steps/dcs_failsafe_mode.py:4 2425s Dec 27 20:11:03 And I kill postgres1 # features/steps/basic_replication.py:34 2426s Dec 27 20:11:04 And I kill postmaster on postgres1 # features/steps/basic_replication.py:44 2426s Dec 27 20:11:04 waiting for server to shut down.... done 2426s Dec 27 20:11:04 server stopped 2426s Dec 27 20:11:04 Then postgres0 role is the replica after 12 seconds # features/steps/basic_replication.py:105 2428s Dec 27 20:11:06 2428s Dec 27 20:11:06 @dcs-failsafe 2428s Dec 27 20:11:06 Scenario: check known replica is promoted when leader is down and DCS is up # features/dcs_failsafe_mode.feature:68 2428s Dec 27 20:11:06 Given I kill postgres0 # features/steps/basic_replication.py:34 2429s Dec 27 20:11:07 And I shut down postmaster on postgres0 # features/steps/basic_replication.py:39 2429s Dec 27 20:11:07 waiting for server to shut down.... done 2429s Dec 27 20:11:07 server stopped 2429s Dec 27 20:11:07 And DCS is up # features/steps/dcs_failsafe_mode.py:9 2429s Dec 27 20:11:07 When I start postgres1 # features/steps/basic_replication.py:8 2433s Dec 27 20:11:11 Then "members/postgres1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 2433s Dec 27 20:11:11 And postgres1 role is the primary after 25 seconds # features/steps/basic_replication.py:105 2436s Dec 27 20:11:14 2436s Dec 27 20:11:14 @dcs-failsafe 2436s Dec 27 20:11:14 Scenario: scale to three-node cluster # features/dcs_failsafe_mode.feature:77 2436s Dec 27 20:11:14 Given I start postgres0 # features/steps/basic_replication.py:8 2440s Dec 27 20:11:18 And I configure and start postgres2 with a tag replicatefrom postgres0 # features/steps/cascading_replication.py:7 2444s Dec 27 20:11:22 Then "members/postgres2" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 2445s Dec 27 20:11:23 And "members/postgres0" key in DCS has state=running after 20 seconds # features/steps/cascading_replication.py:23 2445s Dec 27 20:11:23 And Response on GET http://127.0.0.1:8008/failsafe contains postgres2 after 10 seconds # features/steps/patroni_api.py:156 2445s Dec 27 20:11:23 And replication works from postgres1 to postgres0 after 10 seconds # features/steps/basic_replication.py:112 2446s Dec 27 20:11:24 And replication works from postgres1 to postgres2 after 10 seconds # features/steps/basic_replication.py:112 2447s Dec 27 20:11:25 2447s Dec 27 20:11:25 @dcs-failsafe @slot-advance 2447s Dec 27 20:11:25 Scenario: make sure permanent slots exist on replicas # features/dcs_failsafe_mode.feature:88 2447s Dec 27 20:11:25 Given I issue a PATCH request to http://127.0.0.1:8009/config with {"slots":{"postgres2":0,"dcs_slot_0":null,"dcs_slot_2":{"type":"logical","database":"postgres","plugin":"test_decoding"}}} # features/steps/patroni_api.py:71 2447s Dec 27 20:11:25 Then logical slot dcs_slot_2 is in sync between postgres1 and postgres0 after 20 seconds # features/steps/slots.py:51 2453s Dec 27 20:11:31 And logical slot dcs_slot_2 is in sync between postgres1 and postgres2 after 20 seconds # features/steps/slots.py:51 2454s Dec 27 20:11:32 When I get all changes from physical slot dcs_slot_1 on postgres1 # features/steps/slots.py:75 2454s Dec 27 20:11:32 Then physical slot dcs_slot_1 is in sync between postgres1 and postgres0 after 10 seconds # features/steps/slots.py:51 2456s Dec 27 20:11:33 And physical slot dcs_slot_1 is in sync between postgres1 and postgres2 after 10 seconds # features/steps/slots.py:51 2456s Dec 27 20:11:33 And physical slot postgres0 is in sync between postgres1 and postgres2 after 10 seconds # features/steps/slots.py:51 2456s Dec 27 20:11:33 And physical slot postgres2 is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 2456s Dec 27 20:11:33 2456s Dec 27 20:11:33 @dcs-failsafe 2456s Dec 27 20:11:33 Scenario: check three-node cluster is functioning while DCS is down # features/dcs_failsafe_mode.feature:99 2456s Dec 27 20:11:33 Given DCS is down # features/steps/dcs_failsafe_mode.py:4 2456s Dec 27 20:11:33 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 2461s Dec 27 20:11:39 Then postgres1 role is the primary after 10 seconds # features/steps/basic_replication.py:105 2461s Dec 27 20:11:39 And postgres0 role is the replica after 2 seconds # features/steps/basic_replication.py:105 2461s Dec 27 20:11:39 And postgres2 role is the replica after 2 seconds # features/steps/basic_replication.py:105 2461s Dec 27 20:11:39 2461s Dec 27 20:11:39 @dcs-failsafe @slot-advance 2461s Dec 27 20:11:39 Scenario: check that permanent slots are in sync between nodes while DCS is down # features/dcs_failsafe_mode.feature:108 2461s Dec 27 20:11:39 Given replication works from postgres1 to postgres0 after 10 seconds # features/steps/basic_replication.py:112 2461s Dec 27 20:11:39 And replication works from postgres1 to postgres2 after 10 seconds # features/steps/basic_replication.py:112 2462s Dec 27 20:11:40 When I get all changes from logical slot dcs_slot_2 on postgres1 # features/steps/slots.py:70 2462s Dec 27 20:11:40 And I get all changes from physical slot dcs_slot_1 on postgres1 # features/steps/slots.py:75 2462s Dec 27 20:11:40 Then logical slot dcs_slot_2 is in sync between postgres1 and postgres0 after 20 seconds # features/steps/slots.py:51 2468s Dec 27 20:11:46 And logical slot dcs_slot_2 is in sync between postgres1 and postgres2 after 20 seconds # features/steps/slots.py:51 2468s Dec 27 20:11:46 And physical slot dcs_slot_1 is in sync between postgres1 and postgres0 after 10 seconds # features/steps/slots.py:51 2468s Dec 27 20:11:46 And physical slot dcs_slot_1 is in sync between postgres1 and postgres2 after 10 seconds # features/steps/slots.py:51 2468s Dec 27 20:11:46 And physical slot postgres0 is in sync between postgres1 and postgres2 after 10 seconds # features/steps/slots.py:51 2468s Dec 27 20:11:46 And physical slot postgres2 is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 2479s Dec 27 20:11:57 2479s Dec 27 20:11:57 Feature: ignored slots # features/ignored_slots.feature:1 2479s Dec 27 20:11:57 2479s Dec 27 20:11:57 Scenario: check ignored slots aren't removed on failover/switchover # features/ignored_slots.feature:2 2479s Dec 27 20:11:57 Given I start postgres1 # features/steps/basic_replication.py:8 2483s Dec 27 20:12:01 Then postgres1 is a leader after 10 seconds # features/steps/patroni_api.py:29 2483s Dec 27 20:12:01 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 2483s Dec 27 20:12:01 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 2484s Dec 27 20:12:01 Then I receive a response code 200 # features/steps/patroni_api.py:98 2484s Dec 27 20:12:02 And Response on GET http://127.0.0.1:8009/config contains ignore_slots after 10 seconds # features/steps/patroni_api.py:156 2484s Dec 27 20:12:02 When I shut down postgres1 # features/steps/basic_replication.py:29 2486s Dec 27 20:12:04 And I start postgres1 # features/steps/basic_replication.py:8 2489s Dec 27 20:12:07 Then postgres1 is a leader after 10 seconds # features/steps/patroni_api.py:29 2492s Dec 27 20:12:10 And "members/postgres1" key in DCS has role=master after 10 seconds # features/steps/cascading_replication.py:23 2493s Dec 27 20:12:11 And postgres1 role is the primary after 20 seconds # features/steps/basic_replication.py:105 2493s Dec 27 20:12:11 When I create a logical replication slot unmanaged_slot_0 on postgres1 with the test_decoding plugin # features/steps/slots.py:8 2493s Dec 27 20:12:11 And I create a logical replication slot unmanaged_slot_1 on postgres1 with the test_decoding plugin # features/steps/slots.py:8 2493s Dec 27 20:12:11 And I create a logical replication slot unmanaged_slot_2 on postgres1 with the test_decoding plugin # features/steps/slots.py:8 2493s Dec 27 20:12:11 And I create a logical replication slot unmanaged_slot_3 on postgres1 with the test_decoding plugin # features/steps/slots.py:8 2493s Dec 27 20:12:11 And I create a logical replication slot dummy_slot on postgres1 with the test_decoding plugin # features/steps/slots.py:8 2493s Dec 27 20:12:11 Then postgres1 has a logical replication slot named unmanaged_slot_0 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 2493s Dec 27 20:12:11 And postgres1 has a logical replication slot named unmanaged_slot_1 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 2493s Dec 27 20:12:11 And postgres1 has a logical replication slot named unmanaged_slot_2 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 2493s Dec 27 20:12:11 And postgres1 has a logical replication slot named unmanaged_slot_3 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 2493s Dec 27 20:12:11 When I start postgres0 # features/steps/basic_replication.py:8 2497s Dec 27 20:12:15 Then "members/postgres0" key in DCS has role=replica after 10 seconds # features/steps/cascading_replication.py:23 2497s Dec 27 20:12:15 And postgres0 role is the secondary after 20 seconds # features/steps/basic_replication.py:105 2497s Dec 27 20:12:15 And replication works from postgres1 to postgres0 after 20 seconds # features/steps/basic_replication.py:112 2498s Dec 27 20:12:16 When I shut down postgres1 # features/steps/basic_replication.py:29 2500s Dec 27 20:12:18 Then "members/postgres0" key in DCS has role=master after 10 seconds # features/steps/cascading_replication.py:23 2501s Dec 27 20:12:19 When I start postgres1 # features/steps/basic_replication.py:8 2505s Dec 27 20:12:23 Then postgres1 role is the secondary after 20 seconds # features/steps/basic_replication.py:105 2505s Dec 27 20:12:23 And "members/postgres1" key in DCS has role=replica after 10 seconds # features/steps/cascading_replication.py:23 2505s Dec 27 20:12:23 And I sleep for 2 seconds # features/steps/patroni_api.py:39 2507s Dec 27 20:12:25 And postgres1 has a logical replication slot named unmanaged_slot_0 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 2507s Dec 27 20:12:25 And postgres1 has a logical replication slot named unmanaged_slot_1 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 2507s Dec 27 20:12:25 And postgres1 has a logical replication slot named unmanaged_slot_2 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 2507s Dec 27 20:12:25 And postgres1 has a logical replication slot named unmanaged_slot_3 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 2507s Dec 27 20:12:25 And postgres1 does not have a replication slot named dummy_slot # features/steps/slots.py:40 2507s Dec 27 20:12:25 When I shut down postgres0 # features/steps/basic_replication.py:29 2509s Dec 27 20:12:27 Then "members/postgres1" key in DCS has role=master after 10 seconds # features/steps/cascading_replication.py:23 2510s Dec 27 20:12:28 And postgres1 has a logical replication slot named unmanaged_slot_0 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 2510s Dec 27 20:12:28 And postgres1 has a logical replication slot named unmanaged_slot_1 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 2510s Dec 27 20:12:28 And postgres1 has a logical replication slot named unmanaged_slot_2 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 2510s Dec 27 20:12:28 And postgres1 has a logical replication slot named unmanaged_slot_3 with the test_decoding plugin after 2 seconds # features/steps/slots.py:19 2518s Dec 27 20:12:36 2518s Dec 27 20:12:36 Feature: nostream node # features/nostream_node.feature:1 2518s Dec 27 20:12:36 2518s Dec 27 20:12:36 Scenario: check nostream node is recovering from archive # features/nostream_node.feature:3 2518s Dec 27 20:12:36 When I start postgres0 # features/steps/basic_replication.py:8 2522s Dec 27 20:12:40 And I configure and start postgres1 with a tag nostream true # features/steps/cascading_replication.py:7 2526s Dec 27 20:12:44 Then "members/postgres1" key in DCS has replication_state=in archive recovery after 10 seconds # features/steps/cascading_replication.py:23 2526s Dec 27 20:12:44 And replication works from postgres0 to postgres1 after 30 seconds # features/steps/basic_replication.py:112 2531s Dec 27 20:12:49 2531s Dec 27 20:12:49 @slot-advance 2531s Dec 27 20:12:49 Scenario: check permanent logical replication slots are not copied # features/nostream_node.feature:10 2531s Dec 27 20:12:49 When I issue a PATCH request to http://127.0.0.1:8008/config with {"postgresql": {"parameters": {"wal_level": "logical"}}, "slots":{"test_logical":{"type":"logical","database":"postgres","plugin":"test_decoding"}}} # features/steps/patroni_api.py:71 2531s Dec 27 20:12:49 Then I receive a response code 200 # features/steps/patroni_api.py:98 2531s Dec 27 20:12:49 When I run patronictl.py restart batman postgres0 --force # features/steps/patroni_api.py:86 2534s Dec 27 20:12:52 Then postgres0 has a logical replication slot named test_logical with the test_decoding plugin after 10 seconds # features/steps/slots.py:19 2535s Dec 27 20:12:53 When I configure and start postgres2 with a tag replicatefrom postgres1 # features/steps/cascading_replication.py:7 2539s Dec 27 20:12:57 Then "members/postgres2" key in DCS has replication_state=streaming after 10 seconds # features/steps/cascading_replication.py:23 2545s Dec 27 20:13:03 And postgres1 does not have a replication slot named test_logical # features/steps/slots.py:40 2545s Dec 27 20:13:03 And postgres2 does not have a replication slot named test_logical # features/steps/slots.py:40 2561s Dec 27 20:13:19 2561s Dec 27 20:13:19 Feature: patroni api # features/patroni_api.feature:1 2561s Dec 27 20:13:19 We should check that patroni correctly responds to valid and not-valid API requests. 2561s Dec 27 20:13:19 Scenario: check API requests on a stand-alone server # features/patroni_api.feature:4 2561s Dec 27 20:13:19 Given I start postgres0 # features/steps/basic_replication.py:8 2565s Dec 27 20:13:23 And postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 2565s Dec 27 20:13:23 When I issue a GET request to http://127.0.0.1:8008/ # features/steps/patroni_api.py:61 2565s Dec 27 20:13:23 Then I receive a response code 200 # features/steps/patroni_api.py:98 2565s Dec 27 20:13:23 And I receive a response state running # features/steps/patroni_api.py:98 2565s Dec 27 20:13:23 And I receive a response role master # features/steps/patroni_api.py:98 2565s Dec 27 20:13:23 When I issue a GET request to http://127.0.0.1:8008/standby_leader # features/steps/patroni_api.py:61 2565s Dec 27 20:13:23 Then I receive a response code 503 # features/steps/patroni_api.py:98 2565s Dec 27 20:13:23 When I issue a GET request to http://127.0.0.1:8008/health # features/steps/patroni_api.py:61 2565s Dec 27 20:13:23 Then I receive a response code 200 # features/steps/patroni_api.py:98 2565s Dec 27 20:13:23 When I issue a GET request to http://127.0.0.1:8008/replica # features/steps/patroni_api.py:61 2565s Dec 27 20:13:23 Then I receive a response code 503 # features/steps/patroni_api.py:98 2565s Dec 27 20:13:23 When I issue a POST request to http://127.0.0.1:8008/reinitialize with {"force": true} # features/steps/patroni_api.py:71 2565s Dec 27 20:13:23 Then I receive a response code 503 # features/steps/patroni_api.py:98 2565s Dec 27 20:13:23 And I receive a response text I am the leader, can not reinitialize # features/steps/patroni_api.py:98 2565s Dec 27 20:13:23 When I run patronictl.py switchover batman --master postgres0 --force # features/steps/patroni_api.py:86 2567s Dec 27 20:13:25 Then I receive a response returncode 1 # features/steps/patroni_api.py:98 2567s Dec 27 20:13:25 And I receive a response output "Error: No candidates found to switchover to" # features/steps/patroni_api.py:98 2567s Dec 27 20:13:25 When I issue a POST request to http://127.0.0.1:8008/switchover with {"leader": "postgres0"} # features/steps/patroni_api.py:71 2567s Dec 27 20:13:25 Then I receive a response code 412 # features/steps/patroni_api.py:98 2567s Dec 27 20:13:25 And I receive a response text switchover is not possible: cluster does not have members except leader # features/steps/patroni_api.py:98 2567s Dec 27 20:13:25 When I issue an empty POST request to http://127.0.0.1:8008/failover # features/steps/patroni_api.py:66 2567s Dec 27 20:13:25 Then I receive a response code 400 # features/steps/patroni_api.py:98 2567s Dec 27 20:13:25 When I issue a POST request to http://127.0.0.1:8008/failover with {"foo": "bar"} # features/steps/patroni_api.py:71 2567s Dec 27 20:13:25 Then I receive a response code 400 # features/steps/patroni_api.py:98 2567s Dec 27 20:13:25 And I receive a response text "Failover could be performed only to a specific candidate" # features/steps/patroni_api.py:98 2567s Dec 27 20:13:25 2567s Dec 27 20:13:25 Scenario: check local configuration reload # features/patroni_api.feature:32 2567s Dec 27 20:13:25 Given I add tag new_tag new_value to postgres0 config # features/steps/patroni_api.py:137 2567s Dec 27 20:13:25 And I issue an empty POST request to http://127.0.0.1:8008/reload # features/steps/patroni_api.py:66 2567s Dec 27 20:13:25 Then I receive a response code 202 # features/steps/patroni_api.py:98 2567s Dec 27 20:13:25 2567s Dec 27 20:13:25 Scenario: check dynamic configuration change via DCS # features/patroni_api.feature:37 2567s Dec 27 20:13:25 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 2567s Dec 27 20:13:25 Then I receive a response code 200 # features/steps/patroni_api.py:98 2567s Dec 27 20:13:25 And Response on GET http://127.0.0.1:8008/patroni contains pending_restart after 11 seconds # features/steps/patroni_api.py:156 2569s Dec 27 20:13:27 When I issue a GET request to http://127.0.0.1:8008/config # features/steps/patroni_api.py:61 2569s Dec 27 20:13:27 Then I receive a response code 200 # features/steps/patroni_api.py:98 2569s Dec 27 20:13:27 And I receive a response ttl 20 # features/steps/patroni_api.py:98 2569s Dec 27 20:13:27 When I issue a GET request to http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:61 2570s Dec 27 20:13:28 Then I receive a response code 200 # features/steps/patroni_api.py:98 2570s Dec 27 20:13:28 And I receive a response tags {'new_tag': 'new_value'} # features/steps/patroni_api.py:98 2570s Dec 27 20:13:28 And I sleep for 4 seconds # features/steps/patroni_api.py:39 2574s Dec 27 20:13:32 2574s Dec 27 20:13:32 Scenario: check the scheduled restart # features/patroni_api.feature:49 2574s Dec 27 20:13:32 Given I run patronictl.py edit-config -p 'superuser_reserved_connections=6' --force batman # features/steps/patroni_api.py:86 2575s Dec 27 20:13:33 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 2575s Dec 27 20:13:33 And I receive a response output "+ superuser_reserved_connections: 6" # features/steps/patroni_api.py:98 2575s Dec 27 20:13:33 And Response on GET http://127.0.0.1:8008/patroni contains pending_restart after 5 seconds # features/steps/patroni_api.py:156 2575s Dec 27 20:13:33 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 2576s Dec 27 20:13:34 Then I receive a response code 202 # features/steps/patroni_api.py:98 2576s Dec 27 20:13:34 And I sleep for 8 seconds # features/steps/patroni_api.py:39 2584s Dec 27 20:13:42 And Response on GET http://127.0.0.1:8008/patroni contains pending_restart after 10 seconds # features/steps/patroni_api.py:156 2584s Dec 27 20:13:42 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 2584s Dec 27 20:13:42 Then I receive a response code 202 # features/steps/patroni_api.py:98 2584s Dec 27 20:13:42 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 2590s Dec 27 20:13:48 And postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:105 2591s Dec 27 20:13:49 2591s Dec 27 20:13:49 Scenario: check API requests for the primary-replica pair in the pause mode # features/patroni_api.feature:63 2591s Dec 27 20:13:49 Given I start postgres1 # features/steps/basic_replication.py:8 2595s Dec 27 20:13:53 Then replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:112 2596s Dec 27 20:13:54 When I run patronictl.py pause batman # features/steps/patroni_api.py:86 2598s Dec 27 20:13:56 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 2598s Dec 27 20:13:56 When I kill postmaster on postgres1 # features/steps/basic_replication.py:44 2598s Dec 27 20:13:56 waiting for server to shut down.... done 2598s Dec 27 20:13:56 server stopped 2598s Dec 27 20:13:56 And I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:61 2598s Dec 27 20:13:56 Then I receive a response code 503 # features/steps/patroni_api.py:98 2598s Dec 27 20:13:56 And "members/postgres1" key in DCS has state=stopped after 10 seconds # features/steps/cascading_replication.py:23 2599s Dec 27 20:13:57 When I run patronictl.py restart batman postgres1 --force # features/steps/patroni_api.py:86 2603s Dec 27 20:14:01 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 2603s Dec 27 20:14:01 Then replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:112 2604s Dec 27 20:14:02 And I sleep for 2 seconds # features/steps/patroni_api.py:39 2606s Dec 27 20:14:04 When I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:61 2606s Dec 27 20:14:04 Then I receive a response code 200 # features/steps/patroni_api.py:98 2606s Dec 27 20:14:04 And I receive a response state running # features/steps/patroni_api.py:98 2606s Dec 27 20:14:04 And I receive a response role replica # features/steps/patroni_api.py:98 2606s Dec 27 20:14:04 When I run patronictl.py reinit batman postgres1 --force --wait # features/steps/patroni_api.py:86 2610s Dec 27 20:14:08 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 2610s Dec 27 20:14:08 And I receive a response output "Success: reinitialize for member postgres1" # features/steps/patroni_api.py:98 2610s Dec 27 20:14:08 And postgres1 role is the secondary after 30 seconds # features/steps/basic_replication.py:105 2611s Dec 27 20:14:09 And replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:112 2611s Dec 27 20:14:09 When I run patronictl.py restart batman postgres0 --force # features/steps/patroni_api.py:86 2614s Dec 27 20:14:12 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 2614s Dec 27 20:14:12 And I receive a response output "Success: restart on member postgres0" # features/steps/patroni_api.py:98 2614s Dec 27 20:14:12 And postgres0 role is the primary after 5 seconds # features/steps/basic_replication.py:105 2615s Dec 27 20:14:13 2615s Dec 27 20:14:13 Scenario: check the switchover via the API in the pause mode # features/patroni_api.feature:90 2615s Dec 27 20:14:13 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 2617s Dec 27 20:14:15 Then I receive a response code 200 # features/steps/patroni_api.py:98 2617s Dec 27 20:14:15 And postgres1 is a leader after 5 seconds # features/steps/patroni_api.py:29 2617s Dec 27 20:14:15 And postgres1 role is the primary after 10 seconds # features/steps/basic_replication.py:105 2617s Dec 27 20:14:15 And postgres0 role is the secondary after 10 seconds # features/steps/basic_replication.py:105 2622s Dec 27 20:14:20 And replication works from postgres1 to postgres0 after 20 seconds # features/steps/basic_replication.py:112 2622s Dec 27 20:14:20 And "members/postgres0" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 2623s Dec 27 20:14:21 When I issue a GET request to http://127.0.0.1:8008/primary # features/steps/patroni_api.py:61 2623s Dec 27 20:14:21 Then I receive a response code 503 # features/steps/patroni_api.py:98 2623s Dec 27 20:14:21 When I issue a GET request to http://127.0.0.1:8008/replica # features/steps/patroni_api.py:61 2623s Dec 27 20:14:21 Then I receive a response code 200 # features/steps/patroni_api.py:98 2623s Dec 27 20:14:21 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:61 2623s Dec 27 20:14:21 Then I receive a response code 200 # features/steps/patroni_api.py:98 2623s Dec 27 20:14:21 When I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:61 2623s Dec 27 20:14:21 Then I receive a response code 503 # features/steps/patroni_api.py:98 2623s Dec 27 20:14:21 2623s Dec 27 20:14:21 Scenario: check the scheduled switchover # features/patroni_api.feature:107 2623s Dec 27 20:14:21 Given I issue a scheduled switchover from postgres1 to postgres0 in 10 seconds # features/steps/patroni_api.py:117 2625s Dec 27 20:14:23 Then I receive a response returncode 1 # features/steps/patroni_api.py:98 2625s Dec 27 20:14:23 And I receive a response output "Can't schedule switchover in the paused state" # features/steps/patroni_api.py:98 2625s Dec 27 20:14:23 When I run patronictl.py resume batman # features/steps/patroni_api.py:86 2627s Dec 27 20:14:25 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 2627s Dec 27 20:14:25 Given I issue a scheduled switchover from postgres1 to postgres0 in 10 seconds # features/steps/patroni_api.py:117 2629s Dec 27 20:14:27 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 2629s Dec 27 20:14:27 And postgres0 is a leader after 20 seconds # features/steps/patroni_api.py:29 2639s Dec 27 20:14:37 And postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:105 2639s Dec 27 20:14:37 And postgres1 role is the secondary after 10 seconds # features/steps/basic_replication.py:105 2642s Dec 27 20:14:40 And replication works from postgres0 to postgres1 after 25 seconds # features/steps/basic_replication.py:112 2642s Dec 27 20:14:40 And "members/postgres1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 2643s Dec 27 20:14:41 When I issue a GET request to http://127.0.0.1:8008/primary # features/steps/patroni_api.py:61 2643s Dec 27 20:14:41 Then I receive a response code 200 # features/steps/patroni_api.py:98 2643s Dec 27 20:14:41 When I issue a GET request to http://127.0.0.1:8008/replica # features/steps/patroni_api.py:61 2643s Dec 27 20:14:41 Then I receive a response code 503 # features/steps/patroni_api.py:98 2643s Dec 27 20:14:41 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:61 2644s Dec 27 20:14:42 Then I receive a response code 503 # features/steps/patroni_api.py:98 2644s Dec 27 20:14:42 When I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:61 2644s Dec 27 20:14:42 Then I receive a response code 200 # features/steps/patroni_api.py:98 2654s Dec 27 20:14:52 2654s Dec 27 20:14:52 Feature: permanent slots # features/permanent_slots.feature:1 2654s Dec 27 20:14:52 2654s Dec 27 20:14:52 Scenario: check that physical permanent slots are created # features/permanent_slots.feature:2 2654s Dec 27 20:14:52 Given I start postgres0 # features/steps/basic_replication.py:8 2658s Dec 27 20:14:56 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 2658s Dec 27 20:14:56 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 2658s Dec 27 20:14:56 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 2658s Dec 27 20:14:56 Then I receive a response code 200 # features/steps/patroni_api.py:98 2658s Dec 27 20:14:56 And Response on GET http://127.0.0.1:8008/config contains slots after 10 seconds # features/steps/patroni_api.py:156 2658s Dec 27 20:14:56 When I start postgres1 # features/steps/basic_replication.py:8 2668s Dec 27 20:15:06 And I configure and start postgres2 with a tag nofailover true # features/steps/cascading_replication.py:7 2672s Dec 27 20:15:10 And I configure and start postgres3 with a tag replicatefrom postgres2 # features/steps/cascading_replication.py:7 2682s Dec 27 20:15:20 Then postgres0 has a physical replication slot named test_physical after 10 seconds # features/steps/slots.py:80 2682s Dec 27 20:15:20 And postgres0 has a physical replication slot named postgres1 after 10 seconds # features/steps/slots.py:80 2682s Dec 27 20:15:20 And postgres0 has a physical replication slot named postgres2 after 10 seconds # features/steps/slots.py:80 2682s Dec 27 20:15:20 And postgres2 has a physical replication slot named postgres3 after 10 seconds # features/steps/slots.py:80 2682s Dec 27 20:15:20 And postgres2 does not have a replication slot named test_physical # features/steps/slots.py:40 2682s Dec 27 20:15:20 2682s Dec 27 20:15:20 @slot-advance 2682s Dec 27 20:15:20 Scenario: check that logical permanent slots are created # features/permanent_slots.feature:19 2682s Dec 27 20:15:20 Given I run patronictl.py restart batman postgres0 --force # features/steps/patroni_api.py:86 2686s Dec 27 20:15:24 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 2686s Dec 27 20:15:24 Then postgres0 has a logical replication slot named test_logical with the test_decoding plugin after 10 seconds # features/steps/slots.py:19 2687s Dec 27 20:15:25 2687s Dec 27 20:15:25 @slot-advance 2687s Dec 27 20:15:25 Scenario: check that permanent slots are created on replicas # features/permanent_slots.feature:25 2687s Dec 27 20:15:25 Given postgres1 has a logical replication slot named test_logical with the test_decoding plugin after 10 seconds # features/steps/slots.py:19 2690s Dec 27 20:15:28 Then Logical slot test_logical is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 2690s Dec 27 20:15:28 And Logical slot test_logical is in sync between postgres0 and postgres3 after 10 seconds # features/steps/slots.py:51 2691s Dec 27 20:15:29 And postgres1 has a physical replication slot named test_physical after 2 seconds # features/steps/slots.py:80 2691s Dec 27 20:15:29 And postgres2 does not have a replication slot named test_logical # features/steps/slots.py:40 2691s Dec 27 20:15:29 And postgres3 has a physical replication slot named test_physical after 2 seconds # features/steps/slots.py:80 2691s Dec 27 20:15:29 2691s Dec 27 20:15:29 @slot-advance 2691s Dec 27 20:15:29 Scenario: check permanent physical slots that match with member names # features/permanent_slots.feature:34 2691s Dec 27 20:15:29 Given postgres0 has a physical replication slot named postgres3 after 2 seconds # features/steps/slots.py:80 2691s Dec 27 20:15:29 And postgres1 has a physical replication slot named postgres0 after 2 seconds # features/steps/slots.py:80 2691s Dec 27 20:15:29 And postgres1 has a physical replication slot named postgres3 after 2 seconds # features/steps/slots.py:80 2691s Dec 27 20:15:29 And postgres2 does not have a replication slot named postgres0 # features/steps/slots.py:40 2691s Dec 27 20:15:29 And postgres2 does not have a replication slot named postgres1 # features/steps/slots.py:40 2691s Dec 27 20:15:29 And postgres2 has a physical replication slot named postgres3 after 2 seconds # features/steps/slots.py:80 2691s Dec 27 20:15:29 And postgres1 does not have a replication slot named postgres2 # features/steps/slots.py:40 2692s Dec 27 20:15:29 And postgres3 does not have a replication slot named postgres2 # features/steps/slots.py:40 2692s Dec 27 20:15:29 2692s Dec 27 20:15:29 @slot-advance 2692s Dec 27 20:15:29 Scenario: check that permanent slots are advanced on replicas # features/permanent_slots.feature:45 2692s Dec 27 20:15:29 Given I add the table replicate_me to postgres0 # features/steps/basic_replication.py:54 2692s Dec 27 20:15:30 When I get all changes from logical slot test_logical on postgres0 # features/steps/slots.py:70 2692s Dec 27 20:15:30 And I get all changes from physical slot test_physical on postgres0 # features/steps/slots.py:75 2692s Dec 27 20:15:30 Then Logical slot test_logical is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 2694s Dec 27 20:15:32 And Physical slot test_physical is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 2694s Dec 27 20:15:32 And Logical slot test_logical is in sync between postgres0 and postgres3 after 10 seconds # features/steps/slots.py:51 2694s Dec 27 20:15:32 And Physical slot test_physical is in sync between postgres0 and postgres3 after 10 seconds # features/steps/slots.py:51 2694s Dec 27 20:15:32 And Physical slot postgres3 is in sync between postgres2 and postgres0 after 20 seconds # features/steps/slots.py:51 2695s Dec 27 20:15:33 And Physical slot postgres3 is in sync between postgres2 and postgres1 after 10 seconds # features/steps/slots.py:51 2695s Dec 27 20:15:33 And postgres1 does not have a replication slot named postgres2 # features/steps/slots.py:40 2695s Dec 27 20:15:33 And postgres3 does not have a replication slot named postgres2 # features/steps/slots.py:40 2695s Dec 27 20:15:33 2695s Dec 27 20:15:33 @slot-advance 2695s Dec 27 20:15:33 Scenario: check that only permanent slots are written to the /status key # features/permanent_slots.feature:59 2695s Dec 27 20:15:33 Given "status" key in DCS has test_physical in slots # features/steps/slots.py:116 2695s Dec 27 20:15:33 And "status" key in DCS has postgres0 in slots # features/steps/slots.py:116 2695s Dec 27 20:15:33 And "status" key in DCS has postgres1 in slots # features/steps/slots.py:116 2695s Dec 27 20:15:33 And "status" key in DCS does not have postgres2 in slots # features/steps/slots.py:122 2695s Dec 27 20:15:33 And "status" key in DCS has postgres3 in slots # features/steps/slots.py:116 2695s Dec 27 20:15:33 2695s Dec 27 20:15:33 Scenario: check permanent physical replication slot after failover # features/permanent_slots.feature:66 2695s Dec 27 20:15:33 Given I shut down postgres3 # features/steps/basic_replication.py:29 2696s Dec 27 20:15:34 And I shut down postgres2 # features/steps/basic_replication.py:29 2697s Dec 27 20:15:35 And I shut down postgres0 # features/steps/basic_replication.py:29 2699s Dec 27 20:15:37 Then postgres1 has a physical replication slot named test_physical after 10 seconds # features/steps/slots.py:80 2699s Dec 27 20:15:37 And postgres1 has a physical replication slot named postgres0 after 10 seconds # features/steps/slots.py:80 2699s Dec 27 20:15:37 And postgres1 has a physical replication slot named postgres3 after 10 seconds # features/steps/slots.py:80 2699s Dec 27 20:15:37 When I start postgres0 # features/steps/basic_replication.py:8 2702s Dec 27 20:15:40 Then postgres0 role is the replica after 20 seconds # features/steps/basic_replication.py:105 2702s Dec 27 20:15:40 And physical replication slot named postgres1 on postgres0 has no xmin value after 10 seconds # features/steps/slots.py:96 2703s Dec 27 20:15:41 And physical replication slot named postgres2 on postgres0 has no xmin value after 10 seconds # features/steps/slots.py:96 2716s Dec 27 20:15:54 2716s Dec 27 20:15:54 Feature: priority replication # features/priority_failover.feature:1 2716s Dec 27 20:15:54 We should check that we can give nodes priority during failover 2716s Dec 27 20:15:54 Scenario: check failover priority 0 prevents leaderships # features/priority_failover.feature:4 2716s Dec 27 20:15:54 Given I configure and start postgres0 with a tag failover_priority 1 # features/steps/cascading_replication.py:7 2726s Dec 27 20:16:04 And I configure and start postgres1 with a tag failover_priority 0 # features/steps/cascading_replication.py:7 2736s Dec 27 20:16:14 Then replication works from postgres0 to postgres1 after 20 seconds # features/steps/basic_replication.py:112 2737s Dec 27 20:16:15 When I shut down postgres0 # features/steps/basic_replication.py:29 2739s Dec 27 20:16:17 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:121 2741s Dec 27 20:16:19 Then postgres1 role is the secondary after 10 seconds # features/steps/basic_replication.py:105 2741s Dec 27 20:16:19 When I start postgres0 # features/steps/basic_replication.py:8 2744s Dec 27 20:16:22 Then postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:105 2748s Dec 27 20:16:26 2748s Dec 27 20:16:26 Scenario: check higher failover priority is respected # features/priority_failover.feature:14 2748s Dec 27 20:16:26 Given I configure and start postgres2 with a tag failover_priority 1 # features/steps/cascading_replication.py:7 2752s Dec 27 20:16:30 And I configure and start postgres3 with a tag failover_priority 2 # features/steps/cascading_replication.py:7 2756s Dec 27 20:16:34 Then replication works from postgres0 to postgres2 after 20 seconds # features/steps/basic_replication.py:112 2758s Dec 27 20:16:36 And replication works from postgres0 to postgres3 after 20 seconds # features/steps/basic_replication.py:112 2758s Dec 27 20:16:36 When I shut down postgres0 # features/steps/basic_replication.py:29 2760s Dec 27 20:16:38 Then postgres3 role is the primary after 10 seconds # features/steps/basic_replication.py:105 2760s Dec 27 20:16:38 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:121 2760s Dec 27 20:16:38 2760s Dec 27 20:16:38 Scenario: check conflicting configuration handling # features/priority_failover.feature:23 2760s Dec 27 20:16:38 When I set nofailover tag in postgres2 config # features/steps/patroni_api.py:131 2760s Dec 27 20:16:38 And I issue an empty POST request to http://127.0.0.1:8010/reload # features/steps/patroni_api.py:66 2760s Dec 27 20:16:38 Then I receive a response code 202 # features/steps/patroni_api.py:98 2760s Dec 27 20:16:38 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:121 2761s Dec 27 20:16:39 And "members/postgres2" key in DCS has tags={'failover_priority': '1', 'nofailover': True} after 10 seconds # features/steps/cascading_replication.py:23 2762s Dec 27 20:16:40 When I issue a POST request to http://127.0.0.1:8010/failover with {"candidate": "postgres2"} # features/steps/patroni_api.py:71 2762s Dec 27 20:16:40 Then I receive a response code 412 # features/steps/patroni_api.py:98 2762s Dec 27 20:16:40 And I receive a response text "failover is not possible: no good candidates have been found" # features/steps/patroni_api.py:98 2762s Dec 27 20:16:40 When I reset nofailover tag in postgres1 config # features/steps/patroni_api.py:131 2762s Dec 27 20:16:40 And I issue an empty POST request to http://127.0.0.1:8009/reload # features/steps/patroni_api.py:66 2762s Dec 27 20:16:40 Then I receive a response code 202 # features/steps/patroni_api.py:98 2762s Dec 27 20:16:40 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:121 2764s Dec 27 20:16:42 And "members/postgres1" key in DCS has tags={'failover_priority': '0', 'nofailover': False} after 10 seconds # features/steps/cascading_replication.py:23 2765s Dec 27 20:16:43 And I issue a POST request to http://127.0.0.1:8009/failover with {"candidate": "postgres1"} # features/steps/patroni_api.py:71 2768s Dec 27 20:16:46 Then I receive a response code 200 # features/steps/patroni_api.py:98 2768s Dec 27 20:16:46 And postgres1 role is the primary after 10 seconds # features/steps/basic_replication.py:105 2781s Dec 27 20:16:59 2781s Dec 27 20:16:59 Feature: recovery # features/recovery.feature:1 2781s Dec 27 20:16:59 We want to check that crashed postgres is started back 2781s Dec 27 20:16:59 Scenario: check that timeline is not incremented when primary is started after crash # features/recovery.feature:4 2781s Dec 27 20:16:59 Given I start postgres0 # features/steps/basic_replication.py:8 2785s Dec 27 20:17:03 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 2785s Dec 27 20:17:03 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 2785s Dec 27 20:17:03 When I start postgres1 # features/steps/basic_replication.py:8 2789s Dec 27 20:17:07 And I add the table foo to postgres0 # features/steps/basic_replication.py:54 2789s Dec 27 20:17:07 Then table foo is present on postgres1 after 20 seconds # features/steps/basic_replication.py:93 2790s Dec 27 20:17:08 When I kill postmaster on postgres0 # features/steps/basic_replication.py:44 2790s Dec 27 20:17:08 waiting for server to shut down.... done 2790s Dec 27 20:17:08 server stopped 2790s Dec 27 20:17:08 Then postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:105 2791s Dec 27 20:17:09 When I issue a GET request to http://127.0.0.1:8008/ # features/steps/patroni_api.py:61 2791s Dec 27 20:17:09 Then I receive a response code 200 # features/steps/patroni_api.py:98 2791s Dec 27 20:17:09 And I receive a response role master # features/steps/patroni_api.py:98 2791s Dec 27 20:17:09 And I receive a response timeline 1 # features/steps/patroni_api.py:98 2791s Dec 27 20:17:09 And "members/postgres0" key in DCS has state=running after 12 seconds # features/steps/cascading_replication.py:23 2792s Dec 27 20:17:10 And replication works from postgres0 to postgres1 after 15 seconds # features/steps/basic_replication.py:112 2794s Dec 27 20:17:12 2794s Dec 27 20:17:12 Scenario: check immediate failover when master_start_timeout=0 # features/recovery.feature:20 2794s Dec 27 20:17:12 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 2794s Dec 27 20:17:12 Then I receive a response code 200 # features/steps/patroni_api.py:98 2794s Dec 27 20:17:12 And Response on GET http://127.0.0.1:8008/config contains master_start_timeout after 10 seconds # features/steps/patroni_api.py:156 2794s Dec 27 20:17:12 When I kill postmaster on postgres0 # features/steps/basic_replication.py:44 2794s Dec 27 20:17:12 waiting for server to shut down.... done 2794s Dec 27 20:17:12 server stopped 2794s Dec 27 20:17:12 Then postgres1 is a leader after 10 seconds # features/steps/patroni_api.py:29 2796s Dec 27 20:17:14 And postgres1 role is the primary after 10 seconds # features/steps/basic_replication.py:105 2807s Dec 27 20:17:25 2807s Dec 27 20:17:25 Feature: standby cluster # features/standby_cluster.feature:1 2807s Dec 27 20:17:25 2807s Dec 27 20:17:25 Scenario: prepare the cluster with logical slots # features/standby_cluster.feature:2 2807s Dec 27 20:17:25 Given I start postgres1 # features/steps/basic_replication.py:8 2817s Dec 27 20:17:35 Then postgres1 is a leader after 10 seconds # features/steps/patroni_api.py:29 2818s Dec 27 20:17:36 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 2818s Dec 27 20:17: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 2818s Dec 27 20:17:36 Then I receive a response code 200 # features/steps/patroni_api.py:98 2818s Dec 27 20:17:36 And Response on GET http://127.0.0.1:8009/config contains slots after 10 seconds # features/steps/patroni_api.py:156 2818s Dec 27 20:17:36 And I sleep for 3 seconds # features/steps/patroni_api.py:39 2821s Dec 27 20:17: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 2821s Dec 27 20:17:39 Then I receive a response code 200 # features/steps/patroni_api.py:98 2821s Dec 27 20:17:39 And I do a backup of postgres1 # features/steps/custom_bootstrap.py:25 2821s Dec 27 20:17:39 When I start postgres0 # features/steps/basic_replication.py:8 2825s Dec 27 20:17:43 Then "members/postgres0" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 2825s Dec 27 20:17:43 And replication works from postgres1 to postgres0 after 15 seconds # features/steps/basic_replication.py:112 2826s Dec 27 20:17:44 When I issue a GET request to http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:61 2826s Dec 27 20:17:44 Then I receive a response code 200 # features/steps/patroni_api.py:98 2826s Dec 27 20:17:44 And I receive a response replication_state streaming # features/steps/patroni_api.py:98 2826s Dec 27 20:17:44 And "members/postgres0" key in DCS has replication_state=streaming after 10 seconds # features/steps/cascading_replication.py:23 2827s Dec 27 20:17:45 2827s Dec 27 20:17:45 @slot-advance 2827s Dec 27 20:17:45 Scenario: check permanent logical slots are synced to the replica # features/standby_cluster.feature:22 2827s Dec 27 20:17:45 Given I run patronictl.py restart batman postgres1 --force # features/steps/patroni_api.py:86 2831s Dec 27 20:17:49 Then Logical slot test_logical is in sync between postgres0 and postgres1 after 10 seconds # features/steps/slots.py:51 2836s Dec 27 20:17:54 2836s Dec 27 20:17:54 Scenario: Detach exiting node from the cluster # features/standby_cluster.feature:26 2836s Dec 27 20:17:54 When I shut down postgres1 # features/steps/basic_replication.py:29 2838s Dec 27 20:17:56 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 2838s Dec 27 20:17:56 And "members/postgres0" key in DCS has role=master after 5 seconds # features/steps/cascading_replication.py:23 2839s Dec 27 20:17:57 When I issue a GET request to http://127.0.0.1:8008/ # features/steps/patroni_api.py:61 2839s Dec 27 20:17:57 Then I receive a response code 200 # features/steps/patroni_api.py:98 2839s Dec 27 20:17:57 2839s Dec 27 20:17:57 Scenario: check replication of a single table in a standby cluster # features/standby_cluster.feature:33 2839s Dec 27 20:17:57 Given I start postgres1 in a standby cluster batman1 as a clone of postgres0 # features/steps/standby_cluster.py:23 2843s Dec 27 20:18:01 Then postgres1 is a leader of batman1 after 10 seconds # features/steps/custom_bootstrap.py:16 2845s Dec 27 20:18:03 When I add the table foo to postgres0 # features/steps/basic_replication.py:54 2845s Dec 27 20:18:03 Then table foo is present on postgres1 after 20 seconds # features/steps/basic_replication.py:93 2845s Dec 27 20:18:03 When I issue a GET request to http://127.0.0.1:8009/patroni # features/steps/patroni_api.py:61 2845s Dec 27 20:18:03 Then I receive a response code 200 # features/steps/patroni_api.py:98 2845s Dec 27 20:18:03 And I receive a response replication_state streaming # features/steps/patroni_api.py:98 2845s Dec 27 20:18:03 And I sleep for 3 seconds # features/steps/patroni_api.py:39 2848s Dec 27 20:18:06 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:61 2848s Dec 27 20:18:06 Then I receive a response code 503 # features/steps/patroni_api.py:98 2848s Dec 27 20:18:06 When I issue a GET request to http://127.0.0.1:8009/standby_leader # features/steps/patroni_api.py:61 2848s Dec 27 20:18:06 Then I receive a response code 200 # features/steps/patroni_api.py:98 2848s Dec 27 20:18:06 And I receive a response role standby_leader # features/steps/patroni_api.py:98 2848s Dec 27 20:18:06 And there is a postgres1_cb.log with "on_role_change standby_leader batman1" in postgres1 data directory # features/steps/cascading_replication.py:12 2848s Dec 27 20:18:06 When I start postgres2 in a cluster batman1 # features/steps/standby_cluster.py:12 2858s Dec 27 20:18:16 Then postgres2 role is the replica after 24 seconds # features/steps/basic_replication.py:105 2858s Dec 27 20:18:16 And postgres2 is replicating from postgres1 after 10 seconds # features/steps/standby_cluster.py:52 2858s Dec 27 20:18:16 And table foo is present on postgres2 after 20 seconds # features/steps/basic_replication.py:93 2858s Dec 27 20:18:16 When I issue a GET request to http://127.0.0.1:8010/patroni # features/steps/patroni_api.py:61 2858s Dec 27 20:18:16 Then I receive a response code 200 # features/steps/patroni_api.py:98 2858s Dec 27 20:18:16 And I receive a response replication_state streaming # features/steps/patroni_api.py:98 2858s Dec 27 20:18:16 And postgres1 does not have a replication slot named test_logical # features/steps/slots.py:40 2858s Dec 27 20:18:16 2858s Dec 27 20:18:16 Scenario: check switchover # features/standby_cluster.feature:57 2858s Dec 27 20:18:16 Given I run patronictl.py switchover batman1 --force # features/steps/patroni_api.py:86 2862s Dec 27 20:18:20 Then Status code on GET http://127.0.0.1:8010/standby_leader is 200 after 10 seconds # features/steps/patroni_api.py:142 2863s Dec 27 20:18:21 And postgres1 is replicating from postgres2 after 32 seconds # features/steps/standby_cluster.py:52 2865s Dec 27 20:18:23 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 2865s Dec 27 20:18:23 2865s Dec 27 20:18:23 Scenario: check failover # features/standby_cluster.feature:63 2865s Dec 27 20:18:23 When I kill postgres2 # features/steps/basic_replication.py:34 2866s Dec 27 20:18:24 And I kill postmaster on postgres2 # features/steps/basic_replication.py:44 2866s Dec 27 20:18:24 waiting for server to shut down.... done 2866s Dec 27 20:18:24 server stopped 2866s Dec 27 20:18:24 Then postgres1 is replicating from postgres0 after 32 seconds # features/steps/standby_cluster.py:52 2885s Dec 27 20:18:43 And Status code on GET http://127.0.0.1:8009/standby_leader is 200 after 10 seconds # features/steps/patroni_api.py:142 2885s Dec 27 20:18:43 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:61 2885s Dec 27 20:18:43 Then I receive a response code 503 # features/steps/patroni_api.py:98 2885s Dec 27 20:18:43 And I receive a response role standby_leader # features/steps/patroni_api.py:98 2885s Dec 27 20:18:43 And replication works from postgres0 to postgres1 after 15 seconds # features/steps/basic_replication.py:112 2886s Dec 27 20:18:44 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 2900s Dec 27 20:18:58 2900s Dec 27 20:18:58 Feature: watchdog # features/watchdog.feature:1 2900s Dec 27 20:18:58 Verify that watchdog gets pinged and triggered under appropriate circumstances. 2900s Dec 27 20:18:58 Scenario: watchdog is opened and pinged # features/watchdog.feature:4 2900s Dec 27 20:18:58 Given I start postgres0 with watchdog # features/steps/watchdog.py:16 2904s Dec 27 20:19:02 Then postgres0 is a leader after 10 seconds # features/steps/patroni_api.py:29 2905s Dec 27 20:19:03 And postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:105 2905s Dec 27 20:19:03 And postgres0 watchdog has been pinged after 10 seconds # features/steps/watchdog.py:21 2905s Dec 27 20:19:03 And postgres0 watchdog has a 15 second timeout # features/steps/watchdog.py:34 2905s Dec 27 20:19:03 2905s Dec 27 20:19:03 Scenario: watchdog is reconfigured after global ttl changed # features/watchdog.feature:11 2905s Dec 27 20:19:03 Given I run patronictl.py edit-config batman -s ttl=30 --force # features/steps/patroni_api.py:86 2907s Dec 27 20:19:05 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 2907s Dec 27 20:19:05 And I receive a response output "+ttl: 30" # features/steps/patroni_api.py:98 2907s Dec 27 20:19:05 When I sleep for 4 seconds # features/steps/patroni_api.py:39 2911s Dec 27 20:19:09 Then postgres0 watchdog has a 25 second timeout # features/steps/watchdog.py:34 2911s Dec 27 20:19:09 2911s Dec 27 20:19:09 Scenario: watchdog is disabled during pause # features/watchdog.feature:18 2911s Dec 27 20:19:09 Given I run patronictl.py pause batman # features/steps/patroni_api.py:86 2913s Dec 27 20:19:11 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 2913s Dec 27 20:19:11 When I sleep for 2 seconds # features/steps/patroni_api.py:39 2915s Dec 27 20:19:13 Then postgres0 watchdog has been closed # features/steps/watchdog.py:29 2915s Dec 27 20:19:13 2915s Dec 27 20:19:13 Scenario: watchdog is opened and pinged after resume # features/watchdog.feature:24 2915s Dec 27 20:19:13 Given I reset postgres0 watchdog state # features/steps/watchdog.py:39 2915s Dec 27 20:19:13 And I run patronictl.py resume batman # features/steps/patroni_api.py:86 2917s Dec 27 20:19:15 Then I receive a response returncode 0 # features/steps/patroni_api.py:98 2917s Dec 27 20:19:15 And postgres0 watchdog has been pinged after 10 seconds # features/steps/watchdog.py:21 2917s Dec 27 20:19:15 2917s Dec 27 20:19:15 Scenario: watchdog is disabled when shutting down # features/watchdog.feature:30 2917s Dec 27 20:19:15 Given I shut down postgres0 # features/steps/basic_replication.py:29 2919s Dec 27 20:19:17 Then postgres0 watchdog has been closed # features/steps/watchdog.py:29 2919s Dec 27 20:19:17 2919s Dec 27 20:19:17 Scenario: watchdog is triggered if patroni stops responding # features/watchdog.feature:34 2919s Dec 27 20:19:17 Given I reset postgres0 watchdog state # features/steps/watchdog.py:39 2919s Dec 27 20:19:17 And I start postgres0 with watchdog # features/steps/watchdog.py:16 2922s Dec 27 20:19:20 Then postgres0 role is the primary after 10 seconds # features/steps/basic_replication.py:105 2924s Dec 27 20:19:22 When postgres0 hangs for 30 seconds # features/steps/watchdog.py:52 2924s Dec 27 20:19:22 Then postgres0 watchdog is triggered after 30 seconds # features/steps/watchdog.py:44 2958s Dec 27 20:19:56 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.4352.Xmkfwwyx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.4355.XIcRjFSx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.4402.XumXNXSx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.4451.XGPWEJVx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.4500.XtfpgGrx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.4545.XzOcVkRx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.4616.XaDlNWUx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.4665.XtTuAadx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.4669.XYnVTqtx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.4760.XGhxHHrx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.4863.XMkcQkgx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.4866.XTdaoWix 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.4913.XoPbRNvx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.4969.XUCcqgjx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.5098.XaWhsdfx 2959s Dec 27 20:19:57 Skipping duplicate data .coverage.autopkgtest.5102.XTjinfYx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.5105.XvrPVxzx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.5153.XBcKXJox 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.5208.XIwyArnx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.5302.XOijPMsx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.5305.XuDjKOUx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.5636.XFfbzROx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.5717.XMbxaxfx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.5773.XPKmqShx 2959s Dec 27 20:19:57 Skipping duplicate data .coverage.autopkgtest.6060.XihNCsox 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.6063.XoTuizUx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.6116.XEQZYeox 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.6179.XkksKuOx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.6270.XZaUcMsx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.6367.XvtKrpex 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.6370.XUnFqQTx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.6408.XRMGzdLx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.6484.XyMIKIdx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.6517.XjUTfLDx 2959s Dec 27 20:19:57 Skipping duplicate data .coverage.autopkgtest.6673.XyBOAlwx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.6676.XdjpMKkx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.6726.XkEVMQtx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.6742.XASyZUJx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.6782.XaXUxBCx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.6832.XgOBMwJx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.6838.XuXCWqDx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.6876.XuFWBydx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.6922.XwrlkjWx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.7091.XzyZFwYx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.7094.XUdpSdix 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.7101.XFzarrzx 2959s Dec 27 20:19:57 Skipping duplicate data .coverage.autopkgtest.7236.XHNuCaux 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.7239.XFFnnzrx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.7286.XSZDvKix 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.7339.XpEWIkEx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.7386.XFatqTcx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.7434.XYVfzKPx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.7573.XoYwfVSx 2959s Dec 27 20:19:57 Skipping duplicate data .coverage.autopkgtest.7655.XJKuKLnx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.7658.XZooFUZx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.7702.XQLxjOWx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.7776.XjGCCBux 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.7854.XDyFdkBx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.7938.XxKEuyrx 2959s Dec 27 20:19:57 Skipping duplicate data .coverage.autopkgtest.8262.XCYVXIox 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.8265.XXYAuPhx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.8312.XxDYZvFx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.8455.XqXYSQJx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.8458.XIYKVNUx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.8523.XJgAmpex 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.8590.XkwpEfMx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.8695.XCRDKkyx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.8815.XMJGxWqx 2959s Dec 27 20:19:57 Skipping duplicate data .coverage.autopkgtest.8942.XOafPwFx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.8946.XiOLKYmx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.8991.XXPyPJex 2959s Dec 27 20:19:57 Skipping duplicate data .coverage.autopkgtest.8995.XWYRCPqx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.8999.XrPIiaYx 2959s Dec 27 20:19:57 Combined data file .coverage.autopkgtest.9011.XbbSrOzx 2959s Dec 27 20:19:57 Skipping duplicate data .coverage.autopkgtest.9077.XgEbLOnx 2961s Dec 27 20:19:59 Name Stmts Miss Cover 2961s Dec 27 20:19:59 ---------------------------------------------------------------------------------------------------------- 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/_distutils_hack/__init__.py 101 96 5% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/__about__.py 5 0 100% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/__init__.py 3 0 100% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/exceptions.py 26 5 81% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/fernet.py 137 54 61% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/hazmat/__init__.py 2 0 100% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/hazmat/_oid.py 135 0 100% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/hazmat/backends/__init__.py 5 0 100% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/hazmat/backends/openssl/__init__.py 3 0 100% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/hazmat/backends/openssl/backend.py 135 67 50% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/__init__.py 0 0 100% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/__init__.py 0 0 100% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/_conditional.py 38 17 55% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/binding.py 51 4 92% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/hazmat/decrepit/__init__.py 1 0 100% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/hazmat/decrepit/ciphers/__init__.py 1 0 100% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/hazmat/decrepit/ciphers/algorithms.py 68 18 74% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/__init__.py 0 0 100% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_asymmetric.py 6 0 100% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_cipheralgorithm.py 23 1 96% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_serialization.py 79 35 56% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/__init__.py 0 0 100% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/ec.py 172 22 87% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/padding.py 55 23 58% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/rsa.py 93 40 57% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/utils.py 14 5 64% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/__init__.py 4 0 100% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/algorithms.py 72 13 82% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/base.py 54 3 94% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/modes.py 140 50 64% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/constant_time.py 6 3 50% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/hashes.py 127 20 84% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/hmac.py 6 0 100% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/kdf/__init__.py 7 0 100% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/kdf/pbkdf2.py 27 5 81% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/padding.py 104 37 64% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/cryptography/utils.py 76 25 67% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/dateutil/__init__.py 13 4 69% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/dateutil/_common.py 25 15 40% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/dateutil/_version.py 11 2 82% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/dateutil/parser/__init__.py 33 4 88% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/dateutil/parser/_parser.py 811 436 46% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/dateutil/parser/isoparser.py 184 150 18% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/dateutil/relativedelta.py 240 206 14% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/dateutil/tz/__init__.py 4 0 100% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/dateutil/tz/_common.py 151 114 25% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/dateutil/tz/_factories.py 49 21 57% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/dateutil/tz/tz.py 795 626 21% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/dateutil/tz/win.py 153 149 3% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/__init__.py 13 2 85% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/__main__.py 199 65 67% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/api.py 780 289 63% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/async_executor.py 96 15 84% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/collections.py 56 6 89% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/config.py 371 98 74% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/config_generator.py 212 159 25% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/daemon.py 76 3 96% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/dcs/__init__.py 654 81 88% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/dcs/raft.py 319 39 88% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/dynamic_loader.py 35 7 80% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/exceptions.py 16 0 100% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/file_perm.py 43 8 81% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/global_config.py 81 0 100% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/ha.py 1270 308 76% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/log.py 221 71 68% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/postgresql/__init__.py 822 170 79% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/postgresql/available_parameters/__init__.py 24 3 88% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/postgresql/bootstrap.py 255 62 76% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/postgresql/callback_executor.py 55 8 85% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/postgresql/cancellable.py 104 41 61% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/postgresql/config.py 838 219 74% 2961s + echo '### End 16 acceptance-raft ###' 2961s + rm -f '/tmp/pgpass?' 2961s ++ id -u 2961s + '[' 1000 -eq 0 ']' 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/postgresql/connection.py 75 1 99% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/postgresql/misc.py 43 8 81% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/postgresql/mpp/__init__.py 89 11 88% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/postgresql/postmaster.py 170 85 50% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/postgresql/rewind.py 416 163 61% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/postgresql/slots.py 349 37 89% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/postgresql/sync.py 130 19 85% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/postgresql/validator.py 157 24 85% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/psycopg.py 46 20 57% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/request.py 58 6 90% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/tags.py 38 0 100% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/utils.py 370 122 67% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/validator.py 307 214 30% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/version.py 1 0 100% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/watchdog/__init__.py 2 0 100% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/watchdog/base.py 203 42 79% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/patroni/watchdog/linux.py 135 35 74% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/psutil/__init__.py 951 629 34% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/psutil/_common.py 424 212 50% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/psutil/_compat.py 302 263 13% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/psutil/_pslinux.py 1251 924 26% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/psutil/_psposix.py 96 38 60% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/psycopg2/__init__.py 19 3 84% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/psycopg2/_json.py 64 27 58% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/psycopg2/_range.py 269 172 36% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/psycopg2/errors.py 3 2 33% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/psycopg2/extensions.py 91 25 73% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/pysyncobj/__init__.py 2 0 100% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/pysyncobj/atomic_replace.py 4 0 100% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/pysyncobj/config.py 80 1 99% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/pysyncobj/dns_resolver.py 51 10 80% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/pysyncobj/encryptor.py 17 2 88% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/pysyncobj/fast_queue.py 21 1 95% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/pysyncobj/journal.py 193 37 81% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/pysyncobj/monotonic.py 77 70 9% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/pysyncobj/node.py 49 10 80% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/pysyncobj/pickle.py 52 32 38% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/pysyncobj/pipe_notifier.py 24 2 92% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/pysyncobj/poller.py 87 41 53% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/pysyncobj/serializer.py 166 133 20% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/pysyncobj/syncobj.py 1045 392 62% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/pysyncobj/tcp_connection.py 250 35 86% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/pysyncobj/tcp_server.py 56 12 79% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/pysyncobj/transport.py 266 57 79% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/pysyncobj/utility.py 59 7 88% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/pysyncobj/version.py 1 0 100% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/pysyncobj/win_inet_pton.py 44 31 30% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/urllib3/__init__.py 50 14 72% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/urllib3/_base_connection.py 70 52 26% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/urllib3/_collections.py 234 107 54% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/urllib3/_request_methods.py 53 15 72% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/urllib3/_version.py 2 0 100% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/urllib3/connection.py 324 104 68% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/urllib3/connectionpool.py 347 136 61% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/urllib3/exceptions.py 115 37 68% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/urllib3/fields.py 92 73 21% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/urllib3/filepost.py 37 24 35% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/urllib3/poolmanager.py 233 88 62% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/urllib3/response.py 562 336 40% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/urllib3/util/__init__.py 10 0 100% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/urllib3/util/connection.py 66 9 86% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/urllib3/util/proxy.py 13 6 54% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/urllib3/util/request.py 104 49 53% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/urllib3/util/response.py 32 17 47% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/urllib3/util/retry.py 173 49 72% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/urllib3/util/ssl_.py 177 75 58% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/urllib3/util/ssl_match_hostname.py 66 54 18% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/urllib3/util/ssltransport.py 160 112 30% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/urllib3/util/timeout.py 71 19 73% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/urllib3/util/url.py 205 78 62% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/urllib3/util/util.py 26 9 65% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/urllib3/util/wait.py 49 38 22% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/yaml/__init__.py 165 109 34% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/yaml/composer.py 92 17 82% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/yaml/constructor.py 479 276 42% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/yaml/cyaml.py 46 24 48% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/yaml/dumper.py 23 12 48% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/yaml/emitter.py 838 769 8% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/yaml/error.py 58 42 28% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/yaml/events.py 61 6 90% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/yaml/loader.py 47 24 49% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/yaml/nodes.py 29 7 76% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/yaml/parser.py 352 180 49% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/yaml/reader.py 122 30 75% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/yaml/representer.py 248 176 29% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/yaml/resolver.py 135 76 44% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/yaml/scanner.py 758 415 45% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/yaml/serializer.py 85 70 18% 2961s Dec 27 20:19:59 /usr/lib/python3/dist-packages/yaml/tokens.py 76 17 78% 2961s Dec 27 20:19:59 patroni/__init__.py 13 2 85% 2961s Dec 27 20:19:59 patroni/__main__.py 199 199 0% 2961s Dec 27 20:19:59 patroni/api.py 780 780 0% 2961s Dec 27 20:19:59 patroni/async_executor.py 96 69 28% 2961s Dec 27 20:19:59 patroni/collections.py 56 15 73% 2961s Dec 27 20:19:59 patroni/config.py 371 189 49% 2961s Dec 27 20:19:59 patroni/config_generator.py 212 212 0% 2961s Dec 27 20:19:59 patroni/ctl.py 936 411 56% 2961s Dec 27 20:19:59 patroni/daemon.py 76 6 92% 2961s Dec 27 20:19:59 patroni/dcs/__init__.py 654 273 58% 2961s Dec 27 20:19:59 patroni/dcs/consul.py 484 484 0% 2961s Dec 27 20:19:59 patroni/dcs/etcd3.py 679 679 0% 2961s Dec 27 20:19:59 patroni/dcs/etcd.py 603 603 0% 2961s Dec 27 20:19:59 patroni/dcs/exhibitor.py 62 62 0% 2961s Dec 27 20:19:59 patroni/dcs/kubernetes.py 940 940 0% 2961s Dec 27 20:19:59 patroni/dcs/raft.py 319 72 77% 2961s Dec 27 20:19:59 patroni/dcs/zookeeper.py 289 289 0% 2961s Dec 27 20:19:59 patroni/dynamic_loader.py 35 7 80% 2961s Dec 27 20:19:59 patroni/exceptions.py 16 1 94% 2961s Dec 27 20:19:59 patroni/file_perm.py 43 15 65% 2961s Dec 27 20:19:59 patroni/global_config.py 81 18 78% 2961s Dec 27 20:19:59 patroni/ha.py 1270 1270 0% 2961s Dec 27 20:19:59 patroni/log.py 221 95 57% 2961s Dec 27 20:19:59 patroni/postgresql/__init__.py 822 652 21% 2961s Dec 27 20:19:59 patroni/postgresql/available_parameters/__init__.py 24 3 88% 2961s Dec 27 20:19:59 patroni/postgresql/bootstrap.py 255 225 12% 2961s Dec 27 20:19:59 patroni/postgresql/callback_executor.py 55 34 38% 2961s Dec 27 20:19:59 patroni/postgresql/cancellable.py 104 84 19% 2961s Dec 27 20:19:59 patroni/postgresql/config.py 838 718 14% 2961s Dec 27 20:19:59 patroni/postgresql/connection.py 75 50 33% 2961s Dec 27 20:19:59 patroni/postgresql/misc.py 43 30 30% 2961s Dec 27 20:19:59 patroni/postgresql/mpp/__init__.py 89 21 76% 2961s Dec 27 20:19:59 patroni/postgresql/mpp/citus.py 259 259 0% 2961s Dec 27 20:19:59 patroni/postgresql/postmaster.py 170 139 18% 2961s Dec 27 20:19:59 patroni/postgresql/rewind.py 416 416 0% 2961s Dec 27 20:19:59 patroni/postgresql/slots.py 349 300 14% 2961s Dec 27 20:19:59 patroni/postgresql/sync.py 130 96 26% 2961s Dec 27 20:19:59 patroni/postgresql/validator.py 157 52 67% 2961s Dec 27 20:19:59 patroni/psycopg.py 46 32 30% 2961s Dec 27 20:19:59 patroni/raft_controller.py 22 1 95% 2961s Dec 27 20:19:59 patroni/request.py 58 6 90% 2961s Dec 27 20:19:59 patroni/scripts/__init__.py 0 0 100% 2961s Dec 27 20:19:59 patroni/scripts/aws.py 59 59 0% 2961s Dec 27 20:19:59 patroni/scripts/barman/__init__.py 0 0 100% 2961s Dec 27 20:19:59 patroni/scripts/barman/cli.py 51 51 0% 2961s Dec 27 20:19:59 patroni/scripts/barman/config_switch.py 51 51 0% 2961s Dec 27 20:19:59 patroni/scripts/barman/recover.py 37 37 0% 2961s Dec 27 20:19:59 patroni/scripts/barman/utils.py 94 94 0% 2961s Dec 27 20:19:59 patroni/scripts/wale_restore.py 207 207 0% 2961s Dec 27 20:19:59 patroni/tags.py 38 11 71% 2961s Dec 27 20:19:59 patroni/utils.py 370 233 37% 2961s Dec 27 20:19:59 patroni/validator.py 307 221 28% 2961s Dec 27 20:19:59 patroni/version.py 1 0 100% 2961s Dec 27 20:19:59 patroni/watchdog/__init__.py 2 2 0% 2961s Dec 27 20:19:59 patroni/watchdog/base.py 203 203 0% 2961s Dec 27 20:19:59 patroni/watchdog/linux.py 135 135 0% 2961s Dec 27 20:19:59 ---------------------------------------------------------------------------------------------------------- 2961s Dec 27 20:19:59 TOTAL 40175 22743 43% 2961s Dec 27 20:19:59 12 features passed, 0 failed, 1 skipped 2961s Dec 27 20:19:59 54 scenarios passed, 0 failed, 6 skipped 2961s Dec 27 20:19:59 525 steps passed, 0 failed, 63 skipped, 0 undefined 2961s Dec 27 20:19:59 Took 9m49.452s 2961s ### End 16 acceptance-raft ### 2962s autopkgtest [20:20:00]: test acceptance-raft: -----------------------] 2963s autopkgtest [20:20:01]: test acceptance-raft: - - - - - - - - - - results - - - - - - - - - - 2963s acceptance-raft PASS 2963s autopkgtest [20:20:01]: test test: preparing testbed 3649s nova [W] Using flock in prodstack6-ppc64el 3649s Creating nova instance adt-plucky-ppc64el-patroni-20241227-165920-juju-7f2275-prod-proposed-migration-environment-20-b5e15e32-2ed5-4b60-9c8a-ee6f34926235 from image adt/ubuntu-plucky-ppc64el-server-20241227.img (UUID d18a0f1f-b400-4884-a0ad-b86f0829d4e5)... 3649s nova [W] Timed out waiting for 306c539f-054e-48d7-a284-02358fe250e4 to get deleted. 3649s nova [W] Using flock in prodstack6-ppc64el 3649s Creating nova instance adt-plucky-ppc64el-patroni-20241227-165920-juju-7f2275-prod-proposed-migration-environment-20-b5e15e32-2ed5-4b60-9c8a-ee6f34926235 from image adt/ubuntu-plucky-ppc64el-server-20241227.img (UUID d18a0f1f-b400-4884-a0ad-b86f0829d4e5)... 3649s nova [W] Timed out waiting for 95256f82-3441-4941-88a9-8d5c4ba061c9 to get deleted. 3649s nova [W] Using flock in prodstack6-ppc64el 3649s Creating nova instance adt-plucky-ppc64el-patroni-20241227-165920-juju-7f2275-prod-proposed-migration-environment-20-b5e15e32-2ed5-4b60-9c8a-ee6f34926235 from image adt/ubuntu-plucky-ppc64el-server-20241227.img (UUID d18a0f1f-b400-4884-a0ad-b86f0829d4e5)... 3649s nova [W] Timed out waiting for 8e9934aa-0f16-4f1b-abc3-a3a207c9c3ef to get deleted. 3649s nova [W] Using flock in prodstack6-ppc64el 3649s Creating nova instance adt-plucky-ppc64el-patroni-20241227-165920-juju-7f2275-prod-proposed-migration-environment-20-b5e15e32-2ed5-4b60-9c8a-ee6f34926235 from image adt/ubuntu-plucky-ppc64el-server-20241227.img (UUID d18a0f1f-b400-4884-a0ad-b86f0829d4e5)... 3649s nova [W] Timed out waiting for 73888d90-2ed5-44ad-a1b6-38bcf529bda8 to get deleted. 3649s nova [W] Using flock in prodstack6-ppc64el 3649s Creating nova instance adt-plucky-ppc64el-patroni-20241227-165920-juju-7f2275-prod-proposed-migration-environment-20-b5e15e32-2ed5-4b60-9c8a-ee6f34926235 from image adt/ubuntu-plucky-ppc64el-server-20241227.img (UUID d18a0f1f-b400-4884-a0ad-b86f0829d4e5)... 3649s nova [E] nova boot failed (attempt #0): 3649s nova [E] DEBUG (extension:189) found extension EntryPoint.parse('v1password = swiftclient.authv1:PasswordLoader') 3649s DEBUG (extension:189) found extension EntryPoint.parse('noauth = cinderclient.contrib.noauth:CinderNoAuthLoader') 3649s DEBUG (extension:189) found extension EntryPoint.parse('admin_token = keystoneauth1.loading._plugins.admin_token:AdminToken') 3649s DEBUG (extension:189) found extension EntryPoint.parse('none = keystoneauth1.loading._plugins.noauth:NoAuth') 3649s DEBUG (extension:189) found extension EntryPoint.parse('password = keystoneauth1.loading._plugins.identity.generic:Password') 3649s DEBUG (extension:189) found extension EntryPoint.parse('token = keystoneauth1.loading._plugins.identity.generic:Token') 3649s DEBUG (extension:189) found extension EntryPoint.parse('v2password = keystoneauth1.loading._plugins.identity.v2:Password') 3649s DEBUG (extension:189) found extension EntryPoint.parse('v2token = keystoneauth1.loading._plugins.identity.v2:Token') 3649s DEBUG (extension:189) found extension EntryPoint.parse('v3adfspassword = keystoneauth1.extras._saml2._loading:ADFSPassword') 3649s DEBUG (extension:189) found extension EntryPoint.parse('v3applicationcredential = keystoneauth1.loading._plugins.identity.v3:ApplicationCredential') 3649s DEBUG (extension:189) found extension EntryPoint.parse('v3fedkerb = keystoneauth1.extras.kerberos._loading:MappedKerberos') 3649s DEBUG (extension:189) found extension EntryPoint.parse('v3kerberos = keystoneauth1.extras.kerberos._loading:Kerberos') 3649s DEBUG (extension:189) found extension EntryPoint.parse('v3multifactor = keystoneauth1.loading._plugins.identity.v3:MultiFactor') 3649s DEBUG (extension:189) found extension EntryPoint.parse('v3oauth1 = keystoneauth1.extras.oauth1._loading:V3OAuth1') 3649s DEBUG (extension:189) found extension EntryPoint.parse('v3oidcaccesstoken = keystoneauth1.loading._plugins.identity.v3:OpenIDConnectAccessToken') 3649s DEBUG (extension:189) found extension EntryPoint.parse('v3oidcauthcode = keystoneauth1.loading._plugins.identity.v3:OpenIDConnectAuthorizationCode') 3649s DEBUG (extension:189) found extension EntryPoint.parse('v3oidcclientcredentials = keystoneauth1.loading._plugins.identity.v3:OpenIDConnectClientCredentials') 3649s DEBUG (extension:189) found extension EntryPoint.parse('v3oidcpassword = keystoneauth1.loading._plugins.identity.v3:OpenIDConnectPassword') 3649s DEBUG (extension:189) found extension EntryPoint.parse('v3password = keystoneauth1.loading._plugins.identity.v3:Password') 3649s DEBUG (extension:189) found extension EntryPoint.parse('v3samlpassword = keystoneauth1.extras._saml2._loading:Saml2Password') 3649s DEBUG (extension:189) found extension EntryPoint.parse('v3token = keystoneauth1.loading._plugins.identity.v3:Token') 3649s DEBUG (extension:189) found extension EntryPoint.parse('v3tokenlessauth = keystoneauth1.loading._plugins.identity.v3:TokenlessAuth') 3649s DEBUG (extension:189) found extension EntryPoint.parse('v3totp = keystoneauth1.loading._plugins.identity.v3:TOTP') 3649s DEBUG (session:517) REQ: curl -g -i -X GET https://keystone.ps6.canonical.com:5000/v3 -H "Accept: application/json" -H "User-Agent: nova keystoneauth1/4.0.0 python-requests/2.22.0 CPython/3.8.10" 3649s DEBUG (connectionpool:962) Starting new HTTPS connection (1): keystone.ps6.canonical.com:5000 3649s DEBUG (connectionpool:429) https://keystone.ps6.canonical.com:5000 "GET /v3 HTTP/1.1" 200 267 3649s DEBUG (session:548) RESP: [200] Connection: Keep-Alive Content-Length: 267 Content-Type: application/json Date: Fri, 27 Dec 2024 20:20:25 GMT Keep-Alive: timeout=75, max=1000 Server: Apache/2.4.52 (Ubuntu) Vary: X-Auth-Token x-openstack-request-id: req-439dbb9d-15f0-466f-9963-c686b17f6c63 3649s DEBUG (session:580) RESP BODY: {"version": {"id": "v3.14", "status": "stable", "updated": "2020-04-07T00:00:00Z", "links": [{"rel": "self", "href": "https://keystone.ps6.canonical.com:5000/v3/"}], "media-types": [{"base": "application/json", "type": "application/vnd.openstack.identity-v3+json"}]}} 3649s DEBUG (session:946) GET call to https://keystone.ps6.canonical.com:5000/v3 used request id req-439dbb9d-15f0-466f-9963-c686b17f6c63 3649s DEBUG (base:182) Making authentication request to https://keystone.ps6.canonical.com:5000/v3/auth/tokens 3649s DEBUG (connectionpool:429) https://keystone.ps6.canonical.com:5000 "POST /v3/auth/tokens HTTP/1.1" 201 12525 3649s DEBUG (base:187) {"token": {"methods": ["password"], "user": {"domain": {"id": "default", "name": "Default"}, "id": "c871debdeffd4cb8b69ce618fc4aa361", "name": "prod-proposed-migration-ppc64el", "password_expires_at": null}, "audit_ids": ["N8cb6fPzSXSNnESCdo5Y7Q"], "expires_at": "2024-12-28T20:20:26.000000Z", "issued_at": "2024-12-27T20:20:26.000000Z", "project": {"domain": {"id": "default", "name": "Default"}, "id": "623df63b80274c21bc79a0c35e68d615", "name": "prod-proposed-migration-ppc64el_project"}, "is_domain": false, "roles": [{"id": "86bf3043974746c2bf52c2a9f362f986", "name": "reader"}, {"id": "15cf997650e345b7b21c02b5cdb7d84a", "name": "member"}, {"id": "80674fb26dab46e9a6bd57e7f8193360", "name": "load-balancer_member"}], "is_admin_project": false, "catalog": [{"endpoints": [{"id": "213cdf38198c4581bd5b7d6d0836923b", "interface": "internal", "region_id": "prodstack6", "url": "https://radosgw-internal.ps6.canonical.com:443/", "region": "prodstack6"}, {"id": "67061eee26944a1a8009f9d07be19738", "interface": "public", "region_id": "prodstack6", "url": "https://radosgw.ps6.canonical.com:443/", "region": "prodstack6"}, {"id": "fc88c52c749a47d08a24a2c7efbde01b", "interface": "admin", "region_id": "prodstack6", "url": "https://radosgw-admin.ps6.canonical.com:443/", "region": "prodstack6"}], "id": "06e4714942634054bf9aa11715312b4e", "type": "s3", "name": "s3"}, {"endpoints": [{"id": "8aa44c94b63746bd9b37f1008ad55fa8", "interface": "admin", "region_id": "prodstack6", "url": "https://aodh-admin.ps6.canonical.com:8042", "region": "prodstack6"}, {"id": "92cf08a80a0242ebbca8ec893cf332b1", "interface": "public", "region_id": "prodstack6", "url": "https://aodh.ps6.canonical.com:8042", "region": "prodstack6"}, {"id": "d8139c6e11ae4edcb78981c12bd53212", "interface": "internal", "region_id": "prodstack6", "url": "https://aodh-internal.ps6.canonical.com:8042", "region": "prodstack6"}], "id": "2fb939b0b969435c8f0c5fa4edb4de94", "type": "alarming", "name": "aodh"}, {"endpoints": [{"id": "a49fcc80e658411885f88cdd8432a571", "interface": "internal", "region_id": "prodstack6", "url": "https://heat-internal.ps6.canonical.com:8000/v1", "region": "prodstack6"}, {"id": "b23866fddba8415885b06c064c34b94b", "interface": "public", "region_id": "prodstack6", "url": "https://heat.ps6.canonical.com:8000/v1", "region": "prodstack6"}, {"id": "f84ae55197f94b8392a678f35c82ca26", "interface": "admin", "region_id": "prodstack6", "url": "https://heat-admin.ps6.canonical.com:8000/v1", "region": "prodstack6"}], "id": "3d4b59f7dab644b2b527e8e96b697545", "type": "cloudformation", "name": "heat-cfn"}, {"endpoints": [{"id": "2e0143334c6241169f45f1c11970c6bc", "interface": "public", "region_id": "prodstack6", "url": "https://heat.ps6.canonical.com:8004/v1/623df63b80274c21bc79a0c35e68d615", "region": "prodstack6"}, {"id": "5e19c32243c04a3faf1e5f9ab900c260", "interface": "internal", "region_id": "prodstack6", "url": "https://heat-internal.ps6.canonical.com:8004/v1/623df63b80274c21bc79a0c35e68d615", "region": "prodstack6"}, {"id": "b3fc5c88ec8543a691fec75726b86967", "interface": "admin", "region_id": "prodstack6", "url": "https://heat-admin.ps6.canonical.com:8004/v1/623df63b80274c21bc79a0c35e68d615", "region": "prodstack6"}], "id": "43b926205044476b8093b18d8ce0a9e4", "type": "orchestration", "name": "heat"}, {"endpoints": [{"id": "a47569b96e5b4146a312e4673504557c", "interface": "public", "region_id": "prodstack6", "url": "https://glance.ps6.canonical.com:9292", "region": "prodstack6"}, {"id": "bba35c4ab04f4114a2a34e65568537bd", "interface": "internal", "region_id": "prodstack6", "url": "https://glance-internal.ps6.canonical.com:9292", "region": "prodstack6"}, {"id": "ef769f1117c74a62a279131486c89628", "interface": "admin", "region_id": "prodstack6", "url": "https://glance-admin.ps6.canonical.com:9292", "region": "prodstack6"}], "id": "49de724549524bd78e9cd46a4477226f", "type": "image", "name": "glance"}, {"endpoints": [{"id": "a1a41e9a1e2d42e5b6cd5380cd1e21bf", "interface": "admin", "region_id": "prodstack6", "url": "https://cinder-admin.ps6.canonical.com:8776/v3/623df63b80274c21bc79a0c35e68d615", "region": "prodstack6"}, {"id": "d2309a99724b4111827482c68a832c0c", "interface": "public", "region_id": "prodstack6", "url": "https://cinder.ps6.canonical.com:8776/v3/623df63b80274c21bc79a0c35e68d615", "region": "prodstack6"}, {"id": "f8a02e3949ff42afa772eb5e74dbef9f", "interface": "internal", "region_id": "prodstack6", "url": "https://cinder-internal.ps6.canonical.com:8776/v3/623df63b80274c21bc79a0c35e68d615", "region": "prodstack6"}], "id": "5bf6578a631349e3af4bf36d7adb18e1", "type": "volumev3", "name": "cinderv3"}, {"endpoints": [{"id": "01d84128f36444e9b01549b86bd69116", "interface": "admin", "region_id": "prodstack6", "url": "https://barbican-admin.ps6.canonical.com:9312", "region": "prodstack6"}, {"id": "0ce4a8777e0b40a88f7fc0f77e34a605", "interface": "public", "region_id": "prodstack6", "url": "https://barbican.ps6.canonical.com:9311", "region": "prodstack6"}, {"id": "f507ba49e4a7435cb330234217c92449", "interface": "internal", "region_id": "prodstack6", "url": "https://barbican-internal.ps6.canonical.com:9311", "region": "prodstack6"}], "id": "62cb1c3d9f6c45979c13516a6b3ff114", "type": "key-manager", "name": "barbican"}, {"endpoints": [{"id": "3cb6121bd8f14da8aa2fba7be823a2b4", "interface": "internal", "region_id": "prodstack6", "url": "https://neutron-internal.ps6.canonical.com:9696", "region": "prodstack6"}, {"id": "46ba11d133fe4e8f9e8f9097ba737682", "interface": "admin", "region_id": "prodstack6", "url": "https://neutron-admin.ps6.canonical.com:9696", "region": "prodstack6"}, {"id": "d872eb6aa23d40009165aa3dcdce3948", "interface": "public", "region_id": "prodstack6", "url": "https://neutron.ps6.canonical.com:9696", "region": "prodstack6"}], "id": "759cb6fdfbc146dd8b9d1ba444c4b9db", "type": "network", "name": "neutron"}, {"endpoints": [{"id": "4349d565f72446da9699269f85df5e8b", "interface": "internal", "region_id": "prodstack6", "url": "https://manila-internal.ps6.canonical.com:8786/v2/623df63b80274c21bc79a0c35e68d615", "region": "prodstack6"}, {"id": "a483dcc58f5e415e9ec739c94474e609", "interface": "public", "region_id": "prodstack6", "url": "https://manila.ps6.canonical.com:8786/v2/623df63b80274c21bc79a0c35e68d615", "region": "prodstack6"}, {"id": "c1f14236723e42878562d8dd63d5a6a0", "interface": "admin", "region_id": "prodstack6", "url": "https://manila-admin.ps6.canonical.com:8786/v2/623df63b80274c21bc79a0c35e68d615", "region": "prodstack6"}], "id": "93fc4008035946deb1f433c2dd905a5d", "type": "sharev2", "name": "manilav2"}, {"endpoints": [{"id": "0fa148793c7249c8b187b6b4ff425731", "interface": "internal", "region_id": "prodstack6", "url": "https://radosgw-internal.ps6.canonical.com:443/swift/v1/AUTH_e4b04ca58d734ed0aa29e306adad4f79/simplestreams/data", "region": "prodstack6"}, {"id": "555ade266a6b4bcc81b6e5abf607aec5", "interface": "public", "region_id": "prodstack6", "url": "https://radosgw.ps6.canonical.com:443/swift/v1/AUTH_e4b04ca58d734ed0aa29e306adad4f79/simplestreams/data", "region": "prodstack6"}, {"id": "7dad1a7b1552465686424fc014463173", "interface": "admin", "region_id": "prodstack6", "url": "https://radosgw-admin.ps6.canonical.com:443/swift/simplestreams/data", "region": "prodstack6"}], "id": "977dd359af1a4fcc91a9daf4dc33b0f3", "type": "product-streams", "name": "image-stream"}, {"endpoints": [{"id": "12d30eabcdec4831bd15273d55b1cbab", "interface": "internal", "region_id": "prodstack6", "url": "https://manila-internal.ps6.canonical.com:8786/v1/623df63b80274c21bc79a0c35e68d615", "region": "prodstack6"}, {"id": "29d35b2b483346479f1ff1a13604d50e", "interface": "admin", "region_id": "prodstack6", "url": "https://manila-admin.ps6.canonical.com:8786/v1/623df63b80274c21bc79a0c35e68d615", "region": "prodstack6"}, {"id": "4aa1422b8f5945d8aed9ba6a8d670e5c", "interface": "public", "region_id": "prodstack6", "url": "https://manila.ps6.canonical.com:8786/v1/623df63b80274c21bc79a0c35e68d615", "region": "prodstack6"}], "id": "ac5e4f28fa794cde99f1d7ffc1b664e5", "type": "share", "name": "manila"}, {"endpoints": [{"id": "c7db93d54a684d8caeae1d9e18a59118", "interface": "admin", "region_id": "prodstack6", "url": "https://nova-admin.ps6.canonical.com:8774/v2.1", "region": "prodstack6"}, {"id": "dd7a796f401b477f9f1b5bbc05747d8d", "interface": "public", "region_id": "prodstack6", "url": "https://nova.ps6.canonical.com:8774/v2.1", "region": "prodstack6"}, {"id": "e7ecb038d830462ea67b0b463af5e013", "interface": "internal", "region_id": "prodstack6", "url": "https://nova-internal.ps6.canonical.com:8774/v2.1", "region": "prodstack6"}], "id": "b4519af08e174d4a8333a2d14ac3ba3b", "type": "compute", "name": "nova"}, {"endpoints": [{"id": "02ef5b6154934ffd97d8b5b8e4d70d2a", "interface": "internal", "region_id": "prodstack6", "url": "https://radosgw-internal.ps6.canonical.com:443/swift/v1/AUTH_623df63b80274c21bc79a0c35e68d615", "region": "prodstack6"}, {"id": "2741abe526e94842a4fa801423ba1ef0", "interface": "public", "region_id": "prodstack6", "url": "https://radosgw.ps6.canonical.com:443/swift/v1/AUTH_623df63b80274c21bc79a0c35e68d615", "region": "prodstack6"}, {"id": "3742f9406c604516933d6fd8c29e0880", "interface": "admin", "region_id": "prodstack6", "url": "https://radosgw-admin.ps6.canonical.com:443/swift", "region": "prodstack6"}], "id": "c7f07a7b3b3c408c96200dfd1d1a0f6f", "type": "object-store", "name": "swift"}, {"endpoints": [{"id": "06d4ed6c160a43f2b7fa7f80ad1dc709", "interface": "internal", "region_id": "prodstack6", "url": "https://designate-internal.ps6.canonical.com:9001", "region": "prodstack6"}, {"id": "1e240624a50c4ca0aaa6ef63cbc94f1b", "interface": "admin", "region_id": "prodstack6", "url": "https://designate-admin.ps6.canonical.com:9001", "region": "prodstack6"}, {"id": "f94d7d17997a43fd9c63b34c43301c6e", "interface": "public", "region_id": "prodstack6", "url": "https://designate.ps6.canonical.com:9001", "region": "prodstack6"}], "id": "cf82013d63844fedbe96bcacb6bd1fef", "type": "dns", "name": "designate"}, {"endpoints": [{"id": "4a688340be464710bfa60bf3f88f41c4", "interface": "admin", "region_id": "prodstack6", "url": "https://gnocchi-admin.ps6.canonical.com:8041", "region": "prodstack6"}, {"id": "a5a95506c96d4716adb4efc3ac9051be", "interface": "public", "region_id": "prodstack6", "url": "https://gnocchi.ps6.canonical.com:8041", "region": "prodstack6"}, {"id": "eebc17a086834f8fa8bb6b35c8061a8c", "interface": "internal", "region_id": "prodstack6", "url": "https://gnocchi-internal.ps6.canonical.com:8041", "region": "prodstack6"}], "id": "d10589e854a446a5b852593f33f170a7", "type": "metric", "name": "gnocchi"}, {"endpoints": [{"id": "08f66df28d0f47f3bec12f29e06d85ac", "interface": "admin", "region_id": "prodstack6", "url": "https://keystone-admin.ps6.canonical.com:35357/v3", "region": "prodstack6"}, {"id": "46d270b45ceb42db902f4d241afa6a70", "interface": "public", "region_id": "prodstack6", "url": "https://keystone.ps6.canonical.com:5000/v3", "region": "prodstack6"}, {"id": "a4addee11d9349cfa46ec6660dbad947", "interface": "internal", "region_id": "prodstack6", "url": "https://keystone-internal.ps6.canonical.com:5000/v3", "region": "prodstack6"}], "id": "deb38a775a9b4e87a8de9e3eed779882", "type": "identity", "name": "keystone"}, {"endpoints": [{"id": "18b4af5f40664babb94e884c6a53ccf3", "interface": "admin", "region_id": "prodstack6", "url": "https://octavia-admin.ps6.canonical.com:9876", "region": "prodstack6"}, {"id": "2b6f7ba7f9944ee1aebd6dccc5223b2d", "interface": "internal", "region_id": "prodstack6", "url": "https://octavia-internal.ps6.canonical.com:9876", "region": "prodstack6"}, {"id": "5e3012e9c79e4890be4d964b6208f5c6", "interface": "public", "region_id": "prodstack6", "url": "https://octavia.ps6.canonical.com:9876", "region": "prodstack6"}], "id": "e00337be20d54948b66a1c3109b885c6", "type": "load-balancer", "name": "octavia"}, {"endpoints": [{"id": "2d2942b35f3041389ad810f679d02f22", "interface": "public", "region_id": "prodstack6", "url": "https://placement.ps6.canonical.com:8778", "region": "prodstack6"}, {"id": "2e3beaac7ac14284b72e2592820ad725", "interface": "admin", "region_id": "prodstack6", "url": "https://placement-admin.ps6.canonical.com:8778", "region": "prodstack6"}, {"id": "91060f6df9ae444f81808adf40540d94", "interface": "internal", "region_id": "prodstack6", "url": "https://placement-internal.ps6.canonical.com:8778", "region": "prodstack6"}], "id": "edc6e37f154f4c0ab3dd4d52b82bf873", "type": "placement", "name": "placement"}]}} 3649s REQ: curl -g -i -X GET https://nova.ps6.canonical.com:8774/v2.1 -H "Accept: application/json" -H "User-Agent: python-novaclient" -H "X-Auth-Token: {SHA256}7a065c7825ed5f739ac6d445e5263669aeb3fd11158582f973ab1c3e54f3adf4" 3649s DEBUG (session:517) REQ: curl -g -i -X GET https://nova.ps6.canonical.com:8774/v2.1 -H "Accept: application/json" -H "User-Agent: python-novaclient" -H "X-Auth-Token: {SHA256}7a065c7825ed5f739ac6d445e5263669aeb3fd11158582f973ab1c3e54f3adf4" 3649s DEBUG (connectionpool:962) Starting new HTTPS connection (1): nova.ps6.canonical.com:8774 3649s DEBUG (connectionpool:429) https://nova.ps6.canonical.com:8774 "GET /v2.1 HTTP/1.1" 302 0 3649s RESP: [302] Connection: Keep-Alive Content-Length: 0 Content-Type: text/plain; charset=utf8 Date: Fri, 27 Dec 2024 20:20:26 GMT Keep-Alive: timeout=75, max=1000 Location: https://nova.ps6.canonical.com:8774/v2.1/ Server: Apache/2.4.52 (Ubuntu) x-compute-request-id: req-6fdf7cb0-b0e3-4f18-8f22-073eea44f8e2 x-openstack-request-id: req-6fdf7cb0-b0e3-4f18-8f22-073eea44f8e2 3649s DEBUG (session:548) RESP: [302] Connection: Keep-Alive Content-Length: 0 Content-Type: text/plain; charset=utf8 Date: Fri, 27 Dec 2024 20:20:26 GMT Keep-Alive: timeout=75, max=1000 Location: https://nova.ps6.canonical.com:8774/v2.1/ Server: Apache/2.4.52 (Ubuntu) x-compute-request-id: req-6fdf7cb0-b0e3-4f18-8f22-073eea44f8e2 x-openstack-request-id: req-6fdf7cb0-b0e3-4f18-8f22-073eea44f8e2 3649s RESP BODY: Omitted, Content-Type is set to text/plain; charset=utf8. Only application/json responses have their bodies logged. 3649s DEBUG (session:580) RESP BODY: Omitted, Content-Type is set to text/plain; charset=utf8. Only application/json responses have their bodies logged. 3649s DEBUG (connectionpool:429) https://nova.ps6.canonical.com:8774 "GET /v2.1/ HTTP/1.1" 200 397 3649s RESP: [200] Connection: Keep-Alive Content-Length: 397 Content-Type: application/json Date: Fri, 27 Dec 2024 20:20:26 GMT Keep-Alive: timeout=75, max=999 OpenStack-API-Version: compute 2.1 Server: Apache/2.4.52 (Ubuntu) Vary: OpenStack-API-Version,X-OpenStack-Nova-API-Version X-OpenStack-Nova-API-Version: 2.1 x-compute-request-id: req-152e6a30-150a-4745-854a-ac35f57e5910 x-openstack-request-id: req-152e6a30-150a-4745-854a-ac35f57e5910 3649s DEBUG (session:548) RESP: [200] Connection: Keep-Alive Content-Length: 397 Content-Type: application/json Date: Fri, 27 Dec 2024 20:20:26 GMT Keep-Alive: timeout=75, max=999 OpenStack-API-Version: compute 2.1 Server: Apache/2.4.52 (Ubuntu) Vary: OpenStack-API-Version,X-OpenStack-Nova-API-Version X-OpenStack-Nova-API-Version: 2.1 x-compute-request-id: req-152e6a30-150a-4745-854a-ac35f57e5910 x-openstack-request-id: req-152e6a30-150a-4745-854a-ac35f57e5910 3649s RESP BODY: {"version": {"id": "v2.1", "status": "CURRENT", "version": "2.90", "min_version": "2.1", "updated": "2013-07-23T11:33:21Z", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/"}, {"rel": "describedby", "type": "text/html", "href": "http://docs.openstack.org/"}], "media-types": [{"base": "application/json", "type": "application/vnd.openstack.compute+json;version=2.1"}]}} 3649s DEBUG (session:580) RESP BODY: {"version": {"id": "v2.1", "status": "CURRENT", "version": "2.90", "min_version": "2.1", "updated": "2013-07-23T11:33:21Z", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/"}, {"rel": "describedby", "type": "text/html", "href": "http://docs.openstack.org/"}], "media-types": [{"base": "application/json", "type": "application/vnd.openstack.compute+json;version=2.1"}]}} 3649s GET call to compute for https://nova.ps6.canonical.com:8774/v2.1/ used request id req-152e6a30-150a-4745-854a-ac35f57e5910 3649s DEBUG (session:936) GET call to compute for https://nova.ps6.canonical.com:8774/v2.1/ used request id req-152e6a30-150a-4745-854a-ac35f57e5910 3649s DEBUG (extension:189) found extension EntryPoint.parse('v1password = swiftclient.authv1:PasswordLoader') 3649s DEBUG (extension:189) found extension EntryPoint.parse('noauth = cinderclient.contrib.noauth:CinderNoAuthLoader') 3649s DEBUG (extension:189) found extension EntryPoint.parse('admin_token = keystoneauth1.loading._plugins.admin_token:AdminToken') 3649s DEBUG (extension:189) found extension EntryPoint.parse('none = keystoneauth1.loading._plugins.noauth:NoAuth') 3649s DEBUG (extension:189) found extension EntryPoint.parse('password = keystoneauth1.loading._plugins.identity.generic:Password') 3649s DEBUG (extension:189) found extension EntryPoint.parse('token = keystoneauth1.loading._plugins.identity.generic:Token') 3649s DEBUG (extension:189) found extension EntryPoint.parse('v2password = keystoneauth1.loading._plugins.identity.v2:Password') 3649s DEBUG (extension:189) found extension EntryPoint.parse('v2token = keystoneauth1.loading._plugins.identity.v2:Token') 3649s DEBUG (extension:189) found extension EntryPoint.parse('v3adfspassword = keystoneauth1.extras._saml2._loading:ADFSPassword') 3649s DEBUG (extension:189) found extension EntryPoint.parse('v3applicationcredential = keystoneauth1.loading._plugins.identity.v3:ApplicationCredential') 3649s DEBUG (extension:189) found extension EntryPoint.parse('v3fedkerb = keystoneauth1.extras.kerberos._loading:MappedKerberos') 3649s DEBUG (extension:189) found extension EntryPoint.parse('v3kerberos = keystoneauth1.extras.kerberos._loading:Kerberos') 3649s DEBUG (extension:189) found extension EntryPoint.parse('v3multifactor = keystoneauth1.loading._plugins.identity.v3:MultiFactor') 3649s DEBUG (extension:189) found extension EntryPoint.parse('v3oauth1 = keystoneauth1.extras.oauth1._loading:V3OAuth1') 3649s DEBUG (extension:189) found extension EntryPoint.parse('v3oidcaccesstoken = keystoneauth1.loading._plugins.identity.v3:OpenIDConnectAccessToken') 3649s DEBUG (extension:189) found extension EntryPoint.parse('v3oidcauthcode = keystoneauth1.loading._plugins.identity.v3:OpenIDConnectAuthorizationCode') 3649s DEBUG (extension:189) found extension EntryPoint.parse('v3oidcclientcredentials = keystoneauth1.loading._plugins.identity.v3:OpenIDConnectClientCredentials') 3649s DEBUG (extension:189) found extension EntryPoint.parse('v3oidcpassword = keystoneauth1.loading._plugins.identity.v3:OpenIDConnectPassword') 3649s DEBUG (extension:189) found extension EntryPoint.parse('v3password = keystoneauth1.loading._plugins.identity.v3:Password') 3649s DEBUG (extension:189) found extension EntryPoint.parse('v3samlpassword = keystoneauth1.extras._saml2._loading:Saml2Password') 3649s DEBUG (extension:189) found extension EntryPoint.parse('v3token = keystoneauth1.loading._plugins.identity.v3:Token') 3649s DEBUG (extension:189) found extension EntryPoint.parse('v3tokenlessauth = keystoneauth1.loading._plugins.identity.v3:TokenlessAuth') 3649s DEBUG (extension:189) found extension EntryPoint.parse('v3totp = keystoneauth1.loading._plugins.identity.v3:TOTP') 3649s DEBUG (session:517) REQ: curl -g -i -X GET https://glance.ps6.canonical.com:9292/v2/images/d18a0f1f-b400-4884-a0ad-b86f0829d4e5 -H "Accept: application/json" -H "OpenStack-API-Version: compute 2.87" -H "User-Agent: python-novaclient" -H "X-Auth-Token: {SHA256}7a065c7825ed5f739ac6d445e5263669aeb3fd11158582f973ab1c3e54f3adf4" -H "X-OpenStack-Nova-API-Version: 2.87" 3649s DEBUG (connectionpool:962) Starting new HTTPS connection (1): glance.ps6.canonical.com:9292 3649s DEBUG (connectionpool:429) https://glance.ps6.canonical.com:9292 "GET /v2/images/d18a0f1f-b400-4884-a0ad-b86f0829d4e5 HTTP/1.1" 200 2294 3649s DEBUG (session:548) RESP: [200] Connection: Keep-Alive Content-Length: 2294 Content-Type: application/json Date: Fri, 27 Dec 2024 20:20:26 GMT Keep-Alive: timeout=75, max=1000 Server: Apache/2.4.52 (Ubuntu) X-Openstack-Request-Id: req-6f4b9879-6c92-4d9e-88f6-32bc65d452bc 3649s DEBUG (session:580) RESP BODY: {"architecture": "ppc64le", "base_image_ref": "93404c41-3be3-4a13-b02b-2a1e42399530", "boot_roles": "reader,member,load-balancer_member", "content_id": "auto.sync", "hw_cdrom_bus": "scsi", "hw_disk_bus": "virtio", "hw_machine_type": "pseries", "hw_video_model": "vga", "hw_vif_model": "virtio", "image_location": "snapshot", "image_state": "available", "image_type": "snapshot", "instance_uuid": "60cc9f27-3b06-45c1-b4a2-d7c2e2e5a2b0", "item_name": "disk1.img", "os_distro": "ubuntu", "os_version": "25.04", "owner_id": "623df63b80274c21bc79a0c35e68d615", "owner_project_name": "prod-proposed-migration-ppc64el_project", "owner_user_name": "prod-proposed-migration-ppc64el", "product_name": "com.ubuntu.cloud.daily:server:25.04:ppc64el", "simplestreams_metadata": "{\"aliases\": \"25.04,p,plucky,devel\", \"arch\": \"ppc64el\", \"ftype\": \"disk1.img\", \"label\": \"daily\", \"md5\": \"ba08164f86d9d01e6f74c296e51f14d5\", \"os\": \"ubuntu\", \"pubname\": \"ubuntu-plucky-daily-ppc64el-server-20241215\", \"release\": \"plucky\", \"release_codename\": \"P", "source_content_id": "com.ubuntu.cloud:daily:download", "user_id": "c871debdeffd4cb8b69ce618fc4aa361", "version_name": "20241215", "name": "adt/ubuntu-plucky-ppc64el-server-20241227.img", "disk_format": "qcow2", "container_format": "bare", "visibility": "private", "size": 2717188096, "virtual_size": 21474836480, "status": "active", "checksum": "a03e7b1623be98174e517b087e0ac3ab", "protected": false, "min_ram": 0, "min_disk": 20, "owner": "623df63b80274c21bc79a0c35e68d615", "os_hidden": false, "os_hash_algo": "sha512", "os_hash_value": "70766464f0762b143a68b515757254477903baee9fb2f9c49f1355f7a95688091fe4c657614f0fc04922a9ca8fa5d2cc5d8aaf5144ddf86846147e3c5a8ecbd0", "id": "d18a0f1f-b400-4884-a0ad-b86f0829d4e5", "created_at": "2024-12-27T07:41:45Z", "updated_at": "2024-12-27T07:42:16Z", "locations": [{"url": "rbd://eea9d068-c18c-11ed-8dc0-013aacb71b80/glance/d18a0f1f-b400-4884-a0ad-b86f0829d4e5/snap", "metadata": {"store": "ceph"}}], "direct_url": "rbd://eea9d068-c18c-11ed-8dc0-013aacb71b80/glance/d18a0f1f-b400-4884-a0ad-b86f0829d4e5/snap", "tags": [], "self": "/v2/images/d18a0f1f-b400-4884-a0ad-b86f0829d4e5", "file": "/v2/images/d18a0f1f-b400-4884-a0ad-b86f0829d4e5/file", "schema": "/v2/schemas/image", "stores": "ceph"} 3649s DEBUG (session:936) GET call to image for https://glance.ps6.canonical.com:9292/v2/images/d18a0f1f-b400-4884-a0ad-b86f0829d4e5 used request id req-6f4b9879-6c92-4d9e-88f6-32bc65d452bc 3649s DEBUG (session:517) REQ: curl -g -i -X GET https://nova.ps6.canonical.com:8774/v2.1/flavors/autopkgtest-ppc64el -H "Accept: application/json" -H "OpenStack-API-Version: compute 2.87" -H "User-Agent: python-novaclient" -H "X-Auth-Token: {SHA256}7a065c7825ed5f739ac6d445e5263669aeb3fd11158582f973ab1c3e54f3adf4" -H "X-OpenStack-Nova-API-Version: 2.87" 3649s DEBUG (connectionpool:429) https://nova.ps6.canonical.com:8774 "GET /v2.1/flavors/autopkgtest-ppc64el HTTP/1.1" 404 92 3649s DEBUG (session:548) RESP: [404] Connection: Keep-Alive Content-Length: 92 Content-Type: application/json; charset=UTF-8 Date: Fri, 27 Dec 2024 20:20:27 GMT Keep-Alive: timeout=75, max=998 OpenStack-API-Version: compute 2.87 Server: Apache/2.4.52 (Ubuntu) Vary: OpenStack-API-Version,X-OpenStack-Nova-API-Version X-OpenStack-Nova-API-Version: 2.87 x-compute-request-id: req-ee59bd76-885b-4f37-b339-8b89eb99a996 x-openstack-request-id: req-ee59bd76-885b-4f37-b339-8b89eb99a996 3649s DEBUG (session:580) RESP BODY: {"itemNotFound": {"code": 404, "message": "Flavor autopkgtest-ppc64el could not be found."}} 3649s DEBUG (session:936) GET call to compute for https://nova.ps6.canonical.com:8774/v2.1/flavors/autopkgtest-ppc64el used request id req-ee59bd76-885b-4f37-b339-8b89eb99a996 3649s DEBUG (session:517) REQ: curl -g -i -X GET https://nova.ps6.canonical.com:8774/v2.1/flavors?is_public=None -H "Accept: application/json" -H "OpenStack-API-Version: compute 2.87" -H "User-Agent: python-novaclient" -H "X-Auth-Token: {SHA256}7a065c7825ed5f739ac6d445e5263669aeb3fd11158582f973ab1c3e54f3adf4" -H "X-OpenStack-Nova-API-Version: 2.87" 3649s DEBUG (connectionpool:429) https://nova.ps6.canonical.com:8774 "GET /v2.1/flavors?is_public=None HTTP/1.1" 200 39839 3649s DEBUG (session:548) RESP: [200] Connection: Keep-Alive Content-Length: 39839 Content-Type: application/json Date: Fri, 27 Dec 2024 20:20:27 GMT Keep-Alive: timeout=75, max=997 OpenStack-API-Version: compute 2.87 Server: Apache/2.4.52 (Ubuntu) Vary: OpenStack-API-Version,X-OpenStack-Nova-API-Version X-OpenStack-Nova-API-Version: 2.87 x-compute-request-id: req-592f7d9e-10f1-4d8b-9ed7-afc82054b0db x-openstack-request-id: req-592f7d9e-10f1-4d8b-9ed7-afc82054b0db 6273s DEBUG (session:580) RESP BODY: {"flavors": [{"id": "05338e57-e2ba-4813-9a8a-2f2af73f8ab2", "name": "builder-ppc64el-cpu2-ram4-disk100", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/05338e57-e2ba-4813-9a8a-2f2af73f8ab2"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/05338e57-e2ba-4813-9a8a-2f2af73f8ab2"}], "description": null}, {"id": "08090b4b-98a9-4c15-8ad4-cc6711700879", "name": "builder-ppc64el-cpu8-ram64-disk20", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/08090b4b-98a9-4c15-8ad4-cc6711700879"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/08090b4b-98a9-4c15-8ad4-cc6711700879"}], "description": null}, {"id": "0825b8b1-2b9c-42bf-b3e6-e827c22d8df5", "name": "builder-ppc64el-cpu8-ram4-disk100", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/0825b8b1-2b9c-42bf-b3e6-e827c22d8df5"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/0825b8b1-2b9c-42bf-b3e6-e827c22d8df5"}], "description": null}, {"id": "0b06db45-151e-44b2-b0f5-f069ad7fa1cb", "name": "builder-ppc64el-cpu2-ram12-disk20", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/0b06db45-151e-44b2-b0f5-f069ad7fa1cb"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/0b06db45-151e-44b2-b0f5-f069ad7fa1cb"}], "description": null}, {"id": "0dbf127e-3101-4f05-9d37-15ad6d2a45c1", "name": "builder-ppc64el-cpu2-ram16-disk20", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/0dbf127e-3101-4f05-9d37-15ad6d2a45c1"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/0dbf127e-3101-4f05-9d37-15ad6d2a45c1"}], "description": null}, {"id": "102d0b57-e8d2-46c6-9be4-f452119a0280", "name": "autopkgtest-ppc64el", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/102d0b57-e8d2-46c6-9be4-f452119a0280"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/102d0b57-e8d2-46c6-9be4-f452119a0280"}], "description": null}, {"id": "1219f5f0-83f3-4d33-a3bb-1a85c6303159", "name": "builder-ppc64el-cpu128-ram64-disk50", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/1219f5f0-83f3-4d33-a3bb-1a85c6303159"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/1219f5f0-83f3-4d33-a3bb-1a85c6303159"}], "description": null}, {"id": "1359c5a4-ee60-4855-9bcc-defd3bff7121", "name": "builder-ppc64el-cpu8-ram8-disk50", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/1359c5a4-ee60-4855-9bcc-defd3bff7121"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/1359c5a4-ee60-4855-9bcc-defd3bff7121"}], "description": null}, {"id": "161f21bc-11f7-4ec9-a322-04fc3e0d2a68", "name": "builder-ppc64el-cpu2-ram55-disk20", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/161f21bc-11f7-4ec9-a322-04fc3e0d2a68"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/161f21bc-11f7-4ec9-a322-04fc3e0d2a68"}], "description": null}, {"id": "166070cd-7110-473e-a6a2-5e25aa9eeefd", "name": "builder-ppc64el-cpu4-ram64-disk100", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/166070cd-7110-473e-a6a2-5e25aa9eeefd"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/166070cd-7110-473e-a6a2-5e25aa9eeefd"}], "description": null}, {"id": "16a0a259-4627-4fbd-bb9d-a3e69346467c", "name": "builder-ppc64el-cpu8-ram64-disk50", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/16a0a259-4627-4fbd-bb9d-a3e69346467c"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/16a0a259-4627-4fbd-bb9d-a3e69346467c"}], "description": null}, {"id": "1c59e50a-1a67-4691-8f2c-6954cb0f83ba", "name": "builder-ppc64el-cpu4-ram128-disk20", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/1c59e50a-1a67-4691-8f2c-6954cb0f83ba"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/1c59e50a-1a67-4691-8f2c-6954cb0f83ba"}], "description": null}, {"id": "1c94efa8-905a-4bff-8485-0aaf9ac47fe7", "name": "builder-ppc64el-cpu4-ram16-disk50", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/1c94efa8-905a-4bff-8485-0aaf9ac47fe7"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/1c94efa8-905a-4bff-8485-0aaf9ac47fe7"}], "description": null}, {"id": "213c954d-26ed-4c86-9592-66384bc22c82", "name": "builder-ppc64el-cpu4-ram16-disk100", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/213c954d-26ed-4c86-9592-66384bc22c82"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/213c954d-26ed-4c86-9592-66384bc22c82"}], "description": null}, {"id": "219e90b4-8850-4fa4-b028-4cf7657c3264", "name": "builder-ppc64el-cpu16-ram64-disk100", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/219e90b4-8850-4fa4-b028-4cf7657c3264"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/219e90b4-8850-4fa4-b028-4cf7657c3264"}], "description": null}, {"id": "21de1f2a-7ad2-4da5-b6af-de683afb51c9", "name": "builder-ppc64el-cpu48-ram64-disk100", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/21de1f2a-7ad2-4da5-b6af-de683afb51c9"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/21de1f2a-7ad2-4da5-b6af-de683afb51c9"}], "description": null}, {"id": "2363173d-a2e1-4383-945f-d69f583a729a", "name": "builder-ppc64el-cpu128-ram128-disk50", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/2363173d-a2e1-4383-945f-d69f583a729a"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/2363173d-a2e1-4383-945f-d69f583a729a"}], "description": null}, {"id": "23b7a6d6-425f-4669-961d-be7fed7725d3", "name": "builder-ppc64el-cpu2-ram12-disk50", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/23b7a6d6-425f-4669-961d-be7fed7725d3"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/23b7a6d6-425f-4669-961d-be7fed7725d3"}], "description": null}, {"id": "2464732a-3147-40fb-b375-2d275070a1f3", "name": "builder-ppc64el-cpu2-ram64-disk50", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/2464732a-3147-40fb-b375-2d275070a1f3"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/2464732a-3147-40fb-b375-2d275070a1f3"}], "description": null}, {"id": "250ba167-175c-4548-be23-47a517fa3701", "name": "builder-ppc64el-cpu16-ram72-disk80", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/250ba167-175c-4548-be23-47a517fa3701"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/250ba167-175c-4548-be23-47a517fa3701"}], "description": null}, {"id": "27ffca72-b7d0-4d4b-96c6-de69e0f767bd", "name": "builder-ppc64el-cpu2-ram8-disk1500", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/27ffca72-b7d0-4d4b-96c6-de69e0f767bd"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/27ffca72-b7d0-4d4b-96c6-de69e0f767bd"}], "description": null}, {"id": "2b2e94dd-a11d-4eae-93df-c8cce920b95e", "name": "builder-ppc64el-cpu2-ram32-disk20", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/2b2e94dd-a11d-4eae-93df-c8cce920b95e"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/2b2e94dd-a11d-4eae-93df-c8cce920b95e"}], "description": null}, {"id": "2d842f6f-be4f-4b39-bc9e-a8dbf3233bc1", "name": "builder-ppc64el-cpu2-ram4-disk50", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/2d842f6f-be4f-4b39-bc9e-a8dbf3233bc1"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/2d842f6f-be4f-4b39-bc9e-a8dbf3233bc1"}], "description": null}, {"id": "2f626a91-24b0-44ba-afa5-2cab984ae81f", "name": "builder-ppc64el-cpu128-ram32-disk100", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/2f626a91-24b0-44ba-afa5-2cab984ae81f"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/2f626a91-24b0-44ba-afa5-2cab984ae81f"}], "description": null}, {"id": "3325f74a-e433-4072-8c2c-b50052e31602", "name": "builder-ppc64el-cpu2-ram8-disk20", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/3325f74a-e433-4072-8c2c-b50052e31602"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/3325f74a-e433-4072-8c2c-b50052e31602"}], "description": null}, {"id": "34df8936-a2ae-450a-9fea-2cdaebae5803", "name": "builder-ppc64el-cpu8-ram16-disk50", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/34df8936-a2ae-450a-9fea-2cdaebae5803"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/34df8936-a2ae-450a-9fea-2cdaebae5803"}], "description": null}, {"id": "378080cb-1d08-401a-b556-0f903a79ae2c", "name": "builder-ppc64el-cpu8-ram12-disk50", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/378080cb-1d08-401a-b556-0f903a79ae2c"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/378080cb-1d08-401a-b556-0f903a79ae2c"}], "description": null}, {"id": "37ed4cfe-a588-40c4-8494-098403c1f0f3", "name": "builder-ppc64el-cpu4-ram12-disk50", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/37ed4cfe-a588-40c4-8494-098403c1f0f3"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/37ed4cfe-a588-40c4-8494-098403c1f0f3"}], "description": null}, {"id": "3aa7a161-3310-40b9-8e89-195294d45b10", "name": "builder-ppc64el-cpu48-ram128-disk100", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/3aa7a161-3310-40b9-8e89-195294d45b10"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/3aa7a161-3310-40b9-8e89-195294d45b10"}], "description": null}, {"id": "3c30219d-30a4-4fb4-bf2e-da5602313583", "name": "builder-ppc64el-cpu2-ram32-disk100", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/3c30219d-30a4-4fb4-bf2e-da5602313583"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/3c30219d-30a4-4fb4-bf2e-da5602313583"}], "description": null}, {"id": "3f533bb3-541c-4868-8883-69a5f1be7c80", "name": "builder-ppc64el-cpu16-ram16-disk20", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/3f533bb3-541c-4868-8883-69a5f1be7c80"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/3f533bb3-541c-4868-8883-69a5f1be7c80"}], "description": null}, {"id": "40ca84e0-d087-4f4b-bba2-e1823c6d3b85", "name": "builder-ppc64el-cpu8-ram8-disk100", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/40ca84e0-d087-4f4b-bba2-e1823c6d3b85"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/40ca84e0-d087-4f4b-bba2-e1823c6d3b85"}], "description": null}, {"id": "47276443-70e8-487f-9aaa-ef1a05b07c3c", "name": "builder-ppc64el-cpu4-ram105-disk20", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/47276443-70e8-487f-9aaa-ef1a05b07c3c"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/47276443-70e8-487f-9aaa-ef1a05b07c3c"}], "description": null}, {"id": "4d315fef-8774-4e68-916d-a6f08c302c0c", "name": "builder-ppc64el-cpu16-ram32-disk100", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/4d315fef-8774-4e68-916d-a6f08c302c0c"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/4d315fef-8774-4e68-916d-a6f08c302c0c"}], "description": null}, {"id": "4ea8e0b3-bd6c-4df2-a3bd-2b7dea6aea13", "name": "builder-ppc64el-cpu4-ram8-disk100", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/4ea8e0b3-bd6c-4df2-a3bd-2b7dea6aea13"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/4ea8e0b3-bd6c-4df2-a3bd-2b7dea6aea13"}], "description": null}, {"id": "503bfc0d-e770-441c-90b7-7049e4bdbe7e", "name": "builder-ppc64el-cpu8-ram120-disk28", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/503bfc0d-e770-441c-90b7-7049e4bdbe7e"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/503bfc0d-e770-441c-90b7-7049e4bdbe7e"}], "description": null}, {"id": "510412bb-aeb3-43d8-a0f0-cdb0cf97a5f2", "name": "builder-ppc64el-cpu4-ram4-disk50", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/510412bb-aeb3-43d8-a0f0-cdb0cf97a5f2"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/510412bb-aeb3-43d8-a0f0-cdb0cf97a5f2"}], "description": null}, {"id": "53b9821c-da67-415d-990c-2f023ff61d1e", "name": "builder-ppc64el-cpu8-ram32-disk100", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/53b9821c-da67-415d-990c-2f023ff61d1e"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/53b9821c-da67-415d-990c-2f023ff61d1e"}], "description": null}, {"id": "556a816f-2280-4167-bba4-0319a6d3aba9", "name": "builder-ppc64el-cpu8-ram4-disk50", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/556a816f-2280-4167-bba4-0319a6d3aba9"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/556a816f-2280-4167-bba4-0319a6d3aba9"}], "description": null}, {"id": "560c2269-9192-4b41-8787-506b25ef7067", "name": "builder-ppc64el-cpu8-ram8-disk20", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/560c2269-9192-4b41-8787-506b25ef7067"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/560c2269-9192-4b41-8787-506b25ef7067"}], "description": null}, {"id": "57403612-9552-4ada-8e55-b40624c3d8f4", "name": "builder-ppc64el-cpu8-ram16-disk500", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/57403612-9552-4ada-8e55-b40624c3d8f4"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/57403612-9552-4ada-8e55-b40624c3d8f4"}], "description": null}, {"id": "59bee3ae-a610-4f1a-b13f-a5f3400d2412", "name": "builder-ppc64el-cpu16-ram16-disk50", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/59bee3ae-a610-4f1a-b13f-a5f3400d2412"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/59bee3ae-a610-4f1a-b13f-a5f3400d2412"}], "description": null}, {"id": "5bf0bfb6-311e-4895-a22e-228b091cde43", "name": "builder-ppc64el-cpu24-ram64-disk100", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/5bf0bfb6-311e-4895-a22e-228b091cde43"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/5bf0bfb6-311e-4895-a22e-228b091cde43"}], "description": null}, {"id": "5d1a2077-5359-4a36-922a-351690cae9cc", "name": "builder-ppc64el-cpu4-ram8-disk50", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/5d1a2077-5359-4a36-922a-351690cae9cc"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/5d1a2077-5359-4a36-922a-351690cae9cc"}], "description": null}, {"id": "60cc1be7-1fa9-49e9-8702-419f39585f4b", "name": "builder-ppc64el-cpu8-ram16-disk200", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/60cc1be7-1fa9-49e9-8702-419f39585f4b"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/60cc1be7-1fa9-49e9-8702-419f39585f4b"}], "description": null}, {"id": "62f8dfc9-c388-44d0-962f-79bb9917cd11", "name": "builder-ppc64el-cpu2-ram44-disk20", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/62f8dfc9-c388-44d0-962f-79bb9917cd11"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/62f8dfc9-c388-44d0-962f-79bb9917cd11"}], "description": null}, {"id": "6679449d-f912-473e-82a2-42546b3087e2", "name": "builder-ppc64el-cpu24-ram128-disk100", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/6679449d-f912-473e-82a2-42546b3087e2"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/6679449d-f912-473e-82a2-42546b3087e2"}], "description": null}, {"id": "694472bd-b1d9-4708-a626-5e5b3dc7e09a", "name": "builder-ppc64el-cpu4-ram8-disk20", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/694472bd-b1d9-4708-a626-5e5b3dc7e09a"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/694472bd-b1d9-4708-a626-5e5b3dc7e09a"}], "description": null}, {"id": "696dde5e-582a-44cf-a030-ef883bc20144", "name": "builder-ppc64el-cpu8-ram16-disk100", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/696dde5e-582a-44cf-a030-ef883bc20144"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/696dde5e-582a-44cf-a030-ef883bc20144"}], "description": null}, {"id": "6e611cfc-91b1-4ade-877b-32b26ee297eb", "name": "builder-ppc64el-cpu2-ram16-disk100", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/6e611cfc-91b1-4ade-877b-32b26ee297eb"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/6e611cfc-91b1-4ade-877b-32b26ee297eb"}], "description": null}, {"id": "6e66fb56-0aa8-47f9-a877-e48efe207344", "name": "builder-ppc64el-cpu8-ram32-disk20", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/6e66fb56-0aa8-47f9-a877-e48efe207344"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/6e66fb56-0aa8-47f9-a877-e48efe207344"}], "description": null}, {"id": "70ba6763-188c-45d0-bb63-7e7930afb1aa", "name": "builder-ppc64el-cpu32-ram256-disk50", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/70ba6763-188c-45d0-bb63-7e7930afb1aa"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/70ba6763-188c-45d0-bb63-7e7930afb1aa"}], "description": null}, {"id": "73ce7235-e8b9-4370-aeba-3a33729c46b3", "name": "builder-ppc64el-cpu4-ram16-disk20", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/73ce7235-e8b9-4370-aeba-3a33729c46b3"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/73ce7235-e8b9-4370-aeba-3a33729c46b3"}], "description": null}, {"id": "74ef175b-e74b-4750-a5c3-abcefba98501", "name": "builder-ppc64el-cpu8-ram12-disk100", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/74ef175b-e74b-4750-a5c3-abcefba98501"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/74ef175b-e74b-4750-a5c3-abcefba98501"}], "description": null}, {"id": "79aee276-b044-40e3-bf50-9ba4009d1400", "name": "builder-ppc64el-cpu8-ram32-disk50", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/79aee276-b044-40e3-bf50-9ba4009d1400"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/79aee276-b044-40e3-bf50-9ba4009d1400"}], "description": null}, {"id": "79e5d123-cfc1-4b78-a85b-b607091140eb", "name": "builder-ppc64el-cpu64-ram128-disk100", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/79e5d123-cfc1-4b78-a85b-b607091140eb"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/79e5d123-cfc1-4b78-a85b-b607091140eb"}], "description": null}, {"id": "7c20dd8b-310a-4013-ac86-21fdfb5ff536", "name": "builder-ppc64el-cpu8-ram128-disk20", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/7c20dd8b-310a-4013-ac86-21fdfb5ff536"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/7c20dd8b-310a-4013-ac86-21fdfb5ff536"}], "description": null}, {"id": "82e7fa99-f07c-46de-8f52-b92ad80a561a", "name": "builder-ppc64el-cpu2-ram16-disk68", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/82e7fa99-f07c-46de-8f52-b92ad80a561a"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/82e7fa99-f07c-46de-8f52-b92ad80a561a"}], "description": null}, {"id": "85159e74-03c6-4178-bb31-e756efd11acb", "name": "builder-ppc64el-cpu16-ram8-disk50", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/85159e74-03c6-4178-bb31-e756efd11acb"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/85159e74-03c6-4178-bb31-e756efd11acb"}], "description": null}, {"id": "85f8b76d-5d7f-4f2a-998c-cd1d11c834ac", "name": "builder-ppc64el-cpu4-ram64-disk20", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/85f8b76d-5d7f-4f2a-998c-cd1d11c834ac"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/85f8b76d-5d7f-4f2a-998c-cd1d11c834ac"}], "description": null}, {"id": "861fa361-94af-45b2-9de2-5cbe0df87b1f", "name": "builder-ppc64el-cpu4-ram12-disk20", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/861fa361-94af-45b2-9de2-5cbe0df87b1f"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/861fa361-94af-45b2-9de2-5cbe0df87b1f"}], "description": null}, {"id": "88f7a27b-bd61-4d5e-a90f-391ef9d78fc4", "name": "builder-ppc64el-cpu4-ram105-disk28", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/88f7a27b-bd61-4d5e-a90f-391ef9d78fc4"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/88f7a27b-bd61-4d5e-a90f-391ef9d78fc4"}], "description": null}, {"id": "89afc706-8e2c-4ccd-b411-2d387d894209", "name": "builder-ppc64el-cpu2-ram16-disk50", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/89afc706-8e2c-4ccd-b411-2d387d894209"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/89afc706-8e2c-4ccd-b411-2d387d894209"}], "description": null}, {"id": "905418ec-52e8-4ae7-adf1-ccef895e14c2", "name": "builder-ppc64el-cpu4-ram64-disk50", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/905418ec-52e8-4ae7-adf1-ccef895e14c2"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/905418ec-52e8-4ae7-adf1-ccef895e14c2"}], "description": null}, {"id": "95b1a0b4-1ecc-4ceb-a8d6-2d3bdefbce79", "name": "builder-ppc64el-cpu2-ram8-disk100", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/95b1a0b4-1ecc-4ceb-a8d6-2d3bdefbce79"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/95b1a0b4-1ecc-4ceb-a8d6-2d3bdefbce79"}], "description": null}, {"id": "97704ac8-c97f-4f00-8e0d-85aa4e940154", "name": "builder-ppc64el-cpu2-ram12-disk100", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/97704ac8-c97f-4f00-8e0d-85aa4e940154"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/97704ac8-c97f-4f00-8e0d-85aa4e940154"}], "description": null}, {"id": "9a51418a-b43e-417c-9d1d-5c706d3ca620", "name": "builder-ppc64el-cpu8-ram40-disk68", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/9a51418a-b43e-417c-9d1d-5c706d3ca620"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/9a51418a-b43e-417c-9d1d-5c706d3ca620"}], "description": null}, {"id": "9af1f804-8d3b-4769-b317-63a8ee73942b", "name": "builder-ppc64el-cpu4-ram8-disk200", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/9af1f804-8d3b-4769-b317-63a8ee73942b"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/9af1f804-8d3b-4769-b317-63a8ee73942b"}], "description": null}, {"id": "9b15a7c7-c4c2-4841-b95e-928a217f2995", "name": "builder-ppc64el-cpu128-ram128-disk100", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/9b15a7c7-c4c2-4841-b95e-928a217f2995"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/9b15a7c7-c4c2-4841-b95e-928a217f2995"}], "description": null}, {"id": "9bec8a82-6767-45bd-826f-abd939beb5e3", "name": "builder-ppc64el-cpu4-ram12-disk100", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/9bec8a82-6767-45bd-826f-abd939beb5e3"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/9bec8a82-6767-45bd-826f-abd939beb5e3"}], "description": null}, {"id": "9e195c66-66cf-4314-bf0c-7b24de55e52f", "name": "builder-ppc64el-cpu8-ram64-disk100", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/9e195c66-66cf-4314-bf0c-7b24de55e52f"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/9e195c66-66cf-4314-bf0c-7b24de55e52f"}], "description": null}, {"id": "a37e29b1-11ac-4bd5-a015-a9ee46ed25b8", "name": "builder-ppc64el-cpu32-ram128-disk50", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/a37e29b1-11ac-4bd5-a015-a9ee46ed25b8"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/a37e29b1-11ac-4bd5-a015-a9ee46ed25b8"}], "description": null}, {"id": "a8157747-dcd3-4c19-98b7-df687076ae87", "name": "builder-ppc64el-cpu4-ram4-disk20", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/a8157747-dcd3-4c19-98b7-df687076ae87"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/a8157747-dcd3-4c19-98b7-df687076ae87"}], "description": null}, {"id": "a8d935bc-6ad6-4942-abdd-670d6421a03b", "name": "builder-ppc64el-cpu128-ram32-disk50", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/a8d935bc-6ad6-4942-abdd-670d6421a03b"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/a8d935bc-6ad6-4942-abdd-670d6421a03b"}], "description": null}, {"id": "ac354706-0335-4e10-a755-51a75b1a962c", "name": "builder-ppc64el-cpu4-ram8-disk120", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/ac354706-0335-4e10-a755-51a75b1a962c"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/ac354706-0335-4e10-a755-51a75b1a962c"}], "description": null}, {"id": "acb43878-9eee-4d8a-8ec0-610607dd1a28", "name": "builder-ppc64el-cpu128-ram64-disk100", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/acb43878-9eee-4d8a-8ec0-610607dd1a28"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/acb43878-9eee-4d8a-8ec0-610607dd1a28"}], "description": null}, {"id": "ad9b6a30-fa9a-400e-b49b-51f9a3c2eda9", "name": "builder-ppc64el-cpu4-ram72-disk28", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/ad9b6a30-fa9a-400e-b49b-51f9a3c2eda9"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/ad9b6a30-fa9a-400e-b49b-51f9a3c2eda9"}], "description": null}, {"id": "b1004655-b40b-44b4-be0b-7cf1763734a1", "name": "builder-ppc64el-cpu32-ram128-disk100", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/b1004655-b40b-44b4-be0b-7cf1763734a1"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/b1004655-b40b-44b4-be0b-7cf1763734a1"}], "description": null}, {"id": "b39a607b-bb86-4b68-a455-9dfcb714130f", "name": "builder-ppc64el-cpu4-ram72-disk20", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/b39a607b-bb86-4b68-a455-9dfcb714130f"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/b39a607b-bb86-4b68-a455-9dfcb714130f"}], "description": null}, {"id": "b5673781-1772-4bbf-8526-4d19486c6ac3", "name": "builder-ppc64el-cpu2-ram8-disk28", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/b5673781-1772-4bbf-8526-4d19486c6ac3"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/b5673781-1772-4bbf-8526-4d19486c6ac3"}], "description": null}, {"id": "b7538b06-d418-44a1-8ec5-30cc698ac005", "name": "builder-ppc64el-cpu16-ram32-disk50", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/b7538b06-d418-44a1-8ec5-30cc698ac005"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/b7538b06-d418-44a1-8ec5-30cc698ac005"}], "description": null}, {"id": "bc3d73f7-47c5-4533-9915-5da668c18032", "name": "builder-ppc64el-cpu4-ram4-disk100", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/bc3d73f7-47c5-4533-9915-5da668c18032"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/bc3d73f7-47c5-4533-9915-5da668c18032"}], "description": null}, {"id": "be11f608-8f5e-4e93-8b39-2e062fc23eb1", "name": "builder-ppc64el-cpu16-ram64-disk50", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/be11f608-8f5e-4e93-8b39-2e062fc23eb1"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/be11f608-8f5e-4e93-8b39-2e062fc23eb1"}], "description": null}, {"id": "c7e29ea5-b92f-4011-bc7c-1a81af4e8e98", "name": "builder-ppc64el-cpu8-ram16-disk1000", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/c7e29ea5-b92f-4011-bc7c-1a81af4e8e98"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/c7e29ea5-b92f-4011-bc7c-1a81af4e8e98"}], "description": null}, {"id": "ccda5e60-c156-4367-aeaf-25d9cd9fc4d8", "name": "builder-ppc64el-cpu4-ram24-disk68", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/ccda5e60-c156-4367-aeaf-25d9cd9fc4d8"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/ccda5e60-c156-4367-aeaf-25d9cd9fc4d8"}], "description": null}, {"id": "cdc72dd8-3a8d-4f6f-997b-60017a100228", "name": "builder-ppc64el-cpu4-ram40-disk188", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/cdc72dd8-3a8d-4f6f-997b-60017a100228"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/cdc72dd8-3a8d-4f6f-997b-60017a100228"}], "description": null}, {"id": "cedd22e7-22ba-425e-8ace-5a3607e63239", "name": "builder-ppc64el-cpu16-ram4-disk50", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/cedd22e7-22ba-425e-8ace-5a3607e63239"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/cedd22e7-22ba-425e-8ace-5a3607e63239"}], "description": null}, {"id": "cffc3023-932a-439e-8bb7-faf8f6d6c42a", "name": "builder-ppc64el-cpu16-ram128-disk100", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/cffc3023-932a-439e-8bb7-faf8f6d6c42a"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/cffc3023-932a-439e-8bb7-faf8f6d6c42a"}], "description": null}, {"id": "d0030e34-8145-4944-a92d-ba1e454c6126", "name": "builder-ppc64el-cpu64-ram256-disk50", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/d0030e34-8145-4944-a92d-ba1e454c6126"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/d0030e34-8145-4944-a92d-ba1e454c6126"}], "description": null}, {"id": "d24cccba-50db-4ebf-8e12-4f601202a489", "name": "builder-ppc64el-cpu2-ram4-disk20", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/d24cccba-50db-4ebf-8e12-4f601202a489"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/d24cccba-50db-4ebf-8e12-4f601202a489"}], "description": null}, {"id": "d3801d0d-ae1d-474a-be3f-c3b4e0d75ce6", "name": "builder-ppc64el-cpu4-ram32-disk50", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/d3801d0d-ae1d-474a-be3f-c3b4e0d75ce6"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/d3801d0d-ae1d-474a-be3f-c3b4e0d75ce6"}], "description": null}, {"id": "d4a9ba53-090a-4189-a822-48d3e2d80aa2", "name": "builder-ppc64el-cpu2-ram32-disk50", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/d4a9ba53-090a-4189-a822-48d3e2d80aa2"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/d4a9ba53-090a-4189-a822-48d3e2d80aa2"}], "description": null}, {"id": "d5142b95-4b59-484a-8d9d-e0519b9fdbba", "name": "builder-ppc64el-cpu4-ram32-disk100", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/d5142b95-4b59-484a-8d9d-e0519b9fdbba"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/d5142b95-4b59-484a-8d9d-e0519b9fdbba"}], "description": null}, {"id": "d67d41f2-0658-4e81-ac4f-abc5e19944a7", "name": "builder-ppc64el-cpu2-ram64-disk20", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/d67d41f2-0658-4e81-ac4f-abc5e19944a7"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/d67d41f2-0658-4e81-ac4f-abc5e19944a7"}], "description": null}, {"id": "d7441372-a91d-47c8-89a4-c08f59ece241", "name": "builder-ppc64el-cpu16-ram32-disk20", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/d7441372-a91d-47c8-89a4-c08f59ece241"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/d7441372-a91d-47c8-89a4-c08f59ece241"}], "description": null}, {"id": "da39261b-e816-43f1-a7bb-f5e784e73fbb", "name": "builder-ppc64el-cpu16-ram16-disk100", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/da39261b-e816-43f1-a7bb-f5e784e73fbb"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/da39261b-e816-43f1-a7bb-f5e784e73fbb"}], "description": null}, {"id": "dcc8e80f-6e4d-4f7d-a68f-298ebcb4376d", "name": "builder-ppc64el-cpu32-ram256-disk100", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/dcc8e80f-6e4d-4f7d-a68f-298ebcb4376d"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/dcc8e80f-6e4d-4f7d-a68f-298ebcb4376d"}], "description": null}, {"id": "dd1211e5-4133-400a-9dc9-71fa83fd4d97", "name": "builder-ppc64el-cpu2-ram55-disk28", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/dd1211e5-4133-400a-9dc9-71fa83fd4d97"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/dd1211e5-4133-400a-9dc9-71fa83fd4d97"}], "description": null}, {"id": "dfa7dc00-528e-45c5-b267-3d798e73e8da", "name": "builder-ppc64el-cpu8-ram4-disk20", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/dfa7dc00-528e-45c5-b267-3d798e73e8da"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/dfa7dc00-528e-45c5-b267-3d798e73e8da"}], "description": null}, {"id": "e2116c8a-a35a-432f-8bf7-06bef30c10ae", "name": "builder-ppc64el-cpu8-ram12-disk20", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/e2116c8a-a35a-432f-8bf7-06bef30c10ae"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/e2116c8a-a35a-432f-8bf7-06bef30c10ae"}], "description": null}, {"id": "e2818c96-49bf-4337-a614-ae546d7d7302", "name": "builder-ppc64el-cpu4-ram32-disk20", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/e2818c96-49bf-4337-a614-ae546d7d7302"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/e2818c96-49bf-4337-a614-ae546d7d7302"}], "description": null}, {"id": "e628d527-f077-426d-9380-5eea778aabc2", "name": "builder-ppc64el-cpu8-ram16-disk20", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/e628d527-f077-426d-9380-5eea778aabc2"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/e628d527-f077-426d-9380-5eea778aabc2"}], "description": null}, {"id": "e752e039-cbe4-4a16-8197-de87ba42b83e", "name": "builder-ppc64el-cpu64-ram256-disk100", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/e752e039-cbe4-4a16-8197-de87ba42b83e"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/e752e039-cbe4-4a16-8197-de87ba42b83e"}], "description": null}, {"id": "e7f811c8-a60c-45c6-86c8-8e4b025751df", "name": "builder-ppc64el-cpu4-ram16-disk40", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/e7f811c8-a60c-45c6-86c8-8e4b025751df"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/e7f811c8-a60c-45c6-86c8-8e4b025751df"}], "description": null}, {"id": "eb80d7e2-b6e1-42a5-b80d-3dad861f6989", "name": "builder-ppc64el-cpu16-ram4-disk20", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/eb80d7e2-b6e1-42a5-b80d-3dad861f6989"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/eb80d7e2-b6e1-42a5-b80d-3dad861f6989"}], "description": null}, {"id": "ed127e2b-02b8-4e61-bf10-0c89b90928e6", "name": "builder-ppc64el-cpu64-ram128-disk50", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/ed127e2b-02b8-4e61-bf10-0c89b90928e6"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/ed127e2b-02b8-4e61-bf10-0c89b90928e6"}], "description": null}, {"id": "ef7301a7-71f4-48ac-b387-23251f4060e1", "name": "builder-ppc64el-cpu16-ram8-disk100", "links": [{"rel": "self", "href": "https://nova.ps6.canonical.com:8774/v2.1/flavors/ef7301a7-71f4-48ac-b387-23251f4060e1"}, {"rel": "bookmark", "href": "https://nova.ps6.canonical.com:8774/flavors/ef7301a7-71f4-48ac-b387-23251f4060e1"}], "description": null}, {"id": "f0f1af4d-f230-40c1-b789nova [W] Timed out waiting for 73888d90-2ed5-44ad-a1b6-38bcf529bda8 to get deleted. 6273s Unexpected error: 6273s Traceback (most recent call last): 6273s File "/home/ubuntu/autopkgtest/lib/VirtSubproc.py", line 833, in mainloop 6273s command() 6273s File "/home/ubuntu/autopkgtest/lib/VirtSubproc.py", line 762, in command 6273s r = f(c, ce) 6273s File "/home/ubuntu/autopkgtest/lib/VirtSubproc.py", line 395, in cmd_revert 6273s caller.hook_revert() 6273s File "/home/ubuntu/autopkgtest/virt/autopkgtest-virt-ssh", line 433, in hook_revert 6273s host_setup('revert') 6273s File "/home/ubuntu/autopkgtest/virt/autopkgtest-virt-ssh", line 252, in host_setup 6273s execute_setup_script(command) 6273s File "/home/ubuntu/autopkgtest/virt/autopkgtest-virt-ssh", line 209, in execute_setup_script 6273s sys.stderr.write(err) 6273s BlockingIOError: [Errno 11] write could not complete without blocking 6273s autopkgtest [21:15:11]: ERROR: testbed failure: unexpected eof from the testbed