rollback to savepoint leads to transaction already in progress

Поиск
Список
Период
Сортировка
От David Newall
Тема rollback to savepoint leads to transaction already in progress
Дата
Msg-id 4CB24156.7090708@davidnewall.com
обсуждение исходный текст
Ответы Re: rollback to savepoint leads to transaction already in progress
Список pgsql-bugs
Hi all,

Trivial program to demonstrate problem:

main() {
     ECPGdebug(1,stderr);
     exec sql connect to postgres;
     exec sql set autocommit to off;
     exec sql start transaction;
     exec sql savepoint s;
     exec sql rollback to s;
     exec sql commit;
     return 0;
}


Output:

[28397]: ECPGdebug: set to 1
[28397]: ECPGconnect: opening database postgres on <DEFAULT> port <DEFAULT>
[28397]: ECPGsetcommit on line 4: action "off"; connection "postgres"
[28397]: ECPGtrans on line 5: action "start transaction"; connection
"postgres"
[28397]: ECPGtrans on line 6: action "savepoint s"; connection "postgres"
[28397]: ECPGtrans on line 7: action "rollback to s"; connection "postgres"
[28397]: ECPGtrans on line 8: action "commit"; connection "postgres"
[28397]: ECPGnoticeReceiver: there is already a transaction in progress
[28397]: raising sqlcode -603


Problem:

It shouldn't raise "there is already a transaction in progress" error,
particularly when doing a commit.  Remove "rollback to s" and no problem.


Environment:

ecpg (PostgreSQL 8.4.5) 4.5.0
Linux thales 2.6.32-24-generic #43-Ubuntu SMP Thu Sep 16 14:58:24 UTC
2010 x86_64 GNU/Linux
Two cores

This appears to be a regression; it doesn't occur with ecpg (PostgreSQL
8.3.8) 4.4.1


Regards,

David

В списке pgsql-bugs по дате отправления:

Предыдущее
От: Jeff Davis
Дата:
Сообщение: Re: BUG #5702: pg fails to use a conditional index even the where clause matches the condition
Следующее
От: maizi
Дата:
Сообщение: wrong timezone precision using plpythonu trigger