postgresql/src/test/isolation/expected/multixact-no-forget_1.out

161 lines
3.5 KiB
Plaintext

Parsed test spec with 3 sessions
starting permutation: s1_show s1_commit s2_commit
step s1_show: SELECT current_setting('default_transaction_isolation') <> 'read committed';
?column?
--------
t
(1 row)
step s1_commit: COMMIT;
step s2_commit: COMMIT;
starting permutation: s1_lock s2_update s2_abort s3_forkeyshr s1_commit
step s1_lock: SELECT * FROM dont_forget FOR KEY SHARE;
value
-----
1
(1 row)
step s2_update: UPDATE dont_forget SET value = 2;
step s2_abort: ROLLBACK;
step s3_forkeyshr: SELECT * FROM dont_forget FOR KEY SHARE;
value
-----
1
(1 row)
step s1_commit: COMMIT;
starting permutation: s1_lock s2_update s2_commit s3_forkeyshr s1_commit
step s1_lock: SELECT * FROM dont_forget FOR KEY SHARE;
value
-----
1
(1 row)
step s2_update: UPDATE dont_forget SET value = 2;
step s2_commit: COMMIT;
step s3_forkeyshr: SELECT * FROM dont_forget FOR KEY SHARE;
value
-----
2
(1 row)
step s1_commit: COMMIT;
starting permutation: s1_lock s2_update s1_commit s3_forkeyshr s2_commit
step s1_lock: SELECT * FROM dont_forget FOR KEY SHARE;
value
-----
1
(1 row)
step s2_update: UPDATE dont_forget SET value = 2;
step s1_commit: COMMIT;
step s3_forkeyshr: SELECT * FROM dont_forget FOR KEY SHARE;
value
-----
1
(1 row)
step s2_commit: COMMIT;
starting permutation: s1_lock s2_update s2_abort s3_fornokeyupd s1_commit
step s1_lock: SELECT * FROM dont_forget FOR KEY SHARE;
value
-----
1
(1 row)
step s2_update: UPDATE dont_forget SET value = 2;
step s2_abort: ROLLBACK;
step s3_fornokeyupd: SELECT * FROM dont_forget FOR NO KEY UPDATE;
value
-----
1
(1 row)
step s1_commit: COMMIT;
starting permutation: s1_lock s2_update s2_commit s3_fornokeyupd s1_commit
step s1_lock: SELECT * FROM dont_forget FOR KEY SHARE;
value
-----
1
(1 row)
step s2_update: UPDATE dont_forget SET value = 2;
step s2_commit: COMMIT;
step s3_fornokeyupd: SELECT * FROM dont_forget FOR NO KEY UPDATE;
value
-----
2
(1 row)
step s1_commit: COMMIT;
starting permutation: s1_lock s2_update s1_commit s3_fornokeyupd s2_commit
step s1_lock: SELECT * FROM dont_forget FOR KEY SHARE;
value
-----
1
(1 row)
step s2_update: UPDATE dont_forget SET value = 2;
step s1_commit: COMMIT;
step s3_fornokeyupd: SELECT * FROM dont_forget FOR NO KEY UPDATE; <waiting ...>
step s2_commit: COMMIT;
step s3_fornokeyupd: <... completed>
ERROR: could not serialize access due to concurrent update
starting permutation: s1_lock s2_update s2_abort s3_forupd s1_commit
step s1_lock: SELECT * FROM dont_forget FOR KEY SHARE;
value
-----
1
(1 row)
step s2_update: UPDATE dont_forget SET value = 2;
step s2_abort: ROLLBACK;
step s3_forupd: SELECT * FROM dont_forget FOR UPDATE; <waiting ...>
step s1_commit: COMMIT;
step s3_forupd: <... completed>
value
-----
1
(1 row)
starting permutation: s1_lock s2_update s2_commit s3_forupd s1_commit
step s1_lock: SELECT * FROM dont_forget FOR KEY SHARE;
value
-----
1
(1 row)
step s2_update: UPDATE dont_forget SET value = 2;
step s2_commit: COMMIT;
step s3_forupd: SELECT * FROM dont_forget FOR UPDATE; <waiting ...>
step s1_commit: COMMIT;
step s3_forupd: <... completed>
value
-----
2
(1 row)
starting permutation: s1_lock s2_update s1_commit s3_forupd s2_commit
step s1_lock: SELECT * FROM dont_forget FOR KEY SHARE;
value
-----
1
(1 row)
step s2_update: UPDATE dont_forget SET value = 2;
step s1_commit: COMMIT;
step s3_forupd: SELECT * FROM dont_forget FOR UPDATE; <waiting ...>
step s2_commit: COMMIT;
step s3_forupd: <... completed>
ERROR: could not serialize access due to concurrent update