Bug 308321

Summary: yum (as used by pirut) fails to install all dependencies
Product: [Fedora] Fedora Reporter: Doncho Gunchev <dgunchev>
Component: yumAssignee: Jeremy Katz <katzj>
Status: CLOSED NEXTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: low    
Version: rawhideCC: andbruna, bjohnson, cje, coyoteboyuk, dgunchev, dtimms, farrellj, fedora, ffesti, james.antill, pmatilai, rodd, saphipps, tim.lauridsen, tjb
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2007-10-19 02:47:36 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
yum shell missing a dependency none

Description Doncho Gunchev 2007-09-27 04:00:08 UTC
+++ This bug was initially created as a clone of Bug #242368 +++

Description of problem:

Vast numbers of dependencies are not installed.

When called for second operation pirut does not install dependencies.

Version-Release number of selected component (if applicable):
rpmlint-0.81-1.fc8
yum-3.2.5-3.fc8
yum-refresh-updatesd-1.1.7-1.fc8
rpm-libs-4.4.2.2-0.5.rc2
yum-utils-1.1.7-1.fc8
yum-metadata-parser-1.1.2-1.fc8
rpm-python-4.4.2.2-0.5.rc2
rpm-4.4.2.2-0.5.rc2
yumex-2.0.1-1.fc8
rpmdevtools-6.1-1.fc8
yum-updatesd-0.5-2.fc8
rpm-build-4.4.2.2-0.5.rc2
pirut-1.3.19-1.fc8


How reproducible:

I tried 2 times.

Steps to Reproduce:
1. install fedora 8 and update.
2. run Add/Remove software.
3. select something for install.
4. hit the "Apply" button.
5. select php-pecl-mailparse for install and make sure you have no php-mbstring
installed.
6. hit the "Apply" button.
  
Actual results:

At step 6 only php-pecl-mailparse is installed.

Expected results:
should automatically download dependencies - php-mbstring in this case.

Additional info:
I'll attach a text yum shell session.

Comment 1 Doncho Gunchev 2007-09-27 04:00:08 UTC
Created attachment 207831 [details]
yum shell missing a dependency

Comment 2 Doncho Gunchev 2007-10-01 19:47:41 UTC
And... I was somehow able to install ooo-writer without ooo-core and I have 
not used rpm --nodeps at all (pirut/yumex).

Comment 3 Jeremy Katz 2007-10-01 21:19:02 UTC
I can't reproduce this here :-/

I did an install of byzanz, hit apply, then ok.  And then went and searched for
php-pecl-mailstring and installed it and it correctly said it needed to bring in
deps. 

Comment 4 cje 2007-10-02 06:15:38 UTC
if this is the same behaviour as we used to get then i think the idea is:

select, 'apply', (wait for deps list), _cancel_, modify selections, 'apply',
*deps not recalculated*, things installed without deps.

i thought that'd been fixed but perhaps it's come back.  i'll find the bug for
it tonight and see if i can test it out.

Comment 5 Jeremy Katz 2007-10-02 21:10:28 UTC
Slightly different manifestation this time, but fixed up again.  My fix had been
reverted upstream.  Fixed both in yum as well as the workaround in pirut

Comment 6 Doncho Gunchev 2007-10-03 07:30:54 UTC
I'll try to reproduce, it's quite possible I did apply + cancel at deps, I 
have only 8G for fc8 tests and... they are almost out.
packagecleanup --problems is a great thing btw :-)

Comment 7 Doncho Gunchev 2007-10-03 15:25:13 UTC
It's getting stranger:
[root@fc8 ~]# yum shell
...
> remove php-mbstring
...
Removing:
 php-mbstring            i386       5.2.4-2          installed         1.8 M
Removing for dependencies:
 drupal                  noarch     5.2-1.fc8        installed         2.2 M
 php-pecl-mailparse      i386       2.1.1-8          installed          54 k
 phpMyAdmin              noarch     2.11.0-1.fc8     installed          12 M
...
Removed: php-mbstring.i386 0:5.2.4-2
Dependency Removed: drupal.noarch 0:5.2-1.fc8 php-pecl-mailparse.i386 
0:2.1.1-8 phpMyAdmin.noarch 0:2.11.0-1.fc8
Finished Transaction
> install php-pecl-mailparse
Setting up Install Process
Parsing package install arguments
> run
--> Running transaction check
--> Finished Dependency Resolution

=============================================================================
 Package                 Arch       Version          Repository        Size
=============================================================================
Installing:
 php-pecl-mailparse      i386       2.1.1-8          development        30 k

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

Total download size: 30 k
Is this ok [y/N]: y
Downloading Packages:
Downloading DeltaRPMs:
Rebuilding rpms from deltarpms
(1/1): php-pecl-mailparse 100% |=========================|  30 kB    00:00
Running rpm_check_debug
ERROR with rpm_check_debug vs depsolve:
Package php-pecl-mailparse needs php-mbstring, this is not available.
Transaction did not run.

I'll remove all plugins and try this again...


Comment 8 Doncho Gunchev 2007-10-03 15:35:03 UTC
Nope, removing all plugins and yumex does not help. At first 'install 
php-pecl-mailparse' it's OK, but if I press 'N', 'transaction reset' and then 
again 'install php-pecl-mailparse' no deps are picked up.
I have: yum-metadata-parser-1.1.2-1.fc8 and yum-3.2.5-4.fc8
The error is:
Running rpm_check_debug
ERROR with rpm_check_debug vs depsolve:
Package php-pecl-mailparse needs php-mbstring, this is not available.
Transaction did not run.


Comment 9 Jeremy Katz 2007-10-03 15:53:52 UTC
Yep, that matches what I tracked down yesterday.  I pushed the fix back into
yum.git as well as having hte workaround in pirut.  And yum 3.2.6 should be out
before F8, so we'll get the fix that way.

Comment 10 Doncho Gunchev 2007-10-03 17:44:05 UTC
Thank you.
pirut-1.3.22-1.fc8 still breaks dependencies - install some packages, remove 
some, add one of the removed (maybe use cancel at some poing) and... no 
deps :-(

I'll wait for new versions and test again...

Comment 11 cje 2007-10-18 20:03:52 UTC
looks like the same problem is in yum on F7 when removing packages:

select stuff for removal and hit apply
calculate dependencies
change your mind, go back, untick some packages (so they won't be removed)
click apply again
packages are removed without a dependency check!

yum-3.2.5-1.fc7
pirut-1.3.9-1.fc7

Comment 12 Seth Vidal 2007-10-18 20:12:25 UTC
please use yum 3.2.7 from updates-testing and see if that is still true. I
believe it is not.


Comment 13 cje 2007-10-19 00:27:24 UTC
can confirm it behaves correctly in rawhide:
yum-3.2.7-1.fc8
pirut-1.3.23-1.fc8

right, i'm off to see if i can get eclipse working again in F7! ;-)

Comment 14 Doncho Gunchev 2007-10-20 21:58:39 UTC
Yep, it's fixed. I cant trick yum-3.2.7-1.fc8 to install something without 
deps any more ;-)
Thank you.