Subject Re: [firebird-support] The PHP default transaction
Author Lester Caine
On 21/01/16 10:44, Tim Ward tdw@... [firebird-support] wrote:
> (1) Is this likely to be the "default transaction" that PHP creates for
> a connection if you don't do an explicit start transaction? Ie, does PHP
> create the default transaction for a connection even if you never use it
> (rather than create it on first use, as one might have hoped)?
> (2) What, if anything, is the import of a transaction being marked
> "inactive"? Does an "inactive" transaction still freeze the various
> transaction counters and hold up garbage collection?
> (3) If the answer to (2) is that the existence of this transaction *is*
> a potential performance problem, I imagine I can get rid of it simply by
> doing "ibase_commit();" at the start of the PHP script?

Sorry Tim ... have been out and about and needed to sit down to expand
on this. Should probably be a discussion for the firebird-php list, but
I think we do need some help from the 'experts' to establish what the
default setup on the PHP driver should be. The PDO driver seems to have
a few problems as well, but I don't find that as flexible due to it's
trying to make even databases without transactions look like ones that
do have them.

I've been using ADOdb since day one for my abstraction layer and this
has allowed borrowing from projects that were only written for other
engines. I've also ported a few bits to Firebird simply by converting
them to ADOdb. I've got a ported version of the adodb-firebird driver
which also uses the fbird_ aliases and is better matched to the firebird
metadata SQL

My starting point ... which seems to work
Rather than the default

But I would appreciate some feedback as to how this fits with later
versions of Firebird. I was running fb1.0 and 1.5 when I started using
this :)

Lester Caine - G8HFL
Contact -
L.S.Caine Electronic Services -
EnquirySolve -
Model Engineers Digital Workshop -
Rainbow Digital Media -