ID: 32485 Updated by: [EMAIL PROTECTED] Reported By: phpbug at pech dot cz -Status: Open +Status: Bogus Bug Type: OCI8 related Operating System: Linux 2.4.22 PHP Version: 5.0.3 New Comment:
IIRC, there is a note about setting the environment variables in the manual.. Previous Comments: ------------------------------------------------------------------------ [2005-04-01 11:43:09] phpbug at pech dot cz Hi Tony, latest CVS version did not fixed it, so I went through the the runtime and compile time configuration and I've found that the configuration, which worked fine with Fedora Core 1-2/Oracle 8.1.7.4/PHP4 was: export ORACLE_BASE=your_location export ORACLE_HOME=$ORACLE_BASE export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data export ORA_LOG=your_log_location export NLS_LANG=your_encoding export NLS_SORT="your_sort_style" export LD_LIBRARY_PATH=$ORACLE_HOME/lib:${LD_LIBRARY_PATH} export LD_ASSUME_KERNEL=2.2.5 #export LD_PRELOAD=$ORACLE_HOME/lib/libclntsh.so When LD_PRELOAD was set (properly) with PHP4, apache never started up. But it works fine with PHP5 and we, fortunatelly, have no more strange core dumps. I apologize, you've said that. So, please, mark this as bogus, but maybe leave a note in the documentation. I assume that it impacts only some architectures. ------------------------------------------------------------------------ [2005-03-29 20:40:26] phpbug at pech dot cz Hi Tony! I'm not running it from apache, but from the command line (as mentioned above). The server is running for years (from Fedora Core 1) without any significant changes, except of kernel updates and so. Segfaults appeared first with upgrade of PHP to 5.0.3 (previous was 4.3.10). Environment variables are set up fine (as mentioned above). TNS_ADMIN is not set, but this is strictly optional, because the client always looks for tnsnames.ora file to $ORACLE_HOME/network/admin. Connection is established on oci_connect() call, I can also do any database processing and then call oci_close(), but it segfaults _after_ the script ends (which looks like some error in eg. free() call). Maybe the problem is in the combination of PHP5 vs. Oracle 8.1.7.4 client or a part of it. I don't have an instant client, but regular 8.1.7.4 server on the same machine. I'll try the latest snapshot as soon as possible and I'll let you know. ------------------------------------------------------------------------ [2005-03-29 18:38:53] [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 Can't reproduce it. Check twice and then recheck that you have set all the required env vars like ORACLE_HOME, TNS_ADMIN etc. and that they are available for Apache user. ------------------------------------------------------------------------ [2005-03-29 18:21:20] phpbug at pech dot cz Sorry, but I don't think so. Of course I haven't set them up and then a memory leak was reported, but normally I have all the variables (like ORACLE_HOME, ORACLE_BASE, ORA_NLS33 and NLS_LANG) set up fine. And everything works in PHP4, but not in PHP5. The biggest problem is the segfault after processing the script, not the memory leak (which I've reported just for help you to find out what's wrong). But there may be no connection between then memory leak (when env vars unset) and the segfault. ------------------------------------------------------------------------ [2005-03-29 17:39:21] [EMAIL PROTECTED] You don't have the Oracle environment variables set correctly. ------------------------------------------------------------------------ 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/32485 -- Edit this bug report at http://bugs.php.net/?id=32485&edit=1