[11:41:12.546](0.044s) # testing using transfer mode --copy # Checking port 55339 # Found port 55339 Name: old_node Data directory: /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/data/t_002_pg_upgrade_old_node_data/pgdata Backup directory: /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/data/t_002_pg_upgrade_old_node_data/backup Archive directory: /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/data/t_002_pg_upgrade_old_node_data/archives Connection string: port=55339 host=/tmp/XM0vM4Wuxb Log file: /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/log/002_pg_upgrade_old_node.log [11:41:12.551](0.005s) # initializing database system by running initdb # Running: initdb -D /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/data/t_002_pg_upgrade_old_node_data/pgdata -A trust -N --wal-segsize 1 --allow-group-access --encoding UTF-8 --locale C --locale-provider icu --icu-locale fr-CA The files belonging to this database system will be owned by user "postgres". This user must also own the server process. Using language tag "fr-CA" for ICU locale "fr-CA". The database cluster will be initialized with this locale configuration: provider: icu ICU locale: fr-CA LC_COLLATE: C LC_CTYPE: C LC_MESSAGES: C LC_MONETARY: C LC_NUMERIC: C LC_TIME: C The default text search configuration will be set to "english". Data page checksums are disabled. creating directory /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/data/t_002_pg_upgrade_old_node_data/pgdata ... ok creating subdirectories ... ok selecting dynamic shared memory implementation ... posix selecting default max_connections ... 100 selecting default shared_buffers ... 128MB selecting default time zone ... Etc/UTC creating configuration files ... ok running bootstrap script ... ok performing post-bootstrap initialization ... ok Sync to disk skipped. The data directory might become corrupt if the operating system crashes. Success. You can now start the database server using: pg_ctl -D /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/data/t_002_pg_upgrade_old_node_data/pgdata -l logfile start # Running: /tmp/cirrus-ci-build/build-32/src/test/regress/pg_regress --config-auth /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/data/t_002_pg_upgrade_old_node_data/pgdata ### Starting node "old_node" # Running: pg_ctl -w -D /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/data/t_002_pg_upgrade_old_node_data/pgdata -l /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/log/002_pg_upgrade_old_node.log -o --cluster-name=old_node start waiting for server to start.... done server started # Postmaster PID for node "old_node" is 60989 [11:41:14.378](1.826s) ok 1 - check locales in original cluster # Running: createdb regression\"\  !"#$%&'()*+,-\\"\\\ [11:41:15.031](0.653s) ok 2 - created database with ASCII characters from 1 to 45 # Running: createdb regression./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ [11:41:15.118](0.087s) ok 3 - created database with ASCII characters from 46 to 90 # Running: createdb regression[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ [11:41:15.194](0.076s) ok 4 - created database with ASCII characters from 91 to 127 [11:41:15.194](0.001s) # running regression tests in old instance # using postmaster on /tmp/XM0vM4Wuxb, port 55339 ok 1 - test_setup 521 ms # parallel group (20 tests): text oid pg_lsn txid char int2 varchar int4 name regproc money float4 uuid boolean int8 bit float8 enum numeric rangetypes ok 2 + boolean 217 ms ok 3 + char 147 ms ok 4 + name 174 ms ok 5 + varchar 154 ms ok 6 + text 99 ms ok 7 + int2 148 ms ok 8 + int4 163 ms ok 9 + int8 250 ms ok 10 + oid 118 ms ok 11 + float4 194 ms ok 12 + float8 263 ms ok 13 + bit 260 ms ok 14 + numeric 989 ms ok 15 + txid 143 ms ok 16 + uuid 213 ms ok 17 + enum 298 ms ok 18 + money 190 ms ok 19 + rangetypes 1287 ms ok 20 + pg_lsn 125 ms ok 21 + regproc 184 ms # parallel group (20 tests): path time line md5 lseg macaddr circle macaddr8 numerology timetz date point inet interval strings timestamp timestamptz box multirangetypes polygon ok 22 + strings 579 ms ok 23 + md5 113 ms ok 24 + numerology 186 ms ok 25 + point 230 ms ok 26 + lseg 125 ms ok 27 + line 105 ms ok 28 + box 796 ms ok 29 + path 79 ms ok 30 + polygon 935 ms ok 31 + circle 137 ms ok 32 + date 212 ms ok 33 + time 88 ms ok 34 + timetz 188 ms ok 35 + timestamp 589 ms ok 36 + timestamptz 669 ms ok 37 + interval 267 ms ok 38 + inet 240 ms ok 39 + macaddr 135 ms ok 40 + macaddr8 164 ms ok 41 + multirangetypes 861 ms # parallel group (12 tests): unicode comments misc_sanity expressions xid tstypes mvcc geometry horology type_sanity regex opr_sanity ok 42 + geometry 370 ms ok 43 + horology 383 ms ok 44 + tstypes 202 ms ok 45 + regex 687 ms ok 46 + type_sanity 385 ms ok 47 + opr_sanity 765 ms ok 48 + misc_sanity 108 ms ok 49 + comments 74 ms ok 50 + expressions 153 ms ok 51 + unicode 46 ms ok 52 + xid 177 ms ok 53 + mvcc 269 ms # parallel group (5 tests): copydml copyselect copy insert_conflict insert ok 54 + copy 291 ms ok 55 + copyselect 83 ms ok 56 + copydml 80 ms ok 57 + insert 817 ms ok 58 + insert_conflict 358 ms # parallel group (7 tests): create_function_c create_operator create_type create_schema create_misc create_procedure create_table ok 59 + create_function_c 39 ms ok 60 + create_misc 138 ms ok 61 + create_operator 42 ms ok 62 + create_procedure 192 ms ok 63 + create_table 1260 ms ok 64 + create_type 91 ms ok 65 + create_schema 125 ms # parallel group (5 tests): index_including create_view index_including_gist create_index_spgist create_index ok 66 + create_index 1861 ms ok 67 + create_index_spgist 1207 ms ok 68 + create_view 824 ms ok 69 + index_including 539 ms ok 70 + index_including_gist 925 ms # parallel group (16 tests): create_cast errors hash_func roleattributes create_aggregate drop_if_exists typed_table select create_am create_function_sql infinite_recurse vacuum constraints updatable_views inherit triggers ok 71 + create_aggregate 150 ms ok 72 + create_function_sql 490 ms ok 73 + create_cast 91 ms ok 74 + constraints 1594 ms ok 75 + triggers 3676 ms ok 76 + select 303 ms ok 77 + inherit 3175 ms ok 78 + typed_table 236 ms ok 79 + vacuum 1451 ms ok 80 + drop_if_exists 221 ms ok 81 + updatable_views 2641 ms ok 82 + roleattributes 143 ms ok 83 + create_am 479 ms ok 84 + hash_func 141 ms ok 85 + errors 93 ms ok 86 + infinite_recurse 653 ms ok 87 - sanity_check 96 ms # parallel group (20 tests): select_distinct_on select_having delete select_implicit random case namespace select_into prepared_xacts select_distinct transactions portals union arrays subselect update hash_index aggregates join btree_index ok 88 + select_into 242 ms ok 89 + select_distinct 373 ms ok 90 + select_distinct_on 73 ms ok 91 + select_implicit 101 ms ok 92 + select_having 92 ms ok 93 + subselect 721 ms ok 94 + union 598 ms ok 95 + case 182 ms ok 96 + join 2582 ms ok 97 + aggregates 2414 ms ok 98 + transactions 410 ms ok 99 + random 176 ms ok 100 + portals 421 ms ok 101 + arrays 657 ms ok 102 + btree_index 4613 ms ok 103 + hash_index 1368 ms ok 104 + update 932 ms ok 105 + delete 98 ms ok 106 + namespace 203 ms ok 107 + prepared_xacts 310 ms # parallel group (20 tests): init_privs security_label drop_operator lock object_address password tablesample collate replica_identity groupingsets identity matview generated rowsecurity spgist gin gist brin join_hash privileges ok 108 + brin 3976 ms ok 109 + gin 2788 ms ok 110 + gist 3295 ms ok 111 + spgist 2548 ms ok 112 + privileges 4929 ms ok 113 + init_privs 31 ms ok 114 + security_label 68 ms ok 115 + collate 538 ms ok 116 + matview 1759 ms ok 117 + lock 375 ms ok 118 + replica_identity 783 ms ok 119 + rowsecurity 2520 ms ok 120 + object_address 381 ms ok 121 + tablesample 430 ms ok 122 + groupingsets 1177 ms ok 123 + drop_operator 165 ms ok 124 + password 391 ms ok 125 + identity 1645 ms ok 126 + generated 2181 ms ok 127 + join_hash 4033 ms # parallel group (2 tests): brin_bloom brin_multi ok 128 + brin_bloom 177 ms ok 129 + brin_multi 1371 ms # parallel group (17 tests): dbsize async tid tidrangescan tsrf alter_operator tidscan create_role sysviews misc_functions alter_generic misc incremental_sort without_overlaps merge create_table_like collate.icu.utf8 ok 130 + create_table_like 867 ms ok 131 + alter_generic 469 ms ok 132 + alter_operator 189 ms ok 133 + misc 519 ms ok 134 + async 84 ms ok 135 + dbsize 80 ms ok 136 + merge 799 ms ok 137 + misc_functions 315 ms ok 138 + sysviews 308 ms ok 139 + tsrf 183 ms ok 140 + tid 154 ms ok 141 + tidscan 241 ms ok 142 + tidrangescan 162 ms ok 143 + collate.icu.utf8 909 ms ok 144 + incremental_sort 579 ms ok 145 + create_role 245 ms ok 146 + without_overlaps 607 ms # parallel group (7 tests): collate.windows.win1252 collate.linux.utf8 amutils psql_crosstab rules psql stats_ext ok 147 + rules 695 ms ok 148 + psql 717 ms ok 149 + psql_crosstab 59 ms ok 150 + amutils 41 ms ok 151 + stats_ext 3496 ms ok 152 + collate.linux.utf8 26 ms ok 153 + collate.windows.win1252 17 ms ok 154 - select_parallel 3276 ms ok 155 - write_parallel 306 ms ok 156 - vacuum_parallel 301 ms # parallel group (2 tests): subscription publication ok 157 + publication 756 ms ok 158 + subscription 132 ms # parallel group (17 tests): advisory_lock portals_p2 combocid xmlmap tsdicts functional_deps guc equivclass dependency select_views indirect_toast window bitmapops cluster tsearch foreign_data foreign_key ok 159 + select_views 665 ms ok 160 + portals_p2 156 ms ok 161 + foreign_key 4586 ms ok 162 + cluster 1332 ms ok 163 + dependency 351 ms ok 164 + guc 303 ms ok 165 + bitmapops 1230 ms ok 166 + combocid 183 ms ok 167 + tsearch 1394 ms ok 168 + tsdicts 258 ms ok 169 + foreign_data 2157 ms ok 170 + window 1219 ms ok 171 + xmlmap 202 ms ok 172 + functional_deps 278 ms ok 173 + advisory_lock 145 ms ok 174 + indirect_toast 1119 ms ok 175 + equivclass 321 ms # parallel group (7 tests): json_encoding jsonpath_encoding jsonpath sqljson json jsonb_jsonpath jsonb ok 176 + json 310 ms ok 177 + jsonb 1329 ms ok 178 + json_encoding 77 ms ok 179 + jsonpath 149 ms ok 180 + jsonpath_encoding 82 ms ok 181 + jsonb_jsonpath 671 ms ok 182 + sqljson 162 ms # parallel group (18 tests): prepare returning plancache limit conversion temp sequence copy2 polymorphism truncate largeobject rangefuncs with rowtypes domain xml plpgsql alter_table ok 183 + plancache 509 ms ok 184 + limit 584 ms ok 185 + plpgsql 4590 ms ok 186 + copy2 961 ms ok 187 + temp 654 ms ok 188 + domain 1307 ms ok 189 + rangefuncs 1232 ms ok 190 + prepare 179 ms ok 191 + conversion 633 ms ok 192 + truncate 1158 ms ok 193 + alter_table 6587 ms ok 194 + sequence 842 ms ok 195 + polymorphism 1102 ms ok 196 + rowtypes 1293 ms ok 197 + returning 269 ms ok 198 + largeobject 1187 ms ok 199 + with 1253 ms ok 200 + xml 2847 ms # parallel group (14 tests): hash_part predicate reloptions partition_info explain memoize eager_aggregate compression stats partition_aggregate partition_prune indexing partition_join tuplesort ok 201 + partition_join 3335 ms ok 202 + partition_prune 3102 ms ok 203 + reloptions 332 ms ok 204 + hash_part 162 ms ok 205 + indexing 3293 ms ok 206 + partition_aggregate 3020 ms ok 207 + partition_info 354 ms ok 208 + tuplesort 3499 ms ok 209 + explain 394 ms ok 210 + compression 1248 ms ok 211 + memoize 740 ms ok 212 + stats 1809 ms ok 213 + predicate 163 ms not ok 214 + eager_aggregate 1089 ms # parallel group (2 tests): oidjoins event_trigger ok 215 + oidjoins 482 ms ok 216 + event_trigger 556 ms ok 217 - event_trigger_login 92 ms ok 218 - fast_default 372 ms ok 219 - tablespace 1920 ms 1..219 # 1 of 219 tests failed. # The differences that caused some tests to fail can be viewed in the file "/tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/data/regression.diffs". # A copy of the test summary that you see above is saved in the file "/tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/data/regression.out". === dumping /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/data/regression.diffs === diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/eager_aggregate.out /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/data/results/eager_aggregate.out --- /tmp/cirrus-ci-build/src/test/regress/expected/eager_aggregate.out 2024-03-05 11:34:40.681578566 +0000 +++ /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/data/results/eager_aggregate.out 2024-03-05 11:42:02.061207577 +0000 @@ -20,27 +20,24 @@ -- and finalize the aggregation. EXPLAIN (VERBOSE, COSTS OFF) SELECT t1.a, avg(t2.c) FROM eager_agg_t1 t1 JOIN eager_agg_t2 t2 ON t1.b = t2.b GROUP BY t1.a ORDER BY t1.a; - QUERY PLAN ------------------------------------------------------------------- - Finalize GroupAggregate + QUERY PLAN +------------------------------------------------------------ + GroupAggregate Output: t1.a, avg(t2.c) Group Key: t1.a -> Sort - Output: t1.a, (PARTIAL avg(t2.c)) + Output: t1.a, t2.c Sort Key: t1.a -> Hash Join - Output: t1.a, (PARTIAL avg(t2.c)) - Hash Cond: (t1.b = t2.b) - -> Seq Scan on public.eager_agg_t1 t1 - Output: t1.a, t1.b, t1.c + Output: t1.a, t2.c + Hash Cond: (t2.b = t1.b) + -> Seq Scan on public.eager_agg_t2 t2 + Output: t2.a, t2.b, t2.c -> Hash - Output: t2.b, (PARTIAL avg(t2.c)) - -> Partial HashAggregate - Output: t2.b, PARTIAL avg(t2.c) - Group Key: t2.b - -> Seq Scan on public.eager_agg_t2 t2 - Output: t2.a, t2.b, t2.c -(18 rows) + Output: t1.a, t1.b + -> Seq Scan on public.eager_agg_t1 t1 + Output: t1.a, t1.b +(15 rows) SELECT t1.a, avg(t2.c) FROM eager_agg_t1 t1 JOIN eager_agg_t2 t2 ON t1.b = t2.b GROUP BY t1.a ORDER BY t1.a; a | avg @@ -60,30 +57,24 @@ SET enable_hashagg TO off; EXPLAIN (VERBOSE, COSTS OFF) SELECT t1.a, avg(t2.c) FROM eager_agg_t1 t1 JOIN eager_agg_t2 t2 ON t1.b = t2.b GROUP BY t1.a ORDER BY t1.a; - QUERY PLAN ------------------------------------------------------------------------- - Finalize GroupAggregate + QUERY PLAN +------------------------------------------------------------ + GroupAggregate Output: t1.a, avg(t2.c) Group Key: t1.a -> Sort - Output: t1.a, (PARTIAL avg(t2.c)) + Output: t1.a, t2.c Sort Key: t1.a -> Hash Join - Output: t1.a, (PARTIAL avg(t2.c)) - Hash Cond: (t1.b = t2.b) - -> Seq Scan on public.eager_agg_t1 t1 - Output: t1.a, t1.b, t1.c + Output: t1.a, t2.c + Hash Cond: (t2.b = t1.b) + -> Seq Scan on public.eager_agg_t2 t2 + Output: t2.a, t2.b, t2.c -> Hash - Output: t2.b, (PARTIAL avg(t2.c)) - -> Partial GroupAggregate - Output: t2.b, PARTIAL avg(t2.c) - Group Key: t2.b - -> Sort - Output: t2.c, t2.b - Sort Key: t2.b - -> Seq Scan on public.eager_agg_t2 t2 - Output: t2.c, t2.b -(21 rows) + Output: t1.a, t1.b + -> Seq Scan on public.eager_agg_t1 t1 + Output: t1.a, t1.b +(15 rows) SELECT t1.a, avg(t2.c) FROM eager_agg_t1 t1 JOIN eager_agg_t2 t2 ON t1.b = t2.b GROUP BY t1.a ORDER BY t1.a; a | avg @@ -107,34 +98,31 @@ -- and finalize the aggregation. EXPLAIN (VERBOSE, COSTS OFF) SELECT t1.a, avg(t2.c + t3.c) FROM eager_agg_t1 t1 JOIN eager_agg_t2 t2 ON t1.b = t2.b JOIN eager_agg_t3 t3 ON t2.a = t3.a GROUP BY t1.a ORDER BY t1.a; - QUERY PLAN ------------------------------------------------------------------------------- - Finalize GroupAggregate + QUERY PLAN +------------------------------------------------------------------ + GroupAggregate Output: t1.a, avg((t2.c + t3.c)) Group Key: t1.a -> Sort - Output: t1.a, (PARTIAL avg((t2.c + t3.c))) + Output: t1.a, t2.c, t3.c Sort Key: t1.a -> Hash Join - Output: t1.a, (PARTIAL avg((t2.c + t3.c))) - Hash Cond: (t1.b = t2.b) - -> Seq Scan on public.eager_agg_t1 t1 - Output: t1.a, t1.b, t1.c + Output: t1.a, t2.c, t3.c + Hash Cond: (t2.b = t1.b) + -> Hash Join + Output: t2.c, t2.b, t3.c + Hash Cond: (t3.a = t2.a) + -> Seq Scan on public.eager_agg_t3 t3 + Output: t3.a, t3.b, t3.c + -> Hash + Output: t2.c, t2.b, t2.a + -> Seq Scan on public.eager_agg_t2 t2 + Output: t2.c, t2.b, t2.a -> Hash - Output: t2.b, (PARTIAL avg((t2.c + t3.c))) - -> Partial HashAggregate - Output: t2.b, PARTIAL avg((t2.c + t3.c)) - Group Key: t2.b - -> Hash Join - Output: t2.c, t3.c, t2.b - Hash Cond: (t3.a = t2.a) - -> Seq Scan on public.eager_agg_t3 t3 - Output: t3.a, t3.b, t3.c - -> Hash - Output: t2.c, t2.b, t2.a - -> Seq Scan on public.eager_agg_t2 t2 - Output: t2.c, t2.b, t2.a -(25 rows) + Output: t1.a, t1.b + -> Seq Scan on public.eager_agg_t1 t1 + Output: t1.a, t1.b +(22 rows) SELECT t1.a, avg(t2.c + t3.c) FROM eager_agg_t1 t1 JOIN eager_agg_t2 t2 ON t1.b = t2.b JOIN eager_agg_t3 t3 ON t2.a = t3.a GROUP BY t1.a ORDER BY t1.a; a | avg @@ -154,37 +142,31 @@ SET enable_hashagg TO off; EXPLAIN (VERBOSE, COSTS OFF) SELECT t1.a, avg(t2.c + t3.c) FROM eager_agg_t1 t1 JOIN eager_agg_t2 t2 ON t1.b = t2.b JOIN eager_agg_t3 t3 ON t2.a = t3.a GROUP BY t1.a ORDER BY t1.a; - QUERY PLAN ------------------------------------------------------------------------------------- - Finalize GroupAggregate + QUERY PLAN +------------------------------------------------------------------ + GroupAggregate Output: t1.a, avg((t2.c + t3.c)) Group Key: t1.a -> Sort - Output: t1.a, (PARTIAL avg((t2.c + t3.c))) + Output: t1.a, t2.c, t3.c Sort Key: t1.a -> Hash Join - Output: t1.a, (PARTIAL avg((t2.c + t3.c))) - Hash Cond: (t1.b = t2.b) - -> Seq Scan on public.eager_agg_t1 t1 - Output: t1.a, t1.b, t1.c + Output: t1.a, t2.c, t3.c + Hash Cond: (t2.b = t1.b) + -> Hash Join + Output: t2.c, t2.b, t3.c + Hash Cond: (t3.a = t2.a) + -> Seq Scan on public.eager_agg_t3 t3 + Output: t3.a, t3.b, t3.c + -> Hash + Output: t2.c, t2.b, t2.a + -> Seq Scan on public.eager_agg_t2 t2 + Output: t2.c, t2.b, t2.a -> Hash - Output: t2.b, (PARTIAL avg((t2.c + t3.c))) - -> Partial GroupAggregate - Output: t2.b, PARTIAL avg((t2.c + t3.c)) - Group Key: t2.b - -> Sort - Output: t2.c, t3.c, t2.b - Sort Key: t2.b - -> Hash Join - Output: t2.c, t3.c, t2.b - Hash Cond: (t3.a = t2.a) - -> Seq Scan on public.eager_agg_t3 t3 - Output: t3.a, t3.b, t3.c - -> Hash - Output: t2.c, t2.b, t2.a - -> Seq Scan on public.eager_agg_t2 t2 - Output: t2.c, t2.b, t2.a -(28 rows) + Output: t1.a, t1.b + -> Seq Scan on public.eager_agg_t1 t1 + Output: t1.a, t1.b +(22 rows) SELECT t1.a, avg(t2.c + t3.c) FROM eager_agg_t1 t1 JOIN eager_agg_t2 t2 ON t1.b = t2.b JOIN eager_agg_t3 t3 ON t2.a = t3.a GROUP BY t1.a ORDER BY t1.a; a | avg @@ -207,27 +189,24 @@ -- Ensure aggregation can be pushed down to the non-nullable side EXPLAIN (VERBOSE, COSTS OFF) SELECT t1.a, avg(t2.c) FROM eager_agg_t1 t1 RIGHT JOIN eager_agg_t2 t2 ON t1.b = t2.b GROUP BY t1.a ORDER BY t1.a; - QUERY PLAN ------------------------------------------------------------------- - Finalize GroupAggregate + QUERY PLAN +------------------------------------------------------------ + GroupAggregate Output: t1.a, avg(t2.c) Group Key: t1.a -> Sort - Output: t1.a, (PARTIAL avg(t2.c)) + Output: t1.a, t2.c Sort Key: t1.a - -> Hash Right Join - Output: t1.a, (PARTIAL avg(t2.c)) - Hash Cond: (t1.b = t2.b) - -> Seq Scan on public.eager_agg_t1 t1 - Output: t1.a, t1.b, t1.c + -> Hash Left Join + Output: t1.a, t2.c + Hash Cond: (t2.b = t1.b) + -> Seq Scan on public.eager_agg_t2 t2 + Output: t2.a, t2.b, t2.c -> Hash - Output: t2.b, (PARTIAL avg(t2.c)) - -> Partial HashAggregate - Output: t2.b, PARTIAL avg(t2.c) - Group Key: t2.b - -> Seq Scan on public.eager_agg_t2 t2 - Output: t2.a, t2.b, t2.c -(18 rows) + Output: t1.a, t1.b + -> Seq Scan on public.eager_agg_t1 t1 + Output: t1.a, t1.b +(15 rows) SELECT t1.a, avg(t2.c) FROM eager_agg_t1 t1 RIGHT JOIN eager_agg_t2 t2 ON t1.b = t2.b GROUP BY t1.a ORDER BY t1.a; a | avg === EOF === [11:42:07.641](52.447s) not ok 5 - regression tests pass [11:42:07.642](0.000s) # Failed test 'regression tests pass' # at /tmp/cirrus-ci-build/src/bin/pg_upgrade/t/002_pg_upgrade.pl line 212. [11:42:07.642](0.000s) # got: '256' # expected: '0' # Checking port 55340 # Found port 55340 Name: new_node Data directory: /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/data/t_002_pg_upgrade_new_node_data/pgdata Backup directory: /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/data/t_002_pg_upgrade_new_node_data/backup Archive directory: /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/data/t_002_pg_upgrade_new_node_data/archives Connection string: port=55340 host=/tmp/XM0vM4Wuxb Log file: /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/log/002_pg_upgrade_new_node.log [11:42:07.665](0.023s) # initializing database system by running initdb # Running: initdb -D /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/data/t_002_pg_upgrade_new_node_data/pgdata -A trust -N --wal-segsize 1 --allow-group-access --encoding SQL_ASCII --locale-provider libc The files belonging to this database system will be owned by user "postgres". This user must also own the server process. The database cluster will be initialized with locale "C". The default text search configuration will be set to "english". Data page checksums are disabled. creating directory /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/data/t_002_pg_upgrade_new_node_data/pgdata ... ok creating subdirectories ... ok selecting dynamic shared memory implementation ... posix selecting default max_connections ... 100 selecting default shared_buffers ... 128MB selecting default time zone ... Etc/UTC creating configuration files ... ok running bootstrap script ... ok performing post-bootstrap initialization ... ok Sync to disk skipped. The data directory might become corrupt if the operating system crashes. Success. You can now start the database server using: pg_ctl -D /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/data/t_002_pg_upgrade_new_node_data/pgdata -l logfile start # Running: /tmp/cirrus-ci-build/build-32/src/test/regress/pg_regress --config-auth /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/data/t_002_pg_upgrade_new_node_data/pgdata # Running: pg_dumpall --no-sync -d port=55339 host=/tmp/XM0vM4Wuxb dbname='postgres' -f /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/data/tmp_test_2SJY/dump1.sql [11:42:13.961](6.296s) ok 6 - dump before running pg_upgrade ### Stopping node "old_node" using mode fast # Running: pg_ctl -D /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/data/t_002_pg_upgrade_old_node_data/pgdata -m fast stop waiting for server to shut down.... done server stopped # No postmaster PID for node "old_node" # Running: pg_upgrade --no-sync -d /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/data/t_002_pg_upgrade_old_node_data/pgdata -D /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/data/t_002_pg_upgrade_new_node_data/pgdata -b /tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/bin/does/not/exist/ -B /tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/bin -s /tmp/XM0vM4Wuxb -p 55339 -P 55340 --copy --check check for "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/bin/does/not/exist" failed: No such file or directory Failure, exiting [11:42:14.209](0.248s) ok 7 - run of pg_upgrade --check for new instance with incorrect binary path [11:42:14.209](0.000s) ok 8 - pg_upgrade_output.d/ not removed after pg_upgrade failure # Running: pg_upgrade --no-sync -d /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/data/t_002_pg_upgrade_old_node_data/pgdata -D /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/data/t_002_pg_upgrade_new_node_data/pgdata -b /tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/bin -B /tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/bin -s /tmp/XM0vM4Wuxb -p 55339 -P 55340 --copy --check [11:42:15.225](1.016s) ok 9 - invalid database causes failure status (got 1 vs expected 1) [11:42:15.225](0.000s) ok 10 - invalid database causes failure stdout /(?^:invalid)/ [11:42:15.225](0.000s) ok 11 - invalid database causes failure stderr /(?^:)/ ### Starting node "old_node" # Running: pg_ctl -w -D /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/data/t_002_pg_upgrade_old_node_data/pgdata -l /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/log/002_pg_upgrade_old_node.log -o --cluster-name=old_node start waiting for server to start.... done server started # Postmaster PID for node "old_node" is 73685 ### Stopping node "old_node" using mode fast # Running: pg_ctl -D /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/data/t_002_pg_upgrade_old_node_data/pgdata -m fast stop waiting for server to shut down.... done server stopped # No postmaster PID for node "old_node" # Running: pg_upgrade --no-sync -d /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/data/t_002_pg_upgrade_old_node_data/pgdata -D /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/data/t_002_pg_upgrade_new_node_data/pgdata -b /tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/bin -B /tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/bin -s /tmp/XM0vM4Wuxb -p 55339 -P 55340 --copy --check Performing Consistency Checks ----------------------------- Checking cluster versions ok Checking database user is the install user ok Checking database connection settings ok Checking for prepared transactions ok Checking for system-defined composite types in user tables ok Checking for reg* data types in user tables ok Checking for contrib/isn with bigint-passing mismatch ok Checking for valid logical replication slots ok Checking for subscription state ok Checking for presence of required libraries ok Checking database user is the install user ok Checking for prepared transactions ok Checking for new cluster tablespace directories ok *Clusters are compatible* [11:42:18.183](2.958s) ok 12 - run of pg_upgrade --check for new instance [11:42:18.183](0.000s) ok 13 - pg_upgrade_output.d/ removed after pg_upgrade --check success # Running: pg_upgrade --no-sync -d /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/data/t_002_pg_upgrade_old_node_data/pgdata -D /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/data/t_002_pg_upgrade_new_node_data/pgdata -b /tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/bin -B /tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/bin -s /tmp/XM0vM4Wuxb -p 55339 -P 55340 --copy Performing Consistency Checks ----------------------------- Checking cluster versions ok Checking database user is the install user ok Checking database connection settings ok Checking for prepared transactions ok Checking for system-defined composite types in user tables ok Checking for reg* data types in user tables ok Checking for contrib/isn with bigint-passing mismatch ok Checking for valid logical replication slots ok Checking for subscription state ok Creating dump of global objects ok Creating dump of database schemas ok Checking for presence of required libraries ok Checking database user is the install user ok Checking for prepared transactions ok Checking for new cluster tablespace directories ok If pg_upgrade fails after this point, you must re-initdb the new cluster before continuing. Performing Upgrade ------------------ Setting locale and encoding for new cluster ok Analyzing all rows in the new cluster ok Freezing all rows in the new cluster ok Deleting files from new pg_xact ok Copying old pg_xact to new server ok Setting oldest XID for new cluster ok Setting next transaction ID and epoch for new cluster ok Deleting files from new pg_multixact/offsets ok Copying old pg_multixact/offsets to new server ok Deleting files from new pg_multixact/members ok Copying old pg_multixact/members to new server ok Setting next multixact ID and offset for new cluster ok Resetting WAL archives ok Setting frozenxid and minmxid counters in new cluster ok Restoring global objects in the new cluster ok Restoring database schemas in the new cluster ok Copying user relation files ok Setting next OID for new cluster ok Creating script to delete old cluster ok Checking for extension updates ok Upgrade Complete ---------------- Optimizer statistics are not transferred by pg_upgrade. Once you start the new server, consider running: /tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/bin/vacuumdb --all --analyze-in-stages Running this script will delete the old cluster's data files: ./delete_old_cluster.sh [11:42:36.358](18.175s) ok 14 - run of pg_upgrade for new instance [11:42:36.358](0.000s) ok 15 - pg_upgrade_output.d/ removed after pg_upgrade success ### Starting node "new_node" # Running: pg_ctl -w -D /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/data/t_002_pg_upgrade_new_node_data/pgdata -l /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/log/002_pg_upgrade_new_node.log -o --cluster-name=new_node start waiting for server to start.... done server started # Postmaster PID for node "new_node" is 77427 [11:42:36.564](0.206s) ok 16 - check that locales in new cluster match original cluster # Running: pg_dumpall --no-sync -d port=55340 host=/tmp/XM0vM4Wuxb dbname='postgres' -f /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/data/tmp_test_2SJY/dump2.sql [11:42:39.716](3.152s) ok 17 - dump after running pg_upgrade [11:42:39.815](0.099s) ok 18 - old and new dumps match after pg_upgrade [11:42:39.815](0.000s) 1..18 ### Stopping node "new_node" using mode immediate # Running: pg_ctl -D /tmp/cirrus-ci-build/build-32/testrun/pg_upgrade/002_pg_upgrade/data/t_002_pg_upgrade_new_node_data/pgdata -m immediate stop waiting for server to shut down.... done server stopped # No postmaster PID for node "new_node" [11:42:39.934](0.119s) # Looks like you failed 1 test of 18.