Bug 128049

Summary: YaST stops when trying to delete a non existing package and ignore does not work
Product: [openSUSE] SUSE LINUX 10.0 Reporter: Guðlaugur Jóhannesson <gudlaugu>
Component: YaST2Assignee: Jiri Srain <jsrain>
Status: RESOLVED WONTFIX QA Contact: Klaus Kämpf <kkaempf>
Severity: Normal    
Priority: P5 - None    
Version: Final   
Target Milestone: ---   
Hardware: i686   
OS: Other   
Whiteboard:
Found By: Other Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Attachments: Tarball of /var/log/YaST2

Description Guðlaugur Jóhannesson 2005-10-13 10:08:46 UTC
I was upgrading from 9.3 to 10.0 (openSUSE + java + extra + packman + guru) from 
within my 9.3 kde Desktop.  When YaST tried to delete the non-existing package 
kdemultimedia3-mad it stopped with an error and the basic three options abort 
retry ignore.  I tried retry with no luck and the ignore, also with no luck as 
the same message came up.  I finally had to do an abort.  Here is the relevant 
part from y2log

2005-10-12 15:34:27 <1> raun(10451) [liby2util++] ExternalProgram.
cc(start_program):163 Executing 'rpm' '--root' '/' '--dbp
ath' '/var/lib/rpm' '-e' '--allmatches' '--nodeps' 'kdemultimedia3-mad'
2005-10-12 15:34:27 <1> raun(10451) [liby2util++] ExternalProgram.
cc(checkStatus):320 pid 24447 exited with status 1
2005-10-12 15:34:27 <3> raun(10451) [rpmdb] RpmDb.cc(removePackage):1759 rpm 
failed, message was: error: package kdemultime
dia3-mad is not installed
2005-10-12 15:34:27 <3> raun(10451) [rpmdb] RpmDb.cc(removePackage):1759
2005-10-13 09:24:02 <1> raun(10451) [YCP] PackageCallbacks.ycp:286 DonePackage 
`retry
2005-10-13 09:24:02 <1> raun(10451) [rpmdb] RpmDb.cc(removePackage):1699 RpmDb::
removePackage(kdemultimedia3-mad,8)
2005-10-13 09:24:02 <1> raun(10451) [liby2util++] ExternalProgram.
cc(start_program):163 Executing 'rpm' '--root' '/' '--dbp
ath' '/var/lib/rpm' '-V' '--nodeps' '--noscripts' '--nomd5' 'kdemultimedia3-mad'
2005-10-13 09:24:02 <1> raun(10451) [liby2util++] ExternalProgram.
cc(checkStatus):320 pid 25098 exited with status 1
2005-10-13 09:24:02 <1> raun(10451) [rpmdb++] RpmDb.cc(backupPackage):1879 
package kdemultimedia3-mad not changed -> no bac
kup
2005-10-13 09:24:02 <1> raun(10451) [liby2util++] ExternalProgram.
cc(start_program):163 Executing 'rpm' '--root' '/' '--dbp
ath' '/var/lib/rpm' '-e' '--allmatches' '--nodeps' 'kdemultimedia3-mad'
2005-10-13 09:24:03 <1> raun(10451) [liby2util++] ExternalProgram.
cc(checkStatus):320 pid 25099 exited with status 1
2005-10-13 09:24:03 <3> raun(10451) [rpmdb] RpmDb.cc(removePackage):1759 rpm 
failed, message was: error: package kdemultime
dia3-mad is not installed
2005-10-13 09:24:03 <3> raun(10451) [rpmdb] RpmDb.cc(removePackage):1759
2005-10-13 09:24:05 <1> raun(10451) [YCP] PackageCallbacks.ycp:286 DonePackage 
`ignore
2005-10-13 09:24:05 <1> raun(10451) [packagemanager] InstSrcManager.
cc(releaseAllMedia):948 Going to release all InstSrc'es
 media...
