ID: 22929
Updated by: [EMAIL PROTECTED]
Reported By: soula at lifl dot fr
-Status: Open
+Status: Feedback
Bug Type: OCI8 related
Operating System: tru64
PHP Version: 4.3.3RC4-dev
New Comment:
Please try with latest CVS snapshot and also using this configure
line:
# ./configure --disable-all --with-oci8=/usr/oracle/product/8.1.6
--enable-debug
And if it still crashes, provide a GDB backtrace.
Previous Comments:
------------------------------------------------------------------------
[2003-07-13 12:48:06] soula at lifl dot fr
I've just tested php4-STABLE-200307110730 and it does exactly the same
error :
thread 0xb signal Segmentation fault at
warning: PC value 0x30003f37d60 not valid, trying RA
> [exit, 0x3ff800d8850] ldq t0, 8(s0)
(dbx) where
0 exit(0x1, 0x14004f170, 0x1201557b8,0x14004f170,
0x1201557a4) [0x3ff800d8850]
1 main()
["/usr/local/tmp/php4-STABLE-200307110730/sapi/cli/php_cli.c":6,
0x1201557b4]
Before the unload of OCI modules(php_module_shutdown), the faulty @ is
well defined :
(dbx) 0x30003f37d60/i
[epc_exit_handler:692, 0x30003f37d60] ldah gp, 16387(t12)
--
Julien
------------------------------------------------------------------------
[2003-04-10 13:05:08] michael dot mauch at gmx dot de
php4-STABLE-200304101530 works fine for me on Linux and on Tru64 5.1.
No core dump anymore (and the OCI_SHARED problem is also fixed).
------------------------------------------------------------------------
[2003-03-27 12:14:44] michael dot mauch at gmx dot de
Yes, I see this too on Linux (latest CVS with #undef
HAVE_OCI8_SHARED_MODE in oci8.c).
# php -r 'if(!extension_loaded("oci8")) dl("oci8.so");
print_r(ocilogon("user","pw"));'
Resource id #6zsh: segmentation fault (core dumped) php -r
------------------------------------------------------------------------
[2003-03-27 09:45:46] soula at lifl dot fr
I use php4-STABLE-200303241630 version, Oracle-8.1.7 and Tru64/5.1 .
Note: For technical reason, we have clear the OCI_SHARED in the OCI8
initialize call (cf. #22927)
The Oracle client (libclntsh.so) set a exit handler via "atexit()" when
we connect DB. But PHP unload the module and le library before exiting
and so the handler doesn't exist any more and cause a SIGSEGV.
The solution we found is either commenting the "dlclose()" in
zend_API.c or compiling OCI8 module in static.
Here the compilation config :
Configure Command => './configure'
'--prefix=/usr/local/php-200303241630-ap1' '--enable-memory-limit'
'--enable-shared' '--enable-sockets' '--enable-trans-sid'
'--enable-debug' '--with-config-file-path=/usr/local/lib'
'--with-apxs=/usr/local/apache/bin/apxs' '--enable-debugger=yes'
'--enable-safe-mode' '--with-exec-dir=/usr/bin' '--with-mod_charset'
'--with-openssl' '--with-bz2' '--with-zlib-dir' '--with-gettext'
'--with-kerberos' '--with-regex=system' '--with-zlib'
'--with-gd=shared'
'--with-jpeg-dir=/usr/local/jpeg/lib' '--with-png-dir=/usr/local/lib'
'--with-xpm-dir=/usr/local/lib'
'--with-oci8=shared,/usr/oracle/product/8.1.6' '--with-ldap=shared'
'--with-mysql=shared,/usr/local/mysql'
'--with-pgsql=shared,/usr/local/pgsql'
Sincerly,
-- Julien
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=22929&edit=1