Remy Maucherat wrote:
[EMAIL PROTECTED] wrote:
Author: fhanik
Date: Fri Jun 16 13:55:06 2006
New Revision: 414906
URL: http://svn.apache.org/viewvc?rev=414906&view=rev
Log:
Fixed comet processing.
The following bug was existing:
When a comet request had begun, and the browser sent some more data,
the Tomcat APR component was never reading the data from the socket
and lead to two kinds of failures
1. The CometServlet.read returned false, cause no data was read, and
the socket closed
2. If the CometServlet.read was overwritten and return true, the
thread got stuck in a loop, forever hanging.
The solution was to read the incoming data from the socket, update
the content length of the request, and make sure that the input
filters would still allow to read the data.
I think the following features still need to be fixed:
1. If CometServlet.read return false, the adapter should call
CometServlet.end, not CometServlet.error
2. If CometServlet.read throws an error, then the adapter should call
CometServlet.error
3. When CometServlet.read returns false, don't close the socket, keep
alive should still work and we should still be able to process more
HTTP requests on that connection
I think there's something conceptually wrong with this. I don't have
time to look into it right now, however.
what part, the check in or the feature set?
the check in, fixes data transfer by doing comet style, ie, both client
and server can "push" data, and working around the HTTP request/response
pull model.
most containers only implement "server async push" but not the client
ability to do the same.
did you have something else in mind?
Rémy
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
--
Filip Hanik
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]