]
Galder Zamarreno updated JBAS-4815:
-----------------------------------
Fix Version/s: JBossAS-5.0.0.CR1
UnifiedInvokerProxyHA - Client instance check and assignment should
be atomic
-----------------------------------------------------------------------------
Key: JBAS-4815
URL:
http://jira.jboss.com/jira/browse/JBAS-4815
Project: JBoss Application Server
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: Clustering, Remoting
Affects Versions: JBossAS-4.2.1.GA, JBossAS-5.0.0.Beta2
Reporter: Galder Zamarreno
Assigned To: Galder Zamarreno
Fix For: JBossAS-5.0.0.CR1
I have realised that UnifiedInvokerProxy/UnifiedInvokerProxyHA maintain a instance
reference to
the InvokerLocator/Client instances to a specific invocation is using. That is, when a
new target is
chosen, the unified proxy updates its Client and corresponding InvokerLocator instances
(if they've
changed), and uses the Cient instance variable to make the call. As far as I can see
there's no
synchronisation in the usage/assignment of Client or InvokerLocator. Proxies are meant to
be thread
safe which means that multiple client app threads could be using the same proxy without
any problems.
I can see all this going wrong the moment someone uses client proxies this way in a
clustered
environment with round robin load balance policy. We've got no guarantee that round
robin will work
correctly in these situations.
Several solutions have been discussed in
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: