[debian-mysql] Bug#853972: Bug#853972: mariadb-10.1: upgrading from mysql-5.7 renders old data inaccessible with no option to abort

Otto Kekäläinen otto at debian.org
Sat Aug 4 13:35:30 BST 2018

Control: tags -1 -patch

> Solution (should work for stretch release cycle and probably beyond):
> Firstly, the db_critical input should be a boolean question
> (defaulting to false) rather than a note (and it should perhaps
> mention /etc/mysql/debian.cnf as well, but I'm not sure about that),
> to allow the sysadmin to bail out.
> If the sysadmin does bail out, then the preinst will fail and the
> installation will abort.  Even though the mysql-server packages will
> have been removed by this time (because of the package conflicts), it
> is much easier for the sysadmin to just (re)install mysql-5.7 than to
> have to undo the mariadb-server installation in addition.

Actually at one point it was like this, but having dpkg fail is a
really bad user experience because then all operations are stuck and
dpkg will be screaming on all operations and hindering most
install/remove operations. It is better to enable everything else to
pass (e.g a apt upgrade or dist-upgrade) to complete and let users fix
one issue at the time afterwards.

The root of this is the flags system, that has been in MySQL Debian
packaging for years already. The flags system is brittle and needs to
be replaced by something robust, as designed in our previous sprint
(https://pad.ubuntu.com/mysql-sprint) and tracked in the Launchpad bug
at https://bugs.launchpad.net/ubuntu/+source/mysql-5.7/+bug/1490071

More information about the pkg-mysql-maint mailing list