I just saw the following commit:
https://github.com/FirebirdSQL/firebird/commit/bbf8348817c4592999fc137b18ba1be7326ad42d
This disallows execution of ALTER SESSION RESET if there are
transactions active. I think this is too restrictive.
For example, in Jaybird queries executed through the JDBC API will
always be executed in a transaction. With this change, this statement
must be executed without transaction, which means I must either include
explicit support to detect this statement, or people need to break out
of the JDBC API and use the underlying API, both are options I want to
avoid (especially the last one). I think the same applies for other drivers.
Instead I propose that execution of ALTER SESSION RESET within a
transaction will not fail if the current transaction is the only active
transaction of the connection.
Also, I'm not 100% sure, but it also looks like the current restriction
also doesn't allow for prepared but not yet committed transactions.
Prepared transactions are not active, and presence of these should not
block execution of ALTER SESSION RESET.
Mark
--
Mark Rotteveel
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
Firebird-Devel mailing list, web interface at
https://lists.sourceforge.net/lists/listinfo/firebird-devel