Bug 47931 - Error message during App installation via UMC: Warning: univention-management-console-server.service changed on disk
Error message during App installation via UMC: Warning: univention-management...
Status: CLOSED FIXED
Product: UCS
Classification: Unclassified
Component: UMC - App-Center
UCS 4.3
Other Linux
: P5 normal (vote)
: UCS 4.3-2-errata
Assigned To: Jens Pelzetter
Dirk Wiesenthal
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2018-10-09 08:44 CEST by Stefan Gohmann
Modified: 2018-11-14 14:40 CET (History)
2 users (show)

See Also:
What kind of report is it?: Bug Report
What type of bug is this?: 6: Setup Problem: Issue for the setup process
Who will be affected by this bug?: 1: Will affect a very few installed domains
How will those affected feel about the bug?: 3: A User would likely not purchase the product
User Pain: 0.103
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
appcenter.log (1.30 MB, text/x-log)
2018-10-09 08:44 CEST, Stefan Gohmann
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Stefan Gohmann univentionstaff 2018-10-09 08:44:30 CEST
Created attachment 9694 [details]
appcenter.log

During the installation of the UCS@school, I received the following error message as popup:

=============================================================================
Ein Fehler ist aufgetreten: Warning: univention-management-console-server.service changed on disk. Run 'systemctl daemon-reload' to reload units. Warning: univention-management-console-web-server.service changed on disk. Run 'systemctl daemon-reload' to reload units.

Weitere Hinweise finden Sie in der folgenden Logdatei auf den beteiligten Systemen:
/var/log/univention/appcenter.log
=============================================================================

UCS Version 4.3-1errata218
Comment 1 Stefan Gohmann univentionstaff 2018-10-09 08:58:53 CEST
I'm increasing the priority. If you install a UCS@school environment, then this error message does not establish confidence in the product.
Comment 2 Dirk Wiesenthal univentionstaff 2018-10-12 18:41:47 CEST
This error is not really UCS@school specific. In fact, it is not really App Center "core code".

You get the same error when installing, e.g., audriga. Maybe every App, at least all package based Apps are affected.

It originates in the PackageManager itself.

The PackageManager installs Apps within a "self.no_umc_restart()" context. After the App has been (successfully!) installed (status code 200), it does this:

/usr/share/univention-updater/enable-apache2-umc --no-restart

This results in these calls:

service univention-management-console-server start
service univention-management-console-web-server start

Those commands write the warning to stderr and the PackageManager uses its "error_handler" function to propagate stderr to the end user eventually.

You can see a lot of these errors in the appcenter.log during the apt-get subcommand, but those errors are not propagated.
Comment 3 Dirk Wiesenthal univentionstaff 2018-10-14 02:14:28 CEST
We could do the following:

1. Do not use the error_handler in the PackageManager for "/usr/share/univention-updater/enable-apache2-umc"

This would restore confidence in the App installation, but just hide the error.

2. Do a systemctl daemon-reload in one package.

This should work. But sadly, it does not, at least not in your environment. systemd seems confused over the fact that your local time is behind. This fixes the message:

rdate time.fu-berlin.de
systemctl daemon-reload
# test it:
/usr/share/univention-updater/enable-apache2-umc --no-restart

This fix seems error prone in itself and could happen anytime after this fix was released as well.

3. We do nothing
As the system clock is wrong and the user will likely experience this error message in various cases, we could leave it the way it is.
This seems wrong, as the App installation "feels" broken. Also, the error message does not give any hint what to do.


I think we should go with 1.
Comment 4 Jens Pelzetter univentionstaff 2018-11-06 11:30:24 CET
The function no_umc_restart uses the function _shell_command (same module). This function passes the output of std_out and std_err streams of the shell command called to the progress state which causes the messages to appear. The function already has an optional parameter handle_streams which can be set to False to suppress this. The calls of _shell_command in no_umc_restart have been changed to use this parameter.
Comment 5 Dirk Wiesenthal univentionstaff 2018-11-13 10:58:45 CET
Works great.
Comment 6 Arvid Requate univentionstaff 2018-11-14 14:40:28 CET
<http://errata.software-univention.de/ucs/4.3/306.html>