You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ambari.apache.org by "Hudson (JIRA)" <ji...@apache.org> on 2017/12/01 21:55:00 UTC

[jira] [Commented] (AMBARI-22563) Packages Cannot Be Installed When Yum Transactions Fail

    [ https://issues.apache.org/jira/browse/AMBARI-22563?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16275043#comment-16275043 ] 

Hudson commented on AMBARI-22563:
---------------------------------

FAILURE: Integrated in Jenkins build Ambari-branch-2.6 #520 (See [https://builds.apache.org/job/Ambari-branch-2.6/520/])
AMBARI-22563. Packages Cannot Be Installed When Yum Transactions Fail (ncole: [http://git-wip-us.apache.org/repos/asf?p=ambari.git&a=commit&h=0b3b30be1385c014f39b10eed98f577c01556139])
* (edit) ambari-server/src/main/resources/custom_actions/scripts/install_packages.py
* (edit) ambari-common/src/main/python/resource_management/core/providers/package/__init__.py
* (edit) ambari-common/src/main/python/resource_management/core/providers/package/yumrpm.py


> Packages Cannot Be Installed When Yum Transactions Fail
> -------------------------------------------------------
>
>                 Key: AMBARI-22563
>                 URL: https://issues.apache.org/jira/browse/AMBARI-22563
>             Project: Ambari
>          Issue Type: Bug
>          Components: ambari-server
>    Affects Versions: 2.6.1
>            Reporter: Dmytro Grinenko
>            Assignee: Dmytro Grinenko
>            Priority: Blocker
>             Fix For: 2.6.1
>
>
> Many installations are running into an issue with installing new bits in preparation for an upgrade. Consider the following stack trace:
> {code}
> 2017-11-01 18:52:40,456 - No package found for storm_${stack_version}(storm_(\d|_)+$) 
> 2017-11-01 18:52:40,457 - PackageNone
> {'retry_on_repo_unavailability': False, 'retry_count': 5, 'action': ['upgrade']}
> 2017-11-01 18:52:40,457 - Installing package None ('/usr/bin/yum -d 0 -e 0 -y install ''') 
> 2017-11-01 18:52:41,308 - Execution of '/usr/bin/yum -d 0 -e 0 -y install ''' returned 1. Error: Nothing to do
> {code}
> Ambari attempts to determine the correct package to install by first doing a scoped search by a specific repository. Once it has found a match, it then proceeds with the yum install. 
> The problem in the above system is that Storm appears to have already been partially installed:
> {code}
> [root@c6401 ~]# yum list installed | grep storm
> storm_2_6_0_0_334.x86_64    0.7.0.2.6.0.0-334.el6    installed
> {code}
> *Notice that the repository listed for storm shows {{installed}}, instead of a real repository. The actual repository it should be coming from is called {{HDP-2.6-repo-1}}.*
> The odd part here is that this appears to be our first install of storm. If we can't find the package, then how did it even get into this state? It seems like there might be something going on in the agent in terms of killing yum and automatically retrying it. We can see the following:
> {code}
> [root@c6401 ~]# yum-complete-transaction
> Loaded plugins: fastestmirror
> Loading mirror speeds from cached hostfile
>  * base: mirror.solarvps.com
>  * extras: mirrors.mit.edu
>  * updates: mirror.5ninesolutions.com
> There are 1 outstanding transactions to complete. Finishing the most recent one
> The remaining transaction had 1 elements left to run
> --> Running transaction check
> ---> Package storm_2_6_0_0_334.x86_64 0:1.1.0.2.6.0.0-334.el6 will be installed
> --> Finished Dependency Resolution
> {code}
> It's actually pretty easy to duplicate this problem - during a {{yum install}}, just kill yum. It will leave the package in this quasi-installed state where its repo is listed as 'installed' even though it is not.
> I think what's happening here is that the agent receives the command to install storm. During the course of the installation - the yum command gets killed (possibly by the agent itself) and the agent retries to install the package quietly. It then is unable to find the package anymore since it no longer is listed as "available" and is now "installed" with the {{installed}} repository association.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)