Bug report.: Add Realm + no keep-alive -> hang

Ok, it seems I isolated the problem described in a post "new Add Realm
Problem with 1a3 under OS2". Looks like it  has nothing to do with OS2 at
all, but is a subtle bug of Jigsaw.

Basicaly, the hang happens when keep-alive is set to false and then Add
Realm is attempted.
If keep-alive is true, no problems, with keep-alive set to false, Jigsaw
hangs. It does not depend on browser either. I used Netscape2.02 on Mac and
Lynx on Unix with the same result (can I have credits for that hour I spent
debugging Jigsaw? :-} ).

The hang itself happens because of the exception rised deep within Jigsaw
bowels that propogates up to the Thread level and kills at least one of the
clients, possibly more.

I am sending full trace directly to Anselm, but here is the most important
area of it.
The very long list of exceptions at the end happened when I stopped my
Netscape doing loading of the next URL I tried. (/Admin).

Hope it helps in debuging Jigsaw.
             Alex.

Ps. When I create Realm and the default content of the store is
.../config/auth, I don't really understand what they want. The valid thing
I assumed (and it worked) was to say something like .../config/auth/Admin,
but that was not evident at all. Anselm, that place would benefit from
better description/explanation. Even error message that would apear if I
will take default option (which points to directory) could be more
meaningfull as in "the path you entered should be a file within a valid(?)
directory. Since you are creating the new realm its data store should be a
different file from any other datastore files, please go back and choose a
proper name. Thank you". Well, probably better than this, but that is the
idea.

Pps. That Ps was probably big enough to have its own e-mail :-{
Ppps.This two Pp(p?)s did not have to be here at all, but just to lighten
up the bug report... ;-}


------------ Part of the trace -------------------
POST /Admin/Realms/Add+realm HTTP/1.0
Connection: Keep-Alive
Date: Fri, 11 Oct 1996 8:47:25 GMT
Content-Length: 100
Content-Type: application/x-www-form-urlencoded
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, */*
Host: brunswick:9021
Referer: http://brunswick:9021/Admin/Realms/Add+realm
User-Agent: Mozilla/2.02 (Macintosh; I; PPC)

w3c.jigsaw.http.HTTPException
	at w3c.jigsaw.forms.FormCardResource.handle(FormCardResource.java)
	at w3c.jigsaw.forms.PostableResource.post(PostableResource.java)
	at w3c.jigsaw.resources.HTTPResource.perform(HTTPResource.java)
	at w3c.jigsaw.http.httpd.perform(httpd.java)
	at w3c.jigsaw.http.Client.processRequest(Client.java)
	at w3c.jigsaw.http.Client.loop(Client.java)
	at w3c.jigsaw.http.Client.runConnection(Client.java)
	at w3c.jigsaw.http.Client.run(Client.java)
	at java.lang.Thread.run(Thread.java)

HTTP/1.0 302 Moved Temporarily
Cache-Control: no-cache
Date: Fri, 11 Oct 1996 8:47:25 GMT
Pragma: no-cache
Content-Length: 0
Location: http://brunswick:9021/Admin/Realms/Admin
Server: Jigsaw/1.0a3



java.io.IOException: Connection reset by peer
	at java.net.SocketInputStream.read(SocketInputStream.java:89)
	at java.io.BufferedInputStream.fill(BufferedInputStream.java)
	at java.io.BufferedInputStream.read(BufferedInputStream.java)
	at w3c.www.mime.MimeParser.parse(MimeParser.java)
	at w3c.jigsaw.http.Client.getNextRequest(Client.java)
	at w3c.jigsaw.http.Client.loop(Client.java)
	at w3c.jigsaw.http.Client.runConnection(Client.java)
	at w3c.jigsaw.http.Client.run(Client.java)
	at java.lang.Thread.run(Thread.java)
w3c.jigsaw.http.ClientException: Connection reset by peer
	at w3c.jigsaw.http.Client.getNextRequest(Client.java)
	at w3c.jigsaw.http.Client.loop(Client.java)
	at w3c.jigsaw.http.Client.runConnection(Client.java)
	at w3c.jigsaw.http.Client.run(Client.java)
	at java.lang.Thread.run(Thread.java)
w3c.jigsaw.http.ClientException: Connection reset by peer
	at w3c.jigsaw.http.Client.getNextRequest(Client.java)
	at w3c.jigsaw.http.Client.loop(Client.java)
	at w3c.jigsaw.http.Client.runConnection(Client.java)
	at w3c.jigsaw.http.Client.run(Client.java)
	at java.lang.Thread.run(Thread.java)
java.io.IOException: Connection reset by peer
	at java.net.SocketInputStream.read(SocketInputStream.java:89)
	at java.io.BufferedInputStream.fill(BufferedInputStream.java)
	at java.io.BufferedInputStream.read(BufferedInputStream.java)
	at w3c.www.mime.MimeParser.parse(MimeParser.java)
	at w3c.jigsaw.http.Client.getNextRequest(Client.java)
	at w3c.jigsaw.http.Client.loop(Client.java)
	at w3c.jigsaw.http.Client.runConnection(Client.java)
	at w3c.jigsaw.http.Client.run(Client.java)
	at java.lang.Thread.run(Thread.java)


------------ Part of the trace -------------------

--------| I feel as confused as a baby in a topless bar. |--------

Received on Friday, 11 October 1996 05:15:37 UTC