From: hhadjali at cdcsoftware dot com Operating system: AIX 5.3 PHP version: 4.4.8 PHP Bug Type: OCI8 related Bug description: OCIStmtExecute: ORA-03135: connection lost contact
Description: ------------ Hi; We are running on : apache: 1.3.34 php : 4.4.2 Oracle: 10.2.0 Our Web based application seems to have a problem intermittently where by php looses connection to Oracle. We get the following error: login :: :: Mar, 12th 10:28:54 ::: Warning: ociexecute(): OCIStmtExecute: ORA login :: :: Mar, 12th 10:28:54 ::: -03135: connection lost contact in file / login :: :: Mar, 12th 10:28:54 ::: CatalystWMS/wmsbase/web/dbaccess/adodb-oci login :: :: Mar, 12th 10:28:54 ::: 8.inc.php on line 876 -------------------------------------------------------------------------------- login :: :: Mar, 12th 10:28:54 ::: Notice: Only variable references should be login :: :: Mar, 12th 10:28:54 ::: returned by reference in file /CatalystWM login :: :: Mar, 12th 10:28:54 ::: S/wmsbase/web/dbaccess/adodb.inc.php on li login :: :: Mar, 12th 10:28:54 ::: ne 867 -------------------------------------------------------------------------------- login :: :: Mar, 12th 10:28:54 ::: Warning: ociexecute(): OCIStmtExecute: ORA login :: :: Mar, 12th 10:28:54 ::: -03114: not connected to ORACLE in file / login :: :: Mar, 12th 10:28:54 ::: CatalystWMS/wmsbase/web/dbaccess/adodb-oci login :: :: Mar, 12th 10:28:54 ::: 8.inc.php on line 876 -------------------------------------------------------------------------------- login :: :: Mar, 12th 10:28:54 ::: Notice: Only variable references should be login :: :: Mar, 12th 10:28:54 ::: returned by reference in file /CatalystWM login :: :: Mar, 12th 10:28:54 ::: S/wmsbase/web/dbaccess/adodb.inc.php on li login :: :: Mar, 12th 10:28:54 ::: ne 867 -------------------------------------------------------------------------------- The only solution is to restart Apache. Why Apache restart solves the connection problem for a long period? Also, I've prepared a php script that queries the Oracle Database. This seems to work eventhough the problem exist and before we restart Apache. The script is: <?php $conn = OCILogon("username","password", "tnsname"); $stmt = OCIParse($conn,"select emp_id from employee order by emp_id"); #OCIBindByName($stmt, ':emp', $emp); $ok = OCIExecute($stmt); while (OCIFetchInto($stmt,$arr)) { # print_r($arr); echo "EMP_ID = $arr[0]"; echo "<hr>"; } ?> Why the query using the above script works and when the application uses the adodb-oci library we get the "connection lost contact" problem. Is there a bug in the persistent connection or what? Any advise will be appreciated. Thanks Hicham -- Edit bug report at http://bugs.php.net/?id=44416&edit=1 -- Try a CVS snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=44416&r=trysnapshot52 Try a CVS snapshot (PHP 5.3): http://bugs.php.net/fix.php?id=44416&r=trysnapshot53 Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=44416&r=trysnapshot60 Fixed in CVS: http://bugs.php.net/fix.php?id=44416&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=44416&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=44416&r=needtrace Need Reproduce Script: http://bugs.php.net/fix.php?id=44416&r=needscript Try newer version: http://bugs.php.net/fix.php?id=44416&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=44416&r=support Expected behavior: http://bugs.php.net/fix.php?id=44416&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=44416&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=44416&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=44416&r=globals PHP 4 support discontinued: http://bugs.php.net/fix.php?id=44416&r=php4 Daylight Savings: http://bugs.php.net/fix.php?id=44416&r=dst IIS Stability: http://bugs.php.net/fix.php?id=44416&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=44416&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=44416&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=44416&r=nozend MySQL Configuration Error: http://bugs.php.net/fix.php?id=44416&r=mysqlcfg