Bug 393531

Summary: Zypper and yast exhibit strange behavior when removing k3b
Product: [openSUSE] openSUSE 11.0 Reporter: Dave Plater <davejplater>
Component: libzyppAssignee: E-mail List <zypp-maintainers>
Status: RESOLVED WORKSFORME QA Contact: E-mail List <qa-bugs>
Severity: Normal    
Priority: P5 - None CC: davejplater, schubi
Version: Factory   
Target Milestone: ---   
Hardware: Other   
OS: Other   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Attachments: zypper.log compressed
zypper testcase with zypper.log inside zypper.solverTestCase folder
solver testcase with factory disabled.

Description Dave Plater 2008-05-22 11:44:12 UTC
Arbuthnot:/home/davepl/Documents # zypper rm k3b
Reading installed packages...

The following packages are going to be reinstalled:
  k3b-devel k3b-arts


The following packages are going to be REMOVED:
  k3b-codecs k3b


After the operation, 12.4 M will be freed.
Continue? [YES/no]:
Removing k3b-codecs-1.0.4-2.1.pm.2 [done]
Removing k3b-1.0.4-72 [done]
Downloading package k3b-devel-1.0.4-72.i586, 0 B (0 B unpacked)
Downloading: inst-source [error (1.8 K/s)]
Cannot write file '/var/adm/mount/AP_0x00000005'.

Abort, retry, ignore? [A/r/i]: i
Downloading package k3b-arts-1.0.4-72.i586, 0 B (0 B unpacked)
Downloading: inst-source [error (888 B/s)]
Cannot write file '/var/adm/mount/AP_0x00000005'.

Abort, retry, ignore? [A/r/i]: i
Yast has the same problem. Downgrade of zypper libzypp etc makes no difference.
Disabling factory repo fixes the problem, see the following :-

Arbuthnot:/home/davepl/Documents # zypper rm k3b
Reading installed packages...

The following packages are going to be REMOVED:
  k3b-devel k3b-codecs k3b-arts k3b


After the operation, 12.4 M will be freed.
Continue? [YES/no]:
Removing k3b-arts-1.0.4-72 [done]
Removing k3b-codecs-1.0.4-2.1.pm.2 [done]
Removing k3b-devel-1.0.4-72 [done]
Removing k3b-1.0.4-72 [done]
Comment 1 Dave Plater 2008-05-22 11:48:23 UTC
Created attachment 217510 [details]
zypper.log compressed
Comment 2 Dave Plater 2008-05-22 11:51:56 UTC
I must point out that my alternate repo ftp://mirrors.kernel.org/opensuse/distribution/SL-OSS-factory/ was still enabled when I disabled factory and I have refreshed many times.
Comment 3 Stephan Kulow 2008-05-22 12:01:53 UTC
sure, when there is no repo it doesn't have any alternative. But without test case it's hard to tell what the problem is - my guess would be a mismatch between packman and factory
Comment 4 Dave Plater 2008-05-22 12:41:53 UTC
Hope that was the correct command I used.
zypper rm  --debug-solver k3b
I disabled altfactory, packman and removed k3b-codecs prior to the test case to take packman out of the loop. Still the same error. Next after test case was generated, I disabled every repo except factory and still same problem.
Comment 5 Dave Plater 2008-05-22 12:47:04 UTC
Created attachment 217533 [details]
zypper testcase with zypper.log inside zypper.solverTestCase folder
Comment 6 Dave Plater 2008-05-22 12:56:27 UTC
Is this bug not related in some way to Bug #385980?
Comment 7 Stephan Kulow 2008-05-22 12:59:40 UTC
you can find out in using zypper rm --no-force-resolution k3b :)
Comment 8 Dave Plater 2008-05-22 13:16:35 UTC
Arbuthnot:/home/davepl/Documents # zypper rm --no-force-resolution k3b
Reading installed packages...

Problem: k3b-devel-1.0.4-76.i586 requires k3b = 1.0.4, but this requirement cannot be provided
  uninstallable providers: k3b-1.0.4-72.i586[latest]
                   k3b-1.0.4-64.i586[latest]
                   k3b-1.0.4-62.i586[latest]
                   k3b-1.0.4-72.i586[factory]
 Solution 1: Following actions will be done:
  downgrade of k3b-devel-1.0.4-76.i586 to k3b-devel-1.0.4-72.i586
  downgrade of k3b-arts-1.0.4-76.i586 to k3b-arts-1.0.4-72.i586
 Solution 2: do not ask to delete all solvables providing k3b
 Solution 3: Ignore some dependencies of k3b-devel

Choose from above solutions by number or cancel [1/2/3/C]: 
I haven't selected anything yet but it still wants to keep k3b-devel and k3b-arts 

Choose from above solutions by number or cancel [1/2/3/C]: 1
Resolving dependencies...

The following packages are going to be downgraded:
  k3b-devel k3b-arts


The following package is going to be REMOVED:
  k3b


After the operation, 11.4 M will be freed.
Continue? [YES/no]:
Removing k3b-1.0.4-76 [done]
Downloading package k3b-devel-1.0.4-72.i586, 0 B (0 B unpacked)
Downloading: inst-source [error (1.8 K/s)]
Cannot write file '/var/adm/mount/AP_0x00000005'.

Abort, retry, ignore? [A/r/i]: a
Downloading: content [done]
Problem downloading the package file from the repository:
Can't provide  : Media Exception
Repository 'factory' is out of date. Running 'zypper refresh' might help.

