Subject Re: [firebird-php] Re: Default transaction
Author masotti
Hi Emil,

On 16/12/2011 16:44, ettotev wrote:

> What I mean is - could I have a default transaction that is READ ONLY
> (for example)? I don't see any php.ini parameter related to
> transactions, and in the "Predefined constants" section there is
> IBASE_DEFAULT: The default transaction settings are to be used. This
> default is determined by the client library, which defines it as
> IBASE_WRITE|IBASE_CONCURRENCY|IBASE_WAIT in most cases.

If IIRC, this is a PHP misunderstanding of Firebird's inner workings.
I've checked other drivers (MySQL and OCI8), and seems neither have a
start transaction explicitly stated, but embedded in other call: so it's
not clear how to manage a two phase commit when working with those
servers: theoretically "you don't need that", but really you shoudn't AFAIU.

Perhaps the only possibility is to change in library source (I mean in
./etx/ibase directory) source and recompile PHP. Don't know if it's
provided a switch for make to configure the default transaction
directly, but if there isn't, should be a good request to PHP
mantainers/developers.
As I see ini-set() can't do that.

Ciao.
Mimmo.