aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorHeikki Linnakangas <heikki.linnakangas@iki.fi>2011-06-21 17:07:10 +0300
committerHeikki Linnakangas <heikki.linnakangas@iki.fi>2011-06-21 17:08:56 +0300
commit35dd6d48eccbfcd2cb5b4e571e760e1c1f1534fc (patch)
treeb53e7508a52db2049474dc40bd8133bdb75deca5 /src
parent390c52131b7a42d7b5528d0435d7f6279bdf0ed0 (diff)
downloadpostgresql-35dd6d48eccbfcd2cb5b4e571e760e1c1f1534fc.tar.gz
postgresql-35dd6d48eccbfcd2cb5b4e571e760e1c1f1534fc.zip
Adjust the alternative expected output file for prepared_xacts test case,
used when max_prepared_transactions=0, for the recent changes in the test case.
Diffstat (limited to 'src')
-rw-r--r--src/test/regress/expected/prepared_xacts_1.out48
1 files changed, 41 insertions, 7 deletions
diff --git a/src/test/regress/expected/prepared_xacts_1.out b/src/test/regress/expected/prepared_xacts_1.out
index 5051eaabd71..acd90467328 100644
--- a/src/test/regress/expected/prepared_xacts_1.out
+++ b/src/test/regress/expected/prepared_xacts_1.out
@@ -92,13 +92,6 @@ SELECT gid FROM pg_prepared_xacts;
BEGIN TRANSACTION ISOLATION LEVEL SERIALIZABLE;
INSERT INTO pxtest1 VALUES ('fff');
-SELECT * FROM pxtest1;
- foobar
---------
- aaa
- fff
-(2 rows)
-
-- This should fail, because the gid foo3 is already in use
PREPARE TRANSACTION 'foo3';
ERROR: prepared transactions are disabled
@@ -117,6 +110,47 @@ SELECT * FROM pxtest1;
aaa
(1 row)
+-- Test serialization failure (SSI)
+BEGIN TRANSACTION ISOLATION LEVEL SERIALIZABLE;
+UPDATE pxtest1 SET foobar = 'eee' WHERE foobar = 'ddd';
+SELECT * FROM pxtest1;
+ foobar
+--------
+ aaa
+(1 row)
+
+PREPARE TRANSACTION 'foo4';
+ERROR: prepared transactions are disabled
+HINT: Set max_prepared_transactions to a nonzero value.
+SELECT gid FROM pg_prepared_xacts;
+ gid
+-----
+(0 rows)
+
+BEGIN TRANSACTION ISOLATION LEVEL SERIALIZABLE;
+SELECT * FROM pxtest1;
+ foobar
+--------
+ aaa
+(1 row)
+
+INSERT INTO pxtest1 VALUES ('fff');
+-- This should fail, because the two transactions have a write-skew anomaly
+PREPARE TRANSACTION 'foo5';
+ERROR: prepared transactions are disabled
+HINT: Set max_prepared_transactions to a nonzero value.
+SELECT gid FROM pg_prepared_xacts;
+ gid
+-----
+(0 rows)
+
+ROLLBACK PREPARED 'foo4';
+ERROR: prepared transaction with identifier "foo4" does not exist
+SELECT gid FROM pg_prepared_xacts;
+ gid
+-----
+(0 rows)
+
-- Clean up
DROP TABLE pxtest1;
-- Test subtransactions