[ http://nagoya.apache.org/jira/browse/GERONIMO-373?page=comments#action_55119 ] David Farb commented on GERONIMO-373: -------------------------------------
As far as I am concerned this can be closed. I don't think I have the authority to close it myself. If you want improvements/changes in the code I submitted, let me know and I will do what I can. Thanks Keep up the good work. > Percolate errors from SocketProtocol up the stack > ------------------------------------------------- > > Key: GERONIMO-373 > URL: http://nagoya.apache.org/jira/browse/GERONIMO-373 > Project: Apache Geronimo > Type: Improvement > Components: general > Environment: All environments > Reporter: David Farb > Assignee: Alan Cabrera > Attachments: Geronimo-373.zip > > o.a.g.network.protocol.SocketProtocol does not percolate a client error or > exception up the protocol stack when the client disconnects. > When serviceRead in SocketProtocol gets an IOException or some other error, > the socketChannel is closed, but the up protocol is not informed. > Calling the teardown method of the up protocol is probably not an appropriate > way to handle these exceptions. The teardown method should be called by the > creator of the protocol stack. Instead, the exception/error should percolate > up the protocol stack to the creator (via some sort of callback mechanism) > which should then remove the stack and associated information from the server > environment. > Either a new method reserved for this could be defined in the Protocol > interface (up.handleException(Throwable t)) or sending a null, empty or > specially marked packet via up.sendUp(UpPacket upPacket) could be implemented. > Since in most cases the server is waiting for a client response, if the > client goes away, server components need to be informed of this fact so the > server side objects can be cleaned up. There is usually no way to recover > these objects, hence they are a memory leak. > I would be happy to submit a fix for this, but I would appreciate feedback on > the most appropriate way to do it. > Thanks > David Farb -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://nagoya.apache.org/jira/secure/Administrators.jspa - If you want more information on JIRA, or have a bug to report see: http://www.atlassian.com/software/jira
