Correct grammar in picksplit debug messages
[PostgreSQL.git] / src / test / regress / sql / combocid.sql
blobf24ac6b01a1b5f796aba6f00894444835e752f92
1 --
2 -- Tests for some likely failure cases with combo cmin/cmax mechanism
3 --
4 CREATE TEMP TABLE combocidtest (foobar int);
6 BEGIN;
8 -- a few dummy ops to push up the CommandId counter
9 INSERT INTO combocidtest SELECT 1 LIMIT 0;
10 INSERT INTO combocidtest SELECT 1 LIMIT 0;
11 INSERT INTO combocidtest SELECT 1 LIMIT 0;
12 INSERT INTO combocidtest SELECT 1 LIMIT 0;
13 INSERT INTO combocidtest SELECT 1 LIMIT 0;
14 INSERT INTO combocidtest SELECT 1 LIMIT 0;
15 INSERT INTO combocidtest SELECT 1 LIMIT 0;
16 INSERT INTO combocidtest SELECT 1 LIMIT 0;
17 INSERT INTO combocidtest SELECT 1 LIMIT 0;
18 INSERT INTO combocidtest SELECT 1 LIMIT 0;
20 INSERT INTO combocidtest VALUES (1);
21 INSERT INTO combocidtest VALUES (2);
23 SELECT ctid,cmin,* FROM combocidtest;
25 SAVEPOINT s1;
27 UPDATE combocidtest SET foobar = foobar + 10;
29 -- here we should see only updated tuples
30 SELECT ctid,cmin,* FROM combocidtest;
32 ROLLBACK TO s1;
34 -- now we should see old tuples, but with combo CIDs starting at 0
35 SELECT ctid,cmin,* FROM combocidtest;
37 COMMIT;
39 -- combo data is not there anymore, but should still see tuples
40 SELECT ctid,cmin,* FROM combocidtest;
42 -- Test combo cids with portals
43 BEGIN;
45 INSERT INTO combocidtest VALUES (333);
47 DECLARE c CURSOR FOR SELECT ctid,cmin,* FROM combocidtest;
49 DELETE FROM combocidtest;
51 FETCH ALL FROM c;
53 ROLLBACK;
55 SELECT ctid,cmin,* FROM combocidtest;
57 -- check behavior with locked tuples
58 BEGIN;
60 -- a few dummy ops to push up the CommandId counter
61 INSERT INTO combocidtest SELECT 1 LIMIT 0;
62 INSERT INTO combocidtest SELECT 1 LIMIT 0;
63 INSERT INTO combocidtest SELECT 1 LIMIT 0;
64 INSERT INTO combocidtest SELECT 1 LIMIT 0;
65 INSERT INTO combocidtest SELECT 1 LIMIT 0;
66 INSERT INTO combocidtest SELECT 1 LIMIT 0;
67 INSERT INTO combocidtest SELECT 1 LIMIT 0;
68 INSERT INTO combocidtest SELECT 1 LIMIT 0;
69 INSERT INTO combocidtest SELECT 1 LIMIT 0;
70 INSERT INTO combocidtest SELECT 1 LIMIT 0;
72 INSERT INTO combocidtest VALUES (444);
74 SELECT ctid,cmin,* FROM combocidtest;
76 SAVEPOINT s1;
78 -- this doesn't affect cmin
79 SELECT ctid,cmin,* FROM combocidtest FOR UPDATE;
80 SELECT ctid,cmin,* FROM combocidtest;
82 -- but this does
83 UPDATE combocidtest SET foobar = foobar + 10;
85 SELECT ctid,cmin,* FROM combocidtest;
87 ROLLBACK TO s1;
89 SELECT ctid,cmin,* FROM combocidtest;
91 COMMIT;
93 SELECT ctid,cmin,* FROM combocidtest;