Bug 982147

Summary: when applying multiple erratas rare "Error while executing packages action: Existing lock /var/run/yum.pid: another copy is running as pid 21659." appears
Product: Red Hat Enterprise Linux 6 Reporter: Jan Hutař <jhutar>
Component: rhn-client-toolsAssignee: Milan Zázrivec <mzazrivec>
Status: CLOSED DUPLICATE QA Contact: Red Hat Satellite QA List <satqe-list>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 6.4CC: jeffrey.gottloeb
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-10-15 07:50:37 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Jan Hutař 2013-07-08 09:14:03 UTC
Description of problem:
When I schedule big bunch of erratas to be updated on a system using rhn_check, sometimes some of the erratas is skipped due to yum unable to acquire transaction lock.


Version-Release number of selected component (if applicable):
rhn-client-tools-1.0.0.1-8.el6.noarch
rhnlib-2.5.22-15.el6.noarch
yum-rhn-plugin-0.9.1-45.el6.noarch


How reproducible:
rarely (say, 1 of 100 rhn_check picked erratas)


Steps to Reproduce:
1. Schedule big number of erratas (I have used small custom packages)
2. On a system run `rhn_check -vv` and observe output
3. Make sure all erratas were applied (expected NVRs are installed)


Actual results:
[...]
D: logininfo:{'X-RHN-Server-Id': 1000010016, 'X-RHN-Auth-Server-Time': '1373248992.21', 'X-RHN-Auth': 'fIImq/kEChGu9K25pJnFOg==', 'X-RHN-Auth-Channels': [['parent-uwvuw', '20130707204517', '1', '1'], ['child-of-parent-uwvuw', '20130707204529', '0', '1']], 'X-RHN-Auth-User-Id': '', 'X-RHN-Auth-Expire-Offset': '3600.0'}
D: handle_action{'action': "<?xml version='1.0'?>\n<methodCall>\n<methodName>errata.update</methodName>\n<params>\n<param>\n<value><array><data>\n<value><int>771</int></value>\n</data></array></value>\n</param>\n</params>\n</methodCall>\n", 'version': 2, 'id': 131}
D: handle_action actionid = 131, version = 2
D: do_call errata.update([771],){'cache_only': None}
D: rpcServer: Calling XMLRPC errata.getErrataInfo
D: Called update[['test-arch-uwvuw-2-InChild', '0.2', '2', '', 'x86_64']]
D: Sending back response((6,), 'Error while executing packages action: Existing lock /var/run/yum.pid: another copy is running as pid 21659.', {})
D: check_action{'action': "<?xml version='1.0'?>\n<methodCall>\n<methodName>errata.update</methodName>\n<params>\n<param>\n<value><array><data>\n<value><int>773</int></value>\n</data></array></value>\n</param>\n</params>\n</methodCall>\n", 'version': 2, 'id': 132}
updateLoginInfo() login info
D: login(forceUpdate=True) invoked
[...]


Expected results:
D: Sending back response(0, 'Update Succeeded', {})


Additional info:
I'm not sure, but started to see this quite recently. Maybe it is connected with changes with bug 830219.

Comment 3 Jeff Gottloeb 2013-07-31 04:10:22 UTC
I'd like to add that for my site I consider this issue to have Priority High with Severity Medium.  We have hundreds of workstations that need to be patched in a short maintenance window.  Because rhn_check will randomly fail to install all selected patches, we have to continually monitor which clients fail, reschedule the failed errata, and wait for this second round before being able to reboot the clients (when there are kernel changes and as part of best practice to make sure all errata take effect).

Comment 4 RHEL Program Management 2013-10-14 03:12:00 UTC
This request was not resolved in time for the current release.
Red Hat invites you to ask your support representative to
propose this request, if still desired, for consideration in
the next release of Red Hat Enterprise Linux.

Comment 5 Jan Hutař 2013-10-15 07:50:37 UTC
(In reply to Jeff Gottloeb from comment #3)
> I'd like to add that for my site I consider this issue to have Priority High
> with Severity Medium.  We have hundreds of workstations that need to be
> patched in a short maintenance window.  Because rhn_check will randomly fail
> to install all selected patches, we have to continually monitor which
> clients fail, reschedule the failed errata, and wait for this second round
> before being able to reboot the clients (when there are kernel changes and
> as part of best practice to make sure all errata take effect).

As per mine investigation this was caused by Abrt, which detected a crash during rhn_check run, what triggered sosreport to gather some info about system including list of yum repos which meant running yum - and this yum insteance created the lock and caused subsequent rhn_check to fail (check `abrt-cli list` on affected system). To disable this, I have edited "/etc/libreport/events.d/abrt_event.conf" and removed "--only=yum" from it.

The crash Abrt has detected was this one: bug 983999 which is most probably going to be fixed in RHEL-6.5. If you see different problem, please create new bug (or reopen this one).

*** This bug has been marked as a duplicate of bug 983999 ***