A common cause of upgrade failures are invalid configuration directives due to deprecation. In this kind of case, apport does not currently tell us the failure reason, and even if it did print a service start failure, the actual reason has to be dug out of the logs. Further, some users have a very old conffile that did not log output to the current location, so the real reason isn't always submitted in a bug report.
We can ask if mysqld will start by using: "mysqld --verbose --help --innodb-read-only 2>&1 > /dev/null". The postinst should do this so that it can fail early with a more useful error message.
Also see bug 1596056 and 1571865. Fixing each of these will improve the situation in a different way. Fixing all three bugs would catch the most failure cases and be the most helpful.
[Impact]
A common cause of upgrade failures are invalid configuration directives due to deprecation. In this kind of case, apport does not currently tell us the failure reason, and even if it did print a service start failure, the actual reason has to be dug out of the logs. Further, some users have a very old conffile that did not log output to the current location, so the real reason isn't always submitted in a bug report.
We can ask if mysqld will start by using: "mysqld --verbose --help --innodb-read-only 2>&1 > /dev/null". The postinst should do this so that it can fail early with a more useful error message.
This is fixed in Yakkety already (http:// anonscm. debian. org/cgit/ pkg-mysql/ mysql.git/ commit/ ?id=7897042ea6c 65aeb608fb28b4b 54639d3dbf3352) but should also be SRU'd to Xenial.
Also see bug 1596056 and 1571865. Fixing each of these will improve the situation in a different way. Fixing all three bugs would catch the most failure cases and be the most helpful.