php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #59896 Apache craches
Submitted: 2011-08-18 05:23 UTC Modified: 2011-08-22 18:46 UTC
From: wloche@php.net Assigned:
Status: Not a bug Package: oci8 (PECL)
PHP Version: 5.2.9 OS: Linux SUSE10 SP3
Private report: No CVE-ID: None
 [2011-08-18 05:23 UTC] wloche@php.net
Description:
------------
Hello,

I'm reporting this bug not to get a fix but more to let other people know about the issue and the workaround.

I used PHP 5.2.9/oci8 1.3.5 (not possible to set an earlier version :() with $ORACLE_HOME to 10g client's libraries.
After the database upgrade from 10g to 11gR2, it worked fine until a crash append (core dump with apache). The matter was a new 11g functionality: password expiration!

As soon as I mentioned the new $ORACLE_HOME to 11gR2 client's library, I get this PHP Warning error:

Warning: oci_connect() [function.oci-connect]: OCI_SUCCESS_WITH_INFO: ORA-28002: the password will expire within 6 days

BTW, thx for this extension that works pretty well. (even if I don't know why DRCP doesn't work with RAC... surely an Oracle issue more than this driver !)

Regards,
Wilfried

Reproduce code:
---------------
<?php
$co = oci_connect('user', 'pwd', 'db');


Expected result:
----------------
// with 11g $ORACLE_HOME
Warning: oci_connect() [function.oci-connect]: OCI_SUCCESS_WITH_INFO: ORA-28002: the password will expire within 6 days


Actual result:
--------------
// with 10g $ORACLE_HOME => ORA-28002 is not supported => httpd goes into a core dump


Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2011-08-22 18:46 UTC] christopher dot jones at oracle dot com
Thanks for taking the time to document this.

Also see http://pecl.php.net/bugs/bug.php?id=15441
 [2011-11-24 15:16 UTC] asimileac at gmail dot com
Hello, I too had this problem. But I didn't see any info in php logs, I only had application crashes of Apache server. I too was using an account with password that will expire. I was expecting some warning or an error, but only crashes. I was using version 1.4.1 of php_oci8.dll

My config:
Windows 2003 with SP2
Apache 2.2.11
PHP 5.2.9 + some extensions

I resolved problem with this steps:
1. Downloaded zip package of the php 5.2.9 TS - http://windows.php.net/downloads/releases/archives/php-5.2.9-1-Win32-VC6-x86.zip
2. Extracted and copied php_oci8.dll to my php extension dir.
3. Followed instructions from here http://md.php.net/manual/en/oci8.installation.php for setting Common Oracle Environment Variables - added to my Environment variables LD_LIBRARY_PATH and TNS_ADMIN.
4. Restarted Apache. Called oci_connect. Everything is working. And now I see in php log info about that user defined in oci_connect has password that will expire within XX days.
 [2011-11-24 15:23 UTC] asimileac at gmail dot com
Sorry, I forgot to write version of Oracle - I'm working with Oracle 10g2 and Oracle client has version 10g2
 
PHP Copyright © 2001-2019 The PHP Group
All rights reserved.
Last updated: Tue Jun 25 23:01:25 2019 UTC