2005-10-13 09:24:05 <1> raun(10451) [Y2PM] Y2PM.cc(commitPackages):1412 
commitPackages installed 0 package(s)
2005-10-13 09:24:05 <1> raun(10451) [Y2PM] Y2PM.cc(commitPackages):1414 
commitPackages errors(0), remaining(3), srcremainin
g(0)
2005-10-13 09:24:05 <1> raun(10451) [YCP] clients/inst_rpmcopy.ycp:658 0 
packages installed
2005-10-13 09:24:05 <1> raun(10451) [YCP] clients/inst_rpmcopy.ycp:674 
remaining: ["kaffeine", "libffmpeg0", "ffmpeg"]
2005-10-13 09:24:05 <1> raun(10451) [YCP] clients/inst_rpmcopy.ycp:685 source 
remaining: []
2005-10-13 09:24:05 <1> raun(10451) [YCP] PackageInstallation.ycp:93 
CommitPackages (3,0): Pkg::TargetGetDU() $["/":[127672
13159, 10362859520, 10336046080, 0]]
2005-10-13 09:24:05 <1> raun(10451) [YCP] SlideShow.ycp:1558 SetCurrentCdNo() - 
src: 1 , CD: 3
2005-10-13 09:24:05 <3> raun(10451) [ui] YTable.cc(itemWithId):263 Table: No 
item "cd(0,2)" existing
2005-10-13 09:24:05 <3> raun(10451) [ui] YTable.cc(itemWithId):263 Table: No 
item "cd(0,2)" existing
2005-10-13 09:24:05 <3> raun(10451) [ui] YTable.cc(itemWithId):263 Table: No 
item "cd(0,2)" existing
2005-10-13 09:24:05 <1> raun(10451) [YCP] SlideShow.ycp:891 src #0: [-1]
2005-10-13 09:24:05 <1> raun(10451) [YCP] SlideShow.ycp:891 src #1: [14720751]
2005-10-13 09:24:05 <1> raun(10451) [YCP] SlideShow.ycp:891 src #2: [-1]
2005-10-13 09:24:05 <1> raun(10451) [YCP] SlideShow.ycp:891 src #3: [-1]
2005-10-13 09:24:05 <1> raun(10451) [YCP] SlideShow.ycp:891 src #4: [-1]
2005-10-13 09:24:05 <1> raun(10451) [YCP] SlideShow.ycp:891 src #5: [-1]
2005-10-13 09:24:05 <1> raun(10451) [Y2PM] Y2PM.cc(commitPackages):1397 
Commiting packages...
2005-10-13 09:24:05 <1> raun(10451) [packagemanager] PMManager.
cc(poolSetInstalled):184 Going to set 2 installed objects...
2005-10-13 09:24:05 <1> raun(10451) [packagemanager++] PMManager.
cc(poolSetInstalled):231 installed objects set!
2005-10-13 09:24:05 <1> raun(10451) [packagemanager] PMManager.cc(poolAdjust):
361 START 73 Selectables
2005-10-13 09:24:05 <1> raun(10451) [packagemanager++] PMManager.
cc(ClearSaveState):548 SaveState cleared!
2005-10-13 09:24:05 <1> raun(10451) [packagemanager] PMManager.cc(poolAdjust):
401 END 73 Selectables
2005-10-13 09:24:05 <1> raun(10451) [liby2util++] PathInfo.cc(_Log_Result):273 
rename /var/adm/YaST/y2pm/y2pmrc1 -> /var/ad
m/YaST/y2pm/y2pmrc
2005-10-13 09:24:05 <1> raun(10451) [liby2util++] PathInfo.cc(_Log_Result):273 
readdir /var/adm/YaST/InstSrcManager/gpg-pub
key
2005-10-13 09:24:06 <1> raun(10451) [PkgPubkeyCache++] PkgPubkeyCache.cc(sync):
226 Known key: gpg-pubkey-9c800aca-40d8063e.
asc
2005-10-13 09:24:06 <1> raun(10451) [PkgPubkeyCache++] PkgPubkeyCache.cc(sync):
226 Known key: gpg-pubkey-3d25d3d9-36e12d04.
asc
2005-10-13 09:24:06 <1> raun(10451) [PkgPubkeyCache++] PkgPubkeyCache.cc(sync):
226 Known key: gpg-pubkey-15c17deb-3f9e80c9.
asc
2005-10-13 09:24:06 <1> raun(10451) [PkgPubkeyCache++] PkgPubkeyCache.cc(sync):
226 Known key: gpg-pubkey-0dfb3188-41ed929b.
asc
2005-10-13 09:24:06 <1> raun(10451) [packagemanager++] PMPackageManager.
cc(getPackagesToInsDel):254 Ignore auto_delete (sho
uld be obsoleted): hotplug{[i-|D..|..|.] i:0.50-19.2.i586 c:- av:0}
2005-10-13 09:24:06 <1> raun(10451) [packagemanager++] PMPackageManager.
cc(getPackagesToInsDel):254 Ignore auto_delete (sho
uld be obsoleted): hotplugctl{[i-|D..|..|.] i:0.08-269.i586 c:- av:0}
2005-10-13 09:24:06 <1> raun(10451) [packagemanager++] PMPackageManager.
cc(getPackagesToInsDel):254 Ignore auto_delete (sho
uld be obsoleted): pcmcia{[i-|D..|..|.] i:3.2.8-7.i586 c:- av:0}
2005-10-13 09:24:06 <1> raun(10451) [packagemanager++] PMPackageManager.
cc(getPackagesToInsDel):254 Ignore auto_delete (sho
uld be obsoleted): suse-release{[i-|D..|..|.] i:9.3-4.i586 c:- av:0}
2005-10-13 09:24:06 <1> raun(10451) [packagemanager++] PMPackageManager.
cc(getPackagesToInsDel):254 Ignore auto_delete (sho
uld be obsoleted): suselinux-adminguide_en{[i-|D..|..|.] i:9.3-4.2.noarch c:- 
av:0}
2005-10-13 09:24:06 <1> raun(10451) [packagemanager++] PMPackageManager.
cc(getPackagesToInsDel):254 Ignore auto_delete (sho
uld be obsoleted): suselinux-userguide_en{[i-|D..|..|.] i:9.3-6.noarch c:- av:0}
2005-10-13 09:24:06 <1> raun(10451) [packagemanager++] PMPackageManager.
cc(getPackagesToInsDel):254 Ignore auto_delete (sho
uld be obsoleted): xf86tools{[i-|D..|..|.] i:0.1-987.i586 c:- av:0}
2005-10-13 09:24:06 <1> raun(10451) [packagemanager++] PMPackageManager.
cc(getPackagesToInsDel):254 Ignore auto_delete (sho
uld be obsoleted): xsu{[i-|D..|..|.] i:0.3.1-44.i586 c:- av:0}
2005-10-13 09:24:06 <1> raun(10451) [packagemanager] PMPackageManager.
cc(getPackagesToInsDel):279 PackagesToInsDel: delete
1, install 3, srcinstall 0
2005-10-13 09:24:06 <1> raun(10451) [Y2PM] Y2PM.cc(internal_commitPackages):1076 
Restrict to media number 3
2005-10-13 09:24:06 <1> raun(10451) [rpmdb] RpmDb.cc(removePackage):1699 RpmDb::
removePackage(kdemultimedia3-mad,8)
2005-10-13 09:24:06 <1> raun(10451) [liby2util++] ExternalProgram.
cc(start_program):163 Executing 'rpm' '--root' '/' '--dbp
ath' '/var/lib/rpm' '-V' '--nodeps' '--noscripts' '--nomd5' 'kdemultimedia3-mad'
2005-10-13 09:24:06 <1> raun(10451) [liby2util++] ExternalProgram.
cc(checkStatus):320 pid 25104 exited with status 1
2005-10-13 09:24:06 <1> raun(10451) [rpmdb++] RpmDb.cc(backupPackage):1879 
package kdemultimedia3-mad not changed -> no bac
kup
2005-10-13 09:24:06 <1> raun(10451) [liby2util++] ExternalProgram.
cc(start_program):163 Executing 'rpm' '--root' '/' '--dbp
ath' '/var/lib/rpm' '-e' '--allmatches' '--nodeps' 'kdemultimedia3-mad'
2005-10-13 09:24:06 <1> raun(10451) [liby2util++] ExternalProgram.
cc(checkStatus):320 pid 25105 exited with status 1
2005-10-13 09:24:06 <3> raun(10451) [rpmdb] RpmDb.cc(removePackage):1759 rpm 
failed, message was: error: package kdemultime
dia3-mad is not installed
2005-10-13 09:24:06 <3> raun(10451) [rpmdb] RpmDb.cc(removePackage):1759
Comment 1 Jiri Srain 2005-10-21 10:58:29 UTC
Michael, can you guess from this piece of log what's the problem?

