[jboss-jira] [JBoss JIRA] Commented: (JBAS-4815) UnifiedInvokerProxyHA - Client instance check and assignment should be atomic

Galder Zamarreno (JIRA) jira-events at lists.jboss.org
Thu Feb 28 04:10:42 EST 2008


    [ http://jira.jboss.com/jira/browse/JBAS-4815?page=comments#action_12400807 ] 
            
Galder Zamarreno commented on JBAS-4815:
----------------------------------------

Update:

- Managed to replicate the issue in a unit test case, spanning 
several threads making a number of concurrent calls on the same 
proxy.

- Synchronising UnifiedInvokerHAProxy.getClient(Invocation invocationBasedRouting)
resolves the issue because the initialisation and return of the Client is 
atomic.

> 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: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the jboss-jira mailing list