diff -U3 /tmp/cirrus-ci-build/src/test/modules/injection_points/expected/crash.out /tmp/cirrus-ci-build/build/testrun/injection_points/isolation/results/crash.out --- /tmp/cirrus-ci-build/src/test/modules/injection_points/expected/crash.out 2025-01-15 19:17:07.579536000 +0000 +++ /tmp/cirrus-ci-build/build/testrun/injection_points/isolation/results/crash.out 2025-01-15 19:20:46.175232000 +0000 @@ -23,4 +23,16 @@ step c2: COMMIT; ERROR: could not serialize access due to read/write dependencies among transactions -step c3: COMMIT; +ERROR: ResourceOwnerEnlarge called after release started +s2: WARNING: AbortTransaction while in ABORT state +server closed the connection unexpectedly + This probably means the server terminated abnormally + before or while processing the request. + +s3: WARNING: terminating connection because of crash of another server process +DETAIL: The postmaster has commanded this server process to roll back the current transaction and exit, because another server process exited abnormally and possibly corrupted shared memory. +HINT: In a moment you should be able to reconnect to the database and repeat your command. +PQconsumeInput failed: server closed the connection unexpectedly + This probably means the server terminated abnormally + before or while processing the request. + diff -U3 /tmp/cirrus-ci-build/src/test/modules/injection_points/expected/inplace.out /tmp/cirrus-ci-build/build/testrun/injection_points/isolation/results/inplace.out --- /tmp/cirrus-ci-build/src/test/modules/injection_points/expected/inplace.out 2025-01-15 19:17:07.579715000 +0000 +++ /tmp/cirrus-ci-build/build/testrun/injection_points/isolation/results/inplace.out 2025-01-15 19:20:46.376579000 +0000 @@ -1,340 +1,4 @@ Parsed test spec with 3 sessions starting permutation: vac1 grant2 vac3 mkrels3 read1 -mkrels ------- - -(1 row) - -injection_points_attach ------------------------ - -(1 row) - -step vac1: VACUUM vactest.orig50; -- wait during inplace update -step grant2: GRANT SELECT ON TABLE vactest.orig50 TO PUBLIC; -step vac3: VACUUM pg_class; -step mkrels3: - SELECT vactest.mkrels('intruder', 1, 100); -- repopulate LP_UNUSED - SELECT injection_points_detach('inplace-before-pin'); - SELECT injection_points_wakeup('inplace-before-pin'); - -mkrels ------- - -(1 row) - -injection_points_detach ------------------------ - -(1 row) - -injection_points_wakeup ------------------------ - -(1 row) - -step vac1: <... completed> -step read1: - REINDEX TABLE pg_class; -- look for duplicates - SELECT reltuples = -1 AS reltuples_unknown - FROM pg_class WHERE oid = 'vactest.orig50'::regclass; - -reltuples_unknown ------------------ -f -(1 row) - - -starting permutation: begin2 grant2 vac1 c2 vac3 mkrels3 read1 -mkrels ------- - -(1 row) - -injection_points_attach ------------------------ - -(1 row) - -step begin2: BEGIN; -step grant2: GRANT SELECT ON TABLE vactest.orig50 TO PUBLIC; -step vac1: VACUUM vactest.orig50; -- wait during inplace update -step c2: COMMIT; -step vac3: VACUUM pg_class; -step mkrels3: - SELECT vactest.mkrels('intruder', 1, 100); -- repopulate LP_UNUSED - SELECT injection_points_detach('inplace-before-pin'); - SELECT injection_points_wakeup('inplace-before-pin'); - -mkrels ------- - -(1 row) - -injection_points_detach ------------------------ - -(1 row) - -injection_points_wakeup ------------------------ - -(1 row) - -step vac1: <... completed> -step read1: - REINDEX TABLE pg_class; -- look for duplicates - SELECT reltuples = -1 AS reltuples_unknown - FROM pg_class WHERE oid = 'vactest.orig50'::regclass; - -reltuples_unknown ------------------ -f -(1 row) - - -starting permutation: begin2 grant2 vac1 r2 vac3 mkrels3 read1 -mkrels ------- - -(1 row) - -injection_points_attach ------------------------ - -(1 row) - -step begin2: BEGIN; -step grant2: GRANT SELECT ON TABLE vactest.orig50 TO PUBLIC; -step vac1: VACUUM vactest.orig50; -- wait during inplace update -step r2: ROLLBACK; -step vac3: VACUUM pg_class; -step mkrels3: - SELECT vactest.mkrels('intruder', 1, 100); -- repopulate LP_UNUSED - SELECT injection_points_detach('inplace-before-pin'); - SELECT injection_points_wakeup('inplace-before-pin'); - -mkrels ------- - -(1 row) - -injection_points_detach ------------------------ - -(1 row) - -injection_points_wakeup ------------------------ - -(1 row) - -step vac1: <... completed> -step read1: - REINDEX TABLE pg_class; -- look for duplicates - SELECT reltuples = -1 AS reltuples_unknown - FROM pg_class WHERE oid = 'vactest.orig50'::regclass; - -reltuples_unknown ------------------ -f -(1 row) - - -starting permutation: begin2 grant2 vac1 c2 revoke2 grant2 vac3 mkrels3 read1 -mkrels ------- - -(1 row) - -injection_points_attach ------------------------ - -(1 row) - -step begin2: BEGIN; -step grant2: GRANT SELECT ON TABLE vactest.orig50 TO PUBLIC; -step vac1: VACUUM vactest.orig50; -- wait during inplace update -step c2: COMMIT; -step revoke2: REVOKE SELECT ON TABLE vactest.orig50 FROM PUBLIC; -step grant2: GRANT SELECT ON TABLE vactest.orig50 TO PUBLIC; -step vac3: VACUUM pg_class; -step mkrels3: - SELECT vactest.mkrels('intruder', 1, 100); -- repopulate LP_UNUSED - SELECT injection_points_detach('inplace-before-pin'); - SELECT injection_points_wakeup('inplace-before-pin'); - -mkrels ------- - -(1 row) - -injection_points_detach ------------------------ - -(1 row) - -injection_points_wakeup ------------------------ - -(1 row) - -step vac1: <... completed> -step read1: - REINDEX TABLE pg_class; -- look for duplicates - SELECT reltuples = -1 AS reltuples_unknown - FROM pg_class WHERE oid = 'vactest.orig50'::regclass; - -reltuples_unknown ------------------ -f -(1 row) - - -starting permutation: vac1 begin2 grant2 revoke2 mkrels3 c2 read1 -mkrels ------- - -(1 row) - -injection_points_attach ------------------------ - -(1 row) - -step vac1: VACUUM vactest.orig50; -- wait during inplace update -step begin2: BEGIN; -step grant2: GRANT SELECT ON TABLE vactest.orig50 TO PUBLIC; -step revoke2: REVOKE SELECT ON TABLE vactest.orig50 FROM PUBLIC; -step mkrels3: - SELECT vactest.mkrels('intruder', 1, 100); -- repopulate LP_UNUSED - SELECT injection_points_detach('inplace-before-pin'); - SELECT injection_points_wakeup('inplace-before-pin'); - -mkrels ------- - -(1 row) - -injection_points_detach ------------------------ - -(1 row) - -injection_points_wakeup ------------------------ - -(1 row) - -step c2: COMMIT; -step vac1: <... completed> -step read1: - REINDEX TABLE pg_class; -- look for duplicates - SELECT reltuples = -1 AS reltuples_unknown - FROM pg_class WHERE oid = 'vactest.orig50'::regclass; - -reltuples_unknown ------------------ -f -(1 row) - - -starting permutation: begin2 grant2 vac1 r2 grant2 revoke2 vac3 mkrels3 read1 -mkrels ------- - -(1 row) - -injection_points_attach ------------------------ - -(1 row) - -step begin2: BEGIN; -step grant2: GRANT SELECT ON TABLE vactest.orig50 TO PUBLIC; -step vac1: VACUUM vactest.orig50; -- wait during inplace update -step r2: ROLLBACK; -step grant2: GRANT SELECT ON TABLE vactest.orig50 TO PUBLIC; -step revoke2: REVOKE SELECT ON TABLE vactest.orig50 FROM PUBLIC; -step vac3: VACUUM pg_class; -step mkrels3: - SELECT vactest.mkrels('intruder', 1, 100); -- repopulate LP_UNUSED - SELECT injection_points_detach('inplace-before-pin'); - SELECT injection_points_wakeup('inplace-before-pin'); - -mkrels ------- - -(1 row) - -injection_points_detach ------------------------ - -(1 row) - -injection_points_wakeup ------------------------ - -(1 row) - -step vac1: <... completed> -step read1: - REINDEX TABLE pg_class; -- look for duplicates - SELECT reltuples = -1 AS reltuples_unknown - FROM pg_class WHERE oid = 'vactest.orig50'::regclass; - -reltuples_unknown ------------------ -f -(1 row) - - -starting permutation: begin2 grant2 vac1 c2 revoke2 vac3 mkrels3 read1 -mkrels ------- - -(1 row) - -injection_points_attach ------------------------ - -(1 row) - -step begin2: BEGIN; -step grant2: GRANT SELECT ON TABLE vactest.orig50 TO PUBLIC; -step vac1: VACUUM vactest.orig50; -- wait during inplace update -step c2: COMMIT; -step revoke2: REVOKE SELECT ON TABLE vactest.orig50 FROM PUBLIC; -step vac3: VACUUM pg_class; -step mkrels3: - SELECT vactest.mkrels('intruder', 1, 100); -- repopulate LP_UNUSED - SELECT injection_points_detach('inplace-before-pin'); - SELECT injection_points_wakeup('inplace-before-pin'); - -mkrels ------- - -(1 row) - -injection_points_detach ------------------------ - -(1 row) - -injection_points_wakeup ------------------------ - -(1 row) - -step vac1: <... completed> -step read1: - REINDEX TABLE pg_class; -- look for duplicates - SELECT reltuples = -1 AS reltuples_unknown - FROM pg_class WHERE oid = 'vactest.orig50'::regclass; - -reltuples_unknown ------------------ -f -(1 row) - +setup failed: ERROR: extension "injection_points" already exists