ID: 32614 Updated by: [EMAIL PROTECTED] Reported By: Oscar dot Castillo at jpl dot nasa dot gov Status: Assigned Bug Type: iPlanet related Operating System: Solaris 9 PHP Version: 5CVS-2005-04-07 (dev) Assigned To: thetaphi New Comment:
Yes, CGI works perfect because crashes of PHP does not affect PHP and the FD limit is not applicable, too. For higher load webservers CGI could be a performance issue. For servers that only have a few PHP scripts it should be enough. A solution with the same performance like NSAPI would be using Zend's FastCGI enabler - but its not open source as I know. My servers produced with SunONE 6.0 a coredump when I debugged the revised NSAPI module two years ago, but with 6.1 I do not know. The only problem is to find the core dump because it is not in the directory the server binaries are. They are in the CWD of the process (usually in the base dir of the running instance). I am still trying to eliminate all Sun stdio problems. The next would be replacing popen() by posix functions in the exec/system functions. One tip by Wez Furlong: Instead of exec/system use the group of functions around proc_open(). They use POSIX io. Previous Comments: ------------------------------------------------------------------------ [2005-04-09 01:48:08] Oscar dot Castillo at jpl dot nasa dot gov By default, iPlanet is not configured to core dump. Some special flags must be enabled to allow core dumping. I do not know the specific syntax to enable core dumping and I must then open a trouble ticket with Sun. I am attempting your suggestion from bug report #32491 to enable PHP as a CGI/Fastcgi via your cgibytex CGI enabler. As of the last 7 hours, PHP is working perfectly. I shall keep you posted. ------------------------------------------------------------------------ [2005-04-08 17:30:37] [EMAIL PROTECTED] Something other: can you load the "core" file the crashing server produces into dbx or gdb and send me the output? ------------------------------------------------------------------------ [2005-04-08 09:48:00] [EMAIL PROTECTED] Info about the solaris "bug": http://docs.sun.com/app/docs/doc/816-5168/6mbb3hr5q?a=view (see under "USAGE") In 64bit solaris it would work, but SunONE is a 32 bit server. ------------------------------------------------------------------------ [2005-04-08 09:37:01] [EMAIL PROTECTED] I found the reason for the bug. The problem is not the file upload here that works now. The problem is now the same stdio related bug which leads to the segmentation fault. I fixed the CVS now not to crash the webserver in this error condition (missing an errorchecking at fdopen() which works on all platform without errors, on solaris fails when the filedescriptor>255). But the problem should still be there but you should get a message in your PHP script. Looking into your code I exspect the "execute" functions to fail because they need to cast a stream from posix to stdio. Please test the new CVS and tell me when the further handling of your uploaded file fails. ------------------------------------------------------------------------ [2005-04-07 18:27:43] Oscar dot Castillo at jpl dot nasa dot gov I also forgot to mention that I am running PHP 5.0.5-dev on 2 other web servers that are used for testing and development of Java, PERL and PHP applications prior to being delivered to the production environment. All flavors of PHP have always worked in the test and development environments, but never in the production environment. The only difference between the 3 environments is that the production environment has a much heavier load than the test and development environments put together. The OS, OS patches, iPlanet version and PHP version are all exactly the same in all 3 web server environments. The fact that you cannot produce the crash in your environment can be related to the light load on your test set up. As mentioned in my last bug report (#32491), I have Java enabled (Very memory intensive) on the web server and our production environment mostly uses JSP and Java servlets. ------------------------------------------------------------------------ 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/32614 -- Edit this bug report at http://bugs.php.net/?id=32614&edit=1