----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/44831/ -----------------------------------------------------------
Review request for Ambari, Alejandro Fernandez, Dmitro Lisnichenko, and Nate Cole. Bugs: AMBARI-15419 https://issues.apache.org/jira/browse/AMBARI-15419 Repository: ambari Description ------- During an upgrade, configuration files from the old stack are not copied to the new configuration folders created using {{conf-select}}. This means that files which Ambari does not track, are never included in the new configuration directories. This is what happens on a clean install: ``` /etc/foo/conf (physical conf files placed here) /usr/hdp/<version>/foo/conf -> /etc/foo/conf ``` Ambari then uses {{conf-select}} to change this: ``` /etc/foo/conf.backup (contents of original /etc/foo/conf folder) /etc/foo/conf -> /usr/hdp/<version>/foo/conf /usr/hdp/<version>/foo/conf -> /etc/foo/<version>/0 /etc/foo/<version>/0 (physical conf files placed here) ``` But in this scenario, we make sure to seed {{/etc/foo/<version>/0}} with the files which were in {{/etc/foo/conf}} originally, including files which we don't track. This is to prevent files, like JKS keystores, from being lost. *Now the upgrade scenario:* ---- If you already have {{/usr/hdp/2.3.0.0}} installed, that means that you have {{/etc/foo/conf}} and all associated files already on the disk. When you distribute HDP 2.4, {{/usr/hdp/2.4.0.0}} is created. However, it cannot overwrite any existing configurations since you haven't upgraded yet. So, it basically does nothing with the configurations. We invoke {{conf-select}} to create {{/etc/foo/2.4.0.0/0}}, but it is never seeded with any values from {{/etc/foo/2.3.0.0/0}}. Diffs ----- ambari-common/src/main/python/resource_management/libraries/functions/conf_select.py 59c717b ambari-server/src/main/resources/custom_actions/scripts/install_packages.py 08bdcc3 ambari-server/src/test/python/stacks/2.0.6/hooks/after-INSTALL/test_after_install.py daee726 Diff: https://reviews.apache.org/r/44831/diff/ Testing ------- ---------------------------------------------------------------------- Total run:924 Total errors:0 Total failures:0 OK Thanks, Jonathan Hurley