Re: [PDO] Question on Persistent PDO Connections

[email protected] (Christopher Jones) Thu, 05 Nov 2009 12:18:25 -0800
Newsgroups php.pdo
Message-ID <[email protected]>

Kevin Stewart wrote:
> Finally, a concise answer. Thank you.

It's a suggestion, but I think it captures the current implementation.
Let's wait for others to comment before it becomes the de facto
answer.

Chris

> 
> Kevin
> 
> Christopher Jones wrote:
>>
>>
>> Ulf Wendel wrote:
>> > PDO specs: define how PDO drivers may/shall behave
>> > PDO API: implement bool PDO::resetsPersistentConnection()
>> > PDO API: options setPersistentConnectionReset()
>> >
>> > Choose whatever function name you like as long you end up having:
>> >
>> >  - a clear statement in the PDO specs what whall happen
>> >  - a documented and portable way to check the status of the
>> > implementation of a PDO specific feature (here: persistent
>> >  - connections).
>>
>> PDO has a way to detect whether a persistent call was made
>> http://www.php.net/manual/en/pdo.getattribute.php, but there isn't
>> going to be a PDO DB-portable way to tell whether the DB created the
>> connection or reused it or reset etc.
>>
>> So my clear statement (tm) suggestion is "PHP shall not generically
>> make any assummptions about the connection state of a new PDO
>> connection, except that it will not have an open transaction.  Some
>> databases may have optimizations that allow global state information
>> to be retained from a persistent connection in one script into another
>> script.  The safest practice is to assume that this state is not
>> carried over and must be reset.  Refer to the PDO_xxx driver
>> documentation for database specific information".
>>
>> Chris
>>

-- 
Blog: http://blogs.oracle.com/opal
Twitter:  http://twitter.com/ghrd