It says factory out of date but after refresh 
Arbuthnot:/home/davepl/Documents # zypper ref
Repository 'latest' is up to date.
Repository 'factory' is up to date.
All repositories have been refreshed.
Arbuthnot:/home/davepl/Documents #  
I still get the same output.
Comment 9 Dave Plater 2008-05-22 13:19:38 UTC
Output with factory disabled :-

Arbuthnot:/home/davepl/Documents # zypper rm --no-force-resolution k3b
Reading installed packages...

Problem: k3b-devel-1.0.4-76.i586 requires k3b = 1.0.4, but this requirement cannot be provided
  uninstallable providers: k3b-1.0.4-72.i586[latest]
                   k3b-1.0.4-64.i586[latest]
                   k3b-1.0.4-62.i586[latest]
 Solution 1: Following actions will be done:
  deinstallation of k3b-devel-1.0.4-76.i586
  deinstallation of k3b-arts-1.0.4-76.i586
 Solution 2: do not ask to delete all solvables providing k3b
 Solution 3: Ignore some dependencies of k3b-devel

Choose from above solutions by number or cancel [1/2/3/C]: 1
Resolving dependencies...

The following packages are going to be REMOVED:
  k3b-devel k3b-arts k3b


After the operation, 11.4 M will be freed.
Continue? [YES/no]: y
Removing k3b-arts-1.0.4-76 [done]
Removing k3b-devel-1.0.4-76 [done]
Removing k3b-1.0.4-76 [done]
Comment 10 Dave Plater 2008-05-22 13:30:00 UTC
Created attachment 217545 [details]
solver testcase with factory disabled.

latest is the name of my local repository containing the packages that are installed.
Comment 11 Stephan Kulow 2008-05-22 19:12:25 UTC
well, whatever is in /data/root/latest - you have several k3b-devel versions there. And the older one does not require k3b, so zypper replaces your k3b-devel with that one.

So there is no bug, it may just be suprising to you.
Comment 12 Dave Plater 2008-05-22 20:25:08 UTC
I try very hard to help in this case and have very carefully explained that the bug happens when only the factory repository is enabled.
Zypper and yast both want to keep k3b-devel and k3b-arts when k3b is uninstalled.
That incorrect behavior occurs when factory is the only enabled repository. Did I waste my time with the test case and you are going to sweep this bug under the carpet.
Please read my reports again carefully, I don't think I can explain the problem only occurs with the factory repo any clearer.
Factory repo has obviously been fixed but unless you know what the cause is, it will happen again. see bug 385980 and bug 379480
This is the worst type of bug that goes away and then comes back again.
Comment 13 Stephan Kulow 2008-05-22 20:45:41 UTC
as I said: your /data/root/latest is the problem - it gives the solver a way out without removing _everything_. You should clean that repo up.

But having a second look, there seems to be something weird still: you have two k3b-devel versions in both latest and factory - as I said, the latest repo is a weird one.

But in the real factory there is only one.

2008-05-22 14:30:50 <999> Arbuthnot(3878) [zypp] SATResolver.cc(operator()):347 Resetting U__s_(1114)k3b-devel-1.0.4-76.i586(latest)
2008-05-22 14:30:50 <999> Arbuthnot(3878) [zypp] SATResolver.cc(operator()):347 Resetting U__s_(2366)k3b-devel-1.0.4-72.i586(latest)
2008-05-22 14:30:50 <999> Arbuthnot(3878) [zypp] SATResolver.cc(operator()):347 Resetting U__s_(4895)k3b-devel-1.0.4-76.i586(factory)
2008-05-22 14:30:50 <999> Arbuthnot(3878) [zypp] SATResolver.cc(operator()):347 Resetting U__s_(27089)k3b-devel-1.0.4-72.i586(factory)
2008-05-22 14:30:50 <999> Arbuthnot(3878) [zypp] SATResolver.cc(operator()):347 Resetting I__s_(36257)k3b-devel-1.0.4-76.i586(@System)

Comment 14 Stephan Kulow 2008-05-22 20:47:15 UTC
This is how it looks on my machine:

>repo2solv.sh /var/cache/zypp/raw/factory/ | dumpsolv | grep k3b-devel
name: k3b-devel 1.0.4-76 i586
  k3b-devel = 1.0.4-76
name: k3b-devel 1.0.4-76 ppc
  k3b-devel = 1.0.4-76
name: k3b-devel 1.0.4-76 x86_64
  k3b-devel = 1.0.4-76

So please try zypper clean ; zypper ref and then try the above commandline. 
Comment 15 Dave Plater 2008-05-22 21:34:36 UTC
The problem has gone away just like in Bug #385980 as I said it must be related to the factory repository. I reproduced the bug with only factory enabled. There was no problem with factory disabled. Factory was also displaying two different version of package today and only the older version had a description displayed. If I disabled the factory repository zypper removed all the correct files. Maybe this bug is wrong and it should be against factory repository. There is a problem but it has gone away now after my last factory refresh. The last time, in Bug #385980, it only occurred when both factory repos were enabled.
I concede it is maybe not a bug in libzypp but it is a bug and it will happen again.
Comment 16 Stefan Schubert 2008-05-26 13:47:01 UTC
I think this is not a bug. zypper wants to solve the problems by his own
which you can switch off.