Guðlaugur, please. next time attach whole /var/log/YaST2 directory, please.
Comment 2 Guðlaugur Jóhannesson 2005-10-21 11:30:59 UTC
Created attachment 55060 [details]
Tarball of /var/log/YaST2 

y2log-2 holds the snippet I posted earlier
Comment 3 Michael Andres 2005-10-24 12:23:38 UTC
This is IMO caused by 'PackageInstallation.ycp:93 CommitPackages (3,0)...'.

Somethings seems to loop from 1 to X?, and calls CommitPackages restricted to packages from a certian media. This restricted call also disables rereading the rpm database at the end of commit, because the caller took over responsibility by using this kind of interface to commit.

Thus every loop retries the pending delete, as no database reread is triggered. Which would probabely reveal that the package is actually gone. The same way it looks as if the 'remaining' packages ["kaffeine", "libffmpeg0", "ffmpeg"] would require a hop back in CD number in order to get installed. 

The loop may try to prevent CD-hopping, but leaves stuff uninstalled. It does not help to try CD 5,6,7,... which don't exist, if the remaining packages are located on CD 1 or 2. 
Comment 6 Jiri Srain 2006-07-25 09:19:19 UTC
The code has been reimplemented for 10.1 (libzypp), thus resolving as WONTFIX.