[MDEV-9585] Don't restart during rpm update Created: 2016-02-18  Updated: 2017-11-05  Resolved: 2017-11-05

Status: Closed
Project: MariaDB Server
Component/s: Packaging
Affects Version/s: 5.5.48
Fix Version/s: N/A

Type: Bug Priority: Major
Reporter: Dennis Jacobfeuerborn Assignee: Sergei Golubchik
Resolution: Not a Bug Votes: 0
Labels: packaging
Environment:

CentOS 6



 Description   

A few minutes ago I performed an update of a system that had MariaDB installed and the installation got stuck at "Cleanup : MariaDB-server-5.5.42-1.el6.x86_64" for about 20 minutes.
Apparently the rpm restarted the server which is a really really bad idea.
First this created an unexpected downtime of the service as the actual restart of the system was scheduled for a later time.
Second had the system crashed during that long time window not only the MariaDB database would be affected but the package database would be corrupt as well.

Please remove this restart from the rpm as it interferes with the controlled maintenance of the system and makes us admins really sad pandas .



 Comments   
Comment by Elena Stepanova [ 2016-02-19 ]

Unless there is something explicit in distribution policies regarding auto upgrades (is there?), I'd say it's a judgement call. There are things that can go wrong if the server is restarted automatically, but also there are things that can go wrong if it's not restarted automatically – potential security issues, incompatibility with upgraded plugins, what not.

It really depends on what people are prepared to, and restarts should be no news for sad pandas, as MySQL also restarts the server. Maybe some distributions which do their own packaging of MySQL/MariaDB don't, but Oracle's packages do, and Sun's packages did, and quite possibly MySQL's packages did as well.

Assigning to serg for the decision.

Comment by Dennis Jacobfeuerborn [ 2016-02-19 ]

The issues you mentioned are precisely why the restart should not happen automatically. The person best to assess the situation is the site admin.and not the packager. The packager can only make once-size-fits-all decisions which is really not appropriate for an application like MariaDB that can differ wildly in configuration and size and thus the impact of the restart between different installations.

Comment by Sergei Golubchik [ 2016-02-19 ]

As far as packaging is concerned, we're trying to be compatible with downstream packages. We don't want any surprises when a user upgrades from the distribution mariadb package to ours (or vice versa), and the server suddenly is restarted (or not restarted).

In particular, mariadb-server packages in Fedora do restart on upgrades. For example, this is the post-install scriptlet from mariadb-server-10.1.11-8.fc24.x86_64.rpm:

if [ $1 -ge 1 ] ; then
        # Package upgrade, not uninstall
        systemctl try-restart mariadb.service >/dev/null 2>&1 || :
fi

Generated at Thu Feb 08 07:35:47 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.