----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/45169/ -----------------------------------------------------------
(Updated May 18, 2016, 1:19 p.m.) Review request for Ambari, Alejandro Fernandez, Jonathan Hurley, Jayush Luniya, and Nate Cole. Changes ------- The new patch still has the following remaining items that need answers: 1) It still throws exceptions rather than logging issues. This is consistent with how the StackManager deals with things in the stack that don't work. Waiting for Nate's response on the issue he opened. 2) The after tag still is multi purpose. It orders a new group among the original groups and a new stage/priority/service among the existing ones in an original group. The only unsupported use cases is to add a new group in a service upgrade xml file that will be added to in another service's upgrade xml file. The correct approach would be to use different groups OR to add the group in the stack upgrade xml file. Waiting for Jayush's response on that. Bugs: AMBARI-15388 https://issues.apache.org/jira/browse/AMBARI-15388 Repository: ambari Description ------- Currently the upgrade is defined as a series of xml files specific to the current stack version and the target stack version. Each upgrade xml defines the overall sequence of the upgrade and what needs to be done for each service. It would both easier to maintain and easier to add new services, if the services themselves could specify what should be done during their upgrade. There are two ways to make these changes, the alternate approach would be to only make the java changes and not split the upgrade xml files. This would still allow new services to add themselves into the upgrade. The benefit of this is that for the stack services you only have one upgrade xml file. The problem with that is it is easier for a particular service to have unintentional changes between upgrade xml files. Diffs (updated) ----- ambari-server/src/main/java/org/apache/ambari/server/stack/CommonServiceDirectory.java 7f7a49e ambari-server/src/main/java/org/apache/ambari/server/stack/ServiceDirectory.java 8a7b42b ambari-server/src/main/java/org/apache/ambari/server/stack/ServiceModule.java f781574 ambari-server/src/main/java/org/apache/ambari/server/stack/StackDirectory.java 13d5047 ambari-server/src/main/java/org/apache/ambari/server/stack/StackModule.java 5a18b3f ambari-server/src/main/java/org/apache/ambari/server/stack/StackServiceDirectory.java 88f6e19 ambari-server/src/main/java/org/apache/ambari/server/state/ServiceInfo.java 43cefb9 ambari-server/src/main/java/org/apache/ambari/server/state/stack/UpgradePack.java b860731 ambari-server/src/main/java/org/apache/ambari/server/state/stack/upgrade/ClusterGrouping.java 3325469 ambari-server/src/main/java/org/apache/ambari/server/state/stack/upgrade/Grouping.java 67d7fdb ambari-server/src/main/java/org/apache/ambari/server/state/stack/upgrade/ServiceCheckGrouping.java 5cda422 ambari-server/src/main/resources/stacks/HDP/2.3/upgrades/upgrade-2.3.xml 6b74af0 ambari-server/src/main/resources/stacks/HDP/2.3/upgrades/upgrade-2.4.xml 9fb2bba ambari-server/src/main/resources/stacks/HDP/2.3/upgrades/upgrade-2.5.xml 1e040e6 ambari-server/src/main/resources/stacks/HDP/2.4/upgrades/upgrade-2.4.xml e3bc7a3 ambari-server/src/main/resources/stacks/HDP/2.4/upgrades/upgrade-2.5.xml 6e27da6 ambari-server/src/main/resources/stacks/HDP/2.5/upgrades/upgrade-2.5.xml d755516 ambari-server/src/test/java/org/apache/ambari/server/stack/StackManagerMiscTest.java dda1e7a ambari-server/src/test/java/org/apache/ambari/server/state/stack/UpgradePackTest.java 15be8b4 ambari-server/src/test/resources/stacks/HDP/2.0.5/services/HDFS/upgrades/HDP/2.2.0/upgrade_test_15388.xml PRE-CREATION ambari-server/src/test/resources/stacks/HDP/2.2.0/upgrades/upgrade_test_15388.xml PRE-CREATION ambari-server/src/test/resources/stacks_with_upgrade_cycle/HDP/2.2.0/metainfo.xml PRE-CREATION ambari-server/src/test/resources/stacks_with_upgrade_cycle/HDP/2.2.0/repos/hdp.json PRE-CREATION ambari-server/src/test/resources/stacks_with_upgrade_cycle/HDP/2.2.0/repos/repoinfo.xml PRE-CREATION ambari-server/src/test/resources/stacks_with_upgrade_cycle/HDP/2.2.0/repos/version-2.2.0.4-123.xml PRE-CREATION ambari-server/src/test/resources/stacks_with_upgrade_cycle/HDP/2.2.0/role_command_order.json PRE-CREATION ambari-server/src/test/resources/stacks_with_upgrade_cycle/HDP/2.2.0/services/HDFS/metainfo.xml PRE-CREATION ambari-server/src/test/resources/stacks_with_upgrade_cycle/HDP/2.2.0/services/HDFS/upgrades/HDP/2.2.0/upgrade_test_15388.xml PRE-CREATION ambari-server/src/test/resources/stacks_with_upgrade_cycle/HDP/2.2.0/upgrades/config-upgrade.xml PRE-CREATION ambari-server/src/test/resources/stacks_with_upgrade_cycle/HDP/2.2.0/upgrades/upgrade_test_15388.xml PRE-CREATION Diff: https://reviews.apache.org/r/45169/diff/ Testing ------- Manual testing so far. I have the code read the upgrade xml and all of its service specific xml files, built the upgrade pack and then write the full upgrade xml to disk and then compare the results to the original upgrade xml. This review is mostly for the design doc which is attached to the JIRA. Not sure how to create a review board with a design doc instead of a patch file. Thanks, Tim Thorpe