Bug 471815 - Can't update clean Fedora 9 -- perl / Missing Dependencies
Summary: Can't update clean Fedora 9 -- perl / Missing Dependencies
Keywords:
Status: CLOSED WORKSFORME
Alias: None
Product: Fedora
Classification: Fedora
Component: perl
Version: 9
Hardware: i386
OS: Linux
medium
high
Target Milestone: ---
Assignee: Marcela Mašláňová
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2008-11-16 20:51 UTC by Jim Miller
Modified: 2008-11-19 14:31 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2008-11-18 15:26:31 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Jim Miller 2008-11-16 20:51:21 UTC
I've just installed Fedora 9 on a machine, and am doing the post-install yum updates. The first one ran fine and loaded a few packages. Now I'm into the serious update -- over 500 updates -- and it's failing because of some missing dependencies involving Perl. I could post the entire yum output, but the problem is due to its wanting to load one version of perl --

---> Package perl-version.i386 3:0.74-38.fc9 set to be updated

while a bunch of Perl packages are demanding an earlier version, and ultimately dying like so:

--> Finished Dependency Resolution
1:perl-Pod-Escapes-1.04-20.fc9.i386 from installed has depsolving problems
  --> Missing Dependency: perl = 4:5.10.0-20.fc9 is needed by package 1:perl-Pod-Escapes-1.04-20.fc9.i386 (installed)
Error: Missing Dependency: perl = 4:5.10.0-20.fc9 is needed by package 1:perl-Pod-Escapes-1.04-20.fc9.i386 (installed)

Any advice out there? I've tried other common suggestions for past occurrences of this sort of thing, like yum clean all, --skip-broken, --exclude=perl (I may not have these exactly right here, but you probably know what I mean), and none have worked. I've also tried removing perl-Pod-Escapes via yum, but that seems to want to take out most of my Fedora installation along with it. yum update *perl* produces the same error.

Thoughts?

Comment 1 Tom "spot" Callaway 2008-11-16 21:07:36 UTC
Okay, this one is weird. perl-Pod-Escapes is a subpackage of the main perl package. It's definitely built and in the fedora 9 updates repository.

Can you try:

yum clean all
yum update perl perl-Pod-Escapes

and let me know what it says?

Comment 2 Jim Miller 2008-11-16 23:05:21 UTC
The result:

