Re: [PHP-DEV] Bug #494: Interaction between persistent connections and timeouts From: Zeev Suraski (bourbon <email protected>)
Date: 06/30/98

At 05:49 30/06/98 -0000, cclarke <email protected> wrote:
>From: cclarke <email protected>
>Operating system: Solaris
>PHP version: 3.0 Final Release
>PHP Bug Type: ODBC related
>Bug description:
>(This is really generic to any database interface that supports
>persistent connections)
>I have some development scripts that I use to initialize a reasonably
>large database. Depending on the runtime platform and load, some of these
>scripts may or may not complete in the 30 second (default) timeout.
>The scripts are built for that, so I generally just hit Reload.
>
>When I moved to Persistent Connections, and ran one of these scripts on
>a slow machine, I found that the Reload generates database
>errors.
>
>Thinking about this a minute I realized that because the connection
>is persistent, the transaction from the timed-out execution is still
>open in the database and is holding database locks.
>
>One could easily argue that the bug is writing a script that cannot
>live within the tunable timeout, but I thought I'd report it since the result
>is a state that can only really be resolved by stopping the web server.
>
>Would it be an appropriate mod to close any/all persistent connections
>in the event of an execution timeout?

Not as a general rule, in my opinion, but it sounds as an interesting
optional behavior. If it's doable, I'll wrap it up for 3.01.

Zeev

--
Zeev Suraski   <zeev <email protected>>
For a PGP public key, finger bourbon <email protected>