ID: 31533 Updated by: [EMAIL PROTECTED] Reported By: martin dot pala at oskar dot cz -Status: Open +Status: Feedback Bug Type: OCI8 related Operating System: Solaris + Linux PHP Version: 5.0.x Assigned To: tony2001 New Comment:
Give feedback when you have feedback. (Something else than 'we can test..'. And next PHP 5 version is most likely 5.1 and there will not be 5.0.5.. Previous Comments: ------------------------------------------------------------------------ [2005-06-20 12:11:15] martin dot pala at oskar dot cz Thanks for hint :) Unfortunately, the servers are in production already and we can't use development snapshot anymore ... we will wait for php-5.0.5 and test it then. Thanks, Martin ------------------------------------------------------------------------ [2005-06-15 23:44:14] [EMAIL PROTECTED] Please try using this CVS snapshot: http://snaps.php.net/php5-STABLE-latest.tar.gz For Windows: http://snaps.php.net/win32/php5.0-win32-latest.zip ------------------------------------------------------------------------ [2005-04-06 16:17:56] martin dot pala at oskar dot cz ... i forgot to underline the fact that it is related to persistent connections only (as it is possible to see it from older comments ;) "Classical" connections are not affected by this issue. ------------------------------------------------------------------------ [2005-04-06 16:06:36] martin dot pala at oskar dot cz ... finaly we've found the problem :) We were using the same tnsname to create two connections (to two different schemes on the same DB) - the second initialization damaged the oci session context (the physical connection is only one and is shared). Maybe php oci module should not allow to rewrite the existing oci session context ... Possible workaround is: - either use different tnsname (alias) for each connection - it will create several physical connections (one per tnsname) - or consolidate the connections (don't use multiple connections to the same tnsname) ------------------------------------------------------------------------ [2005-04-06 10:36:46] martin dot pala at oskar dot cz We have moved our application to linux (Redhat EL3), it is more stable then on solaris, however the problem persist. Current configuration is PHP-5.0.4 + Apache-2.0.46 + OCI instant client 10.1.0.3. We now see the same crashes in OCI as on solaris. It happens when the child wants to gracefuly exit in _oci_close_session: --8<-- (gdb) bt #0 0x015898f0 in kpufhndl0 () from /usr/lib/oracle/10.1.0.3/client/lib/libclntsh.so.10.1 #0 0x015898f0 in kpufhndl0 () from /usr/lib/oracle/10.1.0.3/client/lib/libclntsh.so.10.1 #1 0x015898a8 in kpufhndl () from /usr/lib/oracle/10.1.0.3/client/lib/libclntsh.so.10.1 #2 0x015fa043 in OCIHandleFree () from /usr/lib/oracle/10.1.0.3/client/lib/libclntsh.so.10.1 #3 0x0111c83a in _oci_close_session (session=0x1f78510) at /usr/src/redhat/BUILD/php-5.0.4/ext/oci8/oci8.c:3007 #4 0x011f54ff in list_entry_destructor (ptr=0xb6a0bc24) at /usr/src/redhat/BUILD/php-5.0.4/Zend/zend_list.c:178 #5 0x011f4248 in zend_hash_apply_deleter (ht=0xb69fe404, p=0xb69fe434) at /usr/src/redhat/BUILD/php-5.0.4/Zend/zend_hash.c:574 #6 0x011f42ec in zend_hash_graceful_reverse_destroy (ht=0x1407754) at /usr/src/redhat/BUILD/php-5.0.4/Zend/zend_hash.c:640 #7 0x011e3fd6 in shutdown_executor () at /usr/src/redhat/BUILD/php-5.0.4/Zend/zend_execute_API.c:283 #8 0x011edaf4 in zend_deactivate () at /usr/src/redhat/BUILD/php-5.0.4/Zend/zend.c:817 #9 0x011b8b66 in php_request_shutdown (dummy=0x0) at /usr/src/redhat/BUILD/php-5.0.4/main/main.c:1216 #10 0x01216fc7 in php_handler (r=0xb72eb030) at /usr/src/redhat/BUILD/php-5.0.4/sapi/apache2handler/sapi_apache2.c:590 #11 0x080685c5 in ap_run_handler () #12 0x08068bdf in ap_invoke_handler () #13 0x08065266 in ap_process_request () #14 0x080608bc in _start () #15 0xb72eb030 in ?? () #16 0x00000004 in ?? () #17 0xb72eb030 in ?? () #18 0x080722dc in ap_run_pre_connection () #19 0x08072195 in ap_run_process_connection () #20 0x08066ae1 in ap_graceful_stop_signalled () #21 0x08066c34 in ap_graceful_stop_signalled () #22 0x08066ed9 in ap_graceful_stop_signalled () #23 0x08067570 in ap_mpm_run () #24 0x0806da4f in main () --8<-- It seems that the session context was damaged: --8<-- (gdb) frame 3 #3 0x0111c83a in _oci_close_session (session=0x1f78510) at /usr/src/redhat/BUILD/php-5.0.4/ext/oci8/oci8.c:3007 3007 ); (gdb) print session $14 = (oci_session *) 0x1f78510 (gdb) print *session $15 = {num = 11990016, persistent = 0 '\0', is_open = 0 '\0', exclusive = 0 '\0', thread = 0 '\0', sessions_list = 0x0, server = 0x1a6eac6, pSession = 0x1882cae, pEnv = 0x1d40c08, charsetId = 51142} (gdb) print *session->server $16 = {num = -2081649835, persistent = 2106149100, is_open = -864712248, dbname = 0x8b08458b <Address 0x8b08458b out of bounds>, pServer = 0x4d8b0c55} --8<-- => it seems that the problem affects all systems, the session context gets somehow corrupted. Martin ------------------------------------------------------------------------ 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/31533 -- Edit this bug report at http://bugs.php.net/?id=31533&edit=1