Bug 36927 - invoke-rc.d: initscript univention-virtual-machine-manager-daemon, action "stop" failed
invoke-rc.d: initscript univention-virtual-machine-manager-daemon, action "st...
Status: CLOSED FIXED
Product: UCS
Classification: Unclassified
Component: UMC - Virtual machines (UVMM)
UCS 4.0
Other Linux
: P5 normal (vote)
: UCS 4.0-0-errata
Assigned To: Philipp Hahn
Erik Damrose
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2014-11-20 18:29 CET by Jan Christoph Ebersbach
Modified: 2015-01-29 11:49 CET (History)
5 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:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional):
Max CVSS v3 score:


Attachments
updater.log (582.94 KB, text/x-log)
2014-11-21 08:14 CET, Jan Christoph Ebersbach
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Jan Christoph Ebersbach univentionstaff 2014-11-20 18:29:49 CET
Traceback during update from UCS 3.2-4 to 4.0-0.

Preparing to replace univention-virtual-machine-manager-daemon 3.0.17-9.493.201404030839 (using .../univention-virtual-machine-manager-d
aemon_4.0.20-1.561.201411121814_all.deb) ...
Stopping UCS Virtual Machine Manager: uvmmdkill: finish: univention-virtual-machine-manager-daemon: (pid 4389) 332282s, want down
invoke-rc.d: initscript univention-virtual-machine-manager-daemon, action "stop" failed.
dpkg: warning: subprocess old pre-removal script returned error exit status 1
dpkg - trying script from the new package instead ...
Stopping UCS Virtual Machine Manager: uvmmdkill: finish: univention-virtual-machine-manager-daemon: (pid 4407) 332290s
invoke-rc.d: initscript univention-virtual-machine-manager-daemon, action "stop" failed.
dpkg: error processing /var/cache/apt/archives/univention-virtual-machine-manager-daemon_4.0.20-1.561.201411121814_all.deb (--unpack):
 subprocess new pre-removal script returned error exit status 1
configured to not write apport reports
Not updating uvmm/pool/default/path
Not updating uvmm/umc/autosearch
Not updating uvmm/check/interval
Not updating uvmm/check/timeout
Not updating uvmm/debug
Not updating uvmm/debug/command
Not updating uvmm/debug/ldap
Not updating uvmm/debug/node
Not updating uvmm/debug/unix
Not updating auth/uvmmd/accessfile
Calling joinscript 44univention-virtual-machine-manager-daemon.inst ...
Joinscript 44univention-virtual-machine-manager-daemon.inst finished with exitcode 1
File: /etc/logrotate.d/univention-virtual-machine-manager-daemon
Traceback (most recent call last):
  File "<stdin>", line 8, in <module>
ImportError: No module named ucrLogrotate
File: /etc/runit/univention-virtual-machine-manager-daemon/run
File: /etc/univention/uvmmd.ini
File: /etc/security/access-uvmmd.conf
File: /etc/cron.d/univention-virtual-machine-manager-daemon
File: /etc/pam.d/uvmmd
Starting UCS Virtual Machine Manager : uvmmddone.
Preparing to replace univention-management-console-module-uvmm 3.0.17-9.493.201404030839 (using .../univention-management-console-module
-uvmm_4.0.20-1.561.201411121814_all.deb) ...
Reloading Univention Management Console Server.
Traceback (most recent call last):
  File "/usr/sbin/univention-management-console-server", line 49, in <module>
    from univention.management.console.log import CORE, log_init
ImportError: No module named log
done.
Comment 1 Jan Christoph Ebersbach univentionstaff 2014-11-20 18:31:10 CET
The update was performed on a UCS Master.
Comment 2 Florian Best univentionstaff 2014-11-20 18:32:53 CET
The pysupport triggers are probably not done at that point.
We should move any reload of UMC into a dpkg-trigger which is executed after py_support.
Comment 3 Jan Christoph Ebersbach univentionstaff 2014-11-20 18:36:58 CET
# univention-upgrade --ignoressh
Traceback (most recent call last):
  File "/usr/sbin/univention-upgrade", line 43, in <module>
    from univention.updater import UniventionUpdater, UCS_Version, ConfigurationError
