ID: 15390 Updated by: [EMAIL PROTECTED] Reported By: [EMAIL PROTECTED] -Status: Open +Status: Closed Bug Type: OCI8 related Operating System: RedHat 6.2 PHP Version: 4.0.6 New Comment:
hack: change your tnsnames.ora to include a failover to the same db. PROD=( DESCRIPTION=( ADDRESS=(PROTOCOL=TCP)(Host=127.0.0.1)(Port=1521)) (CONNECT_DATA=(SID=PROD)(failover_mode=(backup=PROD)(type=session)(method=basic)(retry=100)(delay=60))) ) this will make the Net8 client to reconnect automagically Previous Comments: ------------------------------------------------------------------------ [2002-04-09 11:30:29] [EMAIL PROTECTED] Same problem exists under: RedHat 7.2 PHP 4.1.2 (--with-oci8) Oracle8i 8.1.5 ------------------------------------------------------------------------ [2002-02-05 12:59:47] [EMAIL PROTECTED] I have PHP 4.0.6 compiled as an Apache 1.3.20 module with OCI8 and MySQL on RedHat 6.2. I use persistent connections with OCI8 to avoid the costly connection construction for Oracle for each request. However, I notice that these persistent connections get "poisoned" under certain circumstances. What I mean by this is this: Since each persistent connection stays with it's corresponding Apache process, if the database happens to be down when a request comes in, the persistent connection that is used throws an ORA-03113. However, even when the database comes back, the persistent connection still thinks the database is down somehow, and will continue to throw the ORA-03113 error. As a result, if a request happens to hit the poisoned Apache process, it appears the database is down. If a request hits another Apache process, all is OK. So far, the only way I've seen to deal this is to restart Apache, and have the persistent connections build up again. Obviously, this is not a good thing, and if database connectivity is lost in any form, the persistent connections get poisoned again, and the cycle begins. Now as this might not be a bug per se, I would think that persistent connections should at least check that they aren't corrupted in some way; or 'freshen' themselves. Although I haven't tested it fully, I have never seen this behavior with persistent MySQL connections. Please contact me for any further details or clarification if needed. Thank you, Hans ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=15390&edit=1