Channel#close returns a ChannelFuture which could be delivered an error. In this case, should the close operation on the channel be retried by user code? Or does Netty guarantee the resources associated with the channel will be eventually released from a single close call?
This has a big impact on how connections should be managed, as if it’s not sufficient to “fire and forget” the close call, channels that need to be closed need to be tracked so a retry policy for closure can be implemented (probably something like “if the channel has not successfully closed within 15 minutes of periodic retries, restart the process”).
Nathan Marz is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.