1Parsed test spec with 2 sessions 2 3starting permutation: s1a s1b s1c s2a s2b s2c s2d 4step s1a: BEGIN; 5step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); 6step s1c: COMMIT; 7step s2a: BEGIN; 8step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; 9i 10- 111 12(1 row) 13 14step s2c: UPDATE a SET i = 4 WHERE i = 3; 15step s2d: COMMIT; 16 17starting permutation: s1a s1b s2a s1c s2b s2c s2d 18step s1a: BEGIN; 19step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); 20step s2a: BEGIN; 21step s1c: COMMIT; 22step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; 23i 24- 251 26(1 row) 27 28step s2c: UPDATE a SET i = 4 WHERE i = 3; 29step s2d: COMMIT; 30 31starting permutation: s1a s1b s2a s2b s1c s2c s2d 32step s1a: BEGIN; 33step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); 34step s2a: BEGIN; 35step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; 36i 37- 381 39(1 row) 40 41step s1c: COMMIT; 42step s2c: UPDATE a SET i = 4 WHERE i = 3; 43step s2d: COMMIT; 44 45starting permutation: s1a s1b s2a s2b s2c s1c s2d 46step s1a: BEGIN; 47step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); 48step s2a: BEGIN; 49step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; 50i 51- 521 53(1 row) 54 55step s2c: UPDATE a SET i = 4 WHERE i = 3; <waiting ...> 56step s1c: COMMIT; 57step s2c: <... completed> 58step s2d: COMMIT; 59 60starting permutation: s1a s2a s1b s1c s2b s2c s2d 61step s1a: BEGIN; 62step s2a: BEGIN; 63step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); 64step s1c: COMMIT; 65step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; 66i 67- 681 69(1 row) 70 71step s2c: UPDATE a SET i = 4 WHERE i = 3; 72step s2d: COMMIT; 73 74starting permutation: s1a s2a s1b s2b s1c s2c s2d 75step s1a: BEGIN; 76step s2a: BEGIN; 77step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); 78step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; 79i 80- 811 82(1 row) 83 84step s1c: COMMIT; 85step s2c: UPDATE a SET i = 4 WHERE i = 3; 86step s2d: COMMIT; 87 88starting permutation: s1a s2a s1b s2b s2c s1c s2d 89step s1a: BEGIN; 90step s2a: BEGIN; 91step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); 92step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; 93i 94- 951 96(1 row) 97 98step s2c: UPDATE a SET i = 4 WHERE i = 3; <waiting ...> 99step s1c: COMMIT; 100step s2c: <... completed> 101step s2d: COMMIT; 102 103starting permutation: s1a s2a s2b s1b s1c s2c s2d 104step s1a: BEGIN; 105step s2a: BEGIN; 106step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; 107i 108- 1091 110(1 row) 111 112step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); 113step s1c: COMMIT; 114step s2c: UPDATE a SET i = 4 WHERE i = 3; 115step s2d: COMMIT; 116 117starting permutation: s1a s2a s2b s1b s2c s1c s2d 118step s1a: BEGIN; 119step s2a: BEGIN; 120step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; 121i 122- 1231 124(1 row) 125 126step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); 127step s2c: UPDATE a SET i = 4 WHERE i = 3; <waiting ...> 128step s1c: COMMIT; 129step s2c: <... completed> 130step s2d: COMMIT; 131 132starting permutation: s1a s2a s2b s2c s1b s2d s1c 133step s1a: BEGIN; 134step s2a: BEGIN; 135step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; 136i 137- 1381 139(1 row) 140 141step s2c: UPDATE a SET i = 4 WHERE i = 3; 142step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); <waiting ...> 143step s2d: COMMIT; 144step s1b: <... completed> 145step s1c: COMMIT; 146 147starting permutation: s1a s2a s2b s2c s2d s1b s1c 148step s1a: BEGIN; 149step s2a: BEGIN; 150step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; 151i 152- 1531 154(1 row) 155 156step s2c: UPDATE a SET i = 4 WHERE i = 3; 157step s2d: COMMIT; 158step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); 159step s1c: COMMIT; 160 161starting permutation: s2a s1a s1b s1c s2b s2c s2d 162step s2a: BEGIN; 163step s1a: BEGIN; 164step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); 165step s1c: COMMIT; 166step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; 167i 168- 1691 170(1 row) 171 172step s2c: UPDATE a SET i = 4 WHERE i = 3; 173step s2d: COMMIT; 174 175starting permutation: s2a s1a s1b s2b s1c s2c s2d 176step s2a: BEGIN; 177step s1a: BEGIN; 178step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); 179step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; 180i 181- 1821 183(1 row) 184 185step s1c: COMMIT; 186step s2c: UPDATE a SET i = 4 WHERE i = 3; 187step s2d: COMMIT; 188 189starting permutation: s2a s1a s1b s2b s2c s1c s2d 190step s2a: BEGIN; 191step s1a: BEGIN; 192step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); 193step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; 194i 195- 1961 197(1 row) 198 199step s2c: UPDATE a SET i = 4 WHERE i = 3; <waiting ...> 200step s1c: COMMIT; 201step s2c: <... completed> 202step s2d: COMMIT; 203 204starting permutation: s2a s1a s2b s1b s1c s2c s2d 205step s2a: BEGIN; 206step s1a: BEGIN; 207step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; 208i 209- 2101 211(1 row) 212 213step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); 214step s1c: COMMIT; 215step s2c: UPDATE a SET i = 4 WHERE i = 3; 216step s2d: COMMIT; 217 218starting permutation: s2a s1a s2b s1b s2c s1c s2d 219step s2a: BEGIN; 220step s1a: BEGIN; 221step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; 222i 223- 2241 225(1 row) 226 227step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); 228step s2c: UPDATE a SET i = 4 WHERE i = 3; <waiting ...> 229step s1c: COMMIT; 230step s2c: <... completed> 231step s2d: COMMIT; 232 233starting permutation: s2a s1a s2b s2c s1b s2d s1c 234step s2a: BEGIN; 235step s1a: BEGIN; 236step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; 237i 238- 2391 240(1 row) 241 242step s2c: UPDATE a SET i = 4 WHERE i = 3; 243step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); <waiting ...> 244step s2d: COMMIT; 245step s1b: <... completed> 246step s1c: COMMIT; 247 248starting permutation: s2a s1a s2b s2c s2d s1b s1c 249step s2a: BEGIN; 250step s1a: BEGIN; 251step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; 252i 253- 2541 255(1 row) 256 257step s2c: UPDATE a SET i = 4 WHERE i = 3; 258step s2d: COMMIT; 259step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); 260step s1c: COMMIT; 261 262starting permutation: s2a s2b s1a s1b s1c s2c s2d 263step s2a: BEGIN; 264step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; 265i 266- 2671 268(1 row) 269 270step s1a: BEGIN; 271step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); 272step s1c: COMMIT; 273step s2c: UPDATE a SET i = 4 WHERE i = 3; 274step s2d: COMMIT; 275 276starting permutation: s2a s2b s1a s1b s2c s1c s2d 277step s2a: BEGIN; 278step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; 279i 280- 2811 282(1 row) 283 284step s1a: BEGIN; 285step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); 286step s2c: UPDATE a SET i = 4 WHERE i = 3; <waiting ...> 287step s1c: COMMIT; 288step s2c: <... completed> 289step s2d: COMMIT; 290 291starting permutation: s2a s2b s1a s2c s1b s2d s1c 292step s2a: BEGIN; 293step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; 294i 295- 2961 297(1 row) 298 299step s1a: BEGIN; 300step s2c: UPDATE a SET i = 4 WHERE i = 3; 301step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); <waiting ...> 302step s2d: COMMIT; 303step s1b: <... completed> 304step s1c: COMMIT; 305 306starting permutation: s2a s2b s1a s2c s2d s1b s1c 307step s2a: BEGIN; 308step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; 309i 310- 3111 312(1 row) 313 314step s1a: BEGIN; 315step s2c: UPDATE a SET i = 4 WHERE i = 3; 316step s2d: COMMIT; 317step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); 318step s1c: COMMIT; 319 320starting permutation: s2a s2b s2c s1a s1b s2d s1c 321step s2a: BEGIN; 322step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; 323i 324- 3251 326(1 row) 327 328step s2c: UPDATE a SET i = 4 WHERE i = 3; 329step s1a: BEGIN; 330step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); <waiting ...> 331step s2d: COMMIT; 332step s1b: <... completed> 333step s1c: COMMIT; 334 335starting permutation: s2a s2b s2c s1a s2d s1b s1c 336step s2a: BEGIN; 337step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; 338i 339- 3401 341(1 row) 342 343step s2c: UPDATE a SET i = 4 WHERE i = 3; 344step s1a: BEGIN; 345step s2d: COMMIT; 346step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); 347step s1c: COMMIT; 348 349starting permutation: s2a s2b s2c s2d s1a s1b s1c 350step s2a: BEGIN; 351step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; 352i 353- 3541 355(1 row) 356 357step s2c: UPDATE a SET i = 4 WHERE i = 3; 358step s2d: COMMIT; 359step s1a: BEGIN; 360step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); 361step s1c: COMMIT; 362