A comment in debian/mariadb-server-10.1.postinst says: "can safely run on
upgrades with existing databases". While this is true there're a few reasons not
to do that:
- it increases installation time (it has to run rather heavy mysqld multiple times)
- as well as it increases mysqld downtime
- it may fail if database has some plugin specific configs (see MDEV-8437)
- there should be no need to run this script on upgrade: they should be handled
by mysql_upgrade to
- RPM postin doesn't call it if database directory exists
Also postinst is not supposed to create database directories: let
mysql_install_db do that intead.
There was code that was supposed to "catch upgrades from previous versions where
the root password wasn't set". But it is wrong in many regards:
- it is supposed to be executed against running server, but at this point server
should be down, which makes this code no-op
- if the above is fixed, root password will be requested twice (initial root
password request + this one)
- it asks for a password only once, while "initial root password request" asks
twice (password + password verification)
- it may give false positive if unix socket based authentication is in effect
Removed this code since it didn't work for quite a while (at least since
mysql-5.1) and nobody cared about it.
There is no strong need to change password column: the only side effect is
that 4.0 -> 10.1 upgrades may get root/debian-sys-maint passwords stored in old
format. This should be perfectly acceptable, since all password at this point
are stored in old format.
Removed redundant attempt to create mysql.plugin table:
- original code was supposed to INSTALL some plugins:
INSERT INTO plugin VALUES ('innodb', 'ha_innodb.so'),
('federated', 'ha_federated.so'), ('blackhole', 'ha_blackhole.so'),
('archive', 'ha_archive.so');
- original code was supposed to fail if mysql.plugin exists:
The query sequence is supposed to be aborted if the CREATE TABLE fails due
to an already existent table in which case the admin might already have
chosen to remove one or more plugins.
- mysql.plugin must've been created by preceeding mysql_install_db anyway
This reverts commit 6bd94cf542.
Without galera as a compulsory dependency, test suite will not pass
due to failing:
wsrep.pool_of_threads wsrep.binlog_format wsrep.mdev_6832 wsrep.mdev_7798
Plus minor other fixes to debian/control file, wrap-and-sort,
versioned mariadb-common dependency etc. All changes based on
comparison with mariadb-10.0 packaging in official Debian
repositories.
Having galera-3 as a Depends stops installation of proceeding
on systems where package galera-3 is not available. The server
can run fine withouth galera enabled, therefore a more slack
relationship is more appropriate.
This is useful for developers who run autobake-deb.sh directly
from the source tree as the resulting source tar package will be
90% smaller and all operations regarding it consequently 10x faster.
* dpatch cannot be removed yet, as packaging standard isn't updated
* we don't want to remove libssl at all, as in upstream we rather
use system provided OpenSSL than bundled, non-system updated and
less commonly trusted YaSSL
* keep versioned dependencies, they might prove helpful when building
for multiple distros and releases
For tracking purposes this step is committed first before
the unnecessary dependencies are trimmed away.
libpcre3-dev (>= 2:8.35-3.2~) is however omitted (compared to
downstream Debian packaging) as it is not available in precise
and we don't want to break builds on precise yet.
* README and NEWS are very old and mostly plain wrong and not needed
* Lintian-overrides are relevant only in actual Debian QA systems
* watch file was plain wrong and anyway relevant only in downstream distros
Use the slightly better Ubuntu version in both Ubuntu and
Debian and latest versions of Debian don't have problems
with AppArmor files included in packaging.
Let mysqld_safe_syslog.cnf force disable error log so that logging to syslog is
not affected by previous log_error setting.
Added handling of --skip-log-error to mysqld_safe.
fix upgrade[2] tests on trusty and utopic: add missing
conflicts/replaces, client-10.0 should conflict/replace client-5.5.
reformat other conflicts/replaces lines to make them easier
to read and merge
jessie has newer automake so build-depends could not be satisfied.
refresh build-depends, remove automake, libtool,
doxygen, texlive-latex-base, ghostscript.