1188 lines
22 KiB
Plaintext
1188 lines
22 KiB
Plaintext
Parsed test spec with 3 sessions
|
|
|
|
starting permutation: wx1 c1 rxwy2 c2 ry3 c3
|
|
step wx1: update D1 set id = id + 1;
|
|
step c1: COMMIT;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c2: COMMIT;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
3
|
|
(1 row)
|
|
|
|
step c3: COMMIT;
|
|
|
|
starting permutation: wx1 c1 rxwy2 ry3 c2 c3
|
|
step wx1: update D1 set id = id + 1;
|
|
step c1: COMMIT;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c2: COMMIT;
|
|
step c3: COMMIT;
|
|
|
|
starting permutation: wx1 c1 rxwy2 ry3 c3 c2
|
|
step wx1: update D1 set id = id + 1;
|
|
step c1: COMMIT;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c3: COMMIT;
|
|
step c2: COMMIT;
|
|
|
|
starting permutation: wx1 c1 ry3 rxwy2 c2 c3
|
|
step wx1: update D1 set id = id + 1;
|
|
step c1: COMMIT;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c2: COMMIT;
|
|
step c3: COMMIT;
|
|
|
|
starting permutation: wx1 c1 ry3 rxwy2 c3 c2
|
|
step wx1: update D1 set id = id + 1;
|
|
step c1: COMMIT;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c3: COMMIT;
|
|
step c2: COMMIT;
|
|
|
|
starting permutation: wx1 c1 ry3 c3 rxwy2 c2
|
|
step wx1: update D1 set id = id + 1;
|
|
step c1: COMMIT;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c3: COMMIT;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c2: COMMIT;
|
|
|
|
starting permutation: wx1 rxwy2 c1 c2 ry3 c3
|
|
step wx1: update D1 set id = id + 1;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c1: COMMIT;
|
|
step c2: COMMIT;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
2
|
|
(1 row)
|
|
|
|
step c3: COMMIT;
|
|
|
|
starting permutation: wx1 rxwy2 c1 ry3 c2 c3
|
|
step wx1: update D1 set id = id + 1;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c1: COMMIT;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c2: COMMIT;
|
|
ERROR: could not serialize access due to read/write dependencies among transactions
|
|
step c3: COMMIT;
|
|
|
|
starting permutation: wx1 rxwy2 c1 ry3 c3 c2
|
|
step wx1: update D1 set id = id + 1;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c1: COMMIT;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c3: COMMIT;
|
|
step c2: COMMIT;
|
|
ERROR: could not serialize access due to read/write dependencies among transactions
|
|
|
|
starting permutation: wx1 rxwy2 c2 c1 ry3 c3
|
|
step wx1: update D1 set id = id + 1;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c2: COMMIT;
|
|
step c1: COMMIT;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
2
|
|
(1 row)
|
|
|
|
step c3: COMMIT;
|
|
|
|
starting permutation: wx1 rxwy2 c2 ry3 c1 c3
|
|
step wx1: update D1 set id = id + 1;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c2: COMMIT;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
2
|
|
(1 row)
|
|
|
|
step c1: COMMIT;
|
|
step c3: COMMIT;
|
|
|
|
starting permutation: wx1 rxwy2 c2 ry3 c3 c1
|
|
step wx1: update D1 set id = id + 1;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c2: COMMIT;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
2
|
|
(1 row)
|
|
|
|
step c3: COMMIT;
|
|
step c1: COMMIT;
|
|
|
|
starting permutation: wx1 rxwy2 ry3 c1 c2 c3
|
|
step wx1: update D1 set id = id + 1;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c1: COMMIT;
|
|
step c2: COMMIT;
|
|
ERROR: could not serialize access due to read/write dependencies among transactions
|
|
step c3: COMMIT;
|
|
|
|
starting permutation: wx1 rxwy2 ry3 c1 c3 c2
|
|
step wx1: update D1 set id = id + 1;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c1: COMMIT;
|
|
step c3: COMMIT;
|
|
step c2: COMMIT;
|
|
ERROR: could not serialize access due to read/write dependencies among transactions
|
|
|
|
starting permutation: wx1 rxwy2 ry3 c2 c1 c3
|
|
step wx1: update D1 set id = id + 1;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c2: COMMIT;
|
|
step c1: COMMIT;
|
|
step c3: COMMIT;
|
|
|
|
starting permutation: wx1 rxwy2 ry3 c2 c3 c1
|
|
step wx1: update D1 set id = id + 1;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c2: COMMIT;
|
|
step c3: COMMIT;
|
|
step c1: COMMIT;
|
|
|
|
starting permutation: wx1 rxwy2 ry3 c3 c1 c2
|
|
step wx1: update D1 set id = id + 1;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c3: COMMIT;
|
|
step c1: COMMIT;
|
|
step c2: COMMIT;
|
|
|
|
starting permutation: wx1 rxwy2 ry3 c3 c2 c1
|
|
step wx1: update D1 set id = id + 1;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c3: COMMIT;
|
|
step c2: COMMIT;
|
|
step c1: COMMIT;
|
|
|
|
starting permutation: wx1 ry3 c1 rxwy2 c2 c3
|
|
step wx1: update D1 set id = id + 1;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c1: COMMIT;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c2: COMMIT;
|
|
step c3: COMMIT;
|
|
|
|
starting permutation: wx1 ry3 c1 rxwy2 c3 c2
|
|
step wx1: update D1 set id = id + 1;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c1: COMMIT;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c3: COMMIT;
|
|
step c2: COMMIT;
|
|
|
|
starting permutation: wx1 ry3 c1 c3 rxwy2 c2
|
|
step wx1: update D1 set id = id + 1;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c1: COMMIT;
|
|
step c3: COMMIT;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c2: COMMIT;
|
|
|
|
starting permutation: wx1 ry3 rxwy2 c1 c2 c3
|
|
step wx1: update D1 set id = id + 1;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c1: COMMIT;
|
|
step c2: COMMIT;
|
|
ERROR: could not serialize access due to read/write dependencies among transactions
|
|
step c3: COMMIT;
|
|
|
|
starting permutation: wx1 ry3 rxwy2 c1 c3 c2
|
|
step wx1: update D1 set id = id + 1;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c1: COMMIT;
|
|
step c3: COMMIT;
|
|
step c2: COMMIT;
|
|
ERROR: could not serialize access due to read/write dependencies among transactions
|
|
|
|
starting permutation: wx1 ry3 rxwy2 c2 c1 c3
|
|
step wx1: update D1 set id = id + 1;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c2: COMMIT;
|
|
step c1: COMMIT;
|
|
step c3: COMMIT;
|
|
|
|
starting permutation: wx1 ry3 rxwy2 c2 c3 c1
|
|
step wx1: update D1 set id = id + 1;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c2: COMMIT;
|
|
step c3: COMMIT;
|
|
step c1: COMMIT;
|
|
|
|
starting permutation: wx1 ry3 rxwy2 c3 c1 c2
|
|
step wx1: update D1 set id = id + 1;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c3: COMMIT;
|
|
step c1: COMMIT;
|
|
step c2: COMMIT;
|
|
|
|
starting permutation: wx1 ry3 rxwy2 c3 c2 c1
|
|
step wx1: update D1 set id = id + 1;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c3: COMMIT;
|
|
step c2: COMMIT;
|
|
step c1: COMMIT;
|
|
|
|
starting permutation: wx1 ry3 c3 c1 rxwy2 c2
|
|
step wx1: update D1 set id = id + 1;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c3: COMMIT;
|
|
step c1: COMMIT;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c2: COMMIT;
|
|
|
|
starting permutation: wx1 ry3 c3 rxwy2 c1 c2
|
|
step wx1: update D1 set id = id + 1;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c3: COMMIT;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c1: COMMIT;
|
|
step c2: COMMIT;
|
|
|
|
starting permutation: wx1 ry3 c3 rxwy2 c2 c1
|
|
step wx1: update D1 set id = id + 1;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c3: COMMIT;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c2: COMMIT;
|
|
step c1: COMMIT;
|
|
|
|
starting permutation: rxwy2 wx1 c1 c2 ry3 c3
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step wx1: update D1 set id = id + 1;
|
|
step c1: COMMIT;
|
|
step c2: COMMIT;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
2
|
|
(1 row)
|
|
|
|
step c3: COMMIT;
|
|
|
|
starting permutation: rxwy2 wx1 c1 ry3 c2 c3
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step wx1: update D1 set id = id + 1;
|
|
step c1: COMMIT;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c2: COMMIT;
|
|
ERROR: could not serialize access due to read/write dependencies among transactions
|
|
step c3: COMMIT;
|
|
|
|
starting permutation: rxwy2 wx1 c1 ry3 c3 c2
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step wx1: update D1 set id = id + 1;
|
|
step c1: COMMIT;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c3: COMMIT;
|
|
step c2: COMMIT;
|
|
ERROR: could not serialize access due to read/write dependencies among transactions
|
|
|
|
starting permutation: rxwy2 wx1 c2 c1 ry3 c3
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step wx1: update D1 set id = id + 1;
|
|
step c2: COMMIT;
|
|
step c1: COMMIT;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
2
|
|
(1 row)
|
|
|
|
step c3: COMMIT;
|
|
|
|
starting permutation: rxwy2 wx1 c2 ry3 c1 c3
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step wx1: update D1 set id = id + 1;
|
|
step c2: COMMIT;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
2
|
|
(1 row)
|
|
|
|
step c1: COMMIT;
|
|
step c3: COMMIT;
|
|
|
|
starting permutation: rxwy2 wx1 c2 ry3 c3 c1
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step wx1: update D1 set id = id + 1;
|
|
step c2: COMMIT;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
2
|
|
(1 row)
|
|
|
|
step c3: COMMIT;
|
|
step c1: COMMIT;
|
|
|
|
starting permutation: rxwy2 wx1 ry3 c1 c2 c3
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step wx1: update D1 set id = id + 1;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c1: COMMIT;
|
|
step c2: COMMIT;
|
|
ERROR: could not serialize access due to read/write dependencies among transactions
|
|
step c3: COMMIT;
|
|
|
|
starting permutation: rxwy2 wx1 ry3 c1 c3 c2
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step wx1: update D1 set id = id + 1;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c1: COMMIT;
|
|
step c3: COMMIT;
|
|
step c2: COMMIT;
|
|
ERROR: could not serialize access due to read/write dependencies among transactions
|
|
|
|
starting permutation: rxwy2 wx1 ry3 c2 c1 c3
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step wx1: update D1 set id = id + 1;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c2: COMMIT;
|
|
step c1: COMMIT;
|
|
step c3: COMMIT;
|
|
|
|
starting permutation: rxwy2 wx1 ry3 c2 c3 c1
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step wx1: update D1 set id = id + 1;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c2: COMMIT;
|
|
step c3: COMMIT;
|
|
step c1: COMMIT;
|
|
|
|
starting permutation: rxwy2 wx1 ry3 c3 c1 c2
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step wx1: update D1 set id = id + 1;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c3: COMMIT;
|
|
step c1: COMMIT;
|
|
step c2: COMMIT;
|
|
|
|
starting permutation: rxwy2 wx1 ry3 c3 c2 c1
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step wx1: update D1 set id = id + 1;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c3: COMMIT;
|
|
step c2: COMMIT;
|
|
step c1: COMMIT;
|
|
|
|
starting permutation: rxwy2 c2 wx1 c1 ry3 c3
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c2: COMMIT;
|
|
step wx1: update D1 set id = id + 1;
|
|
step c1: COMMIT;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
2
|
|
(1 row)
|
|
|
|
step c3: COMMIT;
|
|
|
|
starting permutation: rxwy2 c2 wx1 ry3 c1 c3
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c2: COMMIT;
|
|
step wx1: update D1 set id = id + 1;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
2
|
|
(1 row)
|
|
|
|
step c1: COMMIT;
|
|
step c3: COMMIT;
|
|
|
|
starting permutation: rxwy2 c2 wx1 ry3 c3 c1
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c2: COMMIT;
|
|
step wx1: update D1 set id = id + 1;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
2
|
|
(1 row)
|
|
|
|
step c3: COMMIT;
|
|
step c1: COMMIT;
|
|
|
|
starting permutation: rxwy2 c2 ry3 wx1 c1 c3
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c2: COMMIT;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
2
|
|
(1 row)
|
|
|
|
step wx1: update D1 set id = id + 1;
|
|
step c1: COMMIT;
|
|
step c3: COMMIT;
|
|
|
|
starting permutation: rxwy2 c2 ry3 wx1 c3 c1
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c2: COMMIT;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
2
|
|
(1 row)
|
|
|
|
step wx1: update D1 set id = id + 1;
|
|
step c3: COMMIT;
|
|
step c1: COMMIT;
|
|
|
|
starting permutation: rxwy2 c2 ry3 c3 wx1 c1
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c2: COMMIT;
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
2
|
|
(1 row)
|
|
|
|
step c3: COMMIT;
|
|
step wx1: update D1 set id = id + 1;
|
|
step c1: COMMIT;
|
|
|
|
starting permutation: rxwy2 ry3 wx1 c1 c2 c3
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step wx1: update D1 set id = id + 1;
|
|
step c1: COMMIT;
|
|
step c2: COMMIT;
|
|
ERROR: could not serialize access due to read/write dependencies among transactions
|
|
step c3: COMMIT;
|
|
|
|
starting permutation: rxwy2 ry3 wx1 c1 c3 c2
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step wx1: update D1 set id = id + 1;
|
|
step c1: COMMIT;
|
|
step c3: COMMIT;
|
|
step c2: COMMIT;
|
|
ERROR: could not serialize access due to read/write dependencies among transactions
|
|
|
|
starting permutation: rxwy2 ry3 wx1 c2 c1 c3
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step wx1: update D1 set id = id + 1;
|
|
step c2: COMMIT;
|
|
step c1: COMMIT;
|
|
step c3: COMMIT;
|
|
|
|
starting permutation: rxwy2 ry3 wx1 c2 c3 c1
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step wx1: update D1 set id = id + 1;
|
|
step c2: COMMIT;
|
|
step c3: COMMIT;
|
|
step c1: COMMIT;
|
|
|
|
starting permutation: rxwy2 ry3 wx1 c3 c1 c2
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step wx1: update D1 set id = id + 1;
|
|
step c3: COMMIT;
|
|
step c1: COMMIT;
|
|
step c2: COMMIT;
|
|
|
|
starting permutation: rxwy2 ry3 wx1 c3 c2 c1
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step wx1: update D1 set id = id + 1;
|
|
step c3: COMMIT;
|
|
step c2: COMMIT;
|
|
step c1: COMMIT;
|
|
|
|
starting permutation: rxwy2 ry3 c2 wx1 c1 c3
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c2: COMMIT;
|
|
step wx1: update D1 set id = id + 1;
|
|
step c1: COMMIT;
|
|
step c3: COMMIT;
|
|
|
|
starting permutation: rxwy2 ry3 c2 wx1 c3 c1
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c2: COMMIT;
|
|
step wx1: update D1 set id = id + 1;
|
|
step c3: COMMIT;
|
|
step c1: COMMIT;
|
|
|
|
starting permutation: rxwy2 ry3 c2 c3 wx1 c1
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c2: COMMIT;
|
|
step c3: COMMIT;
|
|
step wx1: update D1 set id = id + 1;
|
|
step c1: COMMIT;
|
|
|
|
starting permutation: rxwy2 ry3 c3 wx1 c1 c2
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c3: COMMIT;
|
|
step wx1: update D1 set id = id + 1;
|
|
step c1: COMMIT;
|
|
step c2: COMMIT;
|
|
|
|
starting permutation: rxwy2 ry3 c3 wx1 c2 c1
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c3: COMMIT;
|
|
step wx1: update D1 set id = id + 1;
|
|
step c2: COMMIT;
|
|
step c1: COMMIT;
|
|
|
|
starting permutation: rxwy2 ry3 c3 c2 wx1 c1
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c3: COMMIT;
|
|
step c2: COMMIT;
|
|
step wx1: update D1 set id = id + 1;
|
|
step c1: COMMIT;
|
|
|
|
starting permutation: ry3 wx1 c1 rxwy2 c2 c3
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step wx1: update D1 set id = id + 1;
|
|
step c1: COMMIT;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c2: COMMIT;
|
|
step c3: COMMIT;
|
|
|
|
starting permutation: ry3 wx1 c1 rxwy2 c3 c2
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step wx1: update D1 set id = id + 1;
|
|
step c1: COMMIT;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c3: COMMIT;
|
|
step c2: COMMIT;
|
|
|
|
starting permutation: ry3 wx1 c1 c3 rxwy2 c2
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step wx1: update D1 set id = id + 1;
|
|
step c1: COMMIT;
|
|
step c3: COMMIT;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c2: COMMIT;
|
|
|
|
starting permutation: ry3 wx1 rxwy2 c1 c2 c3
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step wx1: update D1 set id = id + 1;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c1: COMMIT;
|
|
step c2: COMMIT;
|
|
ERROR: could not serialize access due to read/write dependencies among transactions
|
|
step c3: COMMIT;
|
|
|
|
starting permutation: ry3 wx1 rxwy2 c1 c3 c2
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step wx1: update D1 set id = id + 1;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c1: COMMIT;
|
|
step c3: COMMIT;
|
|
step c2: COMMIT;
|
|
ERROR: could not serialize access due to read/write dependencies among transactions
|
|
|
|
starting permutation: ry3 wx1 rxwy2 c2 c1 c3
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step wx1: update D1 set id = id + 1;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c2: COMMIT;
|
|
step c1: COMMIT;
|
|
step c3: COMMIT;
|
|
|
|
starting permutation: ry3 wx1 rxwy2 c2 c3 c1
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step wx1: update D1 set id = id + 1;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c2: COMMIT;
|
|
step c3: COMMIT;
|
|
step c1: COMMIT;
|
|
|
|
starting permutation: ry3 wx1 rxwy2 c3 c1 c2
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step wx1: update D1 set id = id + 1;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c3: COMMIT;
|
|
step c1: COMMIT;
|
|
step c2: COMMIT;
|
|
|
|
starting permutation: ry3 wx1 rxwy2 c3 c2 c1
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step wx1: update D1 set id = id + 1;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c3: COMMIT;
|
|
step c2: COMMIT;
|
|
step c1: COMMIT;
|
|
|
|
starting permutation: ry3 wx1 c3 c1 rxwy2 c2
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step wx1: update D1 set id = id + 1;
|
|
step c3: COMMIT;
|
|
step c1: COMMIT;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c2: COMMIT;
|
|
|
|
starting permutation: ry3 wx1 c3 rxwy2 c1 c2
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step wx1: update D1 set id = id + 1;
|
|
step c3: COMMIT;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c1: COMMIT;
|
|
step c2: COMMIT;
|
|
|
|
starting permutation: ry3 wx1 c3 rxwy2 c2 c1
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step wx1: update D1 set id = id + 1;
|
|
step c3: COMMIT;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c2: COMMIT;
|
|
step c1: COMMIT;
|
|
|
|
starting permutation: ry3 rxwy2 wx1 c1 c2 c3
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step wx1: update D1 set id = id + 1;
|
|
step c1: COMMIT;
|
|
step c2: COMMIT;
|
|
ERROR: could not serialize access due to read/write dependencies among transactions
|
|
step c3: COMMIT;
|
|
|
|
starting permutation: ry3 rxwy2 wx1 c1 c3 c2
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step wx1: update D1 set id = id + 1;
|
|
step c1: COMMIT;
|
|
step c3: COMMIT;
|
|
step c2: COMMIT;
|
|
ERROR: could not serialize access due to read/write dependencies among transactions
|
|
|
|
starting permutation: ry3 rxwy2 wx1 c2 c1 c3
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step wx1: update D1 set id = id + 1;
|
|
step c2: COMMIT;
|
|
step c1: COMMIT;
|
|
step c3: COMMIT;
|
|
|
|
starting permutation: ry3 rxwy2 wx1 c2 c3 c1
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step wx1: update D1 set id = id + 1;
|
|
step c2: COMMIT;
|
|
step c3: COMMIT;
|
|
step c1: COMMIT;
|
|
|
|
starting permutation: ry3 rxwy2 wx1 c3 c1 c2
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step wx1: update D1 set id = id + 1;
|
|
step c3: COMMIT;
|
|
step c1: COMMIT;
|
|
step c2: COMMIT;
|
|
|
|
starting permutation: ry3 rxwy2 wx1 c3 c2 c1
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step wx1: update D1 set id = id + 1;
|
|
step c3: COMMIT;
|
|
step c2: COMMIT;
|
|
step c1: COMMIT;
|
|
|
|
starting permutation: ry3 rxwy2 c2 wx1 c1 c3
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c2: COMMIT;
|
|
step wx1: update D1 set id = id + 1;
|
|
step c1: COMMIT;
|
|
step c3: COMMIT;
|
|
|
|
starting permutation: ry3 rxwy2 c2 wx1 c3 c1
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c2: COMMIT;
|
|
step wx1: update D1 set id = id + 1;
|
|
step c3: COMMIT;
|
|
step c1: COMMIT;
|
|
|
|
starting permutation: ry3 rxwy2 c2 c3 wx1 c1
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c2: COMMIT;
|
|
step c3: COMMIT;
|
|
step wx1: update D1 set id = id + 1;
|
|
step c1: COMMIT;
|
|
|
|
starting permutation: ry3 rxwy2 c3 wx1 c1 c2
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c3: COMMIT;
|
|
step wx1: update D1 set id = id + 1;
|
|
step c1: COMMIT;
|
|
step c2: COMMIT;
|
|
|
|
starting permutation: ry3 rxwy2 c3 wx1 c2 c1
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c3: COMMIT;
|
|
step wx1: update D1 set id = id + 1;
|
|
step c2: COMMIT;
|
|
step c1: COMMIT;
|
|
|
|
starting permutation: ry3 rxwy2 c3 c2 wx1 c1
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c3: COMMIT;
|
|
step c2: COMMIT;
|
|
step wx1: update D1 set id = id + 1;
|
|
step c1: COMMIT;
|
|
|
|
starting permutation: ry3 c3 wx1 c1 rxwy2 c2
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c3: COMMIT;
|
|
step wx1: update D1 set id = id + 1;
|
|
step c1: COMMIT;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c2: COMMIT;
|
|
|
|
starting permutation: ry3 c3 wx1 rxwy2 c1 c2
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c3: COMMIT;
|
|
step wx1: update D1 set id = id + 1;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c1: COMMIT;
|
|
step c2: COMMIT;
|
|
|
|
starting permutation: ry3 c3 wx1 rxwy2 c2 c1
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c3: COMMIT;
|
|
step wx1: update D1 set id = id + 1;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c2: COMMIT;
|
|
step c1: COMMIT;
|
|
|
|
starting permutation: ry3 c3 rxwy2 wx1 c1 c2
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c3: COMMIT;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step wx1: update D1 set id = id + 1;
|
|
step c1: COMMIT;
|
|
step c2: COMMIT;
|
|
|
|
starting permutation: ry3 c3 rxwy2 wx1 c2 c1
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c3: COMMIT;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step wx1: update D1 set id = id + 1;
|
|
step c2: COMMIT;
|
|
step c1: COMMIT;
|
|
|
|
starting permutation: ry3 c3 rxwy2 c2 wx1 c1
|
|
step ry3: select id from D2;
|
|
id
|
|
--
|
|
1
|
|
(1 row)
|
|
|
|
step c3: COMMIT;
|
|
step rxwy2: update D2 set id = (select id+1 from D1);
|
|
step c2: COMMIT;
|
|
step wx1: update D1 set id = id + 1;
|
|
step c1: COMMIT;
|