| -- @Description Tests the visibility of an "with hold" cursor w.r.t. deletes. |
| -- |
| DROP TABLE IF EXISTS ao; |
| DROP |
| CREATE TABLE ao (a INT) USING @amname@; |
| CREATE |
| insert into ao select generate_series(1,10); |
| INSERT 10 |
| |
| 1: BEGIN; |
| BEGIN |
| 1: DECLARE cur CURSOR WITH HOLD FOR SELECT a FROM ao ORDER BY a; |
| DECLARE |
| 1: FETCH NEXT IN cur; |
| a |
| --- |
| 1 |
| (1 row) |
| 1: FETCH NEXT IN cur; |
| a |
| --- |
| 2 |
| (1 row) |
| 1: COMMIT; |
| COMMIT |
| 2: BEGIN; |
| BEGIN |
| 2: DELETE FROM ao WHERE a < 5; |
| DELETE 4 |
| 2: COMMIT; |
| COMMIT |
| 3: VACUUM ao; |
| VACUUM |
| 1: FETCH NEXT IN cur; |
| a |
| --- |
| 3 |
| (1 row) |
| 1: FETCH NEXT IN cur; |
| a |
| --- |
| 4 |
| (1 row) |
| 1: FETCH NEXT IN cur; |
| a |
| --- |
| 5 |
| (1 row) |
| 1: CLOSE cur; |
| CLOSE |
| 3: DECLARE cur CURSOR WITH HOLD FOR SELECT a FROM ao ORDER BY a; |
| DECLARE |
| 3: FETCH NEXT IN cur; |
| a |
| --- |
| 5 |
| (1 row) |
| 3: CLOSE cur; |
| CLOSE |