Connection pooling doesn't account for transport constraints
------------------------------------------------------------
Key: YOKO-286
URL: https://issues.apache.org/jira/browse/YOKO-286
Project: Yoko - CORBA Server
Issue Type: Bug
Components: orb core
Affects Versions: 1.0-incubating-M2
Reporter: David Jencks
Fix For: Incubation
ClientManager combined with Connection_impl do not look at the transport_mech
in a TAG_CSI_SEC_MECH_LIST tagged component in a profile in an IOR. As a
result requests for a required EstablishTrustInClient connection can get filled
with a plan ssl connection.
The attached patch extracts the transport_mech tagged components from the IOR
when a Connection_impl is constructed and uses them to compare equality in the
equal() method and perhaps more importantly filter whether the Connection_impl
is compatible with a second IOR in get_usable_profiles.
This patch solves the immediate problem we were having in geronimo but might be
susceptible to improvement. In particular the extractTransportInfo(IOR) method
only looks at one collection of tagged components whereas get_usable_profiles
appears to be looking at a sequence of collections of tagged components. In
addition it might be possible to filter the profiles returned from
get_usable_profiles to return the compatible profiles rather than insisting
that all the transport infos of every profile match.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.