Aled Sage created BROOKLYN-202:
----------------------------------

             Summary: managementPlaneId should not change on server restart
                 Key: BROOKLYN-202
                 URL: https://issues.apache.org/jira/browse/BROOKLYN-202
             Project: Brooklyn
          Issue Type: Bug
    Affects Versions: 0.8.0
            Reporter: Aled Sage


The {{managementContext.getManagementPlaneId()}} should stay the same when a 
Brooklyn server is restarted. If you have two brooklyn servers running in 
high-availability mode, then they should both return the same management plane 
id.

However, this is not currently true: the id changes on rebind; and in 
high-availability mode then each server has a different id.

Below is the javadoc from {{ManagementContext}} described the expected 
behaviour.

{noformat}
    /** 
     * UID for the Brooklyn management plane which this {@link 
ManagementContext} node is a part of.
     * <p>
     * Each Brooklyn entity is actively managed by a unique management plane 
     * whose ID which should not normally change for the duration of that 
entity, 
     * even though the nodes in that plane might, and the plane may go down and 
come back up. 
     * In other words the value of {@link 
Application#getManagementContext()#getManagementPlaneId()} 
     * will generally be constant (in contrast to {@link 
#getManagementNodeId()}).
     * <p>
     * This value should not be null unless the management context is a 
non-functional
     * (non-deployment) instance. */
    String getManagementPlaneId();
    
    /** 
     * UID for this {@link ManagementContext} node (as part of a single 
management plane).
     * <p>
     * No two instances of {@link ManagementContext} should ever have the same 
node UID. 
     * The value of {@link 
Application#getManagementContext()#getManagementNodeId()} may
     * change many times (in contrast to {@link #getManagementPlaneId()}). 
     * <p>
     * This value should not be null unless the management context is a 
non-functional
     * (non-deployment) instance. */
    String getManagementNodeId();
{noformat}

I encountered this with 0.9.0-SNAPSHOT. I ran {{brooklyn launch --persist auto 
--persistenceDir /Users/aled/temp/empty}}, then restarted. I also then ran a 
second instance (thus in "HA STANDBY" mode), and got that management plane id 
via the groovy console.




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to