From 38c0e7218065d9be47b16f2b36264bcefbabd046 Mon Sep 17 00:00:00 2001 From: Heikki Linnakangas Date: Tue, 21 Jun 2011 17:07:10 +0300 Subject: [PATCH] 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. --- .../regress/expected/prepared_xacts_1.out | 48 ++++++++++++++++--- 1 file 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 5051eaabd7..acd9046732 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