[rabbitmq-discuss] Breaking API changes in JAva API 2.7.0
Irmo Manie
irmo.manie at gmail.com
Mon Nov 14 10:43:24 GMT 2011
Hi Steve,
> Incidentally, we are interested if you see any anomalies in the
> Java Client info on the rabbitmq documentation pages. Since
> there have been some subtle threading changes in this release
> we appreciate feedback on these issues.
There is an expectation (at least mine) that the passed in
ExecutorService on newConnection is managed by the underlying
connection.
On any shutdown signal I see that the ChannelManager does this when
handling the exception.
There is a problem when connecting to a non-existing host. The
FrameHandler is created, and throwing a UnknownHostException, before
the AMQConnection is created and the ExecutorService is 'managed' and
thus the shutdown of the ExecutorService is left to the user again.
You can imagine that this causes a nice leak when you have an
automatic reconnection setup in place.
------------------
Also I noticed that basicConsume still causes the whole connection to
go down if you throw an exception.
I know that in previous client versions this was because it was called
from the connection thread, but I was expected this to be 'fixed' in
this release because of the separate thread pool for channels.
- Irmo
More information about the rabbitmq-discuss
mailing list