HttpTunnelingClientSocketChannel close timeout after connect failure

JeremyStone jeremy.stone at cyclone-technology.com
Thu Nov 11 10:17:50 EST 2010


When using Netty (3.2.3-Final) with the HornetQ (2.1.2) servlet transport, a
failure to connect to the HornetQ server (e.g. when specifying an incorrect
port) can cause HornetQ to hang on this line in the NettyConnector close()
method:

channelGroup.close().awaitUninterruptibly();

It looks like the problem may be that HttpTunnelingClientSocketChannel
writeLastChunk() (called by closeReal()), throws a NotYetConnectedException
(because the connect failed and the request header did not get written). 

The failure of the close neither gets back to the future returned by close,
nor does close() throw an exception, so it hangs.

Is this a bug in netty? Not sure, but maybe closeReal should just set
success on the future it is handed in the case when the header has not been
written (i.e. it is not open).


-- 
View this message in context: http://netty-forums-and-mailing-lists.685743.n2.nabble.com/HttpTunnelingClientSocketChannel-close-timeout-after-connect-failure-tp5729020p5729020.html
Sent from the Netty User Group mailing list archive at Nabble.com.


More information about the netty-users mailing list