Bug 31055 - PackageManager raises when encountering broken packages
PackageManager raises when encountering broken packages
Status: CLOSED FIXED
Product: UCS
Classification: Unclassified
Component: univention-lib
UCS 3.1
Other Linux
: P5 normal (vote)
: UCS 3.1-1-errata
Assigned To: Dirk Wiesenthal
Felix Botner
:
: 31230 (view as bug list)
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2013-04-15 12:38 CEST by Dirk Wiesenthal
Modified: 2013-05-22 16:17 CEST (History)
3 users (show)

See Also:
What kind of report is it?: ---
What type of bug is this?: ---
Who will be affected by this bug?: ---
How will those affected feel about the bug?: ---
User Pain:
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Ticket number:
Bug group (optional):
Max CVSS v3 score:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Dirk Wiesenthal univentionstaff 2013-04-15 12:38:25 CEST
The new resolver is too strict at the moment:
apt-get:
apt-get install $package
[...]
The following packages have unmet dependencies:
 $package : Depends: $package2 but it is not going to be installed
E: Broken packages

PackageManager:
install, remove, broken = package_manager.mark([package]) # expected: [], [], [package]
  File "/usr/lib/pymodules/python2.6/univention/lib/package_manager.py", line 525, in mark
    fixer.resolve()
  File "/usr/lib/python2.6/dist-packages/apt/cache.py", line 561, in resolve
    self._resolver.resolve()
SystemError: E:Probleme können nicht korrigiert werden, Sie haben zurückgehaltene defekte Pakete.

One needs to catch the system error and call progress_state.error(). If it is not possible to determine the broken package, mark all passed packages as broken.
Comment 1 Dirk Wiesenthal univentionstaff 2013-04-15 12:40:08 CEST
Regression introduced with Bug#30279
Comment 2 Dirk Wiesenthal univentionstaff 2013-04-29 16:39:28 CEST
*** Bug 31230 has been marked as a duplicate of this bug. ***
Comment 3 Dirk Wiesenthal univentionstaff 2013-04-29 17:14:13 CEST
Fixed in (3.1-2):
  univention-lib 2.0.27-1.129.201304291705
and (3.1-1):
  univention-lib 2.0.26-2.128.201304291703

Marking all passed packages as broken when fixer.resolve() raises an error. The concrete package cannot be identified any more as the resolve() uses the C-lib.

Changelog updated, YAML created
Comment 4 Felix Botner univentionstaff 2013-05-16 13:05:34 CEST
removed everything from template 15_ucs-online-version.list, added "deb http://192.168.0.10/build2/ ucs_3.1-0-ucs3.1-2/all/" to sources.list

tried to install a package with univention-add-app
-> univention-add-app ucc univention-virtual-machine-manager-daemon

got Traceback with ucs3.1-1
Traceback (most recent call last):
  ...
SystemError: E:Unable to correct problems, you have held broken packages.

and a error message with errata3.1-1|ucs3.1-2
...
E:Unable to correct problems, you have held broken packages.
E:Unable to correct problems, you have held broken packages.
univention-virtual-machine-manager-daemon: Untrusted origin
univention-virtual-machine-manager-daemon: Untrusted origin
univention-virtual-machine-manager-daemon: Failed to install
univention-virtual-machine-manager-daemon: Failed to install


OK - errata3.1-1
OK - yaml

OK - ucs3.1-2
OK - changelog
Comment 5 Moritz Muehlenhoff univentionstaff 2013-05-22 16:17:18 CEST
http://errata.univention.de/ucs/3.1/108.html