Bug 699929

Summary: anaconda erroneously reports error occurred when no packages are upgraded
Product: Red Hat Enterprise Linux 5 Reporter: Greg Bailey <gbailey>
Component: rpmAssignee: Packaging Maintenance Team <packaging-team-maint>
Status: CLOSED DEFERRED QA Contact: Red Hat Satellite QA List <satqe-list>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 5.6CC: pmatilai
Target Milestone: rc   
Target Release: ---   
Hardware: i686   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-03-07 15:54:41 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
anaconda.log from original upgrade attempt
none
Proposed patch to skip empty transaction sets none

Description Greg Bailey 2011-04-26 23:36:58 UTC
Description of problem:

Using anaconda to update a system that requires no RPM updates shows the following error dialog to the user:

Error running transaction

An error occurred while installing packages.
Please examine /root/install.log on your
installed system for detailed information.

Version-Release number of selected component (if applicable):

Red Hat Enterprise Linux 5.6 Server
anaconda-11.1.2.224-1

How reproducible:

Always

Steps to Reproduce:
1.  Install Red Hat Enterprise Linux 5.6 Server
2.  Boot from Red Hat Enterprise Linux 5.6 Server DVD, and choose to upgrade the installed system.
3.
  
Actual results:

Error message is shown to the user saying "An error occurred while installing packages."

Expected results:

No error message is expected.

Additional info:

Comment 1 Greg Bailey 2011-04-26 23:39:32 UTC
Created attachment 495081 [details]
anaconda.log from original upgrade attempt

Comment 2 Greg Bailey 2011-04-26 23:40:21 UTC
Created attachment 495082 [details]
Proposed patch to skip empty transaction sets

Comment 3 Chris Lumens 2011-05-17 18:36:41 UTC
While we could certainly do this in anaconda, I think I'd prefer a fix down in rpm itself.  I don't understand why running an empty transaction should be an error condition.  If it's empty, running it is trivially finished.

Comment 4 Panu Matilainen 2011-05-18 05:34:25 UTC
Agreed, there's no reason to report an error code on empty transaction, that's just "historical behavior" since 2004. I've fixed rpmtsRun() to return zero on empty transaction upstream, and preliminary ACK for changing it in RHEL 5 + 6 too.

Comment 5 Panu Matilainen 2013-03-07 15:54:41 UTC
As this is really a rare corner case and a cosmetic one at that, it's hardly worth fixing in RHEL-5 at this point. This will be fixed in future RHEL versions anyway.