Subject: bug#67142: 29.1; with-sqlite-transaction commits on exception rather than rolling back

From: Vasilij Schneidermann <[email-masked]>
Date: Thu, 16 Nov 2023 21:25:53 +0100

> Does the change below look correct?  (I'm not an expert on SQLite or
> DB programming in general.)

The `unwind-protect` part does not look correct since the rollback is
always performed, even after the body form completed successfully and a
commit was done. Either a commit or a rollback should be done, not both.
Perhaps `condition-case` would be the better option, but then the error
would need to be re-raised after doing the rollback...

A minor mistake is the result variable not using an uninterned symbol
(or alternatively, `prog1` could replace the use of the result variable).