Bug 439762

Summary: dependency failure
Product: [Fedora] Fedora Reporter: Rahul Sundaram <sundaram>
Component: PackageKitAssignee: Robin Norwood <robin.norwood>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: low Docs Contact:
Priority: low    
Version: rawhideCC: lmacken, richard, smohan, tim.lauridsen, vfiend
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: 2008-04-07 09:24:42 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:

Description Rahul Sundaram 2008-03-31 09:08:15 UTC
Description of problem:

Yum works while pkcon doesn't when I try to remove exim package in rawhide

How reproducible:

everytime


Steps to Reproduce:
1. pkcon remove exim
2. try yum remove exim

  
Actual results:

# pkcon remove exim

resolve runtime was 1.0 seconds
get-requires runtime was 1.0 seconds
    [..........................................................]    0%          
Error: dep-resolution-failed : package could not be remove, because something
depends on it
remove-package runtime was 3.8 seconds

# sudo yum remove exim

   
# sudo yum remove exim

[sudo] password for sundaram: 
Loaded plugins: refresh-packagekit
Setting up Remove Process
Resolving Dependencies
--> Running transaction check
---> Package exim.i386 0:4.69-4.fc9 set to be erased
--> Processing Dependency: /usr/sbin/sendmail for package: mgetty
--> Processing Dependency: /usr/sbin/sendmail for package: redhat-lsb
--> Processing Dependency: server(smtp) for package: fetchmail
--> Running transaction check
---> Package redhat-lsb.i386 0:3.1-19.fc8 set to be erased
--> Processing Dependency: lsb-core-noarch for package: tor-lsb
--> Processing Dependency: lsb-core-noarch for package: tor-lsb
--> Processing Dependency: lsb-core-noarch for package: tor-lsb
---> Package mgetty.i386 0:1.1.33-16.fc9 set to be erased
---> Package fetchmail.i386 0:6.3.8-6.fc9 set to be erased
--> Running transaction check
---> Package tor-lsb.i386 0:0.1.2.19-1.fc9 set to be erased
--> Processing Dependency: init(tor) for package: tor-core
--> Processing Dependency: tor-lsb = 0.1.2.19-1.fc9 for package: tor
--> Running transaction check
---> Package tor-core.i386 0:0.1.2.19-1.fc9 set to be erased
---> Package tor.i386 0:0.1.2.19-1.fc9 set to be erased
--> Finished Dependency Resolution

Dependencies Resolved

=============================================================================
 Package                 Arch       Version          Repository        Size 
=============================================================================
Removing:
 exim                    i386       4.69-4.fc9       installed         3.6 M
Removing for dependencies:
 fetchmail               i386       6.3.8-6.fc9      installed         1.3 M
 mgetty                  i386       1.1.33-16.fc9    installed         948 k
 redhat-lsb              i386       3.1-19.fc8       installed         496 k
 tor                     i386       0.1.2.19-1.fc9   installed         974 k
 tor-core                i386       0.1.2.19-1.fc9   installed         1.2 M
 tor-lsb                 i386       0.1.2.19-1.fc9   installed         1.8 k

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


Expected results:

pkcon should have the same behaviour as exim.

Additional info:

pk-application has the same error as pkcon.

Comment 1 Richard Hughes 2008-03-31 11:45:42 UTC
pkcon is a bit more paraoid about removing packages with requires.

What does "pkcon --verbose get requires exim" print?

Comment 2 Rahul Sundaram 2008-03-31 11:54:11 UTC
It is not just pkcon. pk-application has the same issue

#  pkcon --verbose get requires exim

TI:17:24:11	TH:0x9c453f0	FI:pk-debug.c	FN:pk_debug_init,248
 - Verbose debugging 1 (on console 1)
TI:17:24:11	TH:0x9c453f0	FI:pk-connection.c
FN:pk_connection_connection_changed_cb,129
 - emit connection-changed: 1
TI:17:24:11	TH:0x9c453f0	FI:pk-client.c	FN:pk_client_connect,3432
 - connect
TI:17:24:11	TH:0x9c453f0	FI:pk-client.c	FN:pk_client_connect,3432
 - connect
TI:17:24:11	TH:0x9c453f0	FI:pk-console.c	FN:main,1195
 -
actions=cancel;get-depends;get-description;get-files;get-requires;what-provides;get-updates;get-update-detail;install-package;install-file;refresh-cache;remove-package;resolve;search-details;search-file;search-group;search-name;update-package;update-system;get-repo-list;repo-enable;repo-set-data
TI:17:24:11	TH:0x9c453f0	FI:pk-common.c	FN:pk_strsplit,339
 - ident 'exim' is invalid (sections=1)
TI:17:24:11	TH:0x9c453f0	FI:pk-client.c	FN:pk_client_allocate_transaction_id,1305
 - Got tid: '68;caebccaa;data'
TI:17:24:11	TH:0x9c453f0	FI:pk-client.c	FN:pk_client_change_status,637
 - emit status-changed wait
TI:17:24:11	TH:0x9c453f0	FI:pk-client.c	FN:pk_client_change_status,637
 - emit status-changed setup
