Fixes bug introduced in commit 5415002.
Using script run-time filename does not always work. One cannot assume
that the filename is always the same as there might be temporary file
names used by dpkg in certain situations. See Debian #920415.
The same fix has been successfully in use in Debian official packages
since February 2019:
https://salsa.debian.org/mariadb-team/mariadb-10.3/commit/6440c0d6e75
Re-enable some Galera tests that should have been enabled.
Add client_ed25519.so to debian/libmariadb3.install;
merge e47a143fc0 correctly.
Remove a duplicated #include from wsrep_mysqld.cc.
This allows one to run the test suite even if any of the following
options are changed:
- character-set-server
- collation-server
- join-cache-level
- log-basename
- max-allowed-packet
- optimizer-switch
- query-cache-size and query-cache-type
- skip-name-resolve
- table-definition-cache
- table-open-cache
- Some innodb options
etc
Changes:
- Don't print out the value of system variables as one can't depend on
them to being constants.
- Don't set global variables to 'default' as the default may not
be the same as the test was started with if there was an additional
option file. Instead save original value and reset it at end of test.
- Test that depends on the latin1 character set should include
default_charset.inc or set the character set to latin1
- Test that depends on the original optimizer switch, should include
default_optimizer_switch.inc
- Test that depends on the value of a specific system variable should
set it in the test (like optimizer_use_condition_selectivity)
- Split subselect3.test into subselect3.test and subselect3.inc to
make it easier to set and reset system variables.
- Added .opt files for test that required specfic options that could
be changed by external configuration files.
- Fixed result files in rockdsb & tokudb that had not been updated for
a while.
Some places didn't match the previous rules, making the Floor
address wrong.
Additional sed rules:
sed -i -e 's/Place.*Suite .*, Boston/Street, Fifth Floor, Boston/g'
sed -i -e 's/Suite .*, Boston/Fifth Floor, Boston/g'
This commit is based on the work of Michal Schorm, rebased on the
earliest MariaDB version.
Th command line used to generate this diff was:
find ./ -type f \
-exec sed -i -e 's/Foundation, Inc., 59 Temple Place, Suite 330, Boston, /Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, /g' {} \; \
-exec sed -i -e 's/Foundation, Inc. 59 Temple Place.* Suite 330, Boston, /Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, /g' {} \; \
-exec sed -i -e 's/MA.*.....-1307.*USA/MA 02110-1335 USA/g' {} \; \
-exec sed -i -e 's/Foundation, Inc., 59 Temple/Foundation, Inc., 51 Franklin/g' {} \; \
-exec sed -i -e 's/Place, Suite 330, Boston, MA.*02111-1307.*USA/Street, Fifth Floor, Boston, MA 02110-1335 USA/g' {} \; \
-exec sed -i -e 's/MA.*.....-1307/MA 02110-1335/g' {} \;
The second line of changes related to replacing xtrabackup with
mariabackup:
1) All unnecessary references to xtrabackup are removed from
the documentation, from some comments, from the control files
that are used to prepare the packages.
2) Made corrections of the tests from the galera_3nodes suite
that mentioned xtrabackup or the old (associated with xtrabackup)
version of innobackupex.
3) Fixed flaws in the galera_3nodes mtr suite control scripts,
because of which they could not work with mariabackup.
4) Fixed numerous bugs in the SST scripts and in the mtr test
files (galera_3nodes mtr suite) that prevented the use of Galera
with IPv6 addresses.
5) Fixed flaws in tests for rsync and mysqldump (for galera_3nodes
mtr tests suite). These tests were not performed successfully without
these fixes.
https://jira.mariadb.org/browse/MDEV-17835
Packaging is broken for debian-based systems after removing
xtrabackup scripts. This is due to the fact that links to the
scripts are not removed from the installation file
(from the debian/mariadb-server-10.3.install).
Also in this fix some comments have been added to the
documentation, indicating that using xtrabackup[-v2] is
an deprecated, therefore user should use mariabackup instead.
https://jira.mariadb.org/browse/MDEV-18064
Add check for git command and test for internet connectivity
using bash /dev/tcp interface, instead of wget and curl which might
not be available, thus reducing dependencies for this script.
1. don't run full mysql_upgrade on every server restart,
use --version-check to do it only once
2. fix syslog tag name in the postinst script, don't pretend
mysqld_safe generated all these messages. Auto-detect the version
to simplify maintenance
main.derived_cond_pushdown: Move all 10.3 tests to the end,
trim trailing white space, and add an "End of 10.3 tests" marker.
Add --sorted_result to tests where the ordering is not deterministic.
main.win_percentile: Add --sorted_result to tests where the
ordering is no longer deterministic.
The package libmariadbclient18 contains the dialog.so plugin, which also
the new libmariadb3 ships. As they both use the exact same path the latter
must be marked as a with Breaks and Replaces relations ship.
Note: This fix is conservative hack for stable releases 10.2 and 10.3.
In 10.4, the development release at the time, we will clean up how the
libmariadb3 packaging and it's -compat packages are done to match that
what is done in downstream Debian official.
The package libmariadbclient18 contains the dialog.so plugin, which also
the new libmariadb3 ships. As they both use the exact same path the latter
must be marked as a with Breaks and Replaces relations ship.
Note: This fix is conservative hack for stable releases 10.2 and 10.3.
In 10.4, the development release at the time, we will clean up how the
libmariadb3 packaging and it's -compat packages are done to match that
what is done in downstream Debian official.
Correct 898a8c3c0c to work when newer debhelper-10.2 is installed from
xenial-backports (or jessie-backports).
Use gcc version instead of debproxy version, this is likely a gcc
issue (as disabling LTO and gcc's linker plugin fixes it).
Building this plugin which requires run-time access to network, uses a lot
of disk space and is slow was already partially disabled. This way we
also ensure that on cmake level it never runs even if it out of some
autodetection reason at times thought it could run.
This fixes the error message:
fatal: unable to access 'https://github.com/awslabs/aws-sdk-cpp.git/':
Problem with the SSL CA cert (path? access rights?)
This complements commit ecb0e0ade4 that
disabled a bunch of plugins from being built on Travis-CI (due to time
and disk space saving reasons).
When the plugins are not built, the packaging phase will fail due to
missing files. This change omits the files from packaging to the process
can complete successfully.
Solution for Debian/Ubuntu: install a trigger to restart mysqld
automatically whenever a package changes something in /etc/mysql
or in /etc/systemd/system/mariadb.service.d
In RPM/DEB packages - always ld-preload jemalloc, instead
of linking ha_tokudb.so with it.
Keep linking in bintars, because they don't install cnf files
in the correct locations.
Include all the Makefiles that define variables that can be useful
within debian/rules. This includes buildflags.mk as well.
Use the standard variable names and don't define our own.
All packages in group 'essential' are by default installed on all
Debian and Ubuntu systems, and there is no need to mark them as
dependencies for any binary.
We have carried along this patch as a patch inside our sources
since 2012 (commit cfd4fcb0bc).
The validity of this has thus been vetted in production for years
and the review done now did not find otherwise.
A race in dash causes mysqld_safe to occasionally loop infinitely.
Fix by using bash instead.
https://bugs.launchpad.net/ubuntu/+source/mysql-dfsg-5.0/+bug/675185
As this is the last patch, we can also clean away usage of dpatch.
We have carried along this patch as a patch inside our sources
since 2012 (commit cfd4fcb0bc).
This same patch has been used also in MySQL packaging at Oracle
and in downstream Debian.org packages for both MySQL and MariaDB.
The validity of this has thus been vetted in production for years
and the review done now did not find otherwise.
Code contributed to Oracle with
http://forge.mysql.com/wiki/Sun_Contributor_Agreement
Reported as http://bugs.mysql.com/bug.php?id=31361
Add libzstd-dev as a build dependency to the server and libzstd1 as a
runtime dependency for rocksdb. libzstd is practially a mandatory
compression library to ensure adequate performance for RocksDB.
Added --skip-test-db option to mysql_install_db. If specified, no test
database created and relevant grants issued.
Removed --skip-auth-anonymous-user option of mysql_install_db. Now it is
covered by --skip-test-db.
Dropped some Debian patches that did the same.
Removed unused make_win_bin_dist.1, make_win_bin_dist and
mysql_install_db.pl.in.
There is no need for MariaDB Backup to be versioned. Other packages are
very unlikely to need to depend on a certain generation of this package.
Also for MariaDB Backup to run, it does not need the server, but client,
and from client only core parts.
It will only build if there is network access, which is a strict no-go
for Linux distributions. Thus the AWS plugin needs to be a custom built
only special plugin that is not built as part of the normal sources.
This fixes the build error in e.g. Launchpad:
Performing download step (git clone) for 'aws_sdk_cpp'
cd "/<<PKGBUILDDIR>>/builddir/plugin/aws_key_management" && /usr/bin/cmake ..
Cloning into 'aws-sdk-cpp'...
fatal: unable to access 'https://github.com/awslabs/aws-sdk-cpp.git/':
Could not resolve host: github.com
RocksDB configure step checks that platform is 64-bit and little endian,
so limit the .deb packages to be built only on those platforms.
List of official Debian platforms at
https://www.debian.org/ports/index.en.html
A non-MariaDB.org contributor introduced the epoch 1: in Debian.
There is no way to revert it, so we just need to adapt to it to
ensure no 10.3 installation would downgrade to that version in
Debian/Ubuntu, as 1: is considered higher than any version before.