0s autopkgtest [09:27:04]: starting date and time: 2025-04-14 09:27:04+0000 0s autopkgtest [09:27:04]: git checkout: 9986aa8c Merge branch 'skia/fix_network_interface' into 'ubuntu/production' 0s autopkgtest [09:27:04]: host juju-7f2275-prod-proposed-migration-environment-23; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.tb2dstp8/out --timeout-copy=6000 --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --apt-pocket=proposed=src:patroni --apt-upgrade patroni --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 --env=ADT_TEST_TRIGGERS=patroni/4.0.4-8 -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor autopkgtest-cpu2-ram4-disk20-ppc64el --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-23@sto01-ppc64el-8.secgroup --name adt-plucky-ppc64el-patroni-20250414-092704-juju-7f2275-prod-proposed-migration-environment-23-fabd2da4-4fa7-463a-b32a-353f0dd6acf0 --image adt/ubuntu-plucky-ppc64el-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-23 --net-id=net_prod-autopkgtest-workers-ppc64el -e TERM=linux --mirror=http://ftpmaster.internal/ubuntu/ 75s autopkgtest [09:28:19]: testbed dpkg architecture: ppc64el 75s autopkgtest [09:28:19]: testbed apt version: 3.0.0 75s autopkgtest [09:28:19]: @@@@@@@@@@@@@@@@@@@@ test bed setup 75s autopkgtest [09:28:19]: testbed release detected to be: None 76s autopkgtest [09:28:20]: updating testbed package index (apt update) 77s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [265 kB] 77s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 77s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 77s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 77s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [9948 B] 77s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [5192 B] 77s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [204 kB] 77s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/main ppc64el Packages [3476 B] 77s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/main ppc64el c-n-f Metadata [288 B] 77s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/restricted ppc64el c-n-f Metadata [120 B] 77s Get:11 http://ftpmaster.internal/ubuntu plucky-proposed/universe ppc64el Packages [120 kB] 77s Get:12 http://ftpmaster.internal/ubuntu plucky-proposed/universe ppc64el c-n-f Metadata [8688 B] 77s Get:13 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse ppc64el Packages [2008 B] 77s Get:14 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse ppc64el c-n-f Metadata [172 B] 79s Fetched 619 kB in 1s (1205 kB/s) 79s Reading package lists... 80s autopkgtest [09:28:24]: upgrading testbed (apt dist-upgrade and autopurge) 80s Reading package lists... 80s Building dependency tree... 80s Reading state information... 80s Calculating upgrade...Starting pkgProblemResolver with broken count: 0 80s Starting 2 pkgProblemResolver with broken count: 0 80s Done 81s Entering ResolveByKeep 81s 81s Calculating upgrade... 81s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 81s Reading package lists... 81s Building dependency tree... 81s Reading state information... 82s Starting pkgProblemResolver with broken count: 0 82s Starting 2 pkgProblemResolver with broken count: 0 82s Done 82s Solving dependencies... 82s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 84s autopkgtest [09:28:28]: testbed running kernel: Linux 6.14.0-15-generic #15-Ubuntu SMP Sun Apr 6 14:52:42 UTC 2025 84s autopkgtest [09:28:28]: @@@@@@@@@@@@@@@@@@@@ apt-source patroni 86s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed/universe patroni 4.0.4-8 (dsc) [2870 B] 86s Get:2 http://ftpmaster.internal/ubuntu plucky-proposed/universe patroni 4.0.4-8 (tar) [1205 kB] 86s Get:3 http://ftpmaster.internal/ubuntu plucky-proposed/universe patroni 4.0.4-8 (diff) [28.2 kB] 87s gpgv: Signature made Fri Mar 14 13:47:44 2025 UTC 87s gpgv: using RSA key 9CA877749FAB2E4FA96862ECDC686A27B43481B0 87s gpgv: Can't check signature: No public key 87s dpkg-source: warning: cannot verify inline signature for ./patroni_4.0.4-8.dsc: no acceptable signature found 87s autopkgtest [09:28:31]: testing package patroni version 4.0.4-8 87s autopkgtest [09:28:31]: build not needed 88s autopkgtest [09:28:32]: test test: preparing testbed 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 89s The following NEW packages will be installed: 89s fonts-font-awesome fonts-lato libcares2 libev4t64 libjs-jquery 89s libjs-jquery-hotkeys libjs-jquery-isonscreen libjs-jquery-metadata 89s libjs-jquery-tablesorter libjs-jquery-throttle-debounce libjs-sphinxdoc 89s libjs-underscore libpq5 patroni patroni-doc python3-aiohappyeyeballs 89s python3-aiohttp python3-aiosignal python3-async-timeout python3-boto3 89s python3-botocore python3-cachetools python3-click python3-consul 89s python3-coverage python3-dateutil python3-dnspython python3-etcd 89s python3-eventlet python3-flake8 python3-frozenlist python3-gevent 89s python3-google-auth python3-greenlet python3-iniconfig python3-jmespath 89s python3-kazoo python3-kerberos python3-kubernetes python3-mccabe 89s python3-mock python3-multidict python3-packaging python3-pluggy 89s python3-prettytable python3-psutil python3-psycopg2 python3-pure-sasl 89s python3-pyasn1 python3-pyasn1-modules python3-pycodestyle python3-pyflakes 89s python3-pysyncobj python3-pytest python3-pytest-cov python3-pyu2f 89s python3-requests-oauthlib python3-responses python3-rsa python3-s3transfer 89s python3-six python3-wcwidth python3-websocket python3-yarl python3-ydiff 89s python3-zope.event python3-zope.interface sphinx-rtd-theme-common 89s 0 upgraded, 68 newly installed, 0 to remove and 0 not upgraded. 89s Need to get 17.8 MB of archives. 89s After this operation, 172 MB of additional disk space will be used. 89s Get:1 http://ftpmaster.internal/ubuntu plucky/main ppc64el fonts-lato all 2.015-1 [2781 kB] 89s Get:2 http://ftpmaster.internal/ubuntu plucky/main ppc64el fonts-font-awesome all 5.0.10+really4.7.0~dfsg-4.1 [516 kB] 89s Get:3 http://ftpmaster.internal/ubuntu plucky/main ppc64el libcares2 ppc64el 1.34.4-2.1 [126 kB] 89s Get:4 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libev4t64 ppc64el 1:4.33-2.1build1 [34.9 kB] 89s Get:5 http://ftpmaster.internal/ubuntu plucky/main ppc64el libjs-jquery all 3.6.1+dfsg+~3.5.14-1 [328 kB] 89s Get:6 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjs-jquery-metadata all 12-4 [6582 B] 89s Get:7 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjs-jquery-tablesorter all 1:2.31.3+dfsg1-4 [192 kB] 89s Get:8 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjs-jquery-throttle-debounce all 1.1+dfsg.1-2 [12.5 kB] 89s Get:9 http://ftpmaster.internal/ubuntu plucky/main ppc64el libjs-underscore all 1.13.4~dfsg+~1.11.4-3 [118 kB] 89s Get:10 http://ftpmaster.internal/ubuntu plucky/main ppc64el libjs-sphinxdoc all 8.1.3-5 [31.0 kB] 89s Get:11 http://ftpmaster.internal/ubuntu plucky/main ppc64el libpq5 ppc64el 17.4-1 [174 kB] 89s Get:12 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-click all 8.2.0+0.really.8.1.8-1 [80.0 kB] 89s Get:13 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-dateutil all 2.9.0-4 [80.3 kB] 89s Get:14 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-wcwidth all 0.2.13+dfsg1-1 [26.3 kB] 89s Get:15 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-prettytable all 3.12.0-1 [36.5 kB] 89s Get:16 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-psutil ppc64el 5.9.8-2build3 [197 kB] 89s Get:17 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-ydiff all 1.4.2-1 [19.0 kB] 89s Get:18 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-psycopg2 ppc64el 2.9.10-1build1 [151 kB] 89s Get:19 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-dnspython all 2.7.0-1ubuntu1 [167 kB] 89s Get:20 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-etcd all 0.4.5-6 [32.1 kB] 89s Get:21 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-consul all 1.5.1+dfsg-1 [21.7 kB] 90s Get:22 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-greenlet ppc64el 3.1.0-1build1 [168 kB] 90s Get:23 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-eventlet all 0.39.0-0ubuntu1 [277 kB] 90s Get:24 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-zope.event all 5.0-0.1 [7512 B] 90s Get:25 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-zope.interface ppc64el 7.2-1build1 [143 kB] 90s Get:26 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-gevent ppc64el 24.11.1-1build1 [905 kB] 90s Get:27 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-kerberos ppc64el 1.1.14-3.1build11 [22.0 kB] 90s Get:28 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-pure-sasl all 0.5.1+dfsg1-5 [11.4 kB] 90s Get:29 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-six all 1.17.0-1 [13.2 kB] 90s Get:30 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-kazoo all 2.9.0-2 [103 kB] 90s Get:31 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-multidict ppc64el 6.2.0-2 [37.9 kB] 90s Get:32 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-yarl ppc64el 1.13.1-1build2 [102 kB] 90s Get:33 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-async-timeout all 5.0.1-1 [6830 B] 90s Get:34 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-aiohappyeyeballs all 2.6.1-1 [11.1 kB] 90s Get:35 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-frozenlist ppc64el 1.5.0-1build2 [53.2 kB] 90s Get:36 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-aiosignal all 1.3.2-1 [5182 B] 90s Get:37 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-aiohttp ppc64el 3.10.11-1build1 [315 kB] 90s Get:38 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-cachetools all 5.3.3-1 [10.3 kB] 90s Get:39 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-pyasn1 all 0.6.1-1 [56.4 kB] 90s Get:40 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-pyasn1-modules all 0.4.1-2 [80.3 kB] 90s Get:41 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-pyu2f all 0.1.5-4 [22.9 kB] 90s Get:42 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-responses all 0.25.6-1 [40.5 kB] 90s Get:43 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-rsa all 4.9-2 [28.2 kB] 90s Get:44 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-google-auth all 2.28.2-3 [91.0 kB] 91s Get:45 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-requests-oauthlib all 1.3.1-1 [18.8 kB] 91s Get:46 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-websocket all 1.8.0-2 [38.5 kB] 91s Get:47 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-kubernetes all 30.1.0-2 [385 kB] 91s Get:48 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-pysyncobj all 0.3.14-2 [61.9 kB] 91s Get:49 http://ftpmaster.internal/ubuntu plucky-proposed/universe ppc64el patroni all 4.0.4-8 [282 kB] 91s Get:50 http://ftpmaster.internal/ubuntu plucky/main ppc64el sphinx-rtd-theme-common all 3.0.2+dfsg-2 [1014 kB] 91s Get:51 http://ftpmaster.internal/ubuntu plucky-proposed/universe ppc64el patroni-doc all 4.0.4-8 [526 kB] 91s Get:52 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-jmespath all 1.0.1-1 [21.3 kB] 91s Get:53 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-botocore all 1.37.9+repack-1 [6982 kB] 91s Get:54 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-s3transfer all 0.11.2-2 [55.5 kB] 91s Get:55 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-boto3 all 1.37.9-1 [73.0 kB] 91s Get:56 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-coverage ppc64el 7.6.0+dfsg1-2build1 [154 kB] 91s Get:57 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-mccabe all 0.7.0-1 [8678 B] 91s Get:58 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-pycodestyle all 2.12.1-2 [30.2 kB] 91s Get:59 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-pyflakes all 3.2.0-3 [53.0 kB] 91s Get:60 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-flake8 all 7.1.1-3 [44.0 kB] 91s Get:61 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-iniconfig all 1.1.1-2 [6024 B] 91s Get:62 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-packaging all 24.2-1 [51.5 kB] 91s Get:63 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-pluggy all 1.5.0-1 [21.0 kB] 91s Get:64 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-pytest all 8.3.5-1 [252 kB] 91s Get:65 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjs-jquery-hotkeys all 0.2.0-1 [13.3 kB] 91s Get:66 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjs-jquery-isonscreen all 1.2.0-1.1 [3244 B] 91s Get:67 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-pytest-cov all 5.0.0-1 [21.3 kB] 91s Get:68 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-mock all 5.1.0-1 [64.1 kB] 92s Fetched 17.8 MB in 3s (6506 kB/s) 92s Selecting previously unselected package fonts-lato. 92s (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 ... 107206 files and directories currently installed.) 92s Preparing to unpack .../00-fonts-lato_2.015-1_all.deb ... 92s Unpacking fonts-lato (2.015-1) ... 93s Selecting previously unselected package fonts-font-awesome. 93s Preparing to unpack .../01-fonts-font-awesome_5.0.10+really4.7.0~dfsg-4.1_all.deb ... 93s Unpacking fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ... 93s Selecting previously unselected package libcares2:ppc64el. 93s Preparing to unpack .../02-libcares2_1.34.4-2.1_ppc64el.deb ... 93s Unpacking libcares2:ppc64el (1.34.4-2.1) ... 93s Selecting previously unselected package libev4t64:ppc64el. 93s Preparing to unpack .../03-libev4t64_1%3a4.33-2.1build1_ppc64el.deb ... 93s Unpacking libev4t64:ppc64el (1:4.33-2.1build1) ... 93s Selecting previously unselected package libjs-jquery. 93s Preparing to unpack .../04-libjs-jquery_3.6.1+dfsg+~3.5.14-1_all.deb ... 93s Unpacking libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 93s Selecting previously unselected package libjs-jquery-metadata. 93s Preparing to unpack .../05-libjs-jquery-metadata_12-4_all.deb ... 93s Unpacking libjs-jquery-metadata (12-4) ... 93s Selecting previously unselected package libjs-jquery-tablesorter. 93s Preparing to unpack .../06-libjs-jquery-tablesorter_1%3a2.31.3+dfsg1-4_all.deb ... 93s Unpacking libjs-jquery-tablesorter (1:2.31.3+dfsg1-4) ... 93s Selecting previously unselected package libjs-jquery-throttle-debounce. 93s Preparing to unpack .../07-libjs-jquery-throttle-debounce_1.1+dfsg.1-2_all.deb ... 93s Unpacking libjs-jquery-throttle-debounce (1.1+dfsg.1-2) ... 93s Selecting previously unselected package libjs-underscore. 93s Preparing to unpack .../08-libjs-underscore_1.13.4~dfsg+~1.11.4-3_all.deb ... 93s Unpacking libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 93s Selecting previously unselected package libjs-sphinxdoc. 93s Preparing to unpack .../09-libjs-sphinxdoc_8.1.3-5_all.deb ... 93s Unpacking libjs-sphinxdoc (8.1.3-5) ... 93s Selecting previously unselected package libpq5:ppc64el. 93s Preparing to unpack .../10-libpq5_17.4-1_ppc64el.deb ... 93s Unpacking libpq5:ppc64el (17.4-1) ... 93s Selecting previously unselected package python3-click. 93s Preparing to unpack .../11-python3-click_8.2.0+0.really.8.1.8-1_all.deb ... 93s Unpacking python3-click (8.2.0+0.really.8.1.8-1) ... 93s Selecting previously unselected package python3-dateutil. 93s Preparing to unpack .../12-python3-dateutil_2.9.0-4_all.deb ... 93s Unpacking python3-dateutil (2.9.0-4) ... 93s Selecting previously unselected package python3-wcwidth. 93s Preparing to unpack .../13-python3-wcwidth_0.2.13+dfsg1-1_all.deb ... 93s Unpacking python3-wcwidth (0.2.13+dfsg1-1) ... 93s Selecting previously unselected package python3-prettytable. 93s Preparing to unpack .../14-python3-prettytable_3.12.0-1_all.deb ... 93s Unpacking python3-prettytable (3.12.0-1) ... 93s Selecting previously unselected package python3-psutil. 93s Preparing to unpack .../15-python3-psutil_5.9.8-2build3_ppc64el.deb ... 93s Unpacking python3-psutil (5.9.8-2build3) ... 93s Selecting previously unselected package python3-ydiff. 93s Preparing to unpack .../16-python3-ydiff_1.4.2-1_all.deb ... 93s Unpacking python3-ydiff (1.4.2-1) ... 93s Selecting previously unselected package python3-psycopg2. 93s Preparing to unpack .../17-python3-psycopg2_2.9.10-1build1_ppc64el.deb ... 93s Unpacking python3-psycopg2 (2.9.10-1build1) ... 93s Selecting previously unselected package python3-dnspython. 93s Preparing to unpack .../18-python3-dnspython_2.7.0-1ubuntu1_all.deb ... 93s Unpacking python3-dnspython (2.7.0-1ubuntu1) ... 93s Selecting previously unselected package python3-etcd. 93s Preparing to unpack .../19-python3-etcd_0.4.5-6_all.deb ... 93s Unpacking python3-etcd (0.4.5-6) ... 93s Selecting previously unselected package python3-consul. 93s Preparing to unpack .../20-python3-consul_1.5.1+dfsg-1_all.deb ... 93s Unpacking python3-consul (1.5.1+dfsg-1) ... 93s Selecting previously unselected package python3-greenlet. 93s Preparing to unpack .../21-python3-greenlet_3.1.0-1build1_ppc64el.deb ... 93s Unpacking python3-greenlet (3.1.0-1build1) ... 93s Selecting previously unselected package python3-eventlet. 93s Preparing to unpack .../22-python3-eventlet_0.39.0-0ubuntu1_all.deb ... 93s Unpacking python3-eventlet (0.39.0-0ubuntu1) ... 93s Selecting previously unselected package python3-zope.event. 93s Preparing to unpack .../23-python3-zope.event_5.0-0.1_all.deb ... 93s Unpacking python3-zope.event (5.0-0.1) ... 93s Selecting previously unselected package python3-zope.interface. 93s Preparing to unpack .../24-python3-zope.interface_7.2-1build1_ppc64el.deb ... 93s Unpacking python3-zope.interface (7.2-1build1) ... 93s Selecting previously unselected package python3-gevent. 93s Preparing to unpack .../25-python3-gevent_24.11.1-1build1_ppc64el.deb ... 93s Unpacking python3-gevent (24.11.1-1build1) ... 93s Selecting previously unselected package python3-kerberos. 93s Preparing to unpack .../26-python3-kerberos_1.1.14-3.1build11_ppc64el.deb ... 93s Unpacking python3-kerberos (1.1.14-3.1build11) ... 93s Selecting previously unselected package python3-pure-sasl. 93s Preparing to unpack .../27-python3-pure-sasl_0.5.1+dfsg1-5_all.deb ... 93s Unpacking python3-pure-sasl (0.5.1+dfsg1-5) ... 93s Selecting previously unselected package python3-six. 93s Preparing to unpack .../28-python3-six_1.17.0-1_all.deb ... 93s Unpacking python3-six (1.17.0-1) ... 93s Selecting previously unselected package python3-kazoo. 93s Preparing to unpack .../29-python3-kazoo_2.9.0-2_all.deb ... 93s Unpacking python3-kazoo (2.9.0-2) ... 93s Selecting previously unselected package python3-multidict. 93s Preparing to unpack .../30-python3-multidict_6.2.0-2_ppc64el.deb ... 93s Unpacking python3-multidict (6.2.0-2) ... 93s Selecting previously unselected package python3-yarl. 93s Preparing to unpack .../31-python3-yarl_1.13.1-1build2_ppc64el.deb ... 93s Unpacking python3-yarl (1.13.1-1build2) ... 93s Selecting previously unselected package python3-async-timeout. 93s Preparing to unpack .../32-python3-async-timeout_5.0.1-1_all.deb ... 93s Unpacking python3-async-timeout (5.0.1-1) ... 93s Selecting previously unselected package python3-aiohappyeyeballs. 93s Preparing to unpack .../33-python3-aiohappyeyeballs_2.6.1-1_all.deb ... 93s Unpacking python3-aiohappyeyeballs (2.6.1-1) ... 93s Selecting previously unselected package python3-frozenlist. 93s Preparing to unpack .../34-python3-frozenlist_1.5.0-1build2_ppc64el.deb ... 93s Unpacking python3-frozenlist (1.5.0-1build2) ... 93s Selecting previously unselected package python3-aiosignal. 93s Preparing to unpack .../35-python3-aiosignal_1.3.2-1_all.deb ... 93s Unpacking python3-aiosignal (1.3.2-1) ... 93s Selecting previously unselected package python3-aiohttp. 93s Preparing to unpack .../36-python3-aiohttp_3.10.11-1build1_ppc64el.deb ... 93s Unpacking python3-aiohttp (3.10.11-1build1) ... 93s Selecting previously unselected package python3-cachetools. 93s Preparing to unpack .../37-python3-cachetools_5.3.3-1_all.deb ... 93s Unpacking python3-cachetools (5.3.3-1) ... 93s Selecting previously unselected package python3-pyasn1. 93s Preparing to unpack .../38-python3-pyasn1_0.6.1-1_all.deb ... 93s Unpacking python3-pyasn1 (0.6.1-1) ... 94s Selecting previously unselected package python3-pyasn1-modules. 94s Preparing to unpack .../39-python3-pyasn1-modules_0.4.1-2_all.deb ... 94s Unpacking python3-pyasn1-modules (0.4.1-2) ... 94s Selecting previously unselected package python3-pyu2f. 94s Preparing to unpack .../40-python3-pyu2f_0.1.5-4_all.deb ... 94s Unpacking python3-pyu2f (0.1.5-4) ... 94s Selecting previously unselected package python3-responses. 94s Preparing to unpack .../41-python3-responses_0.25.6-1_all.deb ... 94s Unpacking python3-responses (0.25.6-1) ... 94s Selecting previously unselected package python3-rsa. 94s Preparing to unpack .../42-python3-rsa_4.9-2_all.deb ... 94s Unpacking python3-rsa (4.9-2) ... 94s Selecting previously unselected package python3-google-auth. 94s Preparing to unpack .../43-python3-google-auth_2.28.2-3_all.deb ... 94s Unpacking python3-google-auth (2.28.2-3) ... 94s Selecting previously unselected package python3-requests-oauthlib. 94s Preparing to unpack .../44-python3-requests-oauthlib_1.3.1-1_all.deb ... 94s Unpacking python3-requests-oauthlib (1.3.1-1) ... 94s Selecting previously unselected package python3-websocket. 94s Preparing to unpack .../45-python3-websocket_1.8.0-2_all.deb ... 94s Unpacking python3-websocket (1.8.0-2) ... 94s Selecting previously unselected package python3-kubernetes. 94s Preparing to unpack .../46-python3-kubernetes_30.1.0-2_all.deb ... 94s Unpacking python3-kubernetes (30.1.0-2) ... 94s Selecting previously unselected package python3-pysyncobj. 94s Preparing to unpack .../47-python3-pysyncobj_0.3.14-2_all.deb ... 94s Unpacking python3-pysyncobj (0.3.14-2) ... 94s Selecting previously unselected package patroni. 94s Preparing to unpack .../48-patroni_4.0.4-8_all.deb ... 94s Unpacking patroni (4.0.4-8) ... 94s Selecting previously unselected package sphinx-rtd-theme-common. 94s Preparing to unpack .../49-sphinx-rtd-theme-common_3.0.2+dfsg-2_all.deb ... 94s Unpacking sphinx-rtd-theme-common (3.0.2+dfsg-2) ... 94s Selecting previously unselected package patroni-doc. 94s Preparing to unpack .../50-patroni-doc_4.0.4-8_all.deb ... 94s Unpacking patroni-doc (4.0.4-8) ... 94s Selecting previously unselected package python3-jmespath. 94s Preparing to unpack .../51-python3-jmespath_1.0.1-1_all.deb ... 94s Unpacking python3-jmespath (1.0.1-1) ... 94s Selecting previously unselected package python3-botocore. 94s Preparing to unpack .../52-python3-botocore_1.37.9+repack-1_all.deb ... 94s Unpacking python3-botocore (1.37.9+repack-1) ... 95s Selecting previously unselected package python3-s3transfer. 95s Preparing to unpack .../53-python3-s3transfer_0.11.2-2_all.deb ... 95s Unpacking python3-s3transfer (0.11.2-2) ... 95s Selecting previously unselected package python3-boto3. 95s Preparing to unpack .../54-python3-boto3_1.37.9-1_all.deb ... 95s Unpacking python3-boto3 (1.37.9-1) ... 95s Selecting previously unselected package python3-coverage. 95s Preparing to unpack .../55-python3-coverage_7.6.0+dfsg1-2build1_ppc64el.deb ... 95s Unpacking python3-coverage (7.6.0+dfsg1-2build1) ... 95s Selecting previously unselected package python3-mccabe. 95s Preparing to unpack .../56-python3-mccabe_0.7.0-1_all.deb ... 95s Unpacking python3-mccabe (0.7.0-1) ... 95s Selecting previously unselected package python3-pycodestyle. 95s Preparing to unpack .../57-python3-pycodestyle_2.12.1-2_all.deb ... 95s Unpacking python3-pycodestyle (2.12.1-2) ... 95s Selecting previously unselected package python3-pyflakes. 95s Preparing to unpack .../58-python3-pyflakes_3.2.0-3_all.deb ... 95s Unpacking python3-pyflakes (3.2.0-3) ... 95s Selecting previously unselected package python3-flake8. 95s Preparing to unpack .../59-python3-flake8_7.1.1-3_all.deb ... 95s Unpacking python3-flake8 (7.1.1-3) ... 95s Selecting previously unselected package python3-iniconfig. 95s Preparing to unpack .../60-python3-iniconfig_1.1.1-2_all.deb ... 95s Unpacking python3-iniconfig (1.1.1-2) ... 95s Selecting previously unselected package python3-packaging. 95s Preparing to unpack .../61-python3-packaging_24.2-1_all.deb ... 95s Unpacking python3-packaging (24.2-1) ... 95s Selecting previously unselected package python3-pluggy. 95s Preparing to unpack .../62-python3-pluggy_1.5.0-1_all.deb ... 95s Unpacking python3-pluggy (1.5.0-1) ... 95s Selecting previously unselected package python3-pytest. 95s Preparing to unpack .../63-python3-pytest_8.3.5-1_all.deb ... 95s Unpacking python3-pytest (8.3.5-1) ... 95s Selecting previously unselected package libjs-jquery-hotkeys. 95s Preparing to unpack .../64-libjs-jquery-hotkeys_0.2.0-1_all.deb ... 95s Unpacking libjs-jquery-hotkeys (0.2.0-1) ... 95s Selecting previously unselected package libjs-jquery-isonscreen. 95s Preparing to unpack .../65-libjs-jquery-isonscreen_1.2.0-1.1_all.deb ... 95s Unpacking libjs-jquery-isonscreen (1.2.0-1.1) ... 95s Selecting previously unselected package python3-pytest-cov. 95s Preparing to unpack .../66-python3-pytest-cov_5.0.0-1_all.deb ... 95s Unpacking python3-pytest-cov (5.0.0-1) ... 95s Selecting previously unselected package python3-mock. 95s Preparing to unpack .../67-python3-mock_5.1.0-1_all.deb ... 95s Unpacking python3-mock (5.1.0-1) ... 95s Setting up python3-iniconfig (1.1.1-2) ... 95s Setting up libev4t64:ppc64el (1:4.33-2.1build1) ... 95s Setting up fonts-lato (2.015-1) ... 95s Setting up python3-pysyncobj (0.3.14-2) ... 95s Setting up python3-cachetools (5.3.3-1) ... 95s Setting up python3-zope.event (5.0-0.1) ... 95s Setting up python3-zope.interface (7.2-1build1) ... 96s Setting up python3-pyflakes (3.2.0-3) ... 96s Setting up python3-ydiff (1.4.2-1) ... 96s Setting up libpq5:ppc64el (17.4-1) ... 96s Setting up python3-kerberos (1.1.14-3.1build11) ... 96s Setting up python3-coverage (7.6.0+dfsg1-2build1) ... 96s Setting up libjs-jquery-throttle-debounce (1.1+dfsg.1-2) ... 96s Setting up python3-click (8.2.0+0.really.8.1.8-1) ... 96s Setting up python3-psutil (5.9.8-2build3) ... 97s Setting up python3-multidict (6.2.0-2) ... 97s Setting up python3-frozenlist (1.5.0-1build2) ... 97s Setting up python3-aiosignal (1.3.2-1) ... 97s Setting up python3-mock (5.1.0-1) ... 97s Setting up python3-async-timeout (5.0.1-1) ... 97s Setting up python3-six (1.17.0-1) ... 97s Setting up python3-responses (0.25.6-1) ... 97s Setting up python3-pycodestyle (2.12.1-2) ... 98s Setting up python3-packaging (24.2-1) ... 98s Setting up python3-wcwidth (0.2.13+dfsg1-1) ... 98s Setting up python3-pyu2f (0.1.5-4) ... 98s Setting up python3-jmespath (1.0.1-1) ... 98s Setting up python3-greenlet (3.1.0-1build1) ... 98s Setting up libcares2:ppc64el (1.34.4-2.1) ... 98s Setting up python3-psycopg2 (2.9.10-1build1) ... 98s Setting up python3-aiohappyeyeballs (2.6.1-1) ... 98s Setting up python3-pluggy (1.5.0-1) ... 99s Setting up python3-dnspython (2.7.0-1ubuntu1) ... 99s Setting up python3-pyasn1 (0.6.1-1) ... 99s Setting up python3-dateutil (2.9.0-4) ... 99s Setting up python3-mccabe (0.7.0-1) ... 99s Setting up python3-consul (1.5.1+dfsg-1) ... 99s Setting up libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 99s Setting up libjs-jquery-hotkeys (0.2.0-1) ... 99s Setting up python3-prettytable (3.12.0-1) ... 100s Setting up python3-yarl (1.13.1-1build2) ... 100s Setting up fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ... 100s Setting up sphinx-rtd-theme-common (3.0.2+dfsg-2) ... 100s Setting up python3-websocket (1.8.0-2) ... 100s Setting up python3-requests-oauthlib (1.3.1-1) ... 100s Setting up libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 100s Setting up python3-pure-sasl (0.5.1+dfsg1-5) ... 100s Setting up python3-etcd (0.4.5-6) ... 100s Setting up python3-pytest (8.3.5-1) ... 101s Setting up python3-aiohttp (3.10.11-1build1) ... 101s Setting up python3-gevent (24.11.1-1build1) ... 101s Setting up python3-flake8 (7.1.1-3) ... 101s Setting up python3-eventlet (0.39.0-0ubuntu1) ... 101s Setting up python3-kazoo (2.9.0-2) ... 102s Setting up python3-pyasn1-modules (0.4.1-2) ... 102s Setting up libjs-jquery-metadata (12-4) ... 102s Setting up python3-botocore (1.37.9+repack-1) ... 102s Setting up libjs-jquery-isonscreen (1.2.0-1.1) ... 102s Setting up libjs-sphinxdoc (8.1.3-5) ... 102s Setting up libjs-jquery-tablesorter (1:2.31.3+dfsg1-4) ... 102s Setting up python3-rsa (4.9-2) ... 102s Setting up patroni (4.0.4-8) ... 102s Created symlink '/etc/systemd/system/multi-user.target.wants/patroni.service' → '/usr/lib/systemd/system/patroni.service'. 103s Setting up patroni-doc (4.0.4-8) ... 103s Setting up python3-s3transfer (0.11.2-2) ... 103s Setting up python3-pytest-cov (5.0.0-1) ... 103s Setting up python3-google-auth (2.28.2-3) ... 103s Setting up python3-boto3 (1.37.9-1) ... 104s Setting up python3-kubernetes (30.1.0-2) ... 105s Processing triggers for man-db (2.13.0-1) ... 107s Processing triggers for libc-bin (2.41-6ubuntu1) ... 108s autopkgtest [09:28:52]: test test: [----------------------- 111s ============================= test session starts ============================== 111s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 111s rootdir: /tmp/autopkgtest.Rf1N0v/build.OAH/src 111s plugins: typeguard-4.4.2, cov-5.0.0 111s collected 651 items 111s 111s tests/test_api.py ................................... [ 5%] 111s tests/test_async_executor.py .... [ 5%] 112s tests/test_aws.py .... [ 6%] 112s tests/test_barman.py ................ [ 9%] 112s tests/test_bootstrap.py .......... [ 10%] 112s tests/test_callback_executor.py . [ 10%] 112s tests/test_cancellable.py ... [ 11%] 112s tests/test_citus.py sssssssssssss................ [ 15%] 112s tests/test_config.py .......... [ 17%] 112s tests/test_config_generator.py ...... [ 18%] 112s tests/test_consul.py ....................... [ 21%] 112s tests/test_ctl.py ...................................... [ 27%] 113s tests/test_etcd.py ............................. [ 31%] 113s tests/test_etcd3.py ................................. [ 37%] 113s tests/test_exhibitor.py ... [ 37%] 113s tests/test_file_perm.py ... [ 37%] 114s tests/test_ha.py ....................................................... [ 46%] 115s ................................................................ [ 56%] 116s tests/test_kubernetes.py ........................................ [ 62%] 116s tests/test_log.py .......... [ 63%] 116s tests/test_mpp.py .. [ 64%] 117s tests/test_patroni.py .................... [ 67%] 117s tests/test_postgresql.py ............................................... [ 74%] 117s ............. [ 76%] 117s tests/test_postmaster.py ......... [ 77%] 117s tests/test_quorum.py ............... [ 80%] 128s tests/test_raft.py ........... [ 81%] 128s tests/test_raft_controller.py ... [ 82%] 128s tests/test_rewind.py .............. [ 84%] 129s tests/test_slots.py ............... [ 86%] 129s tests/test_sync.py .... [ 87%] 130s tests/test_utils.py ............... [ 89%] 130s tests/test_validator.py .................. [ 92%] 130s tests/test_wale_restore.py ...... [ 93%] 130s tests/test_watchdog.py ................ [ 95%] 130s tests/test_zookeeper.py ........................... [100%] 130s 130s ======================= 638 passed, 13 skipped in 20.55s ======================= 130s autopkgtest [09:29:14]: test test: -----------------------] 131s autopkgtest [09:29:15]: test test: - - - - - - - - - - results - - - - - - - - - - 131s test PASS 131s autopkgtest [09:29:15]: test acceptance-etcd3-basic: preparing testbed 223s autopkgtest [09:30:47]: testbed dpkg architecture: ppc64el 223s autopkgtest [09:30:47]: testbed apt version: 3.0.0 224s autopkgtest [09:30:48]: @@@@@@@@@@@@@@@@@@@@ test bed setup 224s autopkgtest [09:30:48]: testbed release detected to be: plucky 225s autopkgtest [09:30:49]: updating testbed package index (apt update) 225s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [265 kB] 225s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 225s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 225s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 225s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [5192 B] 225s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [9948 B] 225s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [204 kB] 225s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/main ppc64el Packages [3476 B] 225s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/main ppc64el c-n-f Metadata [288 B] 225s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/restricted ppc64el c-n-f Metadata [120 B] 225s Get:11 http://ftpmaster.internal/ubuntu plucky-proposed/universe ppc64el Packages [120 kB] 225s Get:12 http://ftpmaster.internal/ubuntu plucky-proposed/universe ppc64el c-n-f Metadata [8688 B] 225s Get:13 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse ppc64el Packages [2008 B] 226s Get:14 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse ppc64el c-n-f Metadata [172 B] 227s Fetched 619 kB in 1s (1016 kB/s) 228s Reading package lists... 228s autopkgtest [09:30:52]: upgrading testbed (apt dist-upgrade and autopurge) 229s Reading package lists... 229s Building dependency tree... 229s Reading state information... 229s Calculating upgrade...Starting pkgProblemResolver with broken count: 0 229s Starting 2 pkgProblemResolver with broken count: 0 229s Done 229s Entering ResolveByKeep 229s 229s Calculating upgrade... 230s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 230s Reading package lists... 230s Building dependency tree... 230s Reading state information... 230s Starting pkgProblemResolver with broken count: 0 230s Starting 2 pkgProblemResolver with broken count: 0 230s Done 230s Solving dependencies... 230s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 233s Reading package lists... 233s Building dependency tree... 233s Reading state information... 234s Starting pkgProblemResolver with broken count: 0 234s Starting 2 pkgProblemResolver with broken count: 0 234s Done 234s The following NEW packages will be installed: 234s etcd-server fonts-font-awesome fonts-lato libio-pty-perl libipc-run-perl 234s libjs-jquery libjs-sphinxdoc libjs-underscore libjson-perl libllvm20 libpq5 234s libtime-duration-perl libtimedate-perl libxslt1.1 moreutils patroni 234s patroni-doc postgresql postgresql-17 postgresql-client-17 234s postgresql-client-common postgresql-common postgresql-common-dev 234s python3-behave python3-click python3-coverage python3-dateutil 234s python3-dnspython python3-etcd python3-parse python3-parse-type 234s python3-prettytable python3-psutil python3-psycopg2 python3-six 234s python3-wcwidth python3-ydiff sphinx-rtd-theme-common ssl-cert 234s 0 upgraded, 39 newly installed, 0 to remove and 0 not upgraded. 234s Need to get 69.1 MB of archives. 234s After this operation, 296 MB of additional disk space will be used. 234s Get:1 http://ftpmaster.internal/ubuntu plucky/main ppc64el fonts-lato all 2.015-1 [2781 kB] 234s Get:2 http://ftpmaster.internal/ubuntu plucky/main ppc64el libjson-perl all 4.10000-1 [81.9 kB] 234s Get:3 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql-client-common all 274 [47.6 kB] 234s Get:4 http://ftpmaster.internal/ubuntu plucky/main ppc64el libio-pty-perl ppc64el 1:1.20-1build3 [32.0 kB] 234s Get:5 http://ftpmaster.internal/ubuntu plucky/main ppc64el libipc-run-perl all 20231003.0-2 [91.5 kB] 234s Get:6 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql-common-dev all 274 [73.0 kB] 234s Get:7 http://ftpmaster.internal/ubuntu plucky/main ppc64el ssl-cert all 1.1.3ubuntu1 [18.7 kB] 234s Get:8 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql-common all 274 [101 kB] 234s Get:9 http://ftpmaster.internal/ubuntu plucky/universe ppc64el etcd-server ppc64el 3.5.16-4 [10.9 MB] 234s Get:10 http://ftpmaster.internal/ubuntu plucky/main ppc64el fonts-font-awesome all 5.0.10+really4.7.0~dfsg-4.1 [516 kB] 234s Get:11 http://ftpmaster.internal/ubuntu plucky/main ppc64el libjs-jquery all 3.6.1+dfsg+~3.5.14-1 [328 kB] 234s Get:12 http://ftpmaster.internal/ubuntu plucky/main ppc64el libjs-underscore all 1.13.4~dfsg+~1.11.4-3 [118 kB] 234s Get:13 http://ftpmaster.internal/ubuntu plucky/main ppc64el libjs-sphinxdoc all 8.1.3-5 [31.0 kB] 234s Get:14 http://ftpmaster.internal/ubuntu plucky/main ppc64el libllvm20 ppc64el 1:20.1.2-0ubuntu1 [32.0 MB] 235s Get:15 http://ftpmaster.internal/ubuntu plucky/main ppc64el libpq5 ppc64el 17.4-1 [174 kB] 235s Get:16 http://ftpmaster.internal/ubuntu plucky/main ppc64el libtime-duration-perl all 1.21-2 [12.3 kB] 235s Get:17 http://ftpmaster.internal/ubuntu plucky/main ppc64el libtimedate-perl all 2.3300-2 [34.0 kB] 235s Get:18 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxslt1.1 ppc64el 1.1.39-0exp1ubuntu4 [191 kB] 235s Get:19 http://ftpmaster.internal/ubuntu plucky/universe ppc64el moreutils ppc64el 0.69-1 [59.1 kB] 235s Get:20 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-click all 8.2.0+0.really.8.1.8-1 [80.0 kB] 235s Get:21 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-dateutil all 2.9.0-4 [80.3 kB] 235s Get:22 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-wcwidth all 0.2.13+dfsg1-1 [26.3 kB] 235s Get:23 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-prettytable all 3.12.0-1 [36.5 kB] 235s Get:24 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-psutil ppc64el 5.9.8-2build3 [197 kB] 235s Get:25 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-ydiff all 1.4.2-1 [19.0 kB] 235s Get:26 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-psycopg2 ppc64el 2.9.10-1build1 [151 kB] 235s Get:27 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-dnspython all 2.7.0-1ubuntu1 [167 kB] 235s Get:28 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-etcd all 0.4.5-6 [32.1 kB] 235s Get:29 http://ftpmaster.internal/ubuntu plucky-proposed/universe ppc64el patroni all 4.0.4-8 [282 kB] 235s Get:30 http://ftpmaster.internal/ubuntu plucky/main ppc64el sphinx-rtd-theme-common all 3.0.2+dfsg-2 [1014 kB] 235s Get:31 http://ftpmaster.internal/ubuntu plucky-proposed/universe ppc64el patroni-doc all 4.0.4-8 [526 kB] 235s Get:32 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql-client-17 ppc64el 17.4-1 [1482 kB] 235s Get:33 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql-17 ppc64el 17.4-1 [17.2 MB] 235s Get:34 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql all 17+274 [14.4 kB] 235s Get:35 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-parse all 1.20.2-1 [27.0 kB] 235s Get:36 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-parse-type all 0.6.4-2 [23.5 kB] 235s Get:37 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-six all 1.17.0-1 [13.2 kB] 235s Get:38 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-behave all 1.2.6-6 [98.6 kB] 235s Get:39 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-coverage ppc64el 7.6.0+dfsg1-2build1 [154 kB] 236s Preconfiguring packages ... 236s /var/cache/debconf/tmp.ci/postgresql.config.995rH8: 12: pg_lsclusters: not found 236s Fetched 69.1 MB in 1s (47.9 MB/s) 236s Selecting previously unselected package fonts-lato. 237s (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 ... 107206 files and directories currently installed.) 237s Preparing to unpack .../00-fonts-lato_2.015-1_all.deb ... 237s Unpacking fonts-lato (2.015-1) ... 237s Selecting previously unselected package libjson-perl. 237s Preparing to unpack .../01-libjson-perl_4.10000-1_all.deb ... 237s Unpacking libjson-perl (4.10000-1) ... 237s Selecting previously unselected package postgresql-client-common. 237s Preparing to unpack .../02-postgresql-client-common_274_all.deb ... 237s Unpacking postgresql-client-common (274) ... 237s Selecting previously unselected package libio-pty-perl. 237s Preparing to unpack .../03-libio-pty-perl_1%3a1.20-1build3_ppc64el.deb ... 237s Unpacking libio-pty-perl (1:1.20-1build3) ... 237s Selecting previously unselected package libipc-run-perl. 237s Preparing to unpack .../04-libipc-run-perl_20231003.0-2_all.deb ... 237s Unpacking libipc-run-perl (20231003.0-2) ... 237s Selecting previously unselected package postgresql-common-dev. 237s Preparing to unpack .../05-postgresql-common-dev_274_all.deb ... 237s Unpacking postgresql-common-dev (274) ... 237s Selecting previously unselected package ssl-cert. 237s Preparing to unpack .../06-ssl-cert_1.1.3ubuntu1_all.deb ... 237s Unpacking ssl-cert (1.1.3ubuntu1) ... 237s Selecting previously unselected package postgresql-common. 237s Preparing to unpack .../07-postgresql-common_274_all.deb ... 237s Adding 'diversion of /usr/bin/pg_config to /usr/bin/pg_config.libpq-dev by postgresql-common' 237s Unpacking postgresql-common (274) ... 237s Selecting previously unselected package etcd-server. 237s Preparing to unpack .../08-etcd-server_3.5.16-4_ppc64el.deb ... 237s Unpacking etcd-server (3.5.16-4) ... 238s Selecting previously unselected package fonts-font-awesome. 238s Preparing to unpack .../09-fonts-font-awesome_5.0.10+really4.7.0~dfsg-4.1_all.deb ... 238s Unpacking fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ... 238s Selecting previously unselected package libjs-jquery. 238s Preparing to unpack .../10-libjs-jquery_3.6.1+dfsg+~3.5.14-1_all.deb ... 238s Unpacking libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 238s Selecting previously unselected package libjs-underscore. 238s Preparing to unpack .../11-libjs-underscore_1.13.4~dfsg+~1.11.4-3_all.deb ... 238s Unpacking libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 238s Selecting previously unselected package libjs-sphinxdoc. 238s Preparing to unpack .../12-libjs-sphinxdoc_8.1.3-5_all.deb ... 238s Unpacking libjs-sphinxdoc (8.1.3-5) ... 238s Selecting previously unselected package libllvm20:ppc64el. 238s Preparing to unpack .../13-libllvm20_1%3a20.1.2-0ubuntu1_ppc64el.deb ... 238s Unpacking libllvm20:ppc64el (1:20.1.2-0ubuntu1) ... 238s Selecting previously unselected package libpq5:ppc64el. 238s Preparing to unpack .../14-libpq5_17.4-1_ppc64el.deb ... 238s Unpacking libpq5:ppc64el (17.4-1) ... 238s Selecting previously unselected package libtime-duration-perl. 238s Preparing to unpack .../15-libtime-duration-perl_1.21-2_all.deb ... 238s Unpacking libtime-duration-perl (1.21-2) ... 238s Selecting previously unselected package libtimedate-perl. 238s Preparing to unpack .../16-libtimedate-perl_2.3300-2_all.deb ... 238s Unpacking libtimedate-perl (2.3300-2) ... 238s Selecting previously unselected package libxslt1.1:ppc64el. 238s Preparing to unpack .../17-libxslt1.1_1.1.39-0exp1ubuntu4_ppc64el.deb ... 238s Unpacking libxslt1.1:ppc64el (1.1.39-0exp1ubuntu4) ... 238s Selecting previously unselected package moreutils. 238s Preparing to unpack .../18-moreutils_0.69-1_ppc64el.deb ... 238s Unpacking moreutils (0.69-1) ... 238s Selecting previously unselected package python3-click. 238s Preparing to unpack .../19-python3-click_8.2.0+0.really.8.1.8-1_all.deb ... 238s Unpacking python3-click (8.2.0+0.really.8.1.8-1) ... 239s Selecting previously unselected package python3-dateutil. 239s Preparing to unpack .../20-python3-dateutil_2.9.0-4_all.deb ... 239s Unpacking python3-dateutil (2.9.0-4) ... 239s Selecting previously unselected package python3-wcwidth. 239s Preparing to unpack .../21-python3-wcwidth_0.2.13+dfsg1-1_all.deb ... 239s Unpacking python3-wcwidth (0.2.13+dfsg1-1) ... 239s Selecting previously unselected package python3-prettytable. 239s Preparing to unpack .../22-python3-prettytable_3.12.0-1_all.deb ... 239s Unpacking python3-prettytable (3.12.0-1) ... 239s Selecting previously unselected package python3-psutil. 239s Preparing to unpack .../23-python3-psutil_5.9.8-2build3_ppc64el.deb ... 239s Unpacking python3-psutil (5.9.8-2build3) ... 239s Selecting previously unselected package python3-ydiff. 239s Preparing to unpack .../24-python3-ydiff_1.4.2-1_all.deb ... 239s Unpacking python3-ydiff (1.4.2-1) ... 239s Selecting previously unselected package python3-psycopg2. 239s Preparing to unpack .../25-python3-psycopg2_2.9.10-1build1_ppc64el.deb ... 239s Unpacking python3-psycopg2 (2.9.10-1build1) ... 239s Selecting previously unselected package python3-dnspython. 239s Preparing to unpack .../26-python3-dnspython_2.7.0-1ubuntu1_all.deb ... 239s Unpacking python3-dnspython (2.7.0-1ubuntu1) ... 239s Selecting previously unselected package python3-etcd. 239s Preparing to unpack .../27-python3-etcd_0.4.5-6_all.deb ... 239s Unpacking python3-etcd (0.4.5-6) ... 239s Selecting previously unselected package patroni. 239s Preparing to unpack .../28-patroni_4.0.4-8_all.deb ... 239s Unpacking patroni (4.0.4-8) ... 239s Selecting previously unselected package sphinx-rtd-theme-common. 239s Preparing to unpack .../29-sphinx-rtd-theme-common_3.0.2+dfsg-2_all.deb ... 239s Unpacking sphinx-rtd-theme-common (3.0.2+dfsg-2) ... 239s Selecting previously unselected package patroni-doc. 239s Preparing to unpack .../30-patroni-doc_4.0.4-8_all.deb ... 239s Unpacking patroni-doc (4.0.4-8) ... 239s Selecting previously unselected package postgresql-client-17. 239s Preparing to unpack .../31-postgresql-client-17_17.4-1_ppc64el.deb ... 239s Unpacking postgresql-client-17 (17.4-1) ... 239s Selecting previously unselected package postgresql-17. 239s Preparing to unpack .../32-postgresql-17_17.4-1_ppc64el.deb ... 239s Unpacking postgresql-17 (17.4-1) ... 239s Selecting previously unselected package postgresql. 239s Preparing to unpack .../33-postgresql_17+274_all.deb ... 239s Unpacking postgresql (17+274) ... 239s Selecting previously unselected package python3-parse. 239s Preparing to unpack .../34-python3-parse_1.20.2-1_all.deb ... 239s Unpacking python3-parse (1.20.2-1) ... 239s Selecting previously unselected package python3-parse-type. 239s Preparing to unpack .../35-python3-parse-type_0.6.4-2_all.deb ... 239s Unpacking python3-parse-type (0.6.4-2) ... 239s Selecting previously unselected package python3-six. 239s Preparing to unpack .../36-python3-six_1.17.0-1_all.deb ... 239s Unpacking python3-six (1.17.0-1) ... 239s Selecting previously unselected package python3-behave. 239s Preparing to unpack .../37-python3-behave_1.2.6-6_all.deb ... 239s Unpacking python3-behave (1.2.6-6) ... 240s Selecting previously unselected package python3-coverage. 240s Preparing to unpack .../38-python3-coverage_7.6.0+dfsg1-2build1_ppc64el.deb ... 240s Unpacking python3-coverage (7.6.0+dfsg1-2build1) ... 240s Setting up postgresql-client-common (274) ... 240s Setting up fonts-lato (2.015-1) ... 240s Setting up libio-pty-perl (1:1.20-1build3) ... 240s Setting up python3-ydiff (1.4.2-1) ... 240s Setting up libpq5:ppc64el (17.4-1) ... 240s Setting up python3-coverage (7.6.0+dfsg1-2build1) ... 240s Setting up python3-click (8.2.0+0.really.8.1.8-1) ... 240s Setting up python3-psutil (5.9.8-2build3) ... 240s Setting up python3-six (1.17.0-1) ... 240s Setting up python3-wcwidth (0.2.13+dfsg1-1) ... 241s Setting up ssl-cert (1.1.3ubuntu1) ... 241s Created symlink '/etc/systemd/system/multi-user.target.wants/ssl-cert.service' → '/usr/lib/systemd/system/ssl-cert.service'. 241s Setting up libllvm20:ppc64el (1:20.1.2-0ubuntu1) ... 241s Setting up python3-psycopg2 (2.9.10-1build1) ... 242s Setting up libipc-run-perl (20231003.0-2) ... 242s Setting up libtime-duration-perl (1.21-2) ... 242s Setting up libtimedate-perl (2.3300-2) ... 242s Setting up python3-dnspython (2.7.0-1ubuntu1) ... 242s Setting up python3-parse (1.20.2-1) ... 242s Setting up libjson-perl (4.10000-1) ... 242s Setting up libxslt1.1:ppc64el (1.1.39-0exp1ubuntu4) ... 242s Setting up python3-dateutil (2.9.0-4) ... 242s Setting up etcd-server (3.5.16-4) ... 242s info: Selecting UID from range 100 to 999 ... 242s 242s info: Selecting GID from range 100 to 999 ... 242s info: Adding system user `etcd' (UID 107) ... 242s info: Adding new group `etcd' (GID 111) ... 242s info: Adding new user `etcd' (UID 107) with group `etcd' ... 242s info: Creating home directory `/var/lib/etcd/' ... 243s Created symlink '/etc/systemd/system/etcd2.service' → '/usr/lib/systemd/system/etcd.service'. 243s Created symlink '/etc/systemd/system/multi-user.target.wants/etcd.service' → '/usr/lib/systemd/system/etcd.service'. 244s Setting up libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 244s Setting up python3-prettytable (3.12.0-1) ... 244s Setting up fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ... 244s Setting up sphinx-rtd-theme-common (3.0.2+dfsg-2) ... 244s Setting up libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 244s Setting up postgresql-common-dev (274) ... 244s Setting up moreutils (0.69-1) ... 244s Setting up postgresql-client-17 (17.4-1) ... 245s update-alternatives: using /usr/share/postgresql/17/man/man1/psql.1.gz to provide /usr/share/man/man1/psql.1.gz (psql.1.gz) in auto mode 245s Setting up python3-etcd (0.4.5-6) ... 245s Setting up python3-parse-type (0.6.4-2) ... 245s Setting up postgresql-common (274) ... 245s Creating config file /etc/postgresql-common/createcluster.conf with new version 245s Building PostgreSQL dictionaries from installed myspell/hunspell packages... 245s Removing obsolete dictionary files: 246s Created symlink '/etc/systemd/system/multi-user.target.wants/postgresql.service' → '/usr/lib/systemd/system/postgresql.service'. 246s Setting up libjs-sphinxdoc (8.1.3-5) ... 246s Setting up python3-behave (1.2.6-6) ... 247s /usr/lib/python3/dist-packages/behave/formatter/ansi_escapes.py:57: SyntaxWarning: invalid escape sequence '\[' 247s _ANSI_ESCAPE_PATTERN = re.compile(u"\x1b\[\d+[mA]", re.UNICODE) 247s /usr/lib/python3/dist-packages/behave/matchers.py:284: SyntaxWarning: invalid escape sequence '\d' 247s @parse.with_pattern(r"\d+") 247s Setting up patroni (4.0.4-8) ... 247s Created symlink '/etc/systemd/system/multi-user.target.wants/patroni.service' → '/usr/lib/systemd/system/patroni.service'. 247s Setting up postgresql-17 (17.4-1) ... 248s Creating new PostgreSQL cluster 17/main ... 248s /usr/lib/postgresql/17/bin/initdb -D /var/lib/postgresql/17/main --auth-local peer --auth-host scram-sha-256 --no-instructions 248s The files belonging to this database system will be owned by user "postgres". 248s This user must also own the server process. 248s 248s The database cluster will be initialized with locale "C.UTF-8". 248s The default database encoding has accordingly been set to "UTF8". 248s The default text search configuration will be set to "english". 248s 248s Data page checksums are disabled. 248s 248s fixing permissions on existing directory /var/lib/postgresql/17/main ... ok 248s creating subdirectories ... ok 248s selecting dynamic shared memory implementation ... posix 248s selecting default "max_connections" ... 100 248s selecting default "shared_buffers" ... 128MB 248s selecting default time zone ... Etc/UTC 248s creating configuration files ... ok 248s running bootstrap script ... ok 249s performing post-bootstrap initialization ... ok 249s syncing data to disk ... ok 252s Setting up patroni-doc (4.0.4-8) ... 252s Setting up postgresql (17+274) ... 252s Processing triggers for man-db (2.13.0-1) ... 257s Processing triggers for libc-bin (2.41-6ubuntu1) ... 259s autopkgtest [09:31:23]: test acceptance-etcd3-basic: debian/tests/acceptance etcd3 features/basic_replication.feature 259s autopkgtest [09:31:23]: test acceptance-etcd3-basic: [----------------------- 259s dpkg-architecture: warning: cannot determine CC system type, falling back to default (native compilation) 259s ++ ls -1r /usr/lib/postgresql/ 259s + for PG_VERSION in $(ls -1r /usr/lib/postgresql/) 259s + '[' 17 == 10 -o 17 == 11 ']' 259s + echo '### PostgreSQL 17 acceptance-etcd3 features/basic_replication.feature ###' 259s + bash -c 'set -o pipefail; ETCD_UNSUPPORTED_ARCH= DCS=etcd3 PATH=/usr/lib/postgresql/17/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' 259s ### PostgreSQL 17 acceptance-etcd3 features/basic_replication.feature ### 260s Apr 14 09:31:23 Feature: basic replication # features/basic_replication.feature:1 260s Apr 14 09:31:23 We should check that the basic bootstrapping, replication and failover works. 260s Apr 14 09:31:23 Scenario: check replication of a single table # features/basic_replication.feature:4 260s Apr 14 09:31:23 Given I start postgres-0 # features/steps/basic_replication.py:20 264s Apr 14 09:31:27 Then postgres-0 is a leader after 10 seconds # features/steps/patroni_api.py:31 265s Apr 14 09:31:28 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 265s Apr 14 09:31: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:73 265s Apr 14 09:31:28 Then I receive a response code 200 # features/steps/patroni_api.py:100 265s Apr 14 09:31:28 When I start postgres-1 # features/steps/basic_replication.py:20 270s Apr 14 09:31:34 And I configure and start postgres-2 with a tag replicatefrom postgres-0 # features/steps/cascading_replication.py:7 275s Apr 14 09:31:39 And "sync" key in DCS has leader=postgres-0 after 20 seconds # features/steps/cascading_replication.py:23 275s Apr 14 09:31:39 And I add the table foo to postgres-0 # features/steps/basic_replication.py:66 276s Apr 14 09:31:39 Then table foo is present on postgres-1 after 20 seconds # features/steps/basic_replication.py:105 277s Apr 14 09:31:40 Then table foo is present on postgres-2 after 20 seconds # features/steps/basic_replication.py:105 277s Apr 14 09:31:40 277s Apr 14 09:31:40 Scenario: check restart of sync replica # features/basic_replication.feature:17 277s Apr 14 09:31:40 Given I shut down postgres-2 # features/steps/basic_replication.py:41 278s Apr 14 09:31:41 Then "sync" key in DCS has sync_standby=postgres-1 after 5 seconds # features/steps/cascading_replication.py:23 278s Apr 14 09:31:41 When I start postgres-2 # features/steps/basic_replication.py:20 281s Apr 14 09:31:44 And I shut down postgres-1 # features/steps/basic_replication.py:41 284s Apr 14 09:31:47 Then "sync" key in DCS has sync_standby=postgres-2 after 10 seconds # features/steps/cascading_replication.py:23 285s Apr 14 09:31:48 When I start postgres-1 # features/steps/basic_replication.py:20 288s Apr 14 09:31:51 Then "members/postgres-1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 288s Apr 14 09:31:51 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:144 288s Apr 14 09:31:51 And Status code on GET http://127.0.0.1:8009/async is 200 after 3 seconds # features/steps/patroni_api.py:144 288s Apr 14 09:31:51 288s Apr 14 09:31:51 Scenario: check stuck sync replica # features/basic_replication.feature:28 288s Apr 14 09:31:51 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:73 288s Apr 14 09:31:51 Then I receive a response code 200 # features/steps/patroni_api.py:100 288s Apr 14 09:31:51 And I create table on postgres-0 # features/steps/basic_replication.py:85 288s Apr 14 09:31:51 And table mytest is present on postgres-1 after 2 seconds # features/steps/basic_replication.py:105 289s Apr 14 09:31:52 And table mytest is present on postgres-2 after 2 seconds # features/steps/basic_replication.py:105 289s Apr 14 09:31:52 When I pause wal replay on postgres-2 # features/steps/basic_replication.py:76 289s Apr 14 09:31:52 And I load data on postgres-0 # features/steps/basic_replication.py:96 290s Apr 14 09:31:53 Then "sync" key in DCS has sync_standby=postgres-1 after 15 seconds # features/steps/cascading_replication.py:23 293s Apr 14 09:31:56 And I resume wal replay on postgres-2 # features/steps/basic_replication.py:76 293s Apr 14 09:31:56 And Status code on GET http://127.0.0.1:8009/sync is 200 after 3 seconds # features/steps/patroni_api.py:144 293s Apr 14 09:31:57 And Status code on GET http://127.0.0.1:8010/async is 200 after 3 seconds # features/steps/patroni_api.py:144 293s Apr 14 09:31:57 When I issue a PATCH request to http://127.0.0.1:8008/config with {"pause": null, "maximum_lag_on_syncnode": -1, "postgresql": {"parameters": {"synchronous_commit": "on"}}} # features/steps/patroni_api.py:73 293s Apr 14 09:31:57 Then I receive a response code 200 # features/steps/patroni_api.py:100 293s Apr 14 09:31:57 And I drop table on postgres-0 # features/steps/basic_replication.py:85 294s Apr 14 09:31:57 294s Apr 14 09:31:57 Scenario: check multi sync replication # features/basic_replication.feature:44 294s Apr 14 09:31:57 Given I issue a PATCH request to http://127.0.0.1:8008/config with {"synchronous_node_count": 2} # features/steps/patroni_api.py:73 294s Apr 14 09:31:57 Then I receive a response code 200 # features/steps/patroni_api.py:100 294s Apr 14 09:31:57 Then "sync" key in DCS has sync_standby=postgres-1,postgres-2 after 10 seconds # features/steps/cascading_replication.py:23 298s Apr 14 09:32:01 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:144 298s Apr 14 09:32:01 And Status code on GET http://127.0.0.1:8009/sync is 200 after 3 seconds # features/steps/patroni_api.py:144 298s Apr 14 09:32:01 When I issue a PATCH request to http://127.0.0.1:8008/config with {"synchronous_node_count": 1} # features/steps/patroni_api.py:73 298s Apr 14 09:32:01 Then I receive a response code 200 # features/steps/patroni_api.py:100 298s Apr 14 09:32:01 And I shut down postgres-1 # features/steps/basic_replication.py:41 301s Apr 14 09:32:04 Then "sync" key in DCS has sync_standby=postgres-2 after 10 seconds # features/steps/cascading_replication.py:23 302s Apr 14 09:32:05 When I start postgres-1 # features/steps/basic_replication.py:20 305s Apr 14 09:32:08 Then "members/postgres-1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 307s Apr 14 09:32:10 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:144 307s Apr 14 09:32:10 And Status code on GET http://127.0.0.1:8009/async is 200 after 3 seconds # features/steps/patroni_api.py:144 307s Apr 14 09:32:10 307s Apr 14 09:32:10 Scenario: check the basic failover in synchronous mode # features/basic_replication.feature:59 307s Apr 14 09:32:10 Given I run patronictl.py pause batman # features/steps/patroni_api.py:88 308s Apr 14 09:32:11 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 308s Apr 14 09:32:11 When I sleep for 2 seconds # features/steps/patroni_api.py:41 310s Apr 14 09:32:13 And I shut down postgres-0 # features/steps/basic_replication.py:41 311s Apr 14 09:32:14 And I run patronictl.py resume batman # features/steps/patroni_api.py:88 312s Apr 14 09:32:16 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 312s Apr 14 09:32:16 And postgres-2 role is the primary after 24 seconds # features/steps/basic_replication.py:117 332s Apr 14 09:32:36 And Response on GET http://127.0.0.1:8010/history contains recovery after 10 seconds # features/steps/patroni_api.py:158 336s Apr 14 09:32:39 And there is a postgres-2_cb.log with "on_role_change primary batman" in postgres-2 data directory # features/steps/cascading_replication.py:12 336s Apr 14 09:32:39 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:73 336s Apr 14 09:32:39 Then I receive a response code 200 # features/steps/patroni_api.py:100 336s Apr 14 09:32:39 When I add the table bar to postgres-2 # features/steps/basic_replication.py:66 336s Apr 14 09:32:39 Then table bar is present on postgres-1 after 20 seconds # features/steps/basic_replication.py:105 336s Apr 14 09:32:39 And Response on GET http://127.0.0.1:8010/config contains master_start_timeout after 10 seconds # features/steps/patroni_api.py:158 336s Apr 14 09:32:39 336s Apr 14 09:32:39 Scenario: check rejoin of the former primary with pg_rewind # features/basic_replication.feature:75 336s Apr 14 09:32:39 Given I add the table splitbrain to postgres-0 # features/steps/basic_replication.py:66 336s Apr 14 09:32:39 And I start postgres-0 # features/steps/basic_replication.py:20 336s Apr 14 09:32:39 Then postgres-0 role is the secondary after 20 seconds # features/steps/basic_replication.py:117 340s Apr 14 09:32:43 When I add the table buz to postgres-2 # features/steps/basic_replication.py:66 340s Apr 14 09:32:43 Then table buz is present on postgres-0 after 20 seconds # features/steps/basic_replication.py:105 344s Apr 14 09:32:48 344s Apr 14 09:32:48 @reject-duplicate-name 344s Apr 14 09:32:48 Scenario: check graceful rejection when two nodes have the same name # features/basic_replication.feature:83 344s Apr 14 09:32:48 Given I start duplicate postgres-0 on port 8011 # features/steps/basic_replication.py:25 346s Apr 14 09:32:50 Then there is one of ["Can't start; there is already a node named 'postgres-0' running"] CRITICAL in the dup-postgres-0 patroni log after 5 seconds # features/steps/basic_replication.py:133 351s Apr 14 09:32:54 351s Apr 14 09:32:54 Combined data file .coverage.autopkgtest.4511.XfBEobgx 351s Apr 14 09:32:54 Combined data file .coverage.autopkgtest.4557.XSRxcZFx 351s Apr 14 09:32:54 Combined data file .coverage.autopkgtest.4600.XvgifQlx 351s Apr 14 09:32:54 Combined data file .coverage.autopkgtest.4656.XJfifVzx 351s Apr 14 09:32:54 Combined data file .coverage.autopkgtest.4702.XALhKpAx 351s Apr 14 09:32:54 Combined data file .coverage.autopkgtest.4776.XgZHxxPx 351s Apr 14 09:32:54 Combined data file .coverage.autopkgtest.4827.XXRZxzyx 351s Apr 14 09:32:54 Combined data file .coverage.autopkgtest.4831.XhdbiDIx 351s Apr 14 09:32:54 Combined data file .coverage.autopkgtest.4909.XPqEcunx 351s Apr 14 09:32:54 Combined data file .coverage.autopkgtest.5012.XKURteix 355s Apr 14 09:32:58 Name Stmts Miss Cover 355s Apr 14 09:32:58 ------------------------------------------------------------------------------------------------------------- 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/OpenSSL/SSL.py 1159 647 44% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/OpenSSL/__init__.py 3 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/OpenSSL/_util.py 44 15 66% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/OpenSSL/crypto.py 869 663 24% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/OpenSSL/version.py 9 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/_distutils_hack/__init__.py 101 96 5% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/bcrypt/__init__.py 3 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/__about__.py 5 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/__init__.py 3 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/exceptions.py 26 5 81% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/hazmat/__init__.py 2 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/hazmat/_oid.py 135 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/__init__.py 0 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/__init__.py 0 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/_conditional.py 38 17 55% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/binding.py 51 4 92% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/hazmat/decrepit/__init__.py 1 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/hazmat/decrepit/ciphers/__init__.py 1 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/hazmat/decrepit/ciphers/algorithms.py 68 18 74% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/__init__.py 0 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_asymmetric.py 6 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_cipheralgorithm.py 23 4 83% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_serialization.py 79 35 56% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/__init__.py 0 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/dh.py 47 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/dsa.py 55 5 91% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/ec.py 172 22 87% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/ed448.py 45 12 73% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/ed25519.py 43 12 72% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/padding.py 55 23 58% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/rsa.py 93 40 57% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/types.py 19 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/utils.py 14 5 64% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/x448.py 43 12 72% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/x25519.py 41 12 71% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/__init__.py 4 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/algorithms.py 72 15 79% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/base.py 54 12 78% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/modes.py 140 59 58% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/constant_time.py 6 3 50% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/hashes.py 127 20 84% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/serialization/__init__.py 5 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/serialization/base.py 7 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/serialization/ssh.py 775 614 21% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/utils.py 76 28 63% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/x509/__init__.py 70 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/x509/base.py 488 227 53% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/x509/certificate_transparency.py 42 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/x509/extensions.py 1024 552 46% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/x509/general_name.py 166 94 43% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/x509/name.py 236 144 39% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/x509/oid.py 3 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/cryptography/x509/verification.py 12 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dateutil/__init__.py 13 4 69% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dateutil/_common.py 25 15 40% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dateutil/_version.py 13 3 77% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dateutil/parser/__init__.py 33 4 88% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dateutil/parser/_parser.py 810 688 15% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dateutil/parser/isoparser.py 183 150 18% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dateutil/relativedelta.py 240 206 14% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dateutil/tz/__init__.py 4 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dateutil/tz/_common.py 151 117 23% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dateutil/tz/_factories.py 49 21 57% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dateutil/tz/tz.py 794 629 21% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dateutil/tz/win.py 152 149 2% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/__init__.py 2 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/_asyncbackend.py 14 6 57% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/_ddr.py 105 86 18% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/_features.py 46 8 83% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/_immutable_ctx.py 40 5 88% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/asyncbackend.py 44 32 27% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/asyncquery.py 322 283 12% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/edns.py 307 185 40% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/entropy.py 80 49 39% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/enum.py 72 46 36% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/exception.py 59 33 44% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/flags.py 40 14 65% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/grange.py 33 30 9% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/immutable.py 41 30 27% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/inet.py 79 65 18% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/ipv4.py 26 20 23% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/ipv6.py 114 100 12% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/message.py 829 676 18% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/name.py 617 425 31% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/nameserver.py 102 55 46% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/node.py 117 71 39% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/opcode.py 30 7 77% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/query.py 562 477 15% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/quic/__init__.py 28 23 18% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/rcode.py 68 13 81% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/rdata.py 386 277 28% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/rdataclass.py 43 9 79% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/rdataset.py 192 133 31% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/rdatatype.py 215 23 89% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/OPT.py 34 19 44% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/SOA.py 41 26 37% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/TSIG.py 58 42 28% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/ZONEMD.py 43 27 37% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/__init__.py 1 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/rdtypes/__init__.py 1 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/rdtypes/svcbbase.py 415 268 35% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/rdtypes/util.py 191 154 19% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/renderer.py 151 118 22% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/resolver.py 873 696 20% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/reversename.py 32 24 25% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/rrset.py 77 56 27% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/serial.py 92 79 14% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/set.py 148 107 28% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/tokenizer.py 334 279 16% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/transaction.py 269 201 25% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/tsig.py 176 122 31% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/ttl.py 44 38 14% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/version.py 6 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/wire.py 64 42 34% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/xfr.py 148 126 15% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/zone.py 507 383 24% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/zonefile.py 427 379 11% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/dns/zonetypes.py 14 2 86% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/etcd/__init__.py 125 63 50% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/etcd/client.py 380 256 33% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/etcd/lock.py 125 103 18% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/idna/__init__.py 4 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/idna/core.py 292 257 12% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/idna/idnadata.py 4 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/idna/intranges.py 30 24 20% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/idna/package_data.py 1 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/__init__.py 13 2 85% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/__main__.py 201 68 66% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/api.py 788 439 44% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/async_executor.py 96 19 80% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/collections.py 56 7 88% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/config.py 357 100 72% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/config_generator.py 212 159 25% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/daemon.py 76 6 92% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/dcs/__init__.py 710 165 77% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/dcs/etcd3.py 679 159 77% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/dcs/etcd.py 603 256 58% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/dynamic_loader.py 35 7 80% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/exceptions.py 16 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/file_perm.py 47 11 77% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/global_config.py 87 4 95% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/ha.py 1359 681 50% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/log.py 235 81 66% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/postgresql/__init__.py 825 240 71% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/postgresql/available_parameters/__init__.py 24 3 88% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/postgresql/bootstrap.py 254 89 65% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/postgresql/callback_executor.py 55 8 85% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/postgresql/cancellable.py 104 41 61% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/postgresql/config.py 840 267 68% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/postgresql/connection.py 75 7 91% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/postgresql/misc.py 43 13 70% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/postgresql/mpp/__init__.py 89 12 87% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/postgresql/postmaster.py 170 92 46% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/postgresql/rewind.py 416 200 52% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/postgresql/slots.py 349 177 49% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/postgresql/sync.py 154 23 85% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/postgresql/validator.py 157 24 85% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/psycopg.py 46 19 59% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/quorum.py 182 160 12% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/request.py 58 7 88% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/tags.py 38 5 87% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/utils.py 371 124 67% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/validator.py 309 218 29% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/version.py 1 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/watchdog/__init__.py 2 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/watchdog/base.py 203 49 76% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/patroni/watchdog/linux.py 135 50 63% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/psutil/__init__.py 950 636 33% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/psutil/_common.py 422 212 50% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/psutil/_compat.py 301 264 12% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/psutil/_pslinux.py 1250 936 25% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/psutil/_psposix.py 95 41 57% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/psycopg2/__init__.py 19 3 84% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/psycopg2/_json.py 64 27 58% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/psycopg2/_range.py 269 172 36% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/psycopg2/errors.py 3 2 33% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/psycopg2/extensions.py 91 25 73% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/urllib3/__init__.py 49 15 69% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/urllib3/_base_connection.py 63 45 29% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/urllib3/_collections.py 231 120 48% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/urllib3/_request_methods.py 54 24 56% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/urllib3/_version.py 13 3 77% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/urllib3/connection.py 389 138 65% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/urllib3/connectionpool.py 344 127 63% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/urllib3/contrib/__init__.py 0 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/urllib3/contrib/pyopenssl.py 263 103 61% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/urllib3/exceptions.py 121 39 68% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/urllib3/fields.py 92 73 21% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/urllib3/filepost.py 37 24 35% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/urllib3/http2/__init__.py 28 21 25% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/urllib3/http2/probe.py 49 31 37% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/urllib3/poolmanager.py 233 85 64% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/urllib3/response.py 634 350 45% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/urllib3/util/__init__.py 10 0 100% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/urllib3/util/connection.py 66 42 36% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/urllib3/util/proxy.py 13 6 54% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/urllib3/util/request.py 104 49 53% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/urllib3/util/response.py 32 15 53% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/urllib3/util/retry.py 174 54 69% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/urllib3/util/ssl_.py 172 74 57% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/urllib3/util/ssl_match_hostname.py 66 54 18% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/urllib3/util/ssltransport.py 152 106 30% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/urllib3/util/timeout.py 71 14 80% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/urllib3/util/url.py 203 70 66% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/urllib3/util/util.py 26 10 62% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/urllib3/util/wait.py 49 18 63% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/yaml/__init__.py 165 109 34% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/yaml/composer.py 92 17 82% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/yaml/constructor.py 479 276 42% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/yaml/cyaml.py 46 24 48% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/yaml/dumper.py 23 12 48% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/yaml/emitter.py 838 769 8% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/yaml/error.py 58 42 28% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/yaml/events.py 61 6 90% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/yaml/loader.py 47 24 49% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/yaml/nodes.py 29 7 76% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/yaml/parser.py 352 198 44% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/yaml/reader.py 122 34 72% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/yaml/representer.py 248 176 29% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/yaml/resolver.py 135 76 44% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/yaml/scanner.py 758 437 42% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/yaml/serializer.py 85 70 18% 355s Apr 14 09:32:58 /usr/lib/python3/dist-packages/yaml/tokens.py 76 17 78% 355s Apr 14 09:32:58 patroni/__init__.py 13 2 85% 355s Apr 14 09:32:58 patroni/__main__.py 201 201 0% 355s Apr 14 09:32:58 patroni/api.py 788 788 0% 355s Apr 14 09:32:58 patroni/async_executor.py 96 69 28% 355s Apr 14 09:32:58 patroni/collections.py 56 15 73% 355s Apr 14 09:32:58 patroni/config.py 357 186 48% 355s Apr 14 09:32:58 patroni/config_generator.py 212 212 0% 355s Apr 14 09:32:58 patroni/ctl.py 936 661 29% 355s Apr 14 09:32:58 patroni/daemon.py 76 76 0% 355s Apr 14 09:32:58 patroni/dcs/__init__.py 710 357 50% 355s Apr 14 09:32:58 patroni/dcs/consul.py 482 482 0% 355s Apr 14 09:32:58 patroni/dcs/etcd3.py 679 362 47% 355s Apr 14 09:32:58 patroni/dcs/etcd.py 603 285 53% 355s Apr 14 09:32:58 patroni/dcs/exhibitor.py 62 62 0% 355s Apr 14 09:32:58 patroni/dcs/kubernetes.py 943 943 0% 355s Apr 14 09:32:58 patroni/dcs/raft.py 319 319 0% 355s Apr 14 09:32:58 patroni/dcs/zookeeper.py 289 289 0% 355s Apr 14 09:32:58 patroni/dynamic_loader.py 35 7 80% 355s Apr 14 09:32:58 patroni/exceptions.py 16 1 94% 355s Apr 14 09:32:58 patroni/file_perm.py 47 17 64% 355s Apr 14 09:32:58 patroni/global_config.py 87 25 71% 355s Apr 14 09:32:58 patroni/ha.py 1359 1359 0% 355s Apr 14 09:32:58 patroni/log.py 235 183 22% 355s Apr 14 09:32:58 patroni/postgresql/__init__.py 825 653 21% 355s Apr 14 09:32:58 patroni/postgresql/available_parameters/__init__.py 24 3 88% 355s Apr 14 09:32:58 patroni/postgresql/bootstrap.py 254 224 12% 355s Apr 14 09:32:58 patroni/postgresql/callback_executor.py 55 34 38% 355s Apr 14 09:32:58 patroni/postgresql/cancellable.py 104 84 19% 355s Apr 14 09:32:58 patroni/postgresql/config.py 840 720 14% 355s Apr 14 09:32:58 patroni/postgresql/connection.py 75 50 33% 355s Apr 14 09:32:58 patroni/postgresql/misc.py 43 30 30% 355s Apr 14 09:32:58 patroni/postgresql/mpp/__init__.py 89 21 76% 355s Apr 14 09:32:58 patroni/postgresql/mpp/citus.py 366 366 0% 355s Apr 14 09:32:58 patroni/postgresql/postmaster.py 170 139 18% 355s Apr 14 09:32:58 patroni/postgresql/rewind.py 416 416 0% 355s Apr 14 09:32:58 patroni/postgresql/slots.py 349 300 14% 355s Apr 14 09:32:58 patroni/postgresql/sync.py 154 114 26% 355s Apr 14 09:32:58 patroni/postgresql/validator.py 157 52 67% 355s Apr 14 09:32:58 patroni/psycopg.py 46 32 30% 355s Apr 14 09:32:58 patroni/quorum.py 182 182 0% 355s Apr 14 09:32:58 patroni/raft_controller.py 22 22 0% 355s Apr 14 09:32:58 patroni/request.py 58 6 90% 355s Apr 14 09:32:58 patroni/scripts/__init__.py 0 0 100% 355s Apr 14 09:32:58 patroni/scripts/aws.py 59 59 0% 355s Apr 14 09:32:58 patroni/scripts/barman/__init__.py 0 0 100% 355s Apr 14 09:32:58 patroni/scripts/barman/cli.py 50 50 0% 355s Apr 14 09:32:58 patroni/scripts/barman/config_switch.py 50 50 0% 355s Apr 14 09:32:58 patroni/scripts/barman/recover.py 36 36 0% 355s Apr 14 09:32:58 patroni/scripts/barman/utils.py 93 93 0% 355s Apr 14 09:32:58 patroni/scripts/wale_restore.py 207 207 0% 355s Apr 14 09:32:58 patroni/tags.py 38 15 61% 355s Apr 14 09:32:58 patroni/utils.py 371 237 36% 355s Apr 14 09:32:58 patroni/validator.py 309 222 28% 355s Apr 14 09:32:58 patroni/version.py 1 0 100% 355s Apr 14 09:32:58 patroni/watchdog/__init__.py 2 2 0% 355s Apr 14 09:32:58 patroni/watchdog/base.py 203 203 0% 355s Apr 14 09:32:58 patroni/watchdog/linux.py 135 135 0% 355s Apr 14 09:32:58 ------------------------------------------------------------------------------------------------------------- 355s Apr 14 09:32:58 TOTAL 54417 34445 37% 355s Apr 14 09:32:58 1 feature passed, 0 failed, 0 skipped 355s Apr 14 09:32:58 7 scenarios passed, 0 failed, 0 skipped 355s Apr 14 09:32:58 68 steps passed, 0 failed, 0 skipped, 0 undefined 355s Apr 14 09:32:58 Took 1m26.226s 355s + bash -c 'rm -rf features/output' 355s ### End 17 acceptance-etcd3 features/basic_replication.feature ### 355s + echo '### End 17 acceptance-etcd3 features/basic_replication.feature ###' 355s + rm -f /tmp/pgpass_postgres-0 /tmp/pgpass_postgres-1 /tmp/pgpass_postgres-2 355s ++ id -u 355s + '[' 1000 -eq 0 ']' 355s autopkgtest [09:32:59]: test acceptance-etcd3-basic: -----------------------] 356s acceptance-etcd3-basic PASS 356s autopkgtest [09:33:00]: test acceptance-etcd3-basic: - - - - - - - - - - results - - - - - - - - - - 356s autopkgtest [09:33:00]: test acceptance-etcd3: preparing testbed 356s Reading package lists... 356s Building dependency tree... 356s Reading state information... 357s Starting pkgProblemResolver with broken count: 0 357s Starting 2 pkgProblemResolver with broken count: 0 357s Done 357s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 358s autopkgtest [09:33:02]: test acceptance-etcd3: debian/tests/acceptance etcd3 358s autopkgtest [09:33:02]: test acceptance-etcd3: [----------------------- 358s dpkg-architecture: warning: cannot determine CC system type, falling back to default (native compilation) 358s ### PostgreSQL 17 acceptance-etcd3 ### 358s ++ ls -1r /usr/lib/postgresql/ 358s + for PG_VERSION in $(ls -1r /usr/lib/postgresql/) 358s + '[' 17 == 10 -o 17 == 11 ']' 358s + echo '### PostgreSQL 17 acceptance-etcd3 ###' 358s + bash -c 'set -o pipefail; ETCD_UNSUPPORTED_ARCH= DCS=etcd3 PATH=/usr/lib/postgresql/17/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin behave | ts' 359s Apr 14 09:33:02 Feature: basic replication # features/basic_replication.feature:1 359s Apr 14 09:33:02 We should check that the basic bootstrapping, replication and failover works. 359s Apr 14 09:33:02 Scenario: check replication of a single table # features/basic_replication.feature:4 359s Apr 14 09:33:02 Given I start postgres-0 # features/steps/basic_replication.py:20 363s Apr 14 09:33:06 Then postgres-0 is a leader after 10 seconds # features/steps/patroni_api.py:31 364s Apr 14 09:33:07 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 364s Apr 14 09:33:07 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:73 364s Apr 14 09:33:07 Then I receive a response code 200 # features/steps/patroni_api.py:100 364s Apr 14 09:33:07 When I start postgres-1 # features/steps/basic_replication.py:20 369s Apr 14 09:33:12 And I configure and start postgres-2 with a tag replicatefrom postgres-0 # features/steps/cascading_replication.py:7 374s Apr 14 09:33:17 And "sync" key in DCS has leader=postgres-0 after 20 seconds # features/steps/cascading_replication.py:23 374s Apr 14 09:33:17 And I add the table foo to postgres-0 # features/steps/basic_replication.py:66 374s Apr 14 09:33:17 Then table foo is present on postgres-1 after 20 seconds # features/steps/basic_replication.py:105 375s Apr 14 09:33:18 Then table foo is present on postgres-2 after 20 seconds # features/steps/basic_replication.py:105 375s Apr 14 09:33:18 375s Apr 14 09:33:18 Scenario: check restart of sync replica # features/basic_replication.feature:17 375s Apr 14 09:33:18 Given I shut down postgres-2 # features/steps/basic_replication.py:41 376s Apr 14 09:33:19 Then "sync" key in DCS has sync_standby=postgres-1 after 5 seconds # features/steps/cascading_replication.py:23 376s Apr 14 09:33:19 When I start postgres-2 # features/steps/basic_replication.py:20 379s Apr 14 09:33:22 And I shut down postgres-1 # features/steps/basic_replication.py:41 382s Apr 14 09:33:25 Then "sync" key in DCS has sync_standby=postgres-2 after 10 seconds # features/steps/cascading_replication.py:23 383s Apr 14 09:33:26 When I start postgres-1 # features/steps/basic_replication.py:20 386s Apr 14 09:33:29 Then "members/postgres-1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 386s Apr 14 09:33:29 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:144 386s Apr 14 09:33:30 And Status code on GET http://127.0.0.1:8009/async is 200 after 3 seconds # features/steps/patroni_api.py:144 386s Apr 14 09:33:30 386s Apr 14 09:33:30 Scenario: check stuck sync replica # features/basic_replication.feature:28 386s Apr 14 09:33:30 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:73 386s Apr 14 09:33:30 Then I receive a response code 200 # features/steps/patroni_api.py:100 386s Apr 14 09:33:30 And I create table on postgres-0 # features/steps/basic_replication.py:85 386s Apr 14 09:33:30 And table mytest is present on postgres-1 after 2 seconds # features/steps/basic_replication.py:105 387s Apr 14 09:33:31 And table mytest is present on postgres-2 after 2 seconds # features/steps/basic_replication.py:105 387s Apr 14 09:33:31 When I pause wal replay on postgres-2 # features/steps/basic_replication.py:76 387s Apr 14 09:33:31 And I load data on postgres-0 # features/steps/basic_replication.py:96 388s Apr 14 09:33:32 Then "sync" key in DCS has sync_standby=postgres-1 after 15 seconds # features/steps/cascading_replication.py:23 391s Apr 14 09:33:35 And I resume wal replay on postgres-2 # features/steps/basic_replication.py:76 391s Apr 14 09:33:35 And Status code on GET http://127.0.0.1:8009/sync is 200 after 3 seconds # features/steps/patroni_api.py:144 392s Apr 14 09:33:35 And Status code on GET http://127.0.0.1:8010/async is 200 after 3 seconds # features/steps/patroni_api.py:144 392s Apr 14 09:33:35 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:73 392s Apr 14 09:33:35 Then I receive a response code 200 # features/steps/patroni_api.py:100 392s Apr 14 09:33:35 And I drop table on postgres-0 # features/steps/basic_replication.py:85 392s Apr 14 09:33:35 392s Apr 14 09:33:35 Scenario: check multi sync replication # features/basic_replication.feature:44 392s Apr 14 09:33:35 Given I issue a PATCH request to http://127.0.0.1:8008/config with {"synchronous_node_count": 2} # features/steps/patroni_api.py:73 392s Apr 14 09:33:35 Then I receive a response code 200 # features/steps/patroni_api.py:100 392s Apr 14 09:33:35 Then "sync" key in DCS has sync_standby=postgres-1,postgres-2 after 10 seconds # features/steps/cascading_replication.py:23 396s Apr 14 09:33:39 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:144 396s Apr 14 09:33:39 And Status code on GET http://127.0.0.1:8009/sync is 200 after 3 seconds # features/steps/patroni_api.py:144 396s Apr 14 09:33:39 When I issue a PATCH request to http://127.0.0.1:8008/config with {"synchronous_node_count": 1} # features/steps/patroni_api.py:73 396s Apr 14 09:33:39 Then I receive a response code 200 # features/steps/patroni_api.py:100 396s Apr 14 09:33:39 And I shut down postgres-1 # features/steps/basic_replication.py:41 399s Apr 14 09:33:42 Then "sync" key in DCS has sync_standby=postgres-2 after 10 seconds # features/steps/cascading_replication.py:23 400s Apr 14 09:33:43 When I start postgres-1 # features/steps/basic_replication.py:20 404s Apr 14 09:33:46 Then "members/postgres-1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 404s Apr 14 09:33:47 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:144 404s Apr 14 09:33:47 And Status code on GET http://127.0.0.1:8009/async is 200 after 3 seconds # features/steps/patroni_api.py:144 404s Apr 14 09:33:47 404s Apr 14 09:33:47 Scenario: check the basic failover in synchronous mode # features/basic_replication.feature:59 404s Apr 14 09:33:47 Given I run patronictl.py pause batman # features/steps/patroni_api.py:88 405s Apr 14 09:33:48 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 405s Apr 14 09:33:48 When I sleep for 2 seconds # features/steps/patroni_api.py:41 407s Apr 14 09:33:50 And I shut down postgres-0 # features/steps/basic_replication.py:41 408s Apr 14 09:33:51 And I run patronictl.py resume batman # features/steps/patroni_api.py:88 409s Apr 14 09:33:53 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 409s Apr 14 09:33:53 And postgres-2 role is the primary after 24 seconds # features/steps/basic_replication.py:117 429s Apr 14 09:34:13 And Response on GET http://127.0.0.1:8010/history contains recovery after 10 seconds # features/steps/patroni_api.py:158 433s Apr 14 09:34:16 And there is a postgres-2_cb.log with "on_role_change primary batman" in postgres-2 data directory # features/steps/cascading_replication.py:12 433s Apr 14 09:34:16 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:73 433s Apr 14 09:34:16 Then I receive a response code 200 # features/steps/patroni_api.py:100 433s Apr 14 09:34:16 When I add the table bar to postgres-2 # features/steps/basic_replication.py:66 433s Apr 14 09:34:16 Then table bar is present on postgres-1 after 20 seconds # features/steps/basic_replication.py:105 433s Apr 14 09:34:16 And Response on GET http://127.0.0.1:8010/config contains master_start_timeout after 10 seconds # features/steps/patroni_api.py:158 433s Apr 14 09:34:16 433s Apr 14 09:34:16 Scenario: check rejoin of the former primary with pg_rewind # features/basic_replication.feature:75 433s Apr 14 09:34:16 Given I add the table splitbrain to postgres-0 # features/steps/basic_replication.py:66 433s Apr 14 09:34:16 And I start postgres-0 # features/steps/basic_replication.py:20 433s Apr 14 09:34:16 Then postgres-0 role is the secondary after 20 seconds # features/steps/basic_replication.py:117 437s Apr 14 09:34:20 When I add the table buz to postgres-2 # features/steps/basic_replication.py:66 437s Apr 14 09:34:20 Then table buz is present on postgres-0 after 20 seconds # features/steps/basic_replication.py:105 441s Apr 14 09:34:24 441s Apr 14 09:34:24 @reject-duplicate-name 441s Apr 14 09:34:24 Scenario: check graceful rejection when two nodes have the same name # features/basic_replication.feature:83 441s Apr 14 09:34:24 Given I start duplicate postgres-0 on port 8011 # features/steps/basic_replication.py:25 443s Apr 14 09:34:26 Then there is one of ["Can't start; there is already a node named 'postgres-0' running"] CRITICAL in the dup-postgres-0 patroni log after 5 seconds # features/steps/basic_replication.py:133 447s Apr 14 09:34:30 447s Apr 14 09:34:30 Feature: cascading replication # features/cascading_replication.feature:1 447s Apr 14 09:34:30 We should check that patroni can do base backup and streaming from the replica 447s Apr 14 09:34:30 Scenario: check a base backup and streaming replication from a replica # features/cascading_replication.feature:4 447s Apr 14 09:34:30 Given I start postgres-0 # features/steps/basic_replication.py:20 451s Apr 14 09:34:35 And postgres-0 is a leader after 10 seconds # features/steps/patroni_api.py:31 452s Apr 14 09:34:36 And I configure and start postgres-1 with a tag clonefrom true # features/steps/cascading_replication.py:7 456s Apr 14 09:34:40 And replication works from postgres-0 to postgres-1 after 20 seconds # features/steps/basic_replication.py:124 458s Apr 14 09:34:41 And I create label with "postgres-0" in postgres-0 data directory # features/steps/cascading_replication.py:18 458s Apr 14 09:34:41 And I create label with "postgres-1" in postgres-1 data directory # features/steps/cascading_replication.py:18 458s Apr 14 09:34:41 And "members/postgres-1" key in DCS has state=running after 12 seconds # features/steps/cascading_replication.py:23 458s Apr 14 09:34:41 And I configure and start postgres-2 with a tag replicatefrom postgres-1 # features/steps/cascading_replication.py:7 463s Apr 14 09:34:46 Then replication works from postgres-0 to postgres-2 after 30 seconds # features/steps/basic_replication.py:124 464s Apr 14 09:34:47 And there is a label with "postgres-1" in postgres-2 data directory # features/steps/cascading_replication.py:12 471s Apr 14 09:34:54 471s SKIP FEATURE citus: Citus extension isn't available 471s SKIP Scenario check that worker cluster is registered in the coordinator: Citus extension isn't available 471s SKIP Scenario coordinator failover updates pg_dist_node: Citus extension isn't available 471s SKIP Scenario worker switchover doesn't break client queries on the coordinator: Citus extension isn't available 471s Apr 14 09:34:54 Feature: citus # features/citus.feature:1 471s Apr 14 09:34:54 We should check that coordinator discovers and registers workers and clients don't have errors when worker cluster switches over 471s Apr 14 09:34:54 Scenario: check that worker cluster is registered in the coordinator # features/citus.feature:4 471s Apr 14 09:34:54 Given I start postgres-0 in citus group 0 # None 471s Apr 14 09:34:54 And I start postgres-2 in citus group 1 # None 471s Apr 14 09:34:54 Then postgres-0 is a leader in a group 0 after 10 seconds # None 471s Apr 14 09:34:54 And postgres-2 is a leader in a group 1 after 10 seconds # None 471s Apr 14 09:34:54 When I start postgres-1 in citus group 0 # None 471s Apr 14 09:34:54 And I start postgres-3 in citus group 1 # None 471s Apr 14 09:34:54 Then replication works from postgres-0 to postgres-1 after 15 seconds # None 471s Apr 14 09:34:54 Then replication works from postgres-2 to postgres-3 after 15 seconds # None 471s Apr 14 09:34:54 And postgres-0 is registered in the postgres-0 as the primary in group 0 after 5 seconds # None 471s Apr 14 09:34:54 And postgres-1 is registered in the postgres-0 as the secondary in group 0 after 5 seconds # None 471s Apr 14 09:34:54 And postgres-2 is registered in the postgres-0 as the primary in group 1 after 5 seconds # None 471s Apr 14 09:34:54 And postgres-3 is registered in the postgres-0 as the secondary in group 1 after 5 seconds # None 471s Apr 14 09:34:54 471s Apr 14 09:34:54 Scenario: coordinator failover updates pg_dist_node # features/citus.feature:18 471s Apr 14 09:34:54 Given I run patronictl.py failover batman --group 0 --candidate postgres-1 --force # None 471s Apr 14 09:34:54 Then postgres-1 role is the primary after 10 seconds # None 471s Apr 14 09:34:54 And "members/postgres-0" key in a group 0 in DCS has state=running after 15 seconds # None 471s Apr 14 09:34:54 And replication works from postgres-1 to postgres-0 after 15 seconds # None 471s Apr 14 09:34:54 And postgres-1 is registered in the postgres-2 as the primary in group 0 after 5 seconds # None 471s Apr 14 09:34:54 And postgres-0 is registered in the postgres-2 as the secondary in group 0 after 15 seconds # None 471s Apr 14 09:34:54 And "sync" key in a group 0 in DCS has sync_standby=postgres-0 after 15 seconds # None 471s Apr 14 09:34:54 When I run patronictl.py switchover batman --group 0 --candidate postgres-0 --force # None 471s Apr 14 09:34:54 Then postgres-0 role is the primary after 10 seconds # None 471s Apr 14 09:34:54 And replication works from postgres-0 to postgres-1 after 15 seconds # None 471s Apr 14 09:34:54 And postgres-0 is registered in the postgres-2 as the primary in group 0 after 5 seconds # None 471s Apr 14 09:34:54 And postgres-1 is registered in the postgres-2 as the secondary in group 0 after 15 seconds # None 471s Apr 14 09:34:54 And "sync" key in a group 0 in DCS has sync_standby=postgres-1 after 15 seconds # None 471s SKIP Scenario worker primary restart doesn't break client queries on the coordinator: Citus extension isn't available 471s SKIP Scenario check that in-flight transaction is rolled back after timeout when other workers need to change pg_dist_node: Citus extension isn't available 471s Apr 14 09:34:54 471s Apr 14 09:34:54 Scenario: worker switchover doesn't break client queries on the coordinator # features/citus.feature:33 471s Apr 14 09:34:54 Given I create a distributed table on postgres-0 # None 471s Apr 14 09:34:54 And I start a thread inserting data on postgres-0 # None 471s Apr 14 09:34:54 When I run patronictl.py switchover batman --group 1 --force # None 471s Apr 14 09:34:54 Then I receive a response returncode 0 # None 471s Apr 14 09:34:54 And postgres-3 role is the primary after 10 seconds # None 471s Apr 14 09:34:54 And "members/postgres-2" key in a group 1 in DCS has state=running after 15 seconds # None 471s Apr 14 09:34:54 And replication works from postgres-3 to postgres-2 after 15 seconds # None 471s Apr 14 09:34:54 And postgres-3 is registered in the postgres-0 as the primary in group 1 after 5 seconds # None 471s Apr 14 09:34:54 And postgres-2 is registered in the postgres-0 as the secondary in group 1 after 15 seconds # None 471s Apr 14 09:34:54 And "sync" key in a group 1 in DCS has sync_standby=postgres-2 after 15 seconds # None 471s Apr 14 09:34:54 And a thread is still alive # None 471s Apr 14 09:34:54 When I run patronictl.py switchover batman --group 1 --force # None 471s Apr 14 09:34:54 Then I receive a response returncode 0 # None 471s Apr 14 09:34:54 And postgres-2 role is the primary after 10 seconds # None 471s Apr 14 09:34:54 And replication works from postgres-2 to postgres-3 after 15 seconds # None 471s Apr 14 09:34:54 And postgres-2 is registered in the postgres-0 as the primary in group 1 after 5 seconds # None 471s Apr 14 09:34:54 And postgres-3 is registered in the postgres-0 as the secondary in group 1 after 15 seconds # None 471s Apr 14 09:34:54 And "sync" key in a group 1 in DCS has sync_standby=postgres-3 after 15 seconds # None 471s Apr 14 09:34:54 And a thread is still alive # None 471s Apr 14 09:34:54 When I stop a thread # None 471s Apr 14 09:34:54 Then a distributed table on postgres-0 has expected rows # None 471s Apr 14 09:34:54 471s Apr 14 09:34:54 Scenario: worker primary restart doesn't break client queries on the coordinator # features/citus.feature:56 471s Apr 14 09:34:54 Given I cleanup a distributed table on postgres-0 # None 471s Apr 14 09:34:54 And I start a thread inserting data on postgres-0 # None 471s Apr 14 09:34:54 When I run patronictl.py restart batman postgres-2 --group 1 --force # None 471s Apr 14 09:34:54 Then I receive a response returncode 0 # None 471s Apr 14 09:34:54 And postgres-2 role is the primary after 10 seconds # None 471s Apr 14 09:34:54 And replication works from postgres-2 to postgres-3 after 15 seconds # None 471s Apr 14 09:34:54 And postgres-2 is registered in the postgres-0 as the primary in group 1 after 5 seconds # None 471s Apr 14 09:34:54 And postgres-3 is registered in the postgres-0 as the secondary in group 1 after 15 seconds # None 471s Apr 14 09:34:54 And a thread is still alive # None 471s Apr 14 09:34:54 When I stop a thread # None 471s Apr 14 09:34:54 Then a distributed table on postgres-0 has expected rows # None 471s Apr 14 09:34:54 471s Apr 14 09:34:54 Scenario: check that in-flight transaction is rolled back after timeout when other workers need to change pg_dist_node # features/citus.feature:69 471s Apr 14 09:34:54 Given I start postgres-4 in citus group 2 # None 471s Apr 14 09:34:54 Then postgres-4 is a leader in a group 2 after 10 seconds # None 471s Apr 14 09:34:54 And "members/postgres-4" key in a group 2 in DCS has role=primary after 3 seconds # None 471s Apr 14 09:34:54 When I run patronictl.py edit-config batman --group 2 -s ttl=20 --force # None 471s Apr 14 09:34:54 Then I receive a response returncode 0 # None 471s Apr 14 09:34:54 And I receive a response output "+ttl: 20" # None 471s Apr 14 09:34:54 Then postgres-4 is registered in the postgres-2 as the primary in group 2 after 5 seconds # None 471s Apr 14 09:34:54 When I shut down postgres-4 # None 471s Apr 14 09:34:54 Then there is a transaction in progress on postgres-0 changing pg_dist_node after 5 seconds # None 471s Apr 14 09:34:54 When I run patronictl.py restart batman postgres-2 --group 1 --force # None 471s Apr 14 09:34:54 Then a transaction finishes in 20 seconds # None 471s Apr 14 09:34:54 471s Apr 14 09:34:54 Feature: custom bootstrap # features/custom_bootstrap.feature:1 471s Apr 14 09:34:54 We should check that patroni can bootstrap a new cluster from a backup 471s Apr 14 09:34:54 Scenario: clone existing cluster using pg_basebackup # features/custom_bootstrap.feature:4 471s Apr 14 09:34:54 Given I start postgres-0 # features/steps/basic_replication.py:20 476s Apr 14 09:34:59 Then postgres-0 is a leader after 10 seconds # features/steps/patroni_api.py:31 477s Apr 14 09:35:00 When I add the table foo to postgres-0 # features/steps/basic_replication.py:66 477s Apr 14 09:35:00 And I start postgres-1 in a cluster batman1 as a clone of postgres-0 # features/steps/custom_bootstrap.py:6 483s Apr 14 09:35:06 Then postgres-1 is a leader of batman1 after 10 seconds # features/steps/custom_bootstrap.py:16 484s Apr 14 09:35:07 Then table foo is present on postgres-1 after 10 seconds # features/steps/basic_replication.py:105 484s Apr 14 09:35:07 484s Apr 14 09:35:07 Scenario: make a backup and do a restore into a new cluster # features/custom_bootstrap.feature:12 484s Apr 14 09:35:07 Given I add the table bar to postgres-1 # features/steps/basic_replication.py:66 484s Apr 14 09:35:08 And I do a backup of postgres-1 # features/steps/custom_bootstrap.py:25 485s Apr 14 09:35:08 When I start postgres-2 in a cluster batman2 from backup # features/steps/custom_bootstrap.py:11 491s Apr 14 09:35:14 Then postgres-2 is a leader of batman2 after 30 seconds # features/steps/custom_bootstrap.py:16 492s Apr 14 09:35:15 And table bar is present on postgres-2 after 10 seconds # features/steps/basic_replication.py:105 498s Apr 14 09:35:22 498s Apr 14 09:35:22 Feature: dcs failsafe mode # features/dcs_failsafe_mode.feature:1 498s Apr 14 09:35:22 We should check the basic dcs failsafe mode functioning 498s Apr 14 09:35:22 Scenario: check failsafe mode can be successfully enabled # features/dcs_failsafe_mode.feature:4 498s Apr 14 09:35:22 Given I start postgres-0 # features/steps/basic_replication.py:20 501s Apr 14 09:35:25 And postgres-0 is a leader after 10 seconds # features/steps/patroni_api.py:31 503s Apr 14 09:35:27 Then "config" key in DCS has ttl=30 after 10 seconds # features/steps/cascading_replication.py:23 503s Apr 14 09:35:27 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:73 503s Apr 14 09:35:27 Then I receive a response code 200 # features/steps/patroni_api.py:100 503s Apr 14 09:35:27 And Response on GET http://127.0.0.1:8008/failsafe contains postgres-0 after 10 seconds # features/steps/patroni_api.py:158 505s Apr 14 09:35:28 When I issue a GET request to http://127.0.0.1:8008/failsafe # features/steps/patroni_api.py:63 505s Apr 14 09:35:28 Then I receive a response code 200 # features/steps/patroni_api.py:100 505s Apr 14 09:35:28 And I receive a response postgres-0 http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:100 505s Apr 14 09:35:28 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,"postgres_0":null}} # features/steps/patroni_api.py:73 505s Apr 14 09:35:28 Then I receive a response code 200 # features/steps/patroni_api.py:100 505s Apr 14 09:35:28 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:73 505s Apr 14 09:35:28 Then I receive a response code 200 # features/steps/patroni_api.py:100 505s SKIP Scenario check one-node cluster is functioning while DCS is down: it is not possible to control state of etcd3 from tests 505s 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 505s Apr 14 09:35:28 505s Apr 14 09:35:28 @dcs-failsafe 505s Apr 14 09:35:28 Scenario: check one-node cluster is functioning while DCS is down # features/dcs_failsafe_mode.feature:20 505s Apr 14 09:35:28 Given DCS is down # None 505s Apr 14 09:35:28 Then Response on GET http://127.0.0.1:8008/primary contains failsafe_mode_is_active after 12 seconds # None 505s Apr 14 09:35:28 And postgres-0 role is the primary after 10 seconds # None 505s Apr 14 09:35:28 505s Apr 14 09:35:28 @dcs-failsafe 505s Apr 14 09:35:28 Scenario: check new replica isn't promoted when leader is down and DCS is up # features/dcs_failsafe_mode.feature:26 505s Apr 14 09:35:28 Given DCS is up # None 505s Apr 14 09:35:28 When I do a backup of postgres-0 # None 505s Apr 14 09:35:28 And I shut down postgres-0 # None 505s Apr 14 09:35:28 When I start postgres-1 in a cluster batman from backup with no_leader # None 505s Apr 14 09:35:28 Then postgres-1 role is the replica after 12 seconds # None 505s Apr 14 09:35:28 505s Apr 14 09:35:28 Scenario: check leader and replica are both in /failsafe key after leader is back # features/dcs_failsafe_mode.feature:33 505s Apr 14 09:35:28 Given I start postgres-0 # features/steps/basic_replication.py:20 505s Apr 14 09:35:28 And I start postgres-1 # features/steps/basic_replication.py:20 510s Apr 14 09:35:33 Then "members/postgres-0" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 510s Apr 14 09:35:33 And "members/postgres-1" key in DCS has state=running after 2 seconds # features/steps/cascading_replication.py:23 510s Apr 14 09:35:33 And Response on GET http://127.0.0.1:8009/failsafe contains postgres-1 after 10 seconds # features/steps/patroni_api.py:158 510s Apr 14 09:35:33 When I issue a GET request to http://127.0.0.1:8009/failsafe # features/steps/patroni_api.py:63 510s Apr 14 09:35:33 Then I receive a response code 200 # features/steps/patroni_api.py:100 510s Apr 14 09:35:33 And I receive a response postgres-0 http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:100 510s SKIP Scenario check leader and replica are functioning while DCS is down: it is not possible to control state of etcd3 from tests 510s Apr 14 09:35:33 And I receive a response postgres-1 http://127.0.0.1:8009/patroni # features/steps/patroni_api.py:100 510s 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 510s Apr 14 09:35:33 510s Apr 14 09:35:33 @dcs-failsafe @slot-advance 510s Apr 14 09:35:33 Scenario: check leader and replica are functioning while DCS is down # features/dcs_failsafe_mode.feature:46 510s Apr 14 09:35:33 Given I get all changes from physical slot dcs_slot_1 on postgres-0 # None 510s Apr 14 09:35:33 Then physical slot dcs_slot_1 is in sync between postgres-0 and postgres-1 after 10 seconds # None 510s Apr 14 09:35:33 And logical slot dcs_slot_0 is in sync between postgres-0 and postgres-1 after 10 seconds # None 510s Apr 14 09:35:33 And DCS is down # None 510s Apr 14 09:35:33 Then Response on GET http://127.0.0.1:8008/primary contains failsafe_mode_is_active after 12 seconds # None 510s Apr 14 09:35:33 Then postgres-0 role is the primary after 10 seconds # None 510s Apr 14 09:35:33 And postgres-1 role is the replica after 2 seconds # None 510s Apr 14 09:35:33 And replication works from postgres-0 to postgres-1 after 10 seconds # None 510s Apr 14 09:35:33 When I get all changes from logical slot dcs_slot_0 on postgres-0 # None 510s Apr 14 09:35:33 And I get all changes from physical slot dcs_slot_1 on postgres-0 # None 510s Apr 14 09:35:33 Then logical slot dcs_slot_0 is in sync between postgres-0 and postgres-1 after 20 seconds # None 510s Apr 14 09:35:33 And physical slot dcs_slot_1 is in sync between postgres-0 and postgres-1 after 10 seconds # None 510s Apr 14 09:35:33 510s Apr 14 09:35:33 @dcs-failsafe 510s Apr 14 09:35:33 Scenario: check primary is demoted when one replica is shut down and DCS is down # features/dcs_failsafe_mode.feature:61 510s Apr 14 09:35:33 Given DCS is down # None 510s Apr 14 09:35:33 And I kill postgres-1 # None 510s Apr 14 09:35:33 And I kill postmaster on postgres-1 # None 510s Apr 14 09:35:33 Then postgres-0 role is the replica after 12 seconds # None 510s Apr 14 09:35:33 510s Apr 14 09:35:33 @dcs-failsafe 510s Apr 14 09:35:33 Scenario: check known replica is promoted when leader is down and DCS is up # features/dcs_failsafe_mode.feature:68 510s Apr 14 09:35:33 Given I kill postgres-0 # None 510s Apr 14 09:35:33 And I shut down postmaster on postgres-0 # None 510s Apr 14 09:35:33 And DCS is up # None 510s Apr 14 09:35:33 When I start postgres-1 # None 510s Apr 14 09:35:33 Then "members/postgres-1" key in DCS has state=running after 10 seconds # None 510s Apr 14 09:35:33 And postgres-1 role is the primary after 25 seconds # None 510s Apr 14 09:35:33 510s Apr 14 09:35:33 @dcs-failsafe 510s Apr 14 09:35:33 Scenario: scale to three-node cluster # features/dcs_failsafe_mode.feature:77 510s Apr 14 09:35:33 Given I start postgres-0 # None 510s Apr 14 09:35:33 And I configure and start postgres-2 with a tag replicatefrom postgres-0 # None 510s Apr 14 09:35:33 Then "members/postgres-2" key in DCS has state=running after 10 seconds # None 510s Apr 14 09:35:33 And "members/postgres-0" key in DCS has state=running after 20 seconds # None 510s Apr 14 09:35:33 And Response on GET http://127.0.0.1:8008/failsafe contains postgres-2 after 10 seconds # None 510s Apr 14 09:35:33 And replication works from postgres-1 to postgres-0 after 10 seconds # None 510s Apr 14 09:35:33 And replication works from postgres-1 to postgres-2 after 10 seconds # None 510s Apr 14 09:35:33 510s Apr 14 09:35:33 @dcs-failsafe @slot-advance 510s Apr 14 09:35:33 Scenario: make sure permanent slots exist on replicas # features/dcs_failsafe_mode.feature:88 510s Apr 14 09:35:33 Given I issue a PATCH request to http://127.0.0.1:8009/config with {"slots":{"dcs_slot_0":null,"dcs_slot_2":{"type":"logical","database":"postgres","plugin":"test_decoding"}}} # None 510s Apr 14 09:35:33 Then logical slot dcs_slot_2 is in sync between postgres-1 and postgres-0 after 20 seconds # None 510s Apr 14 09:35:33 And logical slot dcs_slot_2 is in sync between postgres-1 and postgres-2 after 20 seconds # None 510s Apr 14 09:35:33 When I get all changes from physical slot dcs_slot_1 on postgres-1 # None 510s Apr 14 09:35:33 Then physical slot dcs_slot_1 is in sync between postgres-1 and postgres-0 after 10 seconds # None 510s Apr 14 09:35:33 And physical slot dcs_slot_1 is in sync between postgres-1 and postgres-2 after 10 seconds # None 510s Apr 14 09:35:33 And physical slot postgres_0 is in sync between postgres-1 and postgres-2 after 10 seconds # None 510s Apr 14 09:35:33 And physical slot postgres_2 is in sync between postgres-0 and postgres-1 after 10 seconds # None 510s Apr 14 09:35:33 510s Apr 14 09:35:33 @dcs-failsafe 510s Apr 14 09:35:33 Scenario: check three-node cluster is functioning while DCS is down # features/dcs_failsafe_mode.feature:99 510s Apr 14 09:35:33 Given DCS is down # None 510s Apr 14 09:35:33 Then Response on GET http://127.0.0.1:8009/primary contains failsafe_mode_is_active after 12 seconds # None 510s Apr 14 09:35:33 Then postgres-1 role is the primary after 10 seconds # None 510s Apr 14 09:35:33 And postgres-0 role is the replica after 2 seconds # None 510s Apr 14 09:35:33 And postgres-2 role is the replica after 2 seconds # None 510s 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 510s SKIP Scenario scale to three-node cluster: it is not possible to control state of etcd3 from tests 510s SKIP Scenario make sure permanent slots exist on replicas: it is not possible to control state of etcd3 from tests 510s SKIP Scenario check three-node cluster is functioning while DCS is down: it is not possible to control state of etcd3 from tests 510s 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 514s Apr 14 09:35:37 514s Apr 14 09:35:37 @dcs-failsafe @slot-advance 514s Apr 14 09:35:37 Scenario: check that permanent slots are in sync between nodes while DCS is down # features/dcs_failsafe_mode.feature:108 514s Apr 14 09:35:37 Given replication works from postgres-1 to postgres-0 after 10 seconds # None 514s Apr 14 09:35:37 And replication works from postgres-1 to postgres-2 after 10 seconds # None 514s Apr 14 09:35:37 When I get all changes from logical slot dcs_slot_2 on postgres-1 # None 514s Apr 14 09:35:37 And I get all changes from physical slot dcs_slot_1 on postgres-1 # None 514s Apr 14 09:35:37 Then logical slot dcs_slot_2 is in sync between postgres-1 and postgres-0 after 20 seconds # None 514s Apr 14 09:35:37 And logical slot dcs_slot_2 is in sync between postgres-1 and postgres-2 after 20 seconds # None 514s Apr 14 09:35:37 And physical slot dcs_slot_1 is in sync between postgres-1 and postgres-0 after 10 seconds # None 514s Apr 14 09:35:37 And physical slot dcs_slot_1 is in sync between postgres-1 and postgres-2 after 10 seconds # None 514s Apr 14 09:35:37 And physical slot postgres_0 is in sync between postgres-1 and postgres-2 after 10 seconds # None 514s Apr 14 09:35:37 And physical slot postgres_2 is in sync between postgres-0 and postgres-1 after 10 seconds # None 514s Apr 14 09:35:37 514s Apr 14 09:35:37 Feature: ignored slots # features/ignored_slots.feature:1 514s Apr 14 09:35:37 514s Apr 14 09:35:37 Scenario: check ignored slots aren't removed on failover/switchover # features/ignored_slots.feature:2 514s Apr 14 09:35:37 Given I start postgres-1 # features/steps/basic_replication.py:20 518s Apr 14 09:35:41 Then postgres-1 is a leader after 10 seconds # features/steps/patroni_api.py:31 519s Apr 14 09:35:42 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 519s Apr 14 09:35:42 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:73 519s Apr 14 09:35:42 Then I receive a response code 200 # features/steps/patroni_api.py:100 519s Apr 14 09:35:42 And Response on GET http://127.0.0.1:8009/config contains ignore_slots after 10 seconds # features/steps/patroni_api.py:158 520s Apr 14 09:35:43 When I shut down postgres-1 # features/steps/basic_replication.py:41 522s Apr 14 09:35:45 And I start postgres-1 # features/steps/basic_replication.py:20 525s Apr 14 09:35:48 Then postgres-1 is a leader after 10 seconds # features/steps/patroni_api.py:31 525s Apr 14 09:35:48 And "members/postgres-1" key in DCS has role=primary after 10 seconds # features/steps/cascading_replication.py:23 527s Apr 14 09:35:50 And postgres-1 role is the primary after 20 seconds # features/steps/basic_replication.py:117 527s Apr 14 09:35:50 When I create a logical replication slot unmanaged_slot_0 on postgres-1 with the test_decoding plugin # features/steps/slots.py:9 527s Apr 14 09:35:51 And I create a logical replication slot unmanaged_slot_1 on postgres-1 with the test_decoding plugin # features/steps/slots.py:9 527s Apr 14 09:35:51 And I create a logical replication slot unmanaged_slot_2 on postgres-1 with the test_decoding plugin # features/steps/slots.py:9 528s Apr 14 09:35:51 And I create a logical replication slot unmanaged_slot_3 on postgres-1 with the test_decoding plugin # features/steps/slots.py:9 528s Apr 14 09:35:51 And I create a logical replication slot dummy_slot on postgres-1 with the test_decoding plugin # features/steps/slots.py:9 528s Apr 14 09:35:51 Then postgres-1 has a logical replication slot named unmanaged_slot_0 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 528s Apr 14 09:35:51 And postgres-1 has a logical replication slot named unmanaged_slot_1 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 528s Apr 14 09:35:51 And postgres-1 has a logical replication slot named unmanaged_slot_2 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 528s Apr 14 09:35:51 And postgres-1 has a logical replication slot named unmanaged_slot_3 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 528s Apr 14 09:35:51 When I start postgres-0 # features/steps/basic_replication.py:20 533s Apr 14 09:35:56 Then "members/postgres-0" key in DCS has role=replica after 10 seconds # features/steps/cascading_replication.py:23 533s Apr 14 09:35:56 And postgres-0 role is the secondary after 20 seconds # features/steps/basic_replication.py:117 533s Apr 14 09:35:56 And replication works from postgres-1 to postgres-0 after 20 seconds # features/steps/basic_replication.py:124 534s Apr 14 09:35:57 When I shut down postgres-1 # features/steps/basic_replication.py:41 536s Apr 14 09:35:59 Then "members/postgres-0" key in DCS has role=primary after 10 seconds # features/steps/cascading_replication.py:23 537s Apr 14 09:36:00 When I start postgres-1 # features/steps/basic_replication.py:20 540s Apr 14 09:36:03 Then postgres-1 role is the secondary after 20 seconds # features/steps/basic_replication.py:117 540s Apr 14 09:36:03 And "members/postgres-1" key in DCS has role=replica after 10 seconds # features/steps/cascading_replication.py:23 541s Apr 14 09:36:04 And I sleep for 2 seconds # features/steps/patroni_api.py:41 543s Apr 14 09:36:06 And postgres-1 has a logical replication slot named unmanaged_slot_0 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 543s Apr 14 09:36:06 And postgres-1 has a logical replication slot named unmanaged_slot_1 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 543s Apr 14 09:36:06 And postgres-1 has a logical replication slot named unmanaged_slot_2 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 543s Apr 14 09:36:06 And postgres-1 has a logical replication slot named unmanaged_slot_3 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 543s Apr 14 09:36:06 And postgres-1 does not have a replication slot named dummy_slot # features/steps/slots.py:41 543s Apr 14 09:36:06 When I shut down postgres-0 # features/steps/basic_replication.py:41 545s Apr 14 09:36:08 Then "members/postgres-1" key in DCS has role=primary after 10 seconds # features/steps/cascading_replication.py:23 546s Apr 14 09:36:09 And postgres-1 has a logical replication slot named unmanaged_slot_0 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 546s Apr 14 09:36:09 And postgres-1 has a logical replication slot named unmanaged_slot_1 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 546s Apr 14 09:36:09 And postgres-1 has a logical replication slot named unmanaged_slot_2 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 546s Apr 14 09:36:09 And postgres-1 has a logical replication slot named unmanaged_slot_3 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 548s Apr 14 09:36:11 548s Apr 14 09:36:11 Feature: nostream node # features/nostream_node.feature:1 548s Apr 14 09:36:11 548s Apr 14 09:36:11 Scenario: check nostream node is recovering from archive # features/nostream_node.feature:3 548s Apr 14 09:36:11 When I start postgres-0 # features/steps/basic_replication.py:20 552s Apr 14 09:36:16 And I configure and start postgres-1 with a tag nostream true # features/steps/cascading_replication.py:7 556s Apr 14 09:36:20 Then "members/postgres-1" key in DCS has replication_state=in archive recovery after 10 seconds # features/steps/cascading_replication.py:23 557s Apr 14 09:36:21 And replication works from postgres-0 to postgres-1 after 30 seconds # features/steps/basic_replication.py:124 562s Apr 14 09:36:25 562s Apr 14 09:36:25 @slot-advance 562s Apr 14 09:36:25 Scenario: check permanent logical replication slots are not copied # features/nostream_node.feature:10 562s Apr 14 09:36:25 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:73 562s Apr 14 09:36:25 Then I receive a response code 200 # features/steps/patroni_api.py:100 562s Apr 14 09:36:25 When I run patronictl.py restart batman postgres-0 --force # features/steps/patroni_api.py:88 565s Apr 14 09:36:28 Then postgres-0 has a logical replication slot named test_logical with the test_decoding plugin after 10 seconds # features/steps/slots.py:20 566s Apr 14 09:36:29 When I configure and start postgres-2 with a tag replicatefrom postgres-1 # features/steps/cascading_replication.py:7 570s Apr 14 09:36:33 Then "members/postgres-2" key in DCS has replication_state=streaming after 10 seconds # features/steps/cascading_replication.py:23 576s Apr 14 09:36:39 And postgres-1 does not have a replication slot named test_logical # features/steps/slots.py:41 576s Apr 14 09:36:39 And postgres-2 does not have a replication slot named test_logical # features/steps/slots.py:41 576s Apr 14 09:36:39 576s Apr 14 09:36:39 @slot-advance 576s Apr 14 09:36:39 Scenario: check that slots are written to the /status key # features/nostream_node.feature:21 576s Apr 14 09:36:39 Given "status" key in DCS has postgres_0 in slots # features/steps/slots.py:118 576s Apr 14 09:36:39 And "status" key in DCS has postgres_2 in slots # features/steps/slots.py:118 576s Apr 14 09:36:39 And "status" key in DCS has test_logical in slots # features/steps/slots.py:118 576s Apr 14 09:36:39 And "status" key in DCS has test_logical in slots # features/steps/slots.py:118 576s Apr 14 09:36:39 And "status" key in DCS does not have postgres_1 in slots # features/steps/slots.py:124 581s Apr 14 09:36:44 581s Apr 14 09:36:44 Feature: patroni api # features/patroni_api.feature:1 581s Apr 14 09:36:44 We should check that patroni correctly responds to valid and not-valid API requests. 581s Apr 14 09:36:44 Scenario: check API requests on a stand-alone server # features/patroni_api.feature:4 581s Apr 14 09:36:44 Given I start postgres-0 # features/steps/basic_replication.py:20 585s Apr 14 09:36:48 And postgres-0 is a leader after 10 seconds # features/steps/patroni_api.py:31 586s Apr 14 09:36:49 When I issue a GET request to http://127.0.0.1:8008/ # features/steps/patroni_api.py:63 586s Apr 14 09:36:49 Then I receive a response code 200 # features/steps/patroni_api.py:100 586s Apr 14 09:36:49 And I receive a response state running # features/steps/patroni_api.py:100 586s Apr 14 09:36:49 And I receive a response role primary # features/steps/patroni_api.py:100 586s Apr 14 09:36:49 When I issue a GET request to http://127.0.0.1:8008/standby_leader # features/steps/patroni_api.py:63 586s Apr 14 09:36:49 Then I receive a response code 503 # features/steps/patroni_api.py:100 586s Apr 14 09:36:49 When I issue a GET request to http://127.0.0.1:8008/health # features/steps/patroni_api.py:63 586s Apr 14 09:36:49 Then I receive a response code 200 # features/steps/patroni_api.py:100 586s Apr 14 09:36:49 When I issue a GET request to http://127.0.0.1:8008/replica # features/steps/patroni_api.py:63 586s Apr 14 09:36:49 Then I receive a response code 503 # features/steps/patroni_api.py:100 586s Apr 14 09:36:49 When I issue a POST request to http://127.0.0.1:8008/reinitialize with {"force": true} # features/steps/patroni_api.py:73 586s Apr 14 09:36:49 Then I receive a response code 503 # features/steps/patroni_api.py:100 586s Apr 14 09:36:49 And I receive a response text I am the leader, can not reinitialize # features/steps/patroni_api.py:100 586s Apr 14 09:36:49 When I run patronictl.py switchover batman --primary postgres-0 --force # features/steps/patroni_api.py:88 587s Apr 14 09:36:50 Then I receive a response returncode 1 # features/steps/patroni_api.py:100 587s Apr 14 09:36:50 And I receive a response output "Error: No candidates found to switchover to" # features/steps/patroni_api.py:100 587s Apr 14 09:36:50 When I issue a POST request to http://127.0.0.1:8008/switchover with {"leader": "postgres-0"} # features/steps/patroni_api.py:73 587s Apr 14 09:36:50 Then I receive a response code 412 # features/steps/patroni_api.py:100 587s Apr 14 09:36:50 And I receive a response text switchover is not possible: cluster does not have members except leader # features/steps/patroni_api.py:100 587s Apr 14 09:36:50 When I issue an empty POST request to http://127.0.0.1:8008/failover # features/steps/patroni_api.py:68 587s Apr 14 09:36:51 Then I receive a response code 400 # features/steps/patroni_api.py:100 587s Apr 14 09:36:51 When I issue a POST request to http://127.0.0.1:8008/failover with {"foo": "bar"} # features/steps/patroni_api.py:73 587s Apr 14 09:36:51 Then I receive a response code 400 # features/steps/patroni_api.py:100 587s Apr 14 09:36:51 And I receive a response text "Failover could be performed only to a specific candidate" # features/steps/patroni_api.py:100 587s Apr 14 09:36:51 587s Apr 14 09:36:51 Scenario: check local configuration reload # features/patroni_api.feature:32 587s Apr 14 09:36:51 Given I add tag new_tag new_value to postgres-0 config # features/steps/patroni_api.py:139 587s Apr 14 09:36:51 And I issue an empty POST request to http://127.0.0.1:8008/reload # features/steps/patroni_api.py:68 587s Apr 14 09:36:51 Then I receive a response code 202 # features/steps/patroni_api.py:100 587s Apr 14 09:36:51 587s Apr 14 09:36:51 Scenario: check dynamic configuration change via DCS # features/patroni_api.feature:37 587s Apr 14 09:36:51 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:73 588s Apr 14 09:36:51 Then I receive a response code 200 # features/steps/patroni_api.py:100 588s Apr 14 09:36:51 And Response on GET http://127.0.0.1:8008/patroni contains pending_restart after 11 seconds # features/steps/patroni_api.py:158 591s Apr 14 09:36:54 When I issue a GET request to http://127.0.0.1:8008/config # features/steps/patroni_api.py:63 591s Apr 14 09:36:54 Then I receive a response code 200 # features/steps/patroni_api.py:100 591s Apr 14 09:36:54 And I receive a response ttl 20 # features/steps/patroni_api.py:100 591s Apr 14 09:36:54 When I issue a GET request to http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:63 591s Apr 14 09:36:54 Then I receive a response code 200 # features/steps/patroni_api.py:100 591s Apr 14 09:36:54 And I receive a response tags {'new_tag': 'new_value'} # features/steps/patroni_api.py:100 591s Apr 14 09:36:54 And I sleep for 4 seconds # features/steps/patroni_api.py:41 595s Apr 14 09:36:58 595s Apr 14 09:36:58 Scenario: check the scheduled restart # features/patroni_api.feature:49 595s Apr 14 09:36:58 Given I run patronictl.py edit-config -p 'superuser_reserved_connections=6' --force batman # features/steps/patroni_api.py:88 596s Apr 14 09:36:59 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 596s Apr 14 09:36:59 And I receive a response output "+ superuser_reserved_connections: 6" # features/steps/patroni_api.py:100 596s Apr 14 09:36:59 And Response on GET http://127.0.0.1:8008/patroni contains pending_restart after 5 seconds # features/steps/patroni_api.py:158 596s Apr 14 09:36:59 Given I issue a scheduled restart at http://127.0.0.1:8008 in 5 seconds with {"role": "replica"} # features/steps/patroni_api.py:126 596s Apr 14 09:36:59 Then I receive a response code 202 # features/steps/patroni_api.py:100 596s Apr 14 09:36:59 And I sleep for 8 seconds # features/steps/patroni_api.py:41 604s Apr 14 09:37:07 And Response on GET http://127.0.0.1:8008/patroni contains pending_restart after 10 seconds # features/steps/patroni_api.py:158 604s Apr 14 09:37:07 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:126 604s Apr 14 09:37:07 Then I receive a response code 202 # features/steps/patroni_api.py:100 604s Apr 14 09:37:07 And Response on GET http://127.0.0.1:8008/patroni does not contain pending_restart after 10 seconds # features/steps/patroni_api.py:173 611s Apr 14 09:37:14 And postgres-0 role is the primary after 10 seconds # features/steps/basic_replication.py:117 612s Apr 14 09:37:15 612s Apr 14 09:37:15 Scenario: check API requests for the primary-replica pair in the pause mode # features/patroni_api.feature:63 612s Apr 14 09:37:15 Given I start postgres-1 # features/steps/basic_replication.py:20 617s Apr 14 09:37:20 Then replication works from postgres-0 to postgres-1 after 20 seconds # features/steps/basic_replication.py:124 618s Apr 14 09:37:22 When I run patronictl.py pause batman # features/steps/patroni_api.py:88 620s Apr 14 09:37:23 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 620s Apr 14 09:37:23 When I kill postmaster on postgres-1 # features/steps/basic_replication.py:56 620s Apr 14 09:37:23 waiting for server to shut down.... done 620s Apr 14 09:37:23 server stopped 620s Apr 14 09:37:23 And I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:63 620s Apr 14 09:37:23 Then I receive a response code 503 # features/steps/patroni_api.py:100 620s Apr 14 09:37:23 And "members/postgres-1" key in DCS has state=stopped after 10 seconds # features/steps/cascading_replication.py:23 624s Apr 14 09:37:27 When I run patronictl.py restart batman postgres-1 --force # features/steps/patroni_api.py:88 627s Apr 14 09:37:29 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 627s Apr 14 09:37:29 Then replication works from postgres-0 to postgres-1 after 20 seconds # features/steps/basic_replication.py:124 628s Apr 14 09:37:31 And I sleep for 2 seconds # features/steps/patroni_api.py:41 630s Apr 14 09:37:33 When I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:63 630s Apr 14 09:37:33 Then I receive a response code 200 # features/steps/patroni_api.py:100 630s Apr 14 09:37:33 And I receive a response state running # features/steps/patroni_api.py:100 630s Apr 14 09:37:33 And I receive a response role replica # features/steps/patroni_api.py:100 630s Apr 14 09:37:33 When I run patronictl.py reinit batman postgres-1 --force --wait # features/steps/patroni_api.py:88 635s Apr 14 09:37:38 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 635s Apr 14 09:37:38 And I receive a response output "Success: reinitialize for member postgres-1" # features/steps/patroni_api.py:100 635s Apr 14 09:37:38 And postgres-1 role is the secondary after 30 seconds # features/steps/basic_replication.py:117 635s Apr 14 09:37:39 And replication works from postgres-0 to postgres-1 after 20 seconds # features/steps/basic_replication.py:124 637s Apr 14 09:37:40 When I run patronictl.py restart batman postgres-0 --force # features/steps/patroni_api.py:88 640s Apr 14 09:37:43 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 640s Apr 14 09:37:43 And I receive a response output "Success: restart on member postgres-0" # features/steps/patroni_api.py:100 640s Apr 14 09:37:43 And postgres-0 role is the primary after 5 seconds # features/steps/basic_replication.py:117 641s Apr 14 09:37:44 641s Apr 14 09:37:44 Scenario: check the switchover via the API in the pause mode # features/patroni_api.feature:90 641s Apr 14 09:37:44 Given I issue a POST request to http://127.0.0.1:8008/switchover with {"leader": "postgres-0", "candidate": "postgres-1"} # features/steps/patroni_api.py:73 643s Apr 14 09:37:46 Then I receive a response code 200 # features/steps/patroni_api.py:100 643s Apr 14 09:37:46 And postgres-1 is a leader after 5 seconds # features/steps/patroni_api.py:31 643s Apr 14 09:37:46 And postgres-1 role is the primary after 10 seconds # features/steps/basic_replication.py:117 644s Apr 14 09:37:47 And postgres-0 role is the secondary after 10 seconds # features/steps/basic_replication.py:117 649s Apr 14 09:37:52 And replication works from postgres-1 to postgres-0 after 20 seconds # features/steps/basic_replication.py:124 649s Apr 14 09:37:52 And "members/postgres-0" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 649s Apr 14 09:37:52 When I issue a GET request to http://127.0.0.1:8008/primary # features/steps/patroni_api.py:63 649s Apr 14 09:37:52 Then I receive a response code 503 # features/steps/patroni_api.py:100 649s Apr 14 09:37:52 When I issue a GET request to http://127.0.0.1:8008/replica # features/steps/patroni_api.py:63 649s Apr 14 09:37:52 Then I receive a response code 200 # features/steps/patroni_api.py:100 649s Apr 14 09:37:52 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:63 649s Apr 14 09:37:52 Then I receive a response code 200 # features/steps/patroni_api.py:100 649s Apr 14 09:37:52 When I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:63 649s Apr 14 09:37:52 Then I receive a response code 503 # features/steps/patroni_api.py:100 649s Apr 14 09:37:52 649s Apr 14 09:37:52 Scenario: check the scheduled switchover # features/patroni_api.feature:107 649s Apr 14 09:37:52 Given I issue a scheduled switchover from postgres-1 to postgres-0 in 10 seconds # features/steps/patroni_api.py:119 650s Apr 14 09:37:53 Then I receive a response returncode 1 # features/steps/patroni_api.py:100 650s Apr 14 09:37:53 And I receive a response output "Can't schedule switchover in the paused state" # features/steps/patroni_api.py:100 650s Apr 14 09:37:53 When I run patronictl.py resume batman # features/steps/patroni_api.py:88 651s Apr 14 09:37:54 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 651s Apr 14 09:37:54 Given I issue a scheduled switchover from postgres-1 to postgres-0 in 10 seconds # features/steps/patroni_api.py:119 652s Apr 14 09:37:56 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 652s Apr 14 09:37:56 And postgres-0 is a leader after 20 seconds # features/steps/patroni_api.py:31 663s Apr 14 09:38:07 And postgres-0 role is the primary after 10 seconds # features/steps/basic_replication.py:117 664s Apr 14 09:38:08 And postgres-1 role is the secondary after 10 seconds # features/steps/basic_replication.py:117 666s Apr 14 09:38:10 And replication works from postgres-0 to postgres-1 after 25 seconds # features/steps/basic_replication.py:124 667s Apr 14 09:38:10 And "members/postgres-1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 668s Apr 14 09:38:11 When I issue a GET request to http://127.0.0.1:8008/primary # features/steps/patroni_api.py:63 668s Apr 14 09:38:11 Then I receive a response code 200 # features/steps/patroni_api.py:100 668s Apr 14 09:38:11 When I issue a GET request to http://127.0.0.1:8008/replica # features/steps/patroni_api.py:63 668s Apr 14 09:38:11 Then I receive a response code 503 # features/steps/patroni_api.py:100 668s Apr 14 09:38:11 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:63 668s Apr 14 09:38:11 Then I receive a response code 503 # features/steps/patroni_api.py:100 668s Apr 14 09:38:11 When I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:63 668s Apr 14 09:38:11 Then I receive a response code 200 # features/steps/patroni_api.py:100 672s Apr 14 09:38:15 672s Apr 14 09:38:15 Feature: permanent slots # features/permanent_slots.feature:1 672s Apr 14 09:38:15 672s Apr 14 09:38:15 Scenario: check that physical permanent slots are created # features/permanent_slots.feature:2 672s Apr 14 09:38:15 Given I start postgres-0 # features/steps/basic_replication.py:20 676s Apr 14 09:38:19 Then postgres-0 is a leader after 10 seconds # features/steps/patroni_api.py:31 678s Apr 14 09:38:21 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 678s Apr 14 09:38:21 When I issue a PATCH request to http://127.0.0.1:8008/config with {"slots":{"test_physical":0,"postgres_3":0},"postgresql":{"parameters":{"wal_level":"logical"}}} # features/steps/patroni_api.py:73 678s Apr 14 09:38:21 Then I receive a response code 200 # features/steps/patroni_api.py:100 678s Apr 14 09:38:21 And Response on GET http://127.0.0.1:8008/config contains slots after 10 seconds # features/steps/patroni_api.py:158 678s Apr 14 09:38:21 When I start postgres-1 # features/steps/basic_replication.py:20 682s Apr 14 09:38:25 And I configure and start postgres-2 with a tag nofailover true # features/steps/cascading_replication.py:7 687s Apr 14 09:38:30 And I configure and start postgres-3 with a tag replicatefrom postgres-2 # features/steps/cascading_replication.py:7 692s Apr 14 09:38:36 Then postgres-0 has a physical replication slot named test_physical after 10 seconds # features/steps/slots.py:82 692s Apr 14 09:38:36 And postgres-0 has a physical replication slot named postgres_1 after 10 seconds # features/steps/slots.py:82 692s Apr 14 09:38:36 And postgres-0 has a physical replication slot named postgres_2 after 10 seconds # features/steps/slots.py:82 692s Apr 14 09:38:36 And postgres-2 has a physical replication slot named postgres_3 after 10 seconds # features/steps/slots.py:82 692s Apr 14 09:38:36 And postgres-2 does not have a replication slot named test_physical # features/steps/slots.py:41 692s Apr 14 09:38:36 692s Apr 14 09:38:36 @slot-advance 692s Apr 14 09:38:36 Scenario: check that logical permanent slots are created # features/permanent_slots.feature:19 692s Apr 14 09:38:36 Given I run patronictl.py restart batman postgres-0 --force # features/steps/patroni_api.py:88 696s Apr 14 09:38:39 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:73 696s Apr 14 09:38:39 Then postgres-0 has a logical replication slot named test_logical with the test_decoding plugin after 10 seconds # features/steps/slots.py:20 697s Apr 14 09:38:40 697s Apr 14 09:38:40 @slot-advance 697s Apr 14 09:38:40 Scenario: check that permanent slots are created on replicas # features/permanent_slots.feature:25 697s Apr 14 09:38:40 Given postgres-1 has a logical replication slot named test_logical with the test_decoding plugin after 10 seconds # features/steps/slots.py:20 702s Apr 14 09:38:45 Then Logical slot test_logical is in sync between postgres-0 and postgres-1 after 10 seconds # features/steps/slots.py:52 702s Apr 14 09:38:45 And Logical slot test_logical is in sync between postgres-0 and postgres-3 after 10 seconds # features/steps/slots.py:52 703s Apr 14 09:38:46 And postgres-1 has a physical replication slot named test_physical after 2 seconds # features/steps/slots.py:82 703s Apr 14 09:38:46 And postgres-2 does not have a replication slot named test_logical # features/steps/slots.py:41 703s Apr 14 09:38:46 And postgres-3 has a physical replication slot named test_physical after 2 seconds # features/steps/slots.py:82 703s Apr 14 09:38:46 703s Apr 14 09:38:46 @slot-advance 703s Apr 14 09:38:46 Scenario: check permanent physical slots that match with member names # features/permanent_slots.feature:34 703s Apr 14 09:38:46 Given postgres-0 has a physical replication slot named postgres_3 after 2 seconds # features/steps/slots.py:82 703s Apr 14 09:38:46 And postgres-1 has a physical replication slot named postgres_0 after 2 seconds # features/steps/slots.py:82 703s Apr 14 09:38:46 And postgres-1 has a physical replication slot named postgres_2 after 2 seconds # features/steps/slots.py:82 703s Apr 14 09:38:46 And postgres-1 has a physical replication slot named postgres_3 after 2 seconds # features/steps/slots.py:82 703s Apr 14 09:38:46 And postgres-2 does not have a replication slot named postgres_0 # features/steps/slots.py:41 703s Apr 14 09:38:46 And postgres-2 does not have a replication slot named postgres_1 # features/steps/slots.py:41 703s Apr 14 09:38:46 And postgres-2 has a physical replication slot named postgres_3 after 2 seconds # features/steps/slots.py:82 703s Apr 14 09:38:46 And postgres-3 has a physical replication slot named postgres_0 after 2 seconds # features/steps/slots.py:82 703s Apr 14 09:38:46 And postgres-3 has a physical replication slot named postgres_1 after 2 seconds # features/steps/slots.py:82 703s Apr 14 09:38:46 And postgres-3 has a physical replication slot named postgres_2 after 2 seconds # features/steps/slots.py:82 703s Apr 14 09:38:46 703s Apr 14 09:38:46 @slot-advance 703s Apr 14 09:38:46 Scenario: check that permanent slots are advanced on replicas # features/permanent_slots.feature:47 703s Apr 14 09:38:46 Given I add the table replicate_me to postgres-0 # features/steps/basic_replication.py:66 703s Apr 14 09:38:46 When I get all changes from logical slot test_logical on postgres-0 # features/steps/slots.py:72 703s Apr 14 09:38:46 And I get all changes from physical slot test_physical on postgres-0 # features/steps/slots.py:77 703s Apr 14 09:38:46 Then Logical slot test_logical is in sync between postgres-0 and postgres-1 after 10 seconds # features/steps/slots.py:52 704s Apr 14 09:38:47 And Physical slot test_physical is in sync between postgres-0 and postgres-1 after 10 seconds # features/steps/slots.py:52 704s Apr 14 09:38:47 And Logical slot test_logical is in sync between postgres-0 and postgres-3 after 10 seconds # features/steps/slots.py:52 704s Apr 14 09:38:47 And Physical slot test_physical is in sync between postgres-0 and postgres-3 after 10 seconds # features/steps/slots.py:52 704s Apr 14 09:38:47 And Physical slot postgres_1 is in sync between postgres-0 and postgres-3 after 10 seconds # features/steps/slots.py:52 704s Apr 14 09:38:47 And Physical slot postgres_3 is in sync between postgres-2 and postgres-0 after 20 seconds # features/steps/slots.py:52 706s Apr 14 09:38:49 And Physical slot postgres_3 is in sync between postgres-2 and postgres-1 after 10 seconds # features/steps/slots.py:52 707s Apr 14 09:38:50 707s Apr 14 09:38:50 @slot-advance 707s Apr 14 09:38:50 Scenario: check that permanent slots and member slots are written to the /status key # features/permanent_slots.feature:60 707s Apr 14 09:38:50 Given "status" key in DCS has test_physical in slots # features/steps/slots.py:118 707s Apr 14 09:38:50 And "status" key in DCS has postgres_0 in slots # features/steps/slots.py:118 707s Apr 14 09:38:50 And "status" key in DCS has postgres_1 in slots # features/steps/slots.py:118 707s Apr 14 09:38:50 And "status" key in DCS has postgres_2 in slots # features/steps/slots.py:118 707s Apr 14 09:38:50 And "status" key in DCS has postgres_3 in slots # features/steps/slots.py:118 707s Apr 14 09:38:50 707s Apr 14 09:38:50 @slot-advance 707s Apr 14 09:38:50 Scenario: check that only non-permanent member slots are written to the retain_slots in /status key # features/permanent_slots.feature:68 707s Apr 14 09:38:50 Given "status" key in DCS has postgres_0 in retain_slots # features/steps/slots.py:118 707s Apr 14 09:38:50 And "status" key in DCS has postgres_1 in retain_slots # features/steps/slots.py:118 707s Apr 14 09:38:50 And "status" key in DCS has postgres_2 in retain_slots # features/steps/slots.py:118 707s Apr 14 09:38:50 And "status" key in DCS does not have postgres_3 in retain_slots # features/steps/slots.py:124 707s Apr 14 09:38:50 707s Apr 14 09:38:50 Scenario: check permanent physical replication slot after failover # features/permanent_slots.feature:74 707s Apr 14 09:38:50 Given I shut down postgres-3 # features/steps/basic_replication.py:41 708s Apr 14 09:38:51 And I shut down postgres-2 # features/steps/basic_replication.py:41 709s Apr 14 09:38:52 And I shut down postgres-0 # features/steps/basic_replication.py:41 711s Apr 14 09:38:54 Then postgres-1 has a physical replication slot named test_physical after 10 seconds # features/steps/slots.py:82 711s Apr 14 09:38:54 And postgres-1 has a physical replication slot named postgres_0 after 10 seconds # features/steps/slots.py:82 711s Apr 14 09:38:54 And postgres-1 has a physical replication slot named postgres_3 after 10 seconds # features/steps/slots.py:82 711s Apr 14 09:38:54 When I start postgres-0 # features/steps/basic_replication.py:20 714s Apr 14 09:38:57 Then postgres-0 role is the replica after 20 seconds # features/steps/basic_replication.py:117 714s Apr 14 09:38:57 And physical replication slot named postgres_1 on postgres-0 has no xmin value after 10 seconds # features/steps/slots.py:98 714s Apr 14 09:38:57 And postgres-0 has a physical replication slot named postgres_2 after 10 seconds # features/steps/slots.py:82 714s Apr 14 09:38:57 And postgres-0 has a physical replication slot named postgres_3 after 10 seconds # features/steps/slots.py:82 717s Apr 14 09:39:00 717s Apr 14 09:39:00 Feature: priority replication # features/priority_failover.feature:1 717s Apr 14 09:39:00 We should check that we can give nodes priority during failover 717s Apr 14 09:39:00 Scenario: check failover priority 0 prevents leaderships # features/priority_failover.feature:4 717s Apr 14 09:39:00 Given I configure and start postgres-0 with a tag failover_priority 1 # features/steps/cascading_replication.py:7 722s Apr 14 09:39:06 And I configure and start postgres-1 with a tag failover_priority 0 # features/steps/cascading_replication.py:7 726s Apr 14 09:39:10 Then replication works from postgres-0 to postgres-1 after 20 seconds # features/steps/basic_replication.py:124 728s Apr 14 09:39:11 When I shut down postgres-0 # features/steps/basic_replication.py:41 730s Apr 14 09:39:13 And there is one of ["following a different leader because I am not allowed to promote"] INFO in the postgres-1 patroni log after 5 seconds # features/steps/basic_replication.py:133 732s Apr 14 09:39:15 Then postgres-1 role is the secondary after 10 seconds # features/steps/basic_replication.py:117 732s Apr 14 09:39:15 When I start postgres-0 # features/steps/basic_replication.py:20 735s Apr 14 09:39:18 Then postgres-0 role is the primary after 10 seconds # features/steps/basic_replication.py:117 736s Apr 14 09:39:19 736s Apr 14 09:39:19 Scenario: check higher failover priority is respected # features/priority_failover.feature:14 736s Apr 14 09:39:19 Given I configure and start postgres-2 with a tag failover_priority 1 # features/steps/cascading_replication.py:7 741s Apr 14 09:39:24 And I configure and start postgres-3 with a tag failover_priority 2 # features/steps/cascading_replication.py:7 746s Apr 14 09:39:29 Then replication works from postgres-0 to postgres-2 after 20 seconds # features/steps/basic_replication.py:124 747s Apr 14 09:39:30 And replication works from postgres-0 to postgres-3 after 20 seconds # features/steps/basic_replication.py:124 748s Apr 14 09:39:32 When I shut down postgres-0 # features/steps/basic_replication.py:41 750s Apr 14 09:39:34 Then postgres-3 role is the primary after 10 seconds # features/steps/basic_replication.py:117 751s Apr 14 09:39:35 And there is one of ["postgres-3 has equally tolerable WAL position and priority 2, while this node has priority 1","Wal position of postgres-3 is ahead of my wal position"] INFO in the postgres-2 patroni log after 5 seconds # features/steps/basic_replication.py:133 751s Apr 14 09:39:35 751s Apr 14 09:39:35 Scenario: check conflicting configuration handling # features/priority_failover.feature:23 751s Apr 14 09:39:35 When I set nofailover tag in postgres-2 config # features/steps/patroni_api.py:133 751s Apr 14 09:39:35 And I issue an empty POST request to http://127.0.0.1:8010/reload # features/steps/patroni_api.py:68 751s Apr 14 09:39:35 Then I receive a response code 202 # features/steps/patroni_api.py:100 751s Apr 14 09:39:35 And there is one of ["Conflicting configuration between nofailover: True and failover_priority: 1. Defaulting to nofailover: True"] WARNING in the postgres-2 patroni log after 5 seconds # features/steps/basic_replication.py:133 752s Apr 14 09:39:36 And "members/postgres-2" key in DCS has tags={'failover_priority': '1', 'nofailover': True} after 10 seconds # features/steps/cascading_replication.py:23 753s Apr 14 09:39:37 When I issue a POST request to http://127.0.0.1:8010/failover with {"candidate": "postgres-2"} # features/steps/patroni_api.py:73 753s Apr 14 09:39:37 Then I receive a response code 412 # features/steps/patroni_api.py:100 753s Apr 14 09:39:37 And I receive a response text "failover is not possible: no good candidates have been found" # features/steps/patroni_api.py:100 753s Apr 14 09:39:37 When I reset nofailover tag in postgres-1 config # features/steps/patroni_api.py:133 754s Apr 14 09:39:37 And I issue an empty POST request to http://127.0.0.1:8009/reload # features/steps/patroni_api.py:68 754s Apr 14 09:39:37 Then I receive a response code 202 # features/steps/patroni_api.py:100 754s Apr 14 09:39:37 And there is one of ["Conflicting configuration between nofailover: False and failover_priority: 0. Defaulting to nofailover: False"] WARNING in the postgres-1 patroni log after 5 seconds # features/steps/basic_replication.py:133 757s Apr 14 09:39:40 And "members/postgres-1" key in DCS has tags={'failover_priority': '0', 'nofailover': False} after 10 seconds # features/steps/cascading_replication.py:23 758s Apr 14 09:39:41 And I issue a POST request to http://127.0.0.1:8009/failover with {"candidate": "postgres-1"} # features/steps/patroni_api.py:73 762s Apr 14 09:39:45 Then I receive a response code 200 # features/steps/patroni_api.py:100 762s Apr 14 09:39:45 And postgres-1 role is the primary after 10 seconds # features/steps/basic_replication.py:117 766s Apr 14 09:39:49 766s Apr 14 09:39:49 Feature: quorum commit # features/quorum_commit.feature:1 766s Apr 14 09:39:49 Check basic workfrlows when quorum commit is enabled 766s Apr 14 09:39:49 Scenario: check enable quorum commit and that the only leader promotes after restart # features/quorum_commit.feature:4 766s Apr 14 09:39:49 Given I start postgres-0 # features/steps/basic_replication.py:20 771s Apr 14 09:39:54 Then postgres-0 is a leader after 10 seconds # features/steps/patroni_api.py:31 772s Apr 14 09:39:55 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 772s Apr 14 09:39:55 When I issue a PATCH request to http://127.0.0.1:8008/config with {"ttl": 20, "synchronous_mode": "quorum"} # features/steps/patroni_api.py:73 772s Apr 14 09:39:55 Then I receive a response code 200 # features/steps/patroni_api.py:100 772s Apr 14 09:39:55 And sync key in DCS has leader=postgres-0 after 20 seconds # features/steps/quorum_commit.py:8 773s Apr 14 09:39:56 And sync key in DCS has quorum=0 after 2 seconds # features/steps/quorum_commit.py:8 773s Apr 14 09:39:56 And synchronous_standby_names on postgres-0 is set to '_empty_str_' after 2 seconds # features/steps/quorum_commit.py:39 773s Apr 14 09:39:56 When I shut down postgres-0 # features/steps/basic_replication.py:41 775s Apr 14 09:39:58 And sync key in DCS has leader=postgres-0 after 2 seconds # features/steps/quorum_commit.py:8 775s Apr 14 09:39:58 When I start postgres-0 # features/steps/basic_replication.py:20 778s Apr 14 09:40:01 Then postgres-0 role is the primary after 10 seconds # features/steps/basic_replication.py:117 779s Apr 14 09:40:02 When I issue a PATCH request to http://127.0.0.1:8008/config with {"synchronous_mode_strict": true} # features/steps/patroni_api.py:73 779s Apr 14 09:40:02 Then synchronous_standby_names on postgres-0 is set to 'ANY 1 (*)' after 10 seconds # features/steps/quorum_commit.py:39 780s Apr 14 09:40:03 780s Apr 14 09:40:03 Scenario: check failover with one quorum standby # features/quorum_commit.feature:20 780s Apr 14 09:40:03 Given I start postgres-1 # features/steps/basic_replication.py:20 785s Apr 14 09:40:08 Then sync key in DCS has sync_standby=postgres-1 after 10 seconds # features/steps/quorum_commit.py:8 787s Apr 14 09:40:11 And synchronous_standby_names on postgres-0 is set to 'ANY 1 ("postgres-1")' after 2 seconds # features/steps/quorum_commit.py:39 787s Apr 14 09:40:11 When I shut down postgres-0 # features/steps/basic_replication.py:41 789s Apr 14 09:40:13 Then postgres-1 role is the primary after 10 seconds # features/steps/basic_replication.py:117 790s Apr 14 09:40:14 And sync key in DCS has quorum=0 after 10 seconds # features/steps/quorum_commit.py:8 790s Apr 14 09:40:14 Then synchronous_standby_names on postgres-1 is set to 'ANY 1 (*)' after 10 seconds # features/steps/quorum_commit.py:39 793s Apr 14 09:40:17 When I start postgres-0 # features/steps/basic_replication.py:20 796s Apr 14 09:40:20 Then sync key in DCS has leader=postgres-1 after 10 seconds # features/steps/quorum_commit.py:8 796s Apr 14 09:40:20 Then sync key in DCS has sync_standby=postgres-0 after 10 seconds # features/steps/quorum_commit.py:8 798s Apr 14 09:40:22 And synchronous_standby_names on postgres-1 is set to 'ANY 1 ("postgres-0")' after 2 seconds # features/steps/quorum_commit.py:39 798s Apr 14 09:40:22 798s Apr 14 09:40:22 Scenario: check behavior with three nodes and different replication factor # features/quorum_commit.feature:33 798s Apr 14 09:40:22 Given I start postgres-2 # features/steps/basic_replication.py:20 803s Apr 14 09:40:27 Then sync key in DCS has sync_standby=postgres-0,postgres-2 after 10 seconds # features/steps/quorum_commit.py:8 805s Apr 14 09:40:29 And sync key in DCS has quorum=1 after 2 seconds # features/steps/quorum_commit.py:8 805s Apr 14 09:40:29 And synchronous_standby_names on postgres-1 is set to 'ANY 1 ("postgres-0","postgres-2")' after 2 seconds # features/steps/quorum_commit.py:39 805s Apr 14 09:40:29 When I issue a PATCH request to http://127.0.0.1:8009/config with {"synchronous_node_count": 2} # features/steps/patroni_api.py:73 806s Apr 14 09:40:29 Then sync key in DCS has quorum=0 after 10 seconds # features/steps/quorum_commit.py:8 807s Apr 14 09:40:30 And synchronous_standby_names on postgres-1 is set to 'ANY 2 ("postgres-0","postgres-2")' after 2 seconds # features/steps/quorum_commit.py:39 807s Apr 14 09:40:30 807s Apr 14 09:40:30 Scenario: switch from quorum replication to good old multisync and back # features/quorum_commit.feature:42 807s Apr 14 09:40:30 Given I issue a PATCH request to http://127.0.0.1:8009/config with {"synchronous_mode": true, "synchronous_node_count": 1} # features/steps/patroni_api.py:73 807s Apr 14 09:40:30 And I shut down postgres-0 # features/steps/basic_replication.py:41 808s Apr 14 09:40:31 Then synchronous_standby_names on postgres-1 is set to '"postgres-2"' after 10 seconds # features/steps/quorum_commit.py:39 810s Apr 14 09:40:33 And sync key in DCS has sync_standby=postgres-2 after 10 seconds # features/steps/quorum_commit.py:8 812s Apr 14 09:40:35 Then sync key in DCS has quorum=0 after 2 seconds # features/steps/quorum_commit.py:8 812s Apr 14 09:40:35 When I issue a PATCH request to http://127.0.0.1:8009/config with {"synchronous_mode": "quorum"} # features/steps/patroni_api.py:73 812s Apr 14 09:40:35 And I start postgres-0 # features/steps/basic_replication.py:20 815s Apr 14 09:40:38 Then synchronous_standby_names on postgres-1 is set to 'ANY 1 ("postgres-0","postgres-2")' after 10 seconds # features/steps/quorum_commit.py:39 816s Apr 14 09:40:39 And sync key in DCS has sync_standby=postgres-0,postgres-2 after 10 seconds # features/steps/quorum_commit.py:8 816s Apr 14 09:40:39 Then sync key in DCS has quorum=1 after 2 seconds # features/steps/quorum_commit.py:8 816s Apr 14 09:40:39 816s Apr 14 09:40:39 Scenario: REST API and patronictl # features/quorum_commit.feature:54 816s Apr 14 09:40:39 Given I run patronictl.py list batman # features/steps/patroni_api.py:88 817s Apr 14 09:40:40 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 817s Apr 14 09:40:40 And I receive a response output "Quorum Standby" # features/steps/patroni_api.py:100 817s Apr 14 09:40:40 And Status code on GET http://127.0.0.1:8008/quorum is 200 after 3 seconds # features/steps/patroni_api.py:144 817s Apr 14 09:40:40 And Status code on GET http://127.0.0.1:8010/quorum is 200 after 3 seconds # features/steps/patroni_api.py:144 817s Apr 14 09:40:40 817s Apr 14 09:40:40 Scenario: nosync node is removed from voters and synchronous_standby_names # features/quorum_commit.feature:61 817s Apr 14 09:40:40 Given I add tag nosync true to postgres-2 config # features/steps/patroni_api.py:139 817s Apr 14 09:40:41 When I issue an empty POST request to http://127.0.0.1:8010/reload # features/steps/patroni_api.py:68 817s Apr 14 09:40:41 Then I receive a response code 202 # features/steps/patroni_api.py:100 817s Apr 14 09:40:41 And sync key in DCS has quorum=0 after 10 seconds # features/steps/quorum_commit.py:8 819s Apr 14 09:40:43 And sync key in DCS has sync_standby=postgres-0 after 10 seconds # features/steps/quorum_commit.py:8 819s Apr 14 09:40:43 And synchronous_standby_names on postgres-1 is set to 'ANY 1 ("postgres-0")' after 2 seconds # features/steps/quorum_commit.py:39 819s Apr 14 09:40:43 And Status code on GET http://127.0.0.1:8010/quorum is 503 after 10 seconds # features/steps/patroni_api.py:144 827s Apr 14 09:40:50 827s Apr 14 09:40:50 Feature: recovery # features/recovery.feature:1 827s Apr 14 09:40:50 We want to check that crashed postgres is started back 827s Apr 14 09:40:50 Scenario: check that timeline is not incremented when primary is started after crash # features/recovery.feature:4 827s Apr 14 09:40:50 Given I start postgres-0 # features/steps/basic_replication.py:20 832s Apr 14 09:40:55 Then postgres-0 is a leader after 10 seconds # features/steps/patroni_api.py:31 833s Apr 14 09:40:56 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 833s Apr 14 09:40:56 When I start postgres-1 # features/steps/basic_replication.py:20 838s Apr 14 09:41:01 And I add the table foo to postgres-0 # features/steps/basic_replication.py:66 838s Apr 14 09:41:01 Then table foo is present on postgres-1 after 20 seconds # features/steps/basic_replication.py:105 839s Apr 14 09:41:02 When I kill postmaster on postgres-0 # features/steps/basic_replication.py:56 839s Apr 14 09:41:02 waiting for server to shut down.... done 839s Apr 14 09:41:02 server stopped 839s Apr 14 09:41:02 Then postgres-0 role is the primary after 10 seconds # features/steps/basic_replication.py:117 842s Apr 14 09:41:05 When I issue a GET request to http://127.0.0.1:8008/ # features/steps/patroni_api.py:63 842s Apr 14 09:41:05 Then I receive a response code 200 # features/steps/patroni_api.py:100 842s Apr 14 09:41:05 And I receive a response role primary # features/steps/patroni_api.py:100 842s Apr 14 09:41:05 And I receive a response timeline 1 # features/steps/patroni_api.py:100 842s Apr 14 09:41:05 And "members/postgres-0" key in DCS has state=running after 12 seconds # features/steps/cascading_replication.py:23 842s Apr 14 09:41:05 And replication works from postgres-0 to postgres-1 after 15 seconds # features/steps/basic_replication.py:124 845s Apr 14 09:41:08 845s Apr 14 09:41:08 Scenario: check immediate failover when master_start_timeout=0 # features/recovery.feature:20 845s Apr 14 09:41:08 Given I issue a PATCH request to http://127.0.0.1:8008/config with {"master_start_timeout": 0} # features/steps/patroni_api.py:73 845s Apr 14 09:41:09 Then I receive a response code 200 # features/steps/patroni_api.py:100 845s Apr 14 09:41:09 And Response on GET http://127.0.0.1:8008/config contains master_start_timeout after 10 seconds # features/steps/patroni_api.py:158 845s Apr 14 09:41:09 When I kill postmaster on postgres-0 # features/steps/basic_replication.py:56 845s Apr 14 09:41:09 waiting for server to shut down.... done 845s Apr 14 09:41:09 server stopped 845s Apr 14 09:41:09 Then postgres-1 is a leader after 10 seconds # features/steps/patroni_api.py:31 849s Apr 14 09:41:13 And postgres-1 role is the primary after 10 seconds # features/steps/basic_replication.py:117 850s Apr 14 09:41:14 850s Apr 14 09:41:14 Scenario: check crashed primary demotes after failed attempt to start # features/recovery.feature:28 850s Apr 14 09:41:14 Given I issue a PATCH request to http://127.0.0.1:8009/config with {"master_start_timeout": null} # features/steps/patroni_api.py:73 851s Apr 14 09:41:14 Then I receive a response code 200 # features/steps/patroni_api.py:100 851s Apr 14 09:41:14 And postgres-0 role is the replica after 10 seconds # features/steps/basic_replication.py:117 853s Apr 14 09:41:16 When I ensure postgres-1 fails to start after a failure # features/steps/recovery.py:6 853s Apr 14 09:41:16 When I kill postmaster on postgres-1 # features/steps/basic_replication.py:56 853s Apr 14 09:41:16 waiting for server to shut down.... done 853s Apr 14 09:41:16 server stopped 853s Apr 14 09:41:16 Then postgres-0 is a leader after 10 seconds # features/steps/patroni_api.py:31 856s Apr 14 09:41:19 And there is a postgres-1_cb.log with "on_role_change demoted batman" in postgres-1 data directory # features/steps/cascading_replication.py:12 859s Apr 14 09:41:22 859s Apr 14 09:41:22 Feature: standby cluster # features/standby_cluster.feature:1 859s Apr 14 09:41:22 859s Apr 14 09:41:22 Scenario: prepare the cluster with logical slots # features/standby_cluster.feature:2 859s Apr 14 09:41:22 Given I start postgres-1 # features/steps/basic_replication.py:20 864s Apr 14 09:41:27 Then postgres-1 is a leader after 10 seconds # features/steps/patroni_api.py:31 865s Apr 14 09:41:28 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 865s Apr 14 09:41:28 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:73 865s Apr 14 09:41:28 Then I receive a response code 200 # features/steps/patroni_api.py:100 865s Apr 14 09:41:28 And Response on GET http://127.0.0.1:8009/config contains slots after 10 seconds # features/steps/patroni_api.py:158 865s Apr 14 09:41:28 And I sleep for 3 seconds # features/steps/patroni_api.py:41 868s Apr 14 09:41:31 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:73 868s Apr 14 09:41:31 Then I receive a response code 200 # features/steps/patroni_api.py:100 868s Apr 14 09:41:31 And I do a backup of postgres-1 # features/steps/custom_bootstrap.py:25 869s Apr 14 09:41:32 When I start postgres-0 # features/steps/basic_replication.py:20 873s Apr 14 09:41:36 Then "members/postgres-0" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 874s Apr 14 09:41:37 And replication works from postgres-1 to postgres-0 after 15 seconds # features/steps/basic_replication.py:124 875s Apr 14 09:41:38 When I issue a GET request to http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:63 875s Apr 14 09:41:39 Then I receive a response code 200 # features/steps/patroni_api.py:100 875s Apr 14 09:41:39 And I receive a response replication_state streaming # features/steps/patroni_api.py:100 875s Apr 14 09:41:39 And "members/postgres-0" key in DCS has replication_state=streaming after 10 seconds # features/steps/cascading_replication.py:23 875s Apr 14 09:41:39 875s Apr 14 09:41:39 @slot-advance 875s Apr 14 09:41:39 Scenario: check permanent logical slots are synced to the replica # features/standby_cluster.feature:22 875s Apr 14 09:41:39 Given I run patronictl.py restart batman postgres-1 --force # features/steps/patroni_api.py:88 878s Apr 14 09:41:42 Then Logical slot test_logical is in sync between postgres-0 and postgres-1 after 10 seconds # features/steps/slots.py:52 884s Apr 14 09:41:48 884s Apr 14 09:41:48 Scenario: Detach exiting node from the cluster # features/standby_cluster.feature:26 884s Apr 14 09:41:48 When I shut down postgres-1 # features/steps/basic_replication.py:41 886s Apr 14 09:41:50 Then postgres-0 is a leader after 10 seconds # features/steps/patroni_api.py:31 886s Apr 14 09:41:50 And "members/postgres-0" key in DCS has role=primary after 5 seconds # features/steps/cascading_replication.py:23 888s Apr 14 09:41:52 When I issue a GET request to http://127.0.0.1:8008/ # features/steps/patroni_api.py:63 888s Apr 14 09:41:52 Then I receive a response code 200 # features/steps/patroni_api.py:100 888s Apr 14 09:41:52 888s Apr 14 09:41:52 Scenario: check replication of a single table in a standby cluster # features/standby_cluster.feature:33 888s Apr 14 09:41:52 Given I start postgres-1 in a standby cluster batman1 as a clone of postgres-0 # features/steps/standby_cluster.py:23 891s Apr 14 09:41:55 Then postgres-1 is a leader of batman1 after 10 seconds # features/steps/custom_bootstrap.py:16 892s Apr 14 09:41:56 When I add the table foo to postgres-0 # features/steps/basic_replication.py:66 893s Apr 14 09:41:56 Then table foo is present on postgres-1 after 20 seconds # features/steps/basic_replication.py:105 893s Apr 14 09:41:56 When I issue a GET request to http://127.0.0.1:8009/patroni # features/steps/patroni_api.py:63 893s Apr 14 09:41:56 Then I receive a response code 200 # features/steps/patroni_api.py:100 893s Apr 14 09:41:56 And I receive a response replication_state streaming # features/steps/patroni_api.py:100 893s Apr 14 09:41:56 And I sleep for 3 seconds # features/steps/patroni_api.py:41 896s Apr 14 09:41:59 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:63 896s Apr 14 09:41:59 Then I receive a response code 503 # features/steps/patroni_api.py:100 896s Apr 14 09:41:59 When I issue a GET request to http://127.0.0.1:8009/standby_leader # features/steps/patroni_api.py:63 896s Apr 14 09:41:59 Then I receive a response code 200 # features/steps/patroni_api.py:100 896s Apr 14 09:41:59 And I receive a response role standby_leader # features/steps/patroni_api.py:100 896s Apr 14 09:41:59 And there is a postgres-1_cb.log with "on_role_change standby_leader batman1" in postgres-1 data directory # features/steps/cascading_replication.py:12 896s Apr 14 09:41:59 When I start postgres-2 in a cluster batman1 # features/steps/standby_cluster.py:12 900s Apr 14 09:42:03 Then postgres-2 role is the replica after 24 seconds # features/steps/basic_replication.py:117 900s Apr 14 09:42:03 And postgres-2 is replicating from postgres-1 after 10 seconds # features/steps/standby_cluster.py:52 901s Apr 14 09:42:04 And table foo is present on postgres-2 after 20 seconds # features/steps/basic_replication.py:105 901s Apr 14 09:42:04 When I issue a GET request to http://127.0.0.1:8010/patroni # features/steps/patroni_api.py:63 901s Apr 14 09:42:04 Then I receive a response code 200 # features/steps/patroni_api.py:100 901s Apr 14 09:42:04 And I receive a response replication_state streaming # features/steps/patroni_api.py:100 901s Apr 14 09:42:04 And postgres-1 does not have a replication slot named test_logical # features/steps/slots.py:41 901s Apr 14 09:42:04 901s Apr 14 09:42:04 Scenario: check switchover # features/standby_cluster.feature:57 901s Apr 14 09:42:04 Given I run patronictl.py switchover batman1 --force # features/steps/patroni_api.py:88 904s Apr 14 09:42:07 Then Status code on GET http://127.0.0.1:8010/standby_leader is 200 after 10 seconds # features/steps/patroni_api.py:144 904s Apr 14 09:42:07 And postgres-1 is replicating from postgres-2 after 32 seconds # features/steps/standby_cluster.py:52 907s Apr 14 09:42:10 And there is a postgres-2_cb.log with "on_start replica batman1\non_role_change standby_leader batman1" in postgres-2 data directory # features/steps/cascading_replication.py:12 907s Apr 14 09:42:10 907s Apr 14 09:42:10 Scenario: check failover # features/standby_cluster.feature:63 907s Apr 14 09:42:10 When I kill postgres-2 # features/steps/basic_replication.py:46 908s Apr 14 09:42:11 And I kill postmaster on postgres-2 # features/steps/basic_replication.py:56 908s Apr 14 09:42:12 waiting for server to shut down.... done 908s Apr 14 09:42:12 server stopped 908s Apr 14 09:42:12 Then postgres-1 is replicating from postgres-0 after 32 seconds # features/steps/standby_cluster.py:52 927s Apr 14 09:42:31 And Status code on GET http://127.0.0.1:8009/standby_leader is 200 after 10 seconds # features/steps/patroni_api.py:144 927s Apr 14 09:42:31 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:63 927s Apr 14 09:42:31 Then I receive a response code 503 # features/steps/patroni_api.py:100 927s Apr 14 09:42:31 And I receive a response role standby_leader # features/steps/patroni_api.py:100 927s Apr 14 09:42:31 And replication works from postgres-0 to postgres-1 after 15 seconds # features/steps/basic_replication.py:124 929s Apr 14 09:42:32 And there is a postgres-1_cb.log with "on_role_change replica batman1\non_role_change standby_leader batman1" in postgres-1 data directory # features/steps/cascading_replication.py:12 933s Apr 14 09:42:36 933s Apr 14 09:42:36 Feature: watchdog # features/watchdog.feature:1 933s Apr 14 09:42:36 Verify that watchdog gets pinged and triggered under appropriate circumstances. 933s Apr 14 09:42:36 Scenario: watchdog is opened and pinged # features/watchdog.feature:4 933s Apr 14 09:42:36 Given I start postgres-0 with watchdog # features/steps/watchdog.py:17 938s Apr 14 09:42:41 Then postgres-0 is a leader after 10 seconds # features/steps/patroni_api.py:31 939s Apr 14 09:42:42 And postgres-0 role is the primary after 10 seconds # features/steps/basic_replication.py:117 939s Apr 14 09:42:42 And postgres-0 watchdog has been pinged after 10 seconds # features/steps/watchdog.py:22 939s Apr 14 09:42:42 And postgres-0 watchdog has a 15 second timeout # features/steps/watchdog.py:35 939s Apr 14 09:42:42 939s Apr 14 09:42:42 Scenario: watchdog is reconfigured after global ttl changed # features/watchdog.feature:11 939s Apr 14 09:42:42 Given I run patronictl.py edit-config batman -s ttl=30 --force # features/steps/patroni_api.py:88 940s Apr 14 09:42:43 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 940s Apr 14 09:42:43 And I receive a response output "+ttl: 30" # features/steps/patroni_api.py:100 940s Apr 14 09:42:43 When I sleep for 4 seconds # features/steps/patroni_api.py:41 944s Apr 14 09:42:47 Then postgres-0 watchdog has a 25 second timeout # features/steps/watchdog.py:35 944s Apr 14 09:42:47 944s Apr 14 09:42:47 Scenario: watchdog is disabled during pause # features/watchdog.feature:18 944s Apr 14 09:42:47 Given I run patronictl.py pause batman # features/steps/patroni_api.py:88 945s Apr 14 09:42:48 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 945s Apr 14 09:42:48 When I sleep for 2 seconds # features/steps/patroni_api.py:41 947s Apr 14 09:42:50 Then postgres-0 watchdog has been closed # features/steps/watchdog.py:30 947s Apr 14 09:42:50 947s Apr 14 09:42:50 Scenario: watchdog is opened and pinged after resume # features/watchdog.feature:24 947s Apr 14 09:42:50 Given I reset postgres-0 watchdog state # features/steps/watchdog.py:40 947s Apr 14 09:42:50 And I run patronictl.py resume batman # features/steps/patroni_api.py:88 948s Apr 14 09:42:51 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 948s Apr 14 09:42:51 And postgres-0 watchdog has been pinged after 10 seconds # features/steps/watchdog.py:22 949s Apr 14 09:42:52 949s Apr 14 09:42:52 Scenario: watchdog is disabled when shutting down # features/watchdog.feature:30 949s Apr 14 09:42:52 Given I shut down postgres-0 # features/steps/basic_replication.py:41 951s Apr 14 09:42:54 Then postgres-0 watchdog has been closed # features/steps/watchdog.py:30 951s Apr 14 09:42:54 951s Apr 14 09:42:54 Scenario: watchdog is triggered if patroni stops responding # features/watchdog.feature:34 951s Apr 14 09:42:54 Given I reset postgres-0 watchdog state # features/steps/watchdog.py:40 951s Apr 14 09:42:54 And I start postgres-0 with watchdog # features/steps/watchdog.py:17 954s Apr 14 09:42:57 Then postgres-0 role is the primary after 10 seconds # features/steps/basic_replication.py:117 955s Apr 14 09:42:58 When postgres-0 hangs for 30 seconds # features/steps/watchdog.py:53 955s Apr 14 09:42:58 Then postgres-0 watchdog is triggered after 30 seconds # features/steps/watchdog.py:45 982s Apr 14 09:43:25 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.5200.XkQdmHEx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.5246.XZJfIhQx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.5289.XHAYrXOx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.5346.XhOKuKzx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.5392.XTrmrIBx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.5465.XNBjoyUx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.5516.XkPmnwSx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.5519.XZmrmvzx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.5598.XiBFSqqx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.5699.XWZFeJbx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.5713.XacuJYJx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.5759.XLMNUWFx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.5808.XWJrdUQx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.5916.XXdWhxqx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.5963.XRmMfqRx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.6024.XliCLlQx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.6115.XCCFdvwx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.6168.XUMBYsbx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.6266.Xssrpmhx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.6322.XMWXKcDx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.6385.XvRcDkwx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.6477.XNAuPzjx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.6575.XiYxXtdx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.6611.XgtkUjbx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.6684.XKUSBGyx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.6722.XTGoeCHx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.6850.XJCwKdsx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.6902.XfxtWnEx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.6918.XldymWsx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.6959.XnTUBTtx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.7010.XzFhvdzx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.7015.XRnFkNQx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.7051.XkWGTDAx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.7096.XsXDirRx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.7262.XdgTTCNx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.7264.XwIEUGDx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.7269.XCRliPtx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.7403.XlPeuEcx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.7450.XetpPtsx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.7499.XWYasehx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.7544.XGFCFgPx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.7589.XoIJifix 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.7732.XNTcWwVx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.7798.XymTMxDx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.7833.XHtdAqgx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.7915.XQViOKex 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.7997.XogziNrx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.8056.XEGwOhyx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.8382.XJDcfvBx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.8435.XMcYsDOx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.8504.XKwTJjhx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.8596.XUYfZahx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.8645.XOThYjAx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.8710.XfjCpJmx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.8754.XABpEvpx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.8792.XdUKvBOx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.8837.XPtgONVx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.9086.XBVjXykx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.9150.XrlLrzfx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.9205.XhOLbUFx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.9314.XrLjpGvx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.9431.XihhwXfx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.9564.XDmVDObx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.9610.XuRuPoVx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.9612.XxCrSAIx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.9615.XoVnWYYx 983s Apr 14 09:43:26 Combined data file .coverage.autopkgtest.9626.XvKecSwx 987s Apr 14 09:43:30 Name Stmts Miss Cover 987s Apr 14 09:43:30 ------------------------------------------------------------------------------------------------------------- 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/OpenSSL/SSL.py 1159 642 45% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/OpenSSL/__init__.py 3 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/OpenSSL/_util.py 44 15 66% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/OpenSSL/crypto.py 869 663 24% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/OpenSSL/version.py 9 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/_distutils_hack/__init__.py 101 96 5% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/bcrypt/__init__.py 3 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/__about__.py 5 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/__init__.py 3 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/exceptions.py 26 5 81% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/hazmat/__init__.py 2 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/hazmat/_oid.py 135 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/__init__.py 0 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/__init__.py 0 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/_conditional.py 38 17 55% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/binding.py 51 4 92% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/hazmat/decrepit/__init__.py 1 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/hazmat/decrepit/ciphers/__init__.py 1 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/hazmat/decrepit/ciphers/algorithms.py 68 18 74% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/__init__.py 0 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_asymmetric.py 6 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_cipheralgorithm.py 23 4 83% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_serialization.py 79 35 56% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/__init__.py 0 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/dh.py 47 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/dsa.py 55 5 91% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/ec.py 172 22 87% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/ed448.py 45 12 73% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/ed25519.py 43 12 72% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/padding.py 55 23 58% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/rsa.py 93 40 57% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/types.py 19 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/utils.py 14 5 64% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/x448.py 43 12 72% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/x25519.py 41 12 71% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/__init__.py 4 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/algorithms.py 72 15 79% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/base.py 54 12 78% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/modes.py 140 59 58% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/constant_time.py 6 3 50% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/hashes.py 127 20 84% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/serialization/__init__.py 5 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/serialization/base.py 7 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/serialization/ssh.py 775 614 21% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/utils.py 76 28 63% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/x509/__init__.py 70 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/x509/base.py 488 227 53% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/x509/certificate_transparency.py 42 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/x509/extensions.py 1024 552 46% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/x509/general_name.py 166 94 43% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/x509/name.py 236 144 39% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/x509/oid.py 3 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/cryptography/x509/verification.py 12 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dateutil/__init__.py 13 4 69% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dateutil/_common.py 25 15 40% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dateutil/_version.py 13 3 77% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dateutil/parser/__init__.py 33 4 88% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dateutil/parser/_parser.py 810 436 46% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dateutil/parser/isoparser.py 183 150 18% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dateutil/relativedelta.py 240 206 14% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dateutil/tz/__init__.py 4 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dateutil/tz/_common.py 151 114 25% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dateutil/tz/_factories.py 49 21 57% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dateutil/tz/tz.py 794 626 21% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dateutil/tz/win.py 152 149 2% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/__init__.py 2 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/_asyncbackend.py 14 6 57% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/_ddr.py 105 86 18% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/_features.py 46 8 83% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/_immutable_ctx.py 40 5 88% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/asyncbackend.py 44 32 27% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/asyncquery.py 322 283 12% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/edns.py 307 185 40% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/entropy.py 80 49 39% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/enum.py 72 46 36% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/exception.py 59 33 44% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/flags.py 40 14 65% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/grange.py 33 30 9% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/immutable.py 41 30 27% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/inet.py 79 65 18% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/ipv4.py 26 20 23% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/ipv6.py 114 100 12% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/message.py 829 676 18% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/name.py 617 425 31% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/nameserver.py 102 55 46% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/node.py 117 71 39% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/opcode.py 30 7 77% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/query.py 562 477 15% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/quic/__init__.py 28 23 18% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/rcode.py 68 13 81% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/rdata.py 386 277 28% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/rdataclass.py 43 9 79% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/rdataset.py 192 133 31% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/rdatatype.py 215 23 89% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/OPT.py 34 19 44% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/SOA.py 41 26 37% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/TSIG.py 58 42 28% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/ZONEMD.py 43 27 37% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/__init__.py 1 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/rdtypes/__init__.py 1 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/rdtypes/svcbbase.py 415 268 35% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/rdtypes/util.py 191 154 19% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/renderer.py 151 118 22% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/resolver.py 873 696 20% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/reversename.py 32 24 25% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/rrset.py 77 56 27% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/serial.py 92 79 14% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/set.py 148 107 28% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/tokenizer.py 334 279 16% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/transaction.py 269 201 25% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/tsig.py 176 122 31% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/ttl.py 44 38 14% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/version.py 6 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/wire.py 64 42 34% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/xfr.py 148 126 15% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/zone.py 507 383 24% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/zonefile.py 427 379 11% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/dns/zonetypes.py 14 2 86% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/etcd/__init__.py 125 63 50% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/etcd/client.py 380 256 33% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/etcd/lock.py 125 103 18% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/idna/__init__.py 4 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/idna/core.py 292 257 12% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/idna/idnadata.py 4 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/idna/intranges.py 30 24 20% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/idna/package_data.py 1 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/__init__.py 13 2 85% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/__main__.py 201 63 69% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/api.py 788 295 63% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/async_executor.py 96 15 84% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/collections.py 56 5 91% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/config.py 357 84 76% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/config_generator.py 212 159 25% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/daemon.py 76 3 96% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/dcs/__init__.py 710 95 87% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/dcs/etcd3.py 679 125 82% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/dcs/etcd.py 603 253 58% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/dynamic_loader.py 35 7 80% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/exceptions.py 16 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/file_perm.py 47 10 79% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/global_config.py 87 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/ha.py 1359 376 72% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/log.py 235 79 66% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/postgresql/__init__.py 825 162 80% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/postgresql/available_parameters/__init__.py 24 3 88% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/postgresql/bootstrap.py 254 60 76% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/postgresql/callback_executor.py 55 8 85% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/postgresql/cancellable.py 104 41 61% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/postgresql/config.py 840 214 75% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/postgresql/connection.py 75 1 99% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/postgresql/misc.py 43 8 81% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/postgresql/mpp/__init__.py 89 11 88% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/postgresql/postmaster.py 170 83 51% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/postgresql/rewind.py 416 130 69% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/postgresql/slots.py 349 37 89% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/postgresql/sync.py 154 10 94% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/postgresql/validator.py 157 24 85% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/psycopg.py 46 19 59% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/quorum.py 182 48 74% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/request.py 58 7 88% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/tags.py 38 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/utils.py 371 103 72% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/validator.py 309 215 30% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/version.py 1 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/watchdog/__init__.py 2 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/watchdog/base.py 203 42 79% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/patroni/watchdog/linux.py 135 35 74% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/psutil/__init__.py 950 629 34% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/psutil/_common.py 422 212 50% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/psutil/_compat.py 301 263 13% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/psutil/_pslinux.py 1250 924 26% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/psutil/_psposix.py 95 38 60% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/psycopg2/__init__.py 19 3 84% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/psycopg2/_json.py 64 27 58% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/psycopg2/_range.py 269 172 36% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/psycopg2/errors.py 3 2 33% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/psycopg2/extensions.py 91 25 73% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/urllib3/__init__.py 49 15 69% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/urllib3/_base_connection.py 63 45 29% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/urllib3/_collections.py 231 120 48% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/urllib3/_request_methods.py 54 24 56% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/urllib3/_version.py 13 3 77% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/urllib3/connection.py 389 137 65% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/urllib3/connectionpool.py 344 122 65% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/urllib3/contrib/__init__.py 0 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/urllib3/contrib/pyopenssl.py 263 101 62% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/urllib3/exceptions.py 121 39 68% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/urllib3/fields.py 92 73 21% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/urllib3/filepost.py 37 24 35% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/urllib3/http2/__init__.py 28 21 25% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/urllib3/http2/probe.py 49 31 37% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/urllib3/poolmanager.py 233 85 64% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/urllib3/response.py 634 330 48% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/urllib3/util/__init__.py 10 0 100% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/urllib3/util/connection.py 66 42 36% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/urllib3/util/proxy.py 13 6 54% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/urllib3/util/request.py 104 49 53% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/urllib3/util/response.py 32 15 53% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/urllib3/util/retry.py 174 50 71% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/urllib3/util/ssl_.py 172 74 57% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/urllib3/util/ssl_match_hostname.py 66 54 18% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/urllib3/util/ssltransport.py 152 106 30% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/urllib3/util/timeout.py 71 14 80% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/urllib3/util/url.py 203 70 66% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/urllib3/util/util.py 26 10 62% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/urllib3/util/wait.py 49 18 63% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/yaml/__init__.py 165 109 34% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/yaml/composer.py 92 17 82% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/yaml/constructor.py 479 276 42% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/yaml/cyaml.py 46 24 48% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/yaml/dumper.py 23 12 48% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/yaml/emitter.py 838 769 8% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/yaml/error.py 58 42 28% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/yaml/events.py 61 6 90% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/yaml/loader.py 47 24 49% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/yaml/nodes.py 29 7 76% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/yaml/parser.py 352 198 44% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/yaml/reader.py 122 34 72% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/yaml/representer.py 248 176 29% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/yaml/resolver.py 135 76 44% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/yaml/scanner.py 758 437 42% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/yaml/serializer.py 85 70 18% 987s Apr 14 09:43:30 /usr/lib/python3/dist-packages/yaml/tokens.py 76 17 78% 987s Apr 14 09:43:30 patroni/__init__.py 13 2 85% 987s Apr 14 09:43:30 patroni/__main__.py 201 201 0% 987s Apr 14 09:43:30 patroni/api.py 788 788 0% 987s Apr 14 09:43:30 patroni/async_executor.py 96 69 28% 987s Apr 14 09:43:30 patroni/collections.py 56 15 73% 987s Apr 14 09:43:30 patroni/config.py 357 186 48% 987s Apr 14 09:43:30 patroni/config_generator.py 212 212 0% 987s Apr 14 09:43:30 patroni/ctl.py 936 395 58% 987s Apr 14 09:43:30 patroni/daemon.py 76 76 0% 987s Apr 14 09:43:30 patroni/dcs/__init__.py 710 317 55% 987s Apr 14 09:43:30 patroni/dcs/consul.py 482 482 0% 987s Apr 14 09:43:30 patroni/dcs/etcd3.py 679 346 49% 987s Apr 14 09:43:30 patroni/dcs/etcd.py 603 277 54% 987s Apr 14 09:43:30 patroni/dcs/exhibitor.py 62 62 0% 987s Apr 14 09:43:30 patroni/dcs/kubernetes.py 943 943 0% 987s Apr 14 09:43:30 patroni/dcs/raft.py 319 319 0% 987s Apr 14 09:43:30 patroni/dcs/zookeeper.py 289 289 0% 987s Apr 14 09:43:30 patroni/dynamic_loader.py 35 7 80% 987s Apr 14 09:43:30 patroni/exceptions.py 16 1 94% 987s Apr 14 09:43:30 patroni/file_perm.py 47 17 64% 987s Apr 14 09:43:30 patroni/global_config.py 87 19 78% 987s Apr 14 09:43:30 patroni/ha.py 1359 1359 0% 987s Apr 14 09:43:30 patroni/log.py 235 183 22% 987s Apr 14 09:43:30 patroni/postgresql/__init__.py 825 653 21% 987s Apr 14 09:43:30 patroni/postgresql/available_parameters/__init__.py 24 3 88% 987s Apr 14 09:43:30 patroni/postgresql/bootstrap.py 254 224 12% 987s Apr 14 09:43:30 patroni/postgresql/callback_executor.py 55 34 38% 987s Apr 14 09:43:30 patroni/postgresql/cancellable.py 104 84 19% 987s Apr 14 09:43:30 patroni/postgresql/config.py 840 720 14% 987s Apr 14 09:43:30 patroni/postgresql/connection.py 75 50 33% 987s Apr 14 09:43:30 patroni/postgresql/misc.py 43 30 30% 987s Apr 14 09:43:30 patroni/postgresql/mpp/__init__.py 89 21 76% 987s Apr 14 09:43:30 patroni/postgresql/mpp/citus.py 366 366 0% 987s Apr 14 09:43:30 patroni/postgresql/postmaster.py 170 139 18% 987s Apr 14 09:43:30 patroni/postgresql/rewind.py 416 416 0% 987s Apr 14 09:43:30 patroni/postgresql/slots.py 349 300 14% 987s Apr 14 09:43:30 patroni/postgresql/sync.py 154 114 26% 987s Apr 14 09:43:30 patroni/postgresql/validator.py 157 52 67% 987s Apr 14 09:43:30 patroni/psycopg.py 46 32 30% 987s Apr 14 09:43:30 patroni/quorum.py 182 182 0% 987s Apr 14 09:43:30 patroni/raft_controller.py 22 22 0% 987s Apr 14 09:43:30 patroni/request.py 58 6 90% 987s Apr 14 09:43:30 patroni/scripts/__init__.py 0 0 100% 987s Apr 14 09:43:30 patroni/scripts/aws.py 59 59 0% 987s Apr 14 09:43:30 patroni/scripts/barman/__init__.py 0 0 100% 987s Apr 14 09:43:30 patroni/scripts/barman/cli.py 50 50 0% 987s Apr 14 09:43:30 patroni/scripts/barman/config_switch.py 50 50 0% 987s Apr 14 09:43:30 patroni/scripts/barman/recover.py 36 36 0% 987s Apr 14 09:43:30 patroni/scripts/barman/utils.py 93 93 0% 987s Apr 14 09:43:30 patroni/scripts/wale_restore.py 207 207 0% 987s Apr 14 09:43:30 patroni/tags.py 38 11 71% 987s Apr 14 09:43:30 patroni/utils.py 371 185 50% 987s Apr 14 09:43:30 patroni/validator.py 309 222 28% 987s Apr 14 09:43:30 patroni/version.py 1 0 100% 987s Apr 14 09:43:30 patroni/watchdog/__init__.py 2 2 0% 987s Apr 14 09:43:30 patroni/watchdog/base.py 203 203 0% 987s Apr 14 09:43:30 patroni/watchdog/linux.py 135 135 0% 987s Apr 14 09:43:30 ------------------------------------------------------------------------------------------------------------- 987s Apr 14 09:43:30 TOTAL 54417 32575 40% 987s Apr 14 09:43:30 13 features passed, 0 failed, 1 skipped 987s Apr 14 09:43:30 55 scenarios passed, 0 failed, 14 skipped 987s Apr 14 09:43:30 539 steps passed, 0 failed, 128 skipped, 0 undefined 987s Apr 14 09:43:30 Took 9m27.482s 987s + bash -c 'rm -rf features/output' 987s + echo '### End 17 acceptance-etcd3 ###' 987s ### End 17 acceptance-etcd3 ### 987s + rm -f /tmp/pgpass_postgres-0 /tmp/pgpass_postgres-1 /tmp/pgpass_postgres-2 /tmp/pgpass_postgres-3 987s ++ id -u 987s + '[' 1000 -eq 0 ']' 987s autopkgtest [09:43:31]: test acceptance-etcd3: -----------------------] 988s acceptance-etcd3 PASS 988s autopkgtest [09:43:32]: test acceptance-etcd3: - - - - - - - - - - results - - - - - - - - - - 988s autopkgtest [09:43:32]: test acceptance-etcd: preparing testbed 988s Reading package lists... 988s Building dependency tree... 988s Reading state information... 988s Starting pkgProblemResolver with broken count: 0 988s Starting 2 pkgProblemResolver with broken count: 0 988s Done 989s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 990s autopkgtest [09:43:34]: test acceptance-etcd: debian/tests/acceptance etcd 990s autopkgtest [09:43:34]: test acceptance-etcd: [----------------------- 990s dpkg-architecture: warning: cannot determine CC system type, falling back to default (native compilation) 990s ### PostgreSQL 17 acceptance-etcd ### 990s ++ ls -1r /usr/lib/postgresql/ 990s + for PG_VERSION in $(ls -1r /usr/lib/postgresql/) 990s + '[' 17 == 10 -o 17 == 11 ']' 990s + echo '### PostgreSQL 17 acceptance-etcd ###' 990s + bash -c 'set -o pipefail; ETCD_UNSUPPORTED_ARCH= DCS=etcd PATH=/usr/lib/postgresql/17/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin behave | ts' 992s Apr 14 09:43:35 No data to combine 995s Apr 14 09:43:39 Name Stmts Miss Cover 995s Apr 14 09:43:39 ------------------------------------------------------------------------------------------------------------- 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/OpenSSL/SSL.py 1159 642 45% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/OpenSSL/__init__.py 3 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/OpenSSL/_util.py 44 15 66% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/OpenSSL/crypto.py 869 663 24% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/OpenSSL/version.py 9 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/_distutils_hack/__init__.py 101 96 5% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/bcrypt/__init__.py 3 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/__about__.py 5 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/__init__.py 3 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/exceptions.py 26 5 81% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/hazmat/__init__.py 2 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/hazmat/_oid.py 135 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/__init__.py 0 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/__init__.py 0 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/_conditional.py 38 17 55% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/binding.py 51 4 92% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/hazmat/decrepit/__init__.py 1 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/hazmat/decrepit/ciphers/__init__.py 1 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/hazmat/decrepit/ciphers/algorithms.py 68 18 74% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/__init__.py 0 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_asymmetric.py 6 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_cipheralgorithm.py 23 4 83% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_serialization.py 79 35 56% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/__init__.py 0 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/dh.py 47 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/dsa.py 55 5 91% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/ec.py 172 22 87% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/ed448.py 45 12 73% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/ed25519.py 43 12 72% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/padding.py 55 23 58% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/rsa.py 93 40 57% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/types.py 19 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/utils.py 14 5 64% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/x448.py 43 12 72% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/x25519.py 41 12 71% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/__init__.py 4 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/algorithms.py 72 15 79% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/base.py 54 12 78% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/modes.py 140 59 58% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/constant_time.py 6 3 50% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/hashes.py 127 20 84% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/serialization/__init__.py 5 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/serialization/base.py 7 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/serialization/ssh.py 775 614 21% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/utils.py 76 28 63% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/x509/__init__.py 70 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/x509/base.py 488 227 53% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/x509/certificate_transparency.py 42 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/x509/extensions.py 1024 552 46% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/x509/general_name.py 166 94 43% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/x509/name.py 236 144 39% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/x509/oid.py 3 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/cryptography/x509/verification.py 12 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dateutil/__init__.py 13 4 69% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dateutil/_common.py 25 15 40% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dateutil/_version.py 13 3 77% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dateutil/parser/__init__.py 33 4 88% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dateutil/parser/_parser.py 810 436 46% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dateutil/parser/isoparser.py 183 150 18% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dateutil/relativedelta.py 240 206 14% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dateutil/tz/__init__.py 4 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dateutil/tz/_common.py 151 114 25% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dateutil/tz/_factories.py 49 21 57% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dateutil/tz/tz.py 794 626 21% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dateutil/tz/win.py 152 149 2% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/__init__.py 2 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/_asyncbackend.py 14 6 57% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/_ddr.py 105 86 18% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/_features.py 46 8 83% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/_immutable_ctx.py 40 5 88% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/asyncbackend.py 44 32 27% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/asyncquery.py 322 283 12% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/edns.py 307 185 40% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/entropy.py 80 49 39% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/enum.py 72 46 36% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/exception.py 59 33 44% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/flags.py 40 14 65% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/grange.py 33 30 9% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/immutable.py 41 30 27% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/inet.py 79 65 18% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/ipv4.py 26 20 23% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/ipv6.py 114 100 12% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/message.py 829 676 18% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/name.py 617 425 31% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/nameserver.py 102 55 46% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/node.py 117 71 39% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/opcode.py 30 7 77% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/query.py 562 477 15% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/quic/__init__.py 28 23 18% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/rcode.py 68 13 81% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/rdata.py 386 277 28% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/rdataclass.py 43 9 79% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/rdataset.py 192 133 31% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/rdatatype.py 215 23 89% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/OPT.py 34 19 44% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/SOA.py 41 26 37% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/TSIG.py 58 42 28% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/ZONEMD.py 43 27 37% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/rdtypes/ANY/__init__.py 1 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/rdtypes/__init__.py 1 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/rdtypes/svcbbase.py 415 268 35% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/rdtypes/util.py 191 154 19% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/renderer.py 151 118 22% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/resolver.py 873 696 20% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/reversename.py 32 24 25% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/rrset.py 77 56 27% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/serial.py 92 79 14% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/set.py 148 107 28% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/tokenizer.py 334 279 16% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/transaction.py 269 201 25% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/tsig.py 176 122 31% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/ttl.py 44 38 14% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/version.py 6 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/wire.py 64 42 34% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/xfr.py 148 126 15% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/zone.py 507 383 24% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/zonefile.py 427 379 11% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/dns/zonetypes.py 14 2 86% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/etcd/__init__.py 125 63 50% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/etcd/client.py 380 256 33% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/etcd/lock.py 125 103 18% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/idna/__init__.py 4 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/idna/core.py 292 257 12% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/idna/idnadata.py 4 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/idna/intranges.py 30 24 20% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/idna/package_data.py 1 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/__init__.py 13 2 85% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/__main__.py 201 63 69% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/api.py 788 295 63% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/async_executor.py 96 15 84% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/collections.py 56 5 91% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/config.py 357 84 76% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/config_generator.py 212 159 25% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/daemon.py 76 3 96% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/dcs/__init__.py 710 95 87% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/dcs/etcd3.py 679 125 82% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/dcs/etcd.py 603 253 58% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/dynamic_loader.py 35 7 80% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/exceptions.py 16 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/file_perm.py 47 10 79% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/global_config.py 87 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/ha.py 1359 376 72% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/log.py 235 79 66% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/postgresql/__init__.py 825 162 80% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/postgresql/available_parameters/__init__.py 24 3 88% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/postgresql/bootstrap.py 254 60 76% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/postgresql/callback_executor.py 55 8 85% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/postgresql/cancellable.py 104 41 61% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/postgresql/config.py 840 214 75% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/postgresql/connection.py 75 1 99% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/postgresql/misc.py 43 8 81% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/postgresql/mpp/__init__.py 89 11 88% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/postgresql/postmaster.py 170 83 51% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/postgresql/rewind.py 416 130 69% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/postgresql/slots.py 349 37 89% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/postgresql/sync.py 154 10 94% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/postgresql/validator.py 157 24 85% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/psycopg.py 46 19 59% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/quorum.py 182 48 74% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/request.py 58 7 88% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/tags.py 38 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/utils.py 371 103 72% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/validator.py 309 215 30% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/version.py 1 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/watchdog/__init__.py 2 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/watchdog/base.py 203 42 79% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/patroni/watchdog/linux.py 135 35 74% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/psutil/__init__.py 950 629 34% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/psutil/_common.py 422 212 50% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/psutil/_compat.py 301 263 13% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/psutil/_pslinux.py 1250 924 26% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/psutil/_psposix.py 95 38 60% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/psycopg2/__init__.py 19 3 84% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/psycopg2/_json.py 64 27 58% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/psycopg2/_range.py 269 172 36% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/psycopg2/errors.py 3 2 33% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/psycopg2/extensions.py 91 25 73% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/urllib3/__init__.py 49 15 69% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/urllib3/_base_connection.py 63 45 29% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/urllib3/_collections.py 231 120 48% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/urllib3/_request_methods.py 54 24 56% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/urllib3/_version.py 13 3 77% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/urllib3/connection.py 389 137 65% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/urllib3/connectionpool.py 344 122 65% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/urllib3/contrib/__init__.py 0 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/urllib3/contrib/pyopenssl.py 263 101 62% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/urllib3/exceptions.py 121 39 68% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/urllib3/fields.py 92 73 21% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/urllib3/filepost.py 37 24 35% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/urllib3/http2/__init__.py 28 21 25% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/urllib3/http2/probe.py 49 31 37% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/urllib3/poolmanager.py 233 85 64% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/urllib3/response.py 634 330 48% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/urllib3/util/__init__.py 10 0 100% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/urllib3/util/connection.py 66 42 36% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/urllib3/util/proxy.py 13 6 54% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/urllib3/util/request.py 104 49 53% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/urllib3/util/response.py 32 15 53% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/urllib3/util/retry.py 174 50 71% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/urllib3/util/ssl_.py 172 74 57% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/urllib3/util/ssl_match_hostname.py 66 54 18% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/urllib3/util/ssltransport.py 152 106 30% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/urllib3/util/timeout.py 71 14 80% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/urllib3/util/url.py 203 70 66% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/urllib3/util/util.py 26 10 62% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/urllib3/util/wait.py 49 18 63% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/yaml/__init__.py 165 109 34% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/yaml/composer.py 92 17 82% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/yaml/constructor.py 479 276 42% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/yaml/cyaml.py 46 24 48% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/yaml/dumper.py 23 12 48% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/yaml/emitter.py 838 769 8% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/yaml/error.py 58 42 28% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/yaml/events.py 61 6 90% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/yaml/loader.py 47 24 49% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/yaml/nodes.py 29 7 76% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/yaml/parser.py 352 198 44% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/yaml/reader.py 122 34 72% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/yaml/representer.py 248 176 29% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/yaml/resolver.py 135 76 44% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/yaml/scanner.py 758 437 42% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/yaml/serializer.py 85 70 18% 995s Apr 14 09:43:39 /usr/lib/python3/dist-packages/yaml/tokens.py 76 17 78% 995s Apr 14 09:43:39 patroni/__init__.py 13 2 85% 995s Apr 14 09:43:39 patroni/__main__.py 201 201 0% 995s Apr 14 09:43:39 patroni/api.py 788 788 0% 995s Apr 14 09:43:39 patroni/async_executor.py 96 69 28% 995s Apr 14 09:43:39 patroni/collections.py 56 15 73% 995s Apr 14 09:43:39 patroni/config.py 357 186 48% 995s Apr 14 09:43:39 patroni/config_generator.py 212 212 0% 995s Apr 14 09:43:39 patroni/ctl.py 936 395 58% 995s Apr 14 09:43:39 patroni/daemon.py 76 76 0% 995s Apr 14 09:43:39 patroni/dcs/__init__.py 710 317 55% 995s Apr 14 09:43:39 patroni/dcs/consul.py 482 482 0% 995s Apr 14 09:43:39 patroni/dcs/etcd3.py 679 346 49% 995s Apr 14 09:43:39 patroni/dcs/etcd.py 603 277 54% 995s Apr 14 09:43:39 patroni/dcs/exhibitor.py 62 62 0% 995s Apr 14 09:43:39 patroni/dcs/kubernetes.py 943 943 0% 995s Apr 14 09:43:39 patroni/dcs/raft.py 319 319 0% 995s Apr 14 09:43:39 patroni/dcs/zookeeper.py 289 289 0% 995s Apr 14 09:43:39 patroni/dynamic_loader.py 35 7 80% 995s Apr 14 09:43:39 patroni/exceptions.py 16 1 94% 995s Apr 14 09:43:39 patroni/file_perm.py 47 17 64% 995s Apr 14 09:43:39 patroni/global_config.py 87 19 78% 995s Apr 14 09:43:39 patroni/ha.py 1359 1359 0% 995s Apr 14 09:43:39 patroni/log.py 235 183 22% 995s Apr 14 09:43:39 patroni/postgresql/__init__.py 825 653 21% 995s Apr 14 09:43:39 patroni/postgresql/available_parameters/__init__.py 24 3 88% 995s Apr 14 09:43:39 patroni/postgresql/bootstrap.py 254 224 12% 995s Apr 14 09:43:39 patroni/postgresql/callback_executor.py 55 34 38% 995s Apr 14 09:43:39 patroni/postgresql/cancellable.py 104 84 19% 995s Apr 14 09:43:39 patroni/postgresql/config.py 840 720 14% 995s Apr 14 09:43:39 patroni/postgresql/connection.py 75 50 33% 995s Apr 14 09:43:39 patroni/postgresql/misc.py 43 30 30% 995s Apr 14 09:43:39 patroni/postgresql/mpp/__init__.py 89 21 76% 995s Apr 14 09:43:39 patroni/postgresql/mpp/citus.py 366 366 0% 995s Apr 14 09:43:39 patroni/postgresql/postmaster.py 170 139 18% 995s Apr 14 09:43:39 patroni/postgresql/rewind.py 416 416 0% 995s Apr 14 09:43:39 patroni/postgresql/slots.py 349 300 14% 995s Apr 14 09:43:39 patroni/postgresql/sync.py 154 114 26% 995s Apr 14 09:43:39 patroni/postgresql/validator.py 157 52 67% 995s Apr 14 09:43:39 patroni/psycopg.py 46 32 30% 995s Apr 14 09:43:39 patroni/quorum.py 182 182 0% 995s Apr 14 09:43:39 patroni/raft_controller.py 22 22 0% 995s Apr 14 09:43:39 patroni/request.py 58 6 90% 995s Apr 14 09:43:39 patroni/scripts/__init__.py 0 0 100% 995s Apr 14 09:43:39 patroni/scripts/aws.py 59 59 0% 995s Apr 14 09:43:39 patroni/scripts/barman/__init__.py 0 0 100% 995s Apr 14 09:43:39 patroni/scripts/barman/cli.py 50 50 0% 995s Apr 14 09:43:39 patroni/scripts/barman/config_switch.py 50 50 0% 995s Apr 14 09:43:39 patroni/scripts/barman/recover.py 36 36 0% 995s Apr 14 09:43:39 patroni/scripts/barman/utils.py 93 93 0% 995s Apr 14 09:43:39 patroni/scripts/wale_restore.py 207 207 0% 995s Apr 14 09:43:39 patroni/tags.py 38 11 71% 995s Apr 14 09:43:39 patroni/utils.py 371 185 50% 995s Apr 14 09:43:39 patroni/validator.py 309 222 28% 995s Apr 14 09:43:39 patroni/version.py 1 0 100% 995s Apr 14 09:43:39 patroni/watchdog/__init__.py 2 2 0% 995s Apr 14 09:43:39 patroni/watchdog/base.py 203 203 0% 995s Apr 14 09:43:39 patroni/watchdog/linux.py 135 135 0% 995s Apr 14 09:43:39 ------------------------------------------------------------------------------------------------------------- 995s Apr 14 09:43:39 TOTAL 54417 32575 40% 995s Apr 14 09:43:39 HOOK-ERROR in before_all: AssertionError: Process etcd is not running after being started 995s Apr 14 09:43:39 995s Apr 14 09:43:39 ABORTED: By user. 995s Apr 14 09:43:39 0 features passed, 0 failed, 0 skipped, 14 untested 995s Apr 14 09:43:39 0 scenarios passed, 0 failed, 0 skipped, 69 untested 995s Apr 14 09:43:39 0 steps passed, 0 failed, 0 skipped, 0 undefined, 667 untested 995s Apr 14 09:43:39 Took 0m0.000s 995s + for file in features/output/*_failed/* 995s + case $file in 995s + echo 'features/output/*_failed/*:' 995s + cat 'features/output/*_failed/*' 995s features/output/*_failed/*: 995s cat: 'features/output/*_failed/*': No such file or directory 995s + rm -f '/tmp/pgpass_postgres-?' 995s ++ id -u 995s + '[' 1000 -eq 0 ']' 996s autopkgtest [09:43:40]: test acceptance-etcd: -----------------------] 996s autopkgtest [09:43:40]: test acceptance-etcd: - - - - - - - - - - results - - - - - - - - - - 996s acceptance-etcd FAIL non-zero exit status 1 996s autopkgtest [09:43:40]: test acceptance-zookeeper: preparing testbed 1081s autopkgtest [09:45:05]: testbed dpkg architecture: ppc64el 1081s autopkgtest [09:45:05]: testbed apt version: 3.0.0 1082s autopkgtest [09:45:06]: @@@@@@@@@@@@@@@@@@@@ test bed setup 1082s autopkgtest [09:45:06]: testbed release detected to be: plucky 1082s autopkgtest [09:45:06]: updating testbed package index (apt update) 1083s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [265 kB] 1083s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 1083s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 1083s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 1083s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [204 kB] 1083s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [5192 B] 1083s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [9948 B] 1083s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/main ppc64el Packages [3476 B] 1083s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/main ppc64el c-n-f Metadata [288 B] 1083s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/restricted ppc64el c-n-f Metadata [120 B] 1083s Get:11 http://ftpmaster.internal/ubuntu plucky-proposed/universe ppc64el Packages [120 kB] 1083s Get:12 http://ftpmaster.internal/ubuntu plucky-proposed/universe ppc64el c-n-f Metadata [8688 B] 1083s Get:13 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse ppc64el Packages [2008 B] 1083s Get:14 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse ppc64el c-n-f Metadata [172 B] 1085s Fetched 619 kB in 1s (1121 kB/s) 1085s Reading package lists... 1086s autopkgtest [09:45:10]: upgrading testbed (apt dist-upgrade and autopurge) 1086s Reading package lists... 1086s Building dependency tree... 1086s Reading state information... 1086s Calculating upgrade...Starting pkgProblemResolver with broken count: 0 1086s Starting 2 pkgProblemResolver with broken count: 0 1086s Done 1087s Entering ResolveByKeep 1087s 1087s Calculating upgrade... 1087s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1087s Reading package lists... 1087s Building dependency tree... 1087s Reading state information... 1087s Starting pkgProblemResolver with broken count: 0 1087s Starting 2 pkgProblemResolver with broken count: 0 1087s Done 1088s Solving dependencies... 1088s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1090s Reading package lists... 1090s Building dependency tree... 1090s Reading state information... 1090s Starting pkgProblemResolver with broken count: 0 1091s Starting 2 pkgProblemResolver with broken count: 0 1091s Done 1091s The following NEW packages will be installed: 1091s adwaita-icon-theme at-spi2-common ca-certificates-java 1091s dconf-gsettings-backend dconf-service default-jre default-jre-headless 1091s fontconfig fontconfig-config fonts-dejavu-core fonts-dejavu-mono 1091s fonts-font-awesome fonts-lato gtk-update-icon-cache hicolor-icon-theme 1091s java-common junit4 libactivation-java libapache-pom-java libapr1t64 1091s libasm-java libasound2-data libasound2t64 libatinject-jsr330-api-java 1091s libatk-bridge2.0-0t64 libatk1.0-0t64 libatspi2.0-0t64 libavahi-client3 1091s libavahi-common-data libavahi-common3 libcairo-gobject2 libcairo2 libcares2 1091s libcolord2 libcommons-cli-java libcommons-io-java libcommons-logging-java 1091s libcommons-parent-java libcups2t64 libdatrie1 libdconf1 libdeflate0 1091s libdropwizard-metrics-java libeclipse-jdt-core-compiler-batch-java 1091s libeclipse-jdt-core-java libel-api-java libepoxy0 liberror-prone-java 1091s libev4t64 libfindbugs-annotations-java libfontconfig1 libgbm1 1091s libgdk-pixbuf-2.0-0 libgdk-pixbuf2.0-common libgif7 libgl1 libgl1-mesa-dri 1091s libglvnd0 libglx-mesa0 libglx0 libgraphite2-3 libgtk-3-0t64 libgtk-3-common 1091s libguava-java libhamcrest-java libharfbuzz0b libio-pty-perl libipc-run-perl 1091s libjackson2-annotations-java libjackson2-core-java libjackson2-databind-java 1091s libjavaparser-java libjaxb-api-java libjbig0 libjctools-java 1091s libjetty9-extra-java libjetty9-java libjffi-java libjffi-jni 1091s libjnr-constants-java libjnr-enxio-java libjnr-ffi-java libjnr-posix-java 1091s libjnr-unixsocket-java libjnr-x86asm-java libjpeg-turbo8 libjpeg8 1091s libjs-jquery libjs-sphinxdoc libjs-underscore libjson-perl libjsp-api-java 1091s libjsr305-java liblcms2-2 liblerc4 libllvm20 liblog4j1.2-java libmail-java 1091s libnetty-java libnetty-tcnative-java libnetty-tcnative-jni libpango-1.0-0 1091s libpangocairo-1.0-0 libpangoft2-1.0-0 libpcsclite1 libpixman-1-0 libpq5 1091s libservlet-api-java libsharpyuv0 libslf4j-java libsnappy-java libsnappy-jni 1091s libsnappy1v5 libspring-beans-java libspring-core-java 1091s libtaglibs-standard-impl-java libtaglibs-standard-spec-java libthai-data 1091s libthai0 libtiff6 libtime-duration-perl libtimedate-perl libtomcat9-java 1091s libvulkan1 libwayland-client0 libwayland-cursor0 libwayland-egl1 1091s libwayland-server0 libwebp7 libwebsocket-api-java libx11-xcb1 libxcb-dri3-0 1091s libxcb-glx0 libxcb-present0 libxcb-randr0 libxcb-render0 libxcb-shm0 1091s libxcb-sync1 libxcb-xfixes0 libxcomposite1 libxcursor1 libxdamage1 1091s libxfixes3 libxi6 libxinerama1 libxrandr2 libxrender1 libxshmfence1 1091s libxslt1.1 libxtst6 libxxf86vm1 libzookeeper-java mesa-libgallium moreutils 1091s openjdk-21-jre openjdk-21-jre-headless patroni patroni-doc postgresql 1091s postgresql-17 postgresql-client-17 postgresql-client-common 1091s postgresql-common postgresql-common-dev python3-behave python3-click 1091s python3-coverage python3-dateutil python3-dnspython python3-eventlet 1091s python3-gevent python3-greenlet python3-kazoo python3-kerberos python3-parse 1091s python3-parse-type python3-prettytable python3-psutil python3-psycopg2 1091s python3-pure-sasl python3-six python3-wcwidth python3-ydiff 1091s python3-zope.event python3-zope.interface sphinx-rtd-theme-common ssl-cert 1091s x11-common zookeeper zookeeperd 1091s 0 upgraded, 190 newly installed, 0 to remove and 0 not upgraded. 1091s Need to get 167 MB of archives. 1091s After this operation, 623 MB of additional disk space will be used. 1091s Get:1 http://ftpmaster.internal/ubuntu plucky/main ppc64el fonts-lato all 2.015-1 [2781 kB] 1091s Get:2 http://ftpmaster.internal/ubuntu plucky/main ppc64el libjson-perl all 4.10000-1 [81.9 kB] 1091s Get:3 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql-client-common all 274 [47.6 kB] 1091s Get:4 http://ftpmaster.internal/ubuntu plucky/main ppc64el libio-pty-perl ppc64el 1:1.20-1build3 [32.0 kB] 1091s Get:5 http://ftpmaster.internal/ubuntu plucky/main ppc64el libipc-run-perl all 20231003.0-2 [91.5 kB] 1091s Get:6 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql-common-dev all 274 [73.0 kB] 1091s Get:7 http://ftpmaster.internal/ubuntu plucky/main ppc64el ssl-cert all 1.1.3ubuntu1 [18.7 kB] 1091s Get:8 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql-common all 274 [101 kB] 1091s Get:9 http://ftpmaster.internal/ubuntu plucky/main ppc64el ca-certificates-java all 20240118 [11.6 kB] 1091s Get:10 http://ftpmaster.internal/ubuntu plucky/main ppc64el java-common all 0.76 [6852 B] 1091s Get:11 http://ftpmaster.internal/ubuntu plucky/main ppc64el liblcms2-2 ppc64el 2.16-2 [243 kB] 1091s Get:12 http://ftpmaster.internal/ubuntu plucky/main ppc64el libjpeg-turbo8 ppc64el 2.1.5-3ubuntu2 [215 kB] 1091s Get:13 http://ftpmaster.internal/ubuntu plucky/main ppc64el libjpeg8 ppc64el 8c-2ubuntu11 [2148 B] 1091s Get:14 http://ftpmaster.internal/ubuntu plucky/main ppc64el libpcsclite1 ppc64el 2.3.1-1 [31.4 kB] 1091s Get:15 http://ftpmaster.internal/ubuntu plucky/main ppc64el openjdk-21-jre-headless ppc64el 21.0.7~8ea-1 [45.7 MB] 1092s Get:16 http://ftpmaster.internal/ubuntu plucky/main ppc64el default-jre-headless ppc64el 2:1.21-76 [3184 B] 1092s Get:17 http://ftpmaster.internal/ubuntu plucky/main ppc64el libgdk-pixbuf2.0-common all 2.42.12+dfsg-2 [8004 B] 1092s Get:18 http://ftpmaster.internal/ubuntu plucky/main ppc64el libdeflate0 ppc64el 1.23-1 [63.4 kB] 1092s Get:19 http://ftpmaster.internal/ubuntu plucky/main ppc64el libjbig0 ppc64el 2.1-6.1ubuntu2 [35.9 kB] 1092s Get:20 http://ftpmaster.internal/ubuntu plucky/main ppc64el liblerc4 ppc64el 4.0.0+ds-5ubuntu1 [298 kB] 1092s Get:21 http://ftpmaster.internal/ubuntu plucky/main ppc64el libsharpyuv0 ppc64el 1.5.0-0.1 [22.3 kB] 1092s Get:22 http://ftpmaster.internal/ubuntu plucky/main ppc64el libwebp7 ppc64el 1.5.0-0.1 [315 kB] 1092s Get:23 http://ftpmaster.internal/ubuntu plucky/main ppc64el libtiff6 ppc64el 4.5.1+git230720-4ubuntu4 [272 kB] 1092s Get:24 http://ftpmaster.internal/ubuntu plucky/main ppc64el libgdk-pixbuf-2.0-0 ppc64el 2.42.12+dfsg-2 [191 kB] 1092s Get:25 http://ftpmaster.internal/ubuntu plucky/main ppc64el gtk-update-icon-cache ppc64el 4.18.4+ds-1 [55.5 kB] 1092s Get:26 http://ftpmaster.internal/ubuntu plucky/main ppc64el hicolor-icon-theme all 0.18-2 [13.3 kB] 1092s Get:27 http://ftpmaster.internal/ubuntu plucky/main ppc64el adwaita-icon-theme all 48.0-1 [578 kB] 1092s Get:28 http://ftpmaster.internal/ubuntu plucky/main ppc64el at-spi2-common all 2.56.1-1 [9142 B] 1092s Get:29 http://ftpmaster.internal/ubuntu plucky/main ppc64el libatk1.0-0t64 ppc64el 2.56.1-1 [60.5 kB] 1092s Get:30 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxi6 ppc64el 2:1.8.2-1 [37.9 kB] 1092s Get:31 http://ftpmaster.internal/ubuntu plucky/main ppc64el libatspi2.0-0t64 ppc64el 2.56.1-1 [101 kB] 1092s Get:32 http://ftpmaster.internal/ubuntu plucky/main ppc64el libatk-bridge2.0-0t64 ppc64el 2.56.1-1 [77.8 kB] 1092s Get:33 http://ftpmaster.internal/ubuntu plucky/main ppc64el fonts-dejavu-mono all 2.37-8 [502 kB] 1092s Get:34 http://ftpmaster.internal/ubuntu plucky/main ppc64el fonts-dejavu-core all 2.37-8 [835 kB] 1092s Get:35 http://ftpmaster.internal/ubuntu plucky/main ppc64el fontconfig-config ppc64el 2.15.0-2.2ubuntu1 [37.9 kB] 1092s Get:36 http://ftpmaster.internal/ubuntu plucky/main ppc64el libfontconfig1 ppc64el 2.15.0-2.2ubuntu1 [187 kB] 1092s Get:37 http://ftpmaster.internal/ubuntu plucky/main ppc64el libpixman-1-0 ppc64el 0.44.0-3 [334 kB] 1092s Get:38 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxcb-render0 ppc64el 1.17.0-2 [17.2 kB] 1092s Get:39 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxcb-shm0 ppc64el 1.17.0-2 [5980 B] 1092s Get:40 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxrender1 ppc64el 1:0.9.10-1.1build1 [23.1 kB] 1092s Get:41 http://ftpmaster.internal/ubuntu plucky/main ppc64el libcairo2 ppc64el 1.18.4-1 [746 kB] 1092s Get:42 http://ftpmaster.internal/ubuntu plucky/main ppc64el libcairo-gobject2 ppc64el 1.18.4-1 [128 kB] 1092s Get:43 http://ftpmaster.internal/ubuntu plucky/main ppc64el libcolord2 ppc64el 1.4.7-3 [162 kB] 1092s Get:44 http://ftpmaster.internal/ubuntu plucky/main ppc64el libavahi-common-data ppc64el 0.8-16ubuntu2 [31.0 kB] 1092s Get:45 http://ftpmaster.internal/ubuntu plucky/main ppc64el libavahi-common3 ppc64el 0.8-16ubuntu2 [25.9 kB] 1092s Get:46 http://ftpmaster.internal/ubuntu plucky/main ppc64el libavahi-client3 ppc64el 0.8-16ubuntu2 [30.9 kB] 1092s Get:47 http://ftpmaster.internal/ubuntu plucky/main ppc64el libcups2t64 ppc64el 2.4.12-0ubuntu1 [348 kB] 1092s Get:48 http://ftpmaster.internal/ubuntu plucky/main ppc64el libepoxy0 ppc64el 1.5.10-2 [234 kB] 1092s Get:49 http://ftpmaster.internal/ubuntu plucky/main ppc64el libgraphite2-3 ppc64el 1.3.14-2ubuntu1 [84.6 kB] 1092s Get:50 http://ftpmaster.internal/ubuntu plucky/main ppc64el libharfbuzz0b ppc64el 10.2.0-1 [598 kB] 1092s Get:51 http://ftpmaster.internal/ubuntu plucky/main ppc64el fontconfig ppc64el 2.15.0-2.2ubuntu1 [192 kB] 1092s Get:52 http://ftpmaster.internal/ubuntu plucky/main ppc64el libthai-data all 0.1.29-2build1 [158 kB] 1092s Get:53 http://ftpmaster.internal/ubuntu plucky/main ppc64el libdatrie1 ppc64el 0.2.13-3build1 [22.7 kB] 1092s Get:54 http://ftpmaster.internal/ubuntu plucky/main ppc64el libthai0 ppc64el 0.1.29-2build1 [21.8 kB] 1092s Get:55 http://ftpmaster.internal/ubuntu plucky/main ppc64el libpango-1.0-0 ppc64el 1.56.3-1 [278 kB] 1092s Get:56 http://ftpmaster.internal/ubuntu plucky/main ppc64el libpangoft2-1.0-0 ppc64el 1.56.3-1 [58.9 kB] 1092s Get:57 http://ftpmaster.internal/ubuntu plucky/main ppc64el libpangocairo-1.0-0 ppc64el 1.56.3-1 [30.7 kB] 1092s Get:58 http://ftpmaster.internal/ubuntu plucky/main ppc64el libwayland-client0 ppc64el 1.23.1-3 [31.7 kB] 1092s Get:59 http://ftpmaster.internal/ubuntu plucky/main ppc64el libwayland-cursor0 ppc64el 1.23.1-3 [12.0 kB] 1092s Get:60 http://ftpmaster.internal/ubuntu plucky/main ppc64el libwayland-egl1 ppc64el 1.23.1-3 [6236 B] 1092s Get:61 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxcomposite1 ppc64el 1:0.4.6-1 [6816 B] 1092s Get:62 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxfixes3 ppc64el 1:6.0.0-2build1 [11.8 kB] 1092s Get:63 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxcursor1 ppc64el 1:1.2.3-1 [27.4 kB] 1092s Get:64 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxdamage1 ppc64el 1:1.1.6-1build1 [6550 B] 1092s Get:65 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxinerama1 ppc64el 2:1.1.4-3build1 [6908 B] 1092s Get:66 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxrandr2 ppc64el 2:1.5.4-1 [21.7 kB] 1092s Get:67 http://ftpmaster.internal/ubuntu plucky/main ppc64el libdconf1 ppc64el 0.40.0-5 [43.7 kB] 1092s Get:68 http://ftpmaster.internal/ubuntu plucky/main ppc64el dconf-service ppc64el 0.40.0-5 [30.8 kB] 1092s Get:69 http://ftpmaster.internal/ubuntu plucky/main ppc64el dconf-gsettings-backend ppc64el 0.40.0-5 [26.0 kB] 1092s Get:70 http://ftpmaster.internal/ubuntu plucky/main ppc64el libgtk-3-common all 3.24.49-2ubuntu1 [1424 kB] 1092s Get:71 http://ftpmaster.internal/ubuntu plucky/main ppc64el libgtk-3-0t64 ppc64el 3.24.49-2ubuntu1 [3382 kB] 1092s Get:72 http://ftpmaster.internal/ubuntu plucky/main ppc64el libglvnd0 ppc64el 1.7.0-1build1 [72.4 kB] 1092s Get:73 http://ftpmaster.internal/ubuntu plucky/main ppc64el libx11-xcb1 ppc64el 2:1.8.10-2 [8008 B] 1092s Get:74 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxcb-dri3-0 ppc64el 1.17.0-2 [7842 B] 1092s Get:75 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxcb-glx0 ppc64el 1.17.0-2 [26.3 kB] 1092s Get:76 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxcb-present0 ppc64el 1.17.0-2 [6276 B] 1092s Get:77 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxcb-xfixes0 ppc64el 1.17.0-2 [10.7 kB] 1092s Get:78 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxxf86vm1 ppc64el 1:1.1.4-1build4 [11.1 kB] 1092s Get:79 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxcb-randr0 ppc64el 1.17.0-2 [19.1 kB] 1092s Get:80 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxcb-sync1 ppc64el 1.17.0-2 [9804 B] 1092s Get:81 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxshmfence1 ppc64el 1.3-1build5 [4964 B] 1092s Get:82 http://ftpmaster.internal/ubuntu plucky/main ppc64el mesa-libgallium ppc64el 25.0.3-1ubuntu2 [9535 kB] 1093s Get:83 http://ftpmaster.internal/ubuntu plucky/main ppc64el libwayland-server0 ppc64el 1.23.1-3 [42.4 kB] 1093s Get:84 http://ftpmaster.internal/ubuntu plucky/main ppc64el libgbm1 ppc64el 25.0.3-1ubuntu2 [39.1 kB] 1093s Get:85 http://ftpmaster.internal/ubuntu plucky/main ppc64el libvulkan1 ppc64el 1.4.304.0-1 [163 kB] 1093s Get:86 http://ftpmaster.internal/ubuntu plucky/main ppc64el libgl1-mesa-dri ppc64el 25.0.3-1ubuntu2 [35.1 kB] 1093s Get:87 http://ftpmaster.internal/ubuntu plucky/main ppc64el libglx-mesa0 ppc64el 25.0.3-1ubuntu2 [175 kB] 1093s Get:88 http://ftpmaster.internal/ubuntu plucky/main ppc64el libglx0 ppc64el 1.7.0-1build1 [42.7 kB] 1093s Get:89 http://ftpmaster.internal/ubuntu plucky/main ppc64el libgl1 ppc64el 1.7.0-1build1 [107 kB] 1093s Get:90 http://ftpmaster.internal/ubuntu plucky/main ppc64el libasound2-data all 1.2.13-1build1 [21.1 kB] 1093s Get:91 http://ftpmaster.internal/ubuntu plucky/main ppc64el libasound2t64 ppc64el 1.2.13-1build1 [496 kB] 1093s Get:92 http://ftpmaster.internal/ubuntu plucky/main ppc64el libgif7 ppc64el 5.2.2-1ubuntu2 [40.7 kB] 1093s Get:93 http://ftpmaster.internal/ubuntu plucky/main ppc64el x11-common all 1:7.7+23ubuntu4 [21.8 kB] 1093s Get:94 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxtst6 ppc64el 2:1.2.5-1 [14.7 kB] 1093s Get:95 http://ftpmaster.internal/ubuntu plucky/main ppc64el openjdk-21-jre ppc64el 21.0.7~8ea-1 [246 kB] 1093s Get:96 http://ftpmaster.internal/ubuntu plucky/main ppc64el default-jre ppc64el 2:1.21-76 [918 B] 1093s Get:97 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libhamcrest-java all 2.2-2 [117 kB] 1093s Get:98 http://ftpmaster.internal/ubuntu plucky/universe ppc64el junit4 all 4.13.2-5 [348 kB] 1093s Get:99 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libcommons-cli-java all 1.6.0-1 [59.9 kB] 1093s Get:100 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libapache-pom-java all 33-2 [5874 B] 1093s Get:101 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libcommons-parent-java all 56-1 [10.7 kB] 1093s Get:102 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libcommons-io-java all 2.18.0-1 [477 kB] 1093s Get:103 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libdropwizard-metrics-java all 3.2.6-1 [240 kB] 1093s Get:104 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libfindbugs-annotations-java all 3.1.0~preview2-4 [48.9 kB] 1093s Get:105 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libatinject-jsr330-api-java all 1.0+ds1-6 [5076 B] 1093s Get:106 http://ftpmaster.internal/ubuntu plucky/universe ppc64el liberror-prone-java all 2.18.0-1 [22.5 kB] 1093s Get:107 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjsr305-java all 0.1~+svn49-12 [27.0 kB] 1093s Get:108 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libguava-java all 32.0.1-1 [2692 kB] 1093s Get:109 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjackson2-annotations-java all 2.14.0-1 [64.7 kB] 1093s Get:110 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjackson2-core-java all 2.14.1-1 [432 kB] 1093s Get:111 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjackson2-databind-java all 2.14.0+ds-1 [1481 kB] 1093s Get:112 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libasm-java all 9.7.1-1 [388 kB] 1093s Get:113 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libel-api-java all 3.0.0-3 [64.9 kB] 1094s Get:114 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjsp-api-java all 2.3.4-3 [53.7 kB] 1094s Get:115 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libservlet-api-java all 4.0.1-2 [81.0 kB] 1094s Get:116 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libwebsocket-api-java all 1.1-2 [40.1 kB] 1094s Get:117 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjetty9-java all 9.4.56-1 [2790 kB] 1094s Get:118 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjnr-constants-java all 0.10.4-2 [1397 kB] 1094s Get:119 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjffi-jni ppc64el 1.3.13+ds-1 [31.1 kB] 1094s Get:120 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjffi-java all 1.3.13+ds-1 [112 kB] 1094s Get:121 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjnr-x86asm-java all 1.0.2-6 [216 kB] 1094s Get:122 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjnr-ffi-java all 2.2.15-2 [627 kB] 1094s Get:123 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjnr-enxio-java all 0.32.16-1 [33.7 kB] 1094s Get:124 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjnr-posix-java all 3.1.18-1 [267 kB] 1094s Get:125 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjnr-unixsocket-java all 0.38.21-2 [46.9 kB] 1094s Get:126 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libactivation-java all 1.2.0-2 [84.7 kB] 1094s Get:127 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libmail-java all 1.6.5-3 [681 kB] 1094s Get:128 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libcommons-logging-java all 1.3.0-1ubuntu1 [63.8 kB] 1094s Get:129 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjaxb-api-java all 2.3.1-1 [119 kB] 1094s Get:130 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libspring-core-java all 4.3.30-2ubuntu1 [1015 kB] 1094s Get:131 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libspring-beans-java all 4.3.30-2ubuntu1 [677 kB] 1094s Get:132 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libtaglibs-standard-spec-java all 1.2.5-3 [35.2 kB] 1094s Get:133 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libtaglibs-standard-impl-java all 1.2.5-3 [182 kB] 1094s Get:134 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libeclipse-jdt-core-compiler-batch-java all 3.35.0+eclipse4.29-2 [2933 kB] 1094s Get:135 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libeclipse-jdt-core-java all 3.35.0+eclipse4.29-2 [3831 kB] 1094s Get:136 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libtomcat9-java all 9.0.70-2ubuntu1.1 [6161 kB] 1095s Get:137 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjetty9-extra-java all 9.4.56-1 [1199 kB] 1095s Get:138 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjavaparser-java all 3.26.1-1 [1326 kB] 1095s Get:139 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjctools-java all 4.0.5+dfsg-1 [506 kB] 1095s Get:140 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libnetty-java all 1:4.1.48-10 [3628 kB] 1095s Get:141 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libslf4j-java all 1.7.32-1 [141 kB] 1095s Get:142 http://ftpmaster.internal/ubuntu plucky/main ppc64el libsnappy1v5 ppc64el 1.2.1-1 [33.4 kB] 1095s Get:143 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libsnappy-jni ppc64el 1.1.10.7-1 [6650 B] 1095s Get:144 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libsnappy-java all 1.1.10.7-1 [83.6 kB] 1095s Get:145 http://ftpmaster.internal/ubuntu plucky/main ppc64el libapr1t64 ppc64el 1.7.5-1 [137 kB] 1095s Get:146 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libnetty-tcnative-jni ppc64el 2.0.28-1build4 [42.3 kB] 1095s Get:147 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libnetty-tcnative-java all 2.0.28-1build4 [24.8 kB] 1095s Get:148 http://ftpmaster.internal/ubuntu plucky/universe ppc64el liblog4j1.2-java all 1.2.17-11 [439 kB] 1095s Get:149 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libzookeeper-java all 3.9.3-1build1 [1890 kB] 1095s Get:150 http://ftpmaster.internal/ubuntu plucky/universe ppc64el zookeeper all 3.9.3-1build1 [57.8 kB] 1095s Get:151 http://ftpmaster.internal/ubuntu plucky/universe ppc64el zookeeperd all 3.9.3-1build1 [6016 B] 1095s Get:152 http://ftpmaster.internal/ubuntu plucky/main ppc64el fonts-font-awesome all 5.0.10+really4.7.0~dfsg-4.1 [516 kB] 1095s Get:153 http://ftpmaster.internal/ubuntu plucky/main ppc64el libcares2 ppc64el 1.34.4-2.1 [126 kB] 1095s Get:154 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libev4t64 ppc64el 1:4.33-2.1build1 [34.9 kB] 1095s Get:155 http://ftpmaster.internal/ubuntu plucky/main ppc64el libjs-jquery all 3.6.1+dfsg+~3.5.14-1 [328 kB] 1095s Get:156 http://ftpmaster.internal/ubuntu plucky/main ppc64el libjs-underscore all 1.13.4~dfsg+~1.11.4-3 [118 kB] 1095s Get:157 http://ftpmaster.internal/ubuntu plucky/main ppc64el libjs-sphinxdoc all 8.1.3-5 [31.0 kB] 1095s Get:158 http://ftpmaster.internal/ubuntu plucky/main ppc64el libllvm20 ppc64el 1:20.1.2-0ubuntu1 [32.0 MB] 1096s Get:159 http://ftpmaster.internal/ubuntu plucky/main ppc64el libpq5 ppc64el 17.4-1 [174 kB] 1096s Get:160 http://ftpmaster.internal/ubuntu plucky/main ppc64el libtime-duration-perl all 1.21-2 [12.3 kB] 1096s Get:161 http://ftpmaster.internal/ubuntu plucky/main ppc64el libtimedate-perl all 2.3300-2 [34.0 kB] 1096s Get:162 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxslt1.1 ppc64el 1.1.39-0exp1ubuntu4 [191 kB] 1096s Get:163 http://ftpmaster.internal/ubuntu plucky/universe ppc64el moreutils ppc64el 0.69-1 [59.1 kB] 1096s Get:164 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-click all 8.2.0+0.really.8.1.8-1 [80.0 kB] 1096s Get:165 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-dateutil all 2.9.0-4 [80.3 kB] 1096s Get:166 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-wcwidth all 0.2.13+dfsg1-1 [26.3 kB] 1096s Get:167 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-prettytable all 3.12.0-1 [36.5 kB] 1096s Get:168 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-psutil ppc64el 5.9.8-2build3 [197 kB] 1096s Get:169 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-ydiff all 1.4.2-1 [19.0 kB] 1096s Get:170 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-psycopg2 ppc64el 2.9.10-1build1 [151 kB] 1096s Get:171 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-greenlet ppc64el 3.1.0-1build1 [168 kB] 1096s Get:172 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-dnspython all 2.7.0-1ubuntu1 [167 kB] 1096s Get:173 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-eventlet all 0.39.0-0ubuntu1 [277 kB] 1096s Get:174 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-zope.event all 5.0-0.1 [7512 B] 1096s Get:175 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-zope.interface ppc64el 7.2-1build1 [143 kB] 1096s Get:176 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-gevent ppc64el 24.11.1-1build1 [905 kB] 1096s Get:177 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-kerberos ppc64el 1.1.14-3.1build11 [22.0 kB] 1096s Get:178 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-pure-sasl all 0.5.1+dfsg1-5 [11.4 kB] 1096s Get:179 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-six all 1.17.0-1 [13.2 kB] 1096s Get:180 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-kazoo all 2.9.0-2 [103 kB] 1096s Get:181 http://ftpmaster.internal/ubuntu plucky-proposed/universe ppc64el patroni all 4.0.4-8 [282 kB] 1096s Get:182 http://ftpmaster.internal/ubuntu plucky/main ppc64el sphinx-rtd-theme-common all 3.0.2+dfsg-2 [1014 kB] 1096s Get:183 http://ftpmaster.internal/ubuntu plucky-proposed/universe ppc64el patroni-doc all 4.0.4-8 [526 kB] 1096s Get:184 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql-client-17 ppc64el 17.4-1 [1482 kB] 1096s Get:185 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql-17 ppc64el 17.4-1 [17.2 MB] 1096s Get:186 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql all 17+274 [14.4 kB] 1096s Get:187 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-parse all 1.20.2-1 [27.0 kB] 1096s Get:188 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-parse-type all 0.6.4-2 [23.5 kB] 1096s Get:189 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-behave all 1.2.6-6 [98.6 kB] 1096s Get:190 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-coverage ppc64el 7.6.0+dfsg1-2build1 [154 kB] 1097s Preconfiguring packages ... 1097s /var/cache/debconf/tmp.ci/postgresql.config.CcRtJK: 12: pg_lsclusters: not found 1097s Fetched 167 MB in 5s (30.7 MB/s) 1097s Selecting previously unselected package fonts-lato. 1097s (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 ... 107206 files and directories currently installed.) 1097s Preparing to unpack .../000-fonts-lato_2.015-1_all.deb ... 1097s Unpacking fonts-lato (2.015-1) ... 1098s Selecting previously unselected package libjson-perl. 1098s Preparing to unpack .../001-libjson-perl_4.10000-1_all.deb ... 1098s Unpacking libjson-perl (4.10000-1) ... 1098s Selecting previously unselected package postgresql-client-common. 1098s Preparing to unpack .../002-postgresql-client-common_274_all.deb ... 1098s Unpacking postgresql-client-common (274) ... 1098s Selecting previously unselected package libio-pty-perl. 1098s Preparing to unpack .../003-libio-pty-perl_1%3a1.20-1build3_ppc64el.deb ... 1098s Unpacking libio-pty-perl (1:1.20-1build3) ... 1098s Selecting previously unselected package libipc-run-perl. 1098s Preparing to unpack .../004-libipc-run-perl_20231003.0-2_all.deb ... 1098s Unpacking libipc-run-perl (20231003.0-2) ... 1098s Selecting previously unselected package postgresql-common-dev. 1098s Preparing to unpack .../005-postgresql-common-dev_274_all.deb ... 1098s Unpacking postgresql-common-dev (274) ... 1098s Selecting previously unselected package ssl-cert. 1098s Preparing to unpack .../006-ssl-cert_1.1.3ubuntu1_all.deb ... 1098s Unpacking ssl-cert (1.1.3ubuntu1) ... 1098s Selecting previously unselected package postgresql-common. 1098s Preparing to unpack .../007-postgresql-common_274_all.deb ... 1098s Adding 'diversion of /usr/bin/pg_config to /usr/bin/pg_config.libpq-dev by postgresql-common' 1098s Unpacking postgresql-common (274) ... 1098s Selecting previously unselected package ca-certificates-java. 1098s Preparing to unpack .../008-ca-certificates-java_20240118_all.deb ... 1098s Unpacking ca-certificates-java (20240118) ... 1098s Selecting previously unselected package java-common. 1098s Preparing to unpack .../009-java-common_0.76_all.deb ... 1098s Unpacking java-common (0.76) ... 1098s Selecting previously unselected package liblcms2-2:ppc64el. 1098s Preparing to unpack .../010-liblcms2-2_2.16-2_ppc64el.deb ... 1098s Unpacking liblcms2-2:ppc64el (2.16-2) ... 1098s Selecting previously unselected package libjpeg-turbo8:ppc64el. 1098s Preparing to unpack .../011-libjpeg-turbo8_2.1.5-3ubuntu2_ppc64el.deb ... 1098s Unpacking libjpeg-turbo8:ppc64el (2.1.5-3ubuntu2) ... 1098s Selecting previously unselected package libjpeg8:ppc64el. 1098s Preparing to unpack .../012-libjpeg8_8c-2ubuntu11_ppc64el.deb ... 1098s Unpacking libjpeg8:ppc64el (8c-2ubuntu11) ... 1098s Selecting previously unselected package libpcsclite1:ppc64el. 1098s Preparing to unpack .../013-libpcsclite1_2.3.1-1_ppc64el.deb ... 1098s Unpacking libpcsclite1:ppc64el (2.3.1-1) ... 1098s Selecting previously unselected package openjdk-21-jre-headless:ppc64el. 1098s Preparing to unpack .../014-openjdk-21-jre-headless_21.0.7~8ea-1_ppc64el.deb ... 1098s Unpacking openjdk-21-jre-headless:ppc64el (21.0.7~8ea-1) ... 1099s Selecting previously unselected package default-jre-headless. 1099s Preparing to unpack .../015-default-jre-headless_2%3a1.21-76_ppc64el.deb ... 1099s Unpacking default-jre-headless (2:1.21-76) ... 1099s Selecting previously unselected package libgdk-pixbuf2.0-common. 1099s Preparing to unpack .../016-libgdk-pixbuf2.0-common_2.42.12+dfsg-2_all.deb ... 1099s Unpacking libgdk-pixbuf2.0-common (2.42.12+dfsg-2) ... 1099s Selecting previously unselected package libdeflate0:ppc64el. 1099s Preparing to unpack .../017-libdeflate0_1.23-1_ppc64el.deb ... 1099s Unpacking libdeflate0:ppc64el (1.23-1) ... 1099s Selecting previously unselected package libjbig0:ppc64el. 1099s Preparing to unpack .../018-libjbig0_2.1-6.1ubuntu2_ppc64el.deb ... 1099s Unpacking libjbig0:ppc64el (2.1-6.1ubuntu2) ... 1099s Selecting previously unselected package liblerc4:ppc64el. 1099s Preparing to unpack .../019-liblerc4_4.0.0+ds-5ubuntu1_ppc64el.deb ... 1099s Unpacking liblerc4:ppc64el (4.0.0+ds-5ubuntu1) ... 1099s Selecting previously unselected package libsharpyuv0:ppc64el. 1099s Preparing to unpack .../020-libsharpyuv0_1.5.0-0.1_ppc64el.deb ... 1099s Unpacking libsharpyuv0:ppc64el (1.5.0-0.1) ... 1099s Selecting previously unselected package libwebp7:ppc64el. 1099s Preparing to unpack .../021-libwebp7_1.5.0-0.1_ppc64el.deb ... 1099s Unpacking libwebp7:ppc64el (1.5.0-0.1) ... 1099s Selecting previously unselected package libtiff6:ppc64el. 1099s Preparing to unpack .../022-libtiff6_4.5.1+git230720-4ubuntu4_ppc64el.deb ... 1099s Unpacking libtiff6:ppc64el (4.5.1+git230720-4ubuntu4) ... 1099s Selecting previously unselected package libgdk-pixbuf-2.0-0:ppc64el. 1099s Preparing to unpack .../023-libgdk-pixbuf-2.0-0_2.42.12+dfsg-2_ppc64el.deb ... 1099s Unpacking libgdk-pixbuf-2.0-0:ppc64el (2.42.12+dfsg-2) ... 1099s Selecting previously unselected package gtk-update-icon-cache. 1099s Preparing to unpack .../024-gtk-update-icon-cache_4.18.4+ds-1_ppc64el.deb ... 1099s No diversion 'diversion of /usr/sbin/update-icon-caches to /usr/sbin/update-icon-caches.gtk2 by libgtk-3-bin', none removed. 1099s 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. 1099s Unpacking gtk-update-icon-cache (4.18.4+ds-1) ... 1099s Selecting previously unselected package hicolor-icon-theme. 1099s Preparing to unpack .../025-hicolor-icon-theme_0.18-2_all.deb ... 1099s Unpacking hicolor-icon-theme (0.18-2) ... 1099s Selecting previously unselected package adwaita-icon-theme. 1099s Preparing to unpack .../026-adwaita-icon-theme_48.0-1_all.deb ... 1099s Unpacking adwaita-icon-theme (48.0-1) ... 1099s Selecting previously unselected package at-spi2-common. 1099s Preparing to unpack .../027-at-spi2-common_2.56.1-1_all.deb ... 1099s Unpacking at-spi2-common (2.56.1-1) ... 1099s Selecting previously unselected package libatk1.0-0t64:ppc64el. 1099s Preparing to unpack .../028-libatk1.0-0t64_2.56.1-1_ppc64el.deb ... 1099s Unpacking libatk1.0-0t64:ppc64el (2.56.1-1) ... 1099s Selecting previously unselected package libxi6:ppc64el. 1099s Preparing to unpack .../029-libxi6_2%3a1.8.2-1_ppc64el.deb ... 1099s Unpacking libxi6:ppc64el (2:1.8.2-1) ... 1099s Selecting previously unselected package libatspi2.0-0t64:ppc64el. 1099s Preparing to unpack .../030-libatspi2.0-0t64_2.56.1-1_ppc64el.deb ... 1099s Unpacking libatspi2.0-0t64:ppc64el (2.56.1-1) ... 1099s Selecting previously unselected package libatk-bridge2.0-0t64:ppc64el. 1099s Preparing to unpack .../031-libatk-bridge2.0-0t64_2.56.1-1_ppc64el.deb ... 1099s Unpacking libatk-bridge2.0-0t64:ppc64el (2.56.1-1) ... 1099s Selecting previously unselected package fonts-dejavu-mono. 1099s Preparing to unpack .../032-fonts-dejavu-mono_2.37-8_all.deb ... 1099s Unpacking fonts-dejavu-mono (2.37-8) ... 1099s Selecting previously unselected package fonts-dejavu-core. 1099s Preparing to unpack .../033-fonts-dejavu-core_2.37-8_all.deb ... 1099s Unpacking fonts-dejavu-core (2.37-8) ... 1099s Selecting previously unselected package fontconfig-config. 1099s Preparing to unpack .../034-fontconfig-config_2.15.0-2.2ubuntu1_ppc64el.deb ... 1099s Unpacking fontconfig-config (2.15.0-2.2ubuntu1) ... 1099s Selecting previously unselected package libfontconfig1:ppc64el. 1099s Preparing to unpack .../035-libfontconfig1_2.15.0-2.2ubuntu1_ppc64el.deb ... 1099s Unpacking libfontconfig1:ppc64el (2.15.0-2.2ubuntu1) ... 1099s Selecting previously unselected package libpixman-1-0:ppc64el. 1099s Preparing to unpack .../036-libpixman-1-0_0.44.0-3_ppc64el.deb ... 1099s Unpacking libpixman-1-0:ppc64el (0.44.0-3) ... 1099s Selecting previously unselected package libxcb-render0:ppc64el. 1099s Preparing to unpack .../037-libxcb-render0_1.17.0-2_ppc64el.deb ... 1099s Unpacking libxcb-render0:ppc64el (1.17.0-2) ... 1099s Selecting previously unselected package libxcb-shm0:ppc64el. 1099s Preparing to unpack .../038-libxcb-shm0_1.17.0-2_ppc64el.deb ... 1099s Unpacking libxcb-shm0:ppc64el (1.17.0-2) ... 1099s Selecting previously unselected package libxrender1:ppc64el. 1099s Preparing to unpack .../039-libxrender1_1%3a0.9.10-1.1build1_ppc64el.deb ... 1099s Unpacking libxrender1:ppc64el (1:0.9.10-1.1build1) ... 1099s Selecting previously unselected package libcairo2:ppc64el. 1099s Preparing to unpack .../040-libcairo2_1.18.4-1_ppc64el.deb ... 1099s Unpacking libcairo2:ppc64el (1.18.4-1) ... 1099s Selecting previously unselected package libcairo-gobject2:ppc64el. 1099s Preparing to unpack .../041-libcairo-gobject2_1.18.4-1_ppc64el.deb ... 1099s Unpacking libcairo-gobject2:ppc64el (1.18.4-1) ... 1100s Selecting previously unselected package libcolord2:ppc64el. 1100s Preparing to unpack .../042-libcolord2_1.4.7-3_ppc64el.deb ... 1100s Unpacking libcolord2:ppc64el (1.4.7-3) ... 1100s Selecting previously unselected package libavahi-common-data:ppc64el. 1100s Preparing to unpack .../043-libavahi-common-data_0.8-16ubuntu2_ppc64el.deb ... 1100s Unpacking libavahi-common-data:ppc64el (0.8-16ubuntu2) ... 1100s Selecting previously unselected package libavahi-common3:ppc64el. 1100s Preparing to unpack .../044-libavahi-common3_0.8-16ubuntu2_ppc64el.deb ... 1100s Unpacking libavahi-common3:ppc64el (0.8-16ubuntu2) ... 1100s Selecting previously unselected package libavahi-client3:ppc64el. 1100s Preparing to unpack .../045-libavahi-client3_0.8-16ubuntu2_ppc64el.deb ... 1100s Unpacking libavahi-client3:ppc64el (0.8-16ubuntu2) ... 1100s Selecting previously unselected package libcups2t64:ppc64el. 1100s Preparing to unpack .../046-libcups2t64_2.4.12-0ubuntu1_ppc64el.deb ... 1100s Unpacking libcups2t64:ppc64el (2.4.12-0ubuntu1) ... 1100s Selecting previously unselected package libepoxy0:ppc64el. 1100s Preparing to unpack .../047-libepoxy0_1.5.10-2_ppc64el.deb ... 1100s Unpacking libepoxy0:ppc64el (1.5.10-2) ... 1100s Selecting previously unselected package libgraphite2-3:ppc64el. 1100s Preparing to unpack .../048-libgraphite2-3_1.3.14-2ubuntu1_ppc64el.deb ... 1100s Unpacking libgraphite2-3:ppc64el (1.3.14-2ubuntu1) ... 1100s Selecting previously unselected package libharfbuzz0b:ppc64el. 1100s Preparing to unpack .../049-libharfbuzz0b_10.2.0-1_ppc64el.deb ... 1100s Unpacking libharfbuzz0b:ppc64el (10.2.0-1) ... 1100s Selecting previously unselected package fontconfig. 1100s Preparing to unpack .../050-fontconfig_2.15.0-2.2ubuntu1_ppc64el.deb ... 1100s Unpacking fontconfig (2.15.0-2.2ubuntu1) ... 1100s Selecting previously unselected package libthai-data. 1100s Preparing to unpack .../051-libthai-data_0.1.29-2build1_all.deb ... 1100s Unpacking libthai-data (0.1.29-2build1) ... 1100s Selecting previously unselected package libdatrie1:ppc64el. 1100s Preparing to unpack .../052-libdatrie1_0.2.13-3build1_ppc64el.deb ... 1100s Unpacking libdatrie1:ppc64el (0.2.13-3build1) ... 1100s Selecting previously unselected package libthai0:ppc64el. 1100s Preparing to unpack .../053-libthai0_0.1.29-2build1_ppc64el.deb ... 1100s Unpacking libthai0:ppc64el (0.1.29-2build1) ... 1100s Selecting previously unselected package libpango-1.0-0:ppc64el. 1100s Preparing to unpack .../054-libpango-1.0-0_1.56.3-1_ppc64el.deb ... 1100s Unpacking libpango-1.0-0:ppc64el (1.56.3-1) ... 1100s Selecting previously unselected package libpangoft2-1.0-0:ppc64el. 1100s Preparing to unpack .../055-libpangoft2-1.0-0_1.56.3-1_ppc64el.deb ... 1100s Unpacking libpangoft2-1.0-0:ppc64el (1.56.3-1) ... 1100s Selecting previously unselected package libpangocairo-1.0-0:ppc64el. 1100s Preparing to unpack .../056-libpangocairo-1.0-0_1.56.3-1_ppc64el.deb ... 1100s Unpacking libpangocairo-1.0-0:ppc64el (1.56.3-1) ... 1100s Selecting previously unselected package libwayland-client0:ppc64el. 1100s Preparing to unpack .../057-libwayland-client0_1.23.1-3_ppc64el.deb ... 1100s Unpacking libwayland-client0:ppc64el (1.23.1-3) ... 1100s Selecting previously unselected package libwayland-cursor0:ppc64el. 1100s Preparing to unpack .../058-libwayland-cursor0_1.23.1-3_ppc64el.deb ... 1100s Unpacking libwayland-cursor0:ppc64el (1.23.1-3) ... 1100s Selecting previously unselected package libwayland-egl1:ppc64el. 1100s Preparing to unpack .../059-libwayland-egl1_1.23.1-3_ppc64el.deb ... 1100s Unpacking libwayland-egl1:ppc64el (1.23.1-3) ... 1100s Selecting previously unselected package libxcomposite1:ppc64el. 1100s Preparing to unpack .../060-libxcomposite1_1%3a0.4.6-1_ppc64el.deb ... 1100s Unpacking libxcomposite1:ppc64el (1:0.4.6-1) ... 1100s Selecting previously unselected package libxfixes3:ppc64el. 1100s Preparing to unpack .../061-libxfixes3_1%3a6.0.0-2build1_ppc64el.deb ... 1100s Unpacking libxfixes3:ppc64el (1:6.0.0-2build1) ... 1100s Selecting previously unselected package libxcursor1:ppc64el. 1100s Preparing to unpack .../062-libxcursor1_1%3a1.2.3-1_ppc64el.deb ... 1100s Unpacking libxcursor1:ppc64el (1:1.2.3-1) ... 1100s Selecting previously unselected package libxdamage1:ppc64el. 1100s Preparing to unpack .../063-libxdamage1_1%3a1.1.6-1build1_ppc64el.deb ... 1100s Unpacking libxdamage1:ppc64el (1:1.1.6-1build1) ... 1100s Selecting previously unselected package libxinerama1:ppc64el. 1100s Preparing to unpack .../064-libxinerama1_2%3a1.1.4-3build1_ppc64el.deb ... 1100s Unpacking libxinerama1:ppc64el (2:1.1.4-3build1) ... 1100s Selecting previously unselected package libxrandr2:ppc64el. 1100s Preparing to unpack .../065-libxrandr2_2%3a1.5.4-1_ppc64el.deb ... 1100s Unpacking libxrandr2:ppc64el (2:1.5.4-1) ... 1100s Selecting previously unselected package libdconf1:ppc64el. 1100s Preparing to unpack .../066-libdconf1_0.40.0-5_ppc64el.deb ... 1100s Unpacking libdconf1:ppc64el (0.40.0-5) ... 1100s Selecting previously unselected package dconf-service. 1100s Preparing to unpack .../067-dconf-service_0.40.0-5_ppc64el.deb ... 1100s Unpacking dconf-service (0.40.0-5) ... 1100s Selecting previously unselected package dconf-gsettings-backend:ppc64el. 1100s Preparing to unpack .../068-dconf-gsettings-backend_0.40.0-5_ppc64el.deb ... 1100s Unpacking dconf-gsettings-backend:ppc64el (0.40.0-5) ... 1100s Selecting previously unselected package libgtk-3-common. 1100s Preparing to unpack .../069-libgtk-3-common_3.24.49-2ubuntu1_all.deb ... 1100s Unpacking libgtk-3-common (3.24.49-2ubuntu1) ... 1100s Selecting previously unselected package libgtk-3-0t64:ppc64el. 1100s Preparing to unpack .../070-libgtk-3-0t64_3.24.49-2ubuntu1_ppc64el.deb ... 1100s Unpacking libgtk-3-0t64:ppc64el (3.24.49-2ubuntu1) ... 1100s Selecting previously unselected package libglvnd0:ppc64el. 1100s Preparing to unpack .../071-libglvnd0_1.7.0-1build1_ppc64el.deb ... 1100s Unpacking libglvnd0:ppc64el (1.7.0-1build1) ... 1100s Selecting previously unselected package libx11-xcb1:ppc64el. 1100s Preparing to unpack .../072-libx11-xcb1_2%3a1.8.10-2_ppc64el.deb ... 1100s Unpacking libx11-xcb1:ppc64el (2:1.8.10-2) ... 1100s Selecting previously unselected package libxcb-dri3-0:ppc64el. 1100s Preparing to unpack .../073-libxcb-dri3-0_1.17.0-2_ppc64el.deb ... 1100s Unpacking libxcb-dri3-0:ppc64el (1.17.0-2) ... 1100s Selecting previously unselected package libxcb-glx0:ppc64el. 1100s Preparing to unpack .../074-libxcb-glx0_1.17.0-2_ppc64el.deb ... 1100s Unpacking libxcb-glx0:ppc64el (1.17.0-2) ... 1100s Selecting previously unselected package libxcb-present0:ppc64el. 1100s Preparing to unpack .../075-libxcb-present0_1.17.0-2_ppc64el.deb ... 1100s Unpacking libxcb-present0:ppc64el (1.17.0-2) ... 1100s Selecting previously unselected package libxcb-xfixes0:ppc64el. 1100s Preparing to unpack .../076-libxcb-xfixes0_1.17.0-2_ppc64el.deb ... 1100s Unpacking libxcb-xfixes0:ppc64el (1.17.0-2) ... 1100s Selecting previously unselected package libxxf86vm1:ppc64el. 1100s Preparing to unpack .../077-libxxf86vm1_1%3a1.1.4-1build4_ppc64el.deb ... 1100s Unpacking libxxf86vm1:ppc64el (1:1.1.4-1build4) ... 1100s Selecting previously unselected package libxcb-randr0:ppc64el. 1100s Preparing to unpack .../078-libxcb-randr0_1.17.0-2_ppc64el.deb ... 1100s Unpacking libxcb-randr0:ppc64el (1.17.0-2) ... 1100s Selecting previously unselected package libxcb-sync1:ppc64el. 1100s Preparing to unpack .../079-libxcb-sync1_1.17.0-2_ppc64el.deb ... 1100s Unpacking libxcb-sync1:ppc64el (1.17.0-2) ... 1100s Selecting previously unselected package libxshmfence1:ppc64el. 1100s Preparing to unpack .../080-libxshmfence1_1.3-1build5_ppc64el.deb ... 1100s Unpacking libxshmfence1:ppc64el (1.3-1build5) ... 1100s Selecting previously unselected package mesa-libgallium:ppc64el. 1100s Preparing to unpack .../081-mesa-libgallium_25.0.3-1ubuntu2_ppc64el.deb ... 1100s Unpacking mesa-libgallium:ppc64el (25.0.3-1ubuntu2) ... 1101s Selecting previously unselected package libwayland-server0:ppc64el. 1101s Preparing to unpack .../082-libwayland-server0_1.23.1-3_ppc64el.deb ... 1101s Unpacking libwayland-server0:ppc64el (1.23.1-3) ... 1101s Selecting previously unselected package libgbm1:ppc64el. 1101s Preparing to unpack .../083-libgbm1_25.0.3-1ubuntu2_ppc64el.deb ... 1101s Unpacking libgbm1:ppc64el (25.0.3-1ubuntu2) ... 1101s Selecting previously unselected package libvulkan1:ppc64el. 1101s Preparing to unpack .../084-libvulkan1_1.4.304.0-1_ppc64el.deb ... 1101s Unpacking libvulkan1:ppc64el (1.4.304.0-1) ... 1101s Selecting previously unselected package libgl1-mesa-dri:ppc64el. 1101s Preparing to unpack .../085-libgl1-mesa-dri_25.0.3-1ubuntu2_ppc64el.deb ... 1101s Unpacking libgl1-mesa-dri:ppc64el (25.0.3-1ubuntu2) ... 1101s Selecting previously unselected package libglx-mesa0:ppc64el. 1101s Preparing to unpack .../086-libglx-mesa0_25.0.3-1ubuntu2_ppc64el.deb ... 1101s Unpacking libglx-mesa0:ppc64el (25.0.3-1ubuntu2) ... 1101s Selecting previously unselected package libglx0:ppc64el. 1101s Preparing to unpack .../087-libglx0_1.7.0-1build1_ppc64el.deb ... 1101s Unpacking libglx0:ppc64el (1.7.0-1build1) ... 1101s Selecting previously unselected package libgl1:ppc64el. 1101s Preparing to unpack .../088-libgl1_1.7.0-1build1_ppc64el.deb ... 1101s Unpacking libgl1:ppc64el (1.7.0-1build1) ... 1101s Selecting previously unselected package libasound2-data. 1101s Preparing to unpack .../089-libasound2-data_1.2.13-1build1_all.deb ... 1101s Unpacking libasound2-data (1.2.13-1build1) ... 1101s Selecting previously unselected package libasound2t64:ppc64el. 1101s Preparing to unpack .../090-libasound2t64_1.2.13-1build1_ppc64el.deb ... 1101s Unpacking libasound2t64:ppc64el (1.2.13-1build1) ... 1101s Selecting previously unselected package libgif7:ppc64el. 1101s Preparing to unpack .../091-libgif7_5.2.2-1ubuntu2_ppc64el.deb ... 1101s Unpacking libgif7:ppc64el (5.2.2-1ubuntu2) ... 1101s Selecting previously unselected package x11-common. 1101s Preparing to unpack .../092-x11-common_1%3a7.7+23ubuntu4_all.deb ... 1101s Unpacking x11-common (1:7.7+23ubuntu4) ... 1101s Selecting previously unselected package libxtst6:ppc64el. 1101s Preparing to unpack .../093-libxtst6_2%3a1.2.5-1_ppc64el.deb ... 1101s Unpacking libxtst6:ppc64el (2:1.2.5-1) ... 1101s Selecting previously unselected package openjdk-21-jre:ppc64el. 1101s Preparing to unpack .../094-openjdk-21-jre_21.0.7~8ea-1_ppc64el.deb ... 1101s Unpacking openjdk-21-jre:ppc64el (21.0.7~8ea-1) ... 1101s Selecting previously unselected package default-jre. 1101s Preparing to unpack .../095-default-jre_2%3a1.21-76_ppc64el.deb ... 1101s Unpacking default-jre (2:1.21-76) ... 1101s Selecting previously unselected package libhamcrest-java. 1101s Preparing to unpack .../096-libhamcrest-java_2.2-2_all.deb ... 1101s Unpacking libhamcrest-java (2.2-2) ... 1101s Selecting previously unselected package junit4. 1101s Preparing to unpack .../097-junit4_4.13.2-5_all.deb ... 1101s Unpacking junit4 (4.13.2-5) ... 1101s Selecting previously unselected package libcommons-cli-java. 1101s Preparing to unpack .../098-libcommons-cli-java_1.6.0-1_all.deb ... 1101s Unpacking libcommons-cli-java (1.6.0-1) ... 1101s Selecting previously unselected package libapache-pom-java. 1101s Preparing to unpack .../099-libapache-pom-java_33-2_all.deb ... 1101s Unpacking libapache-pom-java (33-2) ... 1101s Selecting previously unselected package libcommons-parent-java. 1101s Preparing to unpack .../100-libcommons-parent-java_56-1_all.deb ... 1101s Unpacking libcommons-parent-java (56-1) ... 1101s Selecting previously unselected package libcommons-io-java. 1101s Preparing to unpack .../101-libcommons-io-java_2.18.0-1_all.deb ... 1101s Unpacking libcommons-io-java (2.18.0-1) ... 1101s Selecting previously unselected package libdropwizard-metrics-java. 1101s Preparing to unpack .../102-libdropwizard-metrics-java_3.2.6-1_all.deb ... 1101s Unpacking libdropwizard-metrics-java (3.2.6-1) ... 1101s Selecting previously unselected package libfindbugs-annotations-java. 1101s Preparing to unpack .../103-libfindbugs-annotations-java_3.1.0~preview2-4_all.deb ... 1101s Unpacking libfindbugs-annotations-java (3.1.0~preview2-4) ... 1101s Selecting previously unselected package libatinject-jsr330-api-java. 1101s Preparing to unpack .../104-libatinject-jsr330-api-java_1.0+ds1-6_all.deb ... 1101s Unpacking libatinject-jsr330-api-java (1.0+ds1-6) ... 1101s Selecting previously unselected package liberror-prone-java. 1101s Preparing to unpack .../105-liberror-prone-java_2.18.0-1_all.deb ... 1101s Unpacking liberror-prone-java (2.18.0-1) ... 1101s Selecting previously unselected package libjsr305-java. 1101s Preparing to unpack .../106-libjsr305-java_0.1~+svn49-12_all.deb ... 1101s Unpacking libjsr305-java (0.1~+svn49-12) ... 1101s Selecting previously unselected package libguava-java. 1101s Preparing to unpack .../107-libguava-java_32.0.1-1_all.deb ... 1101s Unpacking libguava-java (32.0.1-1) ... 1101s Selecting previously unselected package libjackson2-annotations-java. 1101s Preparing to unpack .../108-libjackson2-annotations-java_2.14.0-1_all.deb ... 1101s Unpacking libjackson2-annotations-java (2.14.0-1) ... 1101s Selecting previously unselected package libjackson2-core-java. 1101s Preparing to unpack .../109-libjackson2-core-java_2.14.1-1_all.deb ... 1101s Unpacking libjackson2-core-java (2.14.1-1) ... 1101s Selecting previously unselected package libjackson2-databind-java. 1101s Preparing to unpack .../110-libjackson2-databind-java_2.14.0+ds-1_all.deb ... 1101s Unpacking libjackson2-databind-java (2.14.0+ds-1) ... 1101s Selecting previously unselected package libasm-java. 1101s Preparing to unpack .../111-libasm-java_9.7.1-1_all.deb ... 1101s Unpacking libasm-java (9.7.1-1) ... 1101s Selecting previously unselected package libel-api-java. 1101s Preparing to unpack .../112-libel-api-java_3.0.0-3_all.deb ... 1101s Unpacking libel-api-java (3.0.0-3) ... 1102s Selecting previously unselected package libjsp-api-java. 1102s Preparing to unpack .../113-libjsp-api-java_2.3.4-3_all.deb ... 1102s Unpacking libjsp-api-java (2.3.4-3) ... 1102s Selecting previously unselected package libservlet-api-java. 1102s Preparing to unpack .../114-libservlet-api-java_4.0.1-2_all.deb ... 1102s Unpacking libservlet-api-java (4.0.1-2) ... 1102s Selecting previously unselected package libwebsocket-api-java. 1102s Preparing to unpack .../115-libwebsocket-api-java_1.1-2_all.deb ... 1102s Unpacking libwebsocket-api-java (1.1-2) ... 1102s Selecting previously unselected package libjetty9-java. 1102s Preparing to unpack .../116-libjetty9-java_9.4.56-1_all.deb ... 1102s Unpacking libjetty9-java (9.4.56-1) ... 1102s Selecting previously unselected package libjnr-constants-java. 1102s Preparing to unpack .../117-libjnr-constants-java_0.10.4-2_all.deb ... 1102s Unpacking libjnr-constants-java (0.10.4-2) ... 1102s Selecting previously unselected package libjffi-jni:ppc64el. 1102s Preparing to unpack .../118-libjffi-jni_1.3.13+ds-1_ppc64el.deb ... 1102s Unpacking libjffi-jni:ppc64el (1.3.13+ds-1) ... 1102s Selecting previously unselected package libjffi-java. 1102s Preparing to unpack .../119-libjffi-java_1.3.13+ds-1_all.deb ... 1102s Unpacking libjffi-java (1.3.13+ds-1) ... 1102s Selecting previously unselected package libjnr-x86asm-java. 1102s Preparing to unpack .../120-libjnr-x86asm-java_1.0.2-6_all.deb ... 1102s Unpacking libjnr-x86asm-java (1.0.2-6) ... 1102s Selecting previously unselected package libjnr-ffi-java. 1102s Preparing to unpack .../121-libjnr-ffi-java_2.2.15-2_all.deb ... 1102s Unpacking libjnr-ffi-java (2.2.15-2) ... 1102s Selecting previously unselected package libjnr-enxio-java. 1102s Preparing to unpack .../122-libjnr-enxio-java_0.32.16-1_all.deb ... 1102s Unpacking libjnr-enxio-java (0.32.16-1) ... 1102s Selecting previously unselected package libjnr-posix-java. 1102s Preparing to unpack .../123-libjnr-posix-java_3.1.18-1_all.deb ... 1102s Unpacking libjnr-posix-java (3.1.18-1) ... 1102s Selecting previously unselected package libjnr-unixsocket-java. 1102s Preparing to unpack .../124-libjnr-unixsocket-java_0.38.21-2_all.deb ... 1102s Unpacking libjnr-unixsocket-java (0.38.21-2) ... 1102s Selecting previously unselected package libactivation-java. 1102s Preparing to unpack .../125-libactivation-java_1.2.0-2_all.deb ... 1102s Unpacking libactivation-java (1.2.0-2) ... 1102s Selecting previously unselected package libmail-java. 1102s Preparing to unpack .../126-libmail-java_1.6.5-3_all.deb ... 1102s Unpacking libmail-java (1.6.5-3) ... 1102s Selecting previously unselected package libcommons-logging-java. 1102s Preparing to unpack .../127-libcommons-logging-java_1.3.0-1ubuntu1_all.deb ... 1102s Unpacking libcommons-logging-java (1.3.0-1ubuntu1) ... 1102s Selecting previously unselected package libjaxb-api-java. 1102s Preparing to unpack .../128-libjaxb-api-java_2.3.1-1_all.deb ... 1102s Unpacking libjaxb-api-java (2.3.1-1) ... 1102s Selecting previously unselected package libspring-core-java. 1102s Preparing to unpack .../129-libspring-core-java_4.3.30-2ubuntu1_all.deb ... 1102s Unpacking libspring-core-java (4.3.30-2ubuntu1) ... 1102s Selecting previously unselected package libspring-beans-java. 1102s Preparing to unpack .../130-libspring-beans-java_4.3.30-2ubuntu1_all.deb ... 1102s Unpacking libspring-beans-java (4.3.30-2ubuntu1) ... 1102s Selecting previously unselected package libtaglibs-standard-spec-java. 1102s Preparing to unpack .../131-libtaglibs-standard-spec-java_1.2.5-3_all.deb ... 1102s Unpacking libtaglibs-standard-spec-java (1.2.5-3) ... 1102s Selecting previously unselected package libtaglibs-standard-impl-java. 1102s Preparing to unpack .../132-libtaglibs-standard-impl-java_1.2.5-3_all.deb ... 1102s Unpacking libtaglibs-standard-impl-java (1.2.5-3) ... 1102s Selecting previously unselected package libeclipse-jdt-core-compiler-batch-java. 1102s Preparing to unpack .../133-libeclipse-jdt-core-compiler-batch-java_3.35.0+eclipse4.29-2_all.deb ... 1102s Unpacking libeclipse-jdt-core-compiler-batch-java (3.35.0+eclipse4.29-2) ... 1102s Selecting previously unselected package libeclipse-jdt-core-java. 1102s Preparing to unpack .../134-libeclipse-jdt-core-java_3.35.0+eclipse4.29-2_all.deb ... 1102s Unpacking libeclipse-jdt-core-java (3.35.0+eclipse4.29-2) ... 1102s Selecting previously unselected package libtomcat9-java. 1102s Preparing to unpack .../135-libtomcat9-java_9.0.70-2ubuntu1.1_all.deb ... 1102s Unpacking libtomcat9-java (9.0.70-2ubuntu1.1) ... 1102s Selecting previously unselected package libjetty9-extra-java. 1102s Preparing to unpack .../136-libjetty9-extra-java_9.4.56-1_all.deb ... 1102s Unpacking libjetty9-extra-java (9.4.56-1) ... 1102s Selecting previously unselected package libjavaparser-java. 1102s Preparing to unpack .../137-libjavaparser-java_3.26.1-1_all.deb ... 1102s Unpacking libjavaparser-java (3.26.1-1) ... 1102s Selecting previously unselected package libjctools-java. 1102s Preparing to unpack .../138-libjctools-java_4.0.5+dfsg-1_all.deb ... 1102s Unpacking libjctools-java (4.0.5+dfsg-1) ... 1102s Selecting previously unselected package libnetty-java. 1102s Preparing to unpack .../139-libnetty-java_1%3a4.1.48-10_all.deb ... 1102s Unpacking libnetty-java (1:4.1.48-10) ... 1102s Selecting previously unselected package libslf4j-java. 1102s Preparing to unpack .../140-libslf4j-java_1.7.32-1_all.deb ... 1102s Unpacking libslf4j-java (1.7.32-1) ... 1102s Selecting previously unselected package libsnappy1v5:ppc64el. 1102s Preparing to unpack .../141-libsnappy1v5_1.2.1-1_ppc64el.deb ... 1102s Unpacking libsnappy1v5:ppc64el (1.2.1-1) ... 1102s Selecting previously unselected package libsnappy-jni. 1102s Preparing to unpack .../142-libsnappy-jni_1.1.10.7-1_ppc64el.deb ... 1102s Unpacking libsnappy-jni (1.1.10.7-1) ... 1102s Selecting previously unselected package libsnappy-java. 1102s Preparing to unpack .../143-libsnappy-java_1.1.10.7-1_all.deb ... 1102s Unpacking libsnappy-java (1.1.10.7-1) ... 1102s Selecting previously unselected package libapr1t64:ppc64el. 1102s Preparing to unpack .../144-libapr1t64_1.7.5-1_ppc64el.deb ... 1102s Unpacking libapr1t64:ppc64el (1.7.5-1) ... 1103s Selecting previously unselected package libnetty-tcnative-jni. 1103s Preparing to unpack .../145-libnetty-tcnative-jni_2.0.28-1build4_ppc64el.deb ... 1103s Unpacking libnetty-tcnative-jni (2.0.28-1build4) ... 1103s Selecting previously unselected package libnetty-tcnative-java. 1103s Preparing to unpack .../146-libnetty-tcnative-java_2.0.28-1build4_all.deb ... 1103s Unpacking libnetty-tcnative-java (2.0.28-1build4) ... 1103s Selecting previously unselected package liblog4j1.2-java. 1103s Preparing to unpack .../147-liblog4j1.2-java_1.2.17-11_all.deb ... 1103s Unpacking liblog4j1.2-java (1.2.17-11) ... 1103s Selecting previously unselected package libzookeeper-java. 1103s Preparing to unpack .../148-libzookeeper-java_3.9.3-1build1_all.deb ... 1103s Unpacking libzookeeper-java (3.9.3-1build1) ... 1103s Selecting previously unselected package zookeeper. 1103s Preparing to unpack .../149-zookeeper_3.9.3-1build1_all.deb ... 1103s Unpacking zookeeper (3.9.3-1build1) ... 1103s Selecting previously unselected package zookeeperd. 1103s Preparing to unpack .../150-zookeeperd_3.9.3-1build1_all.deb ... 1103s Unpacking zookeeperd (3.9.3-1build1) ... 1103s Selecting previously unselected package fonts-font-awesome. 1103s Preparing to unpack .../151-fonts-font-awesome_5.0.10+really4.7.0~dfsg-4.1_all.deb ... 1103s Unpacking fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ... 1103s Selecting previously unselected package libcares2:ppc64el. 1103s Preparing to unpack .../152-libcares2_1.34.4-2.1_ppc64el.deb ... 1103s Unpacking libcares2:ppc64el (1.34.4-2.1) ... 1103s Selecting previously unselected package libev4t64:ppc64el. 1103s Preparing to unpack .../153-libev4t64_1%3a4.33-2.1build1_ppc64el.deb ... 1103s Unpacking libev4t64:ppc64el (1:4.33-2.1build1) ... 1103s Selecting previously unselected package libjs-jquery. 1103s Preparing to unpack .../154-libjs-jquery_3.6.1+dfsg+~3.5.14-1_all.deb ... 1103s Unpacking libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 1103s Selecting previously unselected package libjs-underscore. 1103s Preparing to unpack .../155-libjs-underscore_1.13.4~dfsg+~1.11.4-3_all.deb ... 1103s Unpacking libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 1103s Selecting previously unselected package libjs-sphinxdoc. 1103s Preparing to unpack .../156-libjs-sphinxdoc_8.1.3-5_all.deb ... 1103s Unpacking libjs-sphinxdoc (8.1.3-5) ... 1103s Selecting previously unselected package libllvm20:ppc64el. 1103s Preparing to unpack .../157-libllvm20_1%3a20.1.2-0ubuntu1_ppc64el.deb ... 1103s Unpacking libllvm20:ppc64el (1:20.1.2-0ubuntu1) ... 1104s Selecting previously unselected package libpq5:ppc64el. 1104s Preparing to unpack .../158-libpq5_17.4-1_ppc64el.deb ... 1104s Unpacking libpq5:ppc64el (17.4-1) ... 1104s Selecting previously unselected package libtime-duration-perl. 1104s Preparing to unpack .../159-libtime-duration-perl_1.21-2_all.deb ... 1104s Unpacking libtime-duration-perl (1.21-2) ... 1104s Selecting previously unselected package libtimedate-perl. 1104s Preparing to unpack .../160-libtimedate-perl_2.3300-2_all.deb ... 1104s Unpacking libtimedate-perl (2.3300-2) ... 1104s Selecting previously unselected package libxslt1.1:ppc64el. 1104s Preparing to unpack .../161-libxslt1.1_1.1.39-0exp1ubuntu4_ppc64el.deb ... 1104s Unpacking libxslt1.1:ppc64el (1.1.39-0exp1ubuntu4) ... 1104s Selecting previously unselected package moreutils. 1104s Preparing to unpack .../162-moreutils_0.69-1_ppc64el.deb ... 1104s Unpacking moreutils (0.69-1) ... 1104s Selecting previously unselected package python3-click. 1104s Preparing to unpack .../163-python3-click_8.2.0+0.really.8.1.8-1_all.deb ... 1104s Unpacking python3-click (8.2.0+0.really.8.1.8-1) ... 1104s Selecting previously unselected package python3-dateutil. 1104s Preparing to unpack .../164-python3-dateutil_2.9.0-4_all.deb ... 1104s Unpacking python3-dateutil (2.9.0-4) ... 1104s Selecting previously unselected package python3-wcwidth. 1104s Preparing to unpack .../165-python3-wcwidth_0.2.13+dfsg1-1_all.deb ... 1104s Unpacking python3-wcwidth (0.2.13+dfsg1-1) ... 1104s Selecting previously unselected package python3-prettytable. 1104s Preparing to unpack .../166-python3-prettytable_3.12.0-1_all.deb ... 1104s Unpacking python3-prettytable (3.12.0-1) ... 1104s Selecting previously unselected package python3-psutil. 1104s Preparing to unpack .../167-python3-psutil_5.9.8-2build3_ppc64el.deb ... 1104s Unpacking python3-psutil (5.9.8-2build3) ... 1104s Selecting previously unselected package python3-ydiff. 1104s Preparing to unpack .../168-python3-ydiff_1.4.2-1_all.deb ... 1104s Unpacking python3-ydiff (1.4.2-1) ... 1104s Selecting previously unselected package python3-psycopg2. 1104s Preparing to unpack .../169-python3-psycopg2_2.9.10-1build1_ppc64el.deb ... 1104s Unpacking python3-psycopg2 (2.9.10-1build1) ... 1104s Selecting previously unselected package python3-greenlet. 1104s Preparing to unpack .../170-python3-greenlet_3.1.0-1build1_ppc64el.deb ... 1104s Unpacking python3-greenlet (3.1.0-1build1) ... 1104s Selecting previously unselected package python3-dnspython. 1104s Preparing to unpack .../171-python3-dnspython_2.7.0-1ubuntu1_all.deb ... 1104s Unpacking python3-dnspython (2.7.0-1ubuntu1) ... 1104s Selecting previously unselected package python3-eventlet. 1104s Preparing to unpack .../172-python3-eventlet_0.39.0-0ubuntu1_all.deb ... 1104s Unpacking python3-eventlet (0.39.0-0ubuntu1) ... 1104s Selecting previously unselected package python3-zope.event. 1104s Preparing to unpack .../173-python3-zope.event_5.0-0.1_all.deb ... 1104s Unpacking python3-zope.event (5.0-0.1) ... 1104s Selecting previously unselected package python3-zope.interface. 1104s Preparing to unpack .../174-python3-zope.interface_7.2-1build1_ppc64el.deb ... 1104s Unpacking python3-zope.interface (7.2-1build1) ... 1104s Selecting previously unselected package python3-gevent. 1104s Preparing to unpack .../175-python3-gevent_24.11.1-1build1_ppc64el.deb ... 1104s Unpacking python3-gevent (24.11.1-1build1) ... 1104s Selecting previously unselected package python3-kerberos. 1104s Preparing to unpack .../176-python3-kerberos_1.1.14-3.1build11_ppc64el.deb ... 1104s Unpacking python3-kerberos (1.1.14-3.1build11) ... 1104s Selecting previously unselected package python3-pure-sasl. 1104s Preparing to unpack .../177-python3-pure-sasl_0.5.1+dfsg1-5_all.deb ... 1104s Unpacking python3-pure-sasl (0.5.1+dfsg1-5) ... 1104s Selecting previously unselected package python3-six. 1104s Preparing to unpack .../178-python3-six_1.17.0-1_all.deb ... 1104s Unpacking python3-six (1.17.0-1) ... 1104s Selecting previously unselected package python3-kazoo. 1104s Preparing to unpack .../179-python3-kazoo_2.9.0-2_all.deb ... 1104s Unpacking python3-kazoo (2.9.0-2) ... 1104s Selecting previously unselected package patroni. 1104s Preparing to unpack .../180-patroni_4.0.4-8_all.deb ... 1104s Unpacking patroni (4.0.4-8) ... 1104s Selecting previously unselected package sphinx-rtd-theme-common. 1104s Preparing to unpack .../181-sphinx-rtd-theme-common_3.0.2+dfsg-2_all.deb ... 1104s Unpacking sphinx-rtd-theme-common (3.0.2+dfsg-2) ... 1105s Selecting previously unselected package patroni-doc. 1105s Preparing to unpack .../182-patroni-doc_4.0.4-8_all.deb ... 1105s Unpacking patroni-doc (4.0.4-8) ... 1105s Selecting previously unselected package postgresql-client-17. 1105s Preparing to unpack .../183-postgresql-client-17_17.4-1_ppc64el.deb ... 1105s Unpacking postgresql-client-17 (17.4-1) ... 1105s Selecting previously unselected package postgresql-17. 1105s Preparing to unpack .../184-postgresql-17_17.4-1_ppc64el.deb ... 1105s Unpacking postgresql-17 (17.4-1) ... 1105s Selecting previously unselected package postgresql. 1105s Preparing to unpack .../185-postgresql_17+274_all.deb ... 1105s Unpacking postgresql (17+274) ... 1105s Selecting previously unselected package python3-parse. 1105s Preparing to unpack .../186-python3-parse_1.20.2-1_all.deb ... 1105s Unpacking python3-parse (1.20.2-1) ... 1105s Selecting previously unselected package python3-parse-type. 1105s Preparing to unpack .../187-python3-parse-type_0.6.4-2_all.deb ... 1105s Unpacking python3-parse-type (0.6.4-2) ... 1105s Selecting previously unselected package python3-behave. 1105s Preparing to unpack .../188-python3-behave_1.2.6-6_all.deb ... 1105s Unpacking python3-behave (1.2.6-6) ... 1105s Selecting previously unselected package python3-coverage. 1105s Preparing to unpack .../189-python3-coverage_7.6.0+dfsg1-2build1_ppc64el.deb ... 1105s Unpacking python3-coverage (7.6.0+dfsg1-2build1) ... 1105s Setting up postgresql-client-common (274) ... 1105s Setting up libgraphite2-3:ppc64el (1.3.14-2ubuntu1) ... 1105s Setting up libxcb-dri3-0:ppc64el (1.17.0-2) ... 1105s Setting up liblcms2-2:ppc64el (2.16-2) ... 1105s Setting up libtaglibs-standard-spec-java (1.2.5-3) ... 1105s Setting up libpixman-1-0:ppc64el (0.44.0-3) ... 1105s Setting up libev4t64:ppc64el (1:4.33-2.1build1) ... 1105s Setting up libjackson2-annotations-java (2.14.0-1) ... 1105s Setting up libsharpyuv0:ppc64el (1.5.0-0.1) ... 1105s Setting up libwayland-server0:ppc64el (1.23.1-3) ... 1105s Setting up libx11-xcb1:ppc64el (2:1.8.10-2) ... 1105s Setting up libslf4j-java (1.7.32-1) ... 1105s Setting up fonts-lato (2.015-1) ... 1105s Setting up libeclipse-jdt-core-compiler-batch-java (3.35.0+eclipse4.29-2) ... 1105s Setting up libxdamage1:ppc64el (1:1.1.6-1build1) ... 1105s Setting up libxcb-xfixes0:ppc64el (1.17.0-2) ... 1105s Setting up libjavaparser-java (3.26.1-1) ... 1105s Setting up liblerc4:ppc64el (4.0.0+ds-5ubuntu1) ... 1105s Setting up libjsr305-java (0.1~+svn49-12) ... 1105s Setting up hicolor-icon-theme (0.18-2) ... 1105s Setting up libxi6:ppc64el (2:1.8.2-1) ... 1105s Setting up java-common (0.76) ... 1105s Setting up libxrender1:ppc64el (1:0.9.10-1.1build1) ... 1105s Setting up libdatrie1:ppc64el (0.2.13-3build1) ... 1105s Setting up libcommons-cli-java (1.6.0-1) ... 1105s Setting up libio-pty-perl (1:1.20-1build3) ... 1105s Setting up libxcb-render0:ppc64el (1.17.0-2) ... 1105s Setting up python3-zope.event (5.0-0.1) ... 1105s Setting up python3-zope.interface (7.2-1build1) ... 1106s Setting up libglvnd0:ppc64el (1.7.0-1build1) ... 1106s Setting up libxcb-glx0:ppc64el (1.17.0-2) ... 1106s Setting up libgdk-pixbuf2.0-common (2.42.12+dfsg-2) ... 1106s Setting up python3-ydiff (1.4.2-1) ... 1106s Setting up libasm-java (9.7.1-1) ... 1106s Setting up x11-common (1:7.7+23ubuntu4) ... 1106s Setting up libpq5:ppc64el (17.4-1) ... 1106s Setting up libdeflate0:ppc64el (1.23-1) ... 1106s Setting up python3-kerberos (1.1.14-3.1build11) ... 1106s Setting up liblog4j1.2-java (1.2.17-11) ... 1106s Setting up libel-api-java (3.0.0-3) ... 1106s Setting up python3-coverage (7.6.0+dfsg1-2build1) ... 1106s Setting up libxcb-shm0:ppc64el (1.17.0-2) ... 1106s Setting up python3-click (8.2.0+0.really.8.1.8-1) ... 1107s Setting up libjnr-x86asm-java (1.0.2-6) ... 1107s Setting up libjbig0:ppc64el (2.1-6.1ubuntu2) ... 1107s Setting up libcolord2:ppc64el (1.4.7-3) ... 1107s Setting up python3-psutil (5.9.8-2build3) ... 1107s Setting up libeclipse-jdt-core-java (3.35.0+eclipse4.29-2) ... 1107s Setting up libxxf86vm1:ppc64el (1:1.1.4-1build4) ... 1107s Setting up libsnappy1v5:ppc64el (1.2.1-1) ... 1107s Setting up libxcb-present0:ppc64el (1.17.0-2) ... 1107s Setting up libtaglibs-standard-impl-java (1.2.5-3) ... 1107s Setting up libdconf1:ppc64el (0.40.0-5) ... 1107s Setting up libjctools-java (4.0.5+dfsg-1) ... 1107s Setting up libdropwizard-metrics-java (3.2.6-1) ... 1107s Setting up python3-six (1.17.0-1) ... 1107s Setting up libasound2-data (1.2.13-1build1) ... 1107s Setting up libasound2t64:ppc64el (1.2.13-1build1) ... 1107s Setting up python3-wcwidth (0.2.13+dfsg1-1) ... 1107s Setting up libfindbugs-annotations-java (3.1.0~preview2-4) ... 1107s Setting up libepoxy0:ppc64el (1.5.10-2) ... 1107s Setting up ssl-cert (1.1.3ubuntu1) ... 1108s Created symlink '/etc/systemd/system/multi-user.target.wants/ssl-cert.service' → '/usr/lib/systemd/system/ssl-cert.service'. 1108s Setting up libxfixes3:ppc64el (1:6.0.0-2build1) ... 1108s Setting up libxcb-sync1:ppc64el (1.17.0-2) ... 1108s Setting up libapache-pom-java (33-2) ... 1108s Setting up libavahi-common-data:ppc64el (0.8-16ubuntu2) ... 1108s Setting up libatinject-jsr330-api-java (1.0+ds1-6) ... 1108s Setting up libatspi2.0-0t64:ppc64el (2.56.1-1) ... 1108s Setting up libwebsocket-api-java (1.1-2) ... 1108s Setting up python3-greenlet (3.1.0-1build1) ... 1108s Setting up libxinerama1:ppc64el (2:1.1.4-3build1) ... 1108s Setting up fonts-dejavu-mono (2.37-8) ... 1108s Setting up libcares2:ppc64el (1.34.4-2.1) ... 1108s Setting up libxrandr2:ppc64el (2:1.5.4-1) ... 1108s Setting up libllvm20:ppc64el (1:20.1.2-0ubuntu1) ... 1108s Setting up python3-psycopg2 (2.9.10-1build1) ... 1108s Setting up fonts-dejavu-core (2.37-8) ... 1109s Setting up libipc-run-perl (20231003.0-2) ... 1109s Setting up libpcsclite1:ppc64el (2.3.1-1) ... 1109s Setting up libjpeg-turbo8:ppc64el (2.1.5-3ubuntu2) ... 1109s Setting up libactivation-java (1.2.0-2) ... 1109s Setting up libtomcat9-java (9.0.70-2ubuntu1.1) ... 1109s Setting up libhamcrest-java (2.2-2) ... 1109s Setting up libjsp-api-java (2.3.4-3) ... 1109s Setting up libvulkan1:ppc64el (1.4.304.0-1) ... 1109s Setting up libtime-duration-perl (1.21-2) ... 1109s Setting up libwebp7:ppc64el (1.5.0-0.1) ... 1109s Setting up libtimedate-perl (2.3300-2) ... 1109s Setting up libgif7:ppc64el (5.2.2-1ubuntu2) ... 1109s Setting up libxshmfence1:ppc64el (1.3-1build5) ... 1109s Setting up libmail-java (1.6.5-3) ... 1109s Setting up at-spi2-common (2.56.1-1) ... 1109s Setting up python3-dnspython (2.7.0-1ubuntu1) ... 1109s Setting up libnetty-java (1:4.1.48-10) ... 1109s Setting up libxcb-randr0:ppc64el (1.17.0-2) ... 1109s Setting up python3-parse (1.20.2-1) ... 1109s Setting up libapr1t64:ppc64el (1.7.5-1) ... 1109s Setting up libjson-perl (4.10000-1) ... 1109s Setting up libxslt1.1:ppc64el (1.1.39-0exp1ubuntu4) ... 1109s Setting up libservlet-api-java (4.0.1-2) ... 1109s Setting up libjackson2-core-java (2.14.1-1) ... 1109s Setting up libharfbuzz0b:ppc64el (10.2.0-1) ... 1109s Setting up libthai-data (0.1.29-2build1) ... 1109s Setting up python3-dateutil (2.9.0-4) ... 1109s Setting up libjffi-jni:ppc64el (1.3.13+ds-1) ... 1109s Setting up libwayland-egl1:ppc64el (1.23.1-3) ... 1109s Setting up libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 1109s Setting up ca-certificates-java (20240118) ... 1109s No JRE found. Skipping Java certificates setup. 1109s Setting up python3-prettytable (3.12.0-1) ... 1109s Setting up libsnappy-jni (1.1.10.7-1) ... 1109s Setting up libxcomposite1:ppc64el (1:0.4.6-1) ... 1109s Setting up fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ... 1109s Setting up sphinx-rtd-theme-common (3.0.2+dfsg-2) ... 1109s Setting up libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 1109s Setting up postgresql-common-dev (274) ... 1109s Setting up libjnr-constants-java (0.10.4-2) ... 1109s Setting up libwayland-client0:ppc64el (1.23.1-3) ... 1109s Setting up libjpeg8:ppc64el (8c-2ubuntu11) ... 1109s Setting up libjaxb-api-java (2.3.1-1) ... 1109s Setting up libjffi-java (1.3.13+ds-1) ... 1109s Setting up mesa-libgallium:ppc64el (25.0.3-1ubuntu2) ... 1109s Setting up libjetty9-java (9.4.56-1) ... 1109s Setting up moreutils (0.69-1) ... 1109s Setting up libatk1.0-0t64:ppc64el (2.56.1-1) ... 1109s Setting up openjdk-21-jre-headless:ppc64el (21.0.7~8ea-1) ... 1109s update-alternatives: using /usr/lib/jvm/java-21-openjdk-ppc64el/bin/java to provide /usr/bin/java (java) in auto mode 1109s update-alternatives: using /usr/lib/jvm/java-21-openjdk-ppc64el/bin/jpackage to provide /usr/bin/jpackage (jpackage) in auto mode 1109s update-alternatives: using /usr/lib/jvm/java-21-openjdk-ppc64el/bin/keytool to provide /usr/bin/keytool (keytool) in auto mode 1109s update-alternatives: using /usr/lib/jvm/java-21-openjdk-ppc64el/bin/rmiregistry to provide /usr/bin/rmiregistry (rmiregistry) in auto mode 1109s update-alternatives: using /usr/lib/jvm/java-21-openjdk-ppc64el/lib/jexec to provide /usr/bin/jexec (jexec) in auto mode 1109s Setting up python3-pure-sasl (0.5.1+dfsg1-5) ... 1109s Setting up libgbm1:ppc64el (25.0.3-1ubuntu2) ... 1109s Setting up postgresql-client-17 (17.4-1) ... 1110s update-alternatives: using /usr/share/postgresql/17/man/man1/psql.1.gz to provide /usr/share/man/man1/psql.1.gz (psql.1.gz) in auto mode 1110s Setting up fontconfig-config (2.15.0-2.2ubuntu1) ... 1111s Setting up libxtst6:ppc64el (2:1.2.5-1) ... 1111s Setting up libxcursor1:ppc64el (1:1.2.3-1) ... 1111s Setting up libgl1-mesa-dri:ppc64el (25.0.3-1ubuntu2) ... 1111s Setting up libcommons-parent-java (56-1) ... 1111s Setting up libavahi-common3:ppc64el (0.8-16ubuntu2) ... 1111s Setting up libcommons-logging-java (1.3.0-1ubuntu1) ... 1111s Setting up dconf-service (0.40.0-5) ... 1111s Setting up python3-gevent (24.11.1-1build1) ... 1111s Setting up libjackson2-databind-java (2.14.0+ds-1) ... 1111s Setting up libthai0:ppc64el (0.1.29-2build1) ... 1111s Setting up python3-parse-type (0.6.4-2) ... 1111s Setting up python3-eventlet (0.39.0-0ubuntu1) ... 1111s Setting up libnetty-tcnative-jni (2.0.28-1build4) ... 1111s Setting up python3-kazoo (2.9.0-2) ... 1112s Setting up postgresql-common (274) ... 1112s Creating config file /etc/postgresql-common/createcluster.conf with new version 1112s Building PostgreSQL dictionaries from installed myspell/hunspell packages... 1112s Removing obsolete dictionary files: 1113s Created symlink '/etc/systemd/system/multi-user.target.wants/postgresql.service' → '/usr/lib/systemd/system/postgresql.service'. 1113s Setting up libjs-sphinxdoc (8.1.3-5) ... 1113s Setting up libtiff6:ppc64el (4.5.1+git230720-4ubuntu4) ... 1113s Setting up libwayland-cursor0:ppc64el (1.23.1-3) ... 1113s Setting up libgdk-pixbuf-2.0-0:ppc64el (2.42.12+dfsg-2) ... 1113s Setting up python3-behave (1.2.6-6) ... 1113s /usr/lib/python3/dist-packages/behave/formatter/ansi_escapes.py:57: SyntaxWarning: invalid escape sequence '\[' 1113s _ANSI_ESCAPE_PATTERN = re.compile(u"\x1b\[\d+[mA]", re.UNICODE) 1113s /usr/lib/python3/dist-packages/behave/matchers.py:284: SyntaxWarning: invalid escape sequence '\d' 1113s @parse.with_pattern(r"\d+") 1114s Setting up libsnappy-java (1.1.10.7-1) ... 1114s Setting up libfontconfig1:ppc64el (2.15.0-2.2ubuntu1) ... 1114s Setting up patroni (4.0.4-8) ... 1114s Created symlink '/etc/systemd/system/multi-user.target.wants/patroni.service' → '/usr/lib/systemd/system/patroni.service'. 1114s Setting up libavahi-client3:ppc64el (0.8-16ubuntu2) ... 1114s Setting up libjnr-ffi-java (2.2.15-2) ... 1114s Setting up libatk-bridge2.0-0t64:ppc64el (2.56.1-1) ... 1114s Setting up gtk-update-icon-cache (4.18.4+ds-1) ... 1114s Setting up fontconfig (2.15.0-2.2ubuntu1) ... 1116s Regenerating fonts cache... done. 1116s Setting up postgresql-17 (17.4-1) ... 1117s Creating new PostgreSQL cluster 17/main ... 1117s /usr/lib/postgresql/17/bin/initdb -D /var/lib/postgresql/17/main --auth-local peer --auth-host scram-sha-256 --no-instructions 1117s The files belonging to this database system will be owned by user "postgres". 1117s This user must also own the server process. 1117s 1117s The database cluster will be initialized with locale "C.UTF-8". 1117s The default database encoding has accordingly been set to "UTF8". 1117s The default text search configuration will be set to "english". 1117s 1117s Data page checksums are disabled. 1117s 1117s fixing permissions on existing directory /var/lib/postgresql/17/main ... ok 1117s creating subdirectories ... ok 1117s selecting dynamic shared memory implementation ... posix 1117s selecting default "max_connections" ... 100 1117s selecting default "shared_buffers" ... 128MB 1117s selecting default time zone ... Etc/UTC 1117s creating configuration files ... ok 1118s running bootstrap script ... ok 1118s performing post-bootstrap initialization ... ok 1118s syncing data to disk ... ok 1121s Setting up libglx-mesa0:ppc64el (25.0.3-1ubuntu2) ... 1121s Setting up libglx0:ppc64el (1.7.0-1build1) ... 1121s Setting up libspring-core-java (4.3.30-2ubuntu1) ... 1121s Setting up dconf-gsettings-backend:ppc64el (0.40.0-5) ... 1121s Setting up libcommons-io-java (2.18.0-1) ... 1121s Setting up patroni-doc (4.0.4-8) ... 1121s Setting up libpango-1.0-0:ppc64el (1.56.3-1) ... 1121s Setting up libcairo2:ppc64el (1.18.4-1) ... 1121s Setting up libjnr-enxio-java (0.32.16-1) ... 1121s Setting up libgl1:ppc64el (1.7.0-1build1) ... 1121s Setting up adwaita-icon-theme (48.0-1) ... 1121s update-alternatives: using /usr/share/icons/Adwaita/cursor.theme to provide /usr/share/icons/default/index.theme (x-cursor-theme) in auto mode 1121s Setting up libcairo-gobject2:ppc64el (1.18.4-1) ... 1121s Setting up postgresql (17+274) ... 1121s Setting up libpangoft2-1.0-0:ppc64el (1.56.3-1) ... 1121s Setting up libcups2t64:ppc64el (2.4.12-0ubuntu1) ... 1121s Setting up libgtk-3-common (3.24.49-2ubuntu1) ... 1121s Setting up libjnr-posix-java (3.1.18-1) ... 1121s Setting up libpangocairo-1.0-0:ppc64el (1.56.3-1) ... 1121s Setting up libspring-beans-java (4.3.30-2ubuntu1) ... 1121s Setting up libjnr-unixsocket-java (0.38.21-2) ... 1121s Setting up libjetty9-extra-java (9.4.56-1) ... 1121s Setting up libguava-java (32.0.1-1) ... 1121s Setting up liberror-prone-java (2.18.0-1) ... 1121s Processing triggers for libc-bin (2.41-6ubuntu1) ... 1122s Processing triggers for man-db (2.13.0-1) ... 1125s Processing triggers for libglib2.0-0t64:ppc64el (2.84.1-1) ... 1125s Setting up libgtk-3-0t64:ppc64el (3.24.49-2ubuntu1) ... 1125s Processing triggers for ca-certificates-java (20240118) ... 1125s Adding debian:ACCVRAIZ1.pem 1125s Adding debian:AC_RAIZ_FNMT-RCM.pem 1125s Adding debian:AC_RAIZ_FNMT-RCM_SERVIDORES_SEGUROS.pem 1125s Adding debian:ANF_Secure_Server_Root_CA.pem 1125s Adding debian:Actalis_Authentication_Root_CA.pem 1125s Adding debian:AffirmTrust_Commercial.pem 1125s Adding debian:AffirmTrust_Networking.pem 1125s Adding debian:AffirmTrust_Premium.pem 1125s Adding debian:AffirmTrust_Premium_ECC.pem 1125s Adding debian:Amazon_Root_CA_1.pem 1125s Adding debian:Amazon_Root_CA_2.pem 1125s Adding debian:Amazon_Root_CA_3.pem 1125s Adding debian:Amazon_Root_CA_4.pem 1125s Adding debian:Atos_TrustedRoot_2011.pem 1125s Adding debian:Atos_TrustedRoot_Root_CA_ECC_TLS_2021.pem 1125s Adding debian:Atos_TrustedRoot_Root_CA_RSA_TLS_2021.pem 1125s Adding debian:Autoridad_de_Certificacion_Firmaprofesional_CIF_A62634068.pem 1125s Adding debian:BJCA_Global_Root_CA1.pem 1125s Adding debian:BJCA_Global_Root_CA2.pem 1125s Adding debian:Baltimore_CyberTrust_Root.pem 1125s Adding debian:Buypass_Class_2_Root_CA.pem 1125s Adding debian:Buypass_Class_3_Root_CA.pem 1125s Adding debian:CA_Disig_Root_R2.pem 1125s Adding debian:CFCA_EV_ROOT.pem 1125s Adding debian:COMODO_Certification_Authority.pem 1125s Adding debian:COMODO_ECC_Certification_Authority.pem 1125s Adding debian:COMODO_RSA_Certification_Authority.pem 1125s Adding debian:Certainly_Root_E1.pem 1125s Adding debian:Certainly_Root_R1.pem 1125s Adding debian:Certigna.pem 1125s Adding debian:Certigna_Root_CA.pem 1125s Adding debian:Certum_EC-384_CA.pem 1125s Adding debian:Certum_Trusted_Network_CA.pem 1125s Adding debian:Certum_Trusted_Network_CA_2.pem 1125s Adding debian:Certum_Trusted_Root_CA.pem 1125s Adding debian:CommScope_Public_Trust_ECC_Root-01.pem 1125s Adding debian:CommScope_Public_Trust_ECC_Root-02.pem 1125s Adding debian:CommScope_Public_Trust_RSA_Root-01.pem 1125s Adding debian:CommScope_Public_Trust_RSA_Root-02.pem 1125s Adding debian:Comodo_AAA_Services_root.pem 1125s Adding debian:D-TRUST_BR_Root_CA_1_2020.pem 1125s Adding debian:D-TRUST_EV_Root_CA_1_2020.pem 1125s Adding debian:D-TRUST_Root_Class_3_CA_2_2009.pem 1125s Adding debian:D-TRUST_Root_Class_3_CA_2_EV_2009.pem 1125s Adding debian:DigiCert_Assured_ID_Root_CA.pem 1125s Adding debian:DigiCert_Assured_ID_Root_G2.pem 1125s Adding debian:DigiCert_Assured_ID_Root_G3.pem 1125s Adding debian:DigiCert_Global_Root_CA.pem 1125s Adding debian:DigiCert_Global_Root_G2.pem 1125s Adding debian:DigiCert_Global_Root_G3.pem 1125s Adding debian:DigiCert_High_Assurance_EV_Root_CA.pem 1125s Adding debian:DigiCert_TLS_ECC_P384_Root_G5.pem 1125s Adding debian:DigiCert_TLS_RSA4096_Root_G5.pem 1125s Adding debian:DigiCert_Trusted_Root_G4.pem 1125s Adding debian:Entrust.net_Premium_2048_Secure_Server_CA.pem 1125s Adding debian:Entrust_Root_Certification_Authority.pem 1125s Adding debian:Entrust_Root_Certification_Authority_-_EC1.pem 1125s Adding debian:Entrust_Root_Certification_Authority_-_G2.pem 1125s Adding debian:Entrust_Root_Certification_Authority_-_G4.pem 1125s Adding debian:FIRMAPROFESIONAL_CA_ROOT-A_WEB.pem 1125s Adding debian:GDCA_TrustAUTH_R5_ROOT.pem 1125s Adding debian:GLOBALTRUST_2020.pem 1125s Adding debian:GTS_Root_R1.pem 1125s Adding debian:GTS_Root_R2.pem 1125s Adding debian:GTS_Root_R3.pem 1125s Adding debian:GTS_Root_R4.pem 1125s Adding debian:GlobalSign_ECC_Root_CA_-_R4.pem 1125s Adding debian:GlobalSign_ECC_Root_CA_-_R5.pem 1125s Adding debian:GlobalSign_Root_CA.pem 1125s Adding debian:GlobalSign_Root_CA_-_R3.pem 1125s Adding debian:GlobalSign_Root_CA_-_R6.pem 1125s Adding debian:GlobalSign_Root_E46.pem 1125s Adding debian:GlobalSign_Root_R46.pem 1125s Adding debian:Go_Daddy_Class_2_CA.pem 1125s Adding debian:Go_Daddy_Root_Certificate_Authority_-_G2.pem 1125s Adding debian:HARICA_TLS_ECC_Root_CA_2021.pem 1125s Adding debian:HARICA_TLS_RSA_Root_CA_2021.pem 1125s Adding debian:Hellenic_Academic_and_Research_Institutions_ECC_RootCA_2015.pem 1125s Adding debian:Hellenic_Academic_and_Research_Institutions_RootCA_2015.pem 1125s Adding debian:HiPKI_Root_CA_-_G1.pem 1125s Adding debian:Hongkong_Post_Root_CA_3.pem 1125s Adding debian:ISRG_Root_X1.pem 1125s Adding debian:ISRG_Root_X2.pem 1125s Adding debian:IdenTrust_Commercial_Root_CA_1.pem 1125s Adding debian:IdenTrust_Public_Sector_Root_CA_1.pem 1125s Adding debian:Izenpe.com.pem 1125s Adding debian:Microsec_e-Szigno_Root_CA_2009.pem 1125s Adding debian:Microsoft_ECC_Root_Certificate_Authority_2017.pem 1125s Adding debian:Microsoft_RSA_Root_Certificate_Authority_2017.pem 1125s Adding debian:NAVER_Global_Root_Certification_Authority.pem 1125s Adding debian:NetLock_Arany_=Class_Gold=_Főtanúsítvány.pem 1125s Adding debian:OISTE_WISeKey_Global_Root_GB_CA.pem 1125s Adding debian:OISTE_WISeKey_Global_Root_GC_CA.pem 1125s Adding debian:QuoVadis_Root_CA_1_G3.pem 1125s Adding debian:QuoVadis_Root_CA_2.pem 1125s Adding debian:QuoVadis_Root_CA_2_G3.pem 1125s Adding debian:QuoVadis_Root_CA_3.pem 1125s Adding debian:QuoVadis_Root_CA_3_G3.pem 1125s Adding debian:SSL.com_EV_Root_Certification_Authority_ECC.pem 1125s Adding debian:SSL.com_EV_Root_Certification_Authority_RSA_R2.pem 1125s Adding debian:SSL.com_Root_Certification_Authority_ECC.pem 1125s Adding debian:SSL.com_Root_Certification_Authority_RSA.pem 1125s Adding debian:SSL.com_TLS_ECC_Root_CA_2022.pem 1125s Adding debian:SSL.com_TLS_RSA_Root_CA_2022.pem 1125s Adding debian:SZAFIR_ROOT_CA2.pem 1125s Adding debian:Sectigo_Public_Server_Authentication_Root_E46.pem 1125s Adding debian:Sectigo_Public_Server_Authentication_Root_R46.pem 1125s Adding debian:SecureSign_RootCA11.pem 1125s Adding debian:SecureSign_Root_CA12.pem 1125s Adding debian:SecureSign_Root_CA14.pem 1125s Adding debian:SecureSign_Root_CA15.pem 1125s Adding debian:SecureTrust_CA.pem 1125s Adding debian:Secure_Global_CA.pem 1125s Adding debian:Security_Communication_ECC_RootCA1.pem 1125s Adding debian:Security_Communication_RootCA2.pem 1125s Adding debian:Security_Communication_RootCA3.pem 1125s Adding debian:Starfield_Class_2_CA.pem 1125s Adding debian:Starfield_Root_Certificate_Authority_-_G2.pem 1125s Adding debian:Starfield_Services_Root_Certificate_Authority_-_G2.pem 1125s Adding debian:SwissSign_Gold_CA_-_G2.pem 1125s Adding debian:SwissSign_Silver_CA_-_G2.pem 1125s Adding debian:T-TeleSec_GlobalRoot_Class_2.pem 1125s Adding debian:T-TeleSec_GlobalRoot_Class_3.pem 1125s Adding debian:TUBITAK_Kamu_SM_SSL_Kok_Sertifikasi_-_Surum_1.pem 1125s Adding debian:TWCA_CYBER_Root_CA.pem 1125s Adding debian:TWCA_Global_Root_CA.pem 1125s Adding debian:TWCA_Root_Certification_Authority.pem 1125s Adding debian:Telekom_Security_TLS_ECC_Root_2020.pem 1125s Adding debian:Telekom_Security_TLS_RSA_Root_2023.pem 1125s Adding debian:TeliaSonera_Root_CA_v1.pem 1125s Adding debian:Telia_Root_CA_v2.pem 1125s Adding debian:TrustAsia_Global_Root_CA_G3.pem 1125s Adding debian:TrustAsia_Global_Root_CA_G4.pem 1125s Adding debian:Trustwave_Global_Certification_Authority.pem 1125s Adding debian:Trustwave_Global_ECC_P256_Certification_Authority.pem 1125s Adding debian:Trustwave_Global_ECC_P384_Certification_Authority.pem 1125s Adding debian:TunTrust_Root_CA.pem 1125s Adding debian:UCA_Extended_Validation_Root.pem 1125s Adding debian:UCA_Global_G2_Root.pem 1125s Adding debian:USERTrust_ECC_Certification_Authority.pem 1125s Adding debian:USERTrust_RSA_Certification_Authority.pem 1125s Adding debian:XRamp_Global_CA_Root.pem 1125s Adding debian:certSIGN_ROOT_CA.pem 1125s Adding debian:certSIGN_Root_CA_G2.pem 1125s Adding debian:e-Szigno_Root_CA_2017.pem 1125s Adding debian:ePKI_Root_Certification_Authority.pem 1125s Adding debian:emSign_ECC_Root_CA_-_C3.pem 1125s Adding debian:emSign_ECC_Root_CA_-_G3.pem 1125s Adding debian:emSign_Root_CA_-_C1.pem 1125s Adding debian:emSign_Root_CA_-_G1.pem 1125s Adding debian:vTrus_ECC_Root_CA.pem 1125s Adding debian:vTrus_Root_CA.pem 1125s done. 1125s Setting up default-jre-headless (2:1.21-76) ... 1125s Setting up openjdk-21-jre:ppc64el (21.0.7~8ea-1) ... 1125s Setting up junit4 (4.13.2-5) ... 1125s Setting up default-jre (2:1.21-76) ... 1125s Setting up libnetty-tcnative-java (2.0.28-1build4) ... 1125s Setting up libzookeeper-java (3.9.3-1build1) ... 1125s Setting up zookeeper (3.9.3-1build1) ... 1126s warn: The home directory `/var/lib/zookeeper' already exists. Not touching this directory. 1126s warn: Warning: The home directory `/var/lib/zookeeper' does not belong to the user you are currently creating. 1126s update-alternatives: using /etc/zookeeper/conf_example to provide /etc/zookeeper/conf (zookeeper-conf) in auto mode 1126s Setting up zookeeperd (3.9.3-1build1) ... 1126s Processing triggers for libc-bin (2.41-6ubuntu1) ... 1128s autopkgtest [09:45:52]: test acceptance-zookeeper: debian/tests/acceptance zookeeper "-e dcs_failsafe_mode" 1128s autopkgtest [09:45:52]: test acceptance-zookeeper: [----------------------- 1133s dpkg-architecture: warning: cannot determine CC system type, falling back to default (native compilation) 1133s ++ ls -1r /usr/lib/postgresql/ 1133s + for PG_VERSION in $(ls -1r /usr/lib/postgresql/) 1133s + '[' 17 == 10 -o 17 == 11 ']' 1133s + echo '### PostgreSQL 17 acceptance-zookeeper -e dcs_failsafe_mode ###' 1133s + su postgres -p -c 'set -o pipefail; ETCD_UNSUPPORTED_ARCH= DCS=zookeeper PATH=/usr/lib/postgresql/17/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' 1133s ### PostgreSQL 17 acceptance-zookeeper -e dcs_failsafe_mode ### 1134s Apr 14 09:45:58 Feature: basic replication # features/basic_replication.feature:1 1134s Apr 14 09:45:58 We should check that the basic bootstrapping, replication and failover works. 1134s Apr 14 09:45:58 Scenario: check replication of a single table # features/basic_replication.feature:4 1134s Apr 14 09:45:58 Given I start postgres-0 # features/steps/basic_replication.py:20 1137s Apr 14 09:46:01 Then postgres-0 is a leader after 10 seconds # features/steps/patroni_api.py:31 1138s Apr 14 09:46:02 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 1138s Apr 14 09:46:02 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:73 1138s Apr 14 09:46:02 Then I receive a response code 200 # features/steps/patroni_api.py:100 1138s Apr 14 09:46:02 When I start postgres-1 # features/steps/basic_replication.py:20 1142s Apr 14 09:46:06 And I configure and start postgres-2 with a tag replicatefrom postgres-0 # features/steps/cascading_replication.py:7 1146s Apr 14 09:46:10 And "sync" key in DCS has leader=postgres-0 after 20 seconds # features/steps/cascading_replication.py:23 1146s Apr 14 09:46:10 And I add the table foo to postgres-0 # features/steps/basic_replication.py:66 1147s Apr 14 09:46:10 Then table foo is present on postgres-1 after 20 seconds # features/steps/basic_replication.py:105 1148s Apr 14 09:46:11 Then table foo is present on postgres-2 after 20 seconds # features/steps/basic_replication.py:105 1148s Apr 14 09:46:11 1148s Apr 14 09:46:11 Scenario: check restart of sync replica # features/basic_replication.feature:17 1148s Apr 14 09:46:11 Given I shut down postgres-2 # features/steps/basic_replication.py:41 1149s Apr 14 09:46:12 Then "sync" key in DCS has sync_standby=postgres-1 after 5 seconds # features/steps/cascading_replication.py:23 1149s Apr 14 09:46:12 When I start postgres-2 # features/steps/basic_replication.py:20 1152s Apr 14 09:46:15 And I shut down postgres-1 # features/steps/basic_replication.py:41 1155s Apr 14 09:46:18 Then "sync" key in DCS has sync_standby=postgres-2 after 10 seconds # features/steps/cascading_replication.py:23 1156s Apr 14 09:46:19 When I start postgres-1 # features/steps/basic_replication.py:20 1159s Apr 14 09:46:22 Then "members/postgres-1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 1159s Apr 14 09:46:22 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:144 1159s Apr 14 09:46:22 And Status code on GET http://127.0.0.1:8009/async is 200 after 3 seconds # features/steps/patroni_api.py:144 1159s Apr 14 09:46:22 1159s Apr 14 09:46:22 Scenario: check stuck sync replica # features/basic_replication.feature:28 1159s Apr 14 09:46:22 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:73 1159s Apr 14 09:46:23 Then I receive a response code 200 # features/steps/patroni_api.py:100 1159s Apr 14 09:46:23 And I create table on postgres-0 # features/steps/basic_replication.py:85 1159s Apr 14 09:46:23 And table mytest is present on postgres-1 after 2 seconds # features/steps/basic_replication.py:105 1160s Apr 14 09:46:24 And table mytest is present on postgres-2 after 2 seconds # features/steps/basic_replication.py:105 1160s Apr 14 09:46:24 When I pause wal replay on postgres-2 # features/steps/basic_replication.py:76 1160s Apr 14 09:46:24 And I load data on postgres-0 # features/steps/basic_replication.py:96 1161s Apr 14 09:46:25 Then "sync" key in DCS has sync_standby=postgres-1 after 15 seconds # features/steps/cascading_replication.py:23 1164s Apr 14 09:46:28 And I resume wal replay on postgres-2 # features/steps/basic_replication.py:76 1164s Apr 14 09:46:28 And Status code on GET http://127.0.0.1:8009/sync is 200 after 3 seconds # features/steps/patroni_api.py:144 1164s Apr 14 09:46:28 And Status code on GET http://127.0.0.1:8010/async is 200 after 3 seconds # features/steps/patroni_api.py:144 1164s Apr 14 09:46:28 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:73 1164s Apr 14 09:46:28 Then I receive a response code 200 # features/steps/patroni_api.py:100 1164s Apr 14 09:46:28 And I drop table on postgres-0 # features/steps/basic_replication.py:85 1164s Apr 14 09:46:28 1164s Apr 14 09:46:28 Scenario: check multi sync replication # features/basic_replication.feature:44 1164s Apr 14 09:46:28 Given I issue a PATCH request to http://127.0.0.1:8008/config with {"synchronous_node_count": 2} # features/steps/patroni_api.py:73 1164s Apr 14 09:46:28 Then I receive a response code 200 # features/steps/patroni_api.py:100 1164s Apr 14 09:46:28 Then "sync" key in DCS has sync_standby=postgres-1,postgres-2 after 10 seconds # features/steps/cascading_replication.py:23 1168s Apr 14 09:46:32 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:144 1169s Apr 14 09:46:32 And Status code on GET http://127.0.0.1:8009/sync is 200 after 3 seconds # features/steps/patroni_api.py:144 1169s Apr 14 09:46:32 When I issue a PATCH request to http://127.0.0.1:8008/config with {"synchronous_node_count": 1} # features/steps/patroni_api.py:73 1169s Apr 14 09:46:32 Then I receive a response code 200 # features/steps/patroni_api.py:100 1169s Apr 14 09:46:32 And I shut down postgres-1 # features/steps/basic_replication.py:41 1172s Apr 14 09:46:35 Then "sync" key in DCS has sync_standby=postgres-2 after 10 seconds # features/steps/cascading_replication.py:23 1173s Apr 14 09:46:36 When I start postgres-1 # features/steps/basic_replication.py:20 1176s Apr 14 09:46:39 Then "members/postgres-1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 1177s Apr 14 09:46:40 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:144 1177s Apr 14 09:46:40 And Status code on GET http://127.0.0.1:8009/async is 200 after 3 seconds # features/steps/patroni_api.py:144 1177s Apr 14 09:46:41 1177s Apr 14 09:46:41 Scenario: check the basic failover in synchronous mode # features/basic_replication.feature:59 1177s Apr 14 09:46:41 Given I run patronictl.py pause batman # features/steps/patroni_api.py:88 1178s Apr 14 09:46:42 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 1178s Apr 14 09:46:42 When I sleep for 2 seconds # features/steps/patroni_api.py:41 1180s Apr 14 09:46:44 And I shut down postgres-0 # features/steps/basic_replication.py:41 1181s Apr 14 09:46:45 And I run patronictl.py resume batman # features/steps/patroni_api.py:88 1182s Apr 14 09:46:46 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 1182s Apr 14 09:46:46 And postgres-2 role is the primary after 24 seconds # features/steps/basic_replication.py:117 1203s Apr 14 09:47:07 And Response on GET http://127.0.0.1:8010/history contains recovery after 10 seconds # features/steps/patroni_api.py:158 1207s Apr 14 09:47:10 And there is a postgres-2_cb.log with "on_role_change primary batman" in postgres-2 data directory # features/steps/cascading_replication.py:12 1207s Apr 14 09:47:10 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:73 1207s Apr 14 09:47:10 Then I receive a response code 200 # features/steps/patroni_api.py:100 1207s Apr 14 09:47:10 When I add the table bar to postgres-2 # features/steps/basic_replication.py:66 1207s Apr 14 09:47:10 Then table bar is present on postgres-1 after 20 seconds # features/steps/basic_replication.py:105 1207s Apr 14 09:47:10 And Response on GET http://127.0.0.1:8010/config contains master_start_timeout after 10 seconds # features/steps/patroni_api.py:158 1207s Apr 14 09:47:11 1207s Apr 14 09:47:11 Scenario: check rejoin of the former primary with pg_rewind # features/basic_replication.feature:75 1207s Apr 14 09:47:11 Given I add the table splitbrain to postgres-0 # features/steps/basic_replication.py:66 1207s Apr 14 09:47:11 And I start postgres-0 # features/steps/basic_replication.py:20 1207s Apr 14 09:47:11 Then postgres-0 role is the secondary after 20 seconds # features/steps/basic_replication.py:117 1214s Apr 14 09:47:18 When I add the table buz to postgres-2 # features/steps/basic_replication.py:66 1214s Apr 14 09:47:18 Then table buz is present on postgres-0 after 20 seconds # features/steps/basic_replication.py:105 1214s Apr 14 09:47:18 1214s Apr 14 09:47:18 @reject-duplicate-name 1214s Apr 14 09:47:18 Scenario: check graceful rejection when two nodes have the same name # features/basic_replication.feature:83 1214s Apr 14 09:47:18 Given I start duplicate postgres-0 on port 8011 # features/steps/basic_replication.py:25 1216s Apr 14 09:47:20 Then there is one of ["Can't start; there is already a node named 'postgres-0' running"] CRITICAL in the dup-postgres-0 patroni log after 5 seconds # features/steps/basic_replication.py:133 1220s Apr 14 09:47:24 1220s Apr 14 09:47:24 Feature: cascading replication # features/cascading_replication.feature:1 1220s Apr 14 09:47:24 We should check that patroni can do base backup and streaming from the replica 1220s Apr 14 09:47:24 Scenario: check a base backup and streaming replication from a replica # features/cascading_replication.feature:4 1220s Apr 14 09:47:24 Given I start postgres-0 # features/steps/basic_replication.py:20 1224s Apr 14 09:47:28 And postgres-0 is a leader after 10 seconds # features/steps/patroni_api.py:31 1225s Apr 14 09:47:29 And I configure and start postgres-1 with a tag clonefrom true # features/steps/cascading_replication.py:7 1229s Apr 14 09:47:33 And replication works from postgres-0 to postgres-1 after 20 seconds # features/steps/basic_replication.py:124 1231s Apr 14 09:47:34 And I create label with "postgres-0" in postgres-0 data directory # features/steps/cascading_replication.py:18 1231s Apr 14 09:47:34 And I create label with "postgres-1" in postgres-1 data directory # features/steps/cascading_replication.py:18 1231s Apr 14 09:47:34 And "members/postgres-1" key in DCS has state=running after 12 seconds # features/steps/cascading_replication.py:23 1231s Apr 14 09:47:34 And I configure and start postgres-2 with a tag replicatefrom postgres-1 # features/steps/cascading_replication.py:7 1235s Apr 14 09:47:38 Then replication works from postgres-0 to postgres-2 after 30 seconds # features/steps/basic_replication.py:124 1236s Apr 14 09:47:40 And there is a label with "postgres-1" in postgres-2 data directory # features/steps/cascading_replication.py:12 1241s Apr 14 09:47:45 1241s SKIP FEATURE citus: Citus extension isn't available 1241s SKIP Scenario check that worker cluster is registered in the coordinator: Citus extension isn't available 1241s SKIP Scenario coordinator failover updates pg_dist_node: Citus extension isn't available 1241s SKIP Scenario worker switchover doesn't break client queries on the coordinator: Citus extension isn't available 1241s Apr 14 09:47:45 Feature: citus # features/citus.feature:1 1241s Apr 14 09:47:45 We should check that coordinator discovers and registers workers and clients don't have errors when worker cluster switches over 1241s Apr 14 09:47:45 Scenario: check that worker cluster is registered in the coordinator # features/citus.feature:4 1241s Apr 14 09:47:45 Given I start postgres-0 in citus group 0 # None 1241s Apr 14 09:47:45 And I start postgres-2 in citus group 1 # None 1241s Apr 14 09:47:45 Then postgres-0 is a leader in a group 0 after 10 seconds # None 1241s Apr 14 09:47:45 And postgres-2 is a leader in a group 1 after 10 seconds # None 1241s Apr 14 09:47:45 When I start postgres-1 in citus group 0 # None 1241s Apr 14 09:47:45 And I start postgres-3 in citus group 1 # None 1241s Apr 14 09:47:45 Then replication works from postgres-0 to postgres-1 after 15 seconds # None 1241s Apr 14 09:47:45 Then replication works from postgres-2 to postgres-3 after 15 seconds # None 1241s Apr 14 09:47:45 And postgres-0 is registered in the postgres-0 as the primary in group 0 after 5 seconds # None 1241s Apr 14 09:47:45 And postgres-1 is registered in the postgres-0 as the secondary in group 0 after 5 seconds # None 1241s Apr 14 09:47:45 And postgres-2 is registered in the postgres-0 as the primary in group 1 after 5 seconds # None 1241s Apr 14 09:47:45 And postgres-3 is registered in the postgres-0 as the secondary in group 1 after 5 seconds # None 1241s Apr 14 09:47:45 1241s Apr 14 09:47:45 Scenario: coordinator failover updates pg_dist_node # features/citus.feature:18 1241s Apr 14 09:47:45 Given I run patronictl.py failover batman --group 0 --candidate postgres-1 --force # None 1241s Apr 14 09:47:45 Then postgres-1 role is the primary after 10 seconds # None 1241s Apr 14 09:47:45 And "members/postgres-0" key in a group 0 in DCS has state=running after 15 seconds # None 1241s Apr 14 09:47:45 And replication works from postgres-1 to postgres-0 after 15 seconds # None 1241s Apr 14 09:47:45 And postgres-1 is registered in the postgres-2 as the primary in group 0 after 5 seconds # None 1241s Apr 14 09:47:45 And postgres-0 is registered in the postgres-2 as the secondary in group 0 after 15 seconds # None 1241s Apr 14 09:47:45 And "sync" key in a group 0 in DCS has sync_standby=postgres-0 after 15 seconds # None 1241s Apr 14 09:47:45 When I run patronictl.py switchover batman --group 0 --candidate postgres-0 --force # None 1241s Apr 14 09:47:45 Then postgres-0 role is the primary after 10 seconds # None 1241s Apr 14 09:47:45 And replication works from postgres-0 to postgres-1 after 15 seconds # None 1241s Apr 14 09:47:45 And postgres-0 is registered in the postgres-2 as the primary in group 0 after 5 seconds # None 1241s Apr 14 09:47:45 And postgres-1 is registered in the postgres-2 as the secondary in group 0 after 15 seconds # None 1241s Apr 14 09:47:45 And "sync" key in a group 0 in DCS has sync_standby=postgres-1 after 15 seconds # None 1241s Apr 14 09:47:45 1241s Apr 14 09:47:45 Scenario: worker switchover doesn't break client queries on the coordinator # features/citus.feature:33 1241s Apr 14 09:47:45 Given I create a distributed table on postgres-0 # None 1241s Apr 14 09:47:45 And I start a thread inserting data on postgres-0 # None 1241s Apr 14 09:47:45 When I run patronictl.py switchover batman --group 1 --force # None 1241s Apr 14 09:47:45 Then I receive a response returncode 0 # None 1241s Apr 14 09:47:45 And postgres-3 role is the primary after 10 seconds # None 1241s Apr 14 09:47:45 And "members/postgres-2" key in a group 1 in DCS has state=running after 15 seconds # None 1241s Apr 14 09:47:45 And replication works from postgres-3 to postgres-2 after 15 seconds # None 1241s Apr 14 09:47:45 And postgres-3 is registered in the postgres-0 as the primary in group 1 after 5 seconds # None 1241s Apr 14 09:47:45 And postgres-2 is registered in the postgres-0 as the secondary in group 1 after 15 seconds # None 1241s Apr 14 09:47:45 And "sync" key in a group 1 in DCS has sync_standby=postgres-2 after 15 seconds # None 1241s Apr 14 09:47:45 And a thread is still alive # None 1241s Apr 14 09:47:45 When I run patronictl.py switchover batman --group 1 --force # None 1241s Apr 14 09:47:45 Then I receive a response returncode 0 # None 1241s Apr 14 09:47:45 And postgres-2 role is the primary after 10 seconds # None 1241s Apr 14 09:47:45 And replication works from postgres-2 to postgres-3 after 15 seconds # None 1241s Apr 14 09:47:45 And postgres-2 is registered in the postgres-0 as the primary in group 1 after 5 seconds # None 1241s Apr 14 09:47:45 And postgres-3 is registered in the postgres-0 as the secondary in group 1 after 15 seconds # None 1241s Apr 14 09:47:45 And "sync" key in a group 1 in DCS has sync_standby=postgres-3 after 15 seconds # None 1241s Apr 14 09:47:45 And a thread is still alive # None 1241s Apr 14 09:47:45 When I stop a thread # None 1241s Apr 14 09:47:45 Then a distributed table on postgres-0 has expected rows # None 1241s Apr 14 09:47:45 1241s Apr 14 09:47:45 Scenario: worker primary restart doesn't break client queries on the coordinator # features/citus.feature:56 1241s Apr 14 09:47:45 Given I cleanup a distributed table on postgres-0 # None 1241s Apr 14 09:47:45 And I start a thread inserting data on postgres-0 # None 1241s Apr 14 09:47:45 When I run patronictl.py restart batman postgres-2 --group 1 --force # None 1241s Apr 14 09:47:45 Then I receive a response returncode 0 # None 1241s Apr 14 09:47:45 And postgres-2 role is the primary after 10 seconds # None 1241s Apr 14 09:47:45 And replication works from postgres-2 to postgres-3 after 15 seconds # None 1241s Apr 14 09:47:45 And postgres-2 is registered in the postgres-0 as the primary in group 1 after 5 seconds # None 1241s Apr 14 09:47:45 And postgres-3 is registered in the postgres-0 as the secondary in group 1 after 15 seconds # None 1241s Apr 14 09:47:45 And a thread is still alive # None 1241s Apr 14 09:47:45 When I stop a thread # None 1241s Apr 14 09:47:45 Then a distributed table on postgres-0 has expected rows # None 1241s SKIP Scenario worker primary restart doesn't break client queries on the coordinator: Citus extension isn't available 1241s SKIP Scenario check that in-flight transaction is rolled back after timeout when other workers need to change pg_dist_node: Citus extension isn't available 1241s Apr 14 09:47:45 1241s Apr 14 09:47:45 Scenario: check that in-flight transaction is rolled back after timeout when other workers need to change pg_dist_node # features/citus.feature:69 1241s Apr 14 09:47:45 Given I start postgres-4 in citus group 2 # None 1241s Apr 14 09:47:45 Then postgres-4 is a leader in a group 2 after 10 seconds # None 1241s Apr 14 09:47:45 And "members/postgres-4" key in a group 2 in DCS has role=primary after 3 seconds # None 1241s Apr 14 09:47:45 When I run patronictl.py edit-config batman --group 2 -s ttl=20 --force # None 1241s Apr 14 09:47:45 Then I receive a response returncode 0 # None 1241s Apr 14 09:47:45 And I receive a response output "+ttl: 20" # None 1241s Apr 14 09:47:45 Then postgres-4 is registered in the postgres-2 as the primary in group 2 after 5 seconds # None 1241s Apr 14 09:47:45 When I shut down postgres-4 # None 1241s Apr 14 09:47:45 Then there is a transaction in progress on postgres-0 changing pg_dist_node after 5 seconds # None 1241s Apr 14 09:47:45 When I run patronictl.py restart batman postgres-2 --group 1 --force # None 1241s Apr 14 09:47:45 Then a transaction finishes in 20 seconds # None 1241s Apr 14 09:47:45 1241s Apr 14 09:47:45 Feature: custom bootstrap # features/custom_bootstrap.feature:1 1241s Apr 14 09:47:45 We should check that patroni can bootstrap a new cluster from a backup 1241s Apr 14 09:47:45 Scenario: clone existing cluster using pg_basebackup # features/custom_bootstrap.feature:4 1241s Apr 14 09:47:45 Given I start postgres-0 # features/steps/basic_replication.py:20 1244s Apr 14 09:47:48 Then postgres-0 is a leader after 10 seconds # features/steps/patroni_api.py:31 1245s Apr 14 09:47:49 When I add the table foo to postgres-0 # features/steps/basic_replication.py:66 1245s Apr 14 09:47:49 And I start postgres-1 in a cluster batman1 as a clone of postgres-0 # features/steps/custom_bootstrap.py:6 1249s Apr 14 09:47:53 Then postgres-1 is a leader of batman1 after 10 seconds # features/steps/custom_bootstrap.py:16 1250s Apr 14 09:47:54 Then table foo is present on postgres-1 after 10 seconds # features/steps/basic_replication.py:105 1250s Apr 14 09:47:54 1250s Apr 14 09:47:54 Scenario: make a backup and do a restore into a new cluster # features/custom_bootstrap.feature:12 1250s Apr 14 09:47:54 Given I add the table bar to postgres-1 # features/steps/basic_replication.py:66 1250s Apr 14 09:47:54 And I do a backup of postgres-1 # features/steps/custom_bootstrap.py:25 1251s Apr 14 09:47:55 When I start postgres-2 in a cluster batman2 from backup # features/steps/custom_bootstrap.py:11 1256s Apr 14 09:48:00 Then postgres-2 is a leader of batman2 after 30 seconds # features/steps/custom_bootstrap.py:16 1257s Apr 14 09:48:01 And table bar is present on postgres-2 after 10 seconds # features/steps/basic_replication.py:105 1264s Apr 14 09:48:07 1264s Apr 14 09:48:07 Feature: ignored slots # features/ignored_slots.feature:1 1264s Apr 14 09:48:07 1264s Apr 14 09:48:07 Scenario: check ignored slots aren't removed on failover/switchover # features/ignored_slots.feature:2 1264s Apr 14 09:48:07 Given I start postgres-1 # features/steps/basic_replication.py:20 1267s Apr 14 09:48:10 Then postgres-1 is a leader after 10 seconds # features/steps/patroni_api.py:31 1268s Apr 14 09:48:11 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 1268s Apr 14 09:48:11 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:73 1268s Apr 14 09:48:11 Then I receive a response code 200 # features/steps/patroni_api.py:100 1268s Apr 14 09:48:11 And Response on GET http://127.0.0.1:8009/config contains ignore_slots after 10 seconds # features/steps/patroni_api.py:158 1268s Apr 14 09:48:11 When I shut down postgres-1 # features/steps/basic_replication.py:41 1270s Apr 14 09:48:13 And I start postgres-1 # features/steps/basic_replication.py:20 1273s Apr 14 09:48:16 Then postgres-1 is a leader after 10 seconds # features/steps/patroni_api.py:31 1273s Apr 14 09:48:16 And "members/postgres-1" key in DCS has role=primary after 10 seconds # features/steps/cascading_replication.py:23 1274s Apr 14 09:48:17 And postgres-1 role is the primary after 20 seconds # features/steps/basic_replication.py:117 1274s Apr 14 09:48:17 When I create a logical replication slot unmanaged_slot_0 on postgres-1 with the test_decoding plugin # features/steps/slots.py:9 1274s Apr 14 09:48:18 And I create a logical replication slot unmanaged_slot_1 on postgres-1 with the test_decoding plugin # features/steps/slots.py:9 1274s Apr 14 09:48:18 And I create a logical replication slot unmanaged_slot_2 on postgres-1 with the test_decoding plugin # features/steps/slots.py:9 1274s Apr 14 09:48:18 And I create a logical replication slot unmanaged_slot_3 on postgres-1 with the test_decoding plugin # features/steps/slots.py:9 1274s Apr 14 09:48:18 And I create a logical replication slot dummy_slot on postgres-1 with the test_decoding plugin # features/steps/slots.py:9 1274s Apr 14 09:48:18 Then postgres-1 has a logical replication slot named unmanaged_slot_0 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 1274s Apr 14 09:48:18 And postgres-1 has a logical replication slot named unmanaged_slot_1 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 1274s Apr 14 09:48:18 And postgres-1 has a logical replication slot named unmanaged_slot_2 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 1274s Apr 14 09:48:18 And postgres-1 has a logical replication slot named unmanaged_slot_3 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 1274s Apr 14 09:48:18 When I start postgres-0 # features/steps/basic_replication.py:20 1278s Apr 14 09:48:22 Then "members/postgres-0" key in DCS has role=replica after 10 seconds # features/steps/cascading_replication.py:23 1278s Apr 14 09:48:22 And postgres-0 role is the secondary after 20 seconds # features/steps/basic_replication.py:117 1278s Apr 14 09:48:22 And replication works from postgres-1 to postgres-0 after 20 seconds # features/steps/basic_replication.py:124 1280s Apr 14 09:48:23 When I shut down postgres-1 # features/steps/basic_replication.py:41 1282s Apr 14 09:48:25 Then "members/postgres-0" key in DCS has role=primary after 10 seconds # features/steps/cascading_replication.py:23 1283s Apr 14 09:48:26 When I start postgres-1 # features/steps/basic_replication.py:20 1286s Apr 14 09:48:29 Then postgres-1 role is the secondary after 20 seconds # features/steps/basic_replication.py:117 1286s Apr 14 09:48:29 And "members/postgres-1" key in DCS has role=replica after 10 seconds # features/steps/cascading_replication.py:23 1286s Apr 14 09:48:29 And I sleep for 2 seconds # features/steps/patroni_api.py:41 1288s Apr 14 09:48:31 And postgres-1 has a logical replication slot named unmanaged_slot_0 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 1288s Apr 14 09:48:31 And postgres-1 has a logical replication slot named unmanaged_slot_1 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 1288s Apr 14 09:48:31 And postgres-1 has a logical replication slot named unmanaged_slot_2 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 1288s Apr 14 09:48:31 And postgres-1 has a logical replication slot named unmanaged_slot_3 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 1288s Apr 14 09:48:31 And postgres-1 does not have a replication slot named dummy_slot # features/steps/slots.py:41 1288s Apr 14 09:48:31 When I shut down postgres-0 # features/steps/basic_replication.py:41 1290s Apr 14 09:48:33 Then "members/postgres-1" key in DCS has role=primary after 10 seconds # features/steps/cascading_replication.py:23 1291s Apr 14 09:48:34 And postgres-1 has a logical replication slot named unmanaged_slot_0 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 1291s Apr 14 09:48:34 And postgres-1 has a logical replication slot named unmanaged_slot_1 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 1291s Apr 14 09:48:34 And postgres-1 has a logical replication slot named unmanaged_slot_2 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 1291s Apr 14 09:48:34 And postgres-1 has a logical replication slot named unmanaged_slot_3 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 1293s Apr 14 09:48:36 1293s Apr 14 09:48:36 Feature: nostream node # features/nostream_node.feature:1 1293s Apr 14 09:48:36 1293s Apr 14 09:48:36 Scenario: check nostream node is recovering from archive # features/nostream_node.feature:3 1293s Apr 14 09:48:36 When I start postgres-0 # features/steps/basic_replication.py:20 1296s Apr 14 09:48:39 And I configure and start postgres-1 with a tag nostream true # features/steps/cascading_replication.py:7 1300s Apr 14 09:48:44 Then "members/postgres-1" key in DCS has replication_state=in archive recovery after 10 seconds # features/steps/cascading_replication.py:23 1300s Apr 14 09:48:44 And replication works from postgres-0 to postgres-1 after 30 seconds # features/steps/basic_replication.py:124 1305s Apr 14 09:48:49 1305s Apr 14 09:48:49 @slot-advance 1305s Apr 14 09:48:49 Scenario: check permanent logical replication slots are not copied # features/nostream_node.feature:10 1305s Apr 14 09:48: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:73 1305s Apr 14 09:48:49 Then I receive a response code 200 # features/steps/patroni_api.py:100 1305s Apr 14 09:48:49 When I run patronictl.py restart batman postgres-0 --force # features/steps/patroni_api.py:88 1308s Apr 14 09:48:52 Then postgres-0 has a logical replication slot named test_logical with the test_decoding plugin after 10 seconds # features/steps/slots.py:20 1309s Apr 14 09:48:53 When I configure and start postgres-2 with a tag replicatefrom postgres-1 # features/steps/cascading_replication.py:7 1313s Apr 14 09:48:57 Then "members/postgres-2" key in DCS has replication_state=streaming after 10 seconds # features/steps/cascading_replication.py:23 1319s Apr 14 09:49:03 And postgres-1 does not have a replication slot named test_logical # features/steps/slots.py:41 1319s Apr 14 09:49:03 And postgres-2 does not have a replication slot named test_logical # features/steps/slots.py:41 1319s Apr 14 09:49:03 1319s Apr 14 09:49:03 @slot-advance 1319s Apr 14 09:49:03 Scenario: check that slots are written to the /status key # features/nostream_node.feature:21 1319s Apr 14 09:49:03 Given "status" key in DCS has postgres_0 in slots # features/steps/slots.py:118 1319s Apr 14 09:49:03 And "status" key in DCS has postgres_2 in slots # features/steps/slots.py:118 1319s Apr 14 09:49:03 And "status" key in DCS has test_logical in slots # features/steps/slots.py:118 1319s Apr 14 09:49:03 And "status" key in DCS has test_logical in slots # features/steps/slots.py:118 1319s Apr 14 09:49:03 And "status" key in DCS does not have postgres_1 in slots # features/steps/slots.py:124 1325s Apr 14 09:49:09 1325s Apr 14 09:49:09 Feature: patroni api # features/patroni_api.feature:1 1325s Apr 14 09:49:09 We should check that patroni correctly responds to valid and not-valid API requests. 1325s Apr 14 09:49:09 Scenario: check API requests on a stand-alone server # features/patroni_api.feature:4 1325s Apr 14 09:49:09 Given I start postgres-0 # features/steps/basic_replication.py:20 1329s Apr 14 09:49:13 And postgres-0 is a leader after 10 seconds # features/steps/patroni_api.py:31 1330s Apr 14 09:49:14 When I issue a GET request to http://127.0.0.1:8008/ # features/steps/patroni_api.py:63 1330s Apr 14 09:49:14 Then I receive a response code 200 # features/steps/patroni_api.py:100 1330s Apr 14 09:49:14 And I receive a response state running # features/steps/patroni_api.py:100 1330s Apr 14 09:49:14 And I receive a response role primary # features/steps/patroni_api.py:100 1330s Apr 14 09:49:14 When I issue a GET request to http://127.0.0.1:8008/standby_leader # features/steps/patroni_api.py:63 1331s Apr 14 09:49:14 Then I receive a response code 503 # features/steps/patroni_api.py:100 1331s Apr 14 09:49:14 When I issue a GET request to http://127.0.0.1:8008/health # features/steps/patroni_api.py:63 1331s Apr 14 09:49:14 Then I receive a response code 200 # features/steps/patroni_api.py:100 1331s Apr 14 09:49:14 When I issue a GET request to http://127.0.0.1:8008/replica # features/steps/patroni_api.py:63 1331s Apr 14 09:49:14 Then I receive a response code 503 # features/steps/patroni_api.py:100 1331s Apr 14 09:49:14 When I issue a POST request to http://127.0.0.1:8008/reinitialize with {"force": true} # features/steps/patroni_api.py:73 1331s Apr 14 09:49:14 Then I receive a response code 503 # features/steps/patroni_api.py:100 1331s Apr 14 09:49:14 And I receive a response text I am the leader, can not reinitialize # features/steps/patroni_api.py:100 1331s Apr 14 09:49:14 When I run patronictl.py switchover batman --primary postgres-0 --force # features/steps/patroni_api.py:88 1332s Apr 14 09:49:15 Then I receive a response returncode 1 # features/steps/patroni_api.py:100 1332s Apr 14 09:49:15 And I receive a response output "Error: No candidates found to switchover to" # features/steps/patroni_api.py:100 1332s Apr 14 09:49:15 When I issue a POST request to http://127.0.0.1:8008/switchover with {"leader": "postgres-0"} # features/steps/patroni_api.py:73 1332s Apr 14 09:49:15 Then I receive a response code 412 # features/steps/patroni_api.py:100 1332s Apr 14 09:49:15 And I receive a response text switchover is not possible: cluster does not have members except leader # features/steps/patroni_api.py:100 1332s Apr 14 09:49:15 When I issue an empty POST request to http://127.0.0.1:8008/failover # features/steps/patroni_api.py:68 1332s Apr 14 09:49:16 Then I receive a response code 400 # features/steps/patroni_api.py:100 1332s Apr 14 09:49:16 When I issue a POST request to http://127.0.0.1:8008/failover with {"foo": "bar"} # features/steps/patroni_api.py:73 1332s Apr 14 09:49:16 Then I receive a response code 400 # features/steps/patroni_api.py:100 1332s Apr 14 09:49:16 And I receive a response text "Failover could be performed only to a specific candidate" # features/steps/patroni_api.py:100 1332s Apr 14 09:49:16 1332s Apr 14 09:49:16 Scenario: check local configuration reload # features/patroni_api.feature:32 1332s Apr 14 09:49:16 Given I add tag new_tag new_value to postgres-0 config # features/steps/patroni_api.py:139 1332s Apr 14 09:49:16 And I issue an empty POST request to http://127.0.0.1:8008/reload # features/steps/patroni_api.py:68 1332s Apr 14 09:49:16 Then I receive a response code 202 # features/steps/patroni_api.py:100 1332s Apr 14 09:49:16 1332s Apr 14 09:49:16 Scenario: check dynamic configuration change via DCS # features/patroni_api.feature:37 1332s Apr 14 09:49:16 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:73 1332s Apr 14 09:49:16 Then I receive a response code 200 # features/steps/patroni_api.py:100 1332s Apr 14 09:49:16 And Response on GET http://127.0.0.1:8008/patroni contains pending_restart after 11 seconds # features/steps/patroni_api.py:158 1334s Apr 14 09:49:18 When I issue a GET request to http://127.0.0.1:8008/config # features/steps/patroni_api.py:63 1334s Apr 14 09:49:18 Then I receive a response code 200 # features/steps/patroni_api.py:100 1334s Apr 14 09:49:18 And I receive a response ttl 20 # features/steps/patroni_api.py:100 1334s Apr 14 09:49:18 When I issue a GET request to http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:63 1334s Apr 14 09:49:18 Then I receive a response code 200 # features/steps/patroni_api.py:100 1334s Apr 14 09:49:18 And I receive a response tags {'new_tag': 'new_value'} # features/steps/patroni_api.py:100 1334s Apr 14 09:49:18 And I sleep for 4 seconds # features/steps/patroni_api.py:41 1338s Apr 14 09:49:22 1338s Apr 14 09:49:22 Scenario: check the scheduled restart # features/patroni_api.feature:49 1338s Apr 14 09:49:22 Given I run patronictl.py edit-config -p 'superuser_reserved_connections=6' --force batman # features/steps/patroni_api.py:88 1339s Apr 14 09:49:23 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 1339s Apr 14 09:49:23 And I receive a response output "+ superuser_reserved_connections: 6" # features/steps/patroni_api.py:100 1339s Apr 14 09:49:23 And Response on GET http://127.0.0.1:8008/patroni contains pending_restart after 5 seconds # features/steps/patroni_api.py:158 1339s Apr 14 09:49:23 Given I issue a scheduled restart at http://127.0.0.1:8008 in 5 seconds with {"role": "replica"} # features/steps/patroni_api.py:126 1340s Apr 14 09:49:23 Then I receive a response code 202 # features/steps/patroni_api.py:100 1340s Apr 14 09:49:23 And I sleep for 8 seconds # features/steps/patroni_api.py:41 1348s Apr 14 09:49:31 And Response on GET http://127.0.0.1:8008/patroni contains pending_restart after 10 seconds # features/steps/patroni_api.py:158 1348s Apr 14 09:49:31 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:126 1348s Apr 14 09:49:31 Then I receive a response code 202 # features/steps/patroni_api.py:100 1348s Apr 14 09:49:31 And Response on GET http://127.0.0.1:8008/patroni does not contain pending_restart after 10 seconds # features/steps/patroni_api.py:173 1354s Apr 14 09:49:38 And postgres-0 role is the primary after 10 seconds # features/steps/basic_replication.py:117 1355s Apr 14 09:49:39 1355s Apr 14 09:49:39 Scenario: check API requests for the primary-replica pair in the pause mode # features/patroni_api.feature:63 1355s Apr 14 09:49:39 Given I start postgres-1 # features/steps/basic_replication.py:20 1360s Apr 14 09:49:43 Then replication works from postgres-0 to postgres-1 after 20 seconds # features/steps/basic_replication.py:124 1361s Apr 14 09:49:44 When I run patronictl.py pause batman # features/steps/patroni_api.py:88 1362s Apr 14 09:49:45 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 1362s Apr 14 09:49:45 When I kill postmaster on postgres-1 # features/steps/basic_replication.py:56 1362s Apr 14 09:49:46 waiting for server to shut down.... done 1362s Apr 14 09:49:46 server stopped 1362s Apr 14 09:49:46 And I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:63 1362s Apr 14 09:49:46 Then I receive a response code 503 # features/steps/patroni_api.py:100 1362s Apr 14 09:49:46 And "members/postgres-1" key in DCS has state=stopped after 10 seconds # features/steps/cascading_replication.py:23 1363s Apr 14 09:49:47 When I run patronictl.py restart batman postgres-1 --force # features/steps/patroni_api.py:88 1365s Apr 14 09:49:49 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 1365s Apr 14 09:49:49 Then replication works from postgres-0 to postgres-1 after 20 seconds # features/steps/basic_replication.py:124 1367s Apr 14 09:49:50 And I sleep for 2 seconds # features/steps/patroni_api.py:41 1369s Apr 14 09:49:52 When I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:63 1369s Apr 14 09:49:52 Then I receive a response code 200 # features/steps/patroni_api.py:100 1369s Apr 14 09:49:52 And I receive a response state running # features/steps/patroni_api.py:100 1369s Apr 14 09:49:52 And I receive a response role replica # features/steps/patroni_api.py:100 1369s Apr 14 09:49:52 When I run patronictl.py reinit batman postgres-1 --force --wait # features/steps/patroni_api.py:88 1373s Apr 14 09:49:57 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 1373s Apr 14 09:49:57 And I receive a response output "Success: reinitialize for member postgres-1" # features/steps/patroni_api.py:100 1373s Apr 14 09:49:57 And postgres-1 role is the secondary after 30 seconds # features/steps/basic_replication.py:117 1374s Apr 14 09:49:58 And replication works from postgres-0 to postgres-1 after 20 seconds # features/steps/basic_replication.py:124 1375s Apr 14 09:49:59 When I run patronictl.py restart batman postgres-0 --force # features/steps/patroni_api.py:88 1378s Apr 14 09:50:02 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 1378s Apr 14 09:50:02 And I receive a response output "Success: restart on member postgres-0" # features/steps/patroni_api.py:100 1378s Apr 14 09:50:02 And postgres-0 role is the primary after 5 seconds # features/steps/basic_replication.py:117 1379s Apr 14 09:50:03 1379s Apr 14 09:50:03 Scenario: check the switchover via the API in the pause mode # features/patroni_api.feature:90 1379s Apr 14 09:50:03 Given I issue a POST request to http://127.0.0.1:8008/switchover with {"leader": "postgres-0", "candidate": "postgres-1"} # features/steps/patroni_api.py:73 1382s Apr 14 09:50:05 Then I receive a response code 200 # features/steps/patroni_api.py:100 1382s Apr 14 09:50:05 And postgres-1 is a leader after 5 seconds # features/steps/patroni_api.py:31 1382s Apr 14 09:50:05 And postgres-1 role is the primary after 10 seconds # features/steps/basic_replication.py:117 1383s Apr 14 09:50:06 And postgres-0 role is the secondary after 10 seconds # features/steps/basic_replication.py:117 1388s Apr 14 09:50:11 And replication works from postgres-1 to postgres-0 after 20 seconds # features/steps/basic_replication.py:124 1388s Apr 14 09:50:11 And "members/postgres-0" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 1388s Apr 14 09:50:11 When I issue a GET request to http://127.0.0.1:8008/primary # features/steps/patroni_api.py:63 1388s Apr 14 09:50:11 Then I receive a response code 503 # features/steps/patroni_api.py:100 1388s Apr 14 09:50:11 When I issue a GET request to http://127.0.0.1:8008/replica # features/steps/patroni_api.py:63 1388s Apr 14 09:50:11 Then I receive a response code 200 # features/steps/patroni_api.py:100 1388s Apr 14 09:50:11 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:63 1388s Apr 14 09:50:12 Then I receive a response code 200 # features/steps/patroni_api.py:100 1388s Apr 14 09:50:12 When I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:63 1388s Apr 14 09:50:12 Then I receive a response code 503 # features/steps/patroni_api.py:100 1388s Apr 14 09:50:12 1388s Apr 14 09:50:12 Scenario: check the scheduled switchover # features/patroni_api.feature:107 1388s Apr 14 09:50:12 Given I issue a scheduled switchover from postgres-1 to postgres-0 in 10 seconds # features/steps/patroni_api.py:119 1389s Apr 14 09:50:13 Then I receive a response returncode 1 # features/steps/patroni_api.py:100 1389s Apr 14 09:50:13 And I receive a response output "Can't schedule switchover in the paused state" # features/steps/patroni_api.py:100 1389s Apr 14 09:50:13 When I run patronictl.py resume batman # features/steps/patroni_api.py:88 1390s Apr 14 09:50:14 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 1390s Apr 14 09:50:14 Given I issue a scheduled switchover from postgres-1 to postgres-0 in 10 seconds # features/steps/patroni_api.py:119 1391s Apr 14 09:50:15 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 1391s Apr 14 09:50:15 And postgres-0 is a leader after 20 seconds # features/steps/patroni_api.py:31 1402s Apr 14 09:50:26 And postgres-0 role is the primary after 10 seconds # features/steps/basic_replication.py:117 1402s Apr 14 09:50:26 And postgres-1 role is the secondary after 10 seconds # features/steps/basic_replication.py:117 1405s Apr 14 09:50:29 And replication works from postgres-0 to postgres-1 after 25 seconds # features/steps/basic_replication.py:124 1405s Apr 14 09:50:29 And "members/postgres-1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 1406s Apr 14 09:50:30 When I issue a GET request to http://127.0.0.1:8008/primary # features/steps/patroni_api.py:63 1406s Apr 14 09:50:30 Then I receive a response code 200 # features/steps/patroni_api.py:100 1406s Apr 14 09:50:30 When I issue a GET request to http://127.0.0.1:8008/replica # features/steps/patroni_api.py:63 1407s Apr 14 09:50:30 Then I receive a response code 503 # features/steps/patroni_api.py:100 1407s Apr 14 09:50:30 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:63 1407s Apr 14 09:50:30 Then I receive a response code 503 # features/steps/patroni_api.py:100 1407s Apr 14 09:50:30 When I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:63 1407s Apr 14 09:50:30 Then I receive a response code 200 # features/steps/patroni_api.py:100 1411s Apr 14 09:50:35 1411s Apr 14 09:50:35 Feature: permanent slots # features/permanent_slots.feature:1 1411s Apr 14 09:50:35 1411s Apr 14 09:50:35 Scenario: check that physical permanent slots are created # features/permanent_slots.feature:2 1411s Apr 14 09:50:35 Given I start postgres-0 # features/steps/basic_replication.py:20 1415s Apr 14 09:50:39 Then postgres-0 is a leader after 10 seconds # features/steps/patroni_api.py:31 1416s Apr 14 09:50:40 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 1416s Apr 14 09:50:40 When I issue a PATCH request to http://127.0.0.1:8008/config with {"slots":{"test_physical":0,"postgres_3":0},"postgresql":{"parameters":{"wal_level":"logical"}}} # features/steps/patroni_api.py:73 1416s Apr 14 09:50:40 Then I receive a response code 200 # features/steps/patroni_api.py:100 1416s Apr 14 09:50:40 And Response on GET http://127.0.0.1:8008/config contains slots after 10 seconds # features/steps/patroni_api.py:158 1416s Apr 14 09:50:40 When I start postgres-1 # features/steps/basic_replication.py:20 1420s Apr 14 09:50:44 And I configure and start postgres-2 with a tag nofailover true # features/steps/cascading_replication.py:7 1424s Apr 14 09:50:48 And I configure and start postgres-3 with a tag replicatefrom postgres-2 # features/steps/cascading_replication.py:7 1428s Apr 14 09:50:52 Then postgres-0 has a physical replication slot named test_physical after 10 seconds # features/steps/slots.py:82 1428s Apr 14 09:50:52 And postgres-0 has a physical replication slot named postgres_1 after 10 seconds # features/steps/slots.py:82 1428s Apr 14 09:50:52 And postgres-0 has a physical replication slot named postgres_2 after 10 seconds # features/steps/slots.py:82 1428s Apr 14 09:50:52 And postgres-2 has a physical replication slot named postgres_3 after 10 seconds # features/steps/slots.py:82 1428s Apr 14 09:50:52 And postgres-2 does not have a replication slot named test_physical # features/steps/slots.py:41 1428s Apr 14 09:50:52 1428s Apr 14 09:50:52 @slot-advance 1428s Apr 14 09:50:52 Scenario: check that logical permanent slots are created # features/permanent_slots.feature:19 1428s Apr 14 09:50:52 Given I run patronictl.py restart batman postgres-0 --force # features/steps/patroni_api.py:88 1432s Apr 14 09:50:55 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:73 1432s Apr 14 09:50:55 Then postgres-0 has a logical replication slot named test_logical with the test_decoding plugin after 10 seconds # features/steps/slots.py:20 1433s Apr 14 09:50:56 1433s Apr 14 09:50:56 @slot-advance 1433s Apr 14 09:50:56 Scenario: check that permanent slots are created on replicas # features/permanent_slots.feature:25 1433s Apr 14 09:50:56 Given postgres-1 has a logical replication slot named test_logical with the test_decoding plugin after 10 seconds # features/steps/slots.py:20 1438s Apr 14 09:51:01 Then Logical slot test_logical is in sync between postgres-0 and postgres-1 after 10 seconds # features/steps/slots.py:52 1438s Apr 14 09:51:01 And Logical slot test_logical is in sync between postgres-0 and postgres-3 after 10 seconds # features/steps/slots.py:52 1439s Apr 14 09:51:02 And postgres-1 has a physical replication slot named test_physical after 2 seconds # features/steps/slots.py:82 1439s Apr 14 09:51:02 And postgres-2 does not have a replication slot named test_logical # features/steps/slots.py:41 1439s Apr 14 09:51:02 And postgres-3 has a physical replication slot named test_physical after 2 seconds # features/steps/slots.py:82 1439s Apr 14 09:51:02 1439s Apr 14 09:51:02 @slot-advance 1439s Apr 14 09:51:02 Scenario: check permanent physical slots that match with member names # features/permanent_slots.feature:34 1439s Apr 14 09:51:02 Given postgres-0 has a physical replication slot named postgres_3 after 2 seconds # features/steps/slots.py:82 1439s Apr 14 09:51:02 And postgres-1 has a physical replication slot named postgres_0 after 2 seconds # features/steps/slots.py:82 1439s Apr 14 09:51:02 And postgres-1 has a physical replication slot named postgres_2 after 2 seconds # features/steps/slots.py:82 1439s Apr 14 09:51:02 And postgres-1 has a physical replication slot named postgres_3 after 2 seconds # features/steps/slots.py:82 1439s Apr 14 09:51:02 And postgres-2 does not have a replication slot named postgres_0 # features/steps/slots.py:41 1439s Apr 14 09:51:02 And postgres-2 does not have a replication slot named postgres_1 # features/steps/slots.py:41 1439s Apr 14 09:51:02 And postgres-2 has a physical replication slot named postgres_3 after 2 seconds # features/steps/slots.py:82 1439s Apr 14 09:51:02 And postgres-3 has a physical replication slot named postgres_0 after 2 seconds # features/steps/slots.py:82 1439s Apr 14 09:51:02 And postgres-3 has a physical replication slot named postgres_1 after 2 seconds # features/steps/slots.py:82 1439s Apr 14 09:51:02 And postgres-3 has a physical replication slot named postgres_2 after 2 seconds # features/steps/slots.py:82 1439s Apr 14 09:51:02 1439s Apr 14 09:51:02 @slot-advance 1439s Apr 14 09:51:02 Scenario: check that permanent slots are advanced on replicas # features/permanent_slots.feature:47 1439s Apr 14 09:51:02 Given I add the table replicate_me to postgres-0 # features/steps/basic_replication.py:66 1439s Apr 14 09:51:03 When I get all changes from logical slot test_logical on postgres-0 # features/steps/slots.py:72 1439s Apr 14 09:51:03 And I get all changes from physical slot test_physical on postgres-0 # features/steps/slots.py:77 1439s Apr 14 09:51:03 Then Logical slot test_logical is in sync between postgres-0 and postgres-1 after 10 seconds # features/steps/slots.py:52 1442s Apr 14 09:51:06 And Physical slot test_physical is in sync between postgres-0 and postgres-1 after 10 seconds # features/steps/slots.py:52 1442s Apr 14 09:51:06 And Logical slot test_logical is in sync between postgres-0 and postgres-3 after 10 seconds # features/steps/slots.py:52 1442s Apr 14 09:51:06 And Physical slot test_physical is in sync between postgres-0 and postgres-3 after 10 seconds # features/steps/slots.py:52 1442s Apr 14 09:51:06 And Physical slot postgres_1 is in sync between postgres-0 and postgres-3 after 10 seconds # features/steps/slots.py:52 1442s Apr 14 09:51:06 And Physical slot postgres_3 is in sync between postgres-2 and postgres-0 after 20 seconds # features/steps/slots.py:52 1442s Apr 14 09:51:06 And Physical slot postgres_3 is in sync between postgres-2 and postgres-1 after 10 seconds # features/steps/slots.py:52 1442s Apr 14 09:51:06 1442s Apr 14 09:51:06 @slot-advance 1442s Apr 14 09:51:06 Scenario: check that permanent slots and member slots are written to the /status key # features/permanent_slots.feature:60 1442s Apr 14 09:51:06 Given "status" key in DCS has test_physical in slots # features/steps/slots.py:118 1442s Apr 14 09:51:06 And "status" key in DCS has postgres_0 in slots # features/steps/slots.py:118 1442s Apr 14 09:51:06 And "status" key in DCS has postgres_1 in slots # features/steps/slots.py:118 1442s Apr 14 09:51:06 And "status" key in DCS has postgres_2 in slots # features/steps/slots.py:118 1442s Apr 14 09:51:06 And "status" key in DCS has postgres_3 in slots # features/steps/slots.py:118 1442s Apr 14 09:51:06 1442s Apr 14 09:51:06 @slot-advance 1442s Apr 14 09:51:06 Scenario: check that only non-permanent member slots are written to the retain_slots in /status key # features/permanent_slots.feature:68 1442s Apr 14 09:51:06 Given "status" key in DCS has postgres_0 in retain_slots # features/steps/slots.py:118 1442s Apr 14 09:51:06 And "status" key in DCS has postgres_1 in retain_slots # features/steps/slots.py:118 1442s Apr 14 09:51:06 And "status" key in DCS has postgres_2 in retain_slots # features/steps/slots.py:118 1442s Apr 14 09:51:06 And "status" key in DCS does not have postgres_3 in retain_slots # features/steps/slots.py:124 1442s Apr 14 09:51:06 1442s Apr 14 09:51:06 Scenario: check permanent physical replication slot after failover # features/permanent_slots.feature:74 1442s Apr 14 09:51:06 Given I shut down postgres-3 # features/steps/basic_replication.py:41 1443s Apr 14 09:51:07 And I shut down postgres-2 # features/steps/basic_replication.py:41 1444s Apr 14 09:51:08 And I shut down postgres-0 # features/steps/basic_replication.py:41 1446s Apr 14 09:51:10 Then postgres-1 has a physical replication slot named test_physical after 10 seconds # features/steps/slots.py:82 1446s Apr 14 09:51:10 And postgres-1 has a physical replication slot named postgres_0 after 10 seconds # features/steps/slots.py:82 1446s Apr 14 09:51:10 And postgres-1 has a physical replication slot named postgres_3 after 10 seconds # features/steps/slots.py:82 1446s Apr 14 09:51:10 When I start postgres-0 # features/steps/basic_replication.py:20 1449s Apr 14 09:51:13 Then postgres-0 role is the replica after 20 seconds # features/steps/basic_replication.py:117 1449s Apr 14 09:51:13 And physical replication slot named postgres_1 on postgres-0 has no xmin value after 10 seconds # features/steps/slots.py:98 1449s Apr 14 09:51:13 And postgres-0 has a physical replication slot named postgres_2 after 10 seconds # features/steps/slots.py:82 1449s Apr 14 09:51:13 And postgres-0 has a physical replication slot named postgres_3 after 10 seconds # features/steps/slots.py:82 1452s Apr 14 09:51:16 1452s Apr 14 09:51:16 Feature: priority replication # features/priority_failover.feature:1 1452s Apr 14 09:51:16 We should check that we can give nodes priority during failover 1452s Apr 14 09:51:16 Scenario: check failover priority 0 prevents leaderships # features/priority_failover.feature:4 1452s Apr 14 09:51:16 Given I configure and start postgres-0 with a tag failover_priority 1 # features/steps/cascading_replication.py:7 1456s Apr 14 09:51:20 And I configure and start postgres-1 with a tag failover_priority 0 # features/steps/cascading_replication.py:7 1460s Apr 14 09:51:24 Then replication works from postgres-0 to postgres-1 after 20 seconds # features/steps/basic_replication.py:124 1462s Apr 14 09:51:25 When I shut down postgres-0 # features/steps/basic_replication.py:41 1464s Apr 14 09:51:27 And there is one of ["following a different leader because I am not allowed to promote"] INFO in the postgres-1 patroni log after 5 seconds # features/steps/basic_replication.py:133 1466s Apr 14 09:51:29 Then postgres-1 role is the secondary after 10 seconds # features/steps/basic_replication.py:117 1466s Apr 14 09:51:29 When I start postgres-0 # features/steps/basic_replication.py:20 1469s Apr 14 09:51:32 Then postgres-0 role is the primary after 10 seconds # features/steps/basic_replication.py:117 1470s Apr 14 09:51:33 1470s Apr 14 09:51:33 Scenario: check higher failover priority is respected # features/priority_failover.feature:14 1470s Apr 14 09:51:33 Given I configure and start postgres-2 with a tag failover_priority 1 # features/steps/cascading_replication.py:7 1474s Apr 14 09:51:37 And I configure and start postgres-3 with a tag failover_priority 2 # features/steps/cascading_replication.py:7 1478s Apr 14 09:51:41 Then replication works from postgres-0 to postgres-2 after 20 seconds # features/steps/basic_replication.py:124 1479s Apr 14 09:51:43 And replication works from postgres-0 to postgres-3 after 20 seconds # features/steps/basic_replication.py:124 1480s Apr 14 09:51:44 When I shut down postgres-0 # features/steps/basic_replication.py:41 1482s Apr 14 09:51:46 Then postgres-3 role is the primary after 10 seconds # features/steps/basic_replication.py:117 1482s Apr 14 09:51:46 And there is one of ["postgres-3 has equally tolerable WAL position and priority 2, while this node has priority 1","Wal position of postgres-3 is ahead of my wal position"] INFO in the postgres-2 patroni log after 5 seconds # features/steps/basic_replication.py:133 1482s Apr 14 09:51:46 1482s Apr 14 09:51:46 Scenario: check conflicting configuration handling # features/priority_failover.feature:23 1482s Apr 14 09:51:46 When I set nofailover tag in postgres-2 config # features/steps/patroni_api.py:133 1482s Apr 14 09:51:46 And I issue an empty POST request to http://127.0.0.1:8010/reload # features/steps/patroni_api.py:68 1482s Apr 14 09:51:46 Then I receive a response code 202 # features/steps/patroni_api.py:100 1482s Apr 14 09:51:46 And there is one of ["Conflicting configuration between nofailover: True and failover_priority: 1. Defaulting to nofailover: True"] WARNING in the postgres-2 patroni log after 5 seconds # features/steps/basic_replication.py:133 1484s Apr 14 09:51:48 And "members/postgres-2" key in DCS has tags={'failover_priority': '1', 'nofailover': True} after 10 seconds # features/steps/cascading_replication.py:23 1485s Apr 14 09:51:49 When I issue a POST request to http://127.0.0.1:8010/failover with {"candidate": "postgres-2"} # features/steps/patroni_api.py:73 1485s Apr 14 09:51:49 Then I receive a response code 412 # features/steps/patroni_api.py:100 1485s Apr 14 09:51:49 And I receive a response text "failover is not possible: no good candidates have been found" # features/steps/patroni_api.py:100 1485s Apr 14 09:51:49 When I reset nofailover tag in postgres-1 config # features/steps/patroni_api.py:133 1485s Apr 14 09:51:49 And I issue an empty POST request to http://127.0.0.1:8009/reload # features/steps/patroni_api.py:68 1485s Apr 14 09:51:49 Then I receive a response code 202 # features/steps/patroni_api.py:100 1485s Apr 14 09:51:49 And there is one of ["Conflicting configuration between nofailover: False and failover_priority: 0. Defaulting to nofailover: False"] WARNING in the postgres-1 patroni log after 5 seconds # features/steps/basic_replication.py:133 1486s Apr 14 09:51:50 And "members/postgres-1" key in DCS has tags={'failover_priority': '0', 'nofailover': False} after 10 seconds # features/steps/cascading_replication.py:23 1488s Apr 14 09:51:51 And I issue a POST request to http://127.0.0.1:8009/failover with {"candidate": "postgres-1"} # features/steps/patroni_api.py:73 1491s Apr 14 09:51:54 Then I receive a response code 200 # features/steps/patroni_api.py:100 1491s Apr 14 09:51:54 And postgres-1 role is the primary after 10 seconds # features/steps/basic_replication.py:117 1496s Apr 14 09:51:59 1496s Apr 14 09:51:59 Feature: quorum commit # features/quorum_commit.feature:1 1496s Apr 14 09:51:59 Check basic workfrlows when quorum commit is enabled 1496s Apr 14 09:51:59 Scenario: check enable quorum commit and that the only leader promotes after restart # features/quorum_commit.feature:4 1496s Apr 14 09:51:59 Given I start postgres-0 # features/steps/basic_replication.py:20 1501s Apr 14 09:52:04 Then postgres-0 is a leader after 10 seconds # features/steps/patroni_api.py:31 1501s Apr 14 09:52:05 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 1501s Apr 14 09:52:05 When I issue a PATCH request to http://127.0.0.1:8008/config with {"ttl": 20, "synchronous_mode": "quorum"} # features/steps/patroni_api.py:73 1501s Apr 14 09:52:05 Then I receive a response code 200 # features/steps/patroni_api.py:100 1501s Apr 14 09:52:05 And sync key in DCS has leader=postgres-0 after 20 seconds # features/steps/quorum_commit.py:8 1501s Apr 14 09:52:05 And sync key in DCS has quorum=0 after 2 seconds # features/steps/quorum_commit.py:8 1501s Apr 14 09:52:05 And synchronous_standby_names on postgres-0 is set to '_empty_str_' after 2 seconds # features/steps/quorum_commit.py:39 1501s Apr 14 09:52:05 When I shut down postgres-0 # features/steps/basic_replication.py:41 1503s Apr 14 09:52:07 And sync key in DCS has leader=postgres-0 after 2 seconds # features/steps/quorum_commit.py:8 1503s Apr 14 09:52:07 When I start postgres-0 # features/steps/basic_replication.py:20 1506s Apr 14 09:52:10 Then postgres-0 role is the primary after 10 seconds # features/steps/basic_replication.py:117 1507s Apr 14 09:52:11 When I issue a PATCH request to http://127.0.0.1:8008/config with {"synchronous_mode_strict": true} # features/steps/patroni_api.py:73 1507s Apr 14 09:52:11 Then synchronous_standby_names on postgres-0 is set to 'ANY 1 (*)' after 10 seconds # features/steps/quorum_commit.py:39 1508s Apr 14 09:52:12 1508s Apr 14 09:52:12 Scenario: check failover with one quorum standby # features/quorum_commit.feature:20 1508s Apr 14 09:52:12 Given I start postgres-1 # features/steps/basic_replication.py:20 1512s Apr 14 09:52:16 Then sync key in DCS has sync_standby=postgres-1 after 10 seconds # features/steps/quorum_commit.py:8 1515s Apr 14 09:52:19 And synchronous_standby_names on postgres-0 is set to 'ANY 1 ("postgres-1")' after 2 seconds # features/steps/quorum_commit.py:39 1515s Apr 14 09:52:19 When I shut down postgres-0 # features/steps/basic_replication.py:41 1517s Apr 14 09:52:21 Then postgres-1 role is the primary after 10 seconds # features/steps/basic_replication.py:117 1518s Apr 14 09:52:22 And sync key in DCS has quorum=0 after 10 seconds # features/steps/quorum_commit.py:8 1518s Apr 14 09:52:22 Then synchronous_standby_names on postgres-1 is set to 'ANY 1 (*)' after 10 seconds # features/steps/quorum_commit.py:39 1521s Apr 14 09:52:25 When I start postgres-0 # features/steps/basic_replication.py:20 1524s Apr 14 09:52:28 Then sync key in DCS has leader=postgres-1 after 10 seconds # features/steps/quorum_commit.py:8 1524s Apr 14 09:52:28 Then sync key in DCS has sync_standby=postgres-0 after 10 seconds # features/steps/quorum_commit.py:8 1526s Apr 14 09:52:30 And synchronous_standby_names on postgres-1 is set to 'ANY 1 ("postgres-0")' after 2 seconds # features/steps/quorum_commit.py:39 1526s Apr 14 09:52:30 1526s Apr 14 09:52:30 Scenario: check behavior with three nodes and different replication factor # features/quorum_commit.feature:33 1526s Apr 14 09:52:30 Given I start postgres-2 # features/steps/basic_replication.py:20 1530s Apr 14 09:52:34 Then sync key in DCS has sync_standby=postgres-0,postgres-2 after 10 seconds # features/steps/quorum_commit.py:8 1532s Apr 14 09:52:35 And sync key in DCS has quorum=1 after 2 seconds # features/steps/quorum_commit.py:8 1532s Apr 14 09:52:35 And synchronous_standby_names on postgres-1 is set to 'ANY 1 ("postgres-0","postgres-2")' after 2 seconds # features/steps/quorum_commit.py:39 1532s Apr 14 09:52:35 When I issue a PATCH request to http://127.0.0.1:8009/config with {"synchronous_node_count": 2} # features/steps/patroni_api.py:73 1532s Apr 14 09:52:35 Then sync key in DCS has quorum=0 after 10 seconds # features/steps/quorum_commit.py:8 1533s Apr 14 09:52:36 And synchronous_standby_names on postgres-1 is set to 'ANY 2 ("postgres-0","postgres-2")' after 2 seconds # features/steps/quorum_commit.py:39 1533s Apr 14 09:52:36 1533s Apr 14 09:52:36 Scenario: switch from quorum replication to good old multisync and back # features/quorum_commit.feature:42 1533s Apr 14 09:52:36 Given I issue a PATCH request to http://127.0.0.1:8009/config with {"synchronous_mode": true, "synchronous_node_count": 1} # features/steps/patroni_api.py:73 1533s Apr 14 09:52:36 And I shut down postgres-0 # features/steps/basic_replication.py:41 1534s Apr 14 09:52:37 Then synchronous_standby_names on postgres-1 is set to '"postgres-2"' after 10 seconds # features/steps/quorum_commit.py:39 1536s Apr 14 09:52:39 And sync key in DCS has sync_standby=postgres-2 after 10 seconds # features/steps/quorum_commit.py:8 1538s Apr 14 09:52:41 Then sync key in DCS has quorum=0 after 2 seconds # features/steps/quorum_commit.py:8 1538s Apr 14 09:52:41 When I issue a PATCH request to http://127.0.0.1:8009/config with {"synchronous_mode": "quorum"} # features/steps/patroni_api.py:73 1538s Apr 14 09:52:41 And I start postgres-0 # features/steps/basic_replication.py:20 1541s Apr 14 09:52:44 Then synchronous_standby_names on postgres-1 is set to 'ANY 1 ("postgres-0","postgres-2")' after 10 seconds # features/steps/quorum_commit.py:39 1542s Apr 14 09:52:45 And sync key in DCS has sync_standby=postgres-0,postgres-2 after 10 seconds # features/steps/quorum_commit.py:8 1542s Apr 14 09:52:45 Then sync key in DCS has quorum=1 after 2 seconds # features/steps/quorum_commit.py:8 1542s Apr 14 09:52:45 1542s Apr 14 09:52:45 Scenario: REST API and patronictl # features/quorum_commit.feature:54 1542s Apr 14 09:52:45 Given I run patronictl.py list batman # features/steps/patroni_api.py:88 1543s Apr 14 09:52:46 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 1543s Apr 14 09:52:46 And I receive a response output "Quorum Standby" # features/steps/patroni_api.py:100 1543s Apr 14 09:52:46 And Status code on GET http://127.0.0.1:8008/quorum is 200 after 3 seconds # features/steps/patroni_api.py:144 1543s Apr 14 09:52:46 And Status code on GET http://127.0.0.1:8010/quorum is 200 after 3 seconds # features/steps/patroni_api.py:144 1543s Apr 14 09:52:47 1543s Apr 14 09:52:47 Scenario: nosync node is removed from voters and synchronous_standby_names # features/quorum_commit.feature:61 1543s Apr 14 09:52:47 Given I add tag nosync true to postgres-2 config # features/steps/patroni_api.py:139 1543s Apr 14 09:52:47 When I issue an empty POST request to http://127.0.0.1:8010/reload # features/steps/patroni_api.py:68 1543s Apr 14 09:52:47 Then I receive a response code 202 # features/steps/patroni_api.py:100 1543s Apr 14 09:52:47 And sync key in DCS has quorum=0 after 10 seconds # features/steps/quorum_commit.py:8 1546s Apr 14 09:52:50 And sync key in DCS has sync_standby=postgres-0 after 10 seconds # features/steps/quorum_commit.py:8 1546s Apr 14 09:52:50 And synchronous_standby_names on postgres-1 is set to 'ANY 1 ("postgres-0")' after 2 seconds # features/steps/quorum_commit.py:39 1546s Apr 14 09:52:50 And Status code on GET http://127.0.0.1:8010/quorum is 503 after 10 seconds # features/steps/patroni_api.py:144 1553s Apr 14 09:52:57 1553s Apr 14 09:52:57 Feature: recovery # features/recovery.feature:1 1553s Apr 14 09:52:57 We want to check that crashed postgres is started back 1553s Apr 14 09:52:57 Scenario: check that timeline is not incremented when primary is started after crash # features/recovery.feature:4 1553s Apr 14 09:52:57 Given I start postgres-0 # features/steps/basic_replication.py:20 1557s Apr 14 09:53:01 Then postgres-0 is a leader after 10 seconds # features/steps/patroni_api.py:31 1558s Apr 14 09:53:02 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 1558s Apr 14 09:53:02 When I start postgres-1 # features/steps/basic_replication.py:20 1563s Apr 14 09:53:07 And I add the table foo to postgres-0 # features/steps/basic_replication.py:66 1564s Apr 14 09:53:07 Then table foo is present on postgres-1 after 20 seconds # features/steps/basic_replication.py:105 1565s Apr 14 09:53:08 When I kill postmaster on postgres-0 # features/steps/basic_replication.py:56 1565s Apr 14 09:53:08 waiting for server to shut down.... done 1565s Apr 14 09:53:08 server stopped 1565s Apr 14 09:53:08 Then postgres-0 role is the primary after 10 seconds # features/steps/basic_replication.py:117 1568s Apr 14 09:53:11 When I issue a GET request to http://127.0.0.1:8008/ # features/steps/patroni_api.py:63 1568s Apr 14 09:53:11 Then I receive a response code 200 # features/steps/patroni_api.py:100 1568s Apr 14 09:53:11 And I receive a response role primary # features/steps/patroni_api.py:100 1568s Apr 14 09:53:11 And I receive a response timeline 1 # features/steps/patroni_api.py:100 1568s Apr 14 09:53:11 And "members/postgres-0" key in DCS has state=running after 12 seconds # features/steps/cascading_replication.py:23 1568s Apr 14 09:53:11 And replication works from postgres-0 to postgres-1 after 15 seconds # features/steps/basic_replication.py:124 1571s Apr 14 09:53:15 1571s Apr 14 09:53:15 Scenario: check immediate failover when master_start_timeout=0 # features/recovery.feature:20 1571s Apr 14 09:53:15 Given I issue a PATCH request to http://127.0.0.1:8008/config with {"master_start_timeout": 0} # features/steps/patroni_api.py:73 1571s Apr 14 09:53:15 Then I receive a response code 200 # features/steps/patroni_api.py:100 1571s Apr 14 09:53:15 And Response on GET http://127.0.0.1:8008/config contains master_start_timeout after 10 seconds # features/steps/patroni_api.py:158 1571s Apr 14 09:53:15 When I kill postmaster on postgres-0 # features/steps/basic_replication.py:56 1571s Apr 14 09:53:15 waiting for server to shut down.... done 1571s Apr 14 09:53:15 server stopped 1571s Apr 14 09:53:15 Then postgres-1 is a leader after 10 seconds # features/steps/patroni_api.py:31 1573s Apr 14 09:53:17 And postgres-1 role is the primary after 10 seconds # features/steps/basic_replication.py:117 1574s Apr 14 09:53:18 1574s Apr 14 09:53:18 Scenario: check crashed primary demotes after failed attempt to start # features/recovery.feature:28 1574s Apr 14 09:53:18 Given I issue a PATCH request to http://127.0.0.1:8009/config with {"master_start_timeout": null} # features/steps/patroni_api.py:73 1574s Apr 14 09:53:18 Then I receive a response code 200 # features/steps/patroni_api.py:100 1574s Apr 14 09:53:18 And postgres-0 role is the replica after 10 seconds # features/steps/basic_replication.py:117 1576s Apr 14 09:53:20 When I ensure postgres-1 fails to start after a failure # features/steps/recovery.py:6 1576s Apr 14 09:53:20 When I kill postmaster on postgres-1 # features/steps/basic_replication.py:56 1576s Apr 14 09:53:20 waiting for server to shut down.... done 1576s Apr 14 09:53:20 server stopped 1576s Apr 14 09:53:20 Then postgres-0 is a leader after 10 seconds # features/steps/patroni_api.py:31 1577s Apr 14 09:53:21 And there is a postgres-1_cb.log with "on_role_change demoted batman" in postgres-1 data directory # features/steps/cascading_replication.py:12 1581s Apr 14 09:53:24 1581s Apr 14 09:53:24 Feature: standby cluster # features/standby_cluster.feature:1 1581s Apr 14 09:53:24 1581s Apr 14 09:53:24 Scenario: prepare the cluster with logical slots # features/standby_cluster.feature:2 1581s Apr 14 09:53:24 Given I start postgres-1 # features/steps/basic_replication.py:20 1585s Apr 14 09:53:28 Then postgres-1 is a leader after 10 seconds # features/steps/patroni_api.py:31 1586s Apr 14 09:53:29 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 1586s Apr 14 09:53:29 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:73 1586s Apr 14 09:53:29 Then I receive a response code 200 # features/steps/patroni_api.py:100 1586s Apr 14 09:53:29 And Response on GET http://127.0.0.1:8009/config contains slots after 10 seconds # features/steps/patroni_api.py:158 1586s Apr 14 09:53:29 And I sleep for 3 seconds # features/steps/patroni_api.py:41 1589s Apr 14 09:53:32 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:73 1589s Apr 14 09:53:32 Then I receive a response code 200 # features/steps/patroni_api.py:100 1589s Apr 14 09:53:32 And I do a backup of postgres-1 # features/steps/custom_bootstrap.py:25 1589s Apr 14 09:53:33 When I start postgres-0 # features/steps/basic_replication.py:20 1594s Apr 14 09:53:37 Then "members/postgres-0" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 1594s Apr 14 09:53:37 And replication works from postgres-1 to postgres-0 after 15 seconds # features/steps/basic_replication.py:124 1595s Apr 14 09:53:38 When I issue a GET request to http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:63 1595s Apr 14 09:53:38 Then I receive a response code 200 # features/steps/patroni_api.py:100 1595s Apr 14 09:53:38 And I receive a response replication_state streaming # features/steps/patroni_api.py:100 1595s Apr 14 09:53:38 And "members/postgres-0" key in DCS has replication_state=streaming after 10 seconds # features/steps/cascading_replication.py:23 1595s Apr 14 09:53:38 1595s Apr 14 09:53:38 @slot-advance 1595s Apr 14 09:53:38 Scenario: check permanent logical slots are synced to the replica # features/standby_cluster.feature:22 1595s Apr 14 09:53:38 Given I run patronictl.py restart batman postgres-1 --force # features/steps/patroni_api.py:88 1598s Apr 14 09:53:41 Then Logical slot test_logical is in sync between postgres-0 and postgres-1 after 10 seconds # features/steps/slots.py:52 1605s Apr 14 09:53:49 1605s Apr 14 09:53:49 Scenario: Detach exiting node from the cluster # features/standby_cluster.feature:26 1605s Apr 14 09:53:49 When I shut down postgres-1 # features/steps/basic_replication.py:41 1607s Apr 14 09:53:51 Then postgres-0 is a leader after 10 seconds # features/steps/patroni_api.py:31 1607s Apr 14 09:53:51 And "members/postgres-0" key in DCS has role=primary after 5 seconds # features/steps/cascading_replication.py:23 1608s Apr 14 09:53:52 When I issue a GET request to http://127.0.0.1:8008/ # features/steps/patroni_api.py:63 1608s Apr 14 09:53:52 Then I receive a response code 200 # features/steps/patroni_api.py:100 1608s Apr 14 09:53:52 1608s Apr 14 09:53:52 Scenario: check replication of a single table in a standby cluster # features/standby_cluster.feature:33 1608s Apr 14 09:53:52 Given I start postgres-1 in a standby cluster batman1 as a clone of postgres-0 # features/steps/standby_cluster.py:23 1611s Apr 14 09:53:55 Then postgres-1 is a leader of batman1 after 10 seconds # features/steps/custom_bootstrap.py:16 1611s Apr 14 09:53:55 When I add the table foo to postgres-0 # features/steps/basic_replication.py:66 1611s Apr 14 09:53:55 Then table foo is present on postgres-1 after 20 seconds # features/steps/basic_replication.py:105 1611s Apr 14 09:53:55 When I issue a GET request to http://127.0.0.1:8009/patroni # features/steps/patroni_api.py:63 1611s Apr 14 09:53:55 Then I receive a response code 200 # features/steps/patroni_api.py:100 1611s Apr 14 09:53:55 And I receive a response replication_state streaming # features/steps/patroni_api.py:100 1611s Apr 14 09:53:55 And I sleep for 3 seconds # features/steps/patroni_api.py:41 1614s Apr 14 09:53:58 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:63 1614s Apr 14 09:53:58 Then I receive a response code 503 # features/steps/patroni_api.py:100 1614s Apr 14 09:53:58 When I issue a GET request to http://127.0.0.1:8009/standby_leader # features/steps/patroni_api.py:63 1614s Apr 14 09:53:58 Then I receive a response code 200 # features/steps/patroni_api.py:100 1614s Apr 14 09:53:58 And I receive a response role standby_leader # features/steps/patroni_api.py:100 1614s Apr 14 09:53:58 And there is a postgres-1_cb.log with "on_role_change standby_leader batman1" in postgres-1 data directory # features/steps/cascading_replication.py:12 1614s Apr 14 09:53:58 When I start postgres-2 in a cluster batman1 # features/steps/standby_cluster.py:12 1618s Apr 14 09:54:02 Then postgres-2 role is the replica after 24 seconds # features/steps/basic_replication.py:117 1618s Apr 14 09:54:02 And postgres-2 is replicating from postgres-1 after 10 seconds # features/steps/standby_cluster.py:52 1618s Apr 14 09:54:02 And table foo is present on postgres-2 after 20 seconds # features/steps/basic_replication.py:105 1618s Apr 14 09:54:02 When I issue a GET request to http://127.0.0.1:8010/patroni # features/steps/patroni_api.py:63 1618s Apr 14 09:54:02 Then I receive a response code 200 # features/steps/patroni_api.py:100 1618s Apr 14 09:54:02 And I receive a response replication_state streaming # features/steps/patroni_api.py:100 1618s Apr 14 09:54:02 And postgres-1 does not have a replication slot named test_logical # features/steps/slots.py:41 1618s Apr 14 09:54:02 1618s Apr 14 09:54:02 Scenario: check switchover # features/standby_cluster.feature:57 1618s Apr 14 09:54:02 Given I run patronictl.py switchover batman1 --force # features/steps/patroni_api.py:88 1622s Apr 14 09:54:05 Then Status code on GET http://127.0.0.1:8010/standby_leader is 200 after 10 seconds # features/steps/patroni_api.py:144 1622s Apr 14 09:54:05 And postgres-1 is replicating from postgres-2 after 32 seconds # features/steps/standby_cluster.py:52 1625s Apr 14 09:54:08 And there is a postgres-2_cb.log with "on_start replica batman1\non_role_change standby_leader batman1" in postgres-2 data directory # features/steps/cascading_replication.py:12 1625s Apr 14 09:54:08 1625s Apr 14 09:54:08 Scenario: check failover # features/standby_cluster.feature:63 1625s Apr 14 09:54:08 When I kill postgres-2 # features/steps/basic_replication.py:46 1626s Apr 14 09:54:09 And I kill postmaster on postgres-2 # features/steps/basic_replication.py:56 1626s Apr 14 09:54:09 waiting for server to shut down.... done 1626s Apr 14 09:54:09 server stopped 1626s Apr 14 09:54:09 Then postgres-1 is replicating from postgres-0 after 32 seconds # features/steps/standby_cluster.py:52 1645s Apr 14 09:54:28 And Status code on GET http://127.0.0.1:8009/standby_leader is 200 after 10 seconds # features/steps/patroni_api.py:144 1645s Apr 14 09:54:28 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:63 1645s Apr 14 09:54:29 Then I receive a response code 503 # features/steps/patroni_api.py:100 1645s Apr 14 09:54:29 And I receive a response role standby_leader # features/steps/patroni_api.py:100 1645s Apr 14 09:54:29 And replication works from postgres-0 to postgres-1 after 15 seconds # features/steps/basic_replication.py:124 1646s Apr 14 09:54:30 And there is a postgres-1_cb.log with "on_role_change replica batman1\non_role_change standby_leader batman1" in postgres-1 data directory # features/steps/cascading_replication.py:12 1650s Apr 14 09:54:34 1650s Apr 14 09:54:34 Feature: watchdog # features/watchdog.feature:1 1650s Apr 14 09:54:34 Verify that watchdog gets pinged and triggered under appropriate circumstances. 1650s Apr 14 09:54:34 Scenario: watchdog is opened and pinged # features/watchdog.feature:4 1650s Apr 14 09:54:34 Given I start postgres-0 with watchdog # features/steps/watchdog.py:17 1654s Apr 14 09:54:38 Then postgres-0 is a leader after 10 seconds # features/steps/patroni_api.py:31 1655s Apr 14 09:54:39 And postgres-0 role is the primary after 10 seconds # features/steps/basic_replication.py:117 1655s Apr 14 09:54:39 And postgres-0 watchdog has been pinged after 10 seconds # features/steps/watchdog.py:22 1656s Apr 14 09:54:40 And postgres-0 watchdog has a 15 second timeout # features/steps/watchdog.py:35 1656s Apr 14 09:54:40 1656s Apr 14 09:54:40 Scenario: watchdog is reconfigured after global ttl changed # features/watchdog.feature:11 1656s Apr 14 09:54:40 Given I run patronictl.py edit-config batman -s ttl=30 --force # features/steps/patroni_api.py:88 1657s Apr 14 09:54:41 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 1657s Apr 14 09:54:41 And I receive a response output "+ttl: 30" # features/steps/patroni_api.py:100 1657s Apr 14 09:54:41 When I sleep for 4 seconds # features/steps/patroni_api.py:41 1661s Apr 14 09:54:45 Then postgres-0 watchdog has a 25 second timeout # features/steps/watchdog.py:35 1661s Apr 14 09:54:45 1661s Apr 14 09:54:45 Scenario: watchdog is disabled during pause # features/watchdog.feature:18 1661s Apr 14 09:54:45 Given I run patronictl.py pause batman # features/steps/patroni_api.py:88 1663s Apr 14 09:54:46 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 1663s Apr 14 09:54:46 When I sleep for 2 seconds # features/steps/patroni_api.py:41 1665s Apr 14 09:54:48 Then postgres-0 watchdog has been closed # features/steps/watchdog.py:30 1665s Apr 14 09:54:48 1665s Apr 14 09:54:48 Scenario: watchdog is opened and pinged after resume # features/watchdog.feature:24 1665s Apr 14 09:54:48 Given I reset postgres-0 watchdog state # features/steps/watchdog.py:40 1665s Apr 14 09:54:48 And I run patronictl.py resume batman # features/steps/patroni_api.py:88 1666s Apr 14 09:54:49 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 1666s Apr 14 09:54:49 And postgres-0 watchdog has been pinged after 10 seconds # features/steps/watchdog.py:22 1666s Apr 14 09:54:49 1666s Apr 14 09:54:49 Scenario: watchdog is disabled when shutting down # features/watchdog.feature:30 1666s Apr 14 09:54:49 Given I shut down postgres-0 # features/steps/basic_replication.py:41 1668s Apr 14 09:54:51 Then postgres-0 watchdog has been closed # features/steps/watchdog.py:30 1668s Apr 14 09:54:51 1668s Apr 14 09:54:51 Scenario: watchdog is triggered if patroni stops responding # features/watchdog.feature:34 1668s Apr 14 09:54:51 Given I reset postgres-0 watchdog state # features/steps/watchdog.py:40 1668s Apr 14 09:54:51 And I start postgres-0 with watchdog # features/steps/watchdog.py:17 1670s Apr 14 09:54:53 Then postgres-0 role is the primary after 10 seconds # features/steps/basic_replication.py:117 1672s Apr 14 09:54:55 When postgres-0 hangs for 30 seconds # features/steps/watchdog.py:53 1672s Apr 14 09:54:55 Then postgres-0 watchdog is triggered after 30 seconds # features/steps/watchdog.py:45 1699s Apr 14 09:55:22 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.10002.XaQHVIMx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.10052.XnhOJAvx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.10112.XfrJBByx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.10158.XaQhnBMx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.10201.XERJcAHx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.10247.XJQlORox 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.10488.XkasxsBx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.10554.XeDnvbTx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.10610.XVqNowex 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.10723.XZgexPlx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.10849.XpoCmQcx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.10987.XPDSYUvx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.11036.XcjGjWcx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.11044.XxPHszgx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.11052.XoQaBBqx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.11068.XXEhIKAx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.6594.XlLAHrbx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.6641.XLJajIbx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.6693.XZrfQvgx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.6748.XJNatNHx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.6796.Xxuxfvhx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.6869.XycpejXx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.6921.XJDyhHcx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.6927.XQHmTBNx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.7014.XmjTbADx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.7112.XDcnyekx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.7128.XZsVvTLx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.7174.XRdWySpx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.7224.XWNpxTex 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.7348.XriZNKEx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.7396.XlGmFkJx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.7452.XbIHEORx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.7552.XFCYcQjx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.7610.XdtCCNVx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.7674.XcqwcyCx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.7767.XWTMVapx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.7871.XafbuXYx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.7907.XlWuuiBx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.7983.XFJKIxbx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.8021.XJksnppx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.8206.XFOJmKRx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.8258.XpOaZEnx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.8278.Xlpnzxqx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.8320.XiPITFrx 1699s Apr 14 09:55:23 Skipping duplicate data .coverage.autopkgtest.8376.XBppqzZx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.8383.XbMdsCyx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.8421.XEnQvNLx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.8467.XUFvlmxx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.8642.XehGrywx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.8646.XbAwEiOx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.8654.XuYuzigx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.8797.XECubZXx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.8846.XlhPdyyx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.8894.Xbuqmyax 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.8942.XRXQCYdx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.8988.XrlKuUux 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.9143.XaEDfkYx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.9204.XUkQETBx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.9240.XHmjIMMx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.9326.XredLkTx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.9408.XIJSISQx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.9467.XIDirKix 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.9781.XxbVyrTx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.9840.XJEbdRjx 1699s Apr 14 09:55:23 Combined data file .coverage.autopkgtest.9905.XrjUlSlx 1702s Apr 14 09:55:26 Name Stmts Miss Cover 1702s Apr 14 09:55:26 -------------------------------------------------------------------------------------------------------- 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/_distutils_hack/__init__.py 101 96 5% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/dateutil/__init__.py 13 4 69% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/dateutil/_common.py 25 15 40% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/dateutil/_version.py 13 3 77% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/dateutil/parser/__init__.py 33 4 88% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/dateutil/parser/_parser.py 810 436 46% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/dateutil/parser/isoparser.py 183 150 18% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/dateutil/relativedelta.py 240 206 14% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/dateutil/tz/__init__.py 4 0 100% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/dateutil/tz/_common.py 151 114 25% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/dateutil/tz/_factories.py 49 21 57% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/dateutil/tz/tz.py 794 626 21% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/dateutil/tz/win.py 152 149 2% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/kazoo/__init__.py 1 0 100% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/kazoo/client.py 629 264 58% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/kazoo/exceptions.py 110 1 99% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/kazoo/handlers/__init__.py 0 0 100% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/kazoo/handlers/threading.py 94 15 84% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/kazoo/handlers/utils.py 222 75 66% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/kazoo/hosts.py 18 4 78% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/kazoo/loggingsupport.py 1 0 100% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/kazoo/protocol/__init__.py 0 0 100% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/kazoo/protocol/connection.py 485 176 64% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/kazoo/protocol/paths.py 33 8 76% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/kazoo/protocol/serialization.py 316 111 65% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/kazoo/protocol/states.py 49 9 82% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/kazoo/python2atexit.py 32 19 41% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/kazoo/recipe/__init__.py 0 0 100% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/kazoo/recipe/barrier.py 97 80 18% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/kazoo/recipe/counter.py 49 36 27% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/kazoo/recipe/election.py 16 10 38% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/kazoo/recipe/lease.py 54 36 33% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/kazoo/recipe/lock.py 295 242 18% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/kazoo/recipe/partitioner.py 155 120 23% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/kazoo/recipe/party.py 62 43 31% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/kazoo/recipe/queue.py 157 126 20% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/kazoo/recipe/watchers.py 172 138 20% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/kazoo/retry.py 60 9 85% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/kazoo/security.py 58 35 40% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/kazoo/version.py 1 0 100% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/__init__.py 13 2 85% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/__main__.py 201 64 68% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/api.py 788 296 62% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/async_executor.py 96 15 84% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/collections.py 56 5 91% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/config.py 357 82 77% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/config_generator.py 212 159 25% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/daemon.py 76 3 96% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/dcs/__init__.py 710 108 85% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/dcs/zookeeper.py 289 66 77% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/dynamic_loader.py 35 7 80% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/exceptions.py 16 0 100% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/file_perm.py 47 10 79% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/global_config.py 87 0 100% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/ha.py 1359 386 72% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/log.py 235 79 66% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/postgresql/__init__.py 825 167 80% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/postgresql/available_parameters/__init__.py 24 3 88% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/postgresql/bootstrap.py 254 60 76% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/postgresql/callback_executor.py 55 8 85% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/postgresql/cancellable.py 104 41 61% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/postgresql/config.py 840 216 74% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/postgresql/connection.py 75 1 99% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/postgresql/misc.py 43 8 81% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/postgresql/mpp/__init__.py 89 11 88% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/postgresql/postmaster.py 170 83 51% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/postgresql/rewind.py 416 128 69% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/postgresql/slots.py 349 41 88% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/postgresql/sync.py 154 10 94% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/postgresql/validator.py 157 24 85% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/psycopg.py 46 19 59% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/quorum.py 182 48 74% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/request.py 58 7 88% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/tags.py 38 0 100% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/utils.py 371 122 67% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/validator.py 309 215 30% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/version.py 1 0 100% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/watchdog/__init__.py 2 0 100% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/watchdog/base.py 203 46 77% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/patroni/watchdog/linux.py 135 35 74% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/psutil/__init__.py 950 629 34% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/psutil/_common.py 422 212 50% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/psutil/_compat.py 301 263 13% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/psutil/_pslinux.py 1250 924 26% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/psutil/_psposix.py 95 38 60% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/psycopg2/__init__.py 19 3 84% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/psycopg2/_json.py 64 27 58% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/psycopg2/_range.py 269 172 36% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/psycopg2/errors.py 3 2 33% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/psycopg2/extensions.py 91 25 73% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/puresasl/__init__.py 21 2 90% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/puresasl/client.py 71 47 34% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/puresasl/mechanisms.py 363 263 28% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/six.py 505 259 49% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/urllib3/__init__.py 49 15 69% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/urllib3/_base_connection.py 63 45 29% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/urllib3/_collections.py 231 125 46% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/urllib3/_request_methods.py 54 24 56% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/urllib3/_version.py 13 3 77% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/urllib3/connection.py 389 149 62% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/urllib3/connectionpool.py 344 130 62% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/urllib3/exceptions.py 121 39 68% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/urllib3/fields.py 92 73 21% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/urllib3/filepost.py 37 24 35% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/urllib3/http2/__init__.py 28 21 25% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/urllib3/http2/probe.py 49 31 37% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/urllib3/poolmanager.py 233 88 62% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/urllib3/response.py 634 393 38% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/urllib3/util/__init__.py 10 0 100% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/urllib3/util/connection.py 66 9 86% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/urllib3/util/proxy.py 13 6 54% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/urllib3/util/request.py 104 52 50% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/urllib3/util/response.py 32 17 47% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/urllib3/util/retry.py 174 53 70% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/urllib3/util/ssl_.py 172 73 58% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/urllib3/util/ssl_match_hostname.py 66 54 18% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/urllib3/util/ssltransport.py 152 106 30% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/urllib3/util/timeout.py 71 19 73% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/urllib3/util/url.py 203 76 63% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/urllib3/util/util.py 26 18 31% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/urllib3/util/wait.py 49 38 22% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/yaml/__init__.py 165 109 34% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/yaml/composer.py 92 17 82% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/yaml/constructor.py 479 276 42% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/yaml/cyaml.py 46 24 48% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/yaml/dumper.py 23 12 48% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/yaml/emitter.py 838 769 8% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/yaml/error.py 58 42 28% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/yaml/events.py 61 6 90% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/yaml/loader.py 47 24 49% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/yaml/nodes.py 29 7 76% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/yaml/parser.py 352 180 49% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/yaml/reader.py 122 30 75% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/yaml/representer.py 248 176 29% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/yaml/resolver.py 135 76 44% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/yaml/scanner.py 758 415 45% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/yaml/serializer.py 85 70 18% 1702s Apr 14 09:55:26 /usr/lib/python3/dist-packages/yaml/tokens.py 76 17 78% 1702s Apr 14 09:55:26 patroni/__init__.py 13 2 85% 1702s Apr 14 09:55:26 patroni/__main__.py 201 201 0% 1702s Apr 14 09:55:26 patroni/api.py 788 788 0% 1702s Apr 14 09:55:26 patroni/async_executor.py 96 69 28% 1702s Apr 14 09:55:26 patroni/collections.py 56 15 73% 1702s Apr 14 09:55:26 patroni/config.py 357 184 48% 1702s Apr 14 09:55:26 patroni/config_generator.py 212 212 0% 1702s Apr 14 09:55:26 patroni/ctl.py 936 395 58% 1702s Apr 14 09:55:26 patroni/daemon.py 76 76 0% 1702s Apr 14 09:55:26 patroni/dcs/__init__.py 710 317 55% 1702s Apr 14 09:55:26 patroni/dcs/consul.py 482 482 0% 1702s Apr 14 09:55:26 patroni/dcs/etcd3.py 679 679 0% 1702s Apr 14 09:55:26 patroni/dcs/etcd.py 603 603 0% 1702s Apr 14 09:55:26 patroni/dcs/exhibitor.py 62 62 0% 1702s Apr 14 09:55:26 patroni/dcs/kubernetes.py 943 943 0% 1702s Apr 14 09:55:26 patroni/dcs/raft.py 319 319 0% 1702s Apr 14 09:55:26 patroni/dcs/zookeeper.py 289 150 48% 1702s Apr 14 09:55:26 patroni/dynamic_loader.py 35 7 80% 1702s Apr 14 09:55:26 patroni/exceptions.py 16 1 94% 1702s Apr 14 09:55:26 patroni/file_perm.py 47 17 64% 1702s Apr 14 09:55:26 patroni/global_config.py 87 19 78% 1702s Apr 14 09:55:26 patroni/ha.py 1359 1359 0% 1702s Apr 14 09:55:26 patroni/log.py 235 183 22% 1702s Apr 14 09:55:26 patroni/postgresql/__init__.py 825 653 21% 1702s Apr 14 09:55:26 patroni/postgresql/available_parameters/__init__.py 24 6 75% 1702s Apr 14 09:55:26 patroni/postgresql/bootstrap.py 254 224 12% 1702s Apr 14 09:55:26 patroni/postgresql/callback_executor.py 55 34 38% 1702s Apr 14 09:55:26 patroni/postgresql/cancellable.py 104 84 19% 1702s Apr 14 09:55:26 patroni/postgresql/config.py 840 720 14% 1702s Apr 14 09:55:26 patroni/postgresql/connection.py 75 50 33% 1702s Apr 14 09:55:26 patroni/postgresql/misc.py 43 30 30% 1702s Apr 14 09:55:26 patroni/postgresql/mpp/__init__.py 89 21 76% 1702s Apr 14 09:55:26 patroni/postgresql/mpp/citus.py 366 366 0% 1702s Apr 14 09:55:26 patroni/postgresql/postmaster.py 170 139 18% 1702s Apr 14 09:55:26 patroni/postgresql/rewind.py 416 416 0% 1702s Apr 14 09:55:26 patroni/postgresql/slots.py 349 300 14% 1702s Apr 14 09:55:26 patroni/postgresql/sync.py 154 114 26% 1702s Apr 14 09:55:26 patroni/postgresql/validator.py 157 52 67% 1702s Apr 14 09:55:26 patroni/psycopg.py 46 32 30% 1702s Apr 14 09:55:26 patroni/quorum.py 182 182 0% 1702s Apr 14 09:55:26 patroni/raft_controller.py 22 22 0% 1702s Apr 14 09:55:26 patroni/request.py 58 6 90% 1702s Apr 14 09:55:26 patroni/scripts/__init__.py 0 0 100% 1702s Apr 14 09:55:26 patroni/scripts/aws.py 59 59 0% 1702s Apr 14 09:55:26 patroni/scripts/barman/__init__.py 0 0 100% 1702s Apr 14 09:55:26 patroni/scripts/barman/cli.py 50 50 0% 1702s Apr 14 09:55:26 patroni/scripts/barman/config_switch.py 50 50 0% 1702s Apr 14 09:55:26 patroni/scripts/barman/recover.py 36 36 0% 1702s Apr 14 09:55:26 patroni/scripts/barman/utils.py 93 93 0% 1702s Apr 14 09:55:26 patroni/scripts/wale_restore.py 207 207 0% 1702s Apr 14 09:55:26 patroni/tags.py 38 11 71% 1702s Apr 14 09:55:26 patroni/utils.py 371 245 34% 1702s Apr 14 09:55:26 patroni/validator.py 309 222 28% 1702s Apr 14 09:55:26 patroni/version.py 1 0 100% 1702s Apr 14 09:55:26 patroni/watchdog/__init__.py 2 2 0% 1702s Apr 14 09:55:26 patroni/watchdog/base.py 203 203 0% 1702s Apr 14 09:55:26 patroni/watchdog/linux.py 135 135 0% 1702s Apr 14 09:55:26 -------------------------------------------------------------------------------------------------------- 1702s Apr 14 09:55:26 TOTAL 41108 24600 40% 1702s Apr 14 09:55:26 12 features passed, 0 failed, 1 skipped 1702s Apr 14 09:55:26 53 scenarios passed, 0 failed, 5 skipped 1702s Apr 14 09:55:26 517 steps passed, 0 failed, 68 skipped, 0 undefined 1702s Apr 14 09:55:26 Took 8m32.497s 1702s + su postgres -p -c 'rm -rf features/output' 1702s + echo '### End 17 acceptance-zookeeper -e dcs_failsafe_mode ###' 1702s + rm -f /tmp/pgpass_postgres-0 /tmp/pgpass_postgres-1 /tmp/pgpass_postgres-2 /tmp/pgpass_postgres-3 1702s ### End 17 acceptance-zookeeper -e dcs_failsafe_mode ### 1702s ++ id -u 1702s + '[' 0 -eq 0 ']' 1702s + '[' -x /etc/init.d/zookeeper ']' 1702s + /etc/init.d/zookeeper stop 1703s Stopping zookeeper (via systemctl): zookeeper.service. 1703s autopkgtest [09:55:27]: test acceptance-zookeeper: -----------------------] 1704s acceptance-zookeeper PASS 1704s autopkgtest [09:55:28]: test acceptance-zookeeper: - - - - - - - - - - results - - - - - - - - - - 1704s autopkgtest [09:55:28]: test acceptance-raft: preparing testbed 1783s autopkgtest [09:56:47]: testbed dpkg architecture: ppc64el 1783s autopkgtest [09:56:47]: testbed apt version: 3.0.0 1784s autopkgtest [09:56:48]: @@@@@@@@@@@@@@@@@@@@ test bed setup 1784s autopkgtest [09:56:48]: testbed release detected to be: plucky 1784s autopkgtest [09:56:48]: updating testbed package index (apt update) 1785s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [265 kB] 1785s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 1785s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 1785s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 1785s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [9948 B] 1785s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [5192 B] 1785s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [204 kB] 1785s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/main ppc64el Packages [3476 B] 1785s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/main ppc64el c-n-f Metadata [288 B] 1785s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/restricted ppc64el c-n-f Metadata [120 B] 1785s Get:11 http://ftpmaster.internal/ubuntu plucky-proposed/universe ppc64el Packages [120 kB] 1785s Get:12 http://ftpmaster.internal/ubuntu plucky-proposed/universe ppc64el c-n-f Metadata [8688 B] 1785s Get:13 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse ppc64el Packages [2008 B] 1785s Get:14 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse ppc64el c-n-f Metadata [172 B] 1786s Fetched 619 kB in 1s (1128 kB/s) 1787s Reading package lists... 1788s autopkgtest [09:56:52]: upgrading testbed (apt dist-upgrade and autopurge) 1788s Reading package lists... 1788s Building dependency tree... 1788s Reading state information... 1788s Calculating upgrade...Starting pkgProblemResolver with broken count: 0 1788s Starting 2 pkgProblemResolver with broken count: 0 1788s Done 1789s Entering ResolveByKeep 1789s 1789s Calculating upgrade... 1789s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1789s Reading package lists... 1789s Building dependency tree... 1789s Reading state information... 1789s Starting pkgProblemResolver with broken count: 0 1790s Starting 2 pkgProblemResolver with broken count: 0 1790s Done 1790s Solving dependencies... 1790s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1792s Reading package lists... 1792s Building dependency tree... 1792s Reading state information... 1792s Starting pkgProblemResolver with broken count: 0 1792s Starting 2 pkgProblemResolver with broken count: 0 1792s Done 1793s The following NEW packages will be installed: 1793s fonts-font-awesome fonts-lato libio-pty-perl libipc-run-perl libjs-jquery 1793s libjs-sphinxdoc libjs-underscore libjson-perl libllvm20 libpq5 1793s libtime-duration-perl libtimedate-perl libxslt1.1 moreutils patroni 1793s patroni-doc postgresql postgresql-17 postgresql-client-17 1793s postgresql-client-common postgresql-common postgresql-common-dev 1793s python3-behave python3-click python3-coverage python3-dateutil python3-parse 1793s python3-parse-type python3-prettytable python3-psutil python3-psycopg2 1793s python3-pysyncobj python3-six python3-wcwidth python3-ydiff 1793s sphinx-rtd-theme-common ssl-cert 1793s 0 upgraded, 37 newly installed, 0 to remove and 0 not upgraded. 1793s Need to get 58.1 MB of archives. 1793s After this operation, 253 MB of additional disk space will be used. 1793s Get:1 http://ftpmaster.internal/ubuntu plucky/main ppc64el fonts-lato all 2.015-1 [2781 kB] 1793s Get:2 http://ftpmaster.internal/ubuntu plucky/main ppc64el libjson-perl all 4.10000-1 [81.9 kB] 1793s Get:3 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql-client-common all 274 [47.6 kB] 1793s Get:4 http://ftpmaster.internal/ubuntu plucky/main ppc64el libio-pty-perl ppc64el 1:1.20-1build3 [32.0 kB] 1793s Get:5 http://ftpmaster.internal/ubuntu plucky/main ppc64el libipc-run-perl all 20231003.0-2 [91.5 kB] 1793s Get:6 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql-common-dev all 274 [73.0 kB] 1793s Get:7 http://ftpmaster.internal/ubuntu plucky/main ppc64el ssl-cert all 1.1.3ubuntu1 [18.7 kB] 1793s Get:8 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql-common all 274 [101 kB] 1793s Get:9 http://ftpmaster.internal/ubuntu plucky/main ppc64el fonts-font-awesome all 5.0.10+really4.7.0~dfsg-4.1 [516 kB] 1793s Get:10 http://ftpmaster.internal/ubuntu plucky/main ppc64el libjs-jquery all 3.6.1+dfsg+~3.5.14-1 [328 kB] 1793s Get:11 http://ftpmaster.internal/ubuntu plucky/main ppc64el libjs-underscore all 1.13.4~dfsg+~1.11.4-3 [118 kB] 1793s Get:12 http://ftpmaster.internal/ubuntu plucky/main ppc64el libjs-sphinxdoc all 8.1.3-5 [31.0 kB] 1793s Get:13 http://ftpmaster.internal/ubuntu plucky/main ppc64el libllvm20 ppc64el 1:20.1.2-0ubuntu1 [32.0 MB] 1794s Get:14 http://ftpmaster.internal/ubuntu plucky/main ppc64el libpq5 ppc64el 17.4-1 [174 kB] 1794s Get:15 http://ftpmaster.internal/ubuntu plucky/main ppc64el libtime-duration-perl all 1.21-2 [12.3 kB] 1794s Get:16 http://ftpmaster.internal/ubuntu plucky/main ppc64el libtimedate-perl all 2.3300-2 [34.0 kB] 1794s Get:17 http://ftpmaster.internal/ubuntu plucky/main ppc64el libxslt1.1 ppc64el 1.1.39-0exp1ubuntu4 [191 kB] 1794s Get:18 http://ftpmaster.internal/ubuntu plucky/universe ppc64el moreutils ppc64el 0.69-1 [59.1 kB] 1794s Get:19 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-click all 8.2.0+0.really.8.1.8-1 [80.0 kB] 1794s Get:20 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-dateutil all 2.9.0-4 [80.3 kB] 1794s Get:21 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-wcwidth all 0.2.13+dfsg1-1 [26.3 kB] 1794s Get:22 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-prettytable all 3.12.0-1 [36.5 kB] 1794s Get:23 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-psutil ppc64el 5.9.8-2build3 [197 kB] 1794s Get:24 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-ydiff all 1.4.2-1 [19.0 kB] 1794s Get:25 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-psycopg2 ppc64el 2.9.10-1build1 [151 kB] 1794s Get:26 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-pysyncobj all 0.3.14-2 [61.9 kB] 1794s Get:27 http://ftpmaster.internal/ubuntu plucky-proposed/universe ppc64el patroni all 4.0.4-8 [282 kB] 1794s Get:28 http://ftpmaster.internal/ubuntu plucky/main ppc64el sphinx-rtd-theme-common all 3.0.2+dfsg-2 [1014 kB] 1794s Get:29 http://ftpmaster.internal/ubuntu plucky-proposed/universe ppc64el patroni-doc all 4.0.4-8 [526 kB] 1794s Get:30 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql-client-17 ppc64el 17.4-1 [1482 kB] 1794s Get:31 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql-17 ppc64el 17.4-1 [17.2 MB] 1794s Get:32 http://ftpmaster.internal/ubuntu plucky/main ppc64el postgresql all 17+274 [14.4 kB] 1794s Get:33 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-parse all 1.20.2-1 [27.0 kB] 1794s Get:34 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-parse-type all 0.6.4-2 [23.5 kB] 1795s Get:35 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-six all 1.17.0-1 [13.2 kB] 1795s Get:36 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-behave all 1.2.6-6 [98.6 kB] 1795s Get:37 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-coverage ppc64el 7.6.0+dfsg1-2build1 [154 kB] 1795s Preconfiguring packages ... 1795s /var/cache/debconf/tmp.ci/postgresql.config.VFHGJH: 12: pg_lsclusters: not found 1795s Fetched 58.1 MB in 2s (30.3 MB/s) 1795s Selecting previously unselected package fonts-lato. 1796s (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 ... 107206 files and directories currently installed.) 1796s Preparing to unpack .../00-fonts-lato_2.015-1_all.deb ... 1796s Unpacking fonts-lato (2.015-1) ... 1796s Selecting previously unselected package libjson-perl. 1796s Preparing to unpack .../01-libjson-perl_4.10000-1_all.deb ... 1796s Unpacking libjson-perl (4.10000-1) ... 1796s Selecting previously unselected package postgresql-client-common. 1796s Preparing to unpack .../02-postgresql-client-common_274_all.deb ... 1796s Unpacking postgresql-client-common (274) ... 1796s Selecting previously unselected package libio-pty-perl. 1796s Preparing to unpack .../03-libio-pty-perl_1%3a1.20-1build3_ppc64el.deb ... 1796s Unpacking libio-pty-perl (1:1.20-1build3) ... 1796s Selecting previously unselected package libipc-run-perl. 1796s Preparing to unpack .../04-libipc-run-perl_20231003.0-2_all.deb ... 1796s Unpacking libipc-run-perl (20231003.0-2) ... 1796s Selecting previously unselected package postgresql-common-dev. 1796s Preparing to unpack .../05-postgresql-common-dev_274_all.deb ... 1796s Unpacking postgresql-common-dev (274) ... 1796s Selecting previously unselected package ssl-cert. 1796s Preparing to unpack .../06-ssl-cert_1.1.3ubuntu1_all.deb ... 1796s Unpacking ssl-cert (1.1.3ubuntu1) ... 1796s Selecting previously unselected package postgresql-common. 1796s Preparing to unpack .../07-postgresql-common_274_all.deb ... 1796s Adding 'diversion of /usr/bin/pg_config to /usr/bin/pg_config.libpq-dev by postgresql-common' 1796s Unpacking postgresql-common (274) ... 1796s Selecting previously unselected package fonts-font-awesome. 1796s Preparing to unpack .../08-fonts-font-awesome_5.0.10+really4.7.0~dfsg-4.1_all.deb ... 1796s Unpacking fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ... 1796s Selecting previously unselected package libjs-jquery. 1796s Preparing to unpack .../09-libjs-jquery_3.6.1+dfsg+~3.5.14-1_all.deb ... 1796s Unpacking libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 1797s Selecting previously unselected package libjs-underscore. 1797s Preparing to unpack .../10-libjs-underscore_1.13.4~dfsg+~1.11.4-3_all.deb ... 1797s Unpacking libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 1797s Selecting previously unselected package libjs-sphinxdoc. 1797s Preparing to unpack .../11-libjs-sphinxdoc_8.1.3-5_all.deb ... 1797s Unpacking libjs-sphinxdoc (8.1.3-5) ... 1797s Selecting previously unselected package libllvm20:ppc64el. 1797s Preparing to unpack .../12-libllvm20_1%3a20.1.2-0ubuntu1_ppc64el.deb ... 1797s Unpacking libllvm20:ppc64el (1:20.1.2-0ubuntu1) ... 1797s Selecting previously unselected package libpq5:ppc64el. 1797s Preparing to unpack .../13-libpq5_17.4-1_ppc64el.deb ... 1797s Unpacking libpq5:ppc64el (17.4-1) ... 1797s Selecting previously unselected package libtime-duration-perl. 1797s Preparing to unpack .../14-libtime-duration-perl_1.21-2_all.deb ... 1797s Unpacking libtime-duration-perl (1.21-2) ... 1797s Selecting previously unselected package libtimedate-perl. 1797s Preparing to unpack .../15-libtimedate-perl_2.3300-2_all.deb ... 1797s Unpacking libtimedate-perl (2.3300-2) ... 1797s Selecting previously unselected package libxslt1.1:ppc64el. 1797s Preparing to unpack .../16-libxslt1.1_1.1.39-0exp1ubuntu4_ppc64el.deb ... 1797s Unpacking libxslt1.1:ppc64el (1.1.39-0exp1ubuntu4) ... 1797s Selecting previously unselected package moreutils. 1797s Preparing to unpack .../17-moreutils_0.69-1_ppc64el.deb ... 1797s Unpacking moreutils (0.69-1) ... 1797s Selecting previously unselected package python3-click. 1797s Preparing to unpack .../18-python3-click_8.2.0+0.really.8.1.8-1_all.deb ... 1797s Unpacking python3-click (8.2.0+0.really.8.1.8-1) ... 1797s Selecting previously unselected package python3-dateutil. 1797s Preparing to unpack .../19-python3-dateutil_2.9.0-4_all.deb ... 1797s Unpacking python3-dateutil (2.9.0-4) ... 1797s Selecting previously unselected package python3-wcwidth. 1797s Preparing to unpack .../20-python3-wcwidth_0.2.13+dfsg1-1_all.deb ... 1797s Unpacking python3-wcwidth (0.2.13+dfsg1-1) ... 1797s Selecting previously unselected package python3-prettytable. 1797s Preparing to unpack .../21-python3-prettytable_3.12.0-1_all.deb ... 1797s Unpacking python3-prettytable (3.12.0-1) ... 1797s Selecting previously unselected package python3-psutil. 1797s Preparing to unpack .../22-python3-psutil_5.9.8-2build3_ppc64el.deb ... 1797s Unpacking python3-psutil (5.9.8-2build3) ... 1797s Selecting previously unselected package python3-ydiff. 1797s Preparing to unpack .../23-python3-ydiff_1.4.2-1_all.deb ... 1797s Unpacking python3-ydiff (1.4.2-1) ... 1797s Selecting previously unselected package python3-psycopg2. 1797s Preparing to unpack .../24-python3-psycopg2_2.9.10-1build1_ppc64el.deb ... 1797s Unpacking python3-psycopg2 (2.9.10-1build1) ... 1797s Selecting previously unselected package python3-pysyncobj. 1797s Preparing to unpack .../25-python3-pysyncobj_0.3.14-2_all.deb ... 1797s Unpacking python3-pysyncobj (0.3.14-2) ... 1797s Selecting previously unselected package patroni. 1797s Preparing to unpack .../26-patroni_4.0.4-8_all.deb ... 1797s Unpacking patroni (4.0.4-8) ... 1798s Selecting previously unselected package sphinx-rtd-theme-common. 1798s Preparing to unpack .../27-sphinx-rtd-theme-common_3.0.2+dfsg-2_all.deb ... 1798s Unpacking sphinx-rtd-theme-common (3.0.2+dfsg-2) ... 1798s Selecting previously unselected package patroni-doc. 1798s Preparing to unpack .../28-patroni-doc_4.0.4-8_all.deb ... 1798s Unpacking patroni-doc (4.0.4-8) ... 1798s Selecting previously unselected package postgresql-client-17. 1798s Preparing to unpack .../29-postgresql-client-17_17.4-1_ppc64el.deb ... 1798s Unpacking postgresql-client-17 (17.4-1) ... 1798s Selecting previously unselected package postgresql-17. 1798s Preparing to unpack .../30-postgresql-17_17.4-1_ppc64el.deb ... 1798s Unpacking postgresql-17 (17.4-1) ... 1798s Selecting previously unselected package postgresql. 1798s Preparing to unpack .../31-postgresql_17+274_all.deb ... 1798s Unpacking postgresql (17+274) ... 1798s Selecting previously unselected package python3-parse. 1798s Preparing to unpack .../32-python3-parse_1.20.2-1_all.deb ... 1798s Unpacking python3-parse (1.20.2-1) ... 1798s Selecting previously unselected package python3-parse-type. 1798s Preparing to unpack .../33-python3-parse-type_0.6.4-2_all.deb ... 1798s Unpacking python3-parse-type (0.6.4-2) ... 1798s Selecting previously unselected package python3-six. 1798s Preparing to unpack .../34-python3-six_1.17.0-1_all.deb ... 1798s Unpacking python3-six (1.17.0-1) ... 1798s Selecting previously unselected package python3-behave. 1798s Preparing to unpack .../35-python3-behave_1.2.6-6_all.deb ... 1798s Unpacking python3-behave (1.2.6-6) ... 1798s Selecting previously unselected package python3-coverage. 1798s Preparing to unpack .../36-python3-coverage_7.6.0+dfsg1-2build1_ppc64el.deb ... 1798s Unpacking python3-coverage (7.6.0+dfsg1-2build1) ... 1798s Setting up postgresql-client-common (274) ... 1798s Setting up fonts-lato (2.015-1) ... 1798s Setting up libio-pty-perl (1:1.20-1build3) ... 1798s Setting up python3-pysyncobj (0.3.14-2) ... 1798s Setting up python3-ydiff (1.4.2-1) ... 1798s Setting up libpq5:ppc64el (17.4-1) ... 1798s Setting up python3-coverage (7.6.0+dfsg1-2build1) ... 1799s Setting up python3-click (8.2.0+0.really.8.1.8-1) ... 1799s Setting up python3-psutil (5.9.8-2build3) ... 1799s Setting up python3-six (1.17.0-1) ... 1799s Setting up python3-wcwidth (0.2.13+dfsg1-1) ... 1799s Setting up ssl-cert (1.1.3ubuntu1) ... 1800s Created symlink '/etc/systemd/system/multi-user.target.wants/ssl-cert.service' → '/usr/lib/systemd/system/ssl-cert.service'. 1800s Setting up libllvm20:ppc64el (1:20.1.2-0ubuntu1) ... 1800s Setting up python3-psycopg2 (2.9.10-1build1) ... 1800s Setting up libipc-run-perl (20231003.0-2) ... 1800s Setting up libtime-duration-perl (1.21-2) ... 1800s Setting up libtimedate-perl (2.3300-2) ... 1800s Setting up python3-parse (1.20.2-1) ... 1800s Setting up libjson-perl (4.10000-1) ... 1800s Setting up libxslt1.1:ppc64el (1.1.39-0exp1ubuntu4) ... 1800s Setting up python3-dateutil (2.9.0-4) ... 1801s Setting up libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 1801s Setting up python3-prettytable (3.12.0-1) ... 1801s Setting up fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ... 1801s Setting up sphinx-rtd-theme-common (3.0.2+dfsg-2) ... 1801s Setting up libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 1801s Setting up postgresql-common-dev (274) ... 1801s Setting up moreutils (0.69-1) ... 1801s Setting up postgresql-client-17 (17.4-1) ... 1801s update-alternatives: using /usr/share/postgresql/17/man/man1/psql.1.gz to provide /usr/share/man/man1/psql.1.gz (psql.1.gz) in auto mode 1801s Setting up python3-parse-type (0.6.4-2) ... 1801s Setting up postgresql-common (274) ... 1802s Creating config file /etc/postgresql-common/createcluster.conf with new version 1802s Building PostgreSQL dictionaries from installed myspell/hunspell packages... 1802s Removing obsolete dictionary files: 1803s Created symlink '/etc/systemd/system/multi-user.target.wants/postgresql.service' → '/usr/lib/systemd/system/postgresql.service'. 1803s Setting up libjs-sphinxdoc (8.1.3-5) ... 1803s Setting up python3-behave (1.2.6-6) ... 1803s /usr/lib/python3/dist-packages/behave/formatter/ansi_escapes.py:57: SyntaxWarning: invalid escape sequence '\[' 1803s _ANSI_ESCAPE_PATTERN = re.compile(u"\x1b\[\d+[mA]", re.UNICODE) 1803s /usr/lib/python3/dist-packages/behave/matchers.py:284: SyntaxWarning: invalid escape sequence '\d' 1803s @parse.with_pattern(r"\d+") 1804s Setting up patroni (4.0.4-8) ... 1804s Created symlink '/etc/systemd/system/multi-user.target.wants/patroni.service' → '/usr/lib/systemd/system/patroni.service'. 1804s Setting up postgresql-17 (17.4-1) ... 1805s Creating new PostgreSQL cluster 17/main ... 1805s /usr/lib/postgresql/17/bin/initdb -D /var/lib/postgresql/17/main --auth-local peer --auth-host scram-sha-256 --no-instructions 1805s The files belonging to this database system will be owned by user "postgres". 1805s This user must also own the server process. 1805s 1805s The database cluster will be initialized with locale "C.UTF-8". 1805s The default database encoding has accordingly been set to "UTF8". 1805s The default text search configuration will be set to "english". 1805s 1805s Data page checksums are disabled. 1805s 1805s fixing permissions on existing directory /var/lib/postgresql/17/main ... ok 1805s creating subdirectories ... ok 1805s selecting dynamic shared memory implementation ... posix 1805s selecting default "max_connections" ... 100 1805s selecting default "shared_buffers" ... 128MB 1805s selecting default time zone ... Etc/UTC 1805s creating configuration files ... ok 1805s running bootstrap script ... ok 1806s performing post-bootstrap initialization ... ok 1806s syncing data to disk ... ok 1809s Setting up patroni-doc (4.0.4-8) ... 1809s Setting up postgresql (17+274) ... 1809s Processing triggers for man-db (2.13.0-1) ... 1811s Processing triggers for libc-bin (2.41-6ubuntu1) ... 1813s autopkgtest [09:57:17]: test acceptance-raft: debian/tests/acceptance raft 1813s autopkgtest [09:57:17]: test acceptance-raft: [----------------------- 1814s dpkg-architecture: warning: cannot determine CC system type, falling back to default (native compilation) 1814s ++ ls -1r /usr/lib/postgresql/ 1814s + for PG_VERSION in $(ls -1r /usr/lib/postgresql/) 1814s + '[' 17 == 10 -o 17 == 11 ']' 1814s + echo '### PostgreSQL 17 acceptance-raft ###' 1814s + bash -c 'set -o pipefail; ETCD_UNSUPPORTED_ARCH= DCS=raft PATH=/usr/lib/postgresql/17/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin behave | ts' 1814s ### PostgreSQL 17 acceptance-raft ### 1820s Apr 14 09:57:23 Feature: basic replication # features/basic_replication.feature:1 1820s Apr 14 09:57:23 We should check that the basic bootstrapping, replication and failover works. 1820s Apr 14 09:57:23 Scenario: check replication of a single table # features/basic_replication.feature:4 1820s Apr 14 09:57:23 Given I start postgres-0 # features/steps/basic_replication.py:20 1823s Apr 14 09:57:26 Then postgres-0 is a leader after 10 seconds # features/steps/patroni_api.py:31 1824s Apr 14 09:57:27 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 1824s Apr 14 09:57:27 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:73 1824s Apr 14 09:57:27 Then I receive a response code 200 # features/steps/patroni_api.py:100 1824s Apr 14 09:57:27 When I start postgres-1 # features/steps/basic_replication.py:20 1828s Apr 14 09:57:31 And I configure and start postgres-2 with a tag replicatefrom postgres-0 # features/steps/cascading_replication.py:7 1833s Apr 14 09:57:36 And "sync" key in DCS has leader=postgres-0 after 20 seconds # features/steps/cascading_replication.py:23 1833s Apr 14 09:57:36 And I add the table foo to postgres-0 # features/steps/basic_replication.py:66 1833s Apr 14 09:57:36 Then table foo is present on postgres-1 after 20 seconds # features/steps/basic_replication.py:105 1834s Apr 14 09:57:37 Then table foo is present on postgres-2 after 20 seconds # features/steps/basic_replication.py:105 1834s Apr 14 09:57:37 1834s Apr 14 09:57:37 Scenario: check restart of sync replica # features/basic_replication.feature:17 1834s Apr 14 09:57:37 Given I shut down postgres-2 # features/steps/basic_replication.py:41 1835s Apr 14 09:57:38 Then "sync" key in DCS has sync_standby=postgres-1 after 5 seconds # features/steps/cascading_replication.py:23 1835s Apr 14 09:57:38 When I start postgres-2 # features/steps/basic_replication.py:20 1838s Apr 14 09:57:41 And I shut down postgres-1 # features/steps/basic_replication.py:41 1841s Apr 14 09:57:44 Then "sync" key in DCS has sync_standby=postgres-2 after 10 seconds # features/steps/cascading_replication.py:23 1841s Apr 14 09:57:44 When I start postgres-1 # features/steps/basic_replication.py:20 1844s Apr 14 09:57:48 Then "members/postgres-1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 1845s Apr 14 09:57:49 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:144 1845s Apr 14 09:57:49 And Status code on GET http://127.0.0.1:8009/async is 200 after 3 seconds # features/steps/patroni_api.py:144 1845s Apr 14 09:57:49 1845s Apr 14 09:57:49 Scenario: check stuck sync replica # features/basic_replication.feature:28 1845s Apr 14 09:57:49 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:73 1845s Apr 14 09:57:49 Then I receive a response code 200 # features/steps/patroni_api.py:100 1845s Apr 14 09:57:49 And I create table on postgres-0 # features/steps/basic_replication.py:85 1846s Apr 14 09:57:49 And table mytest is present on postgres-1 after 2 seconds # features/steps/basic_replication.py:105 1847s Apr 14 09:57:50 And table mytest is present on postgres-2 after 2 seconds # features/steps/basic_replication.py:105 1847s Apr 14 09:57:50 When I pause wal replay on postgres-2 # features/steps/basic_replication.py:76 1847s Apr 14 09:57:50 And I load data on postgres-0 # features/steps/basic_replication.py:96 1847s Apr 14 09:57:51 Then "sync" key in DCS has sync_standby=postgres-1 after 15 seconds # features/steps/cascading_replication.py:23 1850s Apr 14 09:57:54 And I resume wal replay on postgres-2 # features/steps/basic_replication.py:76 1850s Apr 14 09:57:54 And Status code on GET http://127.0.0.1:8009/sync is 200 after 3 seconds # features/steps/patroni_api.py:144 1850s Apr 14 09:57:54 And Status code on GET http://127.0.0.1:8010/async is 200 after 3 seconds # features/steps/patroni_api.py:144 1850s Apr 14 09:57:54 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:73 1851s Apr 14 09:57:54 Then I receive a response code 200 # features/steps/patroni_api.py:100 1851s Apr 14 09:57:54 And I drop table on postgres-0 # features/steps/basic_replication.py:85 1851s Apr 14 09:57:54 1851s Apr 14 09:57:54 Scenario: check multi sync replication # features/basic_replication.feature:44 1851s Apr 14 09:57:54 Given I issue a PATCH request to http://127.0.0.1:8008/config with {"synchronous_node_count": 2} # features/steps/patroni_api.py:73 1851s Apr 14 09:57:54 Then I receive a response code 200 # features/steps/patroni_api.py:100 1851s Apr 14 09:57:54 Then "sync" key in DCS has sync_standby=postgres-1,postgres-2 after 10 seconds # features/steps/cascading_replication.py:23 1855s Apr 14 09:57:58 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:144 1855s Apr 14 09:57:58 And Status code on GET http://127.0.0.1:8009/sync is 200 after 3 seconds # features/steps/patroni_api.py:144 1855s Apr 14 09:57:58 When I issue a PATCH request to http://127.0.0.1:8008/config with {"synchronous_node_count": 1} # features/steps/patroni_api.py:73 1855s Apr 14 09:57:58 Then I receive a response code 200 # features/steps/patroni_api.py:100 1855s Apr 14 09:57:58 And I shut down postgres-1 # features/steps/basic_replication.py:41 1858s Apr 14 09:58:01 Then "sync" key in DCS has sync_standby=postgres-2 after 10 seconds # features/steps/cascading_replication.py:23 1859s Apr 14 09:58:02 When I start postgres-1 # features/steps/basic_replication.py:20 1863s Apr 14 09:58:06 Then "members/postgres-1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 1864s Apr 14 09:58:07 And Status code on GET http://127.0.0.1:8010/sync is 200 after 3 seconds # features/steps/patroni_api.py:144 1864s Apr 14 09:58:07 And Status code on GET http://127.0.0.1:8009/async is 200 after 3 seconds # features/steps/patroni_api.py:144 1864s Apr 14 09:58:07 1864s Apr 14 09:58:07 Scenario: check the basic failover in synchronous mode # features/basic_replication.feature:59 1864s Apr 14 09:58:07 Given I run patronictl.py pause batman # features/steps/patroni_api.py:88 1865s Apr 14 09:58:08 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 1865s Apr 14 09:58:08 When I sleep for 2 seconds # features/steps/patroni_api.py:41 1867s Apr 14 09:58:10 And I shut down postgres-0 # features/steps/basic_replication.py:41 1868s Apr 14 09:58:11 And I run patronictl.py resume batman # features/steps/patroni_api.py:88 1870s Apr 14 09:58:13 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 1870s Apr 14 09:58:13 And postgres-2 role is the primary after 24 seconds # features/steps/basic_replication.py:117 1889s Apr 14 09:58:32 And Response on GET http://127.0.0.1:8010/history contains recovery after 10 seconds # features/steps/patroni_api.py:158 1892s Apr 14 09:58:35 And there is a postgres-2_cb.log with "on_role_change primary batman" in postgres-2 data directory # features/steps/cascading_replication.py:12 1892s Apr 14 09:58:35 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:73 1892s Apr 14 09:58:35 Then I receive a response code 200 # features/steps/patroni_api.py:100 1892s Apr 14 09:58:35 When I add the table bar to postgres-2 # features/steps/basic_replication.py:66 1892s Apr 14 09:58:35 Then table bar is present on postgres-1 after 20 seconds # features/steps/basic_replication.py:105 1892s Apr 14 09:58:35 And Response on GET http://127.0.0.1:8010/config contains master_start_timeout after 10 seconds # features/steps/patroni_api.py:158 1892s Apr 14 09:58:35 1892s Apr 14 09:58:35 Scenario: check rejoin of the former primary with pg_rewind # features/basic_replication.feature:75 1892s Apr 14 09:58:35 Given I add the table splitbrain to postgres-0 # features/steps/basic_replication.py:66 1892s Apr 14 09:58:35 And I start postgres-0 # features/steps/basic_replication.py:20 1892s Apr 14 09:58:35 Then postgres-0 role is the secondary after 20 seconds # features/steps/basic_replication.py:117 1896s Apr 14 09:58:39 When I add the table buz to postgres-2 # features/steps/basic_replication.py:66 1896s Apr 14 09:58:39 Then table buz is present on postgres-0 after 20 seconds # features/steps/basic_replication.py:105 1899s SKIP Scenario check graceful rejection when two nodes have the same name: Flaky test with Raft 1915s Apr 14 09:58:58 1915s Apr 14 09:58:58 @reject-duplicate-name 1915s Apr 14 09:58:58 Scenario: check graceful rejection when two nodes have the same name # features/basic_replication.feature:83 1915s Apr 14 09:58:58 Given I start duplicate postgres-0 on port 8011 # None 1915s Apr 14 09:58:58 Then there is one of ["Can't start; there is already a node named 'postgres-0' running"] CRITICAL in the dup-postgres-0 patroni log after 5 seconds # None 1915s Apr 14 09:58:58 1915s Apr 14 09:58:58 Feature: cascading replication # features/cascading_replication.feature:1 1915s Apr 14 09:58:58 We should check that patroni can do base backup and streaming from the replica 1915s Apr 14 09:58:58 Scenario: check a base backup and streaming replication from a replica # features/cascading_replication.feature:4 1915s Apr 14 09:58:58 Given I start postgres-0 # features/steps/basic_replication.py:20 1919s Apr 14 09:59:02 And postgres-0 is a leader after 10 seconds # features/steps/patroni_api.py:31 1920s Apr 14 09:59:03 And I configure and start postgres-1 with a tag clonefrom true # features/steps/cascading_replication.py:7 1924s Apr 14 09:59:07 And replication works from postgres-0 to postgres-1 after 20 seconds # features/steps/basic_replication.py:124 1925s Apr 14 09:59:08 And I create label with "postgres-0" in postgres-0 data directory # features/steps/cascading_replication.py:18 1925s Apr 14 09:59:08 And I create label with "postgres-1" in postgres-1 data directory # features/steps/cascading_replication.py:18 1925s Apr 14 09:59:08 And "members/postgres-1" key in DCS has state=running after 12 seconds # features/steps/cascading_replication.py:23 1925s Apr 14 09:59:08 And I configure and start postgres-2 with a tag replicatefrom postgres-1 # features/steps/cascading_replication.py:7 1930s Apr 14 09:59:13 Then replication works from postgres-0 to postgres-2 after 30 seconds # features/steps/basic_replication.py:124 1931s Apr 14 09:59:15 And there is a label with "postgres-1" in postgres-2 data directory # features/steps/cascading_replication.py:12 1947s Apr 14 09:59:30 1947s SKIP FEATURE citus: Citus extension isn't available 1947s SKIP Scenario check that worker cluster is registered in the coordinator: Citus extension isn't available 1947s SKIP Scenario coordinator failover updates pg_dist_node: Citus extension isn't available 1947s SKIP Scenario worker switchover doesn't break client queries on the coordinator: Citus extension isn't available 1947s SKIP Scenario worker primary restart doesn't break client queries on the coordinator: Citus extension isn't available 1947s SKIP Scenario check that in-flight transaction is rolled back after timeout when other workers need to change pg_dist_node: Citus extension isn't available 1947s Apr 14 09:59:30 Feature: citus # features/citus.feature:1 1947s Apr 14 09:59:30 We should check that coordinator discovers and registers workers and clients don't have errors when worker cluster switches over 1947s Apr 14 09:59:30 Scenario: check that worker cluster is registered in the coordinator # features/citus.feature:4 1947s Apr 14 09:59:30 Given I start postgres-0 in citus group 0 # None 1947s Apr 14 09:59:30 And I start postgres-2 in citus group 1 # None 1947s Apr 14 09:59:30 Then postgres-0 is a leader in a group 0 after 10 seconds # None 1947s Apr 14 09:59:30 And postgres-2 is a leader in a group 1 after 10 seconds # None 1947s Apr 14 09:59:30 When I start postgres-1 in citus group 0 # None 1947s Apr 14 09:59:30 And I start postgres-3 in citus group 1 # None 1947s Apr 14 09:59:30 Then replication works from postgres-0 to postgres-1 after 15 seconds # None 1947s Apr 14 09:59:30 Then replication works from postgres-2 to postgres-3 after 15 seconds # None 1947s Apr 14 09:59:30 And postgres-0 is registered in the postgres-0 as the primary in group 0 after 5 seconds # None 1947s Apr 14 09:59:30 And postgres-1 is registered in the postgres-0 as the secondary in group 0 after 5 seconds # None 1947s Apr 14 09:59:30 And postgres-2 is registered in the postgres-0 as the primary in group 1 after 5 seconds # None 1947s Apr 14 09:59:30 And postgres-3 is registered in the postgres-0 as the secondary in group 1 after 5 seconds # None 1947s Apr 14 09:59:30 1947s Apr 14 09:59:30 Scenario: coordinator failover updates pg_dist_node # features/citus.feature:18 1947s Apr 14 09:59:30 Given I run patronictl.py failover batman --group 0 --candidate postgres-1 --force # None 1947s Apr 14 09:59:30 Then postgres-1 role is the primary after 10 seconds # None 1947s Apr 14 09:59:30 And "members/postgres-0" key in a group 0 in DCS has state=running after 15 seconds # None 1947s Apr 14 09:59:30 And replication works from postgres-1 to postgres-0 after 15 seconds # None 1947s Apr 14 09:59:30 And postgres-1 is registered in the postgres-2 as the primary in group 0 after 5 seconds # None 1947s Apr 14 09:59:30 And postgres-0 is registered in the postgres-2 as the secondary in group 0 after 15 seconds # None 1947s Apr 14 09:59:30 And "sync" key in a group 0 in DCS has sync_standby=postgres-0 after 15 seconds # None 1947s Apr 14 09:59:30 When I run patronictl.py switchover batman --group 0 --candidate postgres-0 --force # None 1947s Apr 14 09:59:30 Then postgres-0 role is the primary after 10 seconds # None 1947s Apr 14 09:59:30 And replication works from postgres-0 to postgres-1 after 15 seconds # None 1947s Apr 14 09:59:30 And postgres-0 is registered in the postgres-2 as the primary in group 0 after 5 seconds # None 1947s Apr 14 09:59:30 And postgres-1 is registered in the postgres-2 as the secondary in group 0 after 15 seconds # None 1947s Apr 14 09:59:30 And "sync" key in a group 0 in DCS has sync_standby=postgres-1 after 15 seconds # None 1947s Apr 14 09:59:30 1947s Apr 14 09:59:30 Scenario: worker switchover doesn't break client queries on the coordinator # features/citus.feature:33 1947s Apr 14 09:59:30 Given I create a distributed table on postgres-0 # None 1947s Apr 14 09:59:30 And I start a thread inserting data on postgres-0 # None 1947s Apr 14 09:59:30 When I run patronictl.py switchover batman --group 1 --force # None 1947s Apr 14 09:59:30 Then I receive a response returncode 0 # None 1947s Apr 14 09:59:30 And postgres-3 role is the primary after 10 seconds # None 1947s Apr 14 09:59:30 And "members/postgres-2" key in a group 1 in DCS has state=running after 15 seconds # None 1947s Apr 14 09:59:30 And replication works from postgres-3 to postgres-2 after 15 seconds # None 1947s Apr 14 09:59:30 And postgres-3 is registered in the postgres-0 as the primary in group 1 after 5 seconds # None 1947s Apr 14 09:59:30 And postgres-2 is registered in the postgres-0 as the secondary in group 1 after 15 seconds # None 1947s Apr 14 09:59:30 And "sync" key in a group 1 in DCS has sync_standby=postgres-2 after 15 seconds # None 1947s Apr 14 09:59:30 And a thread is still alive # None 1947s Apr 14 09:59:30 When I run patronictl.py switchover batman --group 1 --force # None 1947s Apr 14 09:59:30 Then I receive a response returncode 0 # None 1947s Apr 14 09:59:30 And postgres-2 role is the primary after 10 seconds # None 1947s Apr 14 09:59:30 And replication works from postgres-2 to postgres-3 after 15 seconds # None 1947s Apr 14 09:59:30 And postgres-2 is registered in the postgres-0 as the primary in group 1 after 5 seconds # None 1947s Apr 14 09:59:30 And postgres-3 is registered in the postgres-0 as the secondary in group 1 after 15 seconds # None 1947s Apr 14 09:59:30 And "sync" key in a group 1 in DCS has sync_standby=postgres-3 after 15 seconds # None 1947s Apr 14 09:59:30 And a thread is still alive # None 1947s Apr 14 09:59:30 When I stop a thread # None 1947s Apr 14 09:59:30 Then a distributed table on postgres-0 has expected rows # None 1947s Apr 14 09:59:30 1947s Apr 14 09:59:30 Scenario: worker primary restart doesn't break client queries on the coordinator # features/citus.feature:56 1947s Apr 14 09:59:30 Given I cleanup a distributed table on postgres-0 # None 1947s Apr 14 09:59:30 And I start a thread inserting data on postgres-0 # None 1947s Apr 14 09:59:30 When I run patronictl.py restart batman postgres-2 --group 1 --force # None 1947s Apr 14 09:59:30 Then I receive a response returncode 0 # None 1947s Apr 14 09:59:30 And postgres-2 role is the primary after 10 seconds # None 1947s Apr 14 09:59:30 And replication works from postgres-2 to postgres-3 after 15 seconds # None 1947s Apr 14 09:59:30 And postgres-2 is registered in the postgres-0 as the primary in group 1 after 5 seconds # None 1947s Apr 14 09:59:30 And postgres-3 is registered in the postgres-0 as the secondary in group 1 after 15 seconds # None 1947s Apr 14 09:59:30 And a thread is still alive # None 1947s Apr 14 09:59:30 When I stop a thread # None 1947s Apr 14 09:59:30 Then a distributed table on postgres-0 has expected rows # None 1953s Apr 14 09:59:37 1953s Apr 14 09:59:37 Scenario: check that in-flight transaction is rolled back after timeout when other workers need to change pg_dist_node # features/citus.feature:69 1953s Apr 14 09:59:37 Given I start postgres-4 in citus group 2 # None 1953s Apr 14 09:59:37 Then postgres-4 is a leader in a group 2 after 10 seconds # None 1953s Apr 14 09:59:37 And "members/postgres-4" key in a group 2 in DCS has role=primary after 3 seconds # None 1953s Apr 14 09:59:37 When I run patronictl.py edit-config batman --group 2 -s ttl=20 --force # None 1953s Apr 14 09:59:37 Then I receive a response returncode 0 # None 1953s Apr 14 09:59:37 And I receive a response output "+ttl: 20" # None 1953s Apr 14 09:59:37 Then postgres-4 is registered in the postgres-2 as the primary in group 2 after 5 seconds # None 1953s Apr 14 09:59:37 When I shut down postgres-4 # None 1953s Apr 14 09:59:37 Then there is a transaction in progress on postgres-0 changing pg_dist_node after 5 seconds # None 1953s Apr 14 09:59:37 When I run patronictl.py restart batman postgres-2 --group 1 --force # None 1953s Apr 14 09:59:37 Then a transaction finishes in 20 seconds # None 1953s Apr 14 09:59:37 1953s Apr 14 09:59:37 Feature: custom bootstrap # features/custom_bootstrap.feature:1 1953s Apr 14 09:59:37 We should check that patroni can bootstrap a new cluster from a backup 1953s Apr 14 09:59:37 Scenario: clone existing cluster using pg_basebackup # features/custom_bootstrap.feature:4 1953s Apr 14 09:59:37 Given I start postgres-0 # features/steps/basic_replication.py:20 1964s Apr 14 09:59:47 Then postgres-0 is a leader after 10 seconds # features/steps/patroni_api.py:31 1965s Apr 14 09:59:48 When I add the table foo to postgres-0 # features/steps/basic_replication.py:66 1965s Apr 14 09:59:48 And I start postgres-1 in a cluster batman1 as a clone of postgres-0 # features/steps/custom_bootstrap.py:6 1970s Apr 14 09:59:53 Then postgres-1 is a leader of batman1 after 10 seconds # features/steps/custom_bootstrap.py:16 1971s Apr 14 09:59:54 Then table foo is present on postgres-1 after 10 seconds # features/steps/basic_replication.py:105 1971s Apr 14 09:59:54 1971s Apr 14 09:59:54 Scenario: make a backup and do a restore into a new cluster # features/custom_bootstrap.feature:12 1971s Apr 14 09:59:54 Given I add the table bar to postgres-1 # features/steps/basic_replication.py:66 1971s Apr 14 09:59:54 And I do a backup of postgres-1 # features/steps/custom_bootstrap.py:25 1972s Apr 14 09:59:55 When I start postgres-2 in a cluster batman2 from backup # features/steps/custom_bootstrap.py:11 1978s Apr 14 10:00:01 Then postgres-2 is a leader of batman2 after 30 seconds # features/steps/custom_bootstrap.py:16 1978s Apr 14 10:00:01 And table bar is present on postgres-2 after 10 seconds # features/steps/basic_replication.py:105 1995s Apr 14 10:00:19 1995s Apr 14 10:00:19 Feature: dcs failsafe mode # features/dcs_failsafe_mode.feature:1 1995s Apr 14 10:00:19 We should check the basic dcs failsafe mode functioning 1995s Apr 14 10:00:19 Scenario: check failsafe mode can be successfully enabled # features/dcs_failsafe_mode.feature:4 1995s Apr 14 10:00:19 Given I start postgres-0 # features/steps/basic_replication.py:20 1999s Apr 14 10:00:23 And postgres-0 is a leader after 10 seconds # features/steps/patroni_api.py:31 2000s Apr 14 10:00:24 Then "config" key in DCS has ttl=30 after 10 seconds # features/steps/cascading_replication.py:23 2000s Apr 14 10:00:24 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:73 2000s Apr 14 10:00:24 Then I receive a response code 200 # features/steps/patroni_api.py:100 2000s Apr 14 10:00:24 And Response on GET http://127.0.0.1:8008/failsafe contains postgres-0 after 10 seconds # features/steps/patroni_api.py:158 2001s Apr 14 10:00:24 When I issue a GET request to http://127.0.0.1:8008/failsafe # features/steps/patroni_api.py:63 2001s Apr 14 10:00:24 Then I receive a response code 200 # features/steps/patroni_api.py:100 2001s Apr 14 10:00:24 And I receive a response postgres-0 http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:100 2001s Apr 14 10:00:24 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,"postgres_0":null}} # features/steps/patroni_api.py:73 2001s Apr 14 10:00:24 Then I receive a response code 200 # features/steps/patroni_api.py:100 2001s Apr 14 10:00:24 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:73 2001s Apr 14 10:00:24 Then I receive a response code 200 # features/steps/patroni_api.py:100 2001s Apr 14 10:00:24 2001s Apr 14 10:00:24 @dcs-failsafe 2001s Apr 14 10:00:24 Scenario: check one-node cluster is functioning while DCS is down # features/dcs_failsafe_mode.feature:20 2001s Apr 14 10:00:24 Given DCS is down # features/steps/dcs_failsafe_mode.py:4 2001s Apr 14 10:00:24 Then Response on GET http://127.0.0.1:8008/primary contains failsafe_mode_is_active after 12 seconds # features/steps/patroni_api.py:158 2005s Apr 14 10:00:28 And postgres-0 role is the primary after 10 seconds # features/steps/basic_replication.py:117 2005s Apr 14 10:00:28 2005s Apr 14 10:00:28 @dcs-failsafe 2005s Apr 14 10:00:28 Scenario: check new replica isn't promoted when leader is down and DCS is up # features/dcs_failsafe_mode.feature:26 2005s Apr 14 10:00:28 Given DCS is up # features/steps/dcs_failsafe_mode.py:9 2005s Apr 14 10:00:28 When I do a backup of postgres-0 # features/steps/custom_bootstrap.py:25 2006s Apr 14 10:00:29 And I shut down postgres-0 # features/steps/basic_replication.py:41 2008s Apr 14 10:00:31 When I start postgres-1 in a cluster batman from backup with no_leader # features/steps/dcs_failsafe_mode.py:14 2012s Apr 14 10:00:35 Then postgres-1 role is the replica after 12 seconds # features/steps/basic_replication.py:117 2012s Apr 14 10:00:35 2012s Apr 14 10:00:35 Scenario: check leader and replica are both in /failsafe key after leader is back # features/dcs_failsafe_mode.feature:33 2012s Apr 14 10:00:35 Given I start postgres-0 # features/steps/basic_replication.py:20 2015s Apr 14 10:00:38 And I start postgres-1 # features/steps/basic_replication.py:20 2015s Apr 14 10:00:38 Then "members/postgres-0" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 2016s Apr 14 10:00:39 And "members/postgres-1" key in DCS has state=running after 2 seconds # features/steps/cascading_replication.py:23 2016s Apr 14 10:00:39 And Response on GET http://127.0.0.1:8009/failsafe contains postgres-1 after 10 seconds # features/steps/patroni_api.py:158 2021s Apr 14 10:00:44 When I issue a GET request to http://127.0.0.1:8009/failsafe # features/steps/patroni_api.py:63 2021s Apr 14 10:00:44 Then I receive a response code 200 # features/steps/patroni_api.py:100 2021s Apr 14 10:00:44 And I receive a response postgres-0 http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:100 2021s Apr 14 10:00:44 And I receive a response postgres-1 http://127.0.0.1:8009/patroni # features/steps/patroni_api.py:100 2021s Apr 14 10:00:44 2021s Apr 14 10:00:44 @dcs-failsafe @slot-advance 2021s Apr 14 10:00:44 Scenario: check leader and replica are functioning while DCS is down # features/dcs_failsafe_mode.feature:46 2021s Apr 14 10:00:44 Given I get all changes from physical slot dcs_slot_1 on postgres-0 # features/steps/slots.py:77 2021s Apr 14 10:00:44 Then physical slot dcs_slot_1 is in sync between postgres-0 and postgres-1 after 10 seconds # features/steps/slots.py:52 2023s Apr 14 10:00:46 And logical slot dcs_slot_0 is in sync between postgres-0 and postgres-1 after 10 seconds # features/steps/slots.py:52 2025s Apr 14 10:00:48 And DCS is down # features/steps/dcs_failsafe_mode.py:4 2025s Apr 14 10:00:48 Then Response on GET http://127.0.0.1:8008/primary contains failsafe_mode_is_active after 12 seconds # features/steps/patroni_api.py:158 2030s Apr 14 10:00:53 Then postgres-0 role is the primary after 10 seconds # features/steps/basic_replication.py:117 2030s Apr 14 10:00:53 And postgres-1 role is the replica after 2 seconds # features/steps/basic_replication.py:117 2030s Apr 14 10:00:53 And replication works from postgres-0 to postgres-1 after 10 seconds # features/steps/basic_replication.py:124 2030s Apr 14 10:00:53 When I get all changes from logical slot dcs_slot_0 on postgres-0 # features/steps/slots.py:72 2030s Apr 14 10:00:53 And I get all changes from physical slot dcs_slot_1 on postgres-0 # features/steps/slots.py:77 2030s Apr 14 10:00:53 Then logical slot dcs_slot_0 is in sync between postgres-0 and postgres-1 after 20 seconds # features/steps/slots.py:52 2037s Apr 14 10:01:00 And physical slot dcs_slot_1 is in sync between postgres-0 and postgres-1 after 10 seconds # features/steps/slots.py:52 2037s Apr 14 10:01:00 2037s Apr 14 10:01:00 @dcs-failsafe 2037s Apr 14 10:01:00 Scenario: check primary is demoted when one replica is shut down and DCS is down # features/dcs_failsafe_mode.feature:61 2037s Apr 14 10:01:00 Given DCS is down # features/steps/dcs_failsafe_mode.py:4 2037s Apr 14 10:01:00 And I kill postgres-1 # features/steps/basic_replication.py:46 2038s Apr 14 10:01:01 And I kill postmaster on postgres-1 # features/steps/basic_replication.py:56 2038s Apr 14 10:01:02 waiting for server to shut down.... done 2038s Apr 14 10:01:02 server stopped 2038s Apr 14 10:01:02 Then postgres-0 role is the replica after 12 seconds # features/steps/basic_replication.py:117 2040s Apr 14 10:01:04 2040s Apr 14 10:01:04 @dcs-failsafe 2040s Apr 14 10:01:04 Scenario: check known replica is promoted when leader is down and DCS is up # features/dcs_failsafe_mode.feature:68 2040s Apr 14 10:01:04 Given I kill postgres-0 # features/steps/basic_replication.py:46 2041s Apr 14 10:01:05 And I shut down postmaster on postgres-0 # features/steps/basic_replication.py:51 2041s Apr 14 10:01:05 waiting for server to shut down.... done 2041s Apr 14 10:01:05 server stopped 2041s Apr 14 10:01:05 And DCS is up # features/steps/dcs_failsafe_mode.py:9 2041s Apr 14 10:01:05 When I start postgres-1 # features/steps/basic_replication.py:20 2045s Apr 14 10:01:09 Then "members/postgres-1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 2046s Apr 14 10:01:10 And postgres-1 role is the primary after 25 seconds # features/steps/basic_replication.py:117 2049s Apr 14 10:01:12 2049s Apr 14 10:01:12 @dcs-failsafe 2049s Apr 14 10:01:12 Scenario: scale to three-node cluster # features/dcs_failsafe_mode.feature:77 2049s Apr 14 10:01:12 Given I start postgres-0 # features/steps/basic_replication.py:20 2054s Apr 14 10:01:17 And I configure and start postgres-2 with a tag replicatefrom postgres-0 # features/steps/cascading_replication.py:7 2059s Apr 14 10:01:22 Then "members/postgres-2" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 2061s Apr 14 10:01:24 And "members/postgres-0" key in DCS has state=running after 20 seconds # features/steps/cascading_replication.py:23 2061s Apr 14 10:01:24 And Response on GET http://127.0.0.1:8008/failsafe contains postgres-2 after 10 seconds # features/steps/patroni_api.py:158 2061s Apr 14 10:01:24 And replication works from postgres-1 to postgres-0 after 10 seconds # features/steps/basic_replication.py:124 2062s Apr 14 10:01:25 And replication works from postgres-1 to postgres-2 after 10 seconds # features/steps/basic_replication.py:124 2063s Apr 14 10:01:26 2063s Apr 14 10:01:26 @dcs-failsafe @slot-advance 2063s Apr 14 10:01:26 Scenario: make sure permanent slots exist on replicas # features/dcs_failsafe_mode.feature:88 2063s Apr 14 10:01:26 Given I issue a PATCH request to http://127.0.0.1:8009/config with {"slots":{"dcs_slot_0":null,"dcs_slot_2":{"type":"logical","database":"postgres","plugin":"test_decoding"}}} # features/steps/patroni_api.py:73 2063s Apr 14 10:01:26 Then logical slot dcs_slot_2 is in sync between postgres-1 and postgres-0 after 20 seconds # features/steps/slots.py:52 2069s Apr 14 10:01:32 And logical slot dcs_slot_2 is in sync between postgres-1 and postgres-2 after 20 seconds # features/steps/slots.py:52 2070s Apr 14 10:01:33 When I get all changes from physical slot dcs_slot_1 on postgres-1 # features/steps/slots.py:77 2070s Apr 14 10:01:33 Then physical slot dcs_slot_1 is in sync between postgres-1 and postgres-0 after 10 seconds # features/steps/slots.py:52 2071s Apr 14 10:01:34 And physical slot dcs_slot_1 is in sync between postgres-1 and postgres-2 after 10 seconds # features/steps/slots.py:52 2071s Apr 14 10:01:34 And physical slot postgres_0 is in sync between postgres-1 and postgres-2 after 10 seconds # features/steps/slots.py:52 2071s Apr 14 10:01:34 And physical slot postgres_2 is in sync between postgres-0 and postgres-1 after 10 seconds # features/steps/slots.py:52 2071s Apr 14 10:01:34 2071s Apr 14 10:01:34 @dcs-failsafe 2071s Apr 14 10:01:34 Scenario: check three-node cluster is functioning while DCS is down # features/dcs_failsafe_mode.feature:99 2071s Apr 14 10:01:34 Given DCS is down # features/steps/dcs_failsafe_mode.py:4 2071s Apr 14 10:01:34 Then Response on GET http://127.0.0.1:8009/primary contains failsafe_mode_is_active after 12 seconds # features/steps/patroni_api.py:158 2076s Apr 14 10:01:40 Then postgres-1 role is the primary after 10 seconds # features/steps/basic_replication.py:117 2076s Apr 14 10:01:40 And postgres-0 role is the replica after 2 seconds # features/steps/basic_replication.py:117 2076s Apr 14 10:01:40 And postgres-2 role is the replica after 2 seconds # features/steps/basic_replication.py:117 2076s Apr 14 10:01:40 2076s Apr 14 10:01:40 @dcs-failsafe @slot-advance 2076s Apr 14 10:01:40 Scenario: check that permanent slots are in sync between nodes while DCS is down # features/dcs_failsafe_mode.feature:108 2076s Apr 14 10:01:40 Given replication works from postgres-1 to postgres-0 after 10 seconds # features/steps/basic_replication.py:124 2077s Apr 14 10:01:40 And replication works from postgres-1 to postgres-2 after 10 seconds # features/steps/basic_replication.py:124 2078s Apr 14 10:01:41 When I get all changes from logical slot dcs_slot_2 on postgres-1 # features/steps/slots.py:72 2078s Apr 14 10:01:41 And I get all changes from physical slot dcs_slot_1 on postgres-1 # features/steps/slots.py:77 2078s Apr 14 10:01:41 Then logical slot dcs_slot_2 is in sync between postgres-1 and postgres-0 after 20 seconds # features/steps/slots.py:52 2084s Apr 14 10:01:47 And logical slot dcs_slot_2 is in sync between postgres-1 and postgres-2 after 20 seconds # features/steps/slots.py:52 2084s Apr 14 10:01:47 And physical slot dcs_slot_1 is in sync between postgres-1 and postgres-0 after 10 seconds # features/steps/slots.py:52 2084s Apr 14 10:01:47 And physical slot dcs_slot_1 is in sync between postgres-1 and postgres-2 after 10 seconds # features/steps/slots.py:52 2084s Apr 14 10:01:47 And physical slot postgres_0 is in sync between postgres-1 and postgres-2 after 10 seconds # features/steps/slots.py:52 2084s Apr 14 10:01:47 And physical slot postgres_2 is in sync between postgres-0 and postgres-1 after 10 seconds # features/steps/slots.py:52 2097s Apr 14 10:02:00 2097s Apr 14 10:02:00 Feature: ignored slots # features/ignored_slots.feature:1 2097s Apr 14 10:02:00 2097s Apr 14 10:02:00 Scenario: check ignored slots aren't removed on failover/switchover # features/ignored_slots.feature:2 2097s Apr 14 10:02:00 Given I start postgres-1 # features/steps/basic_replication.py:20 2101s Apr 14 10:02:04 Then postgres-1 is a leader after 10 seconds # features/steps/patroni_api.py:31 2102s Apr 14 10:02:05 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 2102s Apr 14 10:02:05 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:73 2102s Apr 14 10:02:05 Then I receive a response code 200 # features/steps/patroni_api.py:100 2102s Apr 14 10:02:05 And Response on GET http://127.0.0.1:8009/config contains ignore_slots after 10 seconds # features/steps/patroni_api.py:158 2102s Apr 14 10:02:05 When I shut down postgres-1 # features/steps/basic_replication.py:41 2104s Apr 14 10:02:07 And I start postgres-1 # features/steps/basic_replication.py:20 2107s Apr 14 10:02:10 Then postgres-1 is a leader after 10 seconds # features/steps/patroni_api.py:31 2109s Apr 14 10:02:12 And "members/postgres-1" key in DCS has role=primary after 10 seconds # features/steps/cascading_replication.py:23 2110s Apr 14 10:02:13 And postgres-1 role is the primary after 20 seconds # features/steps/basic_replication.py:117 2110s Apr 14 10:02:13 When I create a logical replication slot unmanaged_slot_0 on postgres-1 with the test_decoding plugin # features/steps/slots.py:9 2110s Apr 14 10:02:13 And I create a logical replication slot unmanaged_slot_1 on postgres-1 with the test_decoding plugin # features/steps/slots.py:9 2110s Apr 14 10:02:13 And I create a logical replication slot unmanaged_slot_2 on postgres-1 with the test_decoding plugin # features/steps/slots.py:9 2110s Apr 14 10:02:13 And I create a logical replication slot unmanaged_slot_3 on postgres-1 with the test_decoding plugin # features/steps/slots.py:9 2110s Apr 14 10:02:13 And I create a logical replication slot dummy_slot on postgres-1 with the test_decoding plugin # features/steps/slots.py:9 2110s Apr 14 10:02:13 Then postgres-1 has a logical replication slot named unmanaged_slot_0 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 2110s Apr 14 10:02:13 And postgres-1 has a logical replication slot named unmanaged_slot_1 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 2110s Apr 14 10:02:13 And postgres-1 has a logical replication slot named unmanaged_slot_2 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 2110s Apr 14 10:02:13 And postgres-1 has a logical replication slot named unmanaged_slot_3 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 2110s Apr 14 10:02:13 When I start postgres-0 # features/steps/basic_replication.py:20 2114s Apr 14 10:02:17 Then "members/postgres-0" key in DCS has role=replica after 10 seconds # features/steps/cascading_replication.py:23 2114s Apr 14 10:02:17 And postgres-0 role is the secondary after 20 seconds # features/steps/basic_replication.py:117 2114s Apr 14 10:02:17 And replication works from postgres-1 to postgres-0 after 20 seconds # features/steps/basic_replication.py:124 2116s Apr 14 10:02:19 When I shut down postgres-1 # features/steps/basic_replication.py:41 2117s Apr 14 10:02:21 Then "members/postgres-0" key in DCS has role=primary after 10 seconds # features/steps/cascading_replication.py:23 2118s Apr 14 10:02:22 When I start postgres-1 # features/steps/basic_replication.py:20 2121s Apr 14 10:02:25 Then postgres-1 role is the secondary after 20 seconds # features/steps/basic_replication.py:117 2121s Apr 14 10:02:25 And "members/postgres-1" key in DCS has role=replica after 10 seconds # features/steps/cascading_replication.py:23 2122s Apr 14 10:02:26 And I sleep for 2 seconds # features/steps/patroni_api.py:41 2124s Apr 14 10:02:28 And postgres-1 has a logical replication slot named unmanaged_slot_0 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 2124s Apr 14 10:02:28 And postgres-1 has a logical replication slot named unmanaged_slot_1 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 2124s Apr 14 10:02:28 And postgres-1 has a logical replication slot named unmanaged_slot_2 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 2124s Apr 14 10:02:28 And postgres-1 has a logical replication slot named unmanaged_slot_3 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 2124s Apr 14 10:02:28 And postgres-1 does not have a replication slot named dummy_slot # features/steps/slots.py:41 2124s Apr 14 10:02:28 When I shut down postgres-0 # features/steps/basic_replication.py:41 2126s Apr 14 10:02:30 Then "members/postgres-1" key in DCS has role=primary after 10 seconds # features/steps/cascading_replication.py:23 2127s Apr 14 10:02:31 And postgres-1 has a logical replication slot named unmanaged_slot_0 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 2127s Apr 14 10:02:31 And postgres-1 has a logical replication slot named unmanaged_slot_1 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 2127s Apr 14 10:02:31 And postgres-1 has a logical replication slot named unmanaged_slot_2 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 2127s Apr 14 10:02:31 And postgres-1 has a logical replication slot named unmanaged_slot_3 with the test_decoding plugin after 2 seconds # features/steps/slots.py:20 2136s Apr 14 10:02:39 2136s Apr 14 10:02:39 Feature: nostream node # features/nostream_node.feature:1 2136s Apr 14 10:02:39 2136s Apr 14 10:02:39 Scenario: check nostream node is recovering from archive # features/nostream_node.feature:3 2136s Apr 14 10:02:39 When I start postgres-0 # features/steps/basic_replication.py:20 2140s Apr 14 10:02:43 And I configure and start postgres-1 with a tag nostream true # features/steps/cascading_replication.py:7 2145s Apr 14 10:02:48 Then "members/postgres-1" key in DCS has replication_state=in archive recovery after 10 seconds # features/steps/cascading_replication.py:23 2146s Apr 14 10:02:49 And replication works from postgres-0 to postgres-1 after 30 seconds # features/steps/basic_replication.py:124 2150s Apr 14 10:02:53 2150s Apr 14 10:02:53 @slot-advance 2150s Apr 14 10:02:53 Scenario: check permanent logical replication slots are not copied # features/nostream_node.feature:10 2150s Apr 14 10:02: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:73 2150s Apr 14 10:02:53 Then I receive a response code 200 # features/steps/patroni_api.py:100 2150s Apr 14 10:02:53 When I run patronictl.py restart batman postgres-0 --force # features/steps/patroni_api.py:88 2153s Apr 14 10:02:57 Then postgres-0 has a logical replication slot named test_logical with the test_decoding plugin after 10 seconds # features/steps/slots.py:20 2154s Apr 14 10:02:58 When I configure and start postgres-2 with a tag replicatefrom postgres-1 # features/steps/cascading_replication.py:7 2160s Apr 14 10:03:03 Then "members/postgres-2" key in DCS has replication_state=streaming after 10 seconds # features/steps/cascading_replication.py:23 2166s Apr 14 10:03:09 And postgres-1 does not have a replication slot named test_logical # features/steps/slots.py:41 2166s Apr 14 10:03:09 And postgres-2 does not have a replication slot named test_logical # features/steps/slots.py:41 2166s Apr 14 10:03:09 2166s Apr 14 10:03:09 @slot-advance 2166s Apr 14 10:03:09 Scenario: check that slots are written to the /status key # features/nostream_node.feature:21 2166s Apr 14 10:03:09 Given "status" key in DCS has postgres_0 in slots # features/steps/slots.py:118 2166s Apr 14 10:03:09 And "status" key in DCS has postgres_2 in slots # features/steps/slots.py:118 2166s Apr 14 10:03:09 And "status" key in DCS has test_logical in slots # features/steps/slots.py:118 2166s Apr 14 10:03:09 And "status" key in DCS has test_logical in slots # features/steps/slots.py:118 2166s Apr 14 10:03:09 And "status" key in DCS does not have postgres_1 in slots # features/steps/slots.py:124 2181s Apr 14 10:03:24 2181s Apr 14 10:03:24 Feature: patroni api # features/patroni_api.feature:1 2181s Apr 14 10:03:24 We should check that patroni correctly responds to valid and not-valid API requests. 2181s Apr 14 10:03:24 Scenario: check API requests on a stand-alone server # features/patroni_api.feature:4 2181s Apr 14 10:03:24 Given I start postgres-0 # features/steps/basic_replication.py:20 2186s Apr 14 10:03:29 And postgres-0 is a leader after 10 seconds # features/steps/patroni_api.py:31 2187s Apr 14 10:03:30 When I issue a GET request to http://127.0.0.1:8008/ # features/steps/patroni_api.py:63 2187s Apr 14 10:03:30 Then I receive a response code 200 # features/steps/patroni_api.py:100 2187s Apr 14 10:03:30 And I receive a response state running # features/steps/patroni_api.py:100 2187s Apr 14 10:03:30 And I receive a response role primary # features/steps/patroni_api.py:100 2187s Apr 14 10:03:30 When I issue a GET request to http://127.0.0.1:8008/standby_leader # features/steps/patroni_api.py:63 2187s Apr 14 10:03:30 Then I receive a response code 503 # features/steps/patroni_api.py:100 2187s Apr 14 10:03:30 When I issue a GET request to http://127.0.0.1:8008/health # features/steps/patroni_api.py:63 2187s Apr 14 10:03:31 Then I receive a response code 200 # features/steps/patroni_api.py:100 2187s Apr 14 10:03:31 When I issue a GET request to http://127.0.0.1:8008/replica # features/steps/patroni_api.py:63 2187s Apr 14 10:03:31 Then I receive a response code 503 # features/steps/patroni_api.py:100 2187s Apr 14 10:03:31 When I issue a POST request to http://127.0.0.1:8008/reinitialize with {"force": true} # features/steps/patroni_api.py:73 2187s Apr 14 10:03:31 Then I receive a response code 503 # features/steps/patroni_api.py:100 2187s Apr 14 10:03:31 And I receive a response text I am the leader, can not reinitialize # features/steps/patroni_api.py:100 2187s Apr 14 10:03:31 When I run patronictl.py switchover batman --primary postgres-0 --force # features/steps/patroni_api.py:88 2189s Apr 14 10:03:32 Then I receive a response returncode 1 # features/steps/patroni_api.py:100 2189s Apr 14 10:03:32 And I receive a response output "Error: No candidates found to switchover to" # features/steps/patroni_api.py:100 2189s Apr 14 10:03:32 When I issue a POST request to http://127.0.0.1:8008/switchover with {"leader": "postgres-0"} # features/steps/patroni_api.py:73 2189s Apr 14 10:03:32 Then I receive a response code 412 # features/steps/patroni_api.py:100 2189s Apr 14 10:03:32 And I receive a response text switchover is not possible: cluster does not have members except leader # features/steps/patroni_api.py:100 2189s Apr 14 10:03:32 When I issue an empty POST request to http://127.0.0.1:8008/failover # features/steps/patroni_api.py:68 2189s Apr 14 10:03:32 Then I receive a response code 400 # features/steps/patroni_api.py:100 2189s Apr 14 10:03:32 When I issue a POST request to http://127.0.0.1:8008/failover with {"foo": "bar"} # features/steps/patroni_api.py:73 2189s Apr 14 10:03:32 Then I receive a response code 400 # features/steps/patroni_api.py:100 2189s Apr 14 10:03:32 And I receive a response text "Failover could be performed only to a specific candidate" # features/steps/patroni_api.py:100 2189s Apr 14 10:03:32 2189s Apr 14 10:03:32 Scenario: check local configuration reload # features/patroni_api.feature:32 2189s Apr 14 10:03:32 Given I add tag new_tag new_value to postgres-0 config # features/steps/patroni_api.py:139 2189s Apr 14 10:03:32 And I issue an empty POST request to http://127.0.0.1:8008/reload # features/steps/patroni_api.py:68 2189s Apr 14 10:03:32 Then I receive a response code 202 # features/steps/patroni_api.py:100 2189s Apr 14 10:03:32 2189s Apr 14 10:03:32 Scenario: check dynamic configuration change via DCS # features/patroni_api.feature:37 2189s Apr 14 10:03:32 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:73 2189s Apr 14 10:03:32 Then I receive a response code 200 # features/steps/patroni_api.py:100 2189s Apr 14 10:03:32 And Response on GET http://127.0.0.1:8008/patroni contains pending_restart after 11 seconds # features/steps/patroni_api.py:158 2191s Apr 14 10:03:34 When I issue a GET request to http://127.0.0.1:8008/config # features/steps/patroni_api.py:63 2191s Apr 14 10:03:34 Then I receive a response code 200 # features/steps/patroni_api.py:100 2191s Apr 14 10:03:34 And I receive a response ttl 20 # features/steps/patroni_api.py:100 2191s Apr 14 10:03:34 When I issue a GET request to http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:63 2191s Apr 14 10:03:35 Then I receive a response code 200 # features/steps/patroni_api.py:100 2191s Apr 14 10:03:35 And I receive a response tags {'new_tag': 'new_value'} # features/steps/patroni_api.py:100 2191s Apr 14 10:03:35 And I sleep for 4 seconds # features/steps/patroni_api.py:41 2195s Apr 14 10:03:39 2195s Apr 14 10:03:39 Scenario: check the scheduled restart # features/patroni_api.feature:49 2195s Apr 14 10:03:39 Given I run patronictl.py edit-config -p 'superuser_reserved_connections=6' --force batman # features/steps/patroni_api.py:88 2197s Apr 14 10:03:40 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 2197s Apr 14 10:03:40 And I receive a response output "+ superuser_reserved_connections: 6" # features/steps/patroni_api.py:100 2197s Apr 14 10:03:40 And Response on GET http://127.0.0.1:8008/patroni contains pending_restart after 5 seconds # features/steps/patroni_api.py:158 2197s Apr 14 10:03:40 Given I issue a scheduled restart at http://127.0.0.1:8008 in 5 seconds with {"role": "replica"} # features/steps/patroni_api.py:126 2197s Apr 14 10:03:40 Then I receive a response code 202 # features/steps/patroni_api.py:100 2197s Apr 14 10:03:40 And I sleep for 8 seconds # features/steps/patroni_api.py:41 2205s Apr 14 10:03:48 And Response on GET http://127.0.0.1:8008/patroni contains pending_restart after 10 seconds # features/steps/patroni_api.py:158 2205s Apr 14 10:03:48 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:126 2205s Apr 14 10:03:48 Then I receive a response code 202 # features/steps/patroni_api.py:100 2205s Apr 14 10:03:48 And Response on GET http://127.0.0.1:8008/patroni does not contain pending_restart after 10 seconds # features/steps/patroni_api.py:173 2212s Apr 14 10:03:55 And postgres-0 role is the primary after 10 seconds # features/steps/basic_replication.py:117 2213s Apr 14 10:03:56 2213s Apr 14 10:03:56 Scenario: check API requests for the primary-replica pair in the pause mode # features/patroni_api.feature:63 2213s Apr 14 10:03:56 Given I start postgres-1 # features/steps/basic_replication.py:20 2217s Apr 14 10:04:00 Then replication works from postgres-0 to postgres-1 after 20 seconds # features/steps/basic_replication.py:124 2218s Apr 14 10:04:01 When I run patronictl.py pause batman # features/steps/patroni_api.py:88 2219s Apr 14 10:04:03 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 2219s Apr 14 10:04:03 When I kill postmaster on postgres-1 # features/steps/basic_replication.py:56 2220s Apr 14 10:04:03 waiting for server to shut down.... done 2220s Apr 14 10:04:03 server stopped 2220s Apr 14 10:04:03 And I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:63 2220s Apr 14 10:04:03 Then I receive a response code 503 # features/steps/patroni_api.py:100 2220s Apr 14 10:04:03 And "members/postgres-1" key in DCS has state=stopped after 10 seconds # features/steps/cascading_replication.py:23 2221s Apr 14 10:04:04 When I run patronictl.py restart batman postgres-1 --force # features/steps/patroni_api.py:88 2224s Apr 14 10:04:08 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 2224s Apr 14 10:04:08 Then replication works from postgres-0 to postgres-1 after 20 seconds # features/steps/basic_replication.py:124 2226s Apr 14 10:04:09 And I sleep for 2 seconds # features/steps/patroni_api.py:41 2228s Apr 14 10:04:11 When I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:63 2228s Apr 14 10:04:11 Then I receive a response code 200 # features/steps/patroni_api.py:100 2228s Apr 14 10:04:11 And I receive a response state running # features/steps/patroni_api.py:100 2228s Apr 14 10:04:11 And I receive a response role replica # features/steps/patroni_api.py:100 2228s Apr 14 10:04:11 When I run patronictl.py reinit batman postgres-1 --force --wait # features/steps/patroni_api.py:88 2232s Apr 14 10:04:15 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 2232s Apr 14 10:04:15 And I receive a response output "Success: reinitialize for member postgres-1" # features/steps/patroni_api.py:100 2232s Apr 14 10:04:15 And postgres-1 role is the secondary after 30 seconds # features/steps/basic_replication.py:117 2233s Apr 14 10:04:16 And replication works from postgres-0 to postgres-1 after 20 seconds # features/steps/basic_replication.py:124 2235s Apr 14 10:04:18 When I run patronictl.py restart batman postgres-0 --force # features/steps/patroni_api.py:88 2238s Apr 14 10:04:21 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 2238s Apr 14 10:04:21 And I receive a response output "Success: restart on member postgres-0" # features/steps/patroni_api.py:100 2238s Apr 14 10:04:21 And postgres-0 role is the primary after 5 seconds # features/steps/basic_replication.py:117 2239s Apr 14 10:04:22 2239s Apr 14 10:04:22 Scenario: check the switchover via the API in the pause mode # features/patroni_api.feature:90 2239s Apr 14 10:04:22 Given I issue a POST request to http://127.0.0.1:8008/switchover with {"leader": "postgres-0", "candidate": "postgres-1"} # features/steps/patroni_api.py:73 2241s Apr 14 10:04:24 Then I receive a response code 200 # features/steps/patroni_api.py:100 2241s Apr 14 10:04:24 And postgres-1 is a leader after 5 seconds # features/steps/patroni_api.py:31 2241s Apr 14 10:04:24 And postgres-1 role is the primary after 10 seconds # features/steps/basic_replication.py:117 2242s Apr 14 10:04:25 And postgres-0 role is the secondary after 10 seconds # features/steps/basic_replication.py:117 2248s Apr 14 10:04:31 And replication works from postgres-1 to postgres-0 after 20 seconds # features/steps/basic_replication.py:124 2248s Apr 14 10:04:32 And "members/postgres-0" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 2249s Apr 14 10:04:33 When I issue a GET request to http://127.0.0.1:8008/primary # features/steps/patroni_api.py:63 2249s Apr 14 10:04:33 Then I receive a response code 503 # features/steps/patroni_api.py:100 2249s Apr 14 10:04:33 When I issue a GET request to http://127.0.0.1:8008/replica # features/steps/patroni_api.py:63 2249s Apr 14 10:04:33 Then I receive a response code 200 # features/steps/patroni_api.py:100 2249s Apr 14 10:04:33 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:63 2249s Apr 14 10:04:33 Then I receive a response code 200 # features/steps/patroni_api.py:100 2249s Apr 14 10:04:33 When I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:63 2250s Apr 14 10:04:33 Then I receive a response code 503 # features/steps/patroni_api.py:100 2250s Apr 14 10:04:33 2250s Apr 14 10:04:33 Scenario: check the scheduled switchover # features/patroni_api.feature:107 2250s Apr 14 10:04:33 Given I issue a scheduled switchover from postgres-1 to postgres-0 in 10 seconds # features/steps/patroni_api.py:119 2251s Apr 14 10:04:34 Then I receive a response returncode 1 # features/steps/patroni_api.py:100 2251s Apr 14 10:04:34 And I receive a response output "Can't schedule switchover in the paused state" # features/steps/patroni_api.py:100 2251s Apr 14 10:04:34 When I run patronictl.py resume batman # features/steps/patroni_api.py:88 2252s Apr 14 10:04:35 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 2252s Apr 14 10:04:35 Given I issue a scheduled switchover from postgres-1 to postgres-0 in 10 seconds # features/steps/patroni_api.py:119 2254s Apr 14 10:04:37 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 2254s Apr 14 10:04:37 And postgres-0 is a leader after 20 seconds # features/steps/patroni_api.py:31 2265s Apr 14 10:04:48 And postgres-0 role is the primary after 10 seconds # features/steps/basic_replication.py:117 2265s Apr 14 10:04:48 And postgres-1 role is the secondary after 10 seconds # features/steps/basic_replication.py:117 2268s Apr 14 10:04:51 And replication works from postgres-0 to postgres-1 after 25 seconds # features/steps/basic_replication.py:124 2268s Apr 14 10:04:51 And "members/postgres-1" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 2269s Apr 14 10:04:52 When I issue a GET request to http://127.0.0.1:8008/primary # features/steps/patroni_api.py:63 2269s Apr 14 10:04:52 Then I receive a response code 200 # features/steps/patroni_api.py:100 2269s Apr 14 10:04:52 When I issue a GET request to http://127.0.0.1:8008/replica # features/steps/patroni_api.py:63 2269s Apr 14 10:04:52 Then I receive a response code 503 # features/steps/patroni_api.py:100 2269s Apr 14 10:04:52 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:63 2269s Apr 14 10:04:52 Then I receive a response code 503 # features/steps/patroni_api.py:100 2269s Apr 14 10:04:52 When I issue a GET request to http://127.0.0.1:8009/replica # features/steps/patroni_api.py:63 2269s Apr 14 10:04:52 Then I receive a response code 200 # features/steps/patroni_api.py:100 2279s Apr 14 10:05:03 2279s Apr 14 10:05:03 Feature: permanent slots # features/permanent_slots.feature:1 2279s Apr 14 10:05:03 2279s Apr 14 10:05:03 Scenario: check that physical permanent slots are created # features/permanent_slots.feature:2 2279s Apr 14 10:05:03 Given I start postgres-0 # features/steps/basic_replication.py:20 2284s Apr 14 10:05:08 Then postgres-0 is a leader after 10 seconds # features/steps/patroni_api.py:31 2285s Apr 14 10:05:09 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 2285s Apr 14 10:05:09 When I issue a PATCH request to http://127.0.0.1:8008/config with {"slots":{"test_physical":0,"postgres_3":0},"postgresql":{"parameters":{"wal_level":"logical"}}} # features/steps/patroni_api.py:73 2286s Apr 14 10:05:09 Then I receive a response code 200 # features/steps/patroni_api.py:100 2286s Apr 14 10:05:09 And Response on GET http://127.0.0.1:8008/config contains slots after 10 seconds # features/steps/patroni_api.py:158 2286s Apr 14 10:05:09 When I start postgres-1 # features/steps/basic_replication.py:20 2291s Apr 14 10:05:14 And I configure and start postgres-2 with a tag nofailover true # features/steps/cascading_replication.py:7 2295s Apr 14 10:05:18 And I configure and start postgres-3 with a tag replicatefrom postgres-2 # features/steps/cascading_replication.py:7 2305s Apr 14 10:05:28 Then postgres-0 has a physical replication slot named test_physical after 10 seconds # features/steps/slots.py:82 2305s Apr 14 10:05:28 And postgres-0 has a physical replication slot named postgres_1 after 10 seconds # features/steps/slots.py:82 2305s Apr 14 10:05:28 And postgres-0 has a physical replication slot named postgres_2 after 10 seconds # features/steps/slots.py:82 2305s Apr 14 10:05:28 And postgres-2 has a physical replication slot named postgres_3 after 10 seconds # features/steps/slots.py:82 2305s Apr 14 10:05:28 And postgres-2 does not have a replication slot named test_physical # features/steps/slots.py:41 2305s Apr 14 10:05:28 2305s Apr 14 10:05:28 @slot-advance 2305s Apr 14 10:05:28 Scenario: check that logical permanent slots are created # features/permanent_slots.feature:19 2305s Apr 14 10:05:28 Given I run patronictl.py restart batman postgres-0 --force # features/steps/patroni_api.py:88 2308s Apr 14 10:05:32 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:73 2309s Apr 14 10:05:32 Then postgres-0 has a logical replication slot named test_logical with the test_decoding plugin after 10 seconds # features/steps/slots.py:20 2310s Apr 14 10:05:33 2310s Apr 14 10:05:33 @slot-advance 2310s Apr 14 10:05:33 Scenario: check that permanent slots are created on replicas # features/permanent_slots.feature:25 2310s Apr 14 10:05:33 Given postgres-1 has a logical replication slot named test_logical with the test_decoding plugin after 10 seconds # features/steps/slots.py:20 2315s Apr 14 10:05:38 Then Logical slot test_logical is in sync between postgres-0 and postgres-1 after 10 seconds # features/steps/slots.py:52 2315s Apr 14 10:05:38 And Logical slot test_logical is in sync between postgres-0 and postgres-3 after 10 seconds # features/steps/slots.py:52 2316s Apr 14 10:05:39 And postgres-1 has a physical replication slot named test_physical after 2 seconds # features/steps/slots.py:82 2316s Apr 14 10:05:39 And postgres-2 does not have a replication slot named test_logical # features/steps/slots.py:41 2316s Apr 14 10:05:39 And postgres-3 has a physical replication slot named test_physical after 2 seconds # features/steps/slots.py:82 2316s Apr 14 10:05:39 2316s Apr 14 10:05:39 @slot-advance 2316s Apr 14 10:05:39 Scenario: check permanent physical slots that match with member names # features/permanent_slots.feature:34 2316s Apr 14 10:05:39 Given postgres-0 has a physical replication slot named postgres_3 after 2 seconds # features/steps/slots.py:82 2316s Apr 14 10:05:39 And postgres-1 has a physical replication slot named postgres_0 after 2 seconds # features/steps/slots.py:82 2316s Apr 14 10:05:39 And postgres-1 has a physical replication slot named postgres_2 after 2 seconds # features/steps/slots.py:82 2316s Apr 14 10:05:39 And postgres-1 has a physical replication slot named postgres_3 after 2 seconds # features/steps/slots.py:82 2316s Apr 14 10:05:39 And postgres-2 does not have a replication slot named postgres_0 # features/steps/slots.py:41 2316s Apr 14 10:05:39 And postgres-2 does not have a replication slot named postgres_1 # features/steps/slots.py:41 2316s Apr 14 10:05:39 And postgres-2 has a physical replication slot named postgres_3 after 2 seconds # features/steps/slots.py:82 2316s Apr 14 10:05:39 And postgres-3 has a physical replication slot named postgres_0 after 2 seconds # features/steps/slots.py:82 2316s Apr 14 10:05:39 And postgres-3 has a physical replication slot named postgres_1 after 2 seconds # features/steps/slots.py:82 2316s Apr 14 10:05:39 And postgres-3 has a physical replication slot named postgres_2 after 2 seconds # features/steps/slots.py:82 2316s Apr 14 10:05:39 2316s Apr 14 10:05:39 @slot-advance 2316s Apr 14 10:05:39 Scenario: check that permanent slots are advanced on replicas # features/permanent_slots.feature:47 2316s Apr 14 10:05:39 Given I add the table replicate_me to postgres-0 # features/steps/basic_replication.py:66 2316s Apr 14 10:05:39 When I get all changes from logical slot test_logical on postgres-0 # features/steps/slots.py:72 2316s Apr 14 10:05:39 And I get all changes from physical slot test_physical on postgres-0 # features/steps/slots.py:77 2316s Apr 14 10:05:39 Then Logical slot test_logical is in sync between postgres-0 and postgres-1 after 10 seconds # features/steps/slots.py:52 2317s Apr 14 10:05:40 And Physical slot test_physical is in sync between postgres-0 and postgres-1 after 10 seconds # features/steps/slots.py:52 2317s Apr 14 10:05:40 And Logical slot test_logical is in sync between postgres-0 and postgres-3 after 10 seconds # features/steps/slots.py:52 2317s Apr 14 10:05:40 And Physical slot test_physical is in sync between postgres-0 and postgres-3 after 10 seconds # features/steps/slots.py:52 2317s Apr 14 10:05:40 And Physical slot postgres_1 is in sync between postgres-0 and postgres-3 after 10 seconds # features/steps/slots.py:52 2317s Apr 14 10:05:40 And Physical slot postgres_3 is in sync between postgres-2 and postgres-0 after 20 seconds # features/steps/slots.py:52 2319s Apr 14 10:05:42 And Physical slot postgres_3 is in sync between postgres-2 and postgres-1 after 10 seconds # features/steps/slots.py:52 2319s Apr 14 10:05:42 2319s Apr 14 10:05:42 @slot-advance 2319s Apr 14 10:05:42 Scenario: check that permanent slots and member slots are written to the /status key # features/permanent_slots.feature:60 2319s Apr 14 10:05:42 Given "status" key in DCS has test_physical in slots # features/steps/slots.py:118 2319s Apr 14 10:05:42 And "status" key in DCS has postgres_0 in slots # features/steps/slots.py:118 2319s Apr 14 10:05:42 And "status" key in DCS has postgres_1 in slots # features/steps/slots.py:118 2319s Apr 14 10:05:42 And "status" key in DCS has postgres_2 in slots # features/steps/slots.py:118 2319s Apr 14 10:05:42 And "status" key in DCS has postgres_3 in slots # features/steps/slots.py:118 2319s Apr 14 10:05:42 2319s Apr 14 10:05:42 @slot-advance 2319s Apr 14 10:05:42 Scenario: check that only non-permanent member slots are written to the retain_slots in /status key # features/permanent_slots.feature:68 2319s Apr 14 10:05:42 Given "status" key in DCS has postgres_0 in retain_slots # features/steps/slots.py:118 2319s Apr 14 10:05:42 And "status" key in DCS has postgres_1 in retain_slots # features/steps/slots.py:118 2319s Apr 14 10:05:42 And "status" key in DCS has postgres_2 in retain_slots # features/steps/slots.py:118 2319s Apr 14 10:05:42 And "status" key in DCS does not have postgres_3 in retain_slots # features/steps/slots.py:124 2319s Apr 14 10:05:42 2319s Apr 14 10:05:42 Scenario: check permanent physical replication slot after failover # features/permanent_slots.feature:74 2319s Apr 14 10:05:42 Given I shut down postgres-3 # features/steps/basic_replication.py:41 2320s Apr 14 10:05:43 And I shut down postgres-2 # features/steps/basic_replication.py:41 2321s Apr 14 10:05:44 And I shut down postgres-0 # features/steps/basic_replication.py:41 2323s Apr 14 10:05:46 Then postgres-1 has a physical replication slot named test_physical after 10 seconds # features/steps/slots.py:82 2323s Apr 14 10:05:46 And postgres-1 has a physical replication slot named postgres_0 after 10 seconds # features/steps/slots.py:82 2323s Apr 14 10:05:46 And postgres-1 has a physical replication slot named postgres_3 after 10 seconds # features/steps/slots.py:82 2323s Apr 14 10:05:46 When I start postgres-0 # features/steps/basic_replication.py:20 2326s Apr 14 10:05:49 Then postgres-0 role is the replica after 20 seconds # features/steps/basic_replication.py:117 2326s Apr 14 10:05:49 And physical replication slot named postgres_1 on postgres-0 has no xmin value after 10 seconds # features/steps/slots.py:98 2327s Apr 14 10:05:50 And postgres-0 has a physical replication slot named postgres_2 after 10 seconds # features/steps/slots.py:82 2327s Apr 14 10:05:50 And postgres-0 has a physical replication slot named postgres_3 after 10 seconds # features/steps/slots.py:82 2342s Apr 14 10:06:05 2342s Apr 14 10:06:05 Feature: priority replication # features/priority_failover.feature:1 2342s Apr 14 10:06:05 We should check that we can give nodes priority during failover 2342s Apr 14 10:06:05 Scenario: check failover priority 0 prevents leaderships # features/priority_failover.feature:4 2342s Apr 14 10:06:05 Given I configure and start postgres-0 with a tag failover_priority 1 # features/steps/cascading_replication.py:7 2346s Apr 14 10:06:10 And I configure and start postgres-1 with a tag failover_priority 0 # features/steps/cascading_replication.py:7 2352s Apr 14 10:06:15 Then replication works from postgres-0 to postgres-1 after 20 seconds # features/steps/basic_replication.py:124 2353s Apr 14 10:06:16 When I shut down postgres-0 # features/steps/basic_replication.py:41 2355s Apr 14 10:06:18 And there is one of ["following a different leader because I am not allowed to promote"] INFO in the postgres-1 patroni log after 5 seconds # features/steps/basic_replication.py:133 2357s Apr 14 10:06:20 Then postgres-1 role is the secondary after 10 seconds # features/steps/basic_replication.py:117 2357s Apr 14 10:06:20 When I start postgres-0 # features/steps/basic_replication.py:20 2360s Apr 14 10:06:23 Then postgres-0 role is the primary after 10 seconds # features/steps/basic_replication.py:117 2363s Apr 14 10:06:26 2363s Apr 14 10:06:26 Scenario: check higher failover priority is respected # features/priority_failover.feature:14 2363s Apr 14 10:06:26 Given I configure and start postgres-2 with a tag failover_priority 1 # features/steps/cascading_replication.py:7 2368s Apr 14 10:06:31 And I configure and start postgres-3 with a tag failover_priority 2 # features/steps/cascading_replication.py:7 2373s Apr 14 10:06:36 Then replication works from postgres-0 to postgres-2 after 20 seconds # features/steps/basic_replication.py:124 2374s Apr 14 10:06:37 And replication works from postgres-0 to postgres-3 after 20 seconds # features/steps/basic_replication.py:124 2375s Apr 14 10:06:39 When I shut down postgres-0 # features/steps/basic_replication.py:41 2377s Apr 14 10:06:41 Then postgres-3 role is the primary after 10 seconds # features/steps/basic_replication.py:117 2378s Apr 14 10:06:42 And there is one of ["postgres-3 has equally tolerable WAL position and priority 2, while this node has priority 1","Wal position of postgres-3 is ahead of my wal position"] INFO in the postgres-2 patroni log after 5 seconds # features/steps/basic_replication.py:133 2378s Apr 14 10:06:42 2378s Apr 14 10:06:42 Scenario: check conflicting configuration handling # features/priority_failover.feature:23 2378s Apr 14 10:06:42 When I set nofailover tag in postgres-2 config # features/steps/patroni_api.py:133 2378s Apr 14 10:06:42 And I issue an empty POST request to http://127.0.0.1:8010/reload # features/steps/patroni_api.py:68 2379s Apr 14 10:06:42 Then I receive a response code 202 # features/steps/patroni_api.py:100 2379s Apr 14 10:06:42 And there is one of ["Conflicting configuration between nofailover: True and failover_priority: 1. Defaulting to nofailover: True"] WARNING in the postgres-2 patroni log after 5 seconds # features/steps/basic_replication.py:133 2381s Apr 14 10:06:44 And "members/postgres-2" key in DCS has tags={'failover_priority': '1', 'nofailover': True} after 10 seconds # features/steps/cascading_replication.py:23 2382s Apr 14 10:06:45 When I issue a POST request to http://127.0.0.1:8010/failover with {"candidate": "postgres-2"} # features/steps/patroni_api.py:73 2382s Apr 14 10:06:45 Then I receive a response code 412 # features/steps/patroni_api.py:100 2382s Apr 14 10:06:45 And I receive a response text "failover is not possible: no good candidates have been found" # features/steps/patroni_api.py:100 2382s Apr 14 10:06:45 When I reset nofailover tag in postgres-1 config # features/steps/patroni_api.py:133 2382s Apr 14 10:06:45 And I issue an empty POST request to http://127.0.0.1:8009/reload # features/steps/patroni_api.py:68 2382s Apr 14 10:06:45 Then I receive a response code 202 # features/steps/patroni_api.py:100 2382s Apr 14 10:06:45 And there is one of ["Conflicting configuration between nofailover: False and failover_priority: 0. Defaulting to nofailover: False"] WARNING in the postgres-1 patroni log after 5 seconds # features/steps/basic_replication.py:133 2383s Apr 14 10:06:46 And "members/postgres-1" key in DCS has tags={'failover_priority': '0', 'nofailover': False} after 10 seconds # features/steps/cascading_replication.py:23 2384s Apr 14 10:06:47 And I issue a POST request to http://127.0.0.1:8009/failover with {"candidate": "postgres-1"} # features/steps/patroni_api.py:73 2386s Apr 14 10:06:49 Then I receive a response code 200 # features/steps/patroni_api.py:100 2386s Apr 14 10:06:49 And postgres-1 role is the primary after 10 seconds # features/steps/basic_replication.py:117 2399s Apr 14 10:07:03 2399s Apr 14 10:07:03 Feature: quorum commit # features/quorum_commit.feature:1 2399s Apr 14 10:07:03 Check basic workfrlows when quorum commit is enabled 2399s Apr 14 10:07:03 Scenario: check enable quorum commit and that the only leader promotes after restart # features/quorum_commit.feature:4 2399s Apr 14 10:07:03 Given I start postgres-0 # features/steps/basic_replication.py:20 2409s Apr 14 10:07:13 Then postgres-0 is a leader after 10 seconds # features/steps/patroni_api.py:31 2409s Apr 14 10:07:13 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 2409s Apr 14 10:07:13 When I issue a PATCH request to http://127.0.0.1:8008/config with {"ttl": 20, "synchronous_mode": "quorum"} # features/steps/patroni_api.py:73 2409s Apr 14 10:07:13 Then I receive a response code 200 # features/steps/patroni_api.py:100 2409s Apr 14 10:07:13 And sync key in DCS has leader=postgres-0 after 20 seconds # features/steps/quorum_commit.py:8 2409s Apr 14 10:07:13 And sync key in DCS has quorum=0 after 2 seconds # features/steps/quorum_commit.py:8 2409s Apr 14 10:07:13 And synchronous_standby_names on postgres-0 is set to '_empty_str_' after 2 seconds # features/steps/quorum_commit.py:39 2409s Apr 14 10:07:13 When I shut down postgres-0 # features/steps/basic_replication.py:41 2411s Apr 14 10:07:15 And sync key in DCS has leader=postgres-0 after 2 seconds # features/steps/quorum_commit.py:8 2411s Apr 14 10:07:15 When I start postgres-0 # features/steps/basic_replication.py:20 2415s Apr 14 10:07:18 Then postgres-0 role is the primary after 10 seconds # features/steps/basic_replication.py:117 2417s Apr 14 10:07:20 When I issue a PATCH request to http://127.0.0.1:8008/config with {"synchronous_mode_strict": true} # features/steps/patroni_api.py:73 2417s Apr 14 10:07:20 Then synchronous_standby_names on postgres-0 is set to 'ANY 1 (*)' after 10 seconds # features/steps/quorum_commit.py:39 2418s Apr 14 10:07:21 2418s Apr 14 10:07:21 Scenario: check failover with one quorum standby # features/quorum_commit.feature:20 2418s Apr 14 10:07:21 Given I start postgres-1 # features/steps/basic_replication.py:20 2422s Apr 14 10:07:25 Then sync key in DCS has sync_standby=postgres-1 after 10 seconds # features/steps/quorum_commit.py:8 2425s Apr 14 10:07:28 And synchronous_standby_names on postgres-0 is set to 'ANY 1 ("postgres-1")' after 2 seconds # features/steps/quorum_commit.py:39 2425s Apr 14 10:07:28 When I shut down postgres-0 # features/steps/basic_replication.py:41 2427s Apr 14 10:07:30 Then postgres-1 role is the primary after 10 seconds # features/steps/basic_replication.py:117 2428s Apr 14 10:07:31 And sync key in DCS has quorum=0 after 10 seconds # features/steps/quorum_commit.py:8 2428s Apr 14 10:07:31 Then synchronous_standby_names on postgres-1 is set to 'ANY 1 (*)' after 10 seconds # features/steps/quorum_commit.py:39 2430s Apr 14 10:07:33 When I start postgres-0 # features/steps/basic_replication.py:20 2433s Apr 14 10:07:36 Then sync key in DCS has leader=postgres-1 after 10 seconds # features/steps/quorum_commit.py:8 2433s Apr 14 10:07:36 Then sync key in DCS has sync_standby=postgres-0 after 10 seconds # features/steps/quorum_commit.py:8 2435s Apr 14 10:07:38 And synchronous_standby_names on postgres-1 is set to 'ANY 1 ("postgres-0")' after 2 seconds # features/steps/quorum_commit.py:39 2435s Apr 14 10:07:38 2435s Apr 14 10:07:38 Scenario: check behavior with three nodes and different replication factor # features/quorum_commit.feature:33 2435s Apr 14 10:07:38 Given I start postgres-2 # features/steps/basic_replication.py:20 2440s Apr 14 10:07:43 Then sync key in DCS has sync_standby=postgres-0,postgres-2 after 10 seconds # features/steps/quorum_commit.py:8 2440s Apr 14 10:07:43 And sync key in DCS has quorum=1 after 2 seconds # features/steps/quorum_commit.py:8 2440s Apr 14 10:07:43 And synchronous_standby_names on postgres-1 is set to 'ANY 1 ("postgres-0","postgres-2")' after 2 seconds # features/steps/quorum_commit.py:39 2440s Apr 14 10:07:43 When I issue a PATCH request to http://127.0.0.1:8009/config with {"synchronous_node_count": 2} # features/steps/patroni_api.py:73 2440s Apr 14 10:07:43 Then sync key in DCS has quorum=0 after 10 seconds # features/steps/quorum_commit.py:8 2441s Apr 14 10:07:44 And synchronous_standby_names on postgres-1 is set to 'ANY 2 ("postgres-0","postgres-2")' after 2 seconds # features/steps/quorum_commit.py:39 2441s Apr 14 10:07:44 2441s Apr 14 10:07:44 Scenario: switch from quorum replication to good old multisync and back # features/quorum_commit.feature:42 2441s Apr 14 10:07:44 Given I issue a PATCH request to http://127.0.0.1:8009/config with {"synchronous_mode": true, "synchronous_node_count": 1} # features/steps/patroni_api.py:73 2441s Apr 14 10:07:44 And I shut down postgres-0 # features/steps/basic_replication.py:41 2442s Apr 14 10:07:45 Then synchronous_standby_names on postgres-1 is set to '"postgres-2"' after 10 seconds # features/steps/quorum_commit.py:39 2444s Apr 14 10:07:47 And sync key in DCS has sync_standby=postgres-2 after 10 seconds # features/steps/quorum_commit.py:8 2446s Apr 14 10:07:49 Then sync key in DCS has quorum=0 after 2 seconds # features/steps/quorum_commit.py:8 2446s Apr 14 10:07:49 When I issue a PATCH request to http://127.0.0.1:8009/config with {"synchronous_mode": "quorum"} # features/steps/patroni_api.py:73 2446s Apr 14 10:07:49 And I start postgres-0 # features/steps/basic_replication.py:20 2449s Apr 14 10:07:52 Then synchronous_standby_names on postgres-1 is set to 'ANY 1 ("postgres-0","postgres-2")' after 10 seconds # features/steps/quorum_commit.py:39 2450s Apr 14 10:07:53 And sync key in DCS has sync_standby=postgres-0,postgres-2 after 10 seconds # features/steps/quorum_commit.py:8 2450s Apr 14 10:07:53 Then sync key in DCS has quorum=1 after 2 seconds # features/steps/quorum_commit.py:8 2450s Apr 14 10:07:53 2450s Apr 14 10:07:53 Scenario: REST API and patronictl # features/quorum_commit.feature:54 2450s Apr 14 10:07:53 Given I run patronictl.py list batman # features/steps/patroni_api.py:88 2451s Apr 14 10:07:54 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 2451s Apr 14 10:07:54 And I receive a response output "Quorum Standby" # features/steps/patroni_api.py:100 2451s Apr 14 10:07:54 And Status code on GET http://127.0.0.1:8008/quorum is 200 after 3 seconds # features/steps/patroni_api.py:144 2451s Apr 14 10:07:54 And Status code on GET http://127.0.0.1:8010/quorum is 200 after 3 seconds # features/steps/patroni_api.py:144 2451s Apr 14 10:07:54 2451s Apr 14 10:07:54 Scenario: nosync node is removed from voters and synchronous_standby_names # features/quorum_commit.feature:61 2451s Apr 14 10:07:54 Given I add tag nosync true to postgres-2 config # features/steps/patroni_api.py:139 2451s Apr 14 10:07:55 When I issue an empty POST request to http://127.0.0.1:8010/reload # features/steps/patroni_api.py:68 2451s Apr 14 10:07:55 Then I receive a response code 202 # features/steps/patroni_api.py:100 2451s Apr 14 10:07:55 And sync key in DCS has quorum=0 after 10 seconds # features/steps/quorum_commit.py:8 2454s Apr 14 10:07:58 And sync key in DCS has sync_standby=postgres-0 after 10 seconds # features/steps/quorum_commit.py:8 2454s Apr 14 10:07:58 And synchronous_standby_names on postgres-1 is set to 'ANY 1 ("postgres-0")' after 2 seconds # features/steps/quorum_commit.py:39 2454s Apr 14 10:07:58 And Status code on GET http://127.0.0.1:8010/quorum is 503 after 10 seconds # features/steps/patroni_api.py:144 2469s Apr 14 10:08:12 2469s Apr 14 10:08:12 Feature: recovery # features/recovery.feature:1 2469s Apr 14 10:08:12 We want to check that crashed postgres is started back 2469s Apr 14 10:08:12 Scenario: check that timeline is not incremented when primary is started after crash # features/recovery.feature:4 2469s Apr 14 10:08:12 Given I start postgres-0 # features/steps/basic_replication.py:20 2480s Apr 14 10:08:23 Then postgres-0 is a leader after 10 seconds # features/steps/patroni_api.py:31 2481s Apr 14 10:08:24 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 2481s Apr 14 10:08:24 When I start postgres-1 # features/steps/basic_replication.py:20 2486s Apr 14 10:08:29 And I add the table foo to postgres-0 # features/steps/basic_replication.py:66 2486s Apr 14 10:08:30 Then table foo is present on postgres-1 after 20 seconds # features/steps/basic_replication.py:105 2487s Apr 14 10:08:31 When I kill postmaster on postgres-0 # features/steps/basic_replication.py:56 2487s Apr 14 10:08:31 waiting for server to shut down.... done 2487s Apr 14 10:08:31 server stopped 2487s Apr 14 10:08:31 Then postgres-0 role is the primary after 10 seconds # features/steps/basic_replication.py:117 2489s Apr 14 10:08:33 When I issue a GET request to http://127.0.0.1:8008/ # features/steps/patroni_api.py:63 2490s Apr 14 10:08:33 Then I receive a response code 200 # features/steps/patroni_api.py:100 2490s Apr 14 10:08:33 And I receive a response role primary # features/steps/patroni_api.py:100 2490s Apr 14 10:08:33 And I receive a response timeline 1 # features/steps/patroni_api.py:100 2490s Apr 14 10:08:33 And "members/postgres-0" key in DCS has state=running after 12 seconds # features/steps/cascading_replication.py:23 2491s Apr 14 10:08:34 And replication works from postgres-0 to postgres-1 after 15 seconds # features/steps/basic_replication.py:124 2494s Apr 14 10:08:37 2494s Apr 14 10:08:37 Scenario: check immediate failover when master_start_timeout=0 # features/recovery.feature:20 2494s Apr 14 10:08:37 Given I issue a PATCH request to http://127.0.0.1:8008/config with {"master_start_timeout": 0} # features/steps/patroni_api.py:73 2494s Apr 14 10:08:37 Then I receive a response code 200 # features/steps/patroni_api.py:100 2494s Apr 14 10:08:37 And Response on GET http://127.0.0.1:8008/config contains master_start_timeout after 10 seconds # features/steps/patroni_api.py:158 2494s Apr 14 10:08:37 When I kill postmaster on postgres-0 # features/steps/basic_replication.py:56 2494s Apr 14 10:08:37 waiting for server to shut down.... done 2494s Apr 14 10:08:37 server stopped 2494s Apr 14 10:08:37 Then postgres-1 is a leader after 10 seconds # features/steps/patroni_api.py:31 2496s Apr 14 10:08:39 And postgres-1 role is the primary after 10 seconds # features/steps/basic_replication.py:117 2497s Apr 14 10:08:40 2497s Apr 14 10:08:40 Scenario: check crashed primary demotes after failed attempt to start # features/recovery.feature:28 2497s Apr 14 10:08:40 Given I issue a PATCH request to http://127.0.0.1:8009/config with {"master_start_timeout": null} # features/steps/patroni_api.py:73 2497s Apr 14 10:08:40 Then I receive a response code 200 # features/steps/patroni_api.py:100 2497s Apr 14 10:08:40 And postgres-0 role is the replica after 10 seconds # features/steps/basic_replication.py:117 2499s Apr 14 10:08:42 When I ensure postgres-1 fails to start after a failure # features/steps/recovery.py:6 2499s Apr 14 10:08:42 When I kill postmaster on postgres-1 # features/steps/basic_replication.py:56 2499s Apr 14 10:08:42 waiting for server to shut down.... done 2499s Apr 14 10:08:42 server stopped 2499s Apr 14 10:08:42 Then postgres-0 is a leader after 10 seconds # features/steps/patroni_api.py:31 2502s Apr 14 10:08:45 And there is a postgres-1_cb.log with "on_role_change demoted batman" in postgres-1 data directory # features/steps/cascading_replication.py:12 2511s Apr 14 10:08:55 2511s Apr 14 10:08:55 Feature: standby cluster # features/standby_cluster.feature:1 2511s Apr 14 10:08:55 2511s Apr 14 10:08:55 Scenario: prepare the cluster with logical slots # features/standby_cluster.feature:2 2511s Apr 14 10:08:55 Given I start postgres-1 # features/steps/basic_replication.py:20 2522s Apr 14 10:09:05 Then postgres-1 is a leader after 10 seconds # features/steps/patroni_api.py:31 2523s Apr 14 10:09:06 And there is a non empty initialize key in DCS after 15 seconds # features/steps/cascading_replication.py:41 2523s Apr 14 10:09:06 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:73 2523s Apr 14 10:09:06 Then I receive a response code 200 # features/steps/patroni_api.py:100 2523s Apr 14 10:09:06 And Response on GET http://127.0.0.1:8009/config contains slots after 10 seconds # features/steps/patroni_api.py:158 2523s Apr 14 10:09:06 And I sleep for 3 seconds # features/steps/patroni_api.py:41 2526s Apr 14 10:09:09 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:73 2526s Apr 14 10:09:09 Then I receive a response code 200 # features/steps/patroni_api.py:100 2526s Apr 14 10:09:09 And I do a backup of postgres-1 # features/steps/custom_bootstrap.py:25 2527s Apr 14 10:09:11 When I start postgres-0 # features/steps/basic_replication.py:20 2537s Apr 14 10:09:21 Then "members/postgres-0" key in DCS has state=running after 10 seconds # features/steps/cascading_replication.py:23 2537s Apr 14 10:09:21 And replication works from postgres-1 to postgres-0 after 15 seconds # features/steps/basic_replication.py:124 2539s Apr 14 10:09:22 When I issue a GET request to http://127.0.0.1:8008/patroni # features/steps/patroni_api.py:63 2539s Apr 14 10:09:22 Then I receive a response code 200 # features/steps/patroni_api.py:100 2539s Apr 14 10:09:22 And I receive a response replication_state streaming # features/steps/patroni_api.py:100 2539s Apr 14 10:09:22 And "members/postgres-0" key in DCS has replication_state=streaming after 10 seconds # features/steps/cascading_replication.py:23 2539s Apr 14 10:09:22 2539s Apr 14 10:09:22 @slot-advance 2539s Apr 14 10:09:22 Scenario: check permanent logical slots are synced to the replica # features/standby_cluster.feature:22 2539s Apr 14 10:09:22 Given I run patronictl.py restart batman postgres-1 --force # features/steps/patroni_api.py:88 2542s Apr 14 10:09:25 Then Logical slot test_logical is in sync between postgres-0 and postgres-1 after 10 seconds # features/steps/slots.py:52 2548s Apr 14 10:09:31 2548s Apr 14 10:09:31 Scenario: Detach exiting node from the cluster # features/standby_cluster.feature:26 2548s Apr 14 10:09:31 When I shut down postgres-1 # features/steps/basic_replication.py:41 2550s Apr 14 10:09:33 Then postgres-0 is a leader after 10 seconds # features/steps/patroni_api.py:31 2550s Apr 14 10:09:33 And "members/postgres-0" key in DCS has role=primary after 5 seconds # features/steps/cascading_replication.py:23 2551s Apr 14 10:09:34 When I issue a GET request to http://127.0.0.1:8008/ # features/steps/patroni_api.py:63 2551s Apr 14 10:09:34 Then I receive a response code 200 # features/steps/patroni_api.py:100 2551s Apr 14 10:09:34 2551s Apr 14 10:09:34 Scenario: check replication of a single table in a standby cluster # features/standby_cluster.feature:33 2551s Apr 14 10:09:34 Given I start postgres-1 in a standby cluster batman1 as a clone of postgres-0 # features/steps/standby_cluster.py:23 2554s Apr 14 10:09:37 Then postgres-1 is a leader of batman1 after 10 seconds # features/steps/custom_bootstrap.py:16 2557s Apr 14 10:09:40 When I add the table foo to postgres-0 # features/steps/basic_replication.py:66 2557s Apr 14 10:09:40 Then table foo is present on postgres-1 after 20 seconds # features/steps/basic_replication.py:105 2557s Apr 14 10:09:40 When I issue a GET request to http://127.0.0.1:8009/patroni # features/steps/patroni_api.py:63 2557s Apr 14 10:09:40 Then I receive a response code 200 # features/steps/patroni_api.py:100 2557s Apr 14 10:09:40 And I receive a response replication_state streaming # features/steps/patroni_api.py:100 2557s Apr 14 10:09:40 And I sleep for 3 seconds # features/steps/patroni_api.py:41 2560s Apr 14 10:09:43 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:63 2560s Apr 14 10:09:43 Then I receive a response code 503 # features/steps/patroni_api.py:100 2560s Apr 14 10:09:43 When I issue a GET request to http://127.0.0.1:8009/standby_leader # features/steps/patroni_api.py:63 2560s Apr 14 10:09:43 Then I receive a response code 200 # features/steps/patroni_api.py:100 2560s Apr 14 10:09:43 And I receive a response role standby_leader # features/steps/patroni_api.py:100 2560s Apr 14 10:09:43 And there is a postgres-1_cb.log with "on_role_change standby_leader batman1" in postgres-1 data directory # features/steps/cascading_replication.py:12 2560s Apr 14 10:09:43 When I start postgres-2 in a cluster batman1 # features/steps/standby_cluster.py:12 2564s Apr 14 10:09:48 Then postgres-2 role is the replica after 24 seconds # features/steps/basic_replication.py:117 2564s Apr 14 10:09:48 And postgres-2 is replicating from postgres-1 after 10 seconds # features/steps/standby_cluster.py:52 2564s Apr 14 10:09:48 And table foo is present on postgres-2 after 20 seconds # features/steps/basic_replication.py:105 2564s Apr 14 10:09:48 When I issue a GET request to http://127.0.0.1:8010/patroni # features/steps/patroni_api.py:63 2564s Apr 14 10:09:48 Then I receive a response code 200 # features/steps/patroni_api.py:100 2564s Apr 14 10:09:48 And I receive a response replication_state streaming # features/steps/patroni_api.py:100 2564s Apr 14 10:09:48 And postgres-1 does not have a replication slot named test_logical # features/steps/slots.py:41 2564s Apr 14 10:09:48 2564s Apr 14 10:09:48 Scenario: check switchover # features/standby_cluster.feature:57 2564s Apr 14 10:09:48 Given I run patronictl.py switchover batman1 --force # features/steps/patroni_api.py:88 2568s Apr 14 10:09:51 Then Status code on GET http://127.0.0.1:8010/standby_leader is 200 after 10 seconds # features/steps/patroni_api.py:144 2568s Apr 14 10:09:51 And postgres-1 is replicating from postgres-2 after 32 seconds # features/steps/standby_cluster.py:52 2571s Apr 14 10:09:54 And there is a postgres-2_cb.log with "on_start replica batman1\non_role_change standby_leader batman1" in postgres-2 data directory # features/steps/cascading_replication.py:12 2571s Apr 14 10:09:54 2571s Apr 14 10:09:54 Scenario: check failover # features/standby_cluster.feature:63 2571s Apr 14 10:09:54 When I kill postgres-2 # features/steps/basic_replication.py:46 2572s Apr 14 10:09:55 And I kill postmaster on postgres-2 # features/steps/basic_replication.py:56 2572s Apr 14 10:09:55 waiting for server to shut down.... done 2572s Apr 14 10:09:55 server stopped 2572s Apr 14 10:09:55 Then postgres-1 is replicating from postgres-0 after 32 seconds # features/steps/standby_cluster.py:52 2590s Apr 14 10:10:13 And Status code on GET http://127.0.0.1:8009/standby_leader is 200 after 10 seconds # features/steps/patroni_api.py:144 2590s Apr 14 10:10:13 When I issue a GET request to http://127.0.0.1:8009/primary # features/steps/patroni_api.py:63 2590s Apr 14 10:10:13 Then I receive a response code 503 # features/steps/patroni_api.py:100 2590s Apr 14 10:10:13 And I receive a response role standby_leader # features/steps/patroni_api.py:100 2590s Apr 14 10:10:13 And replication works from postgres-0 to postgres-1 after 15 seconds # features/steps/basic_replication.py:124 2592s Apr 14 10:10:14 And there is a postgres-1_cb.log with "on_role_change replica batman1\non_role_change standby_leader batman1" in postgres-1 data directory # features/steps/cascading_replication.py:12 2605s Apr 14 10:10:28 2605s Apr 14 10:10:28 Feature: watchdog # features/watchdog.feature:1 2605s Apr 14 10:10:28 Verify that watchdog gets pinged and triggered under appropriate circumstances. 2605s Apr 14 10:10:28 Scenario: watchdog is opened and pinged # features/watchdog.feature:4 2605s Apr 14 10:10:28 Given I start postgres-0 with watchdog # features/steps/watchdog.py:17 2615s Apr 14 10:10:38 Then postgres-0 is a leader after 10 seconds # features/steps/patroni_api.py:31 2616s Apr 14 10:10:39 And postgres-0 role is the primary after 10 seconds # features/steps/basic_replication.py:117 2616s Apr 14 10:10:39 And postgres-0 watchdog has been pinged after 10 seconds # features/steps/watchdog.py:22 2616s Apr 14 10:10:39 And postgres-0 watchdog has a 15 second timeout # features/steps/watchdog.py:35 2616s Apr 14 10:10:39 2616s Apr 14 10:10:39 Scenario: watchdog is reconfigured after global ttl changed # features/watchdog.feature:11 2616s Apr 14 10:10:39 Given I run patronictl.py edit-config batman -s ttl=30 --force # features/steps/patroni_api.py:88 2617s Apr 14 10:10:41 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 2617s Apr 14 10:10:41 And I receive a response output "+ttl: 30" # features/steps/patroni_api.py:100 2617s Apr 14 10:10:41 When I sleep for 4 seconds # features/steps/patroni_api.py:41 2621s Apr 14 10:10:45 Then postgres-0 watchdog has a 25 second timeout # features/steps/watchdog.py:35 2621s Apr 14 10:10:45 2621s Apr 14 10:10:45 Scenario: watchdog is disabled during pause # features/watchdog.feature:18 2621s Apr 14 10:10:45 Given I run patronictl.py pause batman # features/steps/patroni_api.py:88 2623s Apr 14 10:10:46 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 2623s Apr 14 10:10:46 When I sleep for 2 seconds # features/steps/patroni_api.py:41 2625s Apr 14 10:10:48 Then postgres-0 watchdog has been closed # features/steps/watchdog.py:30 2625s Apr 14 10:10:48 2625s Apr 14 10:10:48 Scenario: watchdog is opened and pinged after resume # features/watchdog.feature:24 2625s Apr 14 10:10:48 Given I reset postgres-0 watchdog state # features/steps/watchdog.py:40 2625s Apr 14 10:10:48 And I run patronictl.py resume batman # features/steps/patroni_api.py:88 2626s Apr 14 10:10:49 Then I receive a response returncode 0 # features/steps/patroni_api.py:100 2626s Apr 14 10:10:49 And postgres-0 watchdog has been pinged after 10 seconds # features/steps/watchdog.py:22 2626s Apr 14 10:10:49 2626s Apr 14 10:10:49 Scenario: watchdog is disabled when shutting down # features/watchdog.feature:30 2626s Apr 14 10:10:49 Given I shut down postgres-0 # features/steps/basic_replication.py:41 2628s Apr 14 10:10:51 Then postgres-0 watchdog has been closed # features/steps/watchdog.py:30 2628s Apr 14 10:10:51 2628s Apr 14 10:10:51 Scenario: watchdog is triggered if patroni stops responding # features/watchdog.feature:34 2628s Apr 14 10:10:51 Given I reset postgres-0 watchdog state # features/steps/watchdog.py:40 2628s Apr 14 10:10:51 And I start postgres-0 with watchdog # features/steps/watchdog.py:17 2631s Apr 14 10:10:54 Then postgres-0 role is the primary after 10 seconds # features/steps/basic_replication.py:117 2633s Apr 14 10:10:56 When postgres-0 hangs for 30 seconds # features/steps/watchdog.py:53 2633s Apr 14 10:10:56 Then postgres-0 watchdog is triggered after 30 seconds # features/steps/watchdog.py:45 2671s Apr 14 10:11:34 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.4372.XkUXmvlx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.4375.XiweZeUx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.4421.XXucbSfx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.4469.XtLwFCFx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.4518.XfTNOVrx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.4564.XTwIFAix 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.4634.XoLhUCDx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.4684.XfMqJEcx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.4689.XXIpPxkx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.4769.XuHSZTGx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.4875.XbfGiFQx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.4878.XiQxCWGx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.4923.XWtlUoQx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.4972.XFIGMfox 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.5100.XswwvKzx 2672s Apr 14 10:11:35 Skipping duplicate data .coverage.autopkgtest.5104.XDhjTPSx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.5107.XVuAtvMx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.5154.XhvXmNbx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.5209.XoFsduyx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.5305.XhYtxdEx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.5308.XKlUKtIx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.5643.XGweIkNx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.5719.XbBSYHix 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.5779.XGunmwsx 2672s Apr 14 10:11:35 Skipping duplicate data .coverage.autopkgtest.6052.XeqKLiIx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.6055.XLqDuRVx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.6109.XjOWCbmx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.6172.XYekaerx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.6261.XObhiYlx 2672s Apr 14 10:11:35 Skipping duplicate data .coverage.autopkgtest.6357.XVgQorQx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.6360.XGlIHOYx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.6395.XujtofDx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.6475.XjXTInHx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.6509.XfdOgwUx 2672s Apr 14 10:11:35 Skipping duplicate data .coverage.autopkgtest.6666.XNKSdcvx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.6669.XgCtbxVx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.6720.XvcuWVmx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.6736.XuEMeSgx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.6777.XvsxOhZx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.6825.XnNMTNOx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.6831.XZpYlvRx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.6871.XxgZoRfx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.6916.XzJpoUFx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.7085.XMvTQRmx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.7088.XJRTkCex 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.7095.XrXjDAJx 2672s Apr 14 10:11:35 Skipping duplicate data .coverage.autopkgtest.7229.XfKLszLx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.7235.XyaApjnx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.7282.XwYCGcnx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.7332.XKlraWhx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.7377.XgXJVpcx 2672s Apr 14 10:11:35 Skipping duplicate data .coverage.autopkgtest.7413.XzOtiIwx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.7557.XDPNehPx 2672s Apr 14 10:11:35 Skipping duplicate data .coverage.autopkgtest.7639.XoATKppx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.7642.XKdENFyx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.7677.XOLLrRKx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.7762.XeNrwpVx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.7852.XlJAjVRx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.7907.XxgLqlbx 2672s Apr 14 10:11:35 Skipping duplicate data .coverage.autopkgtest.8247.XjYeImsx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.8250.XCGpVBJx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.8304.XnVjrWDx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.8367.XbCdViQx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.8456.XZKNevHx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.8503.XHzxyxqx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.8558.XxxbjCpx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.8600.XUfktYTx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.8639.XVspPDrx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.8643.XDUFGiix 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.8689.XpRBXRCx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.8922.XFUsbUnx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.8925.XgCEuiEx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.8991.XBVAWgFx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.9048.XWbsDrlx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.9158.XYolOMtx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.9271.XYUnXeXx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.9408.XGgjvgrx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.9412.XmSFnOwx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.9457.XtbjWErx 2672s Apr 14 10:11:35 Skipping duplicate data .coverage.autopkgtest.9460.XWOazHGx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.9464.XVgEpdvx 2672s Apr 14 10:11:35 Combined data file .coverage.autopkgtest.9476.XLIbKKix 2672s Apr 14 10:11:35 Skipping duplicate data .coverage.autopkgtest.9546.XMmljtwx 2675s Apr 14 10:11:38 Name Stmts Miss Cover 2675s Apr 14 10:11:38 ---------------------------------------------------------------------------------------------------------- 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/_distutils_hack/__init__.py 101 96 5% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/__about__.py 5 0 100% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/__init__.py 3 0 100% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/exceptions.py 26 5 81% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/fernet.py 137 54 61% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/hazmat/__init__.py 2 0 100% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/hazmat/_oid.py 135 0 100% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/hazmat/backends/__init__.py 5 0 100% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/hazmat/backends/openssl/__init__.py 3 0 100% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/hazmat/backends/openssl/backend.py 135 67 50% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/__init__.py 0 0 100% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/__init__.py 0 0 100% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/_conditional.py 38 17 55% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/hazmat/bindings/openssl/binding.py 51 4 92% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/hazmat/decrepit/__init__.py 1 0 100% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/hazmat/decrepit/ciphers/__init__.py 1 0 100% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/hazmat/decrepit/ciphers/algorithms.py 68 18 74% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/__init__.py 0 0 100% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_asymmetric.py 6 0 100% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_cipheralgorithm.py 23 1 96% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/_serialization.py 79 35 56% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/__init__.py 0 0 100% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/ec.py 172 22 87% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/padding.py 55 23 58% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/rsa.py 93 40 57% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/utils.py 14 5 64% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/__init__.py 4 0 100% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/algorithms.py 72 13 82% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/base.py 54 3 94% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/modes.py 140 50 64% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/constant_time.py 6 3 50% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/hashes.py 127 20 84% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/hmac.py 6 0 100% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/kdf/__init__.py 7 0 100% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/kdf/pbkdf2.py 27 5 81% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/padding.py 104 37 64% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/cryptography/utils.py 76 25 67% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/dateutil/__init__.py 13 4 69% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/dateutil/_common.py 25 15 40% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/dateutil/_version.py 13 3 77% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/dateutil/parser/__init__.py 33 4 88% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/dateutil/parser/_parser.py 810 436 46% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/dateutil/parser/isoparser.py 183 150 18% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/dateutil/relativedelta.py 240 206 14% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/dateutil/tz/__init__.py 4 0 100% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/dateutil/tz/_common.py 151 114 25% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/dateutil/tz/_factories.py 49 21 57% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/dateutil/tz/tz.py 794 626 21% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/dateutil/tz/win.py 152 149 2% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/__init__.py 13 2 85% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/__main__.py 201 66 67% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/api.py 788 292 63% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/async_executor.py 96 15 84% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/collections.py 56 5 91% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/config.py 357 88 75% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/config_generator.py 212 159 25% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/daemon.py 76 3 96% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/dcs/__init__.py 710 99 86% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/dcs/raft.py 319 35 89% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/dynamic_loader.py 35 7 80% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/exceptions.py 16 0 100% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/file_perm.py 47 10 79% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/global_config.py 87 0 100% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/ha.py 1359 310 77% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/log.py 235 79 66% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/postgresql/__init__.py 825 167 80% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/postgresql/available_parameters/__init__.py 24 3 88% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/postgresql/bootstrap.py 254 60 76% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/postgresql/callback_executor.py 55 8 85% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/postgresql/cancellable.py 104 41 61% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/postgresql/config.py 840 218 74% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/postgresql/connection.py 75 1 99% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/postgresql/misc.py 43 8 81% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/postgresql/mpp/__init__.py 89 11 88% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/postgresql/postmaster.py 170 83 51% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/postgresql/rewind.py 416 127 69% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/postgresql/slots.py 349 41 88% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/postgresql/sync.py 154 10 94% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/postgresql/validator.py 157 24 85% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/psycopg.py 46 19 59% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/quorum.py 182 48 74% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/request.py 58 6 90% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/tags.py 38 0 100% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/utils.py 371 122 67% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/validator.py 309 215 30% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/version.py 1 0 100% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/watchdog/__init__.py 2 0 100% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/watchdog/base.py 203 42 79% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/patroni/watchdog/linux.py 135 35 74% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/psutil/__init__.py 950 629 34% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/psutil/_common.py 422 212 50% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/psutil/_compat.py 301 263 13% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/psutil/_pslinux.py 1250 924 26% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/psutil/_psposix.py 95 38 60% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/psycopg2/__init__.py 19 3 84% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/psycopg2/_json.py 64 27 58% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/psycopg2/_range.py 269 172 36% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/psycopg2/errors.py 3 2 33% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/psycopg2/extensions.py 91 25 73% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/pysyncobj/__init__.py 2 0 100% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/pysyncobj/atomic_replace.py 4 0 100% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/pysyncobj/config.py 80 1 99% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/pysyncobj/dns_resolver.py 52 10 81% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/pysyncobj/encryptor.py 17 2 88% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/pysyncobj/fast_queue.py 21 1 95% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/pysyncobj/journal.py 193 37 81% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/pysyncobj/monotonic.py 76 70 8% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/pysyncobj/node.py 49 10 80% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/pysyncobj/pickle.py 52 32 38% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/pysyncobj/pipe_notifier.py 24 2 92% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/pysyncobj/poller.py 87 41 53% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/pysyncobj/serializer.py 167 133 20% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/pysyncobj/syncobj.py 1057 401 62% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/pysyncobj/tcp_connection.py 250 35 86% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/pysyncobj/tcp_server.py 56 12 79% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/pysyncobj/transport.py 266 57 79% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/pysyncobj/utility.py 59 7 88% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/pysyncobj/version.py 1 0 100% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/pysyncobj/win_inet_pton.py 44 31 30% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/urllib3/__init__.py 49 15 69% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/urllib3/_base_connection.py 63 45 29% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/urllib3/_collections.py 231 104 55% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/urllib3/_request_methods.py 54 16 70% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/urllib3/_version.py 13 3 77% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/urllib3/connection.py 389 143 63% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/urllib3/connectionpool.py 344 130 62% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/urllib3/exceptions.py 121 39 68% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/urllib3/fields.py 92 73 21% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/urllib3/filepost.py 37 24 35% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/urllib3/http2/__init__.py 28 21 25% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/urllib3/http2/probe.py 49 31 37% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/urllib3/poolmanager.py 233 88 62% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/urllib3/response.py 634 395 38% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/urllib3/util/__init__.py 10 0 100% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/urllib3/util/connection.py 66 9 86% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/urllib3/util/proxy.py 13 6 54% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/urllib3/util/request.py 104 49 53% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/urllib3/util/response.py 32 17 47% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/urllib3/util/retry.py 174 50 71% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/urllib3/util/ssl_.py 172 73 58% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/urllib3/util/ssl_match_hostname.py 66 54 18% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/urllib3/util/ssltransport.py 152 106 30% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/urllib3/util/timeout.py 71 19 73% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/urllib3/util/url.py 203 76 63% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/urllib3/util/util.py 26 9 65% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/urllib3/util/wait.py 49 38 22% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/yaml/__init__.py 165 109 34% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/yaml/composer.py 92 17 82% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/yaml/constructor.py 479 276 42% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/yaml/cyaml.py 46 24 48% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/yaml/dumper.py 23 12 48% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/yaml/emitter.py 838 769 8% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/yaml/error.py 58 42 28% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/yaml/events.py 61 6 90% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/yaml/loader.py 47 24 49% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/yaml/nodes.py 29 7 76% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/yaml/parser.py 352 180 49% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/yaml/reader.py 122 30 75% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/yaml/representer.py 248 176 29% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/yaml/resolver.py 135 76 44% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/yaml/scanner.py 758 415 45% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/yaml/serializer.py 85 70 18% 2675s Apr 14 10:11:38 /usr/lib/python3/dist-packages/yaml/tokens.py 76 17 78% 2675s Apr 14 10:11:38 patroni/__init__.py 13 2 85% 2675s Apr 14 10:11:38 patroni/__main__.py 201 201 0% 2675s Apr 14 10:11:38 patroni/api.py 788 788 0% 2675s Apr 14 10:11:38 patroni/async_executor.py 96 69 28% 2675s Apr 14 10:11:38 patroni/collections.py 56 15 73% 2675s Apr 14 10:11:38 patroni/config.py 357 179 50% 2675s Apr 14 10:11:38 patroni/config_generator.py 212 212 0% 2675s Apr 14 10:11:38 patroni/ctl.py 936 395 58% 2675s Apr 14 10:11:38 patroni/daemon.py 76 6 92% 2675s Apr 14 10:11:38 patroni/dcs/__init__.py 710 316 55% 2675s Apr 14 10:11:38 patroni/dcs/consul.py 482 482 0% 2675s Apr 14 10:11:38 patroni/dcs/etcd3.py 679 679 0% 2675s Apr 14 10:11:38 patroni/dcs/etcd.py 603 603 0% 2675s Apr 14 10:11:38 patroni/dcs/exhibitor.py 62 62 0% 2675s Apr 14 10:11:38 patroni/dcs/kubernetes.py 943 943 0% 2675s Apr 14 10:11:38 patroni/dcs/raft.py 319 74 77% 2675s Apr 14 10:11:38 patroni/dcs/zookeeper.py 289 289 0% 2675s Apr 14 10:11:38 patroni/dynamic_loader.py 35 7 80% 2675s Apr 14 10:11:38 patroni/exceptions.py 16 1 94% 2675s Apr 14 10:11:38 patroni/file_perm.py 47 17 64% 2675s Apr 14 10:11:38 patroni/global_config.py 87 19 78% 2675s Apr 14 10:11:38 patroni/ha.py 1359 1359 0% 2675s Apr 14 10:11:38 patroni/log.py 235 103 56% 2675s Apr 14 10:11:38 patroni/postgresql/__init__.py 825 653 21% 2675s Apr 14 10:11:38 patroni/postgresql/available_parameters/__init__.py 24 3 88% 2675s Apr 14 10:11:38 patroni/postgresql/bootstrap.py 254 224 12% 2675s Apr 14 10:11:38 patroni/postgresql/callback_executor.py 55 34 38% 2675s Apr 14 10:11:38 patroni/postgresql/cancellable.py 104 84 19% 2675s Apr 14 10:11:38 patroni/postgresql/config.py 840 720 14% 2675s Apr 14 10:11:38 patroni/postgresql/connection.py 75 50 33% 2675s Apr 14 10:11:38 patroni/postgresql/misc.py 43 30 30% 2675s Apr 14 10:11:38 patroni/postgresql/mpp/__init__.py 89 21 76% 2675s Apr 14 10:11:38 patroni/postgresql/mpp/citus.py 366 366 0% 2675s Apr 14 10:11:38 patroni/postgresql/postmaster.py 170 139 18% 2675s Apr 14 10:11:38 patroni/postgresql/rewind.py 416 416 0% 2675s Apr 14 10:11:38 patroni/postgresql/slots.py 349 300 14% 2675s Apr 14 10:11:38 patroni/postgresql/sync.py 154 114 26% 2675s Apr 14 10:11:38 patroni/postgresql/validator.py 157 52 67% 2675s Apr 14 10:11:38 patroni/psycopg.py 46 32 30% 2675s Apr 14 10:11:38 patroni/quorum.py 182 182 0% 2675s Apr 14 10:11:38 patroni/raft_controller.py 22 1 95% 2675s Apr 14 10:11:38 patroni/request.py 58 6 90% 2675s Apr 14 10:11:38 patroni/scripts/__init__.py 0 0 100% 2675s Apr 14 10:11:38 patroni/scripts/aws.py 59 59 0% 2675s Apr 14 10:11:38 patroni/scripts/barman/__init__.py 0 0 100% 2675s Apr 14 10:11:38 patroni/scripts/barman/cli.py 50 50 0% 2675s Apr 14 10:11:38 patroni/scripts/barman/config_switch.py 50 50 0% 2675s Apr 14 10:11:38 patroni/scripts/barman/recover.py 36 36 0% 2675s Apr 14 10:11:38 patroni/scripts/barman/utils.py 93 93 0% 2675s Apr 14 10:11:38 patroni/scripts/wale_restore.py 207 207 0% 2675s Apr 14 10:11:38 patroni/tags.py 38 11 71% 2675s Apr 14 10:11:38 patroni/utils.py 371 231 38% 2675s Apr 14 10:11:38 patroni/validator.py 309 222 28% 2675s Apr 14 10:11:38 patroni/version.py 1 0 100% 2675s Apr 14 10:11:38 patroni/watchdog/__init__.py 2 2 0% 2675s Apr 14 10:11:38 patroni/watchdog/base.py 203 203 0% 2675s Apr 14 10:11:38 patroni/watchdog/linux.py 135 135 0% 2675s Apr 14 10:11:38 ---------------------------------------------------------------------------------------------------------- 2675s Apr 14 10:11:38 TOTAL 41244 23337 43% 2675s Apr 14 10:11:38 13 features passed, 0 failed, 1 skipped 2675s Apr 14 10:11:38 63 scenarios passed, 0 failed, 6 skipped 2675s Apr 14 10:11:38 597 steps passed, 0 failed, 70 skipped, 0 undefined 2675s Apr 14 10:11:38 Took 11m10.832s 2675s + bash -c 'rm -rf features/output' 2675s ### End 17 acceptance-raft ### 2675s + echo '### End 17 acceptance-raft ###' 2675s + rm -f /tmp/pgpass_postgres-0 /tmp/pgpass_postgres-1 /tmp/pgpass_postgres-2 /tmp/pgpass_postgres-3 2675s ++ id -u 2675s + '[' 1000 -eq 0 ']' 2676s autopkgtest [10:11:40]: test acceptance-raft: -----------------------] 2676s acceptance-raft PASS 2676s autopkgtest [10:11:40]: test acceptance-raft: - - - - - - - - - - results - - - - - - - - - - 2676s autopkgtest [10:11:40]: @@@@@@@@@@@@@@@@@@@@ summary 2676s test PASS 2676s acceptance-etcd3-basic PASS 2676s acceptance-etcd3 PASS 2676s acceptance-etcd FAIL non-zero exit status 1 2676s acceptance-zookeeper PASS 2676s acceptance-raft PASS 2692s nova [W] Using flock in prodstack7-ppc64el 2692s Creating nova instance adt-plucky-ppc64el-patroni-20250414-092704-juju-7f2275-prod-proposed-migration-environment-23-fabd2da4-4fa7-463a-b32a-353f0dd6acf0 from image adt/ubuntu-plucky-ppc64el-server-20250413.img (UUID 56daac42-55d5-4d6a-8e0b-992084176a62)... 2692s nova [W] Timed out waiting for f2c8e5cf-9029-4c95-bc6c-12911291afa6 to get deleted. 2692s nova [W] Using flock in prodstack7-ppc64el 2692s Creating nova instance adt-plucky-ppc64el-patroni-20250414-092704-juju-7f2275-prod-proposed-migration-environment-23-fabd2da4-4fa7-463a-b32a-353f0dd6acf0 from image adt/ubuntu-plucky-ppc64el-server-20250413.img (UUID 56daac42-55d5-4d6a-8e0b-992084176a62)... 2692s nova [W] Timed out waiting for aa8e4dc9-9029-492d-ae24-35a3aeaba98c to get deleted. 2692s nova [W] Using flock in prodstack7-ppc64el 2692s Creating nova instance adt-plucky-ppc64el-patroni-20250414-092704-juju-7f2275-prod-proposed-migration-environment-23-fabd2da4-4fa7-463a-b32a-353f0dd6acf0 from image adt/ubuntu-plucky-ppc64el-server-20250413.img (UUID 56daac42-55d5-4d6a-8e0b-992084176a62)... 2692s nova [W] Timed out waiting for d9ef67ce-26bd-4cb3-ba73-ef8134e7bbf1 to get deleted. 2692s nova [W] Using flock in prodstack7-ppc64el 2692s Creating nova instance adt-plucky-ppc64el-patroni-20250414-092704-juju-7f2275-prod-proposed-migration-environment-23-fabd2da4-4fa7-463a-b32a-353f0dd6acf0 from image adt/ubuntu-plucky-ppc64el-server-20250413.img (UUID 56daac42-55d5-4d6a-8e0b-992084176a62)... 2692s nova [W] Timed out waiting for 000eb123-fcd2-41a2-9e71-b14123147a36 to get deleted.