Edit report at https://bugs.php.net/bug.php?id=58925&edit=1

 ID:                 58925
 Updated by:         s...@php.net
 Reported by:        glenn dot schmidt at deakin dot edu dot au
 Summary:            No error information available when
                     php_oci_create_env fails
-Status:             Assigned
+Status:             Closed
 Type:               Bug
 Package:            *General Issues
 Operating System:   Any
 PHP Version:        Irrelevant
 Assigned To:        sixd
 Block user comment: N
 Private report:     N

 New Comment:

This bug has been fixed in SVN.

Snapshots of the sources are packaged every three hours; this change
will be in the next snapshot. You can grab the snapshot at
http://snaps.php.net/.

 For Windows:

http://windows.php.net/snapshots/
 
Thank you for the report, and for helping us make PHP better.

Code to print the Oracle error message has been added.  It may help but from 
previous experience I know it's not feasible to expect Oracle libraries to 
identify the real root causes of misconfigured systems.  So, if the root cause 
is 
some memory corruption from any subsystem involved, I wouldn't expect the 
messages to be reliable.


Previous Comments:
------------------------------------------------------------------------
[2011-11-07 20:10:34] s...@php.net

Automatic comment from SVN on behalf of sixd
Revision: http://svn.php.net/viewvc/?view=revision&revision=318888
Log: Improve OCI8 NLS env creation error messages (#58925)

------------------------------------------------------------------------
[2011-11-07 19:21:56] s...@php.net

It's a pity there is no useful information in this bug about the versions and 
environments this is seen on.  The root problem could be anywhere (including 
webserver memory corruption). However since the failure is coming from the 
environment setup, it's worth triple-checking the OCI8 environment is set 
correctly.  Make sure scripts don't use setenv() to set Oracle environment 
variables.

------------------------------------------------------------------------
[2011-11-07 11:13:58] areddan at silverarm dot com

Does anyone have a solution / update to this one ? I', experiencing similar 
issues on a clients site, and again its not repeatable.

------------------------------------------------------------------------
[2010-09-08 18:57:56] russ at iris dot washington dot edu

I am seeing this error now for the last few months.
Very frustrating because no way to force it to happen.
As far as I know I changed nothing at all.
There must be some resource limit either in PHP or Oracle that 
is not being reported back as being exceeded.
The Apache logs (access and error) contain nothing.

------------------------------------------------------------------------
[2009-11-04 20:52:22] glenn dot schmidt at deakin dot edu dot au

To force an OCIEnvNlsCreate failure you can always move or 
otherwise make inaccessible some of the instant client 
library files.

But the particular issue I am seeing on our production web 
server (running Red Hat EL 5) involves OCIEnvNlsCreate 
failing intermittently, and unfortunately we can't reliably 
reproduce it. All we know is, when it starts to happen, it 
seems to globally affect all web applications on the host 
for a few minutes (none of them can connect), then it goes 
away again.

I'm not saying that the oci8 extension is responsible for 
the problem we're seeing, but the fact that the error 
condition can't be trapped and identified by the PHP script 
(with oci_error()) is making it harder to track the problem 
and identify how frequently it's happening. A lot of 
applications (including Zend_Db) will suppress oci_connect() 
warnings with @ and then only log the output of oci_error().

------------------------------------------------------------------------


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

    https://bugs.php.net/bug.php?id=58925


-- 
Edit this bug report at https://bugs.php.net/bug.php?id=58925&edit=1

Reply via email to