Bug 441357 - RFE to handle missing obsoletes when using skip_broken
Summary: RFE to handle missing obsoletes when using skip_broken
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: yum
Version: rawhide
Hardware: All
OS: Linux
low
low
Target Milestone: ---
Assignee: Seth Vidal
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2008-04-07 18:22 UTC by Bruno Wolff III
Modified: 2014-01-21 23:02 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: Enhancement
Doc Text:
Clone Of:
Environment:
Last Closed: 2008-11-01 09:34:24 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
yum output (17.26 KB, text/plain)
2008-04-08 19:32 UTC, Bruno Wolff III
no flags Details

Description Bruno Wolff III 2008-04-07 18:22:23 UTC
Description of problem:
I ran across and example today where a missing obsoletes was not able to be able
to be handled by skip_broken.

Version-Release number of selected component (if applicable):
yum-3.2.13-2.fc9.noarch

How reproducible:
100% today. After the rawhide repo changes I am not sure how to get things back
in this state.

Steps to Reproduce:
1. Installl 
2. yum update
3.
  
Actual results:
[root@cerberus bruno]# yum update
Loaded plugins: refresh-packagekit
livna-development         100% |=========================| 2.1 kB    00:00     
rawhide                   100% |=========================| 2.4 kB    00:00     
Setting up Update Process
Resolving Dependencies
--> Running transaction check
---> Package revisor.noarch 0:2.1.0-1rc7.fc9 set to be updated
--> Processing Dependency: revisor-gui = 2.1.0-1rc7.fc9 for package: revisor
---> Package revisor-comps.noarch 0:2.1.0-1rc7.fc9 set to be updated
--> Processing Dependency: revisor-cli = 2.1.0-1rc7.fc9 for package: revisor-comps
--> Processing Dependency: revisor = 2.0.5-15.fc9 for package: revisor-jigdo
--> Running transaction check
---> Package revisor-gui.noarch 0:2.1.0-1rc7.fc9 set to be updated
---> Package revisor-cli.noarch 0:2.1.0-1rc7.fc9 set to be updated
--> Processing Dependency: revisor = 2.0.5-15.fc9 for package: revisor-jigdo
--> Finished Dependency Resolution
revisor-jigdo-2.0.5-15.fc9.noarch from installed has depsolving problems
  --> Missing Dependency: revisor = 2.0.5-15.fc9 is needed by package
revisor-jigdo-2.0.5-15.fc9.noarch (installed)
--> Running transaction check
---> Package revisor-gui.noarch 0:2.1.0-1rc7.fc9 set to be updated
---> Package revisor.noarch 0:2.1.0-1rc7.fc9 set to be updated
--> Processing Dependency: revisor-comps = 2.0.5-15.fc9 for package: revisor
--> Finished Dependency Resolution
revisor-2.0.5-15.fc9.noarch from installed has depsolving problems
  --> Missing Dependency: revisor-comps = 2.0.5-15.fc9 is needed by package
revisor-2.0.5-15.fc9.noarch (installed)
--> Running transaction check
--> Processing Dependency: revisor-comps = 2.0.5-15.fc9 for package: revisor
--> Finished Dependency Resolution
revisor-2.0.5-15.fc9.noarch from installed has depsolving problems
  --> Missing Dependency: revisor-comps = 2.0.5-15.fc9 is needed by package
revisor-2.0.5-15.fc9.noarch (installed)
Skip-broken could not solve problems
Error: Missing Dependency: revisor = 2.0.5-15.fc9 is needed by package
revisor-jigdo-2.0.5-15.fc9.noarch (installed)

Expected results:
yum would skip broken packages and do the rest of the update.

Additional info:
I did update everything else by using --exclude=revisor'*', so this isn't a
pressing issue for me. I mostly wanted to bring this case to your attention
since it seems like something you probably want handled by skip_broken.

Comment 1 Bruno Wolff III 2008-04-07 18:24:04 UTC
I forgot to finish up the test instructions. On my system the following revisor
packages are installed:
revisor-comps-2.0.5-15.fc9.noarch
revisor-jigdo-2.0.5-15.fc9.noarch
revisor-2.0.5-15.fc9.noarch

