I discovered a particularly nasty problem using the Resteasy Client Framework
and have documented it in the issue tracker:
https://issues.jboss.org/browse/RESTEASY-963
In a nutshell, if a Client Proxy instance makes a call to the service and the
service throws an exception, the Client is now rendered inoperable because the
underlying connection is not adequately reset.
A sample project is included with the issue that demonstrates the problem.
Note that there is a scenario (when a connection pool no longer has a valid
connection available) where the call becomes FROZEN!
If I had to guess on the solution, I would say that the invoke method of
ClientInvoker needs to catch the exception and release the underlying
connection in the event of an exception.
https://github.com/resteasy/Resteasy/blob/master/jaxrs/resteasy-client/src/main/java/org/jboss/resteasy/client/jaxrs/internal/proxy/ClientInvoker.java#L104
I think this is similar to the issue raised by John D. Ament on the 15th.
(Resteasy should automatically clean up
the connection, but this can not be limited to a GC event because we have no
control over GC events.)
I look forward to seeing this fixed as this is a serious stability risk. Thank
you,
Anthony
------------------------------------------------------------------------------
October Webinars: Code for Performance
Free Intel webinars can help you accelerate application performance.
Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from
the latest Intel processors and coprocessors. See abstracts and register >
http://pubads.g.doubleclick.net/gampad/clk?id=60135031&iu=/4140/ostg.clktrk
_______________________________________________
Resteasy-users mailing list
Resteasy-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/resteasy-users