aries-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Grzegorz Grzybek (JIRA)" <>
Subject [jira] [Commented] (ARIES-1732) blueprint-cm - race condition
Date Mon, 21 Aug 2017 07:24:00 GMT


Grzegorz Grzybek commented on ARIES-1732:

boolean logic isn't that easy...
When I tried the above, creating BP container when there's no PID, lead to uninitialized {{CmManagedProperties#initialized}}.
So when the PID was created, {{CmManagedProperties}} was initialized, but the container wasn't
reloaded (because it was being initialized). There's another boolean flag needed then to know
we're in _was initialized with empty properties_

> blueprint-cm - race condition
> -----------------------------
>                 Key: ARIES-1732
>                 URL:
>             Project: Aries
>          Issue Type: Bug
>          Components: Blueprint
>            Reporter: Paolo Antinori
>            Assignee: Grzegorz Grzybek
> There is a possible race condition in ``
and ``
> There are situations where `ConfigAdmin` service might not be available and returns `null`
when queried for the initial `config`.
> In other cases instead, `CmPropertyPlaceholder` receives updates from `ConfigAdmin` thread
even before it has completed it's initialization.
> The code doesn't discriminate if `config` is `null` or not, and treats any value as valid,
marking `CmPropertyPlaceholder` instance as initialized.
> This leads to spotty errors.
> The suggested fix, that simply prevents that `update(null)` invocation mark the `CmPropertyPlaceholder`
instance as initialized, addresses the issue.
> Code here:

This message was sent by Atlassian JIRA

View raw message