TI:17:24:11	TH:0x9c453f0	FI:pk-client.c	FN:pk_client_locked_cb,929
 - emit locked 1
TI:17:24:11	TH:0x9c453f0	FI:pk-client.c	FN:pk_client_locked_cb,929
 - emit locked 1
TI:17:24:12	TH:0x9c453f0	FI:pk-client.c	FN:pk_client_allow_cancel_cb,948
 - emit allow-cancel 1
TI:17:24:12	TH:0x9c453f0	FI:pk-client.c	FN:pk_client_progress_changed_cb,626
 - emit progress-changed 101, 101, 862, 0
TI:17:24:12	TH:0x9c453f0	FI:pk-client.c	FN:pk_client_change_status,637
 - emit status-changed running
TI:17:24:12	TH:0x9c453f0	FI:pk-client.c	FN:pk_client_change_status,637
 - emit status-changed query
TI:17:24:12	TH:0x9c453f0	FI:pk-client.c	FN:pk_client_package_cb,706
 - emit package installed, exim;4.69-4.fc9;i386;installed, The exim mail
transfer agent
TI:17:24:12	TH:0x9c453f0	FI:pk-client.c	FN:pk_client_package_cb,712
 - adding to cache array package 0, exim;4.69-4.fc9;i386;installed, The exim
mail transfer agent
TI:17:24:12	TH:0x9c453f0	FI:pk-package-list.c	FN:pk_package_list_add,79
 - adding to cache array package 0, exim;4.69-4.fc9;i386;installed, The exim
mail transfer agent
TI:17:24:14	TH:0x9c453f0	FI:pk-client.c	FN:pk_client_change_status,637
 - emit status-changed finished
TI:17:24:15	TH:0x9c453f0	FI:pk-client.c	FN:pk_client_finished_cb,591
 - emit finished success, 3308
resolve runtime was 3.3 seconds
TI:17:24:15	TH:0x9c453f0	FI:pk-client.c	FN:pk_client_allocate_transaction_id,1305
 - Got tid: '69;bdbcbadc;data'
TI:17:24:15	TH:0x9c453f0	FI:pk-client.c	FN:pk_client_change_status,637
 - emit status-changed wait
TI:17:24:15	TH:0x9c453f0	FI:pk-client.c	FN:pk_client_change_status,637
 - emit status-changed setup
TI:17:24:15	TH:0x9c453f0	FI:pk-client.c	FN:pk_client_allow_cancel_cb,948
 - emit allow-cancel 1
TI:17:24:15	TH:0x9c453f0	FI:pk-client.c	FN:pk_client_progress_changed_cb,626
 - emit progress-changed 101, 101, 811, 0
TI:17:24:15	TH:0x9c453f0	FI:pk-client.c	FN:pk_client_change_status,637
 - emit status-changed running
TI:17:24:15	TH:0x9c453f0	FI:pk-client.c	FN:pk_client_change_status,637
 - emit status-changed info
TI:17:24:15	TH:0x9c453f0	FI:pk-client.c	FN:pk_client_change_status,637
 - emit status-changed finished
    [.===......................................................]             
  TI:17:24:15	TH:0x9c453f0	FI:pk-client.c	FN:pk_client_finished_cb,591
 - emit finished success, 905
get-requires runtime was 0.9 seconds                       

Comment 3 Richard Hughes 2008-03-31 12:43:21 UTC
Okay, so this is a problem with the yum backend not working returning the
requires for us.

Comment 4 Richard Hughes 2008-03-31 12:44:54 UTC
*** Bug 439780 has been marked as a duplicate of this bug. ***

Comment 5 Richard Hughes 2008-03-31 13:53:26 UTC
I can't reproduce this:

[hughsie@hughsie-laptop gnome-packagekit]$ sudo yum remove exim
Loaded plugins: downloadonly, refresh-packagekit
Setting up Remove Process
Resolving Dependencies
--> Running transaction check
---> Package exim.i386 0:4.69-4.fc9 set to be erased
--> Finished Dependency Resolution

Dependencies Resolved

=============================================================================
 Package                 Arch       Version          Repository        Size 
=============================================================================
Removing:
 exim                    i386       4.69-4.fc9       installed         3.6 M

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

Is this ok [y/N]: n
Exiting on user Command
Complete!
[hughsie@hughsie-laptop gnome-packagekit]$ rpm -q fetchmail tor redhat-lsb mgetty
fetchmail-6.3.8-6.fc9.i386
tor-0.1.2.19-1.fc9.i386
redhat-lsb-3.1-19.fc8.i386
mgetty-1.1.33-16.fc9.i386


Comment 6 Richard Hughes 2008-03-31 13:56:03 UTC
Although, i do get this:

