| setup |
| { |
| CREATE TABLE parent ( |
| parent_key int PRIMARY KEY, |
| aux text NOT NULL |
| ); |
| |
| CREATE TABLE child ( |
| child_key int PRIMARY KEY, |
| parent_key int NOT NULL REFERENCES parent |
| ); |
| |
| INSERT INTO parent VALUES (1, 'foo'); |
| } |
| |
| teardown |
| { |
| DROP TABLE parent, child; |
| } |
| |
| session s1 |
| setup { BEGIN; SET deadlock_timeout = '100ms'; } |
| step s1i { INSERT INTO child VALUES (1, 1); } |
| step s1u { UPDATE parent SET aux = 'bar'; } |
| step s1c { COMMIT; } |
| |
| session s2 |
| setup { BEGIN; SET deadlock_timeout = '10s'; } |
| step s2i { INSERT INTO child VALUES (2, 1); } |
| step s2u { UPDATE parent SET aux = 'baz'; } |
| step s2c { COMMIT; } |
| |
| permutation s1i s1u s1c s2i s2u s2c |
| permutation s1i s1u s2i s1c s2u s2c |
| permutation s1i s1u s2i s2u s1c s2c |
| permutation s1i s2i s1u s1c s2u s2c |
| permutation s1i s2i s1u s2u s1c s2c |
| permutation s1i s2i s2u s1u s2c s1c |
| permutation s1i s2i s2u s2c s1u s1c |
| permutation s2i s1i s1u s1c s2u s2c |
| permutation s2i s1i s1u s2u s1c s2c |
| permutation s2i s1i s2u s1u s2c s1c |
| permutation s2i s1i s2u s2c s1u s1c |
| permutation s2i s2u s1i s1u s2c s1c |
| permutation s2i s2u s1i s2c s1u s1c |
| permutation s2i s2u s2c s1i s1u s1c |