----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/62619/#review186419 -----------------------------------------------------------
ambari-common/src/main/python/resource_management/core/providers/package/yumrpm.py Line 219 (original), 219 (patched) <https://reviews.apache.org/r/62619/#comment262982> This was a bug - if disable_repo was blank, it was not appending * at all ... ambari-server/src/main/resources/custom_actions/scripts/install_packages.py Lines 322-323 (original), 323-333 (patched) <https://reviews.apache.org/r/62619/#comment262983> Here's the change for this bug - use a repo to install a specific version of hdp-select, not relying on the package providers to use priority (of which there is none) Intermediate versions skip the install and report success (error code 0) - Jonathan Hurley On Sept. 27, 2017, 11:57 a.m., Jonathan Hurley wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/62619/ > ----------------------------------------------------------- > > (Updated Sept. 27, 2017, 11:57 a.m.) > > > Review request for Ambari and Nate Cole. > > > Bugs: AMBARI-22076 > https://issues.apache.org/jira/browse/AMBARI-22076 > > > Repository: ambari > > > Description > ------- > > Ambari does not write out repositories with a "priority" attribute since this > is a plugin and is not guaranteed to be installed. Also, when installing > packages with versions "in the middle" of two other installed stacks, > priority would be incorrect as the most recent stack-tools should always be > used. > > The following is seen when trying to distribute a stack for a patch upgrade: > ``` > 2017-09-26 16:28:58,652 - Package Manager failed to install packages. Error: > Execution of '/usr/bin/yum -d 0 -e 0 -y install hive_2_6_3_1_1' returned 1. > Error: Package: hadoop_2_6_3_1_1-2.7.3.2.6.3.1-1.x86_64 (HDP-2.6-repo-2) > Requires: hdp-select >= 2.6.3.1-1 > Installed: hdp-select-2.6.3.0-122.noarch (@HDP-2.6.3.0-122) > hdp-select = 2.6.3.0-122 > ``` > > The cause of this seems to be that the repository for HDP-2.6-repo-2 does not > take priority over the existing installed repository for {{hdp-select}}. > That's actually good - it shouldn't take priority over it arbitrarily. > > However, this means that the {{hdp-select}} which is installed did not get > taken from {{HDP-2.6-repo-2}}. So, when installing {{hdp-select}}, we should > scope the install to the repo we are trying to calculate the version for. > > This works because the stack-select tools do not have their package names > versioned ({{hdp-select}} as opposed to {{hdp-select_x_y_z}}. > > > Diffs > ----- > > > ambari-common/src/main/python/resource_management/core/providers/package/yumrpm.py > e39a4c3f3b > ambari-server/src/main/resources/custom_actions/scripts/install_packages.py > 189043be9f > > > Diff: https://reviews.apache.org/r/62619/diff/1/ > > > Testing > ------- > > Installed intermediate veresions - was able to verify the the highest stack > tools remained: > > ``` > # after installing 2.6.0.2 > [root@c6401 ~]# yum list installed | more | grep hdp-select > hdp-select.noarch 2.6.0.2-81.el6 @HDP-2.6-repo-2 > > # after installing 2.6.0.3 > [root@c6401 ~]# yum list installed | more | grep hdp-select > hdp-select.noarch 2.6.0.3-8.el6 @HDP-2.6-repo-51 > > # for a re-install for 2.6.0.2 > [root@c6401 ~]# /usr/bin/yum -d 0 -e 0 -y install --disablerepo=* > --enablerepo=HDP-2.6-repo-2,HDP-UTILS-1.1.0.21-repo-2 hdp-select > Package matching hdp-select-2.6.0.2-81.el6.noarch already installed. Checking > for update. > > # newer version retained > [root@c6401 ~]# yum list installed | more | grep hdp-select > hdp-select.noarch 2.6.0.3-8.el6 @HDP-2.6-repo-51 > ``` > > > Thanks, > > Jonathan Hurley > >