forked from postgres/postgres
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Tests for serialization failures and false positives
- Loading branch information
shubhambaraiss
committed
Jun 14, 2017
1 parent
0a76b02
commit 2c02685
Showing
4 changed files
with
746 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,339 @@ | ||
Parsed test spec with 2 sessions | ||
|
||
starting permutation: rxy1 wx1 c1 rxy2 wy2 c2 | ||
step rxy1: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p << point(250, 250); | ||
sum | ||
|
||
3000 | ||
step wx1: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(15, 20) g; | ||
step c1: COMMIT; | ||
step rxy2: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p >> point(750,750); | ||
sum | ||
|
||
26500 | ||
step wy2: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(1, 5) g; | ||
step c2: COMMIT; | ||
|
||
starting permutation: rxy1 wx1 rxy2 c1 wy2 c2 | ||
step rxy1: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p << point(250, 250); | ||
sum | ||
|
||
3000 | ||
step wx1: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(15, 20) g; | ||
step rxy2: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p >> point(750,750); | ||
sum | ||
|
||
22000 | ||
step c1: COMMIT; | ||
step wy2: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(1, 5) g; | ||
ERROR: could not serialize access due to read/write dependencies among transactions | ||
step c2: COMMIT; | ||
|
||
starting permutation: rxy1 wx1 rxy2 wy2 c1 c2 | ||
step rxy1: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p << point(250, 250); | ||
sum | ||
|
||
3000 | ||
step wx1: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(15, 20) g; | ||
step rxy2: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p >> point(750,750); | ||
sum | ||
|
||
22000 | ||
step wy2: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(1, 5) g; | ||
step c1: COMMIT; | ||
step c2: COMMIT; | ||
ERROR: could not serialize access due to read/write dependencies among transactions | ||
|
||
starting permutation: rxy1 wx1 rxy2 wy2 c2 c1 | ||
step rxy1: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p << point(250, 250); | ||
sum | ||
|
||
3000 | ||
step wx1: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(15, 20) g; | ||
step rxy2: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p >> point(750,750); | ||
sum | ||
|
||
22000 | ||
step wy2: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(1, 5) g; | ||
step c2: COMMIT; | ||
step c1: COMMIT; | ||
ERROR: could not serialize access due to read/write dependencies among transactions | ||
|
||
starting permutation: rxy1 rxy2 wx1 c1 wy2 c2 | ||
step rxy1: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p << point(250, 250); | ||
sum | ||
|
||
3000 | ||
step rxy2: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p >> point(750,750); | ||
sum | ||
|
||
22000 | ||
step wx1: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(15, 20) g; | ||
step c1: COMMIT; | ||
step wy2: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(1, 5) g; | ||
ERROR: could not serialize access due to read/write dependencies among transactions | ||
step c2: COMMIT; | ||
|
||
starting permutation: rxy1 rxy2 wx1 wy2 c1 c2 | ||
step rxy1: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p << point(250, 250); | ||
sum | ||
|
||
3000 | ||
step rxy2: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p >> point(750,750); | ||
sum | ||
|
||
22000 | ||
step wx1: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(15, 20) g; | ||
step wy2: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(1, 5) g; | ||
step c1: COMMIT; | ||
step c2: COMMIT; | ||
ERROR: could not serialize access due to read/write dependencies among transactions | ||
|
||
starting permutation: rxy1 rxy2 wx1 wy2 c2 c1 | ||
step rxy1: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p << point(250, 250); | ||
sum | ||
|
||
3000 | ||
step rxy2: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p >> point(750,750); | ||
sum | ||
|
||
22000 | ||
step wx1: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(15, 20) g; | ||
step wy2: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(1, 5) g; | ||
step c2: COMMIT; | ||
step c1: COMMIT; | ||
ERROR: could not serialize access due to read/write dependencies among transactions | ||
|
||
starting permutation: rxy1 rxy2 wy2 wx1 c1 c2 | ||
step rxy1: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p << point(250, 250); | ||
sum | ||
|
||
3000 | ||
step rxy2: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p >> point(750,750); | ||
sum | ||
|
||
22000 | ||
step wy2: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(1, 5) g; | ||
step wx1: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(15, 20) g; | ||
step c1: COMMIT; | ||
step c2: COMMIT; | ||
ERROR: could not serialize access due to read/write dependencies among transactions | ||
|
||
starting permutation: rxy1 rxy2 wy2 wx1 c2 c1 | ||
step rxy1: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p << point(250, 250); | ||
sum | ||
|
||
3000 | ||
step rxy2: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p >> point(750,750); | ||
sum | ||
|
||
22000 | ||
step wy2: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(1, 5) g; | ||
step wx1: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(15, 20) g; | ||
step c2: COMMIT; | ||
step c1: COMMIT; | ||
ERROR: could not serialize access due to read/write dependencies among transactions | ||
|
||
starting permutation: rxy1 rxy2 wy2 c2 wx1 c1 | ||
step rxy1: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p << point(250, 250); | ||
sum | ||
|
||
3000 | ||
step rxy2: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p >> point(750,750); | ||
sum | ||
|
||
22000 | ||
step wy2: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(1, 5) g; | ||
step c2: COMMIT; | ||
step wx1: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(15, 20) g; | ||
ERROR: could not serialize access due to read/write dependencies among transactions | ||
step c1: COMMIT; | ||
|
||
starting permutation: rxy2 rxy1 wx1 c1 wy2 c2 | ||
step rxy2: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p >> point(750,750); | ||
sum | ||
|
||
22000 | ||
step rxy1: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p << point(250, 250); | ||
sum | ||
|
||
3000 | ||
step wx1: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(15, 20) g; | ||
step c1: COMMIT; | ||
step wy2: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(1, 5) g; | ||
ERROR: could not serialize access due to read/write dependencies among transactions | ||
step c2: COMMIT; | ||
|
||
starting permutation: rxy2 rxy1 wx1 wy2 c1 c2 | ||
step rxy2: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p >> point(750,750); | ||
sum | ||
|
||
22000 | ||
step rxy1: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p << point(250, 250); | ||
sum | ||
|
||
3000 | ||
step wx1: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(15, 20) g; | ||
step wy2: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(1, 5) g; | ||
step c1: COMMIT; | ||
step c2: COMMIT; | ||
ERROR: could not serialize access due to read/write dependencies among transactions | ||
|
||
starting permutation: rxy2 rxy1 wx1 wy2 c2 c1 | ||
step rxy2: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p >> point(750,750); | ||
sum | ||
|
||
22000 | ||
step rxy1: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p << point(250, 250); | ||
sum | ||
|
||
3000 | ||
step wx1: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(15, 20) g; | ||
step wy2: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(1, 5) g; | ||
step c2: COMMIT; | ||
step c1: COMMIT; | ||
ERROR: could not serialize access due to read/write dependencies among transactions | ||
|
||
starting permutation: rxy2 rxy1 wy2 wx1 c1 c2 | ||
step rxy2: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p >> point(750,750); | ||
sum | ||
|
||
22000 | ||
step rxy1: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p << point(250, 250); | ||
sum | ||
|
||
3000 | ||
step wy2: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(1, 5) g; | ||
step wx1: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(15, 20) g; | ||
step c1: COMMIT; | ||
step c2: COMMIT; | ||
ERROR: could not serialize access due to read/write dependencies among transactions | ||
|
||
starting permutation: rxy2 rxy1 wy2 wx1 c2 c1 | ||
step rxy2: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p >> point(750,750); | ||
sum | ||
|
||
22000 | ||
step rxy1: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p << point(250, 250); | ||
sum | ||
|
||
3000 | ||
step wy2: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(1, 5) g; | ||
step wx1: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(15, 20) g; | ||
step c2: COMMIT; | ||
step c1: COMMIT; | ||
ERROR: could not serialize access due to read/write dependencies among transactions | ||
|
||
starting permutation: rxy2 rxy1 wy2 c2 wx1 c1 | ||
step rxy2: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p >> point(750,750); | ||
sum | ||
|
||
22000 | ||
step rxy1: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p << point(250, 250); | ||
sum | ||
|
||
3000 | ||
step wy2: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(1, 5) g; | ||
step c2: COMMIT; | ||
step wx1: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(15, 20) g; | ||
ERROR: could not serialize access due to read/write dependencies among transactions | ||
step c1: COMMIT; | ||
|
||
starting permutation: rxy2 wy2 rxy1 wx1 c1 c2 | ||
step rxy2: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p >> point(750,750); | ||
sum | ||
|
||
22000 | ||
step wy2: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(1, 5) g; | ||
step rxy1: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p << point(250, 250); | ||
sum | ||
|
||
3000 | ||
step wx1: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(15, 20) g; | ||
step c1: COMMIT; | ||
step c2: COMMIT; | ||
ERROR: could not serialize access due to read/write dependencies among transactions | ||
|
||
starting permutation: rxy2 wy2 rxy1 wx1 c2 c1 | ||
step rxy2: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p >> point(750,750); | ||
sum | ||
|
||
22000 | ||
step wy2: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(1, 5) g; | ||
step rxy1: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p << point(250, 250); | ||
sum | ||
|
||
3000 | ||
step wx1: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(15, 20) g; | ||
step c2: COMMIT; | ||
step c1: COMMIT; | ||
ERROR: could not serialize access due to read/write dependencies among transactions | ||
|
||
starting permutation: rxy2 wy2 rxy1 c2 wx1 c1 | ||
step rxy2: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p >> point(750,750); | ||
sum | ||
|
||
22000 | ||
step wy2: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(1, 5) g; | ||
step rxy1: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p << point(250, 250); | ||
sum | ||
|
||
3000 | ||
step c2: COMMIT; | ||
step wx1: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(15, 20) g; | ||
ERROR: could not serialize access due to read/write dependencies among transactions | ||
step c1: COMMIT; | ||
|
||
starting permutation: rxy2 wy2 c2 rxy1 wx1 c1 | ||
step rxy2: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p >> point(750,750); | ||
sum | ||
|
||
22000 | ||
step wy2: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(1, 5) g; | ||
step c2: COMMIT; | ||
step rxy1: SELECT SUM(p[0]) FROM gist_point_tbl WHERE p << point(250, 250); | ||
sum | ||
|
||
3500 | ||
step wx1: insert into gist_point_tbl (id, p) | ||
select g, point(g*50, g*50) from generate_series(15, 20) g; | ||
step c1: COMMIT; |
Oops, something went wrong.