Presumably to test this you could grab that version for koji and do a forced
install with rpm.

Comment 2 Seth Vidal 2008-04-08 05:17:05 UTC
Just for fun - test yum 3.2.14 from rawhide tonight and tell me if it does the
same thing.

thanks


Comment 3 Bruno Wolff III 2008-04-08 16:12:47 UTC
I did a partial test and it looks go so far. I just tried updating revisor and
with the new yum it no longer gives an error, but instead excludes all of the
revisor packages. I am updating the rest of the stuff now, but the machine is
slow, so I probably won't post the results of that until late this afternoon
(unless it finishes before I have to leave my desk).
If the full update looks good, I'll close this feature request.

Comment 4 Bruno Wolff III 2008-04-08 16:54:35 UTC
It looks like doing the full update failed while checking the file lists.
I am going to rerun it with script so that I can get you all of the output.
I won't be able to get that to you for several hours.

Comment 5 Bruno Wolff III 2008-04-08 19:32:14 UTC
Created attachment 301694 [details]
yum output

I ran yum with -d 3 for both a full update which fails and just a revisor
update which seems to work as expected (nothing updated, no skip_broken error
message).

Comment 6 Jon Stanley 2008-04-23 20:30:39 UTC
Adding FutureFeature keyword to RFE's.

Comment 7 Paul W. Frields 2008-08-10 20:24:48 UTC
Reporter -- is this still a bug using yum-3.2.17-2.fc9?

Comment 8 Bruno Wolff III 2008-08-12 17:14:17 UTC
I just got back from vacation and have some other catching up to do, so I won't get to this right away. I have to figure out how to duplicate the error condition so as to be able to test it.
The revisor bug has since been fixed, but I can probably install an old version and disable the updates repository to try to get the problem to happen again.

Comment 9 Bruno Wolff III 2008-08-23 15:21:36 UTC
I retested this with yum-3.2.17-2.fc9 and the problem still seems to exist.
I installed some f8 revisor rpms and a not up to date version of libquicktime (from livna, but you could use some other f8 package) and did an install with 'updates' disabled (so as not to get the fixed version of revisor) and the missing obsoletes caused the whole update to fail, where I would have expected libquicktime to be updated in the first case. I did a second update with the updates repository available and the update worked.

[root@bruno bruno]# yum update --disablerepo=updates
Loaded plugins: refresh-packagekit
Existing lock /var/run/yum.pid: another copy is running as pid 12978.
Another app is currently holding the yum lock; waiting for it to exit...
Another app is currently holding the yum lock; waiting for it to exit...
Setting up Update Process
Resolving Dependencies
--> Running transaction check
--> Processing Dependency: revisor = 2.0.4.3-7.fc8 for package: revisor-jigdo
---> Package revisor-comps.noarch 0:2.1.0-1rc7.fc9 set to be updated
--> Processing Dependency: revisor-cli = 2.1.0-1rc7.fc9 for package: revisor-comps
---> Package revisor.noarch 0:2.1.0-1rc7.fc9 set to be updated
--> Processing Dependency: revisor-gui = 2.1.0-1rc7.fc9 for package: revisor
---> Package libquicktime.i386 0:1.0.2-3.lvn9 set to be updated
--> Running transaction check
--> Processing Dependency: revisor = 2.0.4.3-7.fc8 for package: revisor-jigdo
---> Package revisor-gui.noarch 0:2.1.0-1rc7.fc9 set to be updated
---> Package revisor-cli.noarch 0:2.1.0-1rc7.fc9 set to be updated
--> Finished Dependency Resolution
revisor-jigdo-2.0.4.3-7.fc8.noarch from installed has depsolving problems
  --> Missing Dependency: revisor = 2.0.4.3-7.fc8 is needed by package revisor-jigdo-2.0.4.3-7.fc8.noarch (installed)
