ambari-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Siddharth Wagle (JIRA)" <>
Subject [jira] [Commented] (AMBARI-3489) Unable to reconfigure services with client only components
Date Fri, 11 Oct 2013 06:05:42 GMT


Siddharth Wagle commented on AMBARI-3489:

Comments on the unit test:

Installing only the hdfs client would be a proper to test if the start service triggers a
client re-install.
You could do without these components.

+    String componentName1 = "NAMENODE";
+    String componentName2 = "DATANODE";

> Unable to reconfigure services with client only components
> ----------------------------------------------------------
>                 Key: AMBARI-3489
>                 URL:
>             Project: Ambari
>          Issue Type: Bug
>          Components: controller
>    Affects Versions: 1.3.0
>            Reporter: Adamos Loizou
>            Assignee: Adamos Loizou
>             Fix For: 1.4.2
>         Attachments: client_components_reinstall_with_unit_test.patch, Re_ Reconfiguring
services with client only components.rtf
> We use a custom service in our Ambari instance that comprises only of client components
(i.e. no daemons).
> We used to control its reconfiguration by:
> 1. Stopping the service by changing the service state to {{INSTALLED}}
> 2. Changing the cluster configuration with a {{PUT}} in e.g. {{http://localhost:8080/api/v1/clusters/mycluster}}
with the following body:
> {code:javascript}
>   {
>     "Clusters": {
>       "desired_configs": {
>         "type": "your_custom_service_type",
>         "tag": "your_new_version",
>         "properties": { }# properties here
>       }
>     }
>   }
> {code}
> 3. "Starting" the service by changed the state to {{STARTED}}. Even though the service
would always remain in {{INSTALLED}} state (as being with client-only components) it had the
effect of applying the changed configuration.
> We've recently synced our Ambari version with the latest from trunk and we no longer
see that behaviour (the configuration is not applied).
> After some debugging on the Ambari side, the behaviour change comes from {{AmbariManagementControllerImpl.addClientSchForReinstall(...)}}
> The latest version of the method's signature has had the {{changedServices}} parameter
removed and only relies on the {{changedScHosts}} parameter to proceed with installing client
> In this scenario, it is precisely {{changedServices}} that registers a change while {{changedScHosts}}
remains empty, probably explaining why the client components are never re-installed.
> The way we solved it was to reintroduce the {{changedServices}} parameter and the code
fragment that handled it.
> A patch is provided with the fix.

This message was sent by Atlassian JIRA

View raw message