This is the mail archive of the java-prs@sourceware.cygnus.com mailing list for the Java project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

libgcj/101: Thread problems on SPARC/Solaris 2.7



>Number:         101
>Category:       libgcj
>Synopsis:       Thread problems on SPARC/Solaris 2.7
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    tromey
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sat Nov 13 07:00:00 PST 1999
>Closed-Date:
>Last-Modified:
>Originator:     joerg.brunsmann@fernuni-hagen.de
>Release:        egcs-19991102, libgcj-snapshot-1999-11-12
>Organization:
>Environment:
SPARC Soloris 2.7
>Description:
1. Multithreaded program dumps core
2. wait/notify doesn't work
>How-To-Repeat:
configure --enable-threads=posix  --enable-java-gc=bo
ehm --with-as=/gnu/bin/as --with-ld=/gnu/bin/ld
Core dump problem:

1. Download:
http://www.informatik.fernuni-hagen.de/import/pi3/joerg/gcjthreads.tar.gz
2. make
3. WebServer 4444
4. In a web browser load http://localhost:4444
5. Reload the page 11 (sic!) times -> core dump (this is 
reproducable)

Wait/notify problem:

1. Edit WebServer.java and set workers to 5 
2. start WebServer 4444
3. Reload http://localhost:4444 five times
4. Reload again -> you get a response which means that
 wait/notify doesn't work

If you start the WebServer with a java vm the code works.

Also I needed to do a flush() on the printstream to get a 
result back to the web client which is not needed when
this program is used with a java vm. To see where these
flush() are needed edit the Worker.java file and search
for "libgcj". I can't say if this is a bug.

Also: if you uncomment the line

  public static final int HTTP_BAD_METHOD = 405;

in Worker.java you get:

gcj -c -o Worker.o Worker.java
Worker.java:133: Undefined variable `HTTP_BAD_METHOD'.
           ps.print("HTTP/1.0 " + HTTP_BAD_METHOD +
                                  ^
which is correct, but the gcj does not return to the
command shell which is a bug.


>Fix:

>Release-Note:
>Audit-Trail:
>Unformatted:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]