river-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Peter Firmstone (JIRA)" <j...@apache.org>
Subject [jira] [Resolved] (RIVER-148) JoinManager.ProxyReg.fail synchronization may be wrong or may be able to simplify it
Date Sat, 05 Dec 2015 08:03:11 GMT

     [ https://issues.apache.org/jira/browse/RIVER-148?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel

Peter Firmstone resolved RIVER-148.
       Resolution: Fixed
    Fix Version/s: River_3.0.0

JoinManager synchronization has been reviewed, fixed and simplified.

> JoinManager.ProxyReg.fail synchronization may be wrong or may be able to simplify it
> ------------------------------------------------------------------------------------
>                 Key: RIVER-148
>                 URL: https://issues.apache.org/jira/browse/RIVER-148
>             Project: River
>          Issue Type: Bug
>          Components: net_jini_lookup
>    Affects Versions: jtsk_2.1
>            Reporter: Jim Hurley
>            Priority: Minor
>             Fix For: River_3.0.0
> Bugtraq ID [6219149|http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6219149]
> Currently, ProxyReg.fail() synchronizes on 'this', which is the current
> instance of ProxyReg. Within that sync block, it checks to see if the
> JoinManager has been terminated. The check for termination is similar
> to checks performed in a number of other places in JoinManager, except
> that all the other checks are performed while synchronized on the
> JoinManager itself, not a particular proxyReg. The fail() method should
> probably be changed to sync on JoinManager.this, rather than on this.
> Additionally, the only situation in which synchronization is performed on 
> the JoinManager itself is when the JoinManager's terminated status is
> checked. It seems like synchronization could be simplified somewhat if
> those sync blocks were changed to synchronize on joinSet instead of on
> JoinManager.
> Could result in a race condition.

This message was sent by Atlassian JIRA

View raw message