ID: 16502 Comment by: msheldon at ultradns dot com Reported By: bmironov at jonview dot com Status: No Feedback Bug Type: OCI8 related Operating System: RedHat 7.2 PHP Version: 4.1.2 New Comment:
I've been dealing with this bug for a while now. The failover statements mentioned earlier did not help. Once a DB connection fails, it is useless from that point on, but PHP will not drop it, nor does there seem to be any way for me to forcibly terminate it in code. The only thing I can do is to restart apache. Frankly, this is complete foolishness. There is no excuse for there not being an available function to forcibly terminate/reestablish a database connection. Previous Comments: ------------------------------------------------------------------------ [2003-02-20 07:57:43] [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. ------------------------------------------------------------------------ [2003-02-09 15:01:00] [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 ------------------------------------------------------------------------ [2002-04-15 10:51:37] bmironov at jonview dot com Hello, I've tested your solution. This is very elegant! It's working perfectly for Oracle8i database and not working for Oracle7 database. We use Oracle8i clients and listeners. When PHP tries to connect to Oracle7 through Oracle8i client and Oracle8i listener with mentioned above settings, OCIPLogon throws following error: ORA-03115: unsupported network datatype or representation I have another solution but I'm not sure that is "proper" one. I've uncommented call for 'oci_ping' in oci8.c file (rows 2375 - 2361, right after text "XXX ini-flag" in the _oci_open_server function). I understand that it has "price" equals to OCIServerVersion call per each logon. But in case of Oracle7 I don't see solutions so far. Just couple questions left: 1. Is it really proper way for the problem? 2. If it is, Can it be incorporated in coming release? Thanks a lot, Boris ------------------------------------------------------------------------ [2002-04-15 08:55:42] bmironov at jonview dot com Thanks! I'm gonna try it. ------------------------------------------------------------------------ [2002-04-13 09:21:19] [EMAIL PROTECTED] 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 ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/16502 -- Edit this bug report at http://bugs.php.net/?id=16502&edit=1