Transaction problem with db.query #61
Comments
An other thing strange (for my test i have commented the test on isSelect), so i'm sure the commit is done ! i check the OIT before (with gstat -h) => it seems that when we done request with node-firebird the oit is not refresh ! |
TI dont know if this is related, but On 2015/03/16 07:56 AM, Le Roy Arnaud wrote:
|
Hello, On Mon, Mar 16, 2015 at 7:29 AM, Lafras notifications@github.com wrote:
Slah Lachtar |
The commit that change the behaviour : updated: pooling and better data selection Maybe petersirka can help us ? |
For the behaviour on OIT, OAT, OST it happens only if we do one transaction on one connection.
i ask firebird support to know if this behaviour is normal ! |
Hi,
i have remarked that on a 2.5.2 super server after a query with node-firebird the oit counter is definitevly locked !
this not happen with node-fierbird version < 0.3.0 (test with 0.1.1 and 0.2.0).
If i run this little exemple on node-firebird >= 0.3.0 i obtain this error on detach :
Error: cannot disconnect database with open transactions (1 active)
so it can explain my OIT (oldest interesting transaction) lock.
i have done a quick comparaison in the node-firebird code to find the change and maybe i have found the problem :
Database.prototype.execute = function(query, params, callback, custom) {
....
in version > 0.3.0 there is a test on isSelect
so if we do a select query the transaction is neither commit or rollback, and we can't do in the query callback because there is no reference on transaction.
i think we need to remove it or pass in reference the transaction to the callback. But i think guys that do a query with db.quey don't need to manually commit their query.
The text was updated successfully, but these errors were encountered: