Skip to content

Commit ababa90

Browse files
Merge branch 'MDEV-14992' into MDEV-39101
2 parents 531a30e + f475b63 commit ababa90

162 files changed

Lines changed: 3338 additions & 1644 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

client/mysqldump.cc

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2817,7 +2817,7 @@ static uint dump_events_for_db(char *db)
28172817
C_STRING_WITH_LEN(" EVENT"));
28182818

28192819
fprintf(sql_file,
2820-
"/*!50106 %s */ %s\n",
2820+
"/*!50106 %s \n*/ %s\n",
28212821
(const char *) (query_str != NULL ? query_str : row[3]),
28222822
(const char *) delimiter);
28232823

@@ -3043,7 +3043,8 @@ static uint dump_routines_for_db(char *db)
30433043

30443044
fprintf(sql_file,
30453045
"DELIMITER ;;\n"
3046-
"%s ;;\n"
3046+
"%s\n"
3047+
";;\n"
30473048
"DELIMITER ;\n",
30483049
(const char *) row[2]);
30493050

@@ -3420,13 +3421,13 @@ static uint get_table_structure(const char *table, const char *db, char *table_t
34203421
The actual column value doesn't matter anyway, since the view will
34213422
be dropped at run time.
34223423
*/
3423-
fprintf(sql_file, " 1 AS %s",
3424+
fprintf(sql_file, " NULL AS %s",
34243425
quote_name(row[0], name_buff, 0));
34253426

34263427
while((row= mysql_fetch_row(result)))
34273428
{
34283429
/* col name, col type */
3429-
fprintf(sql_file, ",\n 1 AS %s",
3430+
fprintf(sql_file, ",\n NULL AS %s",
34303431
quote_name(row[0], name_buff, 0));
34313432
}
34323433

@@ -3981,7 +3982,7 @@ static int dump_trigger(FILE *sql_file, MYSQL_RES *show_create_trigger_rs,
39813982
C_STRING_WITH_LEN(" TRIGGER"));
39823983
fprintf(sql_file,
39833984
"DELIMITER ;;\n"
3984-
"/*!50003 %s */;;\n"
3985+
"/*!50003 %s \n*/;;\n"
39853986
"DELIMITER ;\n",
39863987
(const char *) (query_str != NULL ? query_str : row[2]));
39873988

client/mysqltest.cc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6286,7 +6286,7 @@ void func_abs(Expression_value args[], int count, Expression_value *result)
62866286
if (!args[0].is_numeric)
62876287
die("abs() requires numeric argument");
62886288

6289-
result->set_int(abs(args[0].to_int()));
6289+
result->set_int(llabs(args[0].to_int()));
62906290
}
62916291

62926292

cmake/cpack_rpm.cmake

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ SET(CPACK_COMPONENT_SERVER_GROUP "server")
1414
SET(CPACK_COMPONENT_INIFILES_GROUP "server")
1515
SET(CPACK_COMPONENT_SERVER_SCRIPTS_GROUP "server")
1616
SET(CPACK_COMPONENT_SUPPORTFILES_GROUP "server")
17+
SET(CPACK_COMPONENT_SERVER_GALERA_GROUP "server-galera")
1718
SET(CPACK_COMPONENT_DEVELOPMENT_GROUP "devel")
1819
SET(CPACK_COMPONENT_DEVELOPMENTSYMLINKS_GROUP "devel")
1920
SET(CPACK_COMPONENT_MANPAGESDEVELOPMENT_GROUP "devel")
@@ -95,6 +96,8 @@ SET(CPACK_RPM_devel_PACKAGE_SUMMARY "MariaDB database development files")
9596
SET(CPACK_RPM_devel_PACKAGE_DESCRIPTION "${CPACK_RPM_PACKAGE_DESCRIPTION}")
9697
SET(CPACK_RPM_server_PACKAGE_SUMMARY "MariaDB database server binaries")
9798
SET(CPACK_RPM_server_PACKAGE_DESCRIPTION "${CPACK_RPM_PACKAGE_DESCRIPTION}")
99+
SET(CPACK_RPM_server-galera_PACKAGE_SUMMARY "MariaDB database server binaries and scripts for Galera 4")
100+
SET(CPACK_RPM_server-galera_PACKAGE_DESCRIPTION "${CPACK_RPM_PACKAGE_DESCRIPTION}")
98101
SET(CPACK_RPM_test_PACKAGE_SUMMARY "MariaDB database regression test suite")
99102
SET(CPACK_RPM_test_PACKAGE_DESCRIPTION "${CPACK_RPM_PACKAGE_DESCRIPTION}")
100103

@@ -258,11 +261,28 @@ SETA(CPACK_RPM_test_PACKAGE_OBSOLETES
258261
"MySQL-test")
259262
SETA(CPACK_RPM_test_PACKAGE_PROVIDES
260263
"MySQL-test")
264+
IF(WITH_WSREP)
265+
SETA(CPACK_RPM_test_PACKAGE_REQUIRES
266+
"MariaDB-server-galera = ${SERVER_VERSION}")
267+
ELSE()
268+
SETA(CPACK_RPM_test_PACKAGE_REQUIRES
269+
"MariaDB-server = ${SERVER_VERSION}")
270+
ENDIF()
261271

262272
SETA(CPACK_RPM_server_PACKAGE_REQUIRES
263273
"MariaDB-common >= 10.6.1"
264274
"MariaDB-client >= 11.0.0")
265275

276+
IF(WITH_WSREP)
277+
SETA(CPACK_RPM_server_galera_PACKAGE_REQUIRES
278+
"MariaDB-server >= ${SERVER_VERSION}"
279+
"galera-4" "rsync" "grep" "gawk" "iproute"
280+
"coreutils" "findutils" "tar")
281+
SETA(CPACK_RPM_server_galera_PACKAGE_RECOMMENDS "lsof" "socat" "pv")
282+
SETA(CPACK_RPM_server_galera_PACKAGE_CONFLICTS
283+
"MariaDB-server <= 12.3.2")
284+
ENDIF()
285+
266286
SET(CPACK_RPM_server_PRE_INSTALL_SCRIPT_FILE ${CMAKE_SOURCE_DIR}/support-files/rpm/server-prein.sh)
267287
SET(CPACK_RPM_server_PRE_UNINSTALL_SCRIPT_FILE ${CMAKE_SOURCE_DIR}/support-files/rpm/server-preun.sh)
268288
SET(CPACK_RPM_server_POST_INSTALL_SCRIPT_FILE ${CMAKE_SOURCE_DIR}/support-files/rpm/server-postin.sh)

debian/additions/mariadb.conf.d/60-galera.cnf

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,16 +9,18 @@
99
#wsrep_cluster_name = "MariaDB Galera Cluster"
1010

1111
# Mandatory settings
12-
#wsrep_provider = /usr/lib/galera/libgalera_smm.so
12+
# per https://mariadb.com/docs/galera-cluster/readme/mariadb-galera-cluster-usage-guide#general-configuration
13+
wsrep_provider = /usr/lib/galera/libgalera_smm.so
14+
# Configure address and enable wsrep_on.
1315
#wsrep_cluster_address = gcomm://
14-
#binlog_format = ROW
1516
#wsrep_on = ON
16-
#default_storage_engine = InnoDB
17+
binlog_format = ROW
18+
innodb_autoinc_lock_mode = 2
1719

1820
# Allow server to accept connections on all interfaces.
19-
#bind-address = 0.0.0.0
21+
bind-address = 0.0.0.0
2022

2123
# Performance related settings
22-
#innodb_autoinc_lock_mode = 2
24+
# https://mariadb.com/docs/galera-cluster/galera-management/configuration/configuring-mariadb-galera-cluster#performance-related-options
2325
#innodb_flush_log_at_trx_commit = 0
24-
#wsrep_slave_threads = 1
26+
#wsrep_slave_threads = 4

debian/control

Lines changed: 38 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -971,6 +971,39 @@ Description: MySQL compatibility links to mariadb-server binaries/scripts.
971971
This package is also useful for users with strong background in MySQL
972972
maintenance, but wants to switch to MariaDB
973973

974+
Package: mariadb-server-galera
975+
Architecture: any
976+
Depends:
977+
galera-4 (>= 26.4),
978+
gawk,
979+
iproute2 [linux-any],
980+
lsof [linux-any],
981+
mariadb-server (= ${server:Version}),
982+
rsync,
983+
socat,
984+
${misc:Depends},
985+
${shlibs:Depends},
986+
Recommends:
987+
pv,
988+
Conflicts:
989+
mariadb-galera-server-10.0,
990+
mariadb-galera-server-5.5,
991+
mariadb-server (<< 1:12.3.2),
992+
Breaks:
993+
mariadb-server (<< 1:12.3.2),
994+
Description: MariaDB scripts and configuration needed by Galera cluster
995+
MariaDB Galera Cluster is a virtually synchronous multi-primary
996+
cluster for MariaDB.
997+
.
998+
Galera is the underlying replication plugin that makes this clustering
999+
possible. It provides write-set replication with group communication
1000+
primitives to ensure data consistency across all nodes in real-time.
1001+
.
1002+
The library enables active-active multi-master topologies with automatic
1003+
membership control, supports both incremental (IST) and snapshot (SST)
1004+
state transfers, and guarantees no transaction loss on node failures
1005+
through its virtually synchronous replication protocol.
1006+
9741007
Package: mariadb-backup
9751008
Architecture: any
9761009
Breaks:
@@ -1302,9 +1335,10 @@ Description: Snappy compression support in the server and storage engines
13021335

13031336
Package: mariadb-plugin-videx
13041337
Architecture: any
1305-
Depends: mariadb-server (= ${server:Version}),
1306-
${misc:Depends},
1307-
${shlibs:Depends}
1338+
Depends:
1339+
mariadb-server (= ${server:Version}),
1340+
${misc:Depends},
1341+
${shlibs:Depends},
13081342
Description: Virtual index engine for what-if analysis in MariaDB
13091343
The VIDEX storage engine allows developers and DBAs to perform what-if
13101344
analysis by evaluating the impact of potential indexes on query plans.
@@ -1316,7 +1350,7 @@ Architecture: any
13161350
Depends:
13171351
libnet-ssleay-perl,
13181352
mariadb-client (= ${binary:Version}),
1319-
mariadb-server (= ${server:Version}),
1353+
mariadb-server-galera (= ${server:Version}),
13201354
mariadb-test-data (= ${source:Version}),
13211355
virtual-mysql-testsuite,
13221356
${misc:Depends},

debian/mariadb-client.install

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ debian/additions/innotop/innotop usr/bin/
22
debian/additions/mariadb-report usr/bin/
33
debian/additions/mariadb.conf.d/50-client.cnf etc/mysql/mariadb.conf.d
44
debian/additions/mariadb.conf.d/50-mariadb-clients.cnf etc/mysql/mariadb.conf.d
5-
debian/additions/mariadb.conf.d/60-galera.cnf etc/mysql/mariadb.conf.d
65
usr/bin/mariadb-access
76
usr/bin/mariadb-admin
87
usr/bin/mariadb-binlog
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
etc/mysql/mariadb.conf.d/wsrep_info.cnf
2+
debian/additions/mariadb.conf.d/60-galera.cnf etc/mysql/mariadb.conf.d
3+
lib/systemd/system/mariadb@bootstrap.service.d/use_galera_new_cluster.conf
4+
lib/systemd/system/mariadb.service.d/galera.conf
5+
usr/bin/galera_new_cluster
6+
usr/bin/galera_recovery
7+
usr/bin/wsrep_sst_common
8+
usr/bin/wsrep_sst_mariabackup
9+
usr/bin/wsrep_sst_mysqldump
10+
usr/bin/wsrep_sst_rsync
11+
usr/bin/wsrep_sst_rsync_wan
12+
usr/lib/mysql/plugin/wsrep_info.so
13+
usr/share/man/man1/galera_new_cluster.1
14+
usr/share/man/man1/galera_recovery.1
15+
usr/share/man/man1/wsrep_sst_common.1
16+
usr/share/man/man1/wsrep_sst_mariabackup.1
17+
usr/share/man/man1/wsrep_sst_mysqldump.1
18+
usr/share/man/man1/wsrep_sst_rsync.1
19+
usr/share/man/man1/wsrep_sst_rsync_wan.1
20+
usr/share/mariadb/wsrep_notify

debian/mariadb-server.install

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@ lib/systemd/system/mariadb-extra@.socket
1111
lib/systemd/system/mariadb.service
1212
lib/systemd/system/mariadb@.service
1313
lib/systemd/system/mariadb@.socket
14-
lib/systemd/system/mariadb@bootstrap.service.d/use_galera_new_cluster.conf
1514
lib/systemd/system/mysql.service
1615
lib/systemd/system/mysqld.service
1716
support-files/rpm/enable_encryption.preset etc/mysql/mariadb.conf.d/99-enable-encryption.cnf.preset
@@ -20,8 +19,6 @@ usr/bin/aria_dump_log
2019
usr/bin/aria_ftdump
2120
usr/bin/aria_pack
2221
usr/bin/aria_read_log
23-
usr/bin/galera_new_cluster
24-
usr/bin/galera_recovery
2522
usr/bin/mariadb-service-convert
2623
usr/bin/mariadbd-multi
2724
usr/bin/mariadbd-safe
@@ -30,11 +27,6 @@ usr/bin/myisam_ftdump
3027
usr/bin/myisamchk
3128
usr/bin/myisamlog
3229
usr/bin/myisampack
33-
usr/bin/wsrep_sst_common
34-
usr/bin/wsrep_sst_mariabackup
35-
usr/bin/wsrep_sst_mysqldump
36-
usr/bin/wsrep_sst_rsync
37-
usr/bin/wsrep_sst_rsync_wan
3830
usr/lib/mysql/plugin/auth_ed25519.so
3931
usr/lib/mysql/plugin/auth_mysql_sha2.so
4032
usr/lib/mysql/plugin/auth_pam.so
@@ -58,16 +50,13 @@ usr/lib/mysql/plugin/server_audit.so
5850
usr/lib/mysql/plugin/simple_password_check.so
5951
usr/lib/mysql/plugin/sql_errlog.so
6052
usr/lib/mysql/plugin/type_mysql_json.so
61-
usr/lib/mysql/plugin/wsrep_info.so
6253
usr/lib/tmpfiles.d/mariadb.conf
6354
usr/share/doc/mariadb-server/mariadbd.sym.gz
6455
usr/share/man/man1/aria_chk.1
6556
usr/share/man/man1/aria_dump_log.1
6657
usr/share/man/man1/aria_ftdump.1
6758
usr/share/man/man1/aria_pack.1
6859
usr/share/man/man1/aria_read_log.1
69-
usr/share/man/man1/galera_new_cluster.1
70-
usr/share/man/man1/galera_recovery.1
7160
usr/share/man/man1/mariadb-service-convert.1
7261
usr/share/man/man1/mariadbd-multi.1
7362
usr/share/man/man1/mariadbd-safe-helper.1
@@ -76,11 +65,4 @@ usr/share/man/man1/myisam_ftdump.1
7665
usr/share/man/man1/myisamchk.1
7766
usr/share/man/man1/myisamlog.1
7867
usr/share/man/man1/myisampack.1
79-
usr/share/man/man1/wsrep_sst_common.1
80-
usr/share/man/man1/wsrep_sst_mariabackup.1
81-
usr/share/man/man1/wsrep_sst_mysqldump.1
82-
usr/share/man/man1/wsrep_sst_rsync.1
83-
usr/share/man/man1/wsrep_sst_rsync_wan.1
8468
usr/share/mariadb/mini-benchmark
85-
usr/share/mariadb/wsrep.cnf
86-
usr/share/mariadb/wsrep_notify

debian/mariadb-server.links

100644100755
File mode changed.

debian/mariadb-server.triggers

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
11
interest-noawait /etc/mysql
22
interest-noawait /etc/systemd/system/mariadb.service.d
3+
interest-noawait /lib/systemd/system/mariadb.service.d

0 commit comments

Comments
 (0)