I am currently using apache mina 2.0.0-M3 and have found out that rarely but sometimes, connection attempt may fail without the ConnectFuture being informed of the situation. Scenario: I send a request to 1000 devices every 3 minutes connector.setConnectTimeoutMillis(60*1000L) connector.getSessionConfig().setIdleTime(IdleStatus.BOTH_IDLE, 120); I monitor the ConnectFuture's state after 2*60*1000L ms. to see if the ConnectFuture.isDone() I assume that if a connection was established or a failure occured, the ConnectFuture.isDone() would return true. It is the case, 99% of the time, but once in a while around 2 times per 24 hours, the ConnectFuture.isDone() will return false. This is very important for me because I use the ConnectFuture object to pool my connections to a certain device. (I can only make a limited number of connection (1)) to a given device. I don't want to make a connection attempt if one is already ongoing. What would cause a ConnectFuture.isDone to not being set to true eventually? (By the way, no exception where thrown...) It would be nice to have a creationTime value for the ConnectFuture in the API, this would allow us to track those rare cases. I managed to track it using a task which monitor the the ConnectFuture's state after 2 times the ConnectTimeOut delay. Simon
