# Checking port 55603 # Found port 55603 Name: primary Data directory: C:\cirrus\build/testrun/recovery/027_stream_regress\data/t_027_stream_regress_primary_data/pgdata Backup directory: C:\cirrus\build/testrun/recovery/027_stream_regress\data/t_027_stream_regress_primary_data/backup Archive directory: C:\cirrus\build/testrun/recovery/027_stream_regress\data/t_027_stream_regress_primary_data/archives Connection string: port=55603 host=C:/Windows/TEMP/jY17cEc87Q Log file: C:\cirrus\build/testrun/recovery/027_stream_regress\log/027_stream_regress_primary.log [01:17:29.928](0.059s) # initializing database system by copying initdb template # Running: robocopy /E /NJS /NJH /NFL /NDL /NP C:/cirrus/build/tmp_install/initdb-template C:\cirrus\build/testrun/recovery/027_stream_regress\data/t_027_stream_regress_primary_data/pgdata # Running: C:\cirrus\build\src/test\regress\pg_regress.exe --config-auth C:\cirrus\build/testrun/recovery/027_stream_regress\data/t_027_stream_regress_primary_data/pgdata ### Starting node "primary" # Running: pg_ctl -w -D C:\cirrus\build/testrun/recovery/027_stream_regress\data/t_027_stream_regress_primary_data/pgdata -l C:\cirrus\build/testrun/recovery/027_stream_regress\log/027_stream_regress_primary.log -o --cluster-name=primary start waiting for server to start.... done server started # Postmaster PID for node "primary" is 4276 (standby_1,) [01:17:31.667](1.739s) ok 1 - physical slot created on primary # Taking pg_basebackup my_backup from node "primary" # Running: pg_basebackup -D C:\cirrus\build/testrun/recovery/027_stream_regress\data/t_027_stream_regress_primary_data/backup/my_backup -h C:/Windows/TEMP/jY17cEc87Q -p 55603 --checkpoint fast --no-sync # Backup finished # Checking port 55604 # Found port 55604 Name: standby_1 Data directory: C:\cirrus\build/testrun/recovery/027_stream_regress\data/t_027_stream_regress_standby_1_data/pgdata Backup directory: C:\cirrus\build/testrun/recovery/027_stream_regress\data/t_027_stream_regress_standby_1_data/backup Archive directory: C:\cirrus\build/testrun/recovery/027_stream_regress\data/t_027_stream_regress_standby_1_data/archives Connection string: port=55604 host=C:/Windows/TEMP/jY17cEc87Q Log file: C:\cirrus\build/testrun/recovery/027_stream_regress\log/027_stream_regress_standby_1.log # Initializing node "standby_1" from backup "my_backup" of node "primary" ### Enabling streaming replication for node "standby_1" ### Starting node "standby_1" # Running: pg_ctl -w -D C:\cirrus\build/testrun/recovery/027_stream_regress\data/t_027_stream_regress_standby_1_data/pgdata -l C:\cirrus\build/testrun/recovery/027_stream_regress\log/027_stream_regress_standby_1.log -o --cluster-name=standby_1 start waiting for server to start.... done server started # Postmaster PID for node "standby_1" is 4892 # using postmaster on C:/Windows/TEMP/jY17cEc87Q, port 55603 ok 1 - test_setup 748 ms # parallel group (20 tests): name int2 varchar text money regproc char txid uuid pg_lsn oid bit float8 int8 enum float4 boolean int4 rangetypes numeric ok 2 + boolean 1542 ms ok 3 + char 1477 ms ok 4 + name 816 ms ok 5 + varchar 1113 ms ok 6 + text 1112 ms ok 7 + int2 980 ms ok 8 + int4 1533 ms ok 9 + int8 1519 ms ok 10 + oid 1467 ms ok 11 + float4 1528 ms ok 12 + float8 1471 ms ok 13 + bit 1469 ms ok 14 + numeric 2062 ms ok 15 + txid 1459 ms ok 16 + uuid 1457 ms ok 17 + enum 1507 ms ok 18 + money 1205 ms ok 19 + rangetypes 1898 ms ok 20 + pg_lsn 1451 ms ok 21 + regproc 1449 ms # parallel group (20 tests): md5 line numerology lseg time interval inet macaddr8 timetz circle path box point macaddr timestamp strings date polygon timestamptz multirangetypes ok 22 + strings 1391 ms ok 23 + md5 1026 ms ok 24 + numerology 1174 ms ok 25 + point 1363 ms ok 26 + lseg 1264 ms ok 27 + line 1170 ms ok 28 + box 1330 ms ok 29 + path 1317 ms ok 30 + polygon 1391 ms ok 31 + circle 1314 ms ok 32 + date 1385 ms ok 33 + time 1254 ms ok 34 + timetz 1258 ms ok 35 + timestamp 1349 ms ok 36 + timestamptz 1712 ms ok 37 + interval 1248 ms ok 38 + inet 1252 ms ok 39 + macaddr 1343 ms ok 40 + macaddr8 1249 ms ok 41 + multirangetypes 1811 ms # parallel group (12 tests): unicode tstypes regex misc_sanity type_sanity geometry horology mvcc xid expressions comments opr_sanity ok 42 + geometry 1048 ms ok 43 + horology 1046 ms ok 44 + tstypes 917 ms ok 45 + regex 916 ms ok 46 + type_sanity 1041 ms ok 47 + opr_sanity 1622 ms ok 48 + misc_sanity 1013 ms ok 49 + comments 1192 ms ok 50 + expressions 1190 ms ok 51 + unicode 905 ms ok 52 + xid 1094 ms ok 53 + mvcc 1029 ms # parallel group (5 tests): copydml copyselect copy insert_conflict insert ok 54 + copy 806 ms ok 55 + copyselect 479 ms ok 56 + copydml 477 ms ok 57 + insert 1776 ms ok 58 + insert_conflict 900 ms # parallel group (7 tests): create_schema create_misc create_operator create_type create_function_c create_procedure create_table ok 59 + create_function_c 657 ms ok 60 + create_misc 453 ms ok 61 + create_operator 525 ms ok 62 + create_procedure 656 ms ok 63 + create_table 1554 ms ok 64 + create_type 648 ms ok 65 + create_schema 371 ms # parallel group (5 tests): create_view create_index_spgist index_including_gist index_including create_index ok 66 + create_index 2652 ms ok 67 + create_index_spgist 1393 ms ok 68 + create_view 1390 ms ok 69 + index_including 1731 ms ok 70 + index_including_gist 1729 ms # parallel group (16 tests): create_aggregate roleattributes drop_if_exists infinite_recurse create_function_sql errors hash_func create_am select create_cast typed_table constraints updatable_views vacuum inherit triggers ok 71 + create_aggregate 1057 ms ok 72 + create_function_sql 1166 ms ok 73 + create_cast 1394 ms ok 74 + constraints 1870 ms ok 75 + triggers 5365 ms ok 76 + select 1180 ms ok 77 + inherit 4222 ms ok 78 + typed_table 1422 ms ok 79 + vacuum 3716 ms ok 80 + drop_if_exists 1152 ms ok 81 + updatable_views 2417 ms ok 82 + roleattributes 1039 ms ok 83 + create_am 1168 ms ok 84 + hash_func 1167 ms ok 85 + errors 1144 ms ok 86 + infinite_recurse 1143 ms ok 87 - sanity_check 842 ms # parallel group (20 tests): select_implicit select_into select_distinct_on select_having random namespace case delete subselect transactions union portals prepared_xacts arrays select_distinct update join hash_index aggregates btree_index ok 88 + select_into 1035 ms ok 89 + select_distinct 2527 ms ok 90 + select_distinct_on 1032 ms ok 91 + select_implicit 1030 ms ok 92 + select_having 1206 ms not ok 93 + subselect 1897 ms ok 94 + union 2167 ms ok 95 + case 1552 ms ok 96 + join 3788 ms ok 97 + aggregates 4376 ms ok 98 + transactions 1891 ms ok 99 + random 1354 ms ok 100 + portals 2206 ms ok 101 + arrays 2507 ms ok 102 + btree_index 6050 ms ok 103 + hash_index 3814 ms ok 104 + update 2977 ms ok 105 + delete 1600 ms ok 106 + namespace 1532 ms ok 107 + prepared_xacts 2193 ms # parallel group (20 tests): init_privs security_label drop_operator password collate object_address matview tablesample lock spgist groupingsets replica_identity gin identity generated rowsecurity gist brin join_hash privileges ok 108 + brin 11684 ms ok 109 + gin 3699 ms ok 110 + gist 5965 ms ok 111 + spgist 2670 ms ok 112 + privileges 13472 ms ok 113 + init_privs 1760 ms ok 114 + security_label 1759 ms ok 115 + collate 2407 ms ok 116 + matview 2593 ms ok 117 + lock 2660 ms ok 118 + replica_identity 3498 ms ok 119 + rowsecurity 4427 ms ok 120 + object_address 2587 ms ok 121 + tablesample 2586 ms ok 122 + groupingsets 2653 ms ok 123 + drop_operator 2383 ms ok 124 + password 2393 ms ok 125 + identity 3808 ms ok 126 + generated 3893 ms ok 127 + join_hash 11706 ms # parallel group (2 tests): brin_bloom brin_multi ok 128 + brin_bloom 586 ms ok 129 + brin_multi 1992 ms # parallel group (17 tests): tidscan collate.icu.utf8 tidrangescan create_role alter_operator async tsrf dbsize incremental_sort misc alter_generic tid sysviews misc_functions without_overlaps merge create_table_like ok 130 + create_table_like 2107 ms ok 131 + alter_generic 1665 ms ok 132 + alter_operator 1189 ms ok 133 + misc 1662 ms ok 134 + async 1194 ms ok 135 + dbsize 1506 ms ok 136 + merge 2036 ms ok 137 + misc_functions 1831 ms ok 138 + sysviews 1750 ms ok 139 + tsrf 1185 ms ok 140 + tid 1648 ms ok 141 + tidscan 648 ms ok 142 + tidrangescan 703 ms ok 143 + collate.icu.utf8 701 ms ok 144 + incremental_sort 1548 ms ok 145 + create_role 814 ms ok 146 + without_overlaps 1816 ms # parallel group (7 tests): collate.linux.utf8 psql_crosstab amutils collate.windows.win1252 psql rules stats_ext ok 147 + rules 1835 ms ok 148 + psql 1768 ms ok 149 + psql_crosstab 622 ms ok 150 + amutils 622 ms ok 151 + stats_ext 5415 ms ok 152 + collate.linux.utf8 617 ms ok 153 + collate.windows.win1252 1189 ms not ok 154 - select_parallel 7013 ms ok 155 - write_parallel 1708 ms ok 156 - vacuum_parallel 669 ms # parallel group (2 tests): subscription publication ok 157 + publication 1427 ms ok 158 + subscription 428 ms # parallel group (17 tests): guc advisory_lock dependency equivclass portals_p2 combocid xmlmap functional_deps tsdicts select_views window tsearch cluster indirect_toast bitmapops foreign_data foreign_key ok 159 + select_views 2024 ms ok 160 + portals_p2 1467 ms ok 161 + foreign_key 4271 ms ok 162 + cluster 2123 ms ok 163 + dependency 1322 ms ok 164 + guc 1175 ms ok 165 + bitmapops 2153 ms ok 166 + combocid 1757 ms ok 167 + tsearch 2070 ms ok 168 + tsdicts 1937 ms ok 169 + foreign_data 3299 ms ok 170 + window 2065 ms ok 171 + xmlmap 1890 ms ok 172 + functional_deps 1888 ms ok 173 + advisory_lock 1161 ms ok 174 + indirect_toast 2128 ms ok 175 + equivclass 1443 ms # parallel group (7 tests): jsonpath_encoding json_encoding sqljson jsonpath jsonb_jsonpath json jsonb ok 176 + json 652 ms ok 177 + jsonb 1233 ms ok 178 + json_encoding 600 ms ok 179 + jsonpath 629 ms ok 180 + jsonpath_encoding 462 ms ok 181 + jsonb_jsonpath 642 ms ok 182 + sqljson 590 ms # parallel group (18 tests): domain plancache limit returning prepare conversion xml sequence copy2 with largeobject rowtypes rangefuncs polymorphism temp truncate plpgsql alter_table ok 183 + plancache 1378 ms ok 184 + limit 1614 ms ok 185 + plpgsql 4046 ms ok 186 + copy2 2431 ms ok 187 + temp 2756 ms ok 188 + domain 1370 ms ok 189 + rangefuncs 2617 ms ok 190 + prepare 1718 ms ok 191 + conversion 2136 ms ok 192 + truncate 2751 ms ok 193 + alter_table 6582 ms ok 194 + sequence 2303 ms ok 195 + polymorphism 2691 ms ok 196 + rowtypes 2578 ms ok 197 + returning 1593 ms ok 198 + largeobject 2481 ms ok 199 + with 2425 ms ok 200 + xml 2188 ms # parallel group (13 tests): partition_info reloptions predicate compression hash_part partition_join memoize explain indexing stats partition_aggregate tuplesort partition_prune ok 201 + partition_join 2627 ms ok 202 + partition_prune 7405 ms ok 203 + reloptions 1340 ms ok 204 + hash_part 2321 ms ok 205 + indexing 3282 ms ok 206 + partition_aggregate 5146 ms ok 207 + partition_info 1334 ms ok 208 + tuplesort 5184 ms ok 209 + explain 2836 ms ok 210 + compression 1809 ms ok 211 + memoize 2614 ms ok 212 + stats 4038 ms ok 213 + predicate 1324 ms # parallel group (2 tests): oidjoins event_trigger ok 214 + oidjoins 753 ms ok 215 + event_trigger 865 ms ok 216 - event_trigger_login 446 ms ok 217 - fast_default 898 ms ok 218 - tablespace 1365 ms 1..218 # 2 of 218 tests failed. # The differences that caused some tests to fail can be viewed in the file "C:/cirrus/build/testrun/recovery/027_stream_regress/data/regression.diffs". # A copy of the test summary that you see above is saved in the file "C:/cirrus/build/testrun/recovery/027_stream_regress/data/regression.out". === dumping C:\cirrus\build/testrun/recovery/027_stream_regress\data/regression.diffs === diff -w -U3 C:/cirrus/src/test/regress/expected/subselect.out C:/cirrus/build/testrun/recovery/027_stream_regress/data/results/subselect.out --- C:/cirrus/src/test/regress/expected/subselect.out 2024-02-20 01:13:24.940222100 +0000 +++ C:/cirrus/build/testrun/recovery/027_stream_regress/data/results/subselect.out 2024-02-20 01:18:06.647188100 +0000 @@ -2016,16 +2016,16 @@ QUERY PLAN ------------------------------------------------- Hash Join - Hash Cond: (c.odd = b.odd) + Hash Cond: (c.hundred = a.hundred) -> Hash Join - Hash Cond: (a.hundred = c.hundred) - -> Seq Scan on tenk1 a + Hash Cond: (b.odd = c.odd) + -> Seq Scan on tenk2 b -> Hash -> HashAggregate Group Key: c.odd, c.hundred -> Seq Scan on tenk2 c -> Hash - -> Seq Scan on tenk2 b + -> Seq Scan on tenk1 a (11 rows) -- we can pull up the aggregate sublink into RHS of a left join. diff -w -U3 C:/cirrus/src/test/regress/expected/select_parallel.out C:/cirrus/build/testrun/recovery/027_stream_regress/data/results/select_parallel.out --- C:/cirrus/src/test/regress/expected/select_parallel.out 2024-02-20 01:13:24.931459200 +0000 +++ C:/cirrus/build/testrun/recovery/027_stream_regress/data/results/select_parallel.out 2024-02-20 01:18:54.112998600 +0000 @@ -452,25 +452,35 @@ where tenk1.four = t.four ); QUERY PLAN ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - Seq Scan on public.tenk1 t +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Hash Join Output: t.unique1, t.unique2, t.two, t.four, t.ten, t.twenty, t.hundred, t.thousand, t.twothousand, t.fivethous, t.tenthous, t.odd, t.even, t.stringu1, t.stringu2, t.string4 - Filter: (SubPlan 1) - SubPlan 1 - -> Hash Join - Output: t.two - Hash Cond: (tenk1.stringu1 = t3.stringu1) - -> Seq Scan on public.tenk1 - Output: tenk1.unique1, tenk1.unique2, tenk1.two, tenk1.four, tenk1.ten, tenk1.twenty, tenk1.hundred, tenk1.thousand, tenk1.twothousand, tenk1.fivethous, tenk1.tenthous, tenk1.odd, tenk1.even, tenk1.stringu1, tenk1.stringu2, tenk1.string4 - Filter: (tenk1.four = t.four) + Inner Unique: true + Hash Cond: (t.four = tenk1.four) + -> Gather + Output: t.unique1, t.unique2, t.two, t.four, t.ten, t.twenty, t.hundred, t.thousand, t.twothousand, t.fivethous, t.tenthous, t.odd, t.even, t.stringu1, t.stringu2, t.string4 + Workers Planned: 4 + -> Parallel Seq Scan on public.tenk1 t + Output: t.unique1, t.unique2, t.two, t.four, t.ten, t.twenty, t.hundred, t.thousand, t.twothousand, t.fivethous, t.tenthous, t.odd, t.even, t.stringu1, t.stringu2, t.string4 + Filter: (t.two IS NOT NULL) -> Hash - Output: t3.stringu1 + Output: tenk1.four + -> HashAggregate + Output: tenk1.four + Group Key: tenk1.four -> Gather - Output: t3.stringu1 + Output: tenk1.four Workers Planned: 4 + -> Parallel Hash Join + Output: tenk1.four + Hash Cond: (tenk1.stringu1 = t3.stringu1) + -> Parallel Seq Scan on public.tenk1 + Output: tenk1.unique1, tenk1.unique2, tenk1.two, tenk1.four, tenk1.ten, tenk1.twenty, tenk1.hundred, tenk1.thousand, tenk1.twothousand, tenk1.fivethous, tenk1.tenthous, tenk1.odd, tenk1.even, tenk1.stringu1, tenk1.stringu2, tenk1.string4 + -> Parallel Hash + Output: t3.stringu1 -> Parallel Seq Scan on public.tenk1 t3 Output: t3.stringu1 -(17 rows) +(27 rows) -- this is not parallel-safe due to use of random() within SubLink's testexpr: explain (costs off) === EOF === [01:19:34.358](122.691s) not ok 2 - regression tests pass [01:19:34.358](0.000s) # Failed test 'regression tests pass' # at C:/cirrus/src/test/recovery/t/027_stream_regress.pl line 95. [01:19:34.358](0.000s) # got: '256' # expected: '0' 1 1 1 1 1 2 1 9 5 5 4001 41 3 4 3 4 4 1 32 1 1 1 6 104 2 1 5 1006 1 2 -2 5 17 9 1 1 33 34 1 1 1 1 -1 1 1 -1 -32768 32767 1 46 Waiting for replication conn standby_1's replay_lsn to pass 0/145F7910 on primary done # Running: pg_dumpall -f C:\cirrus\build/testrun/recovery/027_stream_regress\data/primary.dump --no-sync -p 55603 --no-unlogged-table-data [01:19:39.477](5.119s) ok 3 - dump primary server # Running: pg_dumpall -f C:\cirrus\build/testrun/recovery/027_stream_regress\data/standby.dump --no-sync -p 55604 [01:19:43.958](4.480s) ok 4 - dump standby server # Running: diff C:\cirrus\build/testrun/recovery/027_stream_regress\data/primary.dump C:\cirrus\build/testrun/recovery/027_stream_regress\data/standby.dump [01:19:44.153](0.195s) ok 5 - compare primary and standby dumps [01:19:44.818](0.665s) ok 6 - check contents of pg_stat_statements on regression database ### Stopping node "standby_1" using mode fast # Running: pg_ctl -D C:\cirrus\build/testrun/recovery/027_stream_regress\data/t_027_stream_regress_standby_1_data/pgdata -m fast stop waiting for server to shut down.... done server stopped # No postmaster PID for node "standby_1" ### Stopping node "primary" using mode fast # Running: pg_ctl -D C:\cirrus\build/testrun/recovery/027_stream_regress\data/t_027_stream_regress_primary_data/pgdata -m fast stop waiting for server to shut down.... done server stopped # No postmaster PID for node "primary" [01:19:45.093](0.275s) 1..6 [01:19:45.100](0.008s) # Looks like you failed 1 test of 6.