ImportError: No module named updater
Comment 4 Jan Christoph Ebersbach univentionstaff 2014-11-20 18:38:42 CET
Subsequently the upgrade can't be continued because univention-upgrade doesn't want to start anymore:

# univention-upgrade --ignoressh
Traceback (most recent call last):
  File "/usr/sbin/univention-upgrade", line 43, in <module>
    from univention.updater import UniventionUpdater, UCS_Version, ConfigurationError
ImportError: No module named updater

UCS 4 has been removed from sources.list as well - apt-get -f install wants to remove half of UCS.
Comment 5 Florian Best univentionstaff 2014-11-20 18:53:00 CET
Can you please attach the full updater.log?
Comment 6 Jan Christoph Ebersbach univentionstaff 2014-11-21 08:14:33 CET
Created attachment 6455 [details]
updater.log

Here it is.
Comment 7 Stefan Gohmann univentionstaff 2014-11-21 08:39:25 CET
That's the reason for the failed upgrade:

Preparing to replace univention-virtual-machine-manager-daemon 3.0.17-9.493.201404030839 (using .../univention-virtual-machine-manager-daemon_4.0.20-1.561.201411121814_all.deb) ...
Stopping UCS Virtual Machine Manager: uvmmdkill: finish: univention-virtual-machine-manager-daemon: (pid 4389) 332282s, want down
invoke-rc.d: initscript univention-virtual-machine-manager-daemon, action "stop" failed.
dpkg: warning: subprocess old pre-removal script returned error exit status 1
dpkg - trying script from the new package instead ...
Stopping UCS Virtual Machine Manager: uvmmdkill: finish: univention-virtual-machine-manager-daemon: (pid 4407) 332290s
invoke-rc.d: initscript univention-virtual-machine-manager-daemon, action "stop" failed.
dpkg: error processing /var/cache/apt/archives/univention-virtual-machine-manager-daemon_4.0.20-1.561.201411121814_all.deb (--unpack):
 subprocess new pre-removal script returned error exit status 1
configured to not write apport reports
Comment 8 Philipp Hahn univentionstaff 2015-01-08 14:34:23 CET
(In reply to Jan Christoph Ebersbach from comment #0)
> 3.0.17-9.493.201404030839 (using .../univention-virtual-machine-manager-daemon_4.0.20-1.561.201411121814_all.deb) ...
> Stopping UCS Virtual Machine Manager: uvmmd
> kill: finish: univention-virtual-machine-manager-daemon: (pid 4389) 332282s, want down

This happens when UVMMd failes to start. Then runit starts ./finish to delay the restart exponentially from 5 to 60 seconds. During that time "sv force-stop" just returns 1, which aborts the init script due to the use of "set -e".

To reproduce:

ln -sf /bin/false /usr/sbin/univention-virtual-machine-manager-daemon
kill -USR1 $(</etc/runit/univention-virtual-machine-manager-daemon/supervise/pid)
while sv status univention-virtual-machine-manager-daemon; do sleep 1; done &
univention-upgrade --ignoressh --ignoreterm --noninteractive </dev/null

r57181 | Bug #36927 UVMM: Copyright 2015
r57182 | Bug #36927 UVMM: Fix upgrade problem
r57185 | Bug #36927 UVMM: Fix init script

Package: univention-virtual-machine-manager-node
Version: 3.0.4-1.87.201501081418
Branch: ucs_4.0-0
Scope: errata4.0-0

2014-11-26-univention-virtual-machine-manager-daemon.yaml
 Handle failure to stop UVMMd during update more gracefully.
Comment 9 Philipp Hahn univentionstaff 2015-01-08 14:44:56 CET
Package: univention-virtual-machine-manager-daemon
Version: 4.0.21-1.571.201501081422
Branch: ucs_4.0-0
Scope: errata4.0-0
Comment 10 Erik Damrose univentionstaff 2015-01-23 16:31:41 CET
OK: This works great, uvmm-d is more useable now. Updating to a new version does no longer block or fail.
OK: YAML

However: This will not solve the update problem from 3.2-*: When updating to UCS 4, the errata repositories will only be activated after the initial upgrade completes. The fix should be backported: Bug 37609
Comment 11 Janek Walkenhorst univentionstaff 2015-01-29 11:49:10 CET
<http://errata.univention.de/ucs/4.0/52.html>