an update about this issue (using trunk r5910).
1. ant runServer
2. ant perfListener -Ddrain.queue=false
3. Ctl+C the perfListener task
=> on the server side, a RemotingServiceImpl.connectionDestroyed() is triggered
* the connection is removed from RemotingServiceImpl connections collection
* connection.destroy() is called => this won't call the listeners on the
connection (no clean up)
Since the connection has been removed from the connections collection, the
FailedConnectionTask will never check if it has expired, it won't call fail() on the
connection which is the place where the associated resources are cleaned-up.
in short, the server will never clean up things when the client is Ctl+C.
A fix would be to keep the connection in the connections when
RemotingServiceImpl.connectionDestroy() is called and let the FailedConnectionTask a
chance to clean up after that.
One thing I don't understand: why is a connection detected as failed by the
ConnectionFailedTask not removed from the connections?
View the original post :
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4211888#...
Reply to the post :
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&a...