From: <php...@li...> - 2004-09-28 15:15:17
|
> now the pattern is a little different though.. the > php script runs fine > for like 15 times.. then the same exception comes up > in JavaBridge.svr > console.. and the php output is this: [error message] It will work fine if you make sure that only one thread at a time accesses the gcj library. > java.lang.StringIndexOutOfBoundsException > at java.lang.String.charAt(int) > (/usr/lib/libgcj.so.4.0.0) It could be a separate issue, but I've had your script running for about half an hour without any problems (I suspected problems with the Boehm GC, but there aren't any. > This starts a new server process for each > incoming request. > > ... what this mean exactly? ... apache is > multithreaded.. and thus I can > have two php scripts running in different threads > and being called at > the same time.. The normal operation is that for each thread or process that apache starts the bridge creates a new request. The server side acknowledges this request and then spawns a new thread. Because of this gcj bug we currently cannot have multiple threads jni threads: 32users -> httpd |-- (32*httpd)--32 conn--->JVM |-> 32 threads So we must start a new process for each request from the bridge: 32users -> httpd |-- (32*httpd)--32 conn--> 32* JVM The best way to do this is to remove the java entry from the php.ini and to load the bridge via dl(). Of course, this is not the normal operation, but it will work until the bug has been fixed. Jost ___________________________________________________________ Gesendet von Yahoo! Mail - Jetzt mit 100MB Speicher kostenlos - Hier anmelden: http://mail.yahoo.de |