/
githubmirror
/
postgres
Обзор
Документация
Войти
/
githubmirror
/
postgres
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
src/test/isolation/expected/partition-key-update-3.out
154 строки
7 KB
Tom Lane
Improve display of query results in isolation tests.
23 июн 2021, 18:13
23 июн 2021, 18:13
4a05406
Код
Авторство
О чём код?
Parsed test spec with 3 sessions starting permutation: s2beginrr s3beginrr s1u s2donothing s1c s2c s3donothing s3c s2select step s2beginrr: BEGIN ISOLATION LEVEL REPEATABLE READ; step s3beginrr: BEGIN ISOLATION LEVEL REPEATABLE READ; step s1u: UPDATE foo SET a=2, b=b || ' -> moved by session-1' WHERE a=1; step s2donothing: INSERT INTO foo VALUES(1, 'session-2 donothing') ON CONFLICT DO NOTHING; <waiting ...> step s1c: COMMIT; step s2donothing: <... completed> step s2c: COMMIT; step s3donothing: INSERT INTO foo VALUES(2, 'session-3 donothing'), (2, 'session-3 donothing2') ON CONFLICT DO NOTHING; step s3c: COMMIT; step s2select: SELECT * FROM foo ORDER BY a; a|b -+----------------------------------- 1|session-2 donothing 2|initial tuple -> moved by session-1 (2 rows) starting permutation: s2beginrr s3beginrr s1u s3donothing s1c s3c s2donothing s2c s2select step s2beginrr: BEGIN ISOLATION LEVEL REPEATABLE READ; step s3beginrr: BEGIN ISOLATION LEVEL REPEATABLE READ; step s1u: UPDATE foo SET a=2, b=b || ' -> moved by session-1' WHERE a=1; step s3donothing: INSERT INTO foo VALUES(2, 'session-3 donothing'), (2, 'session-3 donothing2') ON CONFLICT DO NOTHING; <waiting ...> step s1c: COMMIT; step s3donothing: <... completed> ERROR: could not serialize access due to concurrent update step s3c: COMMIT; step s2donothing: INSERT INTO foo VALUES(1, 'session-2 donothing') ON CONFLICT DO NOTHING; step s2c: COMMIT; step s2select: SELECT * FROM foo ORDER BY a; a|b -+----------------------------------- 1|session-2 donothing 2|initial tuple -> moved by session-1 (2 rows) starting permutation: s2beginrr s3beginrr s1u s2donothing s3donothing s1c s2c s3c s2select step s2beginrr: BEGIN ISOLATION LEVEL REPEATABLE READ; step s3beginrr: BEGIN ISOLATION LEVEL REPEATABLE READ; step s1u: UPDATE foo SET a=2, b=b || ' -> moved by session-1' WHERE a=1; step s2donothing: INSERT INTO foo VALUES(1, 'session-2 donothing') ON CONFLICT DO NOTHING; <waiting ...> step s3donothing: INSERT INTO foo VALUES(2, 'session-3 donothing'), (2, 'session-3 donothing2') ON CONFLICT DO NOTHING; <waiting ...> step s1c: COMMIT; step s2donothing: <... completed> step s3donothing: <... completed> ERROR: could not serialize access due to concurrent update step s2c: COMMIT; step s3c: COMMIT; step s2select: SELECT * FROM foo ORDER BY a; a|b -+----------------------------------- 1|session-2 donothing 2|initial tuple -> moved by session-1 (2 rows) starting permutation: s2beginrr s3beginrr s1u s3donothing s2donothing s1c s3c s2c s2select step s2beginrr: BEGIN ISOLATION LEVEL REPEATABLE READ; step s3beginrr: BEGIN ISOLATION LEVEL REPEATABLE READ; step s1u: UPDATE foo SET a=2, b=b || ' -> moved by session-1' WHERE a=1; step s3donothing: INSERT INTO foo VALUES(2, 'session-3 donothing'), (2, 'session-3 donothing2') ON CONFLICT DO NOTHING; <waiting ...> step s2donothing: INSERT INTO foo VALUES(1, 'session-2 donothing') ON CONFLICT DO NOTHING; <waiting ...> step s1c: COMMIT; step s3donothing: <... completed> ERROR: could not serialize access due to concurrent update step s2donothing: <... completed> step s3c: COMMIT; step s2c: COMMIT; step s2select: SELECT * FROM foo ORDER BY a; a|b -+----------------------------------- 1|session-2 donothing 2|initial tuple -> moved by session-1 (2 rows) starting permutation: s2begins s3begins s1u s2donothing s1c s2c s3donothing s3c s2select step s2begins: BEGIN ISOLATION LEVEL SERIALIZABLE; step s3begins: BEGIN ISOLATION LEVEL SERIALIZABLE; step s1u: UPDATE foo SET a=2, b=b || ' -> moved by session-1' WHERE a=1; step s2donothing: INSERT INTO foo VALUES(1, 'session-2 donothing') ON CONFLICT DO NOTHING; <waiting ...> step s1c: COMMIT; step s2donothing: <... completed> step s2c: COMMIT; step s3donothing: INSERT INTO foo VALUES(2, 'session-3 donothing'), (2, 'session-3 donothing2') ON CONFLICT DO NOTHING; step s3c: COMMIT; step s2select: SELECT * FROM foo ORDER BY a; a|b -+----------------------------------- 1|session-2 donothing 2|initial tuple -> moved by session-1 (2 rows) starting permutation: s2begins s3begins s1u s3donothing s1c s3c s2donothing s2c s2select step s2begins: BEGIN ISOLATION LEVEL SERIALIZABLE; step s3begins: BEGIN ISOLATION LEVEL SERIALIZABLE; step s1u: UPDATE foo SET a=2, b=b || ' -> moved by session-1' WHERE a=1; step s3donothing: INSERT INTO foo VALUES(2, 'session-3 donothing'), (2, 'session-3 donothing2') ON CONFLICT DO NOTHING; <waiting ...> step s1c: COMMIT; step s3donothing: <... completed> ERROR: could not serialize access due to concurrent update step s3c: COMMIT; step s2donothing: INSERT INTO foo VALUES(1, 'session-2 donothing') ON CONFLICT DO NOTHING; step s2c: COMMIT; step s2select: SELECT * FROM foo ORDER BY a; a|b -+----------------------------------- 1|session-2 donothing 2|initial tuple -> moved by session-1 (2 rows) starting permutation: s2begins s3begins s1u s2donothing s3donothing s1c s2c s3c s2select step s2begins: BEGIN ISOLATION LEVEL SERIALIZABLE; step s3begins: BEGIN ISOLATION LEVEL SERIALIZABLE; step s1u: UPDATE foo SET a=2, b=b || ' -> moved by session-1' WHERE a=1; step s2donothing: INSERT INTO foo VALUES(1, 'session-2 donothing') ON CONFLICT DO NOTHING; <waiting ...> step s3donothing: INSERT INTO foo VALUES(2, 'session-3 donothing'), (2, 'session-3 donothing2') ON CONFLICT DO NOTHING; <waiting ...> step s1c: COMMIT; step s2donothing: <... completed> step s3donothing: <... completed> ERROR: could not serialize access due to concurrent update step s2c: COMMIT; step s3c: COMMIT; step s2select: SELECT * FROM foo ORDER BY a; a|b -+----------------------------------- 1|session-2 donothing 2|initial tuple -> moved by session-1 (2 rows) starting permutation: s2begins s3begins s1u s3donothing s2donothing s1c s3c s2c s2select step s2begins: BEGIN ISOLATION LEVEL SERIALIZABLE; step s3begins: BEGIN ISOLATION LEVEL SERIALIZABLE; step s1u: UPDATE foo SET a=2, b=b || ' -> moved by session-1' WHERE a=1; step s3donothing: INSERT INTO foo VALUES(2, 'session-3 donothing'), (2, 'session-3 donothing2') ON CONFLICT DO NOTHING; <waiting ...> step s2donothing: INSERT INTO foo VALUES(1, 'session-2 donothing') ON CONFLICT DO NOTHING; <waiting ...> step s1c: COMMIT; step s3donothing: <... completed> ERROR: could not serialize access due to concurrent update step s2donothing: <... completed> step s3c: COMMIT; step s2c: COMMIT; step s2select: SELECT * FROM foo ORDER BY a; a|b -+----------------------------------- 1|session-2 donothing 2|initial tuple -> moved by session-1 (2 rows)