@@ -17,29 +17,29 @@ SELECT * FROM pxtest1;
17
17
bbb
18
18
(1 row)
19
19
20
- PREPARE TRANSACTION 'foo1 ';
20
+ PREPARE TRANSACTION 'regress_foo1 ';
21
21
SELECT * FROM pxtest1;
22
22
foobar
23
23
--------
24
24
aaa
25
25
(1 row)
26
26
27
27
-- Test pg_prepared_xacts system view
28
- SELECT gid FROM pg_prepared_xacts;
29
- gid
30
- ------
31
- foo1
28
+ SELECT gid FROM pg_prepared_xacts WHERE gid ~ '^regress_' ORDER BY gid ;
29
+ gid
30
+ --------------
31
+ regress_foo1
32
32
(1 row)
33
33
34
34
-- Test ROLLBACK PREPARED
35
- ROLLBACK PREPARED 'foo1 ';
35
+ ROLLBACK PREPARED 'regress_foo1 ';
36
36
SELECT * FROM pxtest1;
37
37
foobar
38
38
--------
39
39
aaa
40
40
(1 row)
41
41
42
- SELECT gid FROM pg_prepared_xacts;
42
+ SELECT gid FROM pg_prepared_xacts WHERE gid ~ '^regress_' ORDER BY gid ;
43
43
gid
44
44
-----
45
45
(0 rows)
@@ -54,14 +54,14 @@ SELECT * FROM pxtest1;
54
54
ddd
55
55
(2 rows)
56
56
57
- PREPARE TRANSACTION 'foo2 ';
57
+ PREPARE TRANSACTION 'regress_foo2 ';
58
58
SELECT * FROM pxtest1;
59
59
foobar
60
60
--------
61
61
aaa
62
62
(1 row)
63
63
64
- COMMIT PREPARED 'foo2 ';
64
+ COMMIT PREPARED 'regress_foo2 ';
65
65
SELECT * FROM pxtest1;
66
66
foobar
67
67
--------
@@ -79,26 +79,26 @@ SELECT * FROM pxtest1;
79
79
eee
80
80
(2 rows)
81
81
82
- PREPARE TRANSACTION 'foo3 ';
83
- SELECT gid FROM pg_prepared_xacts;
84
- gid
85
- ------
86
- foo3
82
+ PREPARE TRANSACTION 'regress_foo3 ';
83
+ SELECT gid FROM pg_prepared_xacts WHERE gid ~ '^regress_' ORDER BY gid ;
84
+ gid
85
+ --------------
86
+ regress_foo3
87
87
(1 row)
88
88
89
89
BEGIN TRANSACTION ISOLATION LEVEL SERIALIZABLE;
90
90
INSERT INTO pxtest1 VALUES ('fff');
91
91
-- This should fail, because the gid foo3 is already in use
92
- PREPARE TRANSACTION 'foo3 ';
93
- ERROR: transaction identifier "foo3 " is already in use
92
+ PREPARE TRANSACTION 'regress_foo3 ';
93
+ ERROR: transaction identifier "regress_foo3 " is already in use
94
94
SELECT * FROM pxtest1;
95
95
foobar
96
96
--------
97
97
aaa
98
98
ddd
99
99
(2 rows)
100
100
101
- ROLLBACK PREPARED 'foo3 ';
101
+ ROLLBACK PREPARED 'regress_foo3 ';
102
102
SELECT * FROM pxtest1;
103
103
foobar
104
104
--------
@@ -116,11 +116,11 @@ SELECT * FROM pxtest1;
116
116
eee
117
117
(2 rows)
118
118
119
- PREPARE TRANSACTION 'foo4 ';
120
- SELECT gid FROM pg_prepared_xacts;
121
- gid
122
- ------
123
- foo4
119
+ PREPARE TRANSACTION 'regress_foo4 ';
120
+ SELECT gid FROM pg_prepared_xacts WHERE gid ~ '^regress_' ORDER BY gid ;
121
+ gid
122
+ --------------
123
+ regress_foo4
124
124
(1 row)
125
125
126
126
BEGIN TRANSACTION ISOLATION LEVEL SERIALIZABLE;
@@ -136,15 +136,15 @@ INSERT INTO pxtest1 VALUES ('fff');
136
136
ERROR: could not serialize access due to read/write dependencies among transactions
137
137
DETAIL: Reason code: Canceled on identification as a pivot, during write.
138
138
HINT: The transaction might succeed if retried.
139
- PREPARE TRANSACTION 'foo5 ';
140
- SELECT gid FROM pg_prepared_xacts;
141
- gid
142
- ------
143
- foo4
139
+ PREPARE TRANSACTION 'regress_foo5 ';
140
+ SELECT gid FROM pg_prepared_xacts WHERE gid ~ '^regress_' ORDER BY gid ;
141
+ gid
142
+ --------------
143
+ regress_foo4
144
144
(1 row)
145
145
146
- ROLLBACK PREPARED 'foo4 ';
147
- SELECT gid FROM pg_prepared_xacts;
146
+ ROLLBACK PREPARED 'regress_foo4 ';
147
+ SELECT gid FROM pg_prepared_xacts WHERE gid ~ '^regress_' ORDER BY gid ;
148
148
gid
149
149
-----
150
150
(0 rows)
@@ -165,7 +165,7 @@ SELECT pg_advisory_xact_lock_shared(1);
165
165
166
166
(1 row)
167
167
168
- PREPARE TRANSACTION 'foo6 '; -- fails
168
+ PREPARE TRANSACTION 'regress_foo6 '; -- fails
169
169
ERROR: cannot PREPARE while holding both session-level and transaction-level locks on the same object
170
170
-- Test subtransactions
171
171
BEGIN TRANSACTION ISOLATION LEVEL SERIALIZABLE;
@@ -176,7 +176,7 @@ BEGIN TRANSACTION ISOLATION LEVEL SERIALIZABLE;
176
176
ROLLBACK TO a;
177
177
SAVEPOINT b;
178
178
INSERT INTO pxtest2 VALUES (3);
179
- PREPARE TRANSACTION 'regress-one ';
179
+ PREPARE TRANSACTION 'regress_sub1 ';
180
180
CREATE TABLE pxtest3(fff int);
181
181
-- Test shared invalidation
182
182
BEGIN TRANSACTION ISOLATION LEVEL SERIALIZABLE;
@@ -192,7 +192,7 @@ BEGIN TRANSACTION ISOLATION LEVEL SERIALIZABLE;
192
192
1
193
193
(1 row)
194
194
195
- PREPARE TRANSACTION 'regress-two ';
195
+ PREPARE TRANSACTION 'regress_sub2 ';
196
196
-- No such cursor
197
197
FETCH 1 FROM foo;
198
198
ERROR: cursor "foo" does not exist
@@ -202,11 +202,11 @@ ERROR: relation "pxtest2" does not exist
202
202
LINE 1: SELECT * FROM pxtest2;
203
203
^
204
204
-- There should be two prepared transactions
205
- SELECT gid FROM pg_prepared_xacts;
206
- gid
207
- -------------
208
- regress-one
209
- regress-two
205
+ SELECT gid FROM pg_prepared_xacts WHERE gid ~ '^regress_' ORDER BY gid ;
206
+ gid
207
+ --------------
208
+ regress_sub1
209
+ regress_sub2
210
210
(2 rows)
211
211
212
212
-- pxtest3 should be locked because of the pending DROP
@@ -217,11 +217,11 @@ rollback;
217
217
-- Disconnect, we will continue testing in a different backend
218
218
\c -
219
219
-- There should still be two prepared transactions
220
- SELECT gid FROM pg_prepared_xacts;
221
- gid
222
- -------------
223
- regress-one
224
- regress-two
220
+ SELECT gid FROM pg_prepared_xacts WHERE gid ~ '^regress_' ORDER BY gid ;
221
+ gid
222
+ --------------
223
+ regress_sub1
224
+ regress_sub2
225
225
(2 rows)
226
226
227
227
-- pxtest3 should still be locked because of the pending DROP
@@ -230,7 +230,7 @@ lock table pxtest3 in access share mode nowait;
230
230
ERROR: could not obtain lock on relation "pxtest3"
231
231
rollback;
232
232
-- Commit table creation
233
- COMMIT PREPARED 'regress-one ';
233
+ COMMIT PREPARED 'regress_sub1 ';
234
234
\d pxtest2
235
235
Table "public.pxtest2"
236
236
Column | Type | Collation | Nullable | Default
@@ -245,20 +245,20 @@ SELECT * FROM pxtest2;
245
245
(2 rows)
246
246
247
247
-- There should be one prepared transaction
248
- SELECT gid FROM pg_prepared_xacts;
249
- gid
250
- -------------
251
- regress-two
248
+ SELECT gid FROM pg_prepared_xacts WHERE gid ~ '^regress_' ORDER BY gid ;
249
+ gid
250
+ --------------
251
+ regress_sub2
252
252
(1 row)
253
253
254
254
-- Commit table drop
255
- COMMIT PREPARED 'regress-two ';
255
+ COMMIT PREPARED 'regress_sub2 ';
256
256
SELECT * FROM pxtest3;
257
257
ERROR: relation "pxtest3" does not exist
258
258
LINE 1: SELECT * FROM pxtest3;
259
259
^
260
260
-- There should be no prepared transactions
261
- SELECT gid FROM pg_prepared_xacts;
261
+ SELECT gid FROM pg_prepared_xacts WHERE gid ~ '^regress_' ORDER BY gid ;
262
262
gid
263
263
-----
264
264
(0 rows)
0 commit comments