Re: BUG #15977: Inconsistent behavior in chained transactions
От | Fabien COELHO |
---|---|
Тема | Re: BUG #15977: Inconsistent behavior in chained transactions |
Дата | |
Msg-id | alpine.DEB.2.21.1908290815110.28828@lancre обсуждение исходный текст |
Ответ на | Re: BUG #15977: Inconsistent behavior in chained transactions (fn ln <emuser20140816@gmail.com>) |
Ответы |
Re: BUG #15977: Inconsistent behavior in chained transactions
Re: BUG #15977: Inconsistent behavior in chained transactions |
Список | pgsql-bugs |
Hello, > COMMIT AND CHAIN in implicit block leaves blockState as TBLOCK_STARTED, > which doesn't trigger the chaining. but ROLLBACK AND CHAIN sets the > blockState into TBLOCK_ABORT_PENDING, so the chaining is triggered. > > I think disabling s->chain beforehand should do the desired behavior. Patch applies with "patch", although "git apply" complained because of CRLF line terminations forced by the octet-stream mime type. Patch compiles cleanly. Make check ok. Patch works for me, and solution seems appropriate. It should be committed for pg 12.0. There could be a test added in "regress/sql/transactions.sql", I'd suggest something like: -- implicit transaction and not chained. COMMIT AND CHAIN; COMMIT; ROLLBACK AND CHAIN; ROLLBACK; which should show the appropriate "no transaction in progress" warnings. Doc could be made a little clearer about what to expect when there is no explicit transaction in progress. -- Fabien.
В списке pgsql-bugs по дате отправления: