These are mainly internal files so is a low impact change.
The few scripts/mysql*sql where renames to mariadb_* prefix
on the name.
mysql-test renamed to mariadb-test in the final packages
The MDEV-25004 test innodb_fts.versioning is omitted because ever since
commit 685d958e38 InnoDB would not allow
writes to a database where the redo log file ib_logfile0 is missing.
* mariadb-service-convert to use mariadbd-safe
* galera_recovery to use mariadbd
* mtr - wsrep use mariadb executables
* debian/mariadb-server.mariadb.init use mariadbd-safe
* debian/tests/smoke uses mariadb instead of mysql as client.
Co-Author: Daniel Black <daniel@mariadb.org>
* Deb: Handle codename 'n/a' from Debian Sid properly and autobake-deb cleanup
This fixes autobake-deb.sh builds on Sid which was visible as 4 failing
build steps on Salsa-CI.
- In Sid the LSBNAME might evaluate to 'n/a', so accept it as 'Sid' to
fix builds that failed with error:
Error - unknown release codename n/a
- Refactor list to have Ubuntu versions first, then Debian, and as last
the special case of Debian Sid
- Fix minor syntax issues detected by Shellcheck
Also remove useless DEB_HOST_ARCH_CPU check from debian/rules:
* It was never in effect as the 'sed' in autobake-deb.sh cleared it anyway
* The variable name was wrong and always empty
* If variable would have been correct, logic was still reversed
- Define 3h timeout as the default 1h timeout on Gitlab.com (and others)
is usually not enough for initial (uncached) MariaDB builds.
- Replace Buster to Bookworm/Sid upgrade testing with upgrade inside Buster
testing as direct upgrades from Stretch to Bullseye and Buster to Bookworm
are no longer possible due to:
Bug#993755: libcrypt.so.1: cannot open shared object file when
upgrading from Stretch to Sid (https://bugs.debian.org/993755)
- Stop ignoring MariaDB.org 10.6 to this version upgrade testing failures
to reveal bug MDEV-28640. Originally this step was failing as the uring
dependencies in upstream builders lagged behind and there was nothing
that needed work, only time time to resolve. Now there is an actual bug
in packaging that should be visible as a CI failure.
- Stop testing for 'service mysql status' on systems that upgraded from
MySQL 8.0 to MariaDB.org vended 10.6. Due to some unidentified debian/control
changes in 10.6 on upstream the upgrade is no longer compatible in
a way that would maintain the init.d script with name 'mysql'.
- Fix typos where mergers had changed occurrences of 10.5 to 10.6 while
they intentionally need to be exactly 10.5, otherwise the meaning
changes.
- Align autopkgtest code with downstream official Debian packaging one.
This is change is safe on a stable branch because is only affects builds
and testing, not any actual usage of MariaDB 10.6.
- Standardize on using capitalized 'YES' in CMake build options
(instead of 'yes' or mixed case)
- Add some comments to better document debian/rules
- Fix typo in Lintian overrides
Ubuntu bug: https://bugs.launchpad.net/ubuntu/+source/mariadb-10.6/+bug/1970634
MariaDB ticket: https://jira.mariadb.org/browse/MDEV-25633
When built with LTO on Ubuntu, MariaDB does not catch an exception when
the uring initialization fails due to a low RLIMIT_MEMLOCK value.
This commit amends the commit 0609b34555
to be identical to the one done downstream in Debian:
8d20ca979c
This way both the inline comments and 'git blame' for this section will
show properly why this is needed, and the fix is one that is fully tested
on Debian and Ubuntu.
Also having this section fully identical in upstream MariaDB and downstream
Debian will make the packaging maintenance easier as 'diff` runs on this
file will not flag this as a difference anymore.
In MDEV-28640 the init script failed to stop/start the MariaDB server
due to missing mysqladmin on the system. This was however very hard to
spot from the console output.
Add an explicit check for the binary the script depends on, and fail
verbosely if the dependency is missing.
Remove version suffix from Debian packages (for example mariadb-server-10.9)
because installing suffixed package removes older version
of package even if it's suffixed (for example mariadb-server-10.7)
This make also Debian package management easier in future MariaDB
version iterations because there is no need for stacking
Conlicts/Breaks/Replaces-parameters in every new major release
Add compression plugins:
* bzip2
* lz4
* lzma
* lzo
* snappy
To Autopkg's basic smoke-test dependencies.
Also make sure that MariaDB service is reloaded
when smoke-test is executed.
- Go back to using $MAJOR_VER instead of hard-coded version strings where
possible.
- Default to 'auto' in NUMJOBS instead of just 1. Will make mysql-test-run
faster.
- Unify autopkgtest with latest version in Debian, use eatmydata to make
mysql-test-run faster.
- Salsa-CI: Remove obsolete 'artifacts: true' as that is the default value.
- Salsa-CI: Clean away obsolete temporary fixes.
- Salsa-CI: Unify with salsa-ci.yml in Debian, including test upgrades
from Bullseye to Debian unstable.
* Clean up autobake-deb.sh
- No need to define any TokuDB rules, there is no such package
- No need to define RocksDB arch, it already has "Architecture:" line
- No need to dh-systemd backwards compat stanza, neither Debian Jessie
nor Ubuntu Xenial has any new MariaDB 10.5 releases anymore
- Minor spelling fixes
* Ensure dch runs non-interactively so builds pass with new dch version
A recent version of dch (available in Ubuntu Hirsute and Debian Bullseye)
had a change in behaviour that it started prompting if the DEBEMAIL or
EMAIL variable as unset, asking for confirmation. We can't have anything
interactive in our build scripts, so prevent this prompt by giving
--controlmaint to the command, so it always uses the name and email from
the debian/control file and does not prompt anything.
The command-line argument has been around for a long time, so it is safe
to use on all Debian/Ubuntu builds we have.
See https://manpages.debian.org/jessie/devscripts/dch.1.en.html
Since MariaDB 10.5 is the oldest release we still release for Ubuntu Hisute
and Debian Bullseye, merge this on 10.5 and from there merge up to latest.
No need to consider 10.2, 10.3 and 10.4 as those will not be released for
Ubuntu Bullseye or Ubuntu Hirsute.
* Minor Salsa-CI cleanup
- Fix spelling (synced from downstream Debian)
* Many minor spelling fixes (synced from downstream Debian)
- Reduce Build-Depends
150bf990c6
Dependencies chrpath, dh-apparmor and libarchive-dev are not needed.
Fixes buildbot sid failures that error on:
Unmet build dependencies: chrpath dh-apparmor libarchive-dev
- Salsa-CI: Remove mysql-5.7 upgrade in Sid test as package was removed
6f55ac620c
Also clean away extra Salsa-CI markup not needed anymore.
- Autopkgtest: Simplify autopkgtest 'smoke' to be easier to debug
836907989a
- Autopkgtest: Skip main.failed_auth_unixsocket on armhf and i386
74601f8b31
- Use new Salsa-CI templates just like downstream does
- Also apply adaptations needed for native MariaDB to
build correctly on Salsa-CI
- Adapt for mysql-8.0 now in Debian Sid, keep also mysql-5.7 test
- Test TLSv1.3 to ensure it does not regress
- Remove Snappy compression from autopkgtest as it not longer works
Partially reverts commit a4cc6fb91f.
While all current versions of Linux have systemd, support for traditional
init.d is still needed e.g. on Linux subsystem on Windows, kFreeBSD and
special variants of Debian/Ubuntu that for other reasons don't have
systemd.
Thus, re-introduce the init file that was remove, but this time with
then name 'mariadb'.
Supporting traditional sysv init in paraller with systemd is easy, since
Debian has facilities for it.
Also simplify and update salsa-ci.yml install/upgrade testing works
for all previous MariaDB and MySQL releases without any excess quirks.
Note that in fresh installs the salsa-ci.yml needs to run command
'service mariadb status' to control the service, while on upgrades
it is enough to run 'service mysql status', since the init.d/mysql
file is left behind from previous install, along with some other
config files such as /etc/default/mysql and /etc/mysql/* stuff.
As initially most tests fail, they have allow_failures defined so that
testing anyway proceeds all the way to the final 'upgrade extras' stage.
All of these tests work for downstream Debian packaging of MariaDB 10.4
and should eventually pass on upstream MariaDB 10.5 as well.
Also upstream the Debian autopkgtests from MariaDB 10.4 in Debian so that
pipeline includes running mtr.