#30808 [Sus]: oci8 cannot connect after restarting DB

From: Date: Thu, 18 Nov 2004 15:59:40 +0000
Subject: #30808 [Sus]: oci8 cannot connect after restarting DB
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-69222@lists.php.net to get a copy of this message
ID: 30808 User updated by: michael dot caplan at lechateau dot ca Reported By: michael dot caplan at lechateau dot ca Status: Suspended Bug Type: OCI8 related Operating System: RHE 3 PHP Version: 5.0.2 Assigned To: tony2001 New Comment: Ah, yes -- I suppose pinging every time would be a huge overhead. But, how do other db supported by PHP (mysql for example) handle this issue? I can most definately restart mysqld without needed to restart apache to kill all my mysql persistant connections. The mysql library seams to handle this without issue (or perhaps this is something that is negotiated on the mysqld side)? Also, perhaps I am miss understanding you, but you suggest that this issue will be fixed in PDO OCI. If so, why cannot it be fixed in the current OCI8 library? Thanks, Michael Previous Comments: ------------------------------------------------------------------------ [2004-11-18 15:21:25] tony2001@php.net New ini option is needed because pinging every connection would lead to huge overhead. Your situation in fact is an exception, rather then a rule - most people do not restart DB every day, so they would definitely not agree with this slowdown. ------------------------------------------------------------------------ [2004-11-18 15:09:14] michael dot caplan at lechateau dot ca Uncommenting the oci_ping() call does the trick. Both persitant and non persistant connection then work after an Oracle restart. But your reply confuses me. Why a new ini option (you mean at compile time?)? Shouldn't this be the default behaviour? And why should I wait till PDO for a stable way to connect to Oracle? Shouldn't this issue be resolved in the current PHP OCI8 function library? Thanks, Michael ------------------------------------------------------------------------ [2004-11-17 07:35:17] tony2001@php.net Currently you have to uncomment oci_ping() call in _oci_open_server() function (see ext/oci8/oci8.c, line 3048). It was planned to add an ini option for that, but it seems that nobody likes new ini options and I quess we'll take care about it in brand new PDO OCI driver. Personally I do not have any objections to adding new ini option, so I'm marking this resport as suspended for the time present. ------------------------------------------------------------------------ [2004-11-16 20:41:22] michael dot caplan at lechateau dot ca Description: ------------ Every evening, for whatever reason, our Oracle db (9.2.0) is restated. After it is restarted, I am unable to build a connection with Oracle from PHP untill Apache is restarted. Whenever I do an ociplogon() or ocilogon() following an Oracle DB restart, it fails but I am unable to get a description of the error. Restarting Apache "fixes" the problem. This problem is similar to bug #26829 except that it effects both persistent and non persistent conneciton. ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=30808&edit=1

« previous php.bugs (#69222) next »