----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/64751/ -----------------------------------------------------------
(Updated Dec. 26, 2017, 7:10 p.m.) Review request for Ambari, Jonathan Hurley and Nate Cole. Changes ------- added Livy2 Bugs: AMBARI-22678 https://issues.apache.org/jira/browse/AMBARI-22678 Repository: ambari Description ------- There are two scenarios to cover here: # Ambari never conf-select'd a component (maybe because of a bug or because the component didn't support it) # The conf pointers of a component are broken In either event, when distributing a new stack, the code detects this problem (as it would on a first-time install) and tries to fix it: {code} /etc/component/conf (directory) /usr/hdp/current/component -> /usr/hdp/v1/component /usr/hdp/v1/component -> /etc/component/conf {code} The stack distribution thinks this is a first-time installed and tries to fix the symlinks. We end up with: {code} /etc/component/conf -> /usr/hdp/current/component /usr/hdp/current/component -> /usr/hdp/v1/component /usr/hdp/v1/component -> /etc/component/conf /usr/hdp/v2/component -> /etc/component/v2/0 {code} Because we're only conf-selecting v2, v1 never gets corrected since it's already installed. Thus, we have a circular symlink. Most likely the proper fix will be: - Iterate over the entire known conf-select structure - Check to see the state /etc/component/conf - if it's bad, fix it to defaults Chances are we can do this directly in {{conf_select.convert_conf_directories_to_symlinks}}: {code} stack_name = Script.get_stack_name() for directory_struct in dirs: if not os.path.exists(directory_struct['conf_dir']): Logger.info("Skipping the conf-select tool on {0} since {1} does not exist.".format( package, directory_struct['conf_dir'])) return {code} Diffs (updated) ----- ambari-server/src/main/resources/common-services/SPARK/1.2.1/package/scripts/livy_service.py add5a7789e ambari-server/src/main/resources/common-services/SPARK2/2.0.0/package/scripts/livy2_service.py 0180a315b6 ambari-server/src/main/resources/custom_actions/scripts/install_packages.py 5cff342076 ambari-server/src/main/resources/stacks/HDP/2.0.6/properties/stack_packages.json dc71b4da4f Diff: https://reviews.apache.org/r/64751/diff/3/ Changes: https://reviews.apache.org/r/64751/diff/2-3/ Testing ------- mvn clean test Live cluster check Thanks, Dmitro Lisnichenko