[09:43:16.795] su postgres <<-EOF [09:43:16.795] set -e [09:43:16.795] ulimit -c unlimited [09:43:16.795] meson test $MTEST_ARGS --num-processes ${TEST_JOBS} [09:43:16.795] EOF [09:43:17.721] 1/375 postgresql:setup / tmp_install OK 0.53s [09:43:17.770] 2/375 postgresql:setup / install_test_files OK 0.05s [09:43:19.166] 3/375 postgresql:setup / initdb_cache OK 1.39s [09:43:19.440] 4/375 postgresql:pg_upgrade / pg_upgrade/001_basic OK 0.26s 9 subtests passed [09:43:29.144] 5/375 postgresql:pg_upgrade / pg_upgrade/005_char_signedness OK 9.92s 16 subtests passed [09:43:37.209] 6/375 postgresql:pg_upgrade / pg_upgrade/003_logical_slots OK 18.02s 13 subtests passed [09:43:38.190] 7/375 postgresql:pg_upgrade / pg_upgrade/004_subscription OK 18.98s 19 subtests passed [09:43:40.159] 8/375 postgresql:recovery / recovery/002_archiving OK 2.95s 12 subtests passed [09:43:40.285] 9/375 postgresql:recovery / recovery/001_stream_rep OK 11.14s 63 subtests passed [09:43:44.777] 10/375 postgresql:recovery / recovery/003_recovery_targets OK 6.59s 12 subtests passed [09:43:47.194] 11/375 postgresql:recovery / recovery/004_timeline_switch OK 7.03s 5 subtests passed [09:43:48.066] 12/375 postgresql:recovery / recovery/006_logical_decoding OK 3.29s 20 subtests passed [09:43:48.550] 13/375 postgresql:recovery / recovery/005_replay_delay OK 8.26s 3 subtests passed [09:43:52.041] 14/375 postgresql:recovery / recovery/007_sync_rep OK 4.85s 11 subtests passed [09:43:55.492] 15/375 postgresql:recovery / recovery/010_logical_decoding_timelines OK 3.45s 13 subtests passed [09:43:58.586] 16/375 postgresql:recovery / recovery/009_twophase OK 10.03s 30 subtests passed [09:44:00.117] 17/375 postgresql:recovery / recovery/012_subtransactions OK 4.62s 12 subtests passed [09:44:01.401] 18/375 postgresql:recovery / recovery/008_fsm_truncation OK 13.33s 1 subtests passed [09:44:02.209] 19/375 postgresql:recovery / recovery/013_crash_restart OK 3.62s 19 subtests passed [09:44:03.456] 20/375 postgresql:pg_upgrade / pg_upgrade/007_multixact_conversion OK 44.18s 3 subtests passed [09:44:03.653] 21/375 postgresql:recovery / recovery/014_unlogged_reinit OK 3.49s 23 subtests passed [09:44:05.865] 22/375 postgresql:recovery / recovery/015_promotion_pages OK 4.46s 1 subtests passed [09:44:06.421] 23/375 postgresql:recovery / recovery/016_min_consistency OK 4.21s 1 subtests passed [09:44:08.679] 24/375 postgresql:recovery / recovery/017_shm OK 5.22s 4 subtests passed [09:44:11.461] 25/375 postgresql:recovery / recovery/021_row_visibility OK 2.78s 10 subtests passed [09:44:12.645] 26/375 postgresql:recovery / recovery/020_archive_status OK 6.22s 19 subtests passed [09:44:14.351] 27/375 postgresql:recovery / recovery/022_crash_temp_files OK 2.89s 11 subtests passed [09:44:16.260] 28/375 postgresql:recovery / recovery/023_pitr_prepared_xact OK 3.61s 1 subtests passed [09:44:18.249] 29/375 postgresql:recovery / recovery/024_archive_recovery OK 3.90s 2 subtests passed [09:44:18.573] 30/375 postgresql:pg_upgrade / pg_upgrade/006_transfer_modes OK 59.32s 50 subtests passed [09:44:20.860] 31/375 postgresql:recovery / recovery/025_stuck_on_old_timeline OK 4.60s 1 subtests passed [09:44:21.021] 32/375 postgresql:recovery / recovery/018_wal_optimize OK 17.37s 38 subtests passed [09:44:25.291] 33/375 postgresql:recovery / recovery/028_pitr_timelines OK 4.43s 3 subtests passed [09:44:25.647] 34/375 postgresql:recovery / recovery/019_replslot_limit OK 19.78s 26 subtests passed [09:44:27.473] 35/375 postgresql:recovery / recovery/029_stats_restart OK 6.45s 44 subtests passed [09:44:33.306] 36/375 postgresql:recovery / recovery/031_recovery_conflict OK 7.66s 18 subtests passed [09:44:33.360] 37/375 postgresql:recovery / recovery/030_stats_cleanup_replica OK 8.07s 11 subtests passed [09:44:34.651] 38/375 postgresql:recovery / recovery/032_relfilenode_reuse OK 7.14s 14 subtests passed [09:44:37.296] 39/375 postgresql:recovery / recovery/034_create_database OK 3.93s 2 subtests passed [09:44:40.707] 40/375 postgresql:recovery / recovery/036_truncated_dropped OK 3.41s 8 subtests passed [09:44:42.774] 41/375 postgresql:recovery / recovery/037_invalid_database OK 2.07s 10 subtests passed [09:44:43.075] 42/375 postgresql:recovery / recovery/033_replay_tsp_drops OK 9.77s 3 subtests passed [09:44:43.151] 43/375 postgresql:recovery / recovery/026_overwrite_contrecord OK 24.90s 3 subtests passed [09:44:47.741] 44/375 postgresql:recovery / recovery/038_save_logical_slots_shutdown OK 4.97s 2 subtests passed [09:44:50.821] 45/375 postgresql:recovery / recovery/041_checkpoint_at_promote OK 3.08s 6 subtests passed [09:44:53.555] 46/375 postgresql:recovery / recovery/039_end_of_wal OK 10.48s 14 subtests passed [09:44:55.120] 47/375 postgresql:recovery / recovery/042_low_level_backup OK 4.30s 4 subtests passed [09:44:56.895] 48/375 postgresql:recovery / recovery/035_standby_logical_decoding OK 22.24s 89 subtests passed [09:44:57.459] 49/375 postgresql:recovery / recovery/043_no_contrecord_switch OK 3.90s 1 subtests passed [09:44:58.164] 50/375 postgresql:recovery / recovery/044_invalidate_inactive_slots OK 3.04s 1 subtests passed [09:45:00.995] 51/375 postgresql:recovery / recovery/040_standby_failover_slots_sync OK 17.84s 38 subtests passed [09:45:02.752] 52/375 postgresql:recovery / recovery/047_checkpoint_physical_slot OK 4.59s 1 subtests passed [09:45:04.313] 53/375 postgresql:recovery / recovery/048_vacuum_horizon_floor OK 3.32s 3 subtests passed [09:45:04.940] 54/375 postgresql:recovery / recovery/046_checkpoint_logical_slot OK 7.48s 2 subtests passed [09:45:05.895] 55/375 postgresql:recovery / recovery/045_archive_restartpoint OK 9.00s 1 subtests passed [09:45:06.913] 56/375 postgresql:recovery / recovery/050_redo_segment_missing OK 2.60s 2 subtests passed [09:45:10.986] 57/375 postgresql:plpgsql / plpgsql/regress OK 4.07s 13 subtests passed [09:45:13.344] 58/375 postgresql:kerberos / kerberos/001_auth OK 7.45s 142 subtests passed [09:45:14.020] 59/375 postgresql:plperl / plperl/regress OK 3.03s 14 subtests passed [09:45:15.449] 60/375 postgresql:recovery / recovery/051_effective_wal_level OK 10.51s 31 subtests passed [09:45:17.535] 61/375 postgresql:pltcl / pltcl/regress OK 3.51s 8 subtests passed [09:45:17.746] 62/375 postgresql:recovery / recovery/049_wait_for_lsn OK 14.99s 33 subtests passed [09:45:19.457] 63/375 postgresql:plpython / plpython/regress OK 6.11s 23 subtests passed [09:45:19.907] 64/375 postgresql:auto_explain / auto_explain/regress OK 2.37s 1 subtests passed [09:45:20.004] 65/375 postgresql:basic_archive / basic_archive/regress OK 2.26s 1 subtests passed [09:45:22.147] 66/375 postgresql:bloom / bloom/regress OK 2.69s 1 subtests passed [09:45:22.342] 67/375 postgresql:bool_plperl / bool_plperl/regress OK 2.43s 2 subtests passed [09:45:23.659] 68/375 postgresql:amcheck / amcheck/regress OK 8.21s 4 subtests passed [09:45:27.727] 69/375 postgresql:cube / cube/regress OK 4.07s 2 subtests passed [09:45:27.808] 70/375 postgresql:btree_gin / btree_gin/regress OK 7.80s 30 subtests passed [09:45:27.865] 71/375 postgresql:citext / citext/regress OK 5.52s 3 subtests passed [09:45:30.184] 72/375 postgresql:btree_gist / btree_gist/regress OK 8.04s 32 subtests passed [09:45:30.587] 73/375 postgresql:dict_xsyn / dict_xsyn/regress OK 2.72s 1 subtests passed [09:45:31.076] 74/375 postgresql:dict_int / dict_int/regress OK 3.27s 1 subtests passed [09:45:32.115] 75/375 postgresql:dblink / dblink/regress OK 4.39s 1 subtests passed [09:45:33.247] 76/375 postgresql:isolation / isolation/isolation OK 133.78s 126 subtests passed [09:45:34.304] 77/375 postgresql:file_fdw / file_fdw/regress OK 3.72s 1 subtests passed [09:45:34.386] 78/375 postgresql:fuzzystrmatch / fuzzystrmatch/regress OK 3.31s 2 subtests passed [09:45:35.698] 79/375 postgresql:earthdistance / earthdistance/regress OK 5.51s 1 subtests passed [09:45:36.304] 80/375 postgresql:hstore_plperl / hstore_plperl/regress OK 3.05s 3 subtests passed [09:45:37.061] 81/375 postgresql:hstore_plpython / hstore_plpython/regress OK 2.75s 1 subtests passed [09:45:39.146] 82/375 postgresql:isn / isn/regress OK 3.45s 1 subtests passed [09:45:39.623] 83/375 postgresql:jsonb_plperl / jsonb_plperl/regress OK 3.32s 2 subtests passed [09:45:40.808] 84/375 postgresql:jsonb_plpython / jsonb_plpython/regress OK 3.75s 1 subtests passed [09:45:40.918] 85/375 postgresql:hstore / hstore/regress OK 8.80s 2 subtests passed [09:45:43.187] 86/375 postgresql:lo / lo/regress OK 4.02s 1 subtests passed [09:45:44.953] 87/375 postgresql:ltree_plpython / ltree_plpython/regress OK 4.14s 1 subtests passed [09:45:46.380] 88/375 postgresql:passwordcheck / passwordcheck/regress OK 3.17s 1 subtests passed [09:45:46.512] 89/375 postgresql:pageinspect / pageinspect/regress OK 5.59s 8 subtests passed [09:45:48.305] 90/375 postgresql:intarray / intarray/regress OK 13.92s 1 subtests passed [09:45:48.529] 91/375 postgresql:pg_buffercache / pg_buffercache/regress OK 3.57s 2 subtests passed [09:45:49.422] 92/375 postgresql:pg_freespacemap / pg_freespacemap/regress OK 2.91s 1 subtests passed [09:45:49.439] 93/375 postgresql:ltree / ltree/regress OK 9.81s 1 subtests passed [09:45:50.723] 94/375 postgresql:pg_overexplain / pg_overexplain/regress OK 2.19s 1 subtests passed [09:45:50.849] 95/375 postgresql:pg_logicalinspect / pg_logicalinspect/isolation OK 2.54s 1 subtests passed [09:45:52.044] 96/375 postgresql:pg_prewarm / pg_prewarm/regress OK 2.62s 1 subtests passed [09:45:52.139] 97/375 postgresql:pgrowlocks / pgrowlocks/isolation OK 2.70s 1 subtests passed [09:45:54.296] 98/375 postgresql:pg_surgery / pg_surgery/regress OK 2.25s 1 subtests passed [09:45:54.689] 99/375 postgresql:pgstattuple / pgstattuple/regress OK 3.84s 1 subtests passed [09:45:55.643] 100/375 postgresql:pgcrypto / pgcrypto/regress OK 9.26s 25 subtests passed [09:45:56.796] 101/375 postgresql:pg_visibility / pg_visibility/regress OK 2.50s 1 subtests passed [09:45:57.408] 102/375 postgresql:pg_walinspect / pg_walinspect/regress OK 2.72s 2 subtests passed [09:45:58.784] 103/375 postgresql:pg_trgm / pg_trgm/regress OK 6.64s 4 subtests passed [09:45:59.186] 104/375 postgresql:postgres_fdw / postgres_fdw/isolation OK 2.39s 1 subtests passed [09:46:00.893] 105/375 postgresql:spi / spi/regress OK 2.11s 2 subtests passed [09:46:01.860] 106/375 postgresql:seg / seg/regress OK 4.45s 3 subtests passed [09:46:02.698] 107/375 postgresql:tablefunc / tablefunc/regress OK 3.51s 1 subtests passed [09:46:02.955] 108/375 postgresql:tcn / tcn/isolation OK 2.06s 1 subtests passed [09:46:04.257] 109/375 postgresql:pg_stat_statements / pg_stat_statements/regress OK 13.53s 16 subtests passed [09:46:04.892] 110/375 postgresql:tsm_system_rows / tsm_system_rows/regress OK 1.94s 1 subtests passed [09:46:06.351] 111/375 postgresql:tsm_system_time / tsm_system_time/regress OK 2.09s 1 subtests passed [09:46:07.297] 112/375 postgresql:unaccent / unaccent/regress OK 2.40s 1 subtests passed [09:46:08.461] 113/375 postgresql:uuid-ossp / uuid-ossp/regress OK 2.11s 1 subtests passed [09:46:08.924] 114/375 postgresql:test_decoding / test_decoding/isolation OK 6.23s 14 subtests passed [09:46:09.501] 115/375 postgresql:xml2 / xml2/regress OK 2.20s 1 subtests passed [09:46:10.388] 116/375 postgresql:brin / brin/isolation OK 1.92s 1 subtests passed [09:46:10.893] 117/375 postgresql:commit_ts / commit_ts/regress OK 1.97s 1 subtests passed [09:46:12.272] 118/375 postgresql:dummy_index_am / dummy_index_am/regress OK 1.88s 1 subtests passed [09:46:12.886] 119/375 postgresql:dummy_seclabel / dummy_seclabel/regress OK 1.99s 1 subtests passed [09:46:12.995] 120/375 postgresql:delay_execution / delay_execution/isolation OK 3.49s 2 subtests passed [09:46:14.725] 121/375 postgresql:gin / gin/regress OK 2.45s 1 subtests passed [09:46:15.420] 122/375 postgresql:injection_points / injection_points/regress OK 2.42s 4 subtests passed [09:46:16.430] 123/375 postgresql:index / index/isolation OK 3.54s 1 subtests passed [09:46:18.561] 124/375 postgresql:plsample / plsample/regress OK 2.13s 1 subtests passed [09:46:18.651] 125/375 postgresql:test_decoding / test_decoding/regress OK 16.79s 19 subtests passed [09:46:20.441] 126/375 postgresql:nbtree / nbtree/regress OK 5.02s 2 subtests passed [09:46:20.780] 127/375 postgresql:spgist_name_ops / spgist_name_ops/regress OK 2.22s 1 subtests passed [09:46:20.888] 128/375 postgresql:test_binaryheap / test_binaryheap/regress OK 2.23s 1 subtests passed [09:46:22.588] 129/375 postgresql:test_bitmapset / test_bitmapset/regress OK 2.14s 1 subtests passed [09:46:23.041] 130/375 postgresql:test_copy_callbacks / test_copy_callbacks/regress OK 2.15s 1 subtests passed [09:46:23.165] 131/375 postgresql:test_bloomfilter / test_bloomfilter/regress OK 2.38s 1 subtests passed [09:46:25.135] 132/375 postgresql:test_cplusplusext / test_cplusplusext/regress OK 2.54s 1 subtests passed [09:46:26.169] 133/375 postgresql:test_dsa / test_dsa/regress OK 3.00s 1 subtests passed [09:46:26.983] 134/375 postgresql:test_ddl_deparse / test_ddl_deparse/regress OK 3.94s 21 subtests passed [09:46:28.203] 135/375 postgresql:test_dsm_registry / test_dsm_registry/regress OK 3.07s 1 subtests passed [09:46:30.017] 136/375 postgresql:test_ginpostinglist / test_ginpostinglist/regress OK 3.03s 1 subtests passed [09:46:30.238] 137/375 postgresql:test_extensions / test_extensions/regress OK 4.07s 2 subtests passed [09:46:32.121] 138/375 postgresql:test_lfind / test_lfind/regress OK 2.10s 1 subtests passed [09:46:32.319] 139/375 postgresql:test_lwlock_tranches / test_lwlock_tranches/regress OK 2.08s 1 subtests passed [09:46:35.014] 140/375 postgresql:test_oat_hooks / test_oat_hooks/regress OK 2.89s 2 subtests passed [09:46:35.370] 141/375 postgresql:test_parser / test_parser/regress OK 3.05s 1 subtests passed [09:46:36.193] 142/375 postgresql:test_integerset / test_integerset/regress OK 7.99s 1 subtests passed [09:46:37.367] 143/375 postgresql:test_pg_dump / test_pg_dump/regress OK 2.35s 1 subtests passed [09:46:37.484] 144/375 postgresql:test_predtest / test_predtest/regress OK 2.11s 1 subtests passed [09:46:38.643] 145/375 postgresql:test_radixtree / test_radixtree/regress OK 2.45s 1 subtests passed [09:46:39.632] 146/375 postgresql:test_rbtree / test_rbtree/regress OK 2.26s 1 subtests passed [09:46:40.115] 147/375 postgresql:test_regex / test_regex/regress OK 2.62s 2 subtests passed [09:46:40.720] 148/375 postgresql:test_resowner / test_resowner/regress OK 2.08s 1 subtests passed [09:46:41.442] 149/375 postgresql:postgres_fdw / postgres_fdw/regress OK 45.80s 2 subtests passed [09:46:41.657] 150/375 postgresql:test_rls_hooks / test_rls_hooks/regress OK 2.02s 1 subtests passed [09:46:42.866] 151/375 postgresql:test_slru / test_slru/regress OK 2.14s 1 subtests passed [09:46:43.494] 152/375 postgresql:typcache / typcache/regress OK 1.84s 1 subtests passed [09:46:43.721] 153/375 postgresql:test_tidstore / test_tidstore/regress OK 2.27s 1 subtests passed [09:46:44.827] 154/375 postgresql:libpq / libpq/001_uri OK 1.10s 63 subtests passed [09:46:44.852] 155/375 postgresql:test_shm_mq / test_shm_mq/regress OK 4.74s 1 subtests passed [09:46:45.026] 156/375 postgresql:libpq / libpq/002_api OK 0.20s 1 subtests passed [09:46:47.154] 157/375 postgresql:unsafe_tests / unsafe_tests/regress OK 4.29s 4 subtests passed [09:46:50.336] 158/375 postgresql:libpq / libpq/006_service OK 5.31s 47 subtests passed [09:46:50.544] 159/375 postgresql:libpq-oauth / libpq-oauth/001_oauth OK 0.21s 55 subtests passed [09:46:51.100] 160/375 postgresql:libpq / libpq/test_load_balance OK 3.94s 4 subtests passed [09:46:51.418] 161/375 postgresql:pg_amcheck / pg_amcheck/001_basic OK 0.31s 9 subtests passed [09:46:53.388] 162/375 postgresql:ecpg / ecpg/ecpg OK 9.89s 65 subtests passed [09:46:57.929] 163/375 postgresql:pg_amcheck / pg_amcheck/002_nonesuch OK 6.51s 107 subtests passed [09:47:03.018] 164/375 postgresql:pg_amcheck / pg_amcheck/004_verify_heapam OK 5.09s 32 subtests passed [09:47:03.850] 165/375 postgresql:injection_points / injection_points/isolation OK 49.12s 4 subtests passed [09:47:04.310] 166/375 postgresql:pg_archivecleanup / pg_archivecleanup/010_pg_archivecleanup OK 0.46s 51 subtests passed [09:47:05.439] 167/375 postgresql:libpq / libpq/005_negotiate_encryption OK 20.59s 249 subtests passed [09:47:07.320] 168/375 postgresql:pg_amcheck / pg_amcheck/005_opclass_damage OK 4.30s 10 subtests passed [09:47:07.808] 169/375 postgresql:pg_basebackup / pg_basebackup/011_in_place_tablespace OK 2.36s 3 subtests passed [09:47:09.658] 170/375 postgresql:initdb / initdb/001_initdb OK 19.11s 57 subtests passed [09:47:11.113] 171/375 postgresql:pg_amcheck / pg_amcheck/003_check OK 17.72s 75 subtests passed [09:47:11.291] 172/375 postgresql:pg_checksums / pg_checksums/001_basic OK 0.18s 9 subtests passed [09:47:11.534] 173/375 postgresql:pg_basebackup / pg_basebackup/020_pg_receivewal OK 4.21s 43 subtests passed [09:47:11.768] 174/375 postgresql:pg_combinebackup / pg_combinebackup/001_basic OK 0.23s 13 subtests passed [09:47:15.225] 175/375 postgresql:pg_checksums / pg_checksums/002_actions OK 3.93s 66 subtests passed [09:47:16.058] 176/375 postgresql:pg_basebackup / pg_basebackup/030_pg_recvlogical OK 8.25s 27 subtests passed [09:47:18.237] 177/375 postgresql:pg_combinebackup / pg_combinebackup/004_manifest OK 2.18s 11 subtests passed [09:47:18.367] 178/375 postgresql:pg_combinebackup / pg_combinebackup/003_timeline OK 3.14s 7 subtests passed [09:47:18.926] 179/375 postgresql:pg_combinebackup / pg_combinebackup/002_compare_backups OK 7.15s 6 subtests passed [09:47:21.564] 180/375 postgresql:regress / regress/regress OK 242.39s 239 subtests passed [09:47:22.654] 181/375 postgresql:pg_combinebackup / pg_combinebackup/006_db_file_copy OK 4.29s 4 subtests passed [09:47:23.057] 182/375 postgresql:pg_combinebackup / pg_combinebackup/007_wal_level_minimal OK 4.11s 3 subtests passed [09:47:23.408] 183/375 postgresql:pg_basebackup / pg_basebackup/010_pg_basebackup OK 19.09s 200 subtests passed [09:47:24.469] 184/375 postgresql:pg_combinebackup / pg_combinebackup/005_integrity OK 6.23s 22 subtests passed [09:47:24.740] 185/375 postgresql:pg_config / pg_config/001_pg_config OK 0.27s 21 subtests passed [09:47:25.429] 186/375 postgresql:pg_basebackup / pg_basebackup/040_pg_createsubscriber OK 15.77s 54 subtests passed [09:47:25.572] 187/375 postgresql:pg_combinebackup / pg_combinebackup/009_no_full_file OK 2.91s 4 subtests passed [09:47:26.700] 188/375 postgresql:pg_controldata / pg_controldata/001_pg_controldata OK 1.96s 18 subtests passed [09:47:27.109] 189/375 postgresql:pg_combinebackup / pg_combinebackup/011_ib_truncation OK 3.70s 4 subtests passed [09:47:27.343] 190/375 postgresql:pg_combinebackup / pg_combinebackup/008_promote OK 5.78s 2 subtests passed [09:47:27.763] 191/375 postgresql:pg_ctl / pg_ctl/002_status OK 2.19s 3 subtests passed [09:47:28.173] 192/375 postgresql:pg_combinebackup / pg_combinebackup/010_hardlink OK 5.11s 4 subtests passed [09:47:28.821] 193/375 postgresql:pg_ctl / pg_ctl/001_start_stop OK 3.39s 25 subtests passed [09:47:28.942] 194/375 postgresql:pg_dump / pg_dump/001_basic OK 1.60s 119 subtests passed [09:47:30.548] 195/375 postgresql:pg_ctl / pg_ctl/003_promote OK 3.85s 12 subtests passed [09:47:31.634] 196/375 postgresql:pg_ctl / pg_ctl/004_logrotate OK 4.52s 14 subtests passed [09:47:32.547] 197/375 postgresql:pg_dump / pg_dump/003_pg_dump_with_server OK 4.37s 3 subtests passed [09:47:33.477] 198/375 postgresql:pg_dump / pg_dump/004_pg_dump_parallel OK 4.65s 4 subtests passed [09:47:37.066] 199/375 postgresql:pg_resetwal / pg_resetwal/001_basic OK 3.59s 83 subtests passed [09:47:39.064] 200/375 postgresql:pg_resetwal / pg_resetwal/002_corrupted OK 2.00s 9 subtests passed [09:47:41.172] 201/375 postgresql:pg_dump / pg_dump/006_pg_dump_compress OK 10.62s 98 subtests passed [09:47:46.740] 202/375 postgresql:pg_dump / pg_dump/010_dump_connstr OK 14.19s 13 subtests passed [09:47:48.824] 203/375 postgresql:pg_dump / pg_dump/005_pg_dump_filterfile OK 19.83s 108 subtests passed [09:47:49.488] 204/375 postgresql:pg_rewind / pg_rewind/002_databases OK 8.31s 12 subtests passed [09:47:51.716] 205/375 postgresql:pg_rewind / pg_rewind/001_basic OK 12.65s 57 subtests passed [09:47:51.901] 206/375 postgresql:pg_rewind / pg_rewind/006_options OK 0.18s 13 subtests passed [09:47:52.414] 207/375 postgresql:pg_rewind / pg_rewind/005_same_timeline OK 2.92s 1 subtests passed [09:47:53.006] 208/375 postgresql:pg_rewind / pg_rewind/003_extrafiles OK 6.26s 6 subtests passed [09:47:55.698] 209/375 postgresql:pg_rewind / pg_rewind/004_pg_xlog_symlink OK 6.87s 10 subtests passed [09:47:56.132] 210/375 postgresql:pg_rewind / pg_rewind/007_standby_source OK 4.23s 7 subtests passed [09:47:57.420] 211/375 postgresql:pg_rewind / pg_rewind/009_growing_files OK 4.41s 3 subtests passed [09:47:57.729] 212/375 postgresql:pg_test_fsync / pg_test_fsync/001_basic OK 0.31s 13 subtests passed [09:47:58.262] 213/375 postgresql:pg_rewind / pg_rewind/008_min_recovery_point OK 5.85s 3 subtests passed [09:47:58.723] 214/375 postgresql:pg_verifybackup / pg_verifybackup/001_basic OK 0.46s 17 subtests passed [09:47:58.987] 215/375 postgresql:pg_test_timing / pg_test_timing/001_basic OK 1.26s 18 subtests passed [09:48:00.282] 216/375 postgresql:pg_rewind / pg_rewind/011_wal_copy OK 4.15s 12 subtests passed [09:48:02.790] 217/375 postgresql:pg_verifybackup / pg_verifybackup/004_options OK 2.51s 32 subtests passed [09:48:02.950] 218/375 postgresql:pg_rewind / pg_rewind/010_keep_recycled_wals OK 7.25s 1 subtests passed [09:48:03.598] 219/375 postgresql:pg_verifybackup / pg_verifybackup/005_bad_manifest OK 0.81s 60 subtests passed [09:48:03.692] 220/375 postgresql:pg_verifybackup / pg_verifybackup/002_algorithm OK 4.97s 38 subtests passed [09:48:05.194] 221/375 postgresql:pg_verifybackup / pg_verifybackup/006_encoding OK 2.24s 5 subtests passed [09:48:06.817] 222/375 postgresql:pg_verifybackup / pg_verifybackup/003_corruption OK 7.83s 92 subtests passed [09:48:06.840] 223/375 postgresql:pg_verifybackup / pg_verifybackup/007_wal OK 3.24s 9 subtests passed [09:48:07.640] 224/375 postgresql:pg_verifybackup / pg_verifybackup/008_untar OK 3.95s 18 subtests passed [09:48:09.514] 225/375 postgresql:pg_verifybackup / pg_verifybackup/009_extract OK 4.32s 10 subtests passed [09:48:09.671] 226/375 postgresql:pg_walsummary / pg_walsummary/001_basic OK 0.16s 11 subtests passed [09:48:10.141] 227/375 postgresql:pg_waldump / pg_waldump/002_save_fullpage OK 2.50s 5 subtests passed [09:48:11.769] 228/375 postgresql:pg_waldump / pg_waldump/001_basic OK 4.93s 92 subtests passed [09:48:12.106] 229/375 postgresql:pg_walsummary / pg_walsummary/002_blocks OK 2.43s 7 subtests passed [09:48:12.258] 230/375 postgresql:pg_verifybackup / pg_verifybackup/010_client_untar OK 5.44s 21 subtests passed [09:48:12.951] 231/375 postgresql:pgbench / pgbench/002_pgbench_no_server OK 1.18s 207 subtests passed [09:48:15.405] 232/375 postgresql:psql / psql/020_cancel OK 2.45s 2 subtests passed [09:48:16.254] 233/375 postgresql:psql / psql/010_tab_completion OK 3.99s 89 subtests passed [09:48:16.505] 234/375 postgresql:psql / psql/001_basic OK 4.40s 126 subtests passed [09:48:18.533] 235/375 postgresql:psql / psql/030_pager OK 3.13s 4 subtests passed [09:48:20.071] 236/375 postgresql:scripts / scripts/010_clusterdb OK 3.81s 16 subtests passed [09:48:21.180] 237/375 postgresql:scripts / scripts/011_clusterdb_all OK 4.67s 7 subtests passed [09:48:24.161] 238/375 postgresql:scripts / scripts/040_createuser OK 4.09s 37 subtests passed [09:48:25.188] 239/375 postgresql:scripts / scripts/050_dropdb OK 4.01s 16 subtests passed [09:48:26.833] 240/375 postgresql:scripts / scripts/070_dropuser OK 2.67s 13 subtests passed [09:48:27.001] 241/375 postgresql:scripts / scripts/020_createdb OK 8.46s 64 subtests passed [09:48:28.223] 242/375 postgresql:scripts / scripts/080_pg_isready OK 3.03s 11 subtests passed [09:48:30.150] 243/375 postgresql:scripts / scripts/091_reindexdb_all OK 3.15s 13 subtests passed [09:48:32.542] 244/375 postgresql:scripts / scripts/090_reindexdb OK 5.71s 64 subtests passed [09:48:32.867] 245/375 postgresql:scripts / scripts/101_vacuumdb_all OK 2.72s 5 subtests passed [09:48:35.336] 246/375 postgresql:scripts / scripts/100_vacuumdb OK 7.11s 113 subtests passed [09:48:35.635] 247/375 postgresql:ecpg / ecpg/001_ecpg_err_warn_msg OK 0.30s 27 subtests passed [09:48:35.803] 248/375 postgresql:ecpg / ecpg/002_ecpg_err_warn_msg_informix OK 0.17s 4 subtests passed [09:48:36.272] 249/375 postgresql:pg_bsd_indent / pg_bsd_indent/001_pg_bsd_indent OK 0.47s 39 subtests passed [09:48:37.383] 250/375 postgresql:scripts / scripts/200_connstr OK 4.51s 3 subtests passed [09:48:37.534] 251/375 postgresql:scripts / scripts/102_vacuumdb_stages OK 4.99s 4 subtests passed [09:48:40.424] 252/375 postgresql:amcheck / amcheck/002_cic OK 3.04s 4 subtests passed [09:48:40.506] 253/375 postgresql:amcheck / amcheck/003_cic_2pc OK 2.97s 7 subtests passed [09:48:42.914] 254/375 postgresql:amcheck / amcheck/004_verify_nbtree_unique OK 2.49s 6 subtests passed [09:48:43.394] 255/375 postgresql:amcheck / amcheck/005_pitr OK 2.89s 3 subtests passed [09:48:44.123] 256/375 postgresql:pg_upgrade / pg_upgrade/002_pg_upgrade OK 324.94s 19 subtests passed [09:48:44.213] 257/375 postgresql:pg_dump / pg_dump/007_pg_dumpall OK 72.58s 57 subtests passed [09:48:45.765] 258/375 postgresql:auto_explain / auto_explain/001_auto_explain OK 2.37s 20 subtests passed [09:48:46.084] 259/375 postgresql:pgbench / pgbench/001_pgbench_with_server OK 35.94s 474 subtests passed [09:48:46.328] 260/375 postgresql:oid2name / oid2name/001_basic OK 0.24s 9 subtests passed [09:48:47.048] 261/375 postgresql:amcheck / amcheck/001_verify_heapam OK 10.77s 272 subtests passed [09:48:47.217] 262/375 postgresql:amcheck / amcheck/006_verify_gin OK 4.30s 6 subtests passed [09:48:49.194] 263/375 postgresql:basebackup_to_shell / basebackup_to_shell/001_basic OK 4.98s 16 subtests passed [09:48:49.312] 264/375 postgresql:pg_prewarm / pg_prewarm/001_basic OK 2.98s 11 subtests passed [09:48:49.758] 265/375 postgresql:pg_stat_statements / pg_stat_statements/010_restart OK 2.71s 3 subtests passed [09:48:49.898] 266/375 postgresql:pg_visibility / pg_visibility/001_concurrent_transaction OK 2.68s 2 subtests passed [09:48:50.090] 267/375 postgresql:vacuumlo / vacuumlo/001_basic OK 0.19s 9 subtests passed [09:48:51.855] 268/375 postgresql:dblink / dblink/001_auth_scram OK 6.09s 12 subtests passed [09:48:51.901] 269/375 postgresql:pg_visibility / pg_visibility/002_corrupt_vm OK 2.70s 3 subtests passed [09:48:53.273] 270/375 postgresql:test_decoding / test_decoding/001_repl_stats OK 3.51s 6 subtests passed [09:48:54.470] 271/375 postgresql:authentication / authentication/002_saslprep OK 2.61s 20 subtests passed [09:48:54.650] 272/375 postgresql:authentication / authentication/005_sspi SKIP 0.18s [09:48:55.173] 273/375 postgresql:authentication / authentication/003_peer OK 3.27s 53 subtests passed [09:48:55.211] 274/375 postgresql:postgres_fdw / postgres_fdw/001_auth_scram OK 5.90s 7 subtests passed [09:48:55.447] 275/375 postgresql:postmaster / postmaster/001_basic OK 0.23s 9 subtests passed [09:48:55.905] 276/375 postgresql:authentication / authentication/004_file_inclusion OK 2.63s 2 subtests passed [09:48:56.945] 277/375 postgresql:authentication / authentication/001_password OK 6.85s 207 subtests passed [09:48:57.177] 278/375 postgresql:authentication / authentication/006_login_trigger OK 2.52s 32 subtests passed [09:48:57.741] 279/375 postgresql:authentication / authentication/007_pre_auth OK 2.57s 2 subtests passed [09:48:57.756] ▶ 280/375 - src/test/pytest/pyt/test_libpq.py::test_connection_is_finished_on_error FAIL [09:48:57.800] 280/375 postgresql:pytest / pytest/test_libpq FAIL 0.62s 8/9 subtests passed [09:48:57.801] >>> PYTHONPATH=/tmp/cirrus-ci-build/src/test/pytest REGRESS_SHLIB=/tmp/cirrus-ci-build/build/src/test/regress/regress.so PATH=/tmp/cirrus-ci-build/build/tmp_install//usr/local/pgsql/bin:/tmp/cirrus-ci-build/build/src/test/pytest:/tmp/cirrus-ci-build/build/src/test/pytest/test:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin share_contrib_dir=/tmp/cirrus-ci-build/build/tmp_install//usr/local/pgsql/share/contrib UBSAN_OPTIONS=halt_on_error=1:abort_on_error=1:print_summary=1:print_stacktrace=1 MSAN_OPTIONS=halt_on_error=1:abort_on_error=1:print_summary=1:print_stacktrace=1 ASAN_OPTIONS=halt_on_error=1:abort_on_error=1:print_summary=1 PG_REGRESS=/tmp/cirrus-ci-build/build/src/test/regress/pg_regress MALLOC_PERTURB_=113 INITDB_TEMPLATE=/tmp/cirrus-ci-build/build/tmp_install/initdb-template LD_LIBRARY_PATH=/tmp/cirrus-ci-build/build/tmp_install//usr/local/pgsql/lib MESON_TEST_ITERATION=1 top_builddir=/tmp/cirrus-ci-build/build /usr/local/bin/python3 /tmp/cirrus-ci-build/build/../src/tools/testwrap --basedir /tmp/cirrus-ci-build/build --srcdir /tmp/cirrus-ci-build/src/test/pytest --pg-test-extra '' --testgroup pytest --testname test_libpq -- /usr/local/bin/pytest -c /tmp/cirrus-ci-build/pyproject.toml --verbose -p pgtap -ra /tmp/cirrus-ci-build/src/test/pytest/pyt/test_libpq.py [09:48:57.801] ――――――――――――――――――――――――――――――――――――― ✀ ――――――――――――――――――――――――――――――――――――― [09:48:57.801] Listing only the last 100 lines from a long log. [09:48:57.801] sockfile = self.host / ".s.PGSQL.{}".format(self.port) [09:48:57.801] [09:48:57.801] # Lock down the permissions on the new socket. [09:48:57.801] prev_mask = os.umask(0o077) [09:48:57.801] [09:48:57.801] # Bind (creating the socket file), and immediately register it for [09:48:57.801] # deletion from disk when the stack is cleaned up. [09:48:57.801] self._listener.bind(bytes(sockfile)) [09:48:57.801] self.callback(os.unlink, sockfile) [09:48:57.801] [09:48:57.801] os.umask(prev_mask) [09:48:57.801] [09:48:57.801] self._listener.listen(1) [09:48:57.801] [09:48:57.801] def background(self, fn: Callable[[socket.socket], None]) -> None: [09:48:57.801] """ [09:48:57.801] Accepts a client connection on a background thread and passes it to [09:48:57.801] the provided callback. Any exceptions raised from the callback will [09:48:57.801] be re-raised on the main thread during fixture teardown. [09:48:57.801] [09:48:57.801] Blocking operations on the connected socket default to using the [09:48:57.801] remaining_timeout(), though this can be changed by the test via the [09:48:57.801] socket's .settimeout(). [09:48:57.801] """ [09:48:57.801] [09:48:57.801] def _bg(): [09:48:57.801] try: [09:48:57.801] self._listener.settimeout(remaining_timeout()) [09:48:57.801] sock, _ = self._listener.accept() [09:48:57.801] [09:48:57.801] with sock: [09:48:57.801] sock.settimeout(remaining_timeout()) [09:48:57.801] fn(sock) [09:48:57.801] [09:48:57.801] except Exception as e: [09:48:57.801] # Save the exception for re-raising on the main thread. [09:48:57.801] self._thread_exc = e [09:48:57.801] [09:48:57.801] # TODO: rather than using callback(), consider explicitly signaling [09:48:57.801] # the fn() implementation to stop early if we get an exception. [09:48:57.801] # Otherwise we'll hang until the end of the timeout. [09:48:57.801] self._thread = threading.Thread(target=_bg) [09:48:57.801] self.callback(self._join) [09:48:57.801] [09:48:57.801] self._thread.start() [09:48:57.801] [09:48:57.801] def _join(self): [09:48:57.801] """ [09:48:57.801] Waits for the background thread to finish and raises any thrown [09:48:57.801] exception. This is called during fixture teardown. [09:48:57.801] """ [09:48:57.801] # Give a little bit of wiggle room on the join timeout, since we're [09:48:57.801] # racing against the test's own use of remaining_timeout(). (It's [09:48:57.801] # preferable to let tests report timeouts; the stack traces will [09:48:57.801] # help with debugging.) [09:48:57.801] self._thread.join(remaining_timeout() + 1) [09:48:57.801] if self._thread.is_alive(): [09:48:57.801] raise TimeoutError("background thread is still running after timeout") [09:48:57.801] [09:48:57.801] if self._thread_exc is not None: [09:48:57.801] raise self._thread_exc [09:48:57.801] [09:48:57.801] > with _Server() as s: [09:48:57.801] [09:48:57.801] pyt/test_libpq.py:145: [09:48:57.801] _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [09:48:57.801] /usr/local/lib/python3.11/contextlib.py:601: in __exit__ [09:48:57.801] raise exc_details[1] [09:48:57.801] /usr/local/lib/python3.11/contextlib.py:586: in __exit__ [09:48:57.801] if cb(*exc_details): [09:48:57.801] ^^^^^^^^^^^^^^^^ [09:48:57.801] /usr/local/lib/python3.11/contextlib.py:469: in _exit_wrapper [09:48:57.801] callback(*args, **kwds) [09:48:57.801] pyt/test_libpq.py:143: in _join [09:48:57.801] raise self._thread_exc [09:48:57.801] pyt/test_libpq.py:115: in _bg [09:48:57.801] fn(sock) [09:48:57.801] _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [09:48:57.801] [09:48:57.801] s = [09:48:57.801] [09:48:57.801] def serve_error(s: socket.socket) -> None: [09:48:57.801] pktlen = struct.unpack("!I", s.recv(4))[0] [09:48:57.801] [09:48:57.801] # Quick check for the startup packet version. [09:48:57.801] version = struct.unpack("!HH", s.recv(4)) [09:48:57.801] > assert version == (3, 0) [09:48:57.801] E assert (3, 9999) == (3, 0) [09:48:57.801] E [09:48:57.801] E At index 1 diff: 9999 != 0 [09:48:57.801] E [09:48:57.801] E Full diff: [09:48:57.801] E ( [09:48:57.801] E 3, [09:48:57.801] E - 0, [09:48:57.801] E + 9999, [09:48:57.801] E ) [09:48:57.801] [09:48:57.801] pyt/test_libpq.py:159: AssertionError [09:48:57.801] ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― [09:48:57.801] [09:48:57.956] 281/375 postgresql:pytest / pytest/test_errors OK 1.01s 2 subtests passed [09:48:58.263] 282/375 postgresql:postmaster / postmaster/002_connection_limits OK 2.81s 30 subtests passed [09:48:59.084] 283/375 postgresql:postmaster / postmaster/003_start_stop OK 3.18s 25 subtests passed [09:48:59.336] 284/375 postgresql:pytest / pytest/test_multi_server OK 1.59s 3 subtests passed [09:48:59.384] 285/375 postgresql:pytest / pytest/test_query_helpers OK 1.58s 39 subtests passed [09:49:04.627] 286/375 postgresql:bloom / bloom/001_wal OK 20.50s 31 subtests passed [09:49:04.778] 287/375 postgresql:subscription / subscription/005_encoding OK 5.39s 1 subtests passed [09:49:04.988] 288/375 postgresql:subscription / subscription/003_constraints OK 5.90s 6 subtests passed [09:49:06.635] 289/375 postgresql:subscription / subscription/002_types OK 8.37s 4 subtests passed [09:49:06.984] 290/375 postgresql:subscription / subscription/004_sync OK 7.65s 9 subtests passed [09:49:10.181] 291/375 postgresql:subscription / subscription/006_rewrite OK 5.55s 2 subtests passed [09:49:11.296] 292/375 postgresql:subscription / subscription/008_diff_schema OK 6.31s 5 subtests passed [09:49:11.331] 293/375 postgresql:subscription / subscription/009_matviews OK 4.69s 1 subtests passed [09:49:11.958] 294/375 postgresql:subscription / subscription/007_ddl OK 7.18s 8 subtests passed [09:49:13.523] 295/375 postgresql:subscription / subscription/001_rep_changes OK 15.57s 38 subtests passed [09:49:16.312] 296/375 postgresql:subscription / subscription/012_collation OK 5.01s 2 subtests passed [09:49:16.433] 297/375 postgresql:subscription / subscription/010_truncate OK 9.45s 14 subtests passed [09:49:19.008] 298/375 postgresql:subscription / subscription/011_generated OK 8.82s 11 subtests passed [09:49:20.808] 299/375 postgresql:subscription / subscription/014_binary OK 8.85s 8 subtests passed [09:49:22.622] 300/375 postgresql:subscription / subscription/017_stream_ddl OK 6.19s 3 subtests passed [09:49:22.790] 301/375 postgresql:subscription / subscription/016_stream_subxact OK 6.48s 3 subtests passed [09:49:25.897] 302/375 postgresql:subscription / subscription/019_stream_subxact_ddl_abort OK 5.09s 2 subtests passed [09:49:26.945] 303/375 postgresql:subscription / subscription/018_stream_subxact_abort OK 7.93s 9 subtests passed [09:49:27.612] 304/375 postgresql:subscription / subscription/020_messages OK 4.99s 5 subtests passed [09:49:33.346] 305/375 postgresql:subscription / subscription/013_partition OK 22.01s 74 subtests passed [09:49:33.537] 306/375 postgresql:subscription / subscription/024_add_drop_pub OK 5.92s 4 subtests passed [09:49:35.469] 307/375 postgresql:subscription / subscription/021_twophase OK 12.68s 31 subtests passed [09:49:41.048] 308/375 postgresql:subscription / subscription/025_rep_changes_for_schema OK 7.70s 13 subtests passed [09:49:41.227] 309/375 postgresql:subscription / subscription/023_twophase_stream OK 14.28s 34 subtests passed [09:49:41.343] 310/375 postgresql:subscription / subscription/022_twophase_cascade OK 15.44s 41 subtests passed [09:49:44.960] 311/375 postgresql:subscription / subscription/015_stream OK 31.44s 10 subtests passed [09:49:45.880] 312/375 postgresql:subscription / subscription/026_stats OK 12.34s 13 subtests passed [09:49:47.192] 313/375 postgresql:subscription / subscription/029_on_error OK 5.96s 5 subtests passed [09:49:51.698] 314/375 postgresql:subscription / subscription/027_nosuperuser OK 16.23s 19 subtests passed [09:49:52.618] 315/375 postgresql:subscription / subscription/030_origin OK 11.27s 13 subtests passed [09:49:53.118] 316/375 postgresql:subscription / subscription/028_row_filter OK 12.07s 26 subtests passed [09:49:55.042] 317/375 postgresql:subscription / subscription/033_run_as_table_owner OK 7.85s 10 subtests passed [09:49:58.231] 318/375 postgresql:subscription / subscription/032_subscribe_use_index OK 12.35s 15 subtests passed [09:50:00.112] 319/375 postgresql:subscription / subscription/036_sequences OK 6.99s 9 subtests passed [09:50:01.591] 320/375 postgresql:subscription / subscription/031_column_list OK 16.63s 36 subtests passed [09:50:01.721] 321/375 postgresql:brin / brin/01_workitems OK 3.49s 4 subtests passed [09:50:02.082] 322/375 postgresql:subscription / subscription/034_temporal OK 10.38s 32 subtests passed [09:50:03.677] 323/375 postgresql:brin / brin/02_wal_consistency OK 3.56s 2 subtests passed [09:50:05.107] 324/375 postgresql:commit_ts / commit_ts/001_base OK 3.51s 2 subtests passed [09:50:05.146] 325/375 postgresql:commit_ts / commit_ts/002_standby OK 3.42s 4 subtests passed [09:50:05.839] 326/375 postgresql:subscription / subscription/035_conflicts OK 13.22s 29 subtests passed [09:50:06.810] 327/375 postgresql:commit_ts / commit_ts/003_standby_2 OK 4.73s 4 subtests passed [09:50:07.966] 328/375 postgresql:commit_ts / commit_ts/004_restart OK 4.29s 16 subtests passed [09:50:08.158] 329/375 postgresql:libpq_pipeline / libpq_pipeline/001_libpq_pipeline OK 3.01s 23 subtests passed [09:50:08.488] 330/375 postgresql:ldap_password_func / ldap_password_func/001_mutated_bindpasswd OK 3.38s 4 subtests passed [09:50:08.604] 331/375 postgresql:pg_dump / pg_dump/002_pg_dump OK 160.83s 11897 subtests passed [09:50:10.115] 332/375 postgresql:oauth_validator / oauth_validator/002_client OK 3.30s 8 subtests passed [09:50:10.368] 333/375 postgresql:ssl_passphrase_callback / ssl_passphrase_callback/001_testfunc OK 2.40s 4 subtests passed [09:50:11.020] 334/375 postgresql:test_custom_rmgrs / test_custom_rmgrs/001_basic OK 2.19s 2 subtests passed [09:50:11.989] 335/375 postgresql:test_aio / test_aio/002_io_workers OK 3.50s 22 subtests passed [09:50:12.201] 336/375 postgresql:test_int128 / test_int128/001_test_int128 OK 0.21s 2 subtests passed [09:50:12.797] 337/375 postgresql:test_escape / test_escape/001_test_escape OK 2.42s 1235 subtests passed [09:50:13.191] 338/375 postgresql:test_extensions / test_extensions/001_extension_control_path OK 2.17s 11 subtests passed [09:50:13.445] 339/375 postgresql:test_json_parser / test_json_parser/003_test_semantic OK 0.25s 12 subtests passed [09:50:13.529] 340/375 postgresql:test_custom_stats / test_custom_stats/001_custom_stats OK 3.41s 15 subtests passed [09:50:13.609] 341/375 postgresql:test_json_parser / test_json_parser/004_test_parser_perf OK 0.16s 2 subtests passed [09:50:15.741] 342/375 postgresql:test_json_parser / test_json_parser/001_test_json_parser_incremental OK 3.54s 516 subtests passed [09:50:15.777] 343/375 postgresql:subscription / subscription/100_bugs OK 20.73s 17 subtests passed [09:50:15.831] 344/375 postgresql:test_aio / test_aio/001_aio OK 7.67s 390 subtests passed [09:50:15.857] 345/375 postgresql:test_misc / test_misc/002_tablespace OK 2.25s 20 subtests passed [09:50:16.949] 346/375 postgresql:test_misc / test_misc/001_constraint_validation OK 3.42s 42 subtests passed [09:50:17.986] 347/375 postgresql:test_misc / test_misc/003_check_guc OK 2.24s 4 subtests passed [09:50:18.100] 348/375 postgresql:test_misc / test_misc/005_timeouts OK 2.26s 2 subtests passed [09:50:18.403] 349/375 postgresql:test_misc / test_misc/004_io_direct OK 2.62s 3 subtests passed [09:50:18.786] 350/375 postgresql:test_misc / test_misc/006_signal_autovacuum OK 2.93s 2 subtests passed [09:50:19.008] 351/375 postgresql:test_json_parser / test_json_parser/002_inline OK 6.20s 3712 subtests passed [09:50:19.632] 352/375 postgresql:test_misc / test_misc/007_catcache_inval OK 2.68s 2 subtests passed [09:50:20.663] 353/375 postgresql:test_misc / test_misc/009_log_temp_files OK 2.56s 11 subtests passed [09:50:20.664] 354/375 postgresql:test_misc / test_misc/008_replslot_single_user OK 2.68s 10 subtests passed [09:50:21.454] 355/375 postgresql:oauth_validator / oauth_validator/001_server OK 15.61s 131 subtests passed [09:50:21.712] 356/375 postgresql:xid_wraparound / xid_wraparound/001_emergency_vacuum SKIP 0.25s [09:50:21.892] 357/375 postgresql:xid_wraparound / xid_wraparound/002_limits SKIP 0.18s [09:50:22.061] 358/375 postgresql:test_slru / test_slru/001_multixact OK 3.02s 2 subtests passed [09:50:22.105] 359/375 postgresql:xid_wraparound / xid_wraparound/003_wraparounds SKIP 0.21s [09:50:23.092] 360/375 postgresql:test_slru / test_slru/002_multixact_wraparound OK 3.46s 18 subtests passed [09:50:24.046] 361/375 postgresql:xid_wraparound / xid_wraparound/004_notify_freeze SKIP 1.98s [09:50:24.438] 362/375 postgresql:worker_spi / worker_spi/001_worker_spi OK 3.77s 8 subtests passed [09:50:25.069] 363/375 postgresql:worker_spi / worker_spi/002_worker_terminate OK 4.39s 11 subtests passed [09:50:25.676] 364/375 postgresql:test_misc / test_misc/010_index_concurrently_upsert OK 7.27s 73 subtests passed [09:50:26.919] 365/375 postgresql:ssl / ssl/002_scram OK 3.83s 28 subtests passed [09:50:27.063] ▶ 366/375 - src/test/ssl/pyt/test_client.py::test_verify_full_connection FAIL [09:50:27.220] 366/375 postgresql:ssl / ssl/test_client FAIL 2.78s 3/4 subtests passed [09:50:27.232] >>> PYTHONPATH=/tmp/cirrus-ci-build/src/test/pytest REGRESS_SHLIB=/tmp/cirrus-ci-build/build/src/test/regress/regress.so share_contrib_dir=/tmp/cirrus-ci-build/build/tmp_install//usr/local/pgsql/share/contrib UBSAN_OPTIONS=halt_on_error=1:abort_on_error=1:print_summary=1:print_stacktrace=1 MSAN_OPTIONS=halt_on_error=1:abort_on_error=1:print_summary=1:print_stacktrace=1 MALLOC_PERTURB_=177 ASAN_OPTIONS=halt_on_error=1:abort_on_error=1:print_summary=1 PG_REGRESS=/tmp/cirrus-ci-build/build/src/test/regress/pg_regress INITDB_TEMPLATE=/tmp/cirrus-ci-build/build/tmp_install/initdb-template PATH=/tmp/cirrus-ci-build/build/tmp_install//usr/local/pgsql/bin:/tmp/cirrus-ci-build/build/src/test/ssl:/tmp/cirrus-ci-build/build/src/test/ssl/test:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin LD_LIBRARY_PATH=/tmp/cirrus-ci-build/build/tmp_install//usr/local/pgsql/lib MESON_TEST_ITERATION=1 top_builddir=/tmp/cirrus-ci-build/build /usr/local/bin/python3 /tmp/cirrus-ci-build/build/../src/tools/testwrap --basedir /tmp/cirrus-ci-build/build --srcdir /tmp/cirrus-ci-build/src/test/ssl --pg-test-extra '' --testgroup ssl --testname test_client -- /usr/local/bin/pytest -c /tmp/cirrus-ci-build/pyproject.toml --verbose -p pgtap -ra /tmp/cirrus-ci-build/src/test/ssl/pyt/test_client.py [09:50:27.232] ――――――――――――――――――――――――――――――――――――― ✀ ――――――――――――――――――――――――――――――――――――― [09:50:27.232] Listing only the last 100 lines from a long log. [09:50:27.232] @pytest.fixture [09:50:27.232] def ssl_server(tcp_server_class, certs): [09:50:27.232] """ [09:50:27.232] Like tcp_server, but with an additional .background_ssl() method which will [09:50:27.232] perform a SSLRequest handshake on the socket before handing the connection [09:50:27.232] to the test callback. [09:50:27.232] [09:50:27.232] This server uses certs.server as its identity. [09:50:27.232] """ [09:50:27.232] [09:50:27.232] class _SSLServer(tcp_server_class): [09:50:27.232] def __init__(self): [09:50:27.232] super().__init__() [09:50:27.232] [09:50:27.232] self.conninfo["host"] = certs.server_host [09:50:27.232] [09:50:27.232] self._ctx = ssl.SSLContext(ssl.PROTOCOL_TLS_SERVER) [09:50:27.232] self._ctx.load_cert_chain(certs.server.certpath, certs.server.keypath) [09:50:27.232] [09:50:27.232] def background_ssl(self, fn: Callable[[ssl.SSLSocket], None]) -> None: [09:50:27.232] """ [09:50:27.232] Invokes a server callback as with .background(), but an SSLRequest [09:50:27.232] handshake is performed first, and the socket provided to the [09:50:27.232] callback has been wrapped in an OpenSSL layer. [09:50:27.232] """ [09:50:27.232] [09:50:27.232] def handshake(s: socket.socket): [09:50:27.232] pktlen = struct.unpack("!I", s.recv(4))[0] [09:50:27.232] [09:50:27.232] # Make sure we get an SSLRequest. [09:50:27.232] version = struct.unpack("!HH", s.recv(4)) [09:50:27.232] assert version == (1234, 5679) [09:50:27.232] assert pktlen == 8 [09:50:27.232] [09:50:27.232] # Accept the SSLRequest. [09:50:27.232] s.send(b"S") [09:50:27.232] [09:50:27.232] with self._ctx.wrap_socket(s, server_side=True) as wrapped: [09:50:27.232] fn(wrapped) [09:50:27.232] [09:50:27.232] self.background(handshake) [09:50:27.232] [09:50:27.232] > with _SSLServer() as s: [09:50:27.232] [09:50:27.232] pyt/test_client.py:186: [09:50:27.232] _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [09:50:27.232] /usr/local/lib/python3.11/contextlib.py:601: in __exit__ [09:50:27.232] raise exc_details[1] [09:50:27.232] /usr/local/lib/python3.11/contextlib.py:586: in __exit__ [09:50:27.232] if cb(*exc_details): [09:50:27.232] ^^^^^^^^^^^^^^^^ [09:50:27.232] /usr/local/lib/python3.11/contextlib.py:469: in _exit_wrapper [09:50:27.232] callback(*args, **kwds) [09:50:27.232] pyt/test_client.py:129: in _join [09:50:27.232] raise self._thread_exc [09:50:27.232] pyt/test_client.py:101: in _bg [09:50:27.232] fn(sock) [09:50:27.232] pyt/test_client.py:182: in handshake [09:50:27.232] fn(wrapped) [09:50:27.232] _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ [09:50:27.232] [09:50:27.232] s = [09:50:27.232] [09:50:27.232] def handle_empty_query(s: ssl.SSLSocket): [09:50:27.232] pktlen = struct.unpack("!I", s.recv(4))[0] [09:50:27.232] [09:50:27.232] # Check the startup packet version, then discard the remainder. [09:50:27.232] version = struct.unpack("!HH", s.recv(4)) [09:50:27.232] > assert version == (3, 0) [09:50:27.232] E assert (3, 9999) == (3, 0) [09:50:27.232] E [09:50:27.232] E At index 1 diff: 9999 != 0 [09:50:27.232] E [09:50:27.232] E Full diff: [09:50:27.232] E ( [09:50:27.232] E 3, [09:50:27.232] E - 0, [09:50:27.232] E + 9999, [09:50:27.232] E ) [09:50:27.232] [09:50:27.232] pyt/test_client.py:234: AssertionError [09:50:27.232] [09:50:27.232] ----------------------- Captured stdout teardown ----------------------- [09:50:27.232] DROP DATABASE [09:50:27.232] DROP ROLE [09:50:27.232] waiting for server to shut down.... done [09:50:27.232] server stopped [09:50:27.232] waiting for server to start.... done [09:50:27.232] server started [09:50:27.232] waiting for server to shut down.... done [09:50:27.232] server stopped [09:50:27.232] [09:50:27.232] [09:50:27.232] ----------------------- Captured stderr teardown ----------------------- [09:50:27.232] + /tmp/cirrus-ci-build/build/tmp_install/usr/local/pgsql/bin/psql -w -c 'DROP DATABASE ssldb' [09:50:27.232] + /tmp/cirrus-ci-build/build/tmp_install/usr/local/pgsql/bin/psql -w -c 'DROP USER ssluser' [09:50:27.232] + /tmp/cirrus-ci-build/build/tmp_install/usr/local/pgsql/bin/pg_ctl --pgdata /tmp/cirrus-ci-build/build/testrun/ssl/test_client/data/pgdata --log /tmp/cirrus-ci-build/build/testrun/ssl/test_client/data/pgdata/postgresql.log restart [09:50:27.232] + /tmp/cirrus-ci-build/build/tmp_install/usr/local/pgsql/bin/pg_ctl --pgdata /tmp/cirrus-ci-build/build/testrun/ssl/test_client/data/pgdata --log /tmp/cirrus-ci-build/build/testrun/ssl/test_client/data/pgdata/postgresql.log stop --mode fast [09:50:27.232] [09:50:27.232] ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― [09:50:27.232] [09:50:28.178] 367/375 postgresql:ssl / ssl/003_sslinfo OK 4.13s 21 subtests passed [09:50:28.372] 368/375 postgresql:ssl / ssl/test_server OK 3.30s 12 subtests passed [09:50:29.691] 369/375 postgresql:ldap / ldap/002_bindpasswd OK 2.77s 3 subtests passed [09:50:30.315] 370/375 postgresql:icu / icu/010_database OK 2.14s 8 subtests passed [09:50:30.699] 371/375 postgresql:ldap / ldap/003_ldap_connection_param_lookup OK 3.47s 26 subtests passed [09:50:31.613] 372/375 postgresql:ldap / ldap/001_auth OK 5.93s 47 subtests passed [09:50:33.583] 373/375 postgresql:ssl / ssl/001_ssltests OK 11.48s 256 subtests passed [09:50:35.486] 374/375 postgresql:test_pg_dump / test_pg_dump/001_base OK 16.69s 1044 subtests passed [09:50:37.784] 375/375 postgresql:recovery / recovery/027_stream_regress OK 379.21s 11 subtests passed [09:50:37.888] [09:50:37.888] Summary of Failures: [09:50:37.888] [09:50:37.888] 280/375 postgresql:pytest / pytest/test_libpq FAIL 0.62s 8/9 subtests passed [09:50:37.888] 366/375 postgresql:ssl / ssl/test_client FAIL 2.78s 3/4 subtests passed [09:50:37.888] [09:50:37.888] Ok: 368 [09:50:37.888] Expected Fail: 0 [09:50:37.888] Fail: 2 [09:50:37.888] Unexpected Pass: 0 [09:50:37.888] Skipped: 5 [09:50:37.888] Timeout: 0 [09:50:37.888] [09:50:37.888] Full log written to /tmp/cirrus-ci-build/build/meson-logs/testlog.txt [09:50:37.985] [09:50:37.985] Exit status: 2