Commit graph

162 commits

Author SHA1 Message Date
Marko Mäkelä
7933367a27 Merge 10.10 into 10.11 2022-11-21 10:51:10 +02:00
Marko Mäkelä
b35a048ece Merge 10.8 into 10.9 2022-11-21 10:25:38 +02:00
Marko Mäkelä
f46efb4476 Merge 10.7 into 10.8 2022-11-17 21:35:12 +02:00
Marko Mäkelä
d5332086d7 Merge 10.6 into 10.7 2022-11-17 09:19:32 +02:00
Otto Kekäläinen
f4adf35474
Misc Debian/Salsa-CI fixes (#2299)
* 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.
2022-11-11 07:51:34 +00:00
Oleksandr Byelkin
ad937cf33a Merge branch '10.10' into 10.11 2022-11-02 13:08:01 +01:00
Oleksandr Byelkin
ebf2121529 Merge branch '10.8' into 10.9 2022-11-01 10:33:44 +01:00
Marko Mäkelä
e0421b7cc8 Merge 10.7 into 10.8 2022-11-01 08:50:28 +02:00
Oleksandr Byelkin
1ebfa2af62 Merge branch '10.6' into 10.7 2022-10-29 19:22:04 +02:00
Otto Kekäläinen
fd0dcad676 MDEV-22659: Create one single unified and optimal logrotate config
Replace mysql-log-rotate.sh and debian/...mysql-server.logrotate with one
new unified and well documented version.

Name is mariadb.logrotate.in as in 10.11 branch onward we use now the
'mariadb' name, and use 'logrotate' to match the actual name of the
utility.

Also automatically disable deprecated /etc/logrotate.d/mysql-server
file on deb upgrades.

Reviewer: Daniel Black

Reviewer edits made:
* Added 'su mysql mysql' to the logrotate this is more RPM friendly.
  This is commented on Debian
* /var/log/mysql is the path on SuSe based distributions
2022-10-27 10:28:14 +11:00
Marko Mäkelä
aeccbbd926 Merge 10.5 into 10.6
To prevent ASAN heap-use-after-poison in the MDEV-16549 part of
./mtr --repeat=6 main.derived
the initialization of Name_resolution_context was cleaned up.
2022-10-25 14:25:42 +03:00
Marko Mäkelä
9a0b9e3360 Merge 10.4 into 10.5 2022-10-25 11:26:37 +03:00
Marko Mäkelä
667d3fbbb5 Merge 10.3 into 10.4 2022-10-25 10:04:37 +03:00
Sergei Golubchik
0609b34555 disable LTO in debian builds 2022-10-22 10:24:14 +02:00
Otto Kekäläinen
d426d0782d Deb: Use --fail-missing and ensure the not-installed list is up-to-date
Make the Debian build fail if it detects that the build (CMake) created
files that are not used in any package nor accounted in the special
not-installed file.

Stop creating symbolic links in Debian packaging for files that the CMake
build already created.

Document known cases of files that are intentionally not installed.
Leave the rest in the not-installed list for visibility. The list can
later be trimmed down and having the --fail-missing will prevent any new
unaccounted files from being introduced.

Note that despite extensive refactoring in the Debian packaging files,
there was no changes in the packages produced as verified by package
files lists before and after.
2022-05-05 12:06:56 +10:00
Otto Kekäläinen
a82cdb0690 Deb: Finalize the version less Debian package transition
In addition to the binary .deb packages, also remove the version
string from the Debian source package.

Also clean away excess use of __MARIADB_MAJOR_VER__ constant
and add inline note that the whole debian-XX.X.flag file thing
should be removed and replaced by using the new MariaDB server
mysql_upgrade_info file.
2022-05-05 12:06:56 +10:00
Tuukka Pasanen
375b8f40ce MDEV-27033: Remove version suffix from Debian packages
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
2022-04-26 12:46:39 +10:00
Marko Mäkelä
e98013cb5c Merge 10.8 into 10.9 2022-04-13 13:39:00 +03:00
Nayuta Yanagisawa
cbf9d8a8d5 Merge 10.7 into 10.8 2022-04-13 17:52:27 +09:00
Marko Mäkelä
aa3a9d1ef5 Merge 10.6 into 10.7 2022-04-12 16:11:29 +03:00
Marko Mäkelä
ca3bbf4c0c Merge 10.5 into 10.6 2022-04-12 09:26:02 +03:00
Daniel Black
dea4e178fe deb: make --output-sync=target
Rather than Debian logs containing a barely decipherable mix
of build command and the output of some other command, we
use the make option --output-sync=target. This make the compile
line and the output stay together in the output stream.

This option exists even in the make version in debian;stretch
so should work everywhere.

Test on debian:stretch, ubuntu:18.04, the two lowest version that
use the debian/rules.
2022-04-07 16:05:02 +10:00
Marko Mäkelä
8680eedb26 Merge 10.8 into 10.9 2022-03-30 09:41:14 +03:00
Daniel Black
88ce8a3d8b Merge 10.7 into 10.8 2022-03-25 15:06:56 +11:00
Daniel Black
8b92e346b1 Merge 10.6 into 10.7 2022-03-25 14:31:59 +11:00
Daniel Black
63f76d3b98 Deb: enable pmem on riscv64 2022-03-25 12:01:51 +11:00
Sergei Golubchik
b24148b146 10.9 branch 2022-02-08 19:25:42 +01:00
Sergei Golubchik
892153bd72 10.8 branch 2021-11-02 20:08:42 +01:00
Marko Mäkelä
b4911f5a34 Merge 10.6 into 10.7 2021-10-13 16:37:12 +03:00
Marko Mäkelä
a8379e53e8 Merge 10.5 into 10.6
The changes to galera.galear_var_replicate_myisam_on
in commit d9b933bec6
are omitted due to conflicts
with commit 27d66d644c.
2021-10-13 13:28:12 +03:00
Otto Kekäläinen
cda072bb4b Deb: Sync build and runtime dependencies from downstream to upstream
- 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.
2021-10-09 17:44:11 -07:00
Marko Mäkelä
2255649939 Merge 10.6 into 10.7 2021-09-17 20:23:17 +03:00
Marko Mäkelä
03c09837fc Merge 10.5 into 10.6 2021-09-16 20:17:12 +03:00
Otto Kekäläinen
07abcb5045 Deb: Fix Gitlab-CI/Salsa-CI builds failures
The debian/salsa-ci.yml used to work also on upstream MariaDB.org branches,
but has recently regressed and several jobs stopped working. These fixes
are necessary to get it working again.

* Partially revert 8642f592 that never worked, as MariaDB 10.2 does not
  have a mysql.global table nor a mariadb.sys user. Those features weren't
  introduced until MariaDB 10.4.

* Partially revert 0268b871 as we don't want ColumnStore as part of the
  native Debian build. It should build only when the build is triggered
  via autobake-deb.sh (MariaDB.org builds).

* Adjust salsa-ci.yml to cope with various Stretch to Sid upgrade issues
  and remove the legacy mariadb-connector-c job completely as that package
  hasn't been around for years anymore.

* Extend Lintian overrides to be otherwise Lintian clean
2021-09-13 17:34:55 -07:00
Marko Mäkelä
64f7dffcc7 Merge 10.6 into 10.7 2021-08-23 11:28:08 +03:00
Marko Mäkelä
49f95c4065 Merge 10.5 into 10.6 2021-08-23 11:21:33 +03:00
Daniel Black
a6621867e9 deb: columnstore not 32bit (fix stretch)
This corrects the autobake on Stretch

Caused by commit 0268b87122
and commit 3d16e0e16c.

For very strange reasons (still a mistery) the above commits caused the
federatedx, archive and blackhole plugins to be missing in the
install location even though they where built in the build log.

This only occured on Stretch and not recent Ubuntu and Debian
distros.

The stretch autobake output contained:

dh_install: Cannot find (any matches for) "usr/lib/mysql/plugin/ha_archive.so" (tried in "." and "debian/tmp")
dh_install: mariadb-server-10.5 missing files: usr/lib/mysql/plugin/ha_archive.so
dh_install: Cannot find (any matches for) "usr/lib/mysql/plugin/ha_blackhole.so" (tried in "." and "debian/tmp")
dh_install: mariadb-server-10.5 missing files: usr/lib/mysql/plugin/ha_blackhole.so
dh_install: Cannot find (any matches for) "usr/lib/mysql/plugin/ha_federatedx.so" (tried in "." and "debian/tmp")
dh_install: mariadb-server-10.5 missing files: usr/lib/mysql/plugin/ha_federatedx.sodh_install: Cannot find (any matches for) "usr/lib/mysql/plugin/ha_archive.so" (tried in "." and "debian/tmp")
dh_install: mariadb-server-10.5 missing files: usr/lib/mysql/plugin/ha_archive.so
dh_install: Cannot find (any matches for) "usr/lib/mysql/plugin/ha_blackhole.so" (tried in "." and "debian/tmp")
dh_install: mariadb-server-10.5 missing files: usr/lib/mysql/plugin/ha_blackhole.so
dh_install: Cannot find (any matches for) "usr/lib/mysql/plugin/ha_federatedx.so" (tried in "." and "debian/tmp")
dh_install: mariadb-server-10.5 missing files: usr/lib/mysql/plugin/ha_federatedx.so
2021-08-20 10:43:12 +10:00
Marko Mäkelä
3bf42eb21b Merge 10.6 into 10.7 2021-08-19 13:03:48 +03:00
Marko Mäkelä
f3fcf5f45c Merge 10.5 to 10.6 2021-08-19 12:25:00 +03:00
Daniel Black
3d16e0e16c deb: columnstore not 32bit (fix)
Fix for previous commit, shell logic for repeat configure
stages corrected to use subshell.
2021-08-16 15:41:26 +10:00
Daniel Black
0268b87122 deb: columnstore not 32bit
Columnstore badly failed on 32bit. The way Debian triggers
somehow doesn't detect the amd64 in the architecture of columnstore
so we explicitly disable it to prevent failures on x86_32.

The architecture from the control file is sufficient to not build
of arm64 and other unsupported achitectures so we don't need to
disable columnstore by default.

The logic around not building columnstore on Travis/Gitlab ci
can be preserved with a autobake-deb.sh restructure.
2021-08-13 09:23:43 +10:00
Daniel Black
30d33d85cb deb: s390x no WolfSSL workaround as upstream fixed in 4.6.0
https://github.com/wolfSSL/wolfssl/issues/2828 lists 4.6.0 a
as the fixed version as we currently have 4.8.0.

Since the time of the above issue, Debian has allowed OpenSSL
linking.
2021-08-13 09:23:43 +10:00
Sergei Golubchik
57f14eab20 Merge branch '10.6' into 10.7 2021-07-07 19:24:08 +02:00
Sergei Golubchik
d88b443446 debian update for 10.7 2021-07-07 18:55:09 +02:00
Marko Mäkelä
82c07b178a MDEV-25288 follow-up: Remove traces of unstable-tests 2021-06-11 15:59:02 +03:00
Marko Mäkelä
65f1a42788 Merge 10.5 into 10.6 2021-06-09 16:50:58 +03:00
Otto Kekäläinen
d4a6e3a698 Deb: Misc cleanup and autobake-deb.sh and Salsa-CI fixes
* 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)
2021-06-05 19:25:16 -07:00
Daniel Black
3f138fa3a5 Deb: Use build flag to enforce default charset as utf8mb4 2021-04-16 18:29:20 +10:00
Daniel Black
f862f39f46 Merge branch '10.5' into 10.6 2021-04-16 18:23:18 +10:00
Daniel Black
fce3e4ee8f Revert "Deb: Use build flag to enforce default charset as utf8mb4"
This reverts commit f26e3259a1.
2021-04-16 18:21:52 +10:00