Subject Re: [Firebird-Java] Closing connections, patches and other XA things.
Author Roman Rokytskyy
> I agree that encapsulation should be fixed. However, the GDSProxy
> approach won't work, since there's only one GDS instance per
> ManagedConnectionFactory. The only correct fix would be to move that
> method into GDSHelper class, instances of which are bound to a
> particular ManagedConnection objects.

Ups, sorry, I missed that you suggest to wrap the GDS instance each time
it is obtained from the getInternalAPIHandler() method. In general I'm
not ok with such approach, since it would produce too many short-living
objects and increase load on the garbage collector.


P.S. Some time ago I was lazy checking the pointer position in a buffer
in our XdrOutputStream and did new byte[...] each time before the
instance was used. The performance dropped twice. The
getInternalAPIHandler() is not used that frequently, but still the
effect would be noticeable.