[hughsie@hughsie-laptop gnome-packagekit]$ sudo yum remove sendmail
Loaded plugins: downloadonly, refresh-packagekit
Setting up Remove Process
Resolving Dependencies
--> Running transaction check
---> Package sendmail.i386 0:8.14.2-4.fc9 set to be erased
--> Processing Dependency: /usr/sbin/sendmail for package: mgetty
--> Processing Dependency: /usr/sbin/sendmail for package: redhat-lsb
--> Processing Dependency: server(smtp) for package: fetchmail
--> Running transaction check
---> Package redhat-lsb.i386 0:3.1-19.fc8 set to be erased
--> Processing Dependency: lsb-core-noarch for package: tor-lsb
--> Processing Dependency: lsb-core-noarch for package: tor-lsb
--> Processing Dependency: lsb-core-noarch for package: tor-lsb
---> Package mgetty.i386 0:1.1.33-16.fc9 set to be erased
---> Package fetchmail.i386 0:6.3.8-6.fc9 set to be erased
--> Running transaction check
---> Package tor-lsb.i386 0:0.1.2.19-1.fc9 set to be erased
--> Processing Dependency: init(tor) for package: tor-core
--> Processing Dependency: tor-lsb = 0.1.2.19-1.fc9 for package: tor
--> Running transaction check
---> Package tor-core.i386 0:0.1.2.19-1.fc9 set to be erased
---> Package tor.i386 0:0.1.2.19-1.fc9 set to be erased
--> Finished Dependency Resolution

Dependencies Resolved

=============================================================================
 Package                 Arch       Version          Repository        Size 
=============================================================================
Removing:
 sendmail                i386       8.14.2-4.fc9     installed         1.9 M
Removing for dependencies:
 fetchmail               i386       6.3.8-6.fc9      installed         1.3 M
 mgetty                  i386       1.1.33-16.fc9    installed         948 k
 redhat-lsb              i386       3.1-19.fc8       installed         496 k
 tor                     i386       0.1.2.19-1.fc9   installed         974 k
 tor-core                i386       0.1.2.19-1.fc9   installed         1.2 M
 tor-lsb                 i386       0.1.2.19-1.fc9   installed         1.8 k

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

Is this ok [y/N]: n
Exiting on user Command
Complete!
[hughsie@hughsie-laptop gnome-packagekit]$ pkcon remove sendmail
resolve runtime was 0.7 seconds
get-requires runtime was 0.7 seconds
   
[..........................................===........................................]
               
Error: dep-resolution-failed : package could not be removed, as other packages
depend on it
remove-package runtime was 2.9 seconds                                         
                           
[hughsie@hughsie-laptop gnome-packagekit]$ pkcon get requires sendmail
resolve runtime was 2.3 seconds
get-requires runtime was 0.7 seconds    


Comment 7 Richard Hughes 2008-03-31 13:56:47 UTC
Could it be "Processing Dependency: server(smtp)" that we are not doing in
GetRequires?

Comment 8 Rahul Sundaram 2008-03-31 14:03:23 UTC
Yep. That is likely the cause. I didn't have sendmail installed on my system.
When some other package required a MTA and since several have the same virtual
provides, the shortest path wins in yum and exim got installed. What you are
seeing with sendmail is exactly what I get with exim. 

Comment 9 Tim Lauridsen 2008-04-01 13:25:37 UTC
I cant reproduce any problems with get-requires helper in the yum backend.

Example

$ /usr/share/PackageKit/helpers/yum/resolve.py none yum
allow-cancel    true
no-percentage-updates
status  query
package installed       yum;3.2.13-1.fc9;noarch;installed       RPM
installer/updater
$ /usr/share/PackageKit/helpers/yum/get-requires.py none
'yum;3.2.13-1.fc9;noarch;installed' no
allow-cancel    true
no-percentage-updates
status  info
package installed       system-config-language;1.2.12-1.fc8;noarch;installed  A
graphical interface for modifying the system language
package installed      
PackageKit;0.1.10-0.576.20080325git.fc8.hughsie;i386;installed System daemon
that is a DBUS abstraction layer for packages
package installed       pirut;1.3.28-1.fc8;noarch;installed     Package
Installation, Removal and Update Tools
package installed       yum-utils;1.1.11-1.fc8;noarch;installed Utilities based
around the yum package manager
package installed       yum-aliases;1.1.11-1.fc8;noarch;installed       Yum
plugin to enable aliases filters
package installed       mash;0.2.8-1.fc8;noarch;installed       Koji buildsystem
to yum repository converter
package installed       anaconda;11.3.0.50-2;i386;installed     Graphical system
installer
package installed       yumex;2.0.3-2.fc8;noarch;installed      Yum Extender
graphical package management tool

 

Comment 10 Rahul Sundaram 2008-04-01 13:35:54 UTC
If you need more information from me, let me know. I still have the same problem
with specifically the exim package. 

Comment 11 Richard Hughes 2008-04-01 15:36:22 UTC
Tim, it gets the normal "package" requires just fine, but seems to not get the
virtual provides such as server(smtp).

Comment 12 Tim Lauridsen 2008-04-04 09:21:53 UTC
i have fixed the get-requires pkg, to return same deps as yum remove pkg in git

Comment 13 Richard Hughes 2008-04-04 09:23:52 UTC
Tim, you are a legend, thanks.