mirror of https://github.com/postgres/postgres
These were removed in 5dee7a603f, but that was too optimistic, per
buildfarm member prion as reported by Tom Lane. Mea (Álvaro's) culpa.
Author: Mihail Nikalayeu <mihailnikalayeu@gmail.com>
Discussion: https://postgr.es/m/570630.1764737028@sss.pgh.pa.us
pull/256/head
parent
64527a17a5
commit
be25c77677
@ -0,0 +1,124 @@ |
|||||||
|
Parsed test spec with 5 sessions |
||||||
|
|
||||||
|
starting permutation: s1_attach_invalidate_catalog_snapshot s4_wakeup_s1_setup s3_start_create_index s1_start_upsert s4_wakeup_define_index_before_set_valid s2_start_upsert s5_wakeup_s1_from_invalidate_catalog_snapshot s4_wakeup_s2 s4_wakeup_s1 |
||||||
|
injection_points_attach |
||||||
|
----------------------- |
||||||
|
|
||||||
|
(1 row) |
||||||
|
|
||||||
|
injection_points_attach |
||||||
|
----------------------- |
||||||
|
|
||||||
|
(1 row) |
||||||
|
|
||||||
|
injection_points_attach |
||||||
|
----------------------- |
||||||
|
|
||||||
|
(1 row) |
||||||
|
|
||||||
|
step s1_attach_invalidate_catalog_snapshot: |
||||||
|
SELECT injection_points_attach('invalidate-catalog-snapshot-end', 'wait'); |
||||||
|
<waiting ...> |
||||||
|
step s4_wakeup_s1_setup: |
||||||
|
SELECT CASE WHEN |
||||||
|
(SELECT pid FROM pg_stat_activity |
||||||
|
WHERE wait_event_type = 'InjectionPoint' AND |
||||||
|
wait_event = 'invalidate-catalog-snapshot-end') IS NOT NULL |
||||||
|
THEN injection_points_wakeup('invalidate-catalog-snapshot-end') |
||||||
|
END; |
||||||
|
|
||||||
|
case |
||||||
|
---- |
||||||
|
|
||||||
|
(1 row) |
||||||
|
|
||||||
|
step s1_attach_invalidate_catalog_snapshot: <... completed> |
||||||
|
injection_points_attach |
||||||
|
----------------------- |
||||||
|
|
||||||
|
(1 row) |
||||||
|
|
||||||
|
step s3_start_create_index: |
||||||
|
CREATE UNIQUE INDEX CONCURRENTLY tbl_pkey_special_duplicate ON test.tbl(abs(i)) WHERE i < 10000; |
||||||
|
<waiting ...> |
||||||
|
step s1_start_upsert: |
||||||
|
INSERT INTO test.tbl VALUES(13,now()) ON CONFLICT (abs(i)) WHERE i < 100 DO UPDATE SET updated_at = now(); |
||||||
|
<waiting ...> |
||||||
|
step s4_wakeup_define_index_before_set_valid: |
||||||
|
SELECT injection_points_detach('define-index-before-set-valid'); |
||||||
|
SELECT injection_points_wakeup('define-index-before-set-valid'); |
||||||
|
|
||||||
|
injection_points_detach |
||||||
|
----------------------- |
||||||
|
|
||||||
|
(1 row) |
||||||
|
|
||||||
|
injection_points_wakeup |
||||||
|
----------------------- |
||||||
|
|
||||||
|
(1 row) |
||||||
|
|
||||||
|
step s2_start_upsert: |
||||||
|
INSERT INTO test.tbl VALUES(13,now()) ON CONFLICT (abs(i)) WHERE i < 100 DO UPDATE SET updated_at = now(); |
||||||
|
<waiting ...> |
||||||
|
step s5_wakeup_s1_from_invalidate_catalog_snapshot: |
||||||
|
DO $$ |
||||||
|
DECLARE |
||||||
|
v_waiting_pid INTEGER; |
||||||
|
BEGIN |
||||||
|
LOOP |
||||||
|
SELECT pid INTO v_waiting_pid |
||||||
|
FROM pg_stat_activity |
||||||
|
WHERE wait_event_type = 'InjectionPoint' |
||||||
|
AND wait_event = 'invalidate-catalog-snapshot-end' |
||||||
|
LIMIT 1; |
||||||
|
EXIT WHEN v_waiting_pid IS NOT NULL; |
||||||
|
PERFORM pg_sleep(100); |
||||||
|
END LOOP; |
||||||
|
END |
||||||
|
$$; |
||||||
|
|
||||||
|
SELECT injection_points_detach('invalidate-catalog-snapshot-end'); |
||||||
|
SELECT injection_points_wakeup('invalidate-catalog-snapshot-end'); |
||||||
|
|
||||||
|
injection_points_detach |
||||||
|
----------------------- |
||||||
|
|
||||||
|
(1 row) |
||||||
|
|
||||||
|
injection_points_wakeup |
||||||
|
----------------------- |
||||||
|
|
||||||
|
(1 row) |
||||||
|
|
||||||
|
step s4_wakeup_s2: |
||||||
|
SELECT injection_points_detach('exec-insert-before-insert-speculative'); |
||||||
|
SELECT injection_points_wakeup('exec-insert-before-insert-speculative'); |
||||||
|
|
||||||
|
injection_points_detach |
||||||
|
----------------------- |
||||||
|
|
||||||
|
(1 row) |
||||||
|
|
||||||
|
injection_points_wakeup |
||||||
|
----------------------- |
||||||
|
|
||||||
|
(1 row) |
||||||
|
|
||||||
|
step s4_wakeup_s1: |
||||||
|
SELECT injection_points_detach('check-exclusion-or-unique-constraint-no-conflict'); |
||||||
|
SELECT injection_points_wakeup('check-exclusion-or-unique-constraint-no-conflict'); |
||||||
|
|
||||||
|
injection_points_detach |
||||||
|
----------------------- |
||||||
|
|
||||||
|
(1 row) |
||||||
|
|
||||||
|
injection_points_wakeup |
||||||
|
----------------------- |
||||||
|
|
||||||
|
(1 row) |
||||||
|
|
||||||
|
step s1_start_upsert: <... completed> |
||||||
|
step s2_start_upsert: <... completed> |
||||||
|
step s3_start_create_index: <... completed> |
||||||
@ -0,0 +1,124 @@ |
|||||||
|
Parsed test spec with 5 sessions |
||||||
|
|
||||||
|
starting permutation: s1_attach_invalidate_catalog_snapshot s4_wakeup_s1_setup s3_start_create_index s1_start_upsert s4_wakeup_define_index_before_set_valid s2_start_upsert s5_wakeup_s1_from_invalidate_catalog_snapshot s4_wakeup_s2 s4_wakeup_s1 |
||||||
|
injection_points_attach |
||||||
|
----------------------- |
||||||
|
|
||||||
|
(1 row) |
||||||
|
|
||||||
|
injection_points_attach |
||||||
|
----------------------- |
||||||
|
|
||||||
|
(1 row) |
||||||
|
|
||||||
|
injection_points_attach |
||||||
|
----------------------- |
||||||
|
|
||||||
|
(1 row) |
||||||
|
|
||||||
|
step s1_attach_invalidate_catalog_snapshot: |
||||||
|
SELECT injection_points_attach('invalidate-catalog-snapshot-end', 'wait'); |
||||||
|
<waiting ...> |
||||||
|
step s4_wakeup_s1_setup: |
||||||
|
SELECT CASE WHEN |
||||||
|
(SELECT pid FROM pg_stat_activity |
||||||
|
WHERE wait_event_type = 'InjectionPoint' AND |
||||||
|
wait_event = 'invalidate-catalog-snapshot-end') IS NOT NULL |
||||||
|
THEN injection_points_wakeup('invalidate-catalog-snapshot-end') |
||||||
|
END; |
||||||
|
|
||||||
|
case |
||||||
|
---- |
||||||
|
|
||||||
|
(1 row) |
||||||
|
|
||||||
|
step s1_attach_invalidate_catalog_snapshot: <... completed> |
||||||
|
injection_points_attach |
||||||
|
----------------------- |
||||||
|
|
||||||
|
(1 row) |
||||||
|
|
||||||
|
step s3_start_create_index: |
||||||
|
CREATE UNIQUE INDEX CONCURRENTLY tbl_pkey_duplicate ON test.tbl(i); |
||||||
|
<waiting ...> |
||||||
|
step s1_start_upsert: |
||||||
|
INSERT INTO test.tbl VALUES (13,now()) ON CONFLICT (i) DO UPDATE SET updated_at = now(); |
||||||
|
<waiting ...> |
||||||
|
step s4_wakeup_define_index_before_set_valid: |
||||||
|
SELECT injection_points_detach('define-index-before-set-valid'); |
||||||
|
SELECT injection_points_wakeup('define-index-before-set-valid'); |
||||||
|
|
||||||
|
injection_points_detach |
||||||
|
----------------------- |
||||||
|
|
||||||
|
(1 row) |
||||||
|
|
||||||
|
injection_points_wakeup |
||||||
|
----------------------- |
||||||
|
|
||||||
|
(1 row) |
||||||
|
|
||||||
|
step s2_start_upsert: |
||||||
|
INSERT INTO test.tbl VALUES (13,now()) ON CONFLICT (i) DO UPDATE SET updated_at = now(); |
||||||
|
<waiting ...> |
||||||
|
step s5_wakeup_s1_from_invalidate_catalog_snapshot: |
||||||
|
DO $$ |
||||||
|
DECLARE |
||||||
|
v_waiting_pid INTEGER; |
||||||
|
BEGIN |
||||||
|
LOOP |
||||||
|
SELECT pid INTO v_waiting_pid |
||||||
|
FROM pg_stat_activity |
||||||
|
WHERE wait_event_type = 'InjectionPoint' |
||||||
|
AND wait_event = 'invalidate-catalog-snapshot-end' |
||||||
|
LIMIT 1; |
||||||
|
EXIT WHEN v_waiting_pid IS NOT NULL; |
||||||
|
PERFORM pg_sleep(100); |
||||||
|
END LOOP; |
||||||
|
END |
||||||
|
$$; |
||||||
|
|
||||||
|
SELECT injection_points_detach('invalidate-catalog-snapshot-end'); |
||||||
|
SELECT injection_points_wakeup('invalidate-catalog-snapshot-end'); |
||||||
|
|
||||||
|
injection_points_detach |
||||||
|
----------------------- |
||||||
|
|
||||||
|
(1 row) |
||||||
|
|
||||||
|
injection_points_wakeup |
||||||
|
----------------------- |
||||||
|
|
||||||
|
(1 row) |
||||||
|
|
||||||
|
step s4_wakeup_s2: |
||||||
|
SELECT injection_points_detach('exec-insert-before-insert-speculative'); |
||||||
|
SELECT injection_points_wakeup('exec-insert-before-insert-speculative'); |
||||||
|
|
||||||
|
injection_points_detach |
||||||
|
----------------------- |
||||||
|
|
||||||
|
(1 row) |
||||||
|
|
||||||
|
injection_points_wakeup |
||||||
|
----------------------- |
||||||
|
|
||||||
|
(1 row) |
||||||
|
|
||||||
|
step s4_wakeup_s1: |
||||||
|
SELECT injection_points_detach('check-exclusion-or-unique-constraint-no-conflict'); |
||||||
|
SELECT injection_points_wakeup('check-exclusion-or-unique-constraint-no-conflict'); |
||||||
|
|
||||||
|
injection_points_detach |
||||||
|
----------------------- |
||||||
|
|
||||||
|
(1 row) |
||||||
|
|
||||||
|
injection_points_wakeup |
||||||
|
----------------------- |
||||||
|
|
||||||
|
(1 row) |
||||||
|
|
||||||
|
step s1_start_upsert: <... completed> |
||||||
|
step s2_start_upsert: <... completed> |
||||||
|
step s3_start_create_index: <... completed> |
||||||
Loading…
Reference in new issue