ASF GitHub Bot commented on BROOKLYN-357:

Github user aledsage commented on the issue:

    This fixes https://issues.apache.org/jira/browse/BROOKLYN-357

> $brooklyn:entitySpec entities blocking each other when resolving DSL
> --------------------------------------------------------------------
>                 Key: BROOKLYN-357
>                 URL: https://issues.apache.org/jira/browse/BROOKLYN-357
>             Project: Brooklyn
>          Issue Type: Bug
>            Reporter: Svetoslav Neykov
> Entities created out of {{$brooklyn:entitySpec}} share their config and DSL 
> objects in particular, blocking each other when resolving them. One entity 
> not able to resolve or taking longer than usual will block the rest entities 
> in the group failing our quorum strategies.
> The locking happens in 
> [{{BrooklynDslDeferredSupplier}}|https://github.com/apache/brooklyn-server/blob/d03f254ba19472e3fb5e0a7260cb07679991684a/camp/camp-brooklyn/src/main/java/org/apache/brooklyn/camp/brooklyn/spi/dsl/BrooklynDslDeferredSupplier.java#L111].
>  The objects don't (or shouldn't) store any state as they are shared between 
> entities so we can remove the locking altogether. An alternative is to clone 
> the objects per entity but it won't fully solve the problem as the DSL object 
> can still be shared between entities through the config inheritance hierarchy.

This message was sent by Atlassian JIRA

Reply via email to