Univention Bugzilla – Bug 23202
Update 2.4-2 auf 3.0 - Python2.4-Updater am Ende defekt
Last modified: 2011-09-14 10:56:16 CEST
p-u-debug und p-u-license benötigen ihrerseits eine Shared-Objekt-Bibliothek, die speziell für Python2.4 übersetzt werden muß. Dies ist nicht mehr Bestandteil von Debian-Squeeze und damit auch nicht mehr von UCS-3.0. Das führt jetzt am Ende des Upgrade zu folgendem Fehler: Am Ende führt der der ALTE Updater (der noch Python2.4 verwendet) das interne Äquivalent zu "ucr set version/version=3.0" aus. Dieses ruft univention.config_registry.handler_set() auf, was über die configHandler*-Aufruft irgendwann auch filter() aufruft, das (noch) den fest kodierten Pfad zu /usr/bin/python2.4 enthält. Der Interpreter existiert zwar noch, allerdings funktioniert das nachfolgende "import univention.config_registry" dort nicht mehr, was zu unschönen Fehlern führt.
Traceback (most recent call last): File "<stdin>", line 8, in ? File "/usr/lib/pymodules/python2.4/univention/updater/__init__.py", line 34, in ? from tools import UniventionUpdater, UCS_Version File "/usr/lib/pymodules/python2.4/univention/updater/tools.py", line 34, in ? import univention.debug as ud ImportError: No module named debug
Nach dem Upgrade wird jetzt ein externes "ucr set" ausgeführt, welches dann den neue Python-Interpreter benutzt. Ein "reload(ucr)" ist hier nicht möglich, da die config_registry.py-Datei von /usr/lib/python2.4/site-packages/univention/ nach /usr/lib/pymodules/python2.4/univention/ verschoben wird, was (noch nicht) in sys.path des alten Python2.4-Prozesses vorhanden ist. svn26005, svn26059, univention-updater_6.0.99-2.828.201108101855 (UCS-2.4-3) svn26007, svn26060, univention-updater_7.0.13-1.829.201108101902 (UCS-3.0) svn26008, univention-config-registry_7.0.16-1.349.201108091159 (UCS-3.0) ChangeLog-2.4-3: \item Es wurden einige Vorbereitungen für das Upgrade auf \ucsUCSShort{3.0} getroffen (\ucsBug{23202}). ChangeLog-3.0: ×
Die Ausgabe des externen "ucsr set Version/*=*" wird jetzt noch ins debug-Log umgeleitet. svn26129, univention-updater_6.0.101-1.836.201108161001 svn26130, svn26131, univention-updater_7.0.19-1.837.201108161008 ChangeLog: keine Änderung
Update von 2.4-2 auf 2.4-3 -> OK, version/patchlevel richtig gesetzt version/patchlevel auf 2.4-2 gesetzt und nochmals auf 2.4-3 aktualisiert -> OK, version/patchlevel richtig gesetzt Update von 2.4-2 auf 2.4-3 mit univention-updater aus 2.4-3 -> OK, version/patchlevel richtig gesetzt Update von 2.4-3 auf 3.0 -> OK, version/patchlevel und version/version richtig gesetzt updater.log: ... Setting version/version Setting version/patchlevel ... Changelog Eintrag vorhanden.
Ich bekomme am Ende des Updates auf UCS 2.4-3 die folgende Ausgabe: Check /var/log/univention/updater.log for more information. Running postup.sh script:done. Setting version/version Setting version/patchlevel File: /etc/issue File: /etc/issue.net File: /etc/apt/sources.list.d/15_ucs-online-version.list File: /etc/apt/sources.list.d/18_ucs-online-security.list File: /etc/apt/sources.list.d/20_ucs-online-component.list File: /etc/apt/mirror.list Checking network repository Die Zeilen ^Setting und ^File sollten nicht angezeigt werden.
(In reply to comment #5) > Ich bekomme am Ende des Updates auf UCS 2.4-3 die folgende Ausgabe: > > Check /var/log/univention/updater.log for more information. > Running postup.sh script:done. > Setting version/version > Setting version/patchlevel > File: /etc/issue > File: /etc/issue.net > File: /etc/apt/sources.list.d/15_ucs-online-version.list > File: /etc/apt/sources.list.d/18_ucs-online-security.list > File: /etc/apt/sources.list.d/20_ucs-online-component.list > File: /etc/apt/mirror.list > Checking network repository > > Die Zeilen ^Setting und ^File sollten nicht angezeigt werden. Das ist noch der Updater aus 2.4-2, der diese Zeilen ausgibt. # python2.4 -c 'import univention.config_registry as ucr;ucr.handler_set(["foo=bar"])' Create foo Der aktuelle Updater aus 2.4-3 gibt diese Zeilen (beim Update auf 3.0) nicht mehr aus; diese wird nur noch ins /v/l/u/updater.log geschrieben. Auf der Console landet folgendes: > Check /var/log/univention/updater.log for more information. > Running postup.sh script:done. > Checking network repository > System is up to date (UCS 3.0-0)
Mit dem Updater aus 2.4-3 wird das nicht mehr angezeigt: -> univention-updater net Check /var/log/univention/updater.log for more information. Running postup.sh script:done. Checking network repository Update hold at 2.4-3, next 3.0-0 is after 2.4-3
UCS 2.4-3 wurde veröffentlicht. Sollte der hier beschriebene Bug mit einer neueren Version von UCS erneut auftreten, so sollte der Bug dupliziert werden: "Clone This Bug".