Bug 607 - file conflict between perl-Digest-SHA-5.610.0-1.mga1.i586 and perl-Digest-SHA-PurePerl-5.480.0-1mdv2010.1 breaks upgrading from 2010.1
Summary: file conflict between perl-Digest-SHA-5.610.0-1.mga1.i586 and perl-Digest-SHA...
Status: RESOLVED FIXED
Alias: None
Product: Mageia
Classification: Unclassified
Component: Installer (show other bugs)
Version: Cauldron
Hardware: i586 Linux
Priority: Normal normal
Target Milestone: ---
Assignee: Jerome Quelin
QA Contact:
URL:
Whiteboard:
Keywords: Triaged
Depends on:
Blocks:
 
Reported: 2011-04-01 04:25 CEST by Dave Hodgins
Modified: 2011-04-21 10:52 CEST (History)
2 users (show)

See Also:
Source RPM: perl-Digest-SHA-5.610.0-1.mga1.i586
CVE:
Status comment:


Attachments
install.log from upgrade of Mandriva 2010.2 + backports i686 system (79.70 KB, text/plain)
2011-04-01 22:33 CEST, Dave Hodgins
Details

Description Dave Hodgins 2011-04-01 04:25:09 CEST
I tried using a dvd install to upgrade an existing 2010.2 Mandriva installation
using the alpha2 iso.

During the install, 75 packages failed to install, due to the Mandriva install having
many devel packages installed, where the mageia install iso doesn't have the devel
packages.

urpmi blocks the install of the package, when the package it's replacing is marked as required by the devel package.  In my opinion, devel packages shouldn't require the non-devel packages, but they do.

I think that the installer has to detect this condition, and either automatically remove the devel packages, or use the --nodeps option, or prompt the user as to
which option should be used.

After the install, without those 75 packages, drakrpm-edit-media still picked up Mandriva mirrors when adding complete media list.

Reproducible: 

Steps to Reproduce:
Comment 1 Thierry Vignaud 2011-04-01 11:20:10 CEST
Please attach your install logs (/root/drakx/)

Keywords: (none) => NEEDINFO
CC: (none) => thierry.vignaud

Comment 2 Dave Hodgins 2011-04-01 22:33:35 CEST
Created attachment 185 [details]
install.log from upgrade of Mandriva 2010.2 + backports i686 system

Looking through the install log, there are a lot more conflicts than just
the devel conflicts I noticed on the screen, during the install.
Comment 3 Dave Hodgins 2011-04-02 02:41:01 CEST
After reviewing the install.log, I restored the Mandriva system, and then
uninstalled perl-Digest-SHA-PurePerl, and ran the install/upgrade again.

No installation transactions failed, so all of the problems were due to the
first installation transaction failing, due to
file /usr/bin/shasum from install of perl-Digest-SHA-5.610.0-1.mga1.i586 conflicts with file from package perl-Digest-SHA-PurePerl-5.480.0-1mdv2010.1.noarch

Source RPM: (none) => perl-Digest-SHA-5.610.0-1.mga1.i586

Ahmad Samir 2011-04-02 05:13:58 CEST

Keywords: NEEDINFO => Triaged
Assignee: bugsquad => jquelin
Summary: devel packages block upgrade of existing Mandriva installation. => file conflict between perl-Digest-SHA-5.610.0-1.mga1.i586 and perl-Digest-SHA-PurePerl-5.480.0-1mdv2010.1 breaks upgrading from 2010.1

Comment 4 Ahmad Samir 2011-04-02 05:18:13 CEST
This is the infamous urpmi-cascading-failure bug, it fails to upgrade one package, and the whole transaction fails (transactions are split in 8-package groups).
Comment 5 Jerome Quelin 2011-04-02 10:43:02 CEST
this has been fixed in new packages, with pure-perl /usr/bin/shasum renamed to /usr/bin/shasum.pl

however, urpmi doesn't upgrade perl-Digest-SHA and perl-Digest-SHA-PurePerl in the same transactions, creating a file conflict...

this is more a urpmi bug i'd say. unless there's a way to mark 2 packages to be upgraded in the same transaction.
Comment 6 Thierry Vignaud 2011-04-04 11:26:55 CEST
No this is not an urpmi bug but a packaging issue.

In order for urpmi to put these packages in the same transaction, you've to provide hints to it.
urpmi cannot devine for you.

It's well documented that in such case, you've to make _both_ packages conflicts with the previous version of the another one.
That will force urpmi to put these two packages in the same transaction.
Comment 7 Jerome Quelin 2011-04-04 13:03:18 CEST
sorry, but i wasn't aware of that. so, what should i add in spec file?

in perl-Digest-SHA.spec:
(assuming we have %mkrel 2)
Conflicts:  perl-Digest-SHA-PurePerl <= 5.610.0-1.mga

in perl-Digest-SHA-PurePerl.spec:
(assuming we have %mkrel 2)
Conflicts:  perl-Digest-SHA <= 5.610.0-1.mga

but this doesn't work when trying to install the resulting rpm: it should be conflicting, yet it installs fine.
Comment 8 Thierry Vignaud 2011-04-04 14:11:16 CEST
You need to put "Conflicts: perl-foobar < working_version-working_release"
(plus epoch if hose packages use one)
Comment 9 Jerome Quelin 2011-04-04 14:27:41 CEST
thanks - fixed in 5.610.0-2.mga1

Status: NEW => RESOLVED
Resolution: (none) => FIXED

Comment 10 Marcello Anni 2011-04-20 13:04:27 CEST
maybe i had a similar issue with beta1. if i try once again to install there is someone who can follow me to investigate the issue? thanks


Cheers,
Marcello

CC: (none) => marcello.anni

Comment 11 Jerome Quelin 2011-04-20 14:45:52 CEST
sure, report here if the update isn't smooth.
Comment 12 Ahmad Samir 2011-04-20 19:26:06 CEST
(In reply to comment #10)
> maybe i had a similar issue with beta1. if i try once again to install there is
> someone who can follow me to investigate the issue? thanks
> 
> 
> Cheers,
> Marcello

Without the logs (/root/drakx/report.bug.gz), no one can say.
Comment 13 Marcello Anni 2011-04-21 10:52:16 CEST
right now i need a working system. i will try with beta 2 and let you know if i have similar issues or not (and if yes, i'll attach report.bug.gz)

thank you


cheers,
Marcello

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