[root@linux4 jmiller]# yum clean all
Loaded plugins: refresh-packagekit
Cleaning up Everything
[root@linux4 jmiller]# yum update perl perl-Pod-Escapes
Loaded plugins: refresh-packagekit
updates-newkey                                                                   | 2.3 kB     00:00     
primary.sqlite.bz2                                                               | 3.2 MB     00:11     
fedora                                                                           | 2.4 kB     00:00     
primary.sqlite.bz2                                                               | 6.1 MB     00:20     
updates                                                                          | 2.6 kB     00:00     
primary.sqlite.bz2                                                               | 9.1 kB     00:00     
Setting up Update Process
Resolving Dependencies
--> Running transaction check
---> Package perl.i386 4:5.10.0-38.fc9 set to be updated
--> Processing Dependency: perl-libs = 4:5.10.0-38.fc9 for package: perl
--> Processing Dependency: perl = 4:5.10.0-20.fc9 for package: perl-ExtUtils-ParseXS
--> Processing Dependency: perl = 4:5.10.0-20.fc9 for package: perl-version
--> Processing Dependency: perl = 4:5.10.0-20.fc9 for package: perl-IO-Compress-Base
--> Processing Dependency: perl = 4:5.10.0-20.fc9 for package: perl-devel
--> Processing Dependency: perl = 4:5.10.0-20.fc9 for package: perl-Pod-Simple
--> Processing Dependency: perl = 4:5.10.0-20.fc9 for package: perl-IO-Compress-Zlib
--> Processing Dependency: perl = 4:5.10.0-20.fc9 for package: perl-ExtUtils-MakeMaker
--> Processing Dependency: perl = 4:5.10.0-20.fc9 for package: perl-Test-Harness
--> Processing Dependency: perl = 4:5.10.0-20.fc9 for package: perl-Compress-Raw-Zlib
--> Processing Dependency: perl = 4:5.10.0-20.fc9 for package: perl-Module-Pluggable
--> Processing Dependency: perl = 4:5.10.0-20.fc9 for package: perl-IO-Zlib
--> Processing Dependency: perl = 4:5.10.0-20.fc9 for package: perl-Archive-Tar
--> Processing Dependency: perl = 4:5.10.0-20.fc9 for package: perl-Pod-Escapes
--> Processing Dependency: perl = 4:5.10.0-20.fc9 for package: perl-Compress-Zlib
--> Running transaction check
---> Package perl-version.i386 3:0.74-38.fc9 set to be updated
---> Package perl-Compress-Raw-Zlib.i386 0:2.008-38.fc9 set to be updated
---> Package perl-IO-Compress-Zlib.i386 0:2.008-38.fc9 set to be updated
---> Package perl-IO-Compress-Base.i386 0:2.008-38.fc9 set to be updated
---> Package perl-Module-Pluggable.i386 1:3.60-38.fc9 set to be updated
--> Processing Dependency: perl = 4:5.10.0-20.fc9 for package: perl-Pod-Escapes
---> Package perl-IO-Zlib.i386 1:1.07-38.fc9 set to be updated
---> Package perl-Test-Harness.i386 0:2.64-38.fc9 set to be updated
---> Package perl-Compress-Zlib.i386 0:2.008-38.fc9 set to be updated
---> Package perl-ExtUtils-ParseXS.i386 1:2.18-38.fc9 set to be updated
---> Package perl-devel.i386 4:5.10.0-38.fc9 set to be updated
---> Package perl-Pod-Simple.i386 1:3.07-38.fc9 set to be updated
---> Package perl-libs.i386 4:5.10.0-38.fc9 set to be updated
---> Package perl-ExtUtils-MakeMaker.i386 0:6.36-38.fc9 set to be updated
---> Package perl-Archive-Tar.i386 0:1.38-38.fc9 set to be updated
--> Finished Dependency Resolution
1:perl-Pod-Escapes-1.04-20.fc9.i386 from installed has depsolving problems
  --> Missing Dependency: perl = 4:5.10.0-20.fc9 is needed by package 1:perl-Pod-Escapes-1.04-20.fc9.i386 (installed)
Error: Missing Dependency: perl = 4:5.10.0-20.fc9 is needed by package 1:perl-Pod-Escapes-1.04-20.fc9.i386 (installed)
[root@linux4 jmiller]#

Comment 3 Tom "spot" Callaway 2008-11-17 14:35:39 UTC
I'm going to do a fresh install of Fedora 9 i386 today to try to reproduce this.

Comment 4 Tom "spot" Callaway 2008-11-17 18:11:05 UTC
I cannot reproduce this on a fresh Fedora 9 i386 install. I did the install (not an upgrade from any previous Fedora release), ran yum update once to get moved to the new key (and the new repo for updates-newkey), then ran:

yum update perl perl-Pod-Escapes

[root@f9-i386 ~]# yum update perl perl-Pod-Escapes
Loaded plugins: refresh-packagekit
Existing lock /var/run/yum.pid: another copy is running as pid 2691.
Another app is currently holding the yum lock; waiting for it to exit...
Setting up Update Process
Resolving Dependencies
--> Running transaction check
---> Package perl.i386 4:5.10.0-38.fc9 set to be updated
--> Processing Dependency: perl-libs = 4:5.10.0-38.fc9 for package: perl
--> Processing Dependency: perl = 4:5.10.0-20.fc9 for package: perl-Pod-Simple
--> Processing Dependency: perl = 4:5.10.0-20.fc9 for package: perl-version
--> Processing Dependency: perl = 4:5.10.0-20.fc9 for package: perl-Module-Pluggable
---> Package perl-Pod-Escapes.i386 1:1.04-38.fc9 set to be updated
--> Running transaction check
---> Package perl-Module-Pluggable.i386 1:3.60-38.fc9 set to be updated
---> Package perl-libs.i386 4:5.10.0-38.fc9 set to be updated
---> Package perl-version.i386 3:0.74-38.fc9 set to be updated
---> Package perl-Pod-Simple.i386 1:3.07-38.fc9 set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================
 Package                  Arch    Version            Repository           Size 
================================================================================
Updating:
 perl                     i386    4:5.10.0-38.fc9    updates-newkey        14 M
 perl-Module-Pluggable    i386    1:3.60-38.fc9      updates-newkey        25 k
 perl-Pod-Escapes         i386    1:1.04-38.fc9      updates-newkey        18 k
 perl-Pod-Simple          i386    1:3.07-38.fc9      updates-newkey       184 k
 perl-libs                i386    4:5.10.0-38.fc9    updates-newkey       900 k
 perl-version             i386    3:0.74-38.fc9      updates-newkey        28 k