--> Running transaction check
--> Processing Dependency: revisor-comps = 2.0.4.3-7.fc8 for package: revisor
---> Package revisor-gui.noarch 0:2.1.0-1rc7.fc9 set to be updated
---> Package revisor.noarch 0:2.1.0-1rc7.fc9 set to be updated
--> Finished Dependency Resolution
revisor-2.0.4.3-7.fc8.noarch from installed has depsolving problems
  --> Missing Dependency: revisor-comps = 2.0.4.3-7.fc8 is needed by package revisor-2.0.4.3-7.fc8.noarch (installed)
--> Running transaction check
--> Processing Dependency: revisor-comps = 2.0.4.3-7.fc8 for package: revisor
--> Finished Dependency Resolution
revisor-2.0.4.3-7.fc8.noarch from installed has depsolving problems
  --> Missing Dependency: revisor-comps = 2.0.4.3-7.fc8 is needed by package revisor-2.0.4.3-7.fc8.noarch (installed)
Skip-broken could not solve problems
Error: Missing Dependency: revisor = 2.0.4.3-7.fc8 is needed by package revisor-jigdo-2.0.4.3-7.fc8.noarch (installed)
[root@bruno bruno]# yum update
Loaded plugins: refresh-packagekit
Setting up Update Process
Resolving Dependencies
--> Running transaction check
---> Package revisor-comps.noarch 0:2.1.1-6.fc9 set to be updated
---> Package revisor-cli.noarch 0:2.1.1-6.fc9 set to be updated
---> Package revisor.noarch 0:2.1.1-6.fc9 set to be updated
--> Processing Dependency: revisor-gui = 2.1.1-6.fc9 for package: revisor
---> Package libquicktime.i386 0:1.0.2-3.lvn9 set to be updated
--> Running transaction check
---> Package revisor-gui.noarch 0:2.1.1-6.fc9 set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

=============================================================================
 Package                 Arch       Version          Repository        Size 
=============================================================================
Installing:
 revisor-cli             noarch     2.1.1-6.fc9      updates           361 k
     replacing  revisor-jigdo.noarch 2.0.4.3-7.fc8

Updating:
 libquicktime            i386       1.0.2-3.lvn9     livna             375 k
 revisor                 noarch     2.1.1-6.fc9      updates           7.3 k
 revisor-comps           noarch     2.1.1-6.fc9      updates           976 k
Installing for dependencies:
 revisor-gui             noarch     2.1.1-6.fc9      updates           330 k

Transaction Summary
=============================================================================
Install      2 Package(s)         
Update       3 Package(s)         
Remove       0 Package(s)         

Total download size: 2.0 M
Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Updating       : libquicktime                                      [1/9] 
  Installing     : revisor-cli                                       [2/9] 
  Installing     : revisor-gui                                       [3/9] 
  Updating       : revisor                                           [4/9] 
  Updating       : revisor-comps                                     [5/9] 
  Cleanup        : revisor                                           [6/9] 
  Cleanup        : revisor-comps                                     [7/9] 
  Cleanup        : libquicktime                                      [8/9] 
  Erasing        : revisor-jigdo                                     [9/9] 

Installed: revisor-cli.noarch 0:2.1.1-6.fc9
Dependency Installed: revisor-gui.noarch 0:2.1.1-6.fc9
Updated: libquicktime.i386 0:1.0.2-3.lvn9 revisor.noarch 0:2.1.1-6.fc9 revisor-comps.noarch 0:2.1.1-6.fc9
Replaced: revisor-jigdo.noarch 0:2.0.4.3-7.fc8
Complete!

Comment 10 Bruno Wolff III 2008-08-24 15:49:12 UTC
I forgot to mention that I have skip_broken set in my yum.conf file. If you are duplicating this test you may need to set it on the command line. My yum.conf contents:
[main]
cachedir=/var/cache/yum
keepcache=0
debuglevel=2
logfile=/var/log/yum.log
exactarch=1
obsoletes=1
gpgcheck=1
plugins=1
metadata_expire=1800
installonly_limit=2
skip_broken=1

# PUT YOUR REPOS HERE OR IN separate files named file.repo
# in /etc/yum.repos.d

Comment 11 Tim Lauridsen 2008-11-01 09:34:24 UTC
This should be fixed in the current version of yum in rawhide.
I will close this for now, please open a new report if you detect any problems in then future.


Note You need to log in before you can comment on or make changes to this bug.