Thread: Two questions about savepoints: Bug or feature?
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hi, I updated the CVS a few minutes before, applied Gavin Sherry's latest xact patch. It worked. Anyway...here is what I did: ==================Case 1================================= test=# BEGIN ; BEGIN test=# SAVEPOINT devrim; SAVEPOINT test=# SAVEPOINT devrim; SAVEPOINT test=# SAVEPOINT devrim; SAVEPOINT test=# ROLLBACK to devrim; ROLLBACK test=# ROLLBACK to devrim; ROLLBACK test=# ROLLBACK to devrim; ROLLBACK test=# ROLLBACK to devrim; ROLLBACK test=# ROLLBACK to devrim; ROLLBACK test=# ROLLBACK to devrim; ROLLBACK test=# ROLLBACK to devrim; ROLLBACK ...and it goes on forever. Is it a feature or a bug? Now case 2: ==================Case 2================================= test=# BEGIN ; BEGIN test=# INSERT INTO a VALUES ('123'); INSERT 17231 1 test=# INSERT INTO a VALUES ('1dfsd'); INSERT 17232 1 test=# SAVEPOINT devrim; SAVEPOINT test=# DELETE from a WHERE x ='123'; DELETE 1 test=# SAVEPOINT devrim; SAVEPOINT test=# DELETE from a WHERE x ='123'; DELETE 0 test=# SAVEPOINT devrim; SAVEPOINT test=# DELETE from a WHERE x ='1dfsd'; DELETE 1 test=# SELECT * from a ;x - --- (0 rows) test=# ROLLBACK to devrim; ROLLBACK test=# SELECT * from a ; x - -------1dfsd (1 row) test=# ROLLBACK to devrim; ROLLBACK test=# SELECT * from a ; x - -------1dfsd (1 row) test=# COMMIT ; COMMIT test=# SELECT * from a ; x - -------1dfsd ======================================== Are these all intended behaviors? I thought we wouldn't be able to give more than 1 same name to savepoints in a transaction, am I right? Regards, - -- Devrim GUNDUZ devrim~gunduz.org devrim.gunduz~linux.org.tr http://www.tdmsoft.com http://www.gunduz.org -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.1 (GNU/Linux) iD8DBQFBD5fitl86P3SPfQ4RAuErAKDYC33X4CjYmv6TuoddJaBkl7TKYgCeN6ZF /0Ky5+BWo1wFFNBdMpQ6txw= =XV4n -----END PGP SIGNATURE-----
> test=# ROLLBACK to devrim; > ROLLBACK > test=# ROLLBACK to devrim; > ROLLBACK > > ...and it goes on forever. Is it a feature or a bug? > feature. You can rollback to a savepoint multiple times (0 or more savepoints might intervene) > Are these all intended behaviors? I thought we wouldn't be able to give > more than 1 same name to savepoints in a transaction, am I right? Nope. Read: http://www.destructor.de/firebird/1.5/savepoints.txt Merlin
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hi, On Tue, 3 Aug 2004, Merlin Moncure wrote: > > test=# ROLLBACK to devrim; > > ROLLBACK > > > > ...and it goes on forever. Is it a feature or a bug? > > feature. You can rollback to a savepoint multiple times (0 or more > savepoints might intervene) When I wrote that e-mail, I could not think of a situation that someone wanted to rollback to the same savepoint many times... But a few minutes ago I got the point. Sorry. > > Are these all intended behaviors? I thought we wouldn't be able to > give > > more than 1 same name to savepoints in a transaction, am I right? > > Nope. Read: > http://www.destructor.de/firebird/1.5/savepoints.txt Thanks for the link. Now things are more clear to me. Regards, - -- Devrim GUNDUZ devrim~gunduz.org devrim.gunduz~linux.org.tr http://www.tdmsoft.com http://www.gunduz.org -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.1 (GNU/Linux) iD8DBQFBD522tl86P3SPfQ4RAu6OAKCfs8Vy+p1FtS/xmOBXMKxhfmZWwACgqMRk QJTgQaGYO3Z45Js6IIn3XvA= =Y6Na -----END PGP SIGNATURE-----
Devrim GUNDUZ <devrim@gunduz.org> writes: > Are these all intended behaviors? Yes. Rolling back to a savepoint doesn't release the savepoint. See http://developer.postgresql.org/docs/postgres/sql-savepoint.html http://developer.postgresql.org/docs/postgres/sql-rollback-to.html http://developer.postgresql.org/docs/postgres/sql-release.html regards, tom lane