Transaction Summary
================================================================================
Install      0 Package(s)         
Update       6 Package(s)         
Remove       0 Package(s)         

Total download size: 15 M
Is this ok [y/N]:

So, the question is, what is different between your system and mine? Did you upgrade from an older Fedora release when you did the install? Do you have the latest yum installed (yum update yum)?

Comment 5 Jim Miller 2008-11-17 18:46:05 UTC
Dunno.  I had done this install onto a completely empty disk.  I had done a 'yum update yum' after the initial install, but I just did it again; it had no effect -- 

[root@linux4 ~]# yum update yum
Loaded plugins: refresh-packagekit
updates-newkey                                                                                                       | 2.3 kB     00:00     
fedora                                                                                                               | 2.4 kB     00:00     
updates                                                                                                              | 2.6 kB     00:00     
Setting up Update Process
No Packages marked for Update

-- and the attempt to update perl and perl-Pod-Escapes failed again, as before.  I don't recall doing anything out of the ordinary during the install; I did some picking and choosing of packages during the configuration process -- the same as on two other F9 installations that ran without problems -- but didn't do anything special about perl.  

I guess I can wipe the disk and try again, but, is there any way I can hack my way around this to get a working installation  As noted before, I've tried removing perl-Pod-Escapes, but that wanted to remove a huge hunk of my Fedora installation.  Thoughts?

Thanks much,
Jim

Comment 6 Tom "spot" Callaway 2008-11-17 19:12:49 UTC
Well, rpm -e perl-Pod-Escapes --nodeps should get it out, then yum install perl-Pod-Escapes should trigger the perl update at the same time...

Comment 7 Jim Miller 2008-11-17 20:34:19 UTC
Hmm...

[root@linux4 ~]# rpm -e perl-Pod-Escapes --nodeps
error: "perl-Pod-Escapes" specifies multiple packages

Are we getting somewhere??

For what it's worth...

[root@linux4 ~]# rpm -ql perl-Pod-Escapes
/usr/lib/perl5/5.10.0/Pod/Escapes.pm
/usr/share/man/man3/Pod::Escapes.3pm.gz
/usr/lib/perl5/5.10.0/Pod/Escapes.pm
/usr/share/man/man3/Pod::Escapes.3pm.gz

Comment 8 Tom "spot" Callaway 2008-11-17 20:39:16 UTC
Okay, this is interesting. rpm -q perl-Pod-Escapes ?

After that, just run: rpm -e perl-Pod-Escapes --allmatches --nodeps to get rid of them all.

Comment 9 Tom "spot" Callaway 2008-11-17 20:40:01 UTC
Btw, my best guess is that you had a yum transaction fail before cleaning up.... thus, you got a newer perl-Pod-Escapes but the old one wasn't removed.

Comment 10 Jim Miller 2008-11-17 23:29:34 UTC
Victory!  All is stable here.  I don't know if this has helped the Big Picture to any extent, but thanks very much for your help in getting my installation working!

Best regards,
Jim

Comment 11 Tom "spot" Callaway 2008-11-18 15:26:31 UTC
Well, since I can't reproduce this at all, I'm going to close this out. Again, my best guess is that a yum transaction failed in midstream for you, which is why you had multiple perl-Pod-Escapes packages installed at the same time.

Comment 12 Marcela Mašláňová 2008-11-19 08:51:57 UTC
It could be rpm problem as you mentioned. I've asked rpm guys to look at it, if they are interested.

Comment 13 Tom "spot" Callaway 2008-11-19 14:31:32 UTC
(In reply to comment #12)
> It could be rpm problem as you mentioned. I've asked rpm guys to look at it, if
> they are interested.

I really don't think it is an rpm problem.

rpm will permit you to have two versions of the same package installed at the same time, which is what happens during a yum update:

yum update stages:
1. download new packages
2. check dependencies
3. test run
4. install new packages
5. remove old packages

Now, if the yum transaction dies or goes away between 4 and 5, you can end up with multiple versions of the same package installed. There is a "yum-complete-transaction" tool that should resolve such failures, but it isn't inherently a bug in rpm.


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