brooklyn-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From aledsage <...@git.apache.org>
Subject [GitHub] brooklyn-server pull request #505: BROOKLYN-404: fix ConcurrentModificationE...
Date Fri, 06 Jan 2017 10:50:06 GMT
GitHub user aledsage opened a pull request:

    https://github.com/apache/brooklyn-server/pull/505

    BROOKLYN-404: fix ConcurrentModificationException in BrooklynProperties

    As discussed in https://issues.apache.org/jira/browse/BROOKLYN-404, the fix is to change
`BrooklynProperties` so it no longer exposes the map interface. This means we can much more
easily control its mutators and its accessors to avoid such `ConcurrentModificationException`s.
    
    This PR does *not* do anything about @neykov's additional suggestion in jira: "Taking
a step back I think we should either let users update the properties in a non-hackish way
(that is include the mutators in the interface which getConfig() returns) or introduce an
alternative "scratch" space to serve the same purpose."
    
    Currently, if someone wants to modify the `BrooklynProperties`, it needs to be cast to
`BrooklynProperties` (whereas `managementContext.getConfig()` returns `StringConfigMap`, which
is a super-interface of `BrooklynProperties`).

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/aledsage/brooklyn-server BROOKLYN-404

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/brooklyn-server/pull/505.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #505
    
----
commit d8a2e24aa4782473265206b34e6a166593af68af
Author: Aled Sage <aled.sage@gmail.com>
Date:   2017-01-04T16:23:17Z

    BROOKLYN-404: improve BrooklynProperties concurrency
    
    BrooklynProperties no longer exposed as java.util.Map

----


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

Mime
View raw message