Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code: https://github.com/apache/ambari/blob/branch-2.4/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/configuration/hbase-site.xml#L508

Where should the property be added?

Identify the service version that the property is valid for. Ensure that the version is already defined in common-services. If not, then add a new version to the common-service. Do not add config properties directly in the stack versions unless the config property is only valid for a specific stack (e.g. HDP-2.4)

...

Note: It is not typical to just remove config properties from a released stack definition. If you absolutely must then ensure that there is corresponding Ambari upgrade code to remove the config property as well.

What should the property value be

Within the stack definition only a default value can be provided. There are several choices:

...

What should happen on Ambari upgrade

...

What should happen on Ambari upgrade

The typical behavior is that Ambari upgrade must not modify stack configurations. It is ensured by specifying <on-ambari-upgrade add="false"/> to the config property. Due to historical reasons this is not the default behavior. Earlier versions of Ambari added any missing properties on upgrade. So several existing python scripts assume the existence of the properties.

So unless absolutely required, do not specify a config property to be added by default during Ambari upgrade.

If its needed that a property must be added/updated during Ambari upgrade, there are two choices:

What should happen on Stack upgrade

In contrast, Stack upgrade is a good time to update configs as needed. During stack upgrade all services go through restarts so new config values can easily take effect. By default, stack upgrade will add all new config properties that are missing in the stored configs. In addition, conditional update or deletion of config properties can be achieved through custom declarartive upgrade packs. E.g. https://github.com/apache/ambari/blob/branch-2.4/ambari-server/src/main/resources/stacks/HDP/2.4/upgrades/config-upgrade.xml#L97 deletes a property, https://github.com/apache/ambari/blob/branch-2.4/ambari-server/src/main/resources/stacks/HDP/2.4/upgrades/config-upgrade.xml#L120 modifies the value. 

Display characteristics of the config property

...