Compare commits

...

No commits in common. "c8-stream-10.3" and "c9-beta" have entirely different histories.

29 changed files with 1313 additions and 847 deletions

2
.gitignore vendored
View File

@ -1 +1 @@
SOURCES/mariadb-10.3.39.tar.gz SOURCES/mariadb-10.5.29-downstream_modified.tar.gz

View File

@ -1 +1 @@
25972d22ed05249782141392f0893e71c7d549a9 SOURCES/mariadb-10.3.39.tar.gz dd44fc0383e1b2c0730f7a894c8236c6285be33a SOURCES/mariadb-10.5.29-downstream_modified.tar.gz

View File

@ -1,8 +1,8 @@
diff --git a/client/mysqldump.c b/client/mysqldump.c diff --git a/client/mysqldump.c b/client/mysqldump.c
index b382dd41..0c30c319 100644 index e7264c07..7a019f97 100644
--- a/client/mysqldump.c --- a/client/mysqldump.c
+++ b/client/mysqldump.c +++ b/client/mysqldump.c
@@ -1776,6 +1776,26 @@ static char *cover_definer_clause(const char *stmt_str, @@ -1811,6 +1811,26 @@ static char *cover_definer_clause(const char *stmt_str,
return query_str; return query_str;
} }
@ -29,7 +29,7 @@ index b382dd41..0c30c319 100644
/* /*
Open a new .sql file to dump the table or view into Open a new .sql file to dump the table or view into
@@ -1790,12 +1810,9 @@ static char *cover_definer_clause(const char *stmt_str, @@ -1825,12 +1845,9 @@ static char *cover_definer_clause(const char *stmt_str,
*/ */
static FILE* open_sql_file_for_table(const char* table, int flags) static FILE* open_sql_file_for_table(const char* table, int flags)
{ {
@ -45,7 +45,7 @@ index b382dd41..0c30c319 100644
} }
@@ -3946,15 +3963,9 @@ static void dump_table(const char *table, const char *db, const uchar *hash_key, @@ -4017,15 +4034,9 @@ static void dump_table(const char *table, const char *db, const uchar *hash_key,
if (path) if (path)
{ {
@ -63,7 +63,7 @@ index b382dd41..0c30c319 100644
/* Must delete the file that 'INTO OUTFILE' will write to */ /* Must delete the file that 'INTO OUTFILE' will write to */
my_delete(filename, MYF(0)); my_delete(filename, MYF(0));
@@ -3963,7 +3974,6 @@ static void dump_table(const char *table, const char *db, const uchar *hash_key, @@ -4034,7 +4045,6 @@ static void dump_table(const char *table, const char *db, const uchar *hash_key,
to_unix_path(filename); to_unix_path(filename);
/* now build the query string */ /* now build the query string */
@ -72,10 +72,10 @@ index b382dd41..0c30c319 100644
dynstr_append_checked(&query_string, select_field_names.str); dynstr_append_checked(&query_string, select_field_names.str);
dynstr_append_checked(&query_string, " INTO OUTFILE '"); dynstr_append_checked(&query_string, " INTO OUTFILE '");
diff --git a/client/mysqlimport.c b/client/mysqlimport.c diff --git a/client/mysqlimport.c b/client/mysqlimport.c
index 3ec23b87..7d6f9115 100644 index 687fd8c2..402affcf 100644
--- a/client/mysqlimport.c --- a/client/mysqlimport.c
+++ b/client/mysqlimport.c +++ b/client/mysqlimport.c
@@ -320,7 +320,17 @@ static int write_to_table(char *filename, MYSQL *mysql) @@ -317,7 +317,17 @@ static int write_to_table(char *filename, MYSQL *mysql)
DBUG_ENTER("write_to_table"); DBUG_ENTER("write_to_table");
DBUG_PRINT("enter",("filename: %s",filename)); DBUG_PRINT("enter",("filename: %s",filename));
@ -94,7 +94,7 @@ index 3ec23b87..7d6f9115 100644
if (!opt_local_file) if (!opt_local_file)
strmov(hard_path,filename); strmov(hard_path,filename);
else else
@@ -476,7 +486,7 @@ static MYSQL *db_connect(char *host, char *database, @@ -466,7 +476,7 @@ static MYSQL *db_connect(char *host, char *database,
mysql_options(mysql, MYSQL_DEFAULT_AUTH, opt_default_auth); mysql_options(mysql, MYSQL_DEFAULT_AUTH, opt_default_auth);
if (!strcmp(default_charset,MYSQL_AUTODETECT_CHARSET_NAME)) if (!strcmp(default_charset,MYSQL_AUTODETECT_CHARSET_NAME))
default_charset= (char *)my_default_csname(); default_charset= (char *)my_default_csname();
@ -103,3 +103,105 @@ index 3ec23b87..7d6f9115 100644
mysql_options(mysql, MYSQL_OPT_CONNECT_ATTR_RESET, 0); mysql_options(mysql, MYSQL_OPT_CONNECT_ATTR_RESET, 0);
mysql_options4(mysql, MYSQL_OPT_CONNECT_ATTR_ADD, mysql_options4(mysql, MYSQL_OPT_CONNECT_ATTR_ADD,
"program_name", "mysqlimport"); "program_name", "mysqlimport");
diff --git a/mysql-test/main/mysqldump.result b/mysql-test/main/mysqldump.result
index 8e8e342d..4a9c1b50 100644
--- a/mysql-test/main/mysqldump.result
+++ b/mysql-test/main/mysqldump.result
@@ -6624,3 +6624,48 @@ SET character_set_client = @saved_cs_client;
drop view `v'1"2`;
drop table t1;
# End of 10.5 tests
+#
+# MDEV-37483 mariadb-dump -T doesn't convert table names
+#
+create database foo;
+use foo;
+create table `con_schöne_grüße` (a int) select 1 as a;
+create table `con` (b int) select 2 as b;
+create table `con/bar` (c int) select 3 as c;
+create table `con@fame` (d int) select 4 as d;
+drop database foo;
+use test;
+con@002fbar.sql
+con@002fbar.txt
+con@@@.sql
+con@@@.txt
+con@fame.sql
+con@fame.txt
+con_sch@1ine_gr@1o@1je.sql
+con_sch@1ine_gr@1o@1je.txt
+show tables;
+Tables_in_test
+con
+con/bar
+con@fame
+con_schöne_grüße
+test.con: Records: 1 Deleted: 0 Skipped: 0 Warnings: 0
+test.con/bar: Records: 1 Deleted: 0 Skipped: 0 Warnings: 0
+test.con@fame: Records: 1 Deleted: 0 Skipped: 0 Warnings: 0
+select * from `con_schöne_grüße`;
+a
+1
+select * from `con`;
+b
+2
+select * from `con/bar`;
+c
+3
+select * from `con@fame`;
+d
+4
+drop table `con_schöne_grüße`;
+drop table `con`;
+drop table `con/bar`;
+drop table `con@fame`;
+# End of 10.6 tests
diff --git a/mysql-test/main/mysqldump.test b/mysql-test/main/mysqldump.test
index 58790c15..6dc3eff5 100644
--- a/mysql-test/main/mysqldump.test
+++ b/mysql-test/main/mysqldump.test
@@ -3033,3 +3033,44 @@ drop view `v'1"2`; # "'
drop table t1;
--echo # End of 10.5 tests
+
+--echo #
+--echo # MDEV-37483 mariadb-dump -T doesn't convert table names
+--echo #
+create database foo;
+use foo;
+
+create table `con_schöne_grüße` (a int) select 1 as a;
+create table `con` (b int) select 2 as b;
+create table `con/bar` (c int) select 3 as c;
+create table `con@fame` (d int) select 4 as d;
+exec $MYSQL_DUMP foo --tab $MYSQLTEST_VARDIR/tmp;
+drop database foo;
+use test;
+move_file $MYSQLTEST_VARDIR/tmp/con@0040fame.sql $MYSQLTEST_VARDIR/tmp/con@fame.sql;
+move_file $MYSQLTEST_VARDIR/tmp/con@0040fame.txt $MYSQLTEST_VARDIR/tmp/con@fame.txt;
+list_files $MYSQLTEST_VARDIR/tmp con*;
+exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/con@@@.sql;
+exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/con@002fbar.sql;
+exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/con_sch@1ine_gr@1o@1je.sql;
+exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/con@fame.sql;
+show tables;
+exec $MYSQL_IMPORT test $MYSQLTEST_VARDIR/tmp/con@@@.txt;
+exec $MYSQL_IMPORT test $MYSQLTEST_VARDIR/tmp/con@002fbar.txt;
+if (`select @@version like '10.6.%'`) {
+# utf8 console output on Windows is fixed in MDEV-26713, until then
+--disable_result_log
+}
+exec $MYSQL_IMPORT --default-character-set=utf8mb4 test $MYSQLTEST_VARDIR/tmp/con_sch@1ine_gr@1o@1je.txt;
+--enable_result_log
+exec $MYSQL_IMPORT test $MYSQLTEST_VARDIR/tmp/con@fame.txt;
+select * from `con_schöne_grüße`;
+select * from `con`;
+select * from `con/bar`;
+select * from `con@fame`;
+drop table `con_schöne_grüße`;
+drop table `con`;
+drop table `con/bar`;
+drop table `con@fame`;
+
+--echo # End of 10.6 tests

View File

@ -0,0 +1,9 @@
MariaDB haven't yet made a document package available for offline.
You can create your own copy with the instructions here:
https://mariadb.com/kb/en/meta/mirroring-the-mariadb-knowledge-base/
You can find view the on-line documentation at:
https://mariadb.com/kb/en/documentation/

View File

@ -1,4 +0,0 @@
The official MySQL documentation is not freely redistributable, so we cannot
include it in RHEL or Fedora. You can find it on-line at
http://dev.mysql.com/doc/

View File

@ -1,9 +0,0 @@
MySQL is distributed under GPL v2, but there are some licensing exceptions
that allow the client libraries to be linked with a non-GPL application,
so long as the application is under a license approved by Oracle.
For details see
http://www.mysql.com/about/legal/licensing/foss-exception/
Some innobase code from Percona and Google is under BSD license.
Some code related to test-suite is under LGPLv2.

View File

@ -1,101 +0,0 @@
--- mariadb-10.3.39/mysql-test/include/default_mysqld.cnf 2023-05-03 06:32:44.000000000 +0200
+++ ../../mariadb-10.3.39/mysql-test/include/default_mysqld.cnf 2023-07-07 13:58:40.255283041 +0200
@@ -127,3 +127,8 @@ local-infile
# tables. Let's enable it in the [server] group, because this group
# is read after [mysqld] and [embedded]
loose-aria
+
+[mysqltest]
+loose-ssl-ca=@ENV.MYSQL_TEST_DIR/std_data/cacert.pem
+loose-ssl-cert=@ENV.MYSQL_TEST_DIR/std_data/server-cert.pem
+loose-ssl-key=@ENV.MYSQL_TEST_DIR/std_data/server-key.pem
--- mariadb-10.3.39/mysql-test/include/wait_until_connected_again.inc 2023-05-03 06:32:44.000000000 +0200
+++ ../../mariadb-10.3.39/mysql-test/include/wait_until_connected_again.inc 2023-07-07 13:55:30.424368106 +0200
@@ -11,7 +11,7 @@ let $counter= 5000;
let $mysql_errno= 9999;
while ($mysql_errno)
{
- --error 0,ER_SERVER_SHUTDOWN,ER_CONNECTION_KILLED,ER_LOCK_WAIT_TIMEOUT,2002,2006,2013
+ --error 0,ER_SERVER_SHUTDOWN,ER_CONNECTION_KILLED,ER_LOCK_WAIT_TIMEOUT,2002,2006,2013,2026
show status;
dec $counter;
--- mariadb-10.3.39/mysql-test/suite/rpl/t/rpl_err_ignoredtable.test 2023-05-03 06:32:45.000000000 +0200
+++ ../../mariadb-10.3.39/mysql-test/suite/rpl/t/rpl_err_ignoredtable.test 2023-07-07 13:54:31.152082427 +0200
@@ -53,7 +53,7 @@ insert into t4 values (3),(4);
connection master;
# The get_lock function causes warning for unsafe statement.
--disable_warnings
---error 0,1317,2013
+--error 0,1317,2013,2026
reap;
--enable_warnings
connection master1;
--- mariadb-10.3.39/mysql-test/suite/innodb/t/innodb_bug51920.test 2023-05-03 06:32:44.000000000 +0200
+++ ../../mariadb-10.3.39/mysql-test/suite/innodb/t/innodb_bug51920.test 2023-07-07 15:11:39.000404508 +0200
@@ -36,7 +36,7 @@ let $wait_condition =
# depending on platform.
#
connection con1;
--- error 1317, 2006, 2013, ER_CONNECTION_KILLED
+-- error 1317, 2006, 2013, 2026, ER_CONNECTION_KILLED
reap;
connection default;
DROP TABLE bug51920;
--- mariadb-10.3.39/mysql-test/main/lock_kill.test 2023-05-03 06:32:44.000000000 +0200
+++ ../../mariadb-10.3.39/mysql-test/main/lock_kill.test 2023-07-07 15:13:54.335086789 +0200
@@ -17,7 +17,7 @@ LOCK TABLE t1 WRITE;
eval KILL $conid;
--enable_query_log
--connection con1
---error 0,2006,2013,ER_CONNECTION_KILLED
+--error 0,2006,2013,2026,ER_CONNECTION_KILLED
reap;
--connection default
--disconnect con1
@@ -35,7 +35,7 @@ LOCK TABLE t1 WRITE, t2 WRITE;
eval KILL $conid;
--enable_query_log
--connection con1
---error 0,2006,2013,ER_CONNECTION_KILLED
+--error 0,2006,2013,2026,ER_CONNECTION_KILLED
reap;
--connection default
--disconnect con1
--- mariadb-10.3.39/mysql-test/main/loadxml.test 2023-05-03 06:32:44.000000000 +0200
+++ ../../mariadb-10.3.39/mysql-test/main/loadxml.test 2023-07-07 15:15:14.862492763 +0200
@@ -83,7 +83,7 @@ connection default;
connection addconroot;
# Read response from connection to avoid packets out-of-order when disconnecting
# Note, that connection can already be dead due to previously issued kill
---error 0,2013
+--error 0,2013,2026
--reap
disconnect addconroot;
connection default;
--- mariadb-10.3.39/plugin/disks/mysql-test/disks/disks.test 2023-05-03 06:32:45.000000000 +0200
+++ ../../mariadb-10.3.39/plugin/disks/mysql-test/disks/disks.test 2023-07-10 11:48:28.859497746 +0200
@@ -1,3 +1,3 @@
--replace_regex /varchar\([0-9]+\)/varchar(pathlen)/
show create table information_schema.disks;
-select sum(Total) > sum(Available), sum(Total)>sum(Used) from information_schema.disks;
+select sum(Total) >= sum(Available), sum(Total) >= sum(Used) from information_schema.disks;
--- mariadb-10.3.39/plugin/disks/mysql-test/disks/disks.result 2023-05-03 06:32:45.000000000 +0200
+++ ../../mariadb-10.3.39/plugin/disks/mysql-test/disks/disks.result 2023-07-10 12:47:10.460233056 +0200
@@ -7,6 +7,6 @@ DISKS CREATE TEMPORARY TABLE `DISKS` (
`Used` bigint(32) NOT NULL,
`Available` bigint(32) NOT NULL
) ENGINE=MEMORY DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci
-select sum(Total) > sum(Available), sum(Total)>sum(Used) from information_schema.disks;
-sum(Total) > sum(Available) sum(Total)>sum(Used)
+select sum(Total) >= sum(Available), sum(Total) >= sum(Used) from information_schema.disks;
+sum(Total) >= sum(Available) sum(Total) >= sum(Used)
1 1

View File

@ -1,13 +0,0 @@
Harden the "hardened" flags even more to comply with RHEL8 security rules
--- mariadb-10.3.25/CMakeLists.txt 2020-10-05 18:19:45.000000000 +0200
+++ mariadb-10.3.25/CMakeLists.txt_patched 2020-11-03 01:29:52.369426705 +0100
@@ -247,7 +247,7 @@ IF(NOT WITH_TSAN)
# security-enhancing flags
MY_CHECK_AND_SET_COMPILER_FLAG("-pie -fPIC")
MY_CHECK_AND_SET_LINKER_FLAG("-Wl,-z,relro,-z,now")
- MY_CHECK_AND_SET_COMPILER_FLAG("-fstack-protector --param=ssp-buffer-size=4")
+ MY_CHECK_AND_SET_COMPILER_FLAG("-fstack-protector-strong --param=ssp-buffer-size=4")
MY_CHECK_AND_SET_COMPILER_FLAG("-D_FORTIFY_SOURCE=2" RELEASE RELWITHDEBINFO)
ENDIF()
ENDIF()

View File

@ -5,7 +5,7 @@
# positive result when starting and mysqld_safe could remove # positive result when starting and mysqld_safe could remove
# a socket file, which is actually being used by a different daemon. # a socket file, which is actually being used by a different daemon.
source "`dirname ${BASH_SOURCE[0]}`/mysql-scripts-common" source "`dirname ${BASH_SOURCE[0]}`/mariadb-scripts-common"
if test -e "$socketfile" ; then if test -e "$socketfile" ; then
echo "Socket file $socketfile exists." >&2 echo "Socket file $socketfile exists." >&2
@ -25,9 +25,9 @@ if test -e "$socketfile" ; then
fi fi
# some process uses the socket file # some process uses the socket file
response=`@bindir@/mysqladmin --no-defaults --socket="$socketfile" --user=UNKNOWN_MYSQL_USER --connect-timeout="${CHECKSOCKETTIMEOUT:-10}" ping 2>&1` response=`@bindir@/mariadb-admin --no-defaults --socket="$socketfile" --user=UNKNOWN_MYSQL_USER --connect-timeout="${CHECKSOCKETTIMEOUT:-10}" ping 2>&1`
if [ $? -eq 0 ] || echo "$response" | grep -q "Access denied for user" ; then if [ $? -eq 0 ] || echo "$response" | grep -q "Access denied for user" ; then
echo "Is another MySQL daemon already running with the same unix socket?" >&2 echo "Is another MariaDB daemon already running with the same unix socket?" >&2
echo "Please, stop the process using the socket $socketfile or remove the file manually to start the service." >&2 echo "Please, stop the process using the socket $socketfile or remove the file manually to start the service." >&2
exit 1 exit 1
fi fi

View File

@ -1,6 +1,6 @@
#!/bin/sh #!/bin/sh
source "`dirname ${BASH_SOURCE[0]}`/mysql-scripts-common" source "`dirname ${BASH_SOURCE[0]}`/mariadb-scripts-common"
upgrade_info_file="$datadir/mysql_upgrade_info" upgrade_info_file="$datadir/mysql_upgrade_info"
version=0 version=0
@ -25,14 +25,14 @@ if [ $version -ne $thisversion ] ; then
fi fi
cat <<EOF >&2 cat <<EOF >&2
The datadir located at $datadir needs to be upgraded using 'mysql_upgrade' tool. This can be done using the following steps: The datadir located at $datadir needs to be upgraded using 'mariadb-upgrade' tool. This can be done using the following steps:
1. Back-up your data before with 'mysql_upgrade' 1. Back-up your data before with 'mariadb-upgrade'
2. Start the database daemon using 'service @DAEMON_NAME@ start' 2. Start the database daemon using 'systemctl start @DAEMON_NAME@.service'
3. Run 'mysql_upgrade' with a database user that has sufficient privileges 3. Run 'mariadb-upgrade' with a database user that has sufficient privileges
Read more about 'mysql_upgrade' usage at: Read more about 'mariadb-upgrade' usage at:
https://mariadb.com/kb/en/mariadb/documentation/sql-commands/table-commands/mysql_upgrade/ https://mariadb.com/kb/en/mysql_upgrade/
EOF EOF
fi fi

View File

@ -26,13 +26,15 @@ Update 6/2018
beeing able to send the SIGHUP to the process and read the mysqld pid file, which root can. beeing able to send the SIGHUP to the process and read the mysqld pid file, which root can.
* Submited as PR: https://github.com/MariaDB/server/pull/807 * Submited as PR: https://github.com/MariaDB/server/pull/807
Update 01/2022 Update 02/2021
* added delaycompress option * Enhance the script as proposed in:
* see https://mariadb.com/kb/en/rotating-logs-on-unix-and-linux https://mariadb.com/kb/en/rotating-logs-on-unix-and-linux/
* Discussion continues in:
https://jira.mariadb.org/browse/MDEV-16621
--- mariadb-10.3.32/support-files/mysql-log-rotate.sh 2022-01-14 17:03:27.000000000 +0100 --- mariadb-10.5.13-downstream_modified/support-files/mysql-log-rotate.sh 2022-02-22 04:56:35.571185622 +0100
+++ mariadb-10.3.32/support-files/mysql-log-rotate.sh_patched 2022-01-17 15:07:54.205379672 +0100 +++ mariadb-10.5.13-downstream_modified/support-files/mysql-log-rotate.sh_patched 2022-02-22 04:56:15.121003580 +0100
@@ -3,36 +3,22 @@ @@ -3,36 +3,23 @@
# in the [mysqld] section as follows: # in the [mysqld] section as follows:
# #
# [mysqld] # [mysqld]
@ -63,8 +65,9 @@ Update 01/2022
missingok missingok
compress compress
+ delaycompress + delaycompress
+ sharedscripts
postrotate postrotate
# just if mysqld is really running # just if mariadbd is really running
- if test -x @bindir@/mysqladmin && \ - if test -x @bindir@/mysqladmin && \
- @bindir@/mysqladmin ping &>/dev/null - @bindir@/mysqladmin ping &>/dev/null
- then - then

View File

@ -1,12 +0,0 @@
--- mariadb-10.3.39/scripts/wsrep_sst_mariabackup.sh 2023-08-11 11:31:40.415022889 +0200
+++ ../../mariadb-10.3.39/scripts/wsrep_sst_mariabackup.sh 2023-08-11 11:32:01.924161077 +0200
@@ -340,6 +340,9 @@ get_transfer()
"Use workaround for socat $SOCAT_VERSION bug"
fi
fi
+ if check_for_version "$SOCAT_VERSION" '1.7.4'; then
+ tcmd="$tcmd,no-sni=1"
+ fi
fi
if [ "${sockopt#*,dhparam=}" = "$sockopt" ]; then

View File

@ -0,0 +1,78 @@
From 5a8cd03f0f3ae9fbcc3b6f33843d030d840f6e2f Mon Sep 17 00:00:00 2001
From: Daniel Black <daniel@mariadb.org>
Date: Mon, 20 Oct 2025 18:45:56 +1100
Subject: [PATCH] MDEV-37899 galera sst generates numerous selinux AVCs when
starting
From downstream bug RHEL-116757, the use of ss to map all the
usage of ports to pids and process names under selinux is rather
limited by the mysqld_exec_t limitations.
The checking of the mapping is a bit excessive in a selinux
environment where binding is limited.
We replace the use of ss under selinux to raw reading of the
/proc/tcp{,} interfaces of the linux that aren't selinux restricted.
---
scripts/wsrep_sst_common.sh | 13 ++++++++++++-
scripts/wsrep_sst_rsync.sh | 9 +++++++--
2 files changed, 19 insertions(+), 3 deletions(-)
diff --git a/scripts/wsrep_sst_common.sh b/scripts/wsrep_sst_common.sh
index f23707c497acd..db6415b5d1e3a 100644
--- a/scripts/wsrep_sst_common.sh
+++ b/scripts/wsrep_sst_common.sh
@@ -1230,6 +1230,13 @@ check_sockets_utils()
lsof_available=0
sockstat_available=0
ss_available=0
+ raw_socket_check=0
+
+ if [ -n "$(commandex selinuxenabled)" ] && selinuxenabled; then
+ raw_socket_check=1
+ wsrep_log_info "/proc/net/tcp{,6} is being used directly to avoid excessive selinux AVC notices"
+ return 0
+ fi
socket_utility="$(commandex ss)"
if [ -n "$socket_utility" ]; then
@@ -1298,7 +1305,11 @@ check_port()
local rc=2 # ENOENT
- if [ $ss_available -ne 0 ]; then
+ if [ $raw_socket_check -ne 0 ]; then
+ for key in $(awk -v p="$port" 'BEGIN { hex_port = sprintf(":%04X", p) } $2 ~ hex_port && $4 == "0A" { print $10 }' /proc/net/tcp /proc/net/tcp6); do
+ return 0
+ done
+ elif [ $ss_available -ne 0 ]; then
$socket_utility $ss_opts -t "( sport = :$port )" 2>/dev/null | \
grep -q -E "[[:space:]]users:[[:space:]]?\\(.*\\(\"($utils)[^[:space:]]*\"[^)]*,pid=$pid(,[^)]*)?\\)" && rc=0
elif [ $sockstat_available -ne 0 ]; then
diff --git a/scripts/wsrep_sst_rsync.sh b/scripts/wsrep_sst_rsync.sh
index 361cef4a9fc67..5b7efbf3b60d9 100644
--- a/scripts/wsrep_sst_rsync.sh
+++ b/scripts/wsrep_sst_rsync.sh
@@ -105,7 +105,9 @@ check_pid_and_port()
local final
if ! check_port $pid "$port" "$utils"; then
- if [ $ss_available -ne 0 -o $sockstat_available -ne 0 ]; then
+ if [ $raw_socket_check -ne 0 ]; then
+ return 1
+ elif [ $ss_available -ne 0 -o $sockstat_available -ne 0 ]; then
if [ $ss_available -ne 0 ]; then
port_info=$($socket_utility $ss_opts -t "( sport = :$port )" 2>/dev/null | \
grep -E '[[:space:]]users:[[:space:]]?\(' | \
@@ -163,7 +165,10 @@ check_pid_and_port()
fi
fi
- check_pid "$pid_file" && [ $CHECK_PID -eq $pid ]
+ if [ $raw_socket_check -ne 0 ]; then
+ return 0
+ fi
+ check_pid "$pid_file" && [ "$CHECK_PID" -eq "$pid" ]
}
get_binlog

70
SOURCES/mariadb-mtr.patch Normal file
View File

@ -0,0 +1,70 @@
diff --git a/mysql-test/mariadb-test-run.pl b/mysql-test/mariadb-test-run.pl
index 594e052a16e..6a274b2d597 100755
--- a/mysql-test/mysql-test-run.pl
+++ b/mysql-test/mysql-test-run.pl
@@ -1491,7 +1491,6 @@ sub command_line_setup {
mtr_warning ("Port base $opt_port_base rounded down to multiple of 10");
$opt_port_base-= $rem;
}
- $opt_build_thread= $opt_port_base / 10 - 1000;
}
# --------------------------------------------------------------------------
@@ -1719,11 +1718,6 @@ sub command_line_setup {
# an environment variable can be used to control all ports. A small
# number is to be used, 0 - 16 or similar.
#
-# Note the MASTER_MYPORT has to be set the same in all 4.x and 5.x
-# versions of this script, else a 4.0 test run might conflict with a
-# 5.1 test run, even if different MTR_BUILD_THREAD is used. This means
-# all port numbers might not be used in this version of the script.
-#
# Also note the limitation of ports we are allowed to hand out. This
# differs between operating systems and configuration, see
# http://www.ncftp.com/ncftpd/doc/misc/ephemeral_ports.html
@@ -1734,10 +1728,14 @@ sub set_build_thread_ports($) {
if ( lc($opt_build_thread) eq 'auto' ) {
my $found_free = 0;
- $build_thread = 300; # Start attempts from here
- my $build_thread_upper = $build_thread + ($opt_parallel > 1500
- ? 3000
- : 2 * $opt_parallel) + 300;
+ if ($opt_port_base eq "auto") {
+ $build_thread = 15000;
+ } else {
+ $build_thread = $opt_port_base;
+ }
+ $build_thread += ($thread - 1) * $opt_port_group_size;
+ my $build_thread_upper = $build_thread + $opt_parallel * 2;
+
while (! $found_free)
{
$build_thread= mtr_get_unique_id($build_thread, $build_thread_upper);
@@ -1754,7 +1752,7 @@ sub set_build_thread_ports($) {
}
else
{
- $build_thread = $opt_build_thread + $thread - 1;
+ $build_thread = $opt_port_base + $thread - 1;
if (! check_ports_free($build_thread)) {
# Some port was not free(which one has already been printed)
mtr_error("Some port(s) was not free")
@@ -1763,7 +1761,7 @@ sub set_build_thread_ports($) {
$ENV{MTR_BUILD_THREAD}= $build_thread;
# Calculate baseport
- $baseport= $build_thread * $opt_port_group_size + 10000;
+ $baseport= $build_thread;
if ( $baseport < 5001 or $baseport + $opt_port_group_size >= 32767 )
{
mtr_error("MTR_BUILD_THREAD number results in a port",
@@ -2968,7 +2966,7 @@ sub kill_leftovers ($) {
sub check_ports_free ($)
{
my $bthread= shift;
- my $portbase = $bthread * $opt_port_group_size + 10000;
+ my $portbase = $bthread;
for ($portbase..$portbase+($opt_port_group_size-1)){
if (mtr_ping_port($_)){
mtr_report(" - 'localhost:$_' was not free");

View File

@ -1,16 +1,14 @@
diff -up mariadb-10.1.8/support-files/CMakeLists.txt.p9 mariadb-10.1.8/support-files/CMakeLists.txt --- mariadb-10.4.14/support-files/CMakeLists.txt 2020-08-06 17:28:28.000000000 +0200
--- mariadb-10.2.32/support-files/CMakeLists.txt 2020-05-08 13:45:27.000000000 +0200 +++ mariadb-10.4.14/support-files/CMakeLists.txt_patched 2020-09-03 13:21:07.826658279 +0200
+++ mariadb-10.2.32/support-files/CMakeLists.txt_pacthed 2020-05-13 10:11:30.884190396 +0200 @@ -187,6 +187,7 @@ IF(UNIX)
@@ -100,7 +100,8 @@ IF(UNIX) COMPONENT SharedLibraries)
ENDIF() INSTALL(FILES rpm/mysql-clients.cnf DESTINATION ${INSTALL_SYSCONF2DIR}
COMPONENT Client)
CONFIGURE_FILE(mariadb.pc.in ${CMAKE_CURRENT_BINARY_DIR}/mariadb.pc @ONLY) + CONFIGURE_FILE(rpm/server.cnf ${CMAKE_CURRENT_SOURCE_DIR}/rpm/server.cnf @ONLY)
- INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/mariadb.pc DESTINATION ${INSTALL_LIBDIR}/pkgconfig COMPONENT Development) INSTALL(FILES rpm/server.cnf DESTINATION ${INSTALL_SYSCONF2DIR}
+ CONFIGURE_FILE(rpm/server.cnf ${CMAKE_CURRENT_BINARY_DIR}/rpm/server.cnf @ONLY) COMPONENT IniFiles)
+ INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/mariadb.pc DESTINATION ${INSTALL_SHAREDIR}/pkgconfig COMPONENT Development) INSTALL(FILES rpm/enable_encryption.preset DESTINATION ${INSTALL_SYSCONF2DIR}
INSTALL(FILES mysql.m4 DESTINATION ${INSTALL_SHAREDIR}/aclocal COMPONENT Development)
diff -up mariadb-10.0.15/support-files/rpm/server.cnf.ownsetup mariadb-10.0.15/support-files/rpm/server.cnf diff -up mariadb-10.0.15/support-files/rpm/server.cnf.ownsetup mariadb-10.0.15/support-files/rpm/server.cnf
--- mariadb-10.0.15/support-files/rpm/server.cnf.ownsetup 2015-01-24 23:55:55.110063592 +0100 --- mariadb-10.0.15/support-files/rpm/server.cnf.ownsetup 2015-01-24 23:55:55.110063592 +0100
+++ mariadb-10.0.15/support-files/rpm/server.cnf 2015-01-24 23:57:42.308114387 +0100 +++ mariadb-10.0.15/support-files/rpm/server.cnf 2015-01-24 23:57:42.308114387 +0100

View File

@ -1,20 +0,0 @@
Use PCDIR CMake option, if configured
Upstream install the server pkgconfig file into arch-independent directory
Reported to upstream as: https://jira.mariadb.org/browse/MDEV-14340
--- mariadb-10.3.12/support-files/CMakeLists.txt 2019-03-20 15:25:53.423283135 +0100
+++ mariadb-10.3.12/support-files/CMakeLists.txt_patched 2019-03-20 15:38:56.372819958 +0100
@@ -82,7 +82,12 @@ IF(UNIX)
CONFIGURE_FILE(mariadb.pc.in ${CMAKE_CURRENT_BINARY_DIR}/mariadb.pc @ONLY)
CONFIGURE_FILE(rpm/server.cnf ${CMAKE_CURRENT_BINARY_DIR}/rpm/server.cnf @ONLY)
+IF(INSTALL_PCDIR)
+ INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/mariadb.pc DESTINATION ${INSTALL_PCDIR} COMPONENT Development)
+ELSE()
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/mariadb.pc DESTINATION ${INSTALL_SHAREDIR}/pkgconfig COMPONENT Development)
+ENDIF()
+
INSTALL(FILES mysql.m4 DESTINATION ${INSTALL_SHAREDIR}/aclocal COMPONENT Development)

View File

@ -1,9 +1,9 @@
#!/bin/sh #!/bin/sh
# This script creates the mysql data directory during first service start. # This script creates the MariaDB data directory during first service start.
# In subsequent starts, it does nothing much. # In subsequent starts, it does nothing much.
source "`dirname ${BASH_SOURCE[0]}`/mysql-scripts-common" source "`dirname ${BASH_SOURCE[0]}`/mariadb-scripts-common"
export LC_ALL=C export LC_ALL=C
@ -97,7 +97,7 @@ if should_initialize "$datadir" ; then
# https://bugzilla.redhat.com/show_bug.cgi?id=1335849#c19 # https://bugzilla.redhat.com/show_bug.cgi?id=1335849#c19
INITDB_TIMESTAMP=`LANG=C date -u` INITDB_TIMESTAMP=`LANG=C date -u`
sleep 1 sleep 1
@bindir@/mysql_install_db --rpm --datadir="$datadir" --user="$myuser" --skip-test-db >&2 @bindir@/mariadb-install-db --rpm --datadir="$datadir" --user="$myuser" --skip-test-db >&2
ret=$? ret=$?
if [ $ret -ne 0 ] ; then if [ $ret -ne 0 ] ; then
echo "Initialization of @NICE_PROJECT_NAME@ database failed." >&2 echo "Initialization of @NICE_PROJECT_NAME@ database failed." >&2

View File

@ -1,11 +1,11 @@
#!/bin/sh #!/bin/sh
# Some useful functions used in other MySQL helper scripts # Some useful functions used in other MariaDB helper scripts
# This scripts defines variables datadir, errlogfile, socketfile # This scripts defines variables datadir, errlogfile, socketfile
export LC_ALL=C export LC_ALL=C
# extract value of a MySQL option from config files # extract value of a MariaDB option from config files
# Usage: get_mysql_option VARNAME DEFAULT SECTION [ SECTION, ... ] # Usage: get_mysql_option VARNAME DEFAULT SECTION [ SECTION, ... ]
# result is returned in $result # result is returned in $result
# We use my_print_defaults which prints all options from multiple files, # We use my_print_defaults which prints all options from multiple files,
@ -25,7 +25,7 @@ get_mysql_option(){
fi fi
} }
# For the case of running more instances via systemd, scrits that source # For the case of running more instances via systemd, scripts that source
# this file can get --default-group-suffix or similar option as the first # this file can get --default-group-suffix or similar option as the first
# argument. The utility my_print_defaults needs to use it as well, so the # argument. The utility my_print_defaults needs to use it as well, so the
# scripts sourcing this file work with the same options as the daemon. # scripts sourcing this file work with the same options as the daemon.
@ -35,20 +35,20 @@ while echo "$1" | grep -q '^--defaults' ; do
shift shift
done done
# Defaults here had better match what mysqld_safe will default to # Defaults here had better match what mariadbd-safe will default to
# The option values are generally defined on three important places # The option values are generally defined on three important places
# on the default installation: # on the default installation:
# 1) default values are hardcoded in the code of mysqld daemon or # 1) default values are hardcoded in the code of mariadbd daemon or
# mysqld_safe script # mariadbd-safe script
# 2) configurable values are defined in @sysconfdir@/my.cnf # 2) configurable values are defined in @sysconfdir@/my.cnf
# 3) default values for helper scripts are specified bellow # 3) default values for helper scripts are specified bellow
# So, in case values are defined in my.cnf, we need to get that value. # So, in case values are defined in my.cnf, we need to get that value.
# In case they are not defined in my.cnf, we need to get the same value # In case they are not defined in my.cnf, we need to get the same value
# in the daemon, as in the helper scripts. Thus, default values here # in the daemon, as in the helper scripts. Thus, default values here
# must correspond with values defined in mysqld_safe script and source # must correspond with values defined in mariadbd-safe script and source
# code itself. # code itself.
server_sections="mysqld_safe mysqld server mysqld-@MAJOR_VERSION@.@MINOR_VERSION@ mariadb mariadb-@MAJOR_VERSION@.@MINOR_VERSION@ client-server" server_sections="mysqld_safe mysqld server mysqld-@MAJOR_VERSION@.@MINOR_VERSION@ mariadb mariadb-@MAJOR_VERSION@.@MINOR_VERSION@ mariadbd mariadbd-@MAJOR_VERSION@.@MINOR_VERSION@ client-server galera"
get_mysql_option "$server_sections" datadir "@MYSQL_DATADIR@" get_mysql_option "$server_sections" datadir "@MYSQL_DATADIR@"
datadir="$result" datadir="$result"

View File

@ -1,22 +1,23 @@
We have some downstream patches and other scripts that include variables to We have some downstream patches and other scripts that include variables to
be expanded by cmake. Cmake needs to know about them, so adding them manually. be expanded by cmake. Cmake needs to know about them, so adding them manually.
--- mariadb-10.3.8/scripts/CMakeLists.txt 2018-07-02 09:34:11.000000000 +0200 # Install libgcc as mylibgcc.a
+++ mariadb-10.3.8/scripts/CMakeLists.txt_patched 2018-07-03 10:58:15.954670153 +0200 --- mariadb-10.5.5/scripts/CMakeLists.txt.old 2020-09-24 10:13:35.272589689 +0200
@@ -361,6 +361,34 @@ ELSE() +++ mariadb-10.5.5/scripts/CMakeLists.txt 2020-09-24 10:17:31.428985798 +0200
COMPONENT ${${file}_COMPONENT} @@ -377,6 +377,34 @@
) INSTALL_LINK(${file} ${binname} ${INSTALL_BINDIR} ${${file}_COMPONENT})
ENDIF()
ENDFOREACH() ENDFOREACH()
+ +
+ # files for systemd + # files for systemd
+ SET(SYSTEMD_SCRIPTS + SET(SYSTEMD_SCRIPTS
+ mysql.tmpfiles.d + mariadb.tmpfiles.d
+ mysql.service + mysql.service
+ mysql@.service + mysql@.service
+ mysql-prepare-db-dir + mariadb-prepare-db-dir
+ mysql-check-socket + mariadb-check-socket
+ mysql-check-upgrade + mariadb-check-upgrade
+ mysql-scripts-common + mariadb-scripts-common
+ mysql_config_multilib + mysql_config_multilib
+ clustercheck + clustercheck
+ galera_new_cluster + galera_new_cluster

View File

@ -0,0 +1,13 @@
diff -up mariadb-10.3.9/mysql-test/main/ssl_cipher.test.fixtest mariadb-10.3.9/mysql-test/main/ssl_cipher.test
--- mariadb-10.3.13/mysql-test/main/ssl_cipher.test 2019-02-20 08:59:09.000000000 +0100
+++ mariadb-10.3.13/mysql-test/main/ssl_cipher.test_patched 2019-02-22 11:22:01.250256060 +0100
@@ -97,7 +97,9 @@ drop user mysqltest_1@localhost;
let $restart_parameters=--ssl-cipher=AES128-SHA;
source include/restart_mysqld.inc;
connect (ssl_con,localhost,root,,,,,SSL);
+--replace_regex /TLS_AES_.*/AES128-SHA/
SHOW STATUS LIKE 'Ssl_cipher';
+--replace_regex /TLS_AES_.*/AES128-SHA/
SHOW STATUS LIKE 'Ssl_cipher_list';
disconnect ssl_con;
connection default;

View File

@ -0,0 +1,8 @@
# Do not edit this file.
# To override this, put /etc/tmpfiles.d/mariadb.conf instead.
d @PID_FILE_DIR@ 0755 mysql mysql -
# Rules for ephemeral file systems (ImageMode)
d /var/lib/mysql 0755 mysql mysql -
d /var/log/mariadb 0750 mysql mysql -
f /var/log/mariadb/mariadb.log 0660 mysql mysql -

View File

@ -1,32 +1,24 @@
# It's not recommended to modify this file in-place, because it will be # It's not recommended to modify this file in-place, because it will be
# overwritten during package upgrades. If you want to customize, the # overwritten during package upgrades. If you want to customize, the
# best way is to create a file "/etc/systemd/system/@DAEMON_NAME@.service", # best way is to:
# containing #
# .include /usr/lib/systemd/system/@DAEMON_NAME@.service # root> systemctl edit @DAEMON_NAME@.service
# ...make your changes here... #
# or create a file "/etc/systemd/system/@DAEMON_NAME@.service.d/foo.conf", # Then add additonal directives under a section (probably [Service]).
# which doesn't need to include ".include" call and which will be parsed
# after the file @DAEMON_NAME@.service itself is parsed.
# #
# For more info about custom unit files, see systemd.unit(5) or # For more info about custom unit files, see systemd.unit(5) or
# http://fedoraproject.org/wiki/Systemd#How_do_I_customize_a_unit_file.2F_add_a_custom_unit_file.3F # http://fedoraproject.org/wiki/Systemd#How_do_I_customize_a_unit_file.2F_add_a_custom_unit_file.3F
#
# For example, if you want to increase mysql's open-files-limit to 10000, # For example, if you want to increase MariaDB's open-files-limit to 10000,
# you need to increase systemd's LimitNOFILE setting, so create a file named # you need to increase systemd's LimitNOFILE setting, use the contents below:
# "/etc/systemd/system/@DAEMON_NAME@.service.d/limits.conf" containing: #
# [Service] # [Service]
# LimitNOFILE=10000 # LimitNOFILE=10000
#
# Note: /usr/lib/... is recommended in the .include line though /lib/...
# still works.
# Don't forget to reload systemd daemon after you change unit configuration:
# root> systemctl --system daemon-reload
# Use [mysqld.INSTANCENAME] as sections in my.cnf to configure this instance.
[Unit] [Unit]
Description=@NICE_PROJECT_NAME@ @MAJOR_VERSION@.@MINOR_VERSION@ database server Description=@NICE_PROJECT_NAME@ @MAJOR_VERSION@.@MINOR_VERSION@ database server
Documentation=man:mysqld(8) Documentation=man:mariadbd(8)
Documentation=https://mariadb.com/kb/en/library/systemd/ Documentation=https://mariadb.com/kb/en/library/systemd/
After=network.target After=network.target
@ -40,20 +32,19 @@ Type=notify
User=mysql User=mysql
Group=mysql Group=mysql
ExecStartPre=@libexecdir@/mysql-check-socket ExecStartPre=@libexecdir@/mariadb-check-socket
# '%n' expands to 'Full unit name'; man systemd.unit # '%n' expands to 'Full unit name'; man systemd.unit
ExecStartPre=@libexecdir@/mysql-prepare-db-dir %n ExecStartPre=@libexecdir@/mariadb-prepare-db-dir %n
# MYSQLD_OPTS here is for users to set in /etc/systemd/system/@DAEMON_NAME@@.service.d/MY_SPECIAL.conf # MYSQLD_OPTS here is for users to set in /etc/systemd/system/@DAEMON_NAME@@.service.d/MY_SPECIAL.conf
# Note: we set --basedir to prevent probes that might trigger SELinux alarms, # Note: we set --basedir to prevent probes that might trigger SELinux alarms,
# per bug #547485 # per bug #547485
ExecStart=@libexecdir@/mysqld --basedir=@prefix@ $MYSQLD_OPTS $_WSREP_NEW_CLUSTER ExecStart=@libexecdir@/mariadbd --basedir=@prefix@ $MYSQLD_OPTS $_WSREP_NEW_CLUSTER
ExecStartPost=@libexecdir@/mysql-check-upgrade ExecStartPost=@libexecdir@/mariadb-check-upgrade
# Setting this to true can break replication and the Type=notify settings # Setting this to true can break replication and the Type=notify settings
# See also bind-address mysqld option. # See also bind-address MariaDB option.
PrivateNetwork=false PrivateNetwork=false
KillMode=process
KillSignal=SIGTERM KillSignal=SIGTERM
# Don't want to see an automated SIGKILL ever # Don't want to see an automated SIGKILL ever

View File

@ -1,3 +0,0 @@
# Do not edit this file.
# To override this, put /etc/tmpfiles.d/mariadb.conf instead.
d @PID_FILE_DIR@ 0755 mysql mysql -

View File

@ -1,39 +1,46 @@
# Multi instance version of mariadb. For if you run mutiple verions at once. # Multi instance version of MariaDB. For if you run mutiple verions at once.
# Also used for @DAEMON_NAME@@bootstrap to bootstrap Galera. # Also used for @DAEMON_NAME@@bootstrap to bootstrap Galera.
# #
# To use multi instance variant, use [mysqld.INSTANCENAME] as sections in my.cnf # To use multi instance variant, use [mariadbd.INSTANCENAME] as sections in
# @sysconfdir@/@my.cnf to change per instance settings. A minimumal necessary
# configuration items to change to avoid conflicts between instances is:
#
# [mariadbd.instancename]
# # TCP port to make available for clients
# port=3306
# # Socket to make available for clients
# socket=/tmp/mariadb-instancename.sock
# # Where MariaDB should store all its data
# datadir=/usr/local/mariadb-instancename/data
#
# and start the service via: # and start the service via:
# systemctl start @DAEMON_NAME@@{instancename}.server #
# root> systemctl start @DAEMON_NAME@@{instancename}.server
# #
# It's not recommended to modify this file in-place, because it will be # It's not recommended to modify this file in-place, because it will be
# overwritten during package upgrades. If you want to customize, the # overwritten during package upgrades. If you want to customize, for
# best way is to create a file "/etc/systemd/system/@DAEMON_NAME@.service", # all instances, the best way is:
# containing #
# .include /usr/lib/systemd/system/@DAEMON_NAME@.service # root> systemctl edit @DAEMON_NAME@@.service
# ...make your changes here... #
# or create a file "/etc/systemd/system/@DAEMON_NAME@.service.d/foo.conf", # Then add additonal directives under a section (probably [Service]).
# which doesn't need to include ".include" call and which will be parsed #
# after the file @DAEMON_NAME@.service itself is parsed. # If you only want to change a specific instance:
#
# root> systemctl edit @DAEMON_NAME@@{instancename}.server
# #
# For more info about custom unit files, see systemd.unit(5) or # For more info about custom unit files, see systemd.unit(5) or
# http://fedoraproject.org/wiki/Systemd#How_do_I_customize_a_unit_file.2F_add_a_custom_unit_file.3F # http://fedoraproject.org/wiki/Systemd#How_do_I_customize_a_unit_file.2F_add_a_custom_unit_file.3F
#
# For example, if you want to increase mysql's open-files-limit to 10000, # For example, if you want to increase MariaDB's open-files-limit to 10000,
# you need to increase systemd's LimitNOFILE setting, so create a file named # you need to increase systemd's LimitNOFILE setting, use the contents below:
# "/etc/systemd/system/@DAEMON_NAME@.service.d/limits.conf" containing: #
# [Service] # [Service]
# LimitNOFILE=10000 # LimitNOFILE=10000
# Note: /usr/lib/... is recommended in the .include line though /lib/...
# still works.
# Don't forget to reload systemd daemon after you change unit configuration:
# root> systemctl --system daemon-reload
# Use [mysqld.INSTANCENAME] as sections in my.cnf to configure this instance.
[Unit] [Unit]
Description=@NICE_PROJECT_NAME@ @MAJOR_VERSION@.@MINOR_VERSION@ database server Description=@NICE_PROJECT_NAME@ @MAJOR_VERSION@.@MINOR_VERSION@ database server
Documentation=man:mysqld(8) Documentation=man:mariadbd(8)
Documentation=https://mariadb.com/kb/en/library/systemd/ Documentation=https://mariadb.com/kb/en/library/systemd/
After=network.target After=network.target
@ -47,19 +54,18 @@ Type=notify
User=mysql User=mysql
Group=mysql Group=mysql
ExecStartPre=@libexecdir@/mysql-check-socket --defaults-group-suffix=.%I ExecStartPre=@libexecdir@/mariadb-check-socket --defaults-group-suffix=.%I
ExecStartPre=@libexecdir@/mysql-prepare-db-dir --defaults-group-suffix=.%I %n ExecStartPre=@libexecdir@/mariadb-prepare-db-dir --defaults-group-suffix=.%I %n
# MYSQLD_OPTS here is for users to set in /etc/systemd/system/@DAEMON_NAME@@.service.d/MY_SPECIAL.conf # MYSQLD_OPTS here is for users to set in /etc/systemd/system/@DAEMON_NAME@@.service.d/MY_SPECIAL.conf
# Note: we set --basedir to prevent probes that might trigger SELinux alarms, # Note: we set --basedir to prevent probes that might trigger SELinux alarms,
# per bug #547485 # per bug #547485
ExecStart=@libexecdir@/mysqld --defaults-group-suffix=.%I --basedir=@prefix@ $MYSQLD_OPTS $_WSREP_NEW_CLUSTER ExecStart=@libexecdir@/mariadbd --defaults-group-suffix=.%I --basedir=@prefix@ $MYSQLD_OPTS $_WSREP_NEW_CLUSTER
ExecStartPost=@libexecdir@/mysql-check-upgrade --defaults-group-suffix=.%I ExecStartPost=@libexecdir@/mariadb-check-upgrade --defaults-group-suffix=.%I
# Setting this to true can break replication and the Type=notify settings # Setting this to true can break replication and the Type=notify settings
# See also bind-address mysqld option. # See also bind-address MariaDB option.
PrivateNetwork=false PrivateNetwork=false
KillMode=process
KillSignal=SIGTERM KillSignal=SIGTERM
# Don't want to see an automated SIGKILL ever # Don't want to see an automated SIGKILL ever

View File

@ -1,3 +1,5 @@
# Fails on aarch64 # Fails since 10.3.17, only on armv7hl
innodb.innodb_buffer_pool_resize : versioning.partition :
innodb.innodb_buffer_pool_resize_with_chunks :
# Fail since 10.4.16 only on armv7hl
versioning.partition_rotation :

View File

@ -1,30 +1,110 @@
# Fails everywhere # The SSL test are failing correctly. Fro more explanation, see:
innodb.innodb_defrag_binlog : # https://jira.mariadb.org/browse/MDEV-8404?focusedCommentId=84275&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-84275
main.ssl_7937 : #1399847
main.ssl_8k_key :
main.ssl_crl : #1399847
main.ssl_7937 : # ------------------------------
main.ssl_8k_key : # Tests that fails because of 'Self Signed Certificate in the Certificate Chain'
main.ssl_crl : perfschema.cnf_option :
main.ssl_system_ca :
main.userstat :
perfschema.cnf_option : rpl.rpl_row_img_blobs :
perfschema.nesting : rpl.rpl_row_img_eng_min :
rpl.rpl_row_img_eng_noblob :
sys_vars.slave_parallel_threads_basic :
# ------------------------------
# Expected to fail, the plugin is not build with server, but 'mariadb-connector-c' instead
plugins.auth_ed25519 :
plugins.multiauth :
# ------------------------------
perfschema.nesting : #1399847
perfschema.socket_summary_by_instance_func : #1399847
perfschema.socket_summary_by_event_name_func : perfschema.socket_summary_by_event_name_func :
perfschema.socket_summary_by_instance_func :
plugins.feedback_plugin_load : # ------------------------------
# Fails since 10.1.12
innodb.innodb_defrag_binlog :
rpl.rpl_row_img_blobs : # Fails everywhere since 10.2.15
rpl.rpl_row_img_eng_min : main.userstat :
rpl.rpl_row_img_eng_noblob :
sys_vars.slave_parallel_threads_basic : # Fails everywhere since 10.4.11
main.events_bugs :
sys_vars.tcp_nodelay :
# Fails only on i686 # Fails on i686
main.myisampack : encryption.innodb-redo-badkey :
# We don't build the plugin in server; we build it in mariadb-connector-c instead # Fails since 10.5.2
plugins.auth_ed25519 : main.mysqld--help2 :
disks.disks :
disks.disks_notembedded :
# Fails when builder uses a different trimezone than expected # Fails since 10.5.3
main.mysqld--help-aria :
# Fails since 10.5.4
main.ssl_system_ca :
# Fails since 10.5.7
innodb.innodb_wl6326_big :
plugins.feedback_plugin_load :
# Fails only on RHEL 9 BETA on i686 architecture
main.myisampack :
# Fails on all arches since 10.5.13 on CentOS Stream 9
oqgraph.regression_mdev6345 :
type_test.type_test_double :
# Fails only on i686 since 10.5.13 on CentOS Stream 9
oqgraph.general-innodb :
oqgraph.general-Aria :
oqgraph.general-MyISAM :
oqgraph.legacy_upgrade :
oqgraph.regression_1133093 :
oqgraph.regression_1196036 :
oqgraph.regression_1213120 :
# Fails since RHEL 9.0.0 GA
# TLSv1.0 and TLSv1.1 are not allowed anymore
# https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/9/html-single/security_hardening/index
main.tls_version1 :
# Fails on all architectures since 10.5.18
main.information_schema :
main.loadxml :
main.lock_kill :
# Fails since 10.5.20
innodb.innodb_bug51920 :
innodb.row_size_error_log_warnings_3 :
binlog_encryption.rpl_cant_read_event_incident :
bg.spider_fixes :
bugfix.mdev_29904 : "[Warning] mariadbd: Can't get hardware address with error 0"
sys_vars.completion_type_func :
rpl.rpl_report_port :
rpl.rpl_reset_slave_fail :
rpl.rpl_xa_survive_disconnect_lsu_off :
rpl.rpl_heartbeat_basic :
rpl.rpl_xa_survive_disconnect :
rpl.rpl_err_ignoredtable :
rpl.rpl_row_img_sequence_full :
rpl.rpl_row_img_sequence_min :
rpl.rpl_row_img_sequence_noblob :
rpl.rpl_xa_empty_transaction :
rpl.rpl_slave_shutdown_mdev20821 :
# Fails on 10.5.26
mariabackup.slave_provision_nolock :
rpl.rpl_slave_restart_long_password :
rpl.rpl_mysqldump_gtid_slave_pos :
rpl.rpl_memory_engine_truncate_on_restart :
rpl.rpl_semi_sync_master_shutdown :
mariabackup.rpl_clone_slave :
# Fails on 10.5.27
main.timezone : main.timezone :
main.alter_table_combinations :

View File

@ -1,30 +1,7 @@
# Fails on ppc64le # Fails on ppc64le since 10.4.12
parts.partition_alter1_1_innodb : oqgraph.social :
parts.partition_alter1_2_innodb :
parts.partition_alter1_1_2_innodb :
parts.partition_alter1_2_1_innodb :
parts.partition_alter2_1_1_innodb :
parts.partition_alter1_2_2_innodb :
parts.partition_alter2_1_2_innodb :
parts.partition_alter2_2_1_innodb :
parts.partition_alter2_2_2_innodb :
parts.partition_alter4_innodb :
parts.partition_basic_innodb :
parts.part_supported_sql_func_innodb :
rpl.rpl_loaddata_m : # Fails since 10.5.20
innodb.innodb_defrag_concurrent :
# parts.partition_alter4_innodb :
stress.ddl_innodb : rpl.rpl_parallel_optimistic_xa_lsu_off :
innodb.innodb_buffer_pool_resize :
innodb.innodb_buffer_pool_resize_with_chunks :
innodb.innodb_bulk_create_index :
innodb.innodb_defrag_binlog :
innodb.innodb_defrag_concurrent :
innodb_gis.kill_server :
gcol.innodb_virtual_basic :
# Unstable (randomly failing) tests
innodb_gis.rtree_search :
main.type_ranges :

View File

@ -1,15 +1,3 @@
# Fails on s390x # Fails since 10.5.2
disks.disks : perfschema.memory_aggregate_32bit :
disks.disks_notembedded : period.overlaps :
# related to MDEV-20194
# first check of `undefined` table causes warning,
# instead INSERT and ALTER should cause it
innodb.row_size_error_log_warnings_3 :
# Fails since 2025
archive.archive :
compat/oracle.column_compression :
main.func_compress :
main.column_compression_rpl :
main.column_compression :

File diff suppressed because it is too large Load Diff