[
https://issues.apache.org/jira/browse/AMBARI-17626?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Keta Patel updated AMBARI-17626:
--------------------------------
Description:
Blueprints make use of a population strategy in the registration step to create
JSON objects for properties and property-attributes. These properties and
property-attributes get stored in the database (DB) in the "clusterconfig"
table under "config_data" and "config_attributes" respectively. Format of these
JSON objects is critical as the UI parses these objects assuming them to be in
a certain format.
At present property-attributes like "final" get stored in "clusterconfig" table
in the format shown in attachment
"original_cluster_used_to_create_blueprint.tiff".
i.e. "final": {"attr1":"val1", "attr2":"val2"}
When a new cluster is to be installed using a blueprint, after the blueprint is
registered and the new cluster is installed using the registered blueprint, the
format of "property-attributes" is as shown in attachment
"cluster_with_defect_installed_from_blueprint.tiff".
i.e. "attr1":{"final":"val1"}, "attr2":{"final":"val2"},
"final":{"attr1":"val1", "attr2":"val2"}
The population strategy is responsible for the "attr1":{"final":"val1"} and
"attr2":{"final":"val2"}.
The reason for "final":{"attr1":"val1", "attr2":"val2"} is because of a merge
with the Parent Configuration during blueprint registration. This Parent
Configuration comes from Stack using the XML files of the service properties.
Because of this "final" attribute, the UI still shows the properties correctly
and hence it went undetected.
Proposed fix involves correcting the population strategy so that the attributes
are placed in the correct format. After the fix, the new cluster installed via
blueprint shows "property-attributes" as shown in attachment
"cluster_with_fix_insatlled_from_blueprint.tiff"
i.e. "final":{"attr1":"val1", "attr2":"val2"}
> Blueprint registration step uses wrong format for property-attributes in
> Configuration
> --------------------------------------------------------------------------------------
>
> Key: AMBARI-17626
> URL: https://issues.apache.org/jira/browse/AMBARI-17626
> Project: Ambari
> Issue Type: Bug
> Components: blueprints
> Affects Versions: trunk
> Reporter: Keta Patel
> Assignee: Keta Patel
> Attachments: cluster_with_defect_installed_from_blueprint.tiff,
> cluster_with_fix_insatlled_from_blueprint.tiff,
> original_cluster_used_to_create_blueprint.tiff
>
>
> Blueprints make use of a population strategy in the registration step to
> create JSON objects for properties and property-attributes. These properties
> and property-attributes get stored in the database (DB) in the
> "clusterconfig" table under "config_data" and "config_attributes"
> respectively. Format of these JSON objects is critical as the UI parses these
> objects assuming them to be in a certain format.
> At present property-attributes like "final" get stored in "clusterconfig"
> table in the format shown in attachment
> "original_cluster_used_to_create_blueprint.tiff".
> i.e. "final": {"attr1":"val1", "attr2":"val2"}
> When a new cluster is to be installed using a blueprint, after the blueprint
> is registered and the new cluster is installed using the registered
> blueprint, the format of "property-attributes" is as shown in attachment
> "cluster_with_defect_installed_from_blueprint.tiff".
> i.e. "attr1":{"final":"val1"}, "attr2":{"final":"val2"},
> "final":{"attr1":"val1", "attr2":"val2"}
> The population strategy is responsible for the "attr1":{"final":"val1"} and
> "attr2":{"final":"val2"}.
> The reason for "final":{"attr1":"val1", "attr2":"val2"} is because of a merge
> with the Parent Configuration during blueprint registration. This Parent
> Configuration comes from Stack using the XML files of the service properties.
> Because of this "final" attribute, the UI still shows the properties
> correctly and hence it went undetected.
> Proposed fix involves correcting the population strategy so that the
> attributes are placed in the correct format. After the fix, the new cluster
> installed via blueprint shows "property-attributes" as shown in attachment
> "cluster_with_fix_insatlled_from_blueprint.tiff"
> i.e. "final":{"attr1":"val1", "attr2":"val2"}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)