ID:               26829
 User updated by:  david dot gaia dot kano at dartmouth dot edu
 Reported By:      david dot gaia dot kano at dartmouth dot edu
 Status:           Suspended
 Bug Type:         OCI8 related
 Operating System: Compaq Unix
 PHP Version:      4.3.4
 Assigned To:      tony2001
 New Comment:

Sorry for the delayed respose, sniper. We have been working around this
Ok and I'm finally getting back to checking this bug status.



To clarify, the issue is that our Oracle Administrators have
proceedures that automatically kill any session that has been running
for longer than 24 hours. So no, it is not an issue of the connection
being killed while the script is running.



I think we can wait for php 5 to address this, rather than building a
"latest" php 4 release from CVS. I'm hoping that will be available
fairly soon anyway because I'm excited about the new features! If it is
not released soon, I'll probably build it on my test server and then
check this bug out there to confirm it is fixed.


Previous Comments:
------------------------------------------------------------------------

[2004-02-04 04:01:25] [EMAIL PROTECTED]

This is known issue and should be fixed in future releases of PHP5.



------------------------------------------------------------------------

[2004-01-19 14:12:22] [EMAIL PROTECTED]

No feedback was provided. The bug is being suspended because
we assume that you are no longer experiencing the problem.
If this is not the case and you are able to provide the
information that was requested earlier, please do so and
change the status of the bug back to "Open". Thank you.



------------------------------------------------------------------------

[2004-01-07 20:14:23] [EMAIL PROTECTED]

Please try using this CVS snapshot:

  http://snaps.php.net/php4-STABLE-latest.tar.gz
 
For Windows:
 
  http://snaps.php.net/win32/php4-win32-STABLE-latest.zip

AFAICT, the function does check if persistent connection is still alive
(using oci_ping())..but did you mean the connection is killed while the
script is being run or what?



------------------------------------------------------------------------

[2004-01-07 11:36:45] david dot gaia dot kano at dartmouth dot edu

Description:
------------
Here at Dartmouth our DBA team has a policy of killing any Oracle
session that has been connected for longer than 24 hours. Hence the
persistant connections created by the PHP OCIPLogon() call get killed
once a day. We don't really want to restart our apache server once a
day, so it would be great if OCIPLogon() would check to see that a
previously created persistant connection is still good somehow and if
not, create a new connection.



I noticed quite a few bugs along these lines, but they have all been
closed. I don't know if that is because this bug was fixed or because
the submitters have continued to restart their servers after every
database restart or killed connection.



If this is not going to be fixed, I guess we would have to write our
own application level code to check the connections from ociplogon()
and if it is bad, use OCILogon() instead for that request and issue a
apache_child_terminate() call so that eventually all the children with
bad oracle sessions would be restarted...

Reproduce code:
---------------
$con = OCIPLogon("user", "password", "tns_db_name");

// at this point all looks good still... $con != false

// but if this session was killed then any use of $con 

// results in one error or another.



------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=26829&edit=1

Reply via email to