#18869 [Opn]: include and include_once fail under load in iPlanet/NSAPI
| From: | fillmore at NRCan dot gc dot ca | Date: | Tue, 13 Aug 2002 12:53:53 +0000 |
| Subject: | #18869 [Opn]: include and include_once fail under load in iPlanet/NSAPI | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-16605@lists.php.net to get a copy of this message | ||
ID: 18869
User updated by: fillmore@NRCan.gc.ca
Reported By: fillmore@NRCan.gc.ca
Status: Open
Bug Type: Scripting Engine problem
Operating System: Solaris 8
PHP Version: 4.2.2
New Comment:
A colleague pointed out this bug entry to me:
http://bugs.php.net/bug.php?id=16037
We recoded our scripts to use the string variable
substitution syntax suggested by that bug report,
and reran our load tests without disabling multithreading,
and it now works! I think that this proves that there
is something wrong in the PHP script engine.
- Bob
Previous Comments:
------------------------------------------------------------------------
[2002-08-12 12:32:20] rasmus@php.net
PHP should be threadsafe, but chances are some of the 3rd party libs
you have linked in are not. It is the same problem the threaded
version of Apache2 has. A lot of UNIX libraries are simply not
threadsafe and we don't have a good handle on which ones are and which
ones aren't.
Having said that, the NSAPI code has not had extensive testing, so
there could very well be a bug lurking. Try Apache instead.
------------------------------------------------------------------------
[2002-08-12 12:27:50] fillmore@NRCan.gc.ca
A site was developed with scripts that use "include" and
"include_once",
and it worked fine until the client load increased. The symptoms
include
various parser errors that seem to indicate that code from an include
file
was truncated or corrupted. The errors are reproduceable using a web
load generator. Assuming that the problem may be caused by code that
is not thread-safe, I configured iPlanet web server to limit the
number
of threads for PHP to 1 - this fixed the problem. However, PHP should
really be thread-safe when running in an iPlanet 4.1/NSAPI
environment.
Here are the obj.conf changes to fix the problem:
Init fn="thread-pool-init" name="php-thread-pool"
MinThreads="1" MaxThreads="1" QueueSize="300"
Init
fn="load-modules"funcs="php4_init,php4_close,php4_execute,php4_auth_trans"
shlib="/suitespot/bin/libphp4.so" pool="php-thread-pool"
Here is the config call:
CC=gcc ./configure --prefix=/usr/local/php
--with-config-file-path=/usr/local/ph
p/etc --with-nsapi=/suitespot --enable-libgcc --enable-dbase
--with-xml
Thanks,
Bob Fillmore
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=18869&edit=1