From 8881c0100e2131077410b360b27b7af30db56e1a Mon Sep 17 00:00:00 2001 From: KiyoshiTakeda Date: Wed, 18 May 2022 23:38:56 +0900 Subject: [PATCH 01/19] MDEV-14642 Assertion 'table->s->db_create_options == part_table->s->db_create_options' failed in compare_table_with_partition When trying to execute ALTER TABLE EXCHANGE PARTITION with different definitions, assertion table->s->db_create_options == part_table->s->db_create_options failed in compare_table_with_partition(). However, this execution should not be allowed since executing 'exchange partition' requires the identical structure of the two tables. To fix the problem, I deleted the assertion code and added code that returns an error that indicates tables have different definitions. Reviewed By: Nayuta Yanagisawa --- mysql-test/main/partition_exchange.result | 13 +++++++++++++ mysql-test/main/partition_exchange.test | 18 ++++++++++++++++++ sql/sql_partition_admin.cc | 9 +++++++-- 3 files changed, 38 insertions(+), 2 deletions(-) diff --git a/mysql-test/main/partition_exchange.result b/mysql-test/main/partition_exchange.result index b27da5b9b8c..ac1b8c99cf7 100644 --- a/mysql-test/main/partition_exchange.result +++ b/mysql-test/main/partition_exchange.result @@ -1308,3 +1308,16 @@ ALTER TABLE t2 REMOVE PARTITIONING; ALTER TABLE t1 EXCHANGE PARTITION pm WITH TABLE t2; ERROR HY000: Non matching attribute 'TABLESPACE' between partition and table DROP TABLE t1, t2; +# +# MDEV-14642 Assertion `table->s->db_create_options == part_table->s->db_create_options' failed in compare_table_with_partition +# +CREATE TABLE t1 (a INT) ROW_FORMAT=DYNAMIC PARTITION BY KEY(a) PARTITIONS 2; +CREATE TABLE t2 (a INT) ; +ALTER TABLE t1 EXCHANGE PARTITION p1 WITH TABLE t2; +ERROR HY000: Tables have different definitions +DROP TABLE t1, t2; +CREATE TABLE t1 (a INT, PRIMARY KEY(a)) ENGINE=InnoDB PARTITION BY KEY(a) PARTITIONS 2; +CREATE TABLE t2 (a INT, PRIMARY KEY(a)) CHECKSUM=1, ENGINE=InnoDB; +ALTER TABLE t1 EXCHANGE PARTITION p0 WITH TABLE t2; +ERROR HY000: Tables have different definitions +DROP TABLE t1, t2; diff --git a/mysql-test/main/partition_exchange.test b/mysql-test/main/partition_exchange.test index cb33b8dd857..4125e998623 100644 --- a/mysql-test/main/partition_exchange.test +++ b/mysql-test/main/partition_exchange.test @@ -536,3 +536,21 @@ ALTER TABLE t2 REMOVE PARTITIONING; ALTER TABLE t1 EXCHANGE PARTITION pm WITH TABLE t2; DROP TABLE t1, t2; +--echo # +--echo # MDEV-14642 Assertion `table->s->db_create_options == part_table->s->db_create_options' failed in compare_table_with_partition +--echo # +CREATE TABLE t1 (a INT) ROW_FORMAT=DYNAMIC PARTITION BY KEY(a) PARTITIONS 2; +CREATE TABLE t2 (a INT) ; +--error ER_TABLES_DIFFERENT_METADATA +ALTER TABLE t1 EXCHANGE PARTITION p1 WITH TABLE t2; + +# Cleanup +DROP TABLE t1, t2; + +CREATE TABLE t1 (a INT, PRIMARY KEY(a)) ENGINE=InnoDB PARTITION BY KEY(a) PARTITIONS 2; +CREATE TABLE t2 (a INT, PRIMARY KEY(a)) CHECKSUM=1, ENGINE=InnoDB; +--error ER_TABLES_DIFFERENT_METADATA +ALTER TABLE t1 EXCHANGE PARTITION p0 WITH TABLE t2; + +# Cleanup +DROP TABLE t1, t2; diff --git a/sql/sql_partition_admin.cc b/sql/sql_partition_admin.cc index 90156a76dec..cec7ecc6806 100644 --- a/sql/sql_partition_admin.cc +++ b/sql/sql_partition_admin.cc @@ -249,8 +249,13 @@ static bool compare_table_with_partition(THD *thd, TABLE *table, my_error(ER_TABLES_DIFFERENT_METADATA, MYF(0)); DBUG_RETURN(TRUE); } - DBUG_ASSERT(table->s->db_create_options == - part_table->s->db_create_options); + + if (table->s->db_create_options != part_table->s->db_create_options) + { + my_error(ER_TABLES_DIFFERENT_METADATA, MYF(0)); + DBUG_RETURN(TRUE); + } + DBUG_ASSERT(table->s->db_options_in_use == part_table->s->db_options_in_use); From 40d9dbb28f43708b498a4d62f61dc34fd87eb9b9 Mon Sep 17 00:00:00 2001 From: Oleg Smirnov Date: Fri, 13 May 2022 18:10:11 +0400 Subject: [PATCH 02/19] MDEV-28246 Optimizer uses all partitions after upgrade to 10.3 Cause: a copy of the joined TABLE_LIST is created during multi_update::prepare and TABLE::pos_in_table_list of the tables are set to point to the new TABLE_LIST object. This prevents some optimization steps to perform correctly. Solution: do not update pos_in_table_list during multi_update::prepare --- mysql-test/main/multi_update.result | 90 +++++++++++++++++++++++++++++ mysql-test/main/multi_update.test | 31 ++++++++++ sql/sql_update.cc | 3 +- 3 files changed, 122 insertions(+), 2 deletions(-) diff --git a/mysql-test/main/multi_update.result b/mysql-test/main/multi_update.result index 71eafbf7e17..68d15d49b50 100644 --- a/mysql-test/main/multi_update.result +++ b/mysql-test/main/multi_update.result @@ -1161,3 +1161,93 @@ ERROR 21000: Subquery returns more than 1 row update t1 set a= (select 2 from t1 having (a = 3)); ERROR 21000: Subquery returns more than 1 row drop tables t1; +# +# MDEV-28246 Optimizer uses all partitions during an update in MariaDB 10.6.x but not in 10.2.x +# +CREATE TABLE t1 ( +part INT(1), +a INT(1), +b INT(1), +PRIMARY KEY (a,part), +INDEX b (b,part) +) PARTITION BY LIST (part) ( +PARTITION Current VALUES IN (0), +PARTITION Relevant VALUES IN (1), +PARTITION Archive VALUES IN (2) +); +CREATE TABLE t2 LIKE t1; +INSERT INTO t1 (part,a,b) VALUES (0,0,0),(1,1,1),(2,2,2); +INSERT INTO t2 (part,a,b) VALUES (0,0,0),(1,1,1),(2,2,2); +# Expecting partition "Current" +EXPLAIN FORMAT=JSON UPDATE t2 JOIN t1 USING(a) SET t2.part=3 WHERE t2.part=0 AND t1.part=0; +EXPLAIN +{ + "query_block": { + "select_id": 1, + "table": { + "table_name": "t2", + "partitions": ["Current"], + "access_type": "system", + "possible_keys": ["PRIMARY"], + "rows": 1, + "filtered": 100 + }, + "table": { + "table_name": "t1", + "partitions": ["Current"], + "access_type": "system", + "possible_keys": ["PRIMARY"], + "rows": 1, + "filtered": 100 + } + } +} +# Expecting partition "Relevant" +EXPLAIN FORMAT=JSON UPDATE t2 JOIN t1 USING(a) SET t2.part=2 WHERE t2.part=1 AND t1.part=1; +EXPLAIN +{ + "query_block": { + "select_id": 1, + "table": { + "table_name": "t2", + "partitions": ["Relevant"], + "access_type": "system", + "possible_keys": ["PRIMARY"], + "rows": 1, + "filtered": 100 + }, + "table": { + "table_name": "t1", + "partitions": ["Relevant"], + "access_type": "system", + "possible_keys": ["PRIMARY"], + "rows": 1, + "filtered": 100 + } + } +} +# Expecting partition "Archive" +EXPLAIN FORMAT=JSON UPDATE t2 JOIN t1 USING(a) SET t2.part=3 WHERE t2.part=2 AND t1.part=2; +EXPLAIN +{ + "query_block": { + "select_id": 1, + "table": { + "table_name": "t2", + "partitions": ["Archive"], + "access_type": "system", + "possible_keys": ["PRIMARY"], + "rows": 1, + "filtered": 100 + }, + "table": { + "table_name": "t1", + "partitions": ["Archive"], + "access_type": "system", + "possible_keys": ["PRIMARY"], + "rows": 1, + "filtered": 100 + } + } +} +DROP TABLES t1, t2; diff --git a/mysql-test/main/multi_update.test b/mysql-test/main/multi_update.test index 3ee36f97fc5..5f4b5fc8ec3 100644 --- a/mysql-test/main/multi_update.test +++ b/mysql-test/main/multi_update.test @@ -1098,3 +1098,34 @@ select a from t1 where a= (select 2 from t1 having (a = 3)); --error ER_SUBQUERY_NO_1_ROW update t1 set a= (select 2 from t1 having (a = 3)); drop tables t1; + +--echo # +--echo # MDEV-28246 Optimizer uses all partitions during an update in MariaDB 10.6.x but not in 10.2.x +--echo # +--source include/have_partition.inc +CREATE TABLE t1 ( + part INT(1), + a INT(1), + b INT(1), + PRIMARY KEY (a,part), + INDEX b (b,part) +) PARTITION BY LIST (part) ( + PARTITION Current VALUES IN (0), + PARTITION Relevant VALUES IN (1), + PARTITION Archive VALUES IN (2) +); + +CREATE TABLE t2 LIKE t1; +INSERT INTO t1 (part,a,b) VALUES (0,0,0),(1,1,1),(2,2,2); +INSERT INTO t2 (part,a,b) VALUES (0,0,0),(1,1,1),(2,2,2); + +--echo # Expecting partition "Current" +EXPLAIN FORMAT=JSON UPDATE t2 JOIN t1 USING(a) SET t2.part=3 WHERE t2.part=0 AND t1.part=0; + +--echo # Expecting partition "Relevant" +EXPLAIN FORMAT=JSON UPDATE t2 JOIN t1 USING(a) SET t2.part=2 WHERE t2.part=1 AND t1.part=1; + +--echo # Expecting partition "Archive" +EXPLAIN FORMAT=JSON UPDATE t2 JOIN t1 USING(a) SET t2.part=3 WHERE t2.part=2 AND t1.part=2; + +DROP TABLES t1, t2; diff --git a/sql/sql_update.cc b/sql/sql_update.cc index a6a0b78259d..66c3acedb23 100644 --- a/sql/sql_update.cc +++ b/sql/sql_update.cc @@ -1977,10 +1977,9 @@ int multi_update::prepare(List ¬_used_values, if (!tl) DBUG_RETURN(1); update.link_in_list(tl, &tl->next_local); - tl->shared= table_count++; + table_ref->shared= tl->shared= table_count++; table->no_keyread=1; table->covering_keys.clear_all(); - table->pos_in_table_list= tl; table->prepare_triggers_for_update_stmt_or_event(); table->reset_default_fields(); } From 06f043d7172dc7a952d3b95cbd551210b04e9be7 Mon Sep 17 00:00:00 2001 From: Tuukka Pasanen Date: Tue, 29 Mar 2022 10:25:50 +0300 Subject: [PATCH 03/19] MDEV-28191: Suspend Lintian problems in mariadb-test-data package Suspend national-encoding repeated-path-segment package-contains-documentation-outside-usr-share-doc Package mariadb-test-data has test files in directory '/usr/share/mysql/mysql-test/' which are not UTF-8 encoded and they should not be as they are for testing. package also have Lintian warnings for files that are not in correct place in directory 'usr/share/mysql/mysql-test' but as they are all are test results they are not in incorrect place At last there is intentional use for some repeated directories so they are false-positives and should be suspended --- debian/mariadb-test-data.lintian-overrides | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/debian/mariadb-test-data.lintian-overrides b/debian/mariadb-test-data.lintian-overrides index 4ff05a3be2a..630e9fcab1e 100644 --- a/debian/mariadb-test-data.lintian-overrides +++ b/debian/mariadb-test-data.lintian-overrides @@ -1,3 +1,25 @@ # These should be moved, see https://jira.mariadb.org/browse/MDEV-21654 arch-dependent-file-in-usr-share usr/share/mysql/mysql-test/suite/plugins/pam/pam_mariadb_mtr.so arch-independent-package-contains-binary-or-object usr/share/mysql/mysql-test/suite/plugins/pam/pam_mariadb_mtr.so +# Intentional for test files +national-encoding usr/share/mysql/mysql-test/* +# Extra test documentation files that really need to be kept in context in test directory +package-contains-documentation-outside-usr-share-doc usr/share/mysql/mysql-test/* +# Intentional directory structure +repeated-path-segment auth_gssapi usr/share/mysql/mysql-test/plugin/auth_gssapi/auth_gssapi/ +repeated-path-segment connect usr/share/mysql/mysql-test/plugin/connect/connect/ +repeated-path-segment disks usr/share/mysql/mysql-test/plugin/disks/disks/ +repeated-path-segment func_test usr/share/mysql/mysql-test/plugin/func_test/func_test/ +repeated-path-segment metadata_lock_info usr/share/mysql/mysql-test/plugin/metadata_lock_info/metadata_lock_info/ +repeated-path-segment mroonga usr/share/mysql/mysql-test/plugin/mroonga/mroonga/ +repeated-path-segment mroonga usr/share/mysql/mysql-test/plugin/mroonga/mroonga/include/mroonga/ +repeated-path-segment oqgraph usr/share/mysql/mysql-test/plugin/oqgraph/oqgraph/ +repeated-path-segment query_response_time usr/share/mysql/mysql-test/plugin/query_response_time/query_response_time/ +repeated-path-segment rocksdb usr/share/mysql/mysql-test/plugin/rocksdb/rocksdb/ +repeated-path-segment sequence usr/share/mysql/mysql-test/plugin/sequence/sequence/ +repeated-path-segment sphinx usr/share/mysql/mysql-test/plugin/sphinx/sphinx/ +repeated-path-segment spider usr/share/mysql/mysql-test/plugin/spider/spider/ +repeated-path-segment type_inet usr/share/mysql/mysql-test/plugin/type_inet/type_inet/ +repeated-path-segment type_test usr/share/mysql/mysql-test/plugin/type_test/type_test/ +repeated-path-segment user_variables usr/share/mysql/mysql-test/plugin/user_variables/user_variables/ +repeated-path-segment wsrep_info usr/share/mysql/mysql-test/plugin/wsrep_info/wsrep_info/ From 68f0a5d008a298f2897168d62c560396d552d568 Mon Sep 17 00:00:00 2001 From: Daniel Bartholomew Date: Fri, 20 May 2022 11:14:30 -0400 Subject: [PATCH 04/19] bump the VERSION --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index bffeddf780b..b229b7f95f7 100644 --- a/VERSION +++ b/VERSION @@ -1,4 +1,4 @@ MYSQL_VERSION_MAJOR=10 MYSQL_VERSION_MINOR=3 -MYSQL_VERSION_PATCH=35 +MYSQL_VERSION_PATCH=36 SERVER_MATURITY=stable From 8872ad44a737732c245c5ad3833e3fb79548864f Mon Sep 17 00:00:00 2001 From: Daniel Bartholomew Date: Fri, 20 May 2022 11:46:31 -0400 Subject: [PATCH 05/19] bump the VERSION --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index a1c118b88a8..eb444d84828 100644 --- a/VERSION +++ b/VERSION @@ -1,4 +1,4 @@ MYSQL_VERSION_MAJOR=10 MYSQL_VERSION_MINOR=4 -MYSQL_VERSION_PATCH=25 +MYSQL_VERSION_PATCH=26 SERVER_MATURITY=stable From ebc140a78e72e3afe812a0b391efe0e808654f8e Mon Sep 17 00:00:00 2001 From: Daniel Bartholomew Date: Fri, 20 May 2022 12:05:54 -0400 Subject: [PATCH 06/19] bump the VERSION --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index 98ae7ab3e4e..526e94ebc5d 100644 --- a/VERSION +++ b/VERSION @@ -1,4 +1,4 @@ MYSQL_VERSION_MAJOR=10 MYSQL_VERSION_MINOR=5 -MYSQL_VERSION_PATCH=16 +MYSQL_VERSION_PATCH=17 SERVER_MATURITY=stable From 55266b05bdf28535a3a975c9f9e1e2307f64f13b Mon Sep 17 00:00:00 2001 From: Daniel Bartholomew Date: Fri, 20 May 2022 12:31:26 -0400 Subject: [PATCH 07/19] bump the VERSION --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index 61106115ce1..3cd7498d552 100644 --- a/VERSION +++ b/VERSION @@ -1,4 +1,4 @@ MYSQL_VERSION_MAJOR=10 MYSQL_VERSION_MINOR=6 -MYSQL_VERSION_PATCH=8 +MYSQL_VERSION_PATCH=9 SERVER_MATURITY=stable From 6a67c33867839c0937946dbd6e3648528336a466 Mon Sep 17 00:00:00 2001 From: Daniel Bartholomew Date: Fri, 20 May 2022 12:57:28 -0400 Subject: [PATCH 08/19] bump the VERSION --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index f14fd53dad9..91f606347b6 100644 --- a/VERSION +++ b/VERSION @@ -1,4 +1,4 @@ MYSQL_VERSION_MAJOR=10 MYSQL_VERSION_MINOR=7 -MYSQL_VERSION_PATCH=4 +MYSQL_VERSION_PATCH=5 SERVER_MATURITY=stable From 2577ff2667dee3f5b0fd589c360e22b2fb555ee2 Mon Sep 17 00:00:00 2001 From: Masashi Tomooka Date: Sat, 21 May 2022 15:38:57 +0900 Subject: [PATCH 09/19] MDEV-28560 Deprecate spider_buffer_size The variable, spider_buffer_size, is used nowhere in the MariaDB Community Server. --- .../spider/r/variable_deprecation.result | 15 +++++++++++++++ .../mysql-test/spider/t/variable_deprecation.test | 9 +++++++++ storage/spider/spd_param.cc | 2 +- storage/spider/spd_table.cc | 2 ++ 4 files changed, 27 insertions(+), 1 deletion(-) diff --git a/storage/spider/mysql-test/spider/r/variable_deprecation.result b/storage/spider/mysql-test/spider/r/variable_deprecation.result index 4b52da3c996..6aba1e6f181 100644 --- a/storage/spider/mysql-test/spider/r/variable_deprecation.result +++ b/storage/spider/mysql-test/spider/r/variable_deprecation.result @@ -181,6 +181,21 @@ Warnings: Warning 1287 The table parameter 'crd_weight' is deprecated and will be removed in a future release DROP TABLE tbl_a; DROP TABLE tbl_b; +# MDEV-28560 Deprecate spider_buffer_size +SET spider_buffer_size = 1; +Warnings: +Warning 1287 '@@spider_buffer_size' is deprecated and will be removed in a future release +SHOW VARIABLES LIKE "spider_buffer_size"; +Variable_name Value +spider_buffer_size 1 +CREATE TABLE tbl_a (a INT) ENGINE=Spider COMMENT='bfz "1"'; +Warnings: +Warning 1287 The table parameter 'bfz' is deprecated and will be removed in a future release +CREATE TABLE tbl_b (a INT) ENGINE=Spider COMMENT='buffer_size "1"'; +Warnings: +Warning 1287 The table parameter 'buffer_size' is deprecated and will be removed in a future release +DROP TABLE tbl_a; +DROP TABLE tbl_b; DROP DATABASE auto_test_local; for master_1 for child2 diff --git a/storage/spider/mysql-test/spider/t/variable_deprecation.test b/storage/spider/mysql-test/spider/t/variable_deprecation.test index 63965cb38c4..1d2d6bfd77a 100644 --- a/storage/spider/mysql-test/spider/t/variable_deprecation.test +++ b/storage/spider/mysql-test/spider/t/variable_deprecation.test @@ -108,6 +108,15 @@ eval CREATE TABLE tbl_b (a INT) $MASTER_1_ENGINE COMMENT='crd_weight "1"'; DROP TABLE tbl_a; DROP TABLE tbl_b; +--echo # MDEV-28560 Deprecate spider_buffer_size +SET spider_buffer_size = 1; +SHOW VARIABLES LIKE "spider_buffer_size"; +eval CREATE TABLE tbl_a (a INT) $MASTER_1_ENGINE COMMENT='bfz "1"'; +eval CREATE TABLE tbl_b (a INT) $MASTER_1_ENGINE COMMENT='buffer_size "1"'; + +DROP TABLE tbl_a; +DROP TABLE tbl_b; + DROP DATABASE auto_test_local; --disable_query_log diff --git a/storage/spider/spd_param.cc b/storage/spider/spd_param.cc index 68b81cc0e3b..f4844c61653 100644 --- a/storage/spider/spd_param.cc +++ b/storage/spider/spd_param.cc @@ -1073,7 +1073,7 @@ int spider_param_bulk_update_size( */ static MYSQL_THDVAR_INT( buffer_size, /* name */ - PLUGIN_VAR_RQCMDARG, /* opt */ + PLUGIN_VAR_RQCMDARG | PLUGIN_VAR_DEPRECATED, /* opt */ "Buffer size", /* comment */ NULL, /* check */ spider_use_table_value_deprecated, /* update */ diff --git a/storage/spider/spd_table.cc b/storage/spider/spd_table.cc index f3c247dacec..f1039358dbd 100644 --- a/storage/spider/spd_table.cc +++ b/storage/spider/spd_table.cc @@ -2319,6 +2319,7 @@ int spider_parse_connect_info( #ifdef HA_CAN_BULK_ACCESS SPIDER_PARAM_INT_WITH_MAX("baf", bulk_access_free, 0, 1); #endif + SPIDER_PARAM_DEPRECATED_WARNING("bfz"); SPIDER_PARAM_INT("bfz", buffer_size, 0); #ifndef WITHOUT_SPIDER_BG_SEARCH SPIDER_PARAM_LONGLONG("bfr", bgs_first_read, 0); @@ -2547,6 +2548,7 @@ int spider_parse_connect_info( SPIDER_PARAM_LONG_LIST_WITH_MAX("use_hs_read", use_hs_reads, 0, 1); #endif SPIDER_PARAM_INT_WITH_MAX("casual_read", casual_read, 0, 63); + SPIDER_PARAM_DEPRECATED_WARNING("buffer_size"); SPIDER_PARAM_INT("buffer_size", buffer_size, 0); error_num = connect_string_parse.print_param_error(); goto error; From f0fa40efada3f46d76b735fa61e9f20cc9ce18fc Mon Sep 17 00:00:00 2001 From: Vladislav Vaintroub Date: Mon, 8 Nov 2021 18:48:19 +0100 Subject: [PATCH 10/19] MDEV-25785 Add support for OpenSSL 3.0 Summary of changes - MD_CTX_SIZE is increased - EVP_CIPHER_CTX_buf_noconst(ctx) does not work anymore, points to nobody knows where. The assumption made previously was that (since the function does not seem to be documented) was that it points to the last partial source block. Add own partial block buffer for NOPAD encryption instead - SECLEVEL in CipherString in openssl.cnf had been downgraded to 0, from 1, to make TLSv1.0 and TLSv1.1 possible (according to https://github.com/openssl/openssl/blob/openssl-3.0.0/NEWS.md even though the manual for SSL_CTX_get_security_level claims that it should not be necessary) - Workaround Ssl_cipher_list issue, it now returns TLSv1.3 ciphers, in addition to what was set in --ssl-cipher - ctx_buf buffer now must be aligned to 16 bytes with openssl( previously with WolfSSL only), ot crashes will happen - updated aes-t , to be better debuggable using function, rather than a huge multiline macro added test that does "nopad" encryption piece-wise, to test replacement of EVP_CIPHER_CTX_buf_noconst part of MDEV-28133 --- cmake/ssl.cmake | 8 ++ include/mysql/service_my_crypt.h | 2 +- include/ssl_compat.h | 3 +- mysql-test/lib/openssl.cnf | 2 +- mysql-test/main/ssl_cipher.result | 6 +- mysql-test/main/ssl_cipher.test | 2 +- mysys_ssl/my_crypt.cc | 46 ++++++----- unittest/mysys/aes-t.c | 123 ++++++++++++++++++++++-------- 8 files changed, 135 insertions(+), 57 deletions(-) diff --git a/cmake/ssl.cmake b/cmake/ssl.cmake index a6793cf3c55..f4c52c7eb1e 100644 --- a/cmake/ssl.cmake +++ b/cmake/ssl.cmake @@ -139,6 +139,13 @@ MACRO (MYSQL_CHECK_SSL) SET(SSL_INTERNAL_INCLUDE_DIRS "") SET(SSL_DEFINES "-DHAVE_OPENSSL") + # Silence "deprecated in OpenSSL 3.0" + IF((NOT OPENSSL_VERSION) # 3.0 not determined by older cmake + OR NOT(OPENSSL_VERSION VERSION_LESS "3.0.0")) + SET(SSL_DEFINES "${SSL_DEFINES} -DOPENSSL_API_COMPAT=0x10100000L") + SET(CMAKE_REQUIRED_DEFINITIONS -DOPENSSL_API_COMPAT=0x10100000L) + ENDIF() + SET(CMAKE_REQUIRED_INCLUDES ${OPENSSL_INCLUDE_DIR}) SET(CMAKE_REQUIRED_LIBRARIES ${SSL_LIBRARIES}) SET(CMAKE_REQUIRED_INCLUDES ${OPENSSL_INCLUDE_DIR}) @@ -152,6 +159,7 @@ MACRO (MYSQL_CHECK_SSL) HAVE_X509_check_host) SET(CMAKE_REQUIRED_INCLUDES) SET(CMAKE_REQUIRED_LIBRARIES) + SET(CMAKE_REQUIRED_DEFINITIONS) ELSE() IF(WITH_SSL STREQUAL "system") MESSAGE(FATAL_ERROR "Cannot find appropriate system libraries for SSL. Use WITH_SSL=bundled to enable SSL support") diff --git a/include/mysql/service_my_crypt.h b/include/mysql/service_my_crypt.h index 2a232117ca1..bb038aaa295 100644 --- a/include/mysql/service_my_crypt.h +++ b/include/mysql/service_my_crypt.h @@ -45,7 +45,7 @@ extern "C" { /* The max key length of all supported algorithms */ #define MY_AES_MAX_KEY_LENGTH 32 -#define MY_AES_CTX_SIZE 656 +#define MY_AES_CTX_SIZE 672 enum my_aes_mode { MY_AES_ECB, MY_AES_CBC diff --git a/include/ssl_compat.h b/include/ssl_compat.h index 8dc1225407e..6db1baab9b5 100644 --- a/include/ssl_compat.h +++ b/include/ssl_compat.h @@ -24,7 +24,7 @@ #define SSL_LIBRARY OpenSSL_version(OPENSSL_VERSION) #define ERR_remove_state(X) ERR_clear_error() #define EVP_CIPHER_CTX_SIZE 176 -#define EVP_MD_CTX_SIZE 48 +#define EVP_MD_CTX_SIZE 72 #undef EVP_MD_CTX_init #define EVP_MD_CTX_init(X) do { memset((X), 0, EVP_MD_CTX_SIZE); EVP_MD_CTX_reset(X); } while(0) #undef EVP_CIPHER_CTX_init @@ -77,7 +77,6 @@ #define DH_set0_pqg(D,P,Q,G) ((D)->p= (P), (D)->g= (G)) #endif -#define EVP_CIPHER_CTX_buf_noconst(ctx) ((ctx)->buf) #define EVP_CIPHER_CTX_encrypting(ctx) ((ctx)->encrypt) #define EVP_CIPHER_CTX_SIZE sizeof(EVP_CIPHER_CTX) diff --git a/mysql-test/lib/openssl.cnf b/mysql-test/lib/openssl.cnf index b9ab37ac3a1..7cd6f748af2 100644 --- a/mysql-test/lib/openssl.cnf +++ b/mysql-test/lib/openssl.cnf @@ -9,4 +9,4 @@ ssl_conf = ssl_section system_default = system_default_section [system_default_section] -CipherString = ALL:@SECLEVEL=1 +CipherString = ALL:@SECLEVEL=0 diff --git a/mysql-test/main/ssl_cipher.result b/mysql-test/main/ssl_cipher.result index 930d384eda9..66d817b7b41 100644 --- a/mysql-test/main/ssl_cipher.result +++ b/mysql-test/main/ssl_cipher.result @@ -61,8 +61,8 @@ connect ssl_con,localhost,root,,,,,SSL; SHOW STATUS LIKE 'Ssl_cipher'; Variable_name Value Ssl_cipher AES128-SHA -SHOW STATUS LIKE 'Ssl_cipher_list'; -Variable_name Value -Ssl_cipher_list AES128-SHA +SELECT VARIABLE_VALUE like '%AES128-SHA%' FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME='Ssl_cipher_list'; +VARIABLE_VALUE like '%AES128-SHA%' +1 disconnect ssl_con; connection default; diff --git a/mysql-test/main/ssl_cipher.test b/mysql-test/main/ssl_cipher.test index 36549d76d02..d4cdcffb276 100644 --- a/mysql-test/main/ssl_cipher.test +++ b/mysql-test/main/ssl_cipher.test @@ -98,6 +98,6 @@ let $restart_parameters=--ssl-cipher=AES128-SHA; source include/restart_mysqld.inc; connect (ssl_con,localhost,root,,,,,SSL); SHOW STATUS LIKE 'Ssl_cipher'; -SHOW STATUS LIKE 'Ssl_cipher_list'; +SELECT VARIABLE_VALUE like '%AES128-SHA%' FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME='Ssl_cipher_list'; disconnect ssl_con; connection default; diff --git a/mysys_ssl/my_crypt.cc b/mysys_ssl/my_crypt.cc index e512eee9066..4d7ebc7bd27 100644 --- a/mysys_ssl/my_crypt.cc +++ b/mysys_ssl/my_crypt.cc @@ -29,11 +29,7 @@ #include #include -#ifdef HAVE_WOLFSSL #define CTX_ALIGN 16 -#else -#define CTX_ALIGN 0 -#endif class MyCTX { @@ -100,8 +96,9 @@ class MyCTX_nopad : public MyCTX { public: const uchar *key; - uint klen, buf_len; + uint klen, source_tail_len; uchar oiv[MY_AES_BLOCK_SIZE]; + uchar source_tail[MY_AES_BLOCK_SIZE]; MyCTX_nopad() : MyCTX() { } ~MyCTX_nopad() { } @@ -112,7 +109,7 @@ public: compile_time_assert(MY_AES_CTX_SIZE >= sizeof(MyCTX_nopad)); this->key= key; this->klen= klen; - this->buf_len= 0; + this->source_tail_len= 0; if (ivlen) memcpy(oiv, iv, ivlen); DBUG_ASSERT(ivlen == 0 || ivlen == sizeof(oiv)); @@ -123,26 +120,41 @@ public: return res; } + /** Update last partial source block, stored in source_tail array. */ + void update_source_tail(const uchar* src, uint slen) + { + if (!slen) + return; + uint new_tail_len= (source_tail_len + slen) % MY_AES_BLOCK_SIZE; + if (new_tail_len) + { + if (slen + source_tail_len < MY_AES_BLOCK_SIZE) + { + memcpy(source_tail + source_tail_len, src, slen); + } + else + { + DBUG_ASSERT(slen > new_tail_len); + memcpy(source_tail, src + slen - new_tail_len, new_tail_len); + } + } + source_tail_len= new_tail_len; + } + int update(const uchar *src, uint slen, uchar *dst, uint *dlen) { - buf_len+= slen; + update_source_tail(src, slen); return MyCTX::update(src, slen, dst, dlen); } int finish(uchar *dst, uint *dlen) { - buf_len %= MY_AES_BLOCK_SIZE; - if (buf_len) + if (source_tail_len) { - uchar *buf= EVP_CIPHER_CTX_buf_noconst(ctx); /* Not much we can do, block ciphers cannot encrypt data that aren't a multiple of the block length. At least not without padding. Let's do something CTR-like for the last partial block. - - NOTE this assumes that there are only buf_len bytes in the buf. - If OpenSSL will change that, we'll need to change the implementation - of this class too. */ uchar mask[MY_AES_BLOCK_SIZE]; uint mlen; @@ -154,10 +166,10 @@ public: return rc; DBUG_ASSERT(mlen == sizeof(mask)); - for (uint i=0; i < buf_len; i++) - dst[i]= buf[i] ^ mask[i]; + for (uint i=0; i < source_tail_len; i++) + dst[i]= source_tail[i] ^ mask[i]; } - *dlen= buf_len; + *dlen= source_tail_len; return MY_AES_OK; } }; diff --git a/unittest/mysys/aes-t.c b/unittest/mysys/aes-t.c index 34704e06749..cbec2760941 100644 --- a/unittest/mysys/aes-t.c +++ b/unittest/mysys/aes-t.c @@ -21,27 +21,96 @@ #include #include -#define DO_TEST(mode, nopad, slen, fill, dlen, hash) \ - SKIP_BLOCK_IF(mode == 0xDEADBEAF, nopad ? 4 : 5, #mode " not supported") \ - { \ - memset(src, fill, src_len= slen); \ - ok(my_aes_crypt(mode, nopad | ENCRYPTION_FLAG_ENCRYPT, \ - src, src_len, dst, &dst_len, \ - key, sizeof(key), iv, sizeof(iv)) == MY_AES_OK, \ - "encrypt " #mode " %u %s", src_len, nopad ? "nopad" : "pad"); \ - if (!nopad) \ - ok (dst_len == my_aes_get_size(mode, src_len), "my_aes_get_size");\ - my_md5(md5, (char*)dst, dst_len); \ - ok(dst_len == dlen && memcmp(md5, hash, sizeof(md5)) == 0, "md5"); \ - ok(my_aes_crypt(mode, nopad | ENCRYPTION_FLAG_DECRYPT, \ - dst, dst_len, ddst, &ddst_len, \ - key, sizeof(key), iv, sizeof(iv)) == MY_AES_OK, \ - "decrypt " #mode " %u", dst_len); \ - ok(ddst_len == src_len && memcmp(src, ddst, src_len) == 0, "memcmp"); \ - } -#define DO_TEST_P(M,S,F,D,H) DO_TEST(M,0,S,F,D,H) -#define DO_TEST_N(M,S,F,D,H) DO_TEST(M,ENCRYPTION_FLAG_NOPAD,S,F,D,H) +/** Test streaming encryption, bytewise update.*/ +static int aes_crypt_bytewise(enum my_aes_mode mode, int flags, const unsigned char *src, + unsigned int slen, unsigned char *dst, unsigned int *dlen, + const unsigned char *key, unsigned int klen, + const unsigned char *iv, unsigned int ivlen) +{ + /* Allocate context on odd address on stack, in order to + catch misalignment errors.*/ + void *ctx= (char *)alloca(MY_AES_CTX_SIZE+1)+1; + + int res1, res2; + uint d1= 0, d2; + uint i; + + if ((res1= my_aes_crypt_init(ctx, mode, flags, key, klen, iv, ivlen))) + return res1; + for (i= 0; i < slen; i++) + { + uint tmp_d1=0; + res1= my_aes_crypt_update(ctx, src+i,1, dst, &tmp_d1); + if (res1) + return res1; + d1+= tmp_d1; + dst+= tmp_d1; + } + res2= my_aes_crypt_finish(ctx, dst, &d2); + *dlen= d1 + d2; + return res1 ? res1 : res2; +} + + +#ifndef HAVE_EncryptAes128Ctr +const uint MY_AES_CTR=0xDEADBEAF; +#endif +#ifndef HAVE_EncryptAes128Gcm +const uint MY_AES_GCM=0xDEADBEAF; +#endif + +#define MY_AES_UNSUPPORTED(x) (x == 0xDEADBEAF) + +static void do_test(uint mode, const char *mode_str, int nopad, uint slen, + char fill, size_t dlen, const char *hash) +{ + uchar key[16]= {1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6}; + uchar iv[16]= {2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7}; + uchar src[1000], dst[1100], dst2[1100], ddst[1000]; + uchar md5[MY_MD5_HASH_SIZE]; + uint src_len, dst_len, dst_len2, ddst_len; + int result; + + if (MY_AES_UNSUPPORTED(mode)) + { + skip(nopad?7:6, "%s not supported", mode_str); + return; + } + memset(src, fill, src_len= slen); + result= my_aes_crypt(mode, nopad | ENCRYPTION_FLAG_ENCRYPT, src, src_len, + dst, &dst_len, key, sizeof(key), iv, sizeof(iv)); + ok(result == MY_AES_OK, "encrypt %s %u %s", mode_str, src_len, + nopad ? "nopad" : "pad"); + + if (nopad) + { + result= aes_crypt_bytewise(mode, nopad | ENCRYPTION_FLAG_ENCRYPT, src, + src_len, dst2, &dst_len2, key, sizeof(key), + iv, sizeof(iv)); + ok(result == MY_AES_OK, "encrypt bytewise %s %u", mode_str, src_len); + /* Compare with non-bytewise encryption result*/ + ok(dst_len == dst_len2 && memcmp(dst, dst2, dst_len) == 0, + "memcmp bytewise %s %u", mode_str, src_len); + } + else + { + int dst_len_real= my_aes_get_size(mode, src_len); + ok(dst_len_real= dst_len, "my_aes_get_size"); + } + my_md5(md5, (char *) dst, dst_len); + ok(dst_len == dlen, "md5 len"); + ok(memcmp(md5, hash, sizeof(md5)) == 0, "md5"); + result= my_aes_crypt(mode, nopad | ENCRYPTION_FLAG_DECRYPT, + dst, dst_len, ddst, &ddst_len, key, sizeof(key), iv, + sizeof(iv)); + + ok(result == MY_AES_OK, "decrypt %s %u", mode_str, dst_len); + ok(ddst_len == src_len && memcmp(src, ddst, src_len) == 0, "memcmp"); +} + +#define DO_TEST_P(M, S, F, D, H) do_test(M, #M, 0, S, F, D, H) +#define DO_TEST_N(M, S, F, D, H) do_test(M, #M, ENCRYPTION_FLAG_NOPAD, S, F, D, H) /* useful macro for debugging */ #define PRINT_MD5() \ @@ -53,25 +122,15 @@ printf("\"\n"); \ } while(0); -#ifndef HAVE_EncryptAes128Ctr -const uint MY_AES_CTR=0xDEADBEAF; -#endif -#ifndef HAVE_EncryptAes128Gcm -const uint MY_AES_GCM=0xDEADBEAF; -#endif int main(int argc __attribute__((unused)),char *argv[]) { - uchar key[16]= {1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6}; - uchar iv[16]= {2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7}; - uchar src[1000], dst[1100], ddst[1000]; - uchar md5[MY_MD5_HASH_SIZE]; - uint src_len, dst_len, ddst_len; MY_INIT(argv[0]); - plan(87); + plan(122); + DO_TEST_P(MY_AES_ECB, 200, '.', 208, "\xd8\x73\x8e\x3a\xbc\x66\x99\x13\x7f\x90\x23\x52\xee\x97\x6f\x9a"); DO_TEST_P(MY_AES_ECB, 128, '?', 144, "\x19\x58\x33\x85\x4c\xaa\x7f\x06\xd1\xb2\xec\xd7\xb7\x6a\xa9\x5b"); DO_TEST_P(MY_AES_CBC, 159, '%', 160, "\x4b\x03\x18\x3d\xf1\xa7\xcd\xa1\x46\xb3\xc6\x8a\x92\xc0\x0f\xc9"); From 987d16a0b43c163264ab37d3e01795577f97d83b Mon Sep 17 00:00:00 2001 From: Oleksandr Byelkin Date: Fri, 4 Feb 2022 14:52:03 +0100 Subject: [PATCH 11/19] Revert "don't build with OpenSSL 3.0, it doesn't work before MDEV-25785" This reverts commit c9beef43154a199bfcd9f71049c011a2ed77ca74, because we have OpenSSL 3.0 support here. part of MDEV-28133 --- cmake/ssl.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmake/ssl.cmake b/cmake/ssl.cmake index f4c52c7eb1e..1bd46bc0f39 100644 --- a/cmake/ssl.cmake +++ b/cmake/ssl.cmake @@ -118,7 +118,7 @@ MACRO (MYSQL_CHECK_SSL) ENDIF() FIND_PACKAGE(OpenSSL) SET_PACKAGE_PROPERTIES(OpenSSL PROPERTIES TYPE RECOMMENDED) - IF(OPENSSL_FOUND AND OPENSSL_VERSION AND OPENSSL_VERSION VERSION_LESS "3.0.0") + IF(OPENSSL_FOUND) SET(OPENSSL_LIBRARY ${OPENSSL_SSL_LIBRARY}) INCLUDE(CheckSymbolExists) SET(SSL_SOURCES "") From 78412ab028509f07a801c9bf1f3792ad77bcfac6 Mon Sep 17 00:00:00 2001 From: Honza Horak Date: Tue, 8 Feb 2022 16:39:10 +0100 Subject: [PATCH 12/19] MDEV-27778 md5 in FIPS crashes with OpenSSL 3.0.0 OpenSSL 3.0.0+ does not support EVP_MD_CTX_FLAG_NON_FIPS_ALLOW any longer. In OpenSSL 1.1.1 the non FIPS allowed flag is context specific, while in 3.0.0+ it is a different EVP_MD provider. Fixes #2010 part of MDEV-28133 --- mysys_ssl/my_md5.cc | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/mysys_ssl/my_md5.cc b/mysys_ssl/my_md5.cc index 407dee3bc69..75995bccf90 100644 --- a/mysys_ssl/my_md5.cc +++ b/mysys_ssl/my_md5.cc @@ -52,12 +52,23 @@ static void md5_result(EVP_MD_CTX *context, uchar digest[MD5_HASH_SIZE]) static void md5_init(EVP_MD_CTX *context) { +#if OPENSSL_VERSION_NUMBER >= 0x30000000L + EVP_MD *md5; + EVP_MD_CTX_init(context); + /* Ok to ignore FIPS: MD5 is not used for crypto here */ + /* In OpenSSL 3.0.0+ it is a different EVP_MD provider */ + md5 = EVP_MD_fetch(NULL, "MD5", "fips=no"); + EVP_DigestInit_ex(context, md5, NULL); + EVP_MD_free(md5); +#else EVP_MD_CTX_init(context); #ifdef EVP_MD_CTX_FLAG_NON_FIPS_ALLOW /* Ok to ignore FIPS: MD5 is not used for crypto here */ + /* In OpenSSL 1.1.1 the non FIPS allowed flag is context specific */ EVP_MD_CTX_set_flags(context, EVP_MD_CTX_FLAG_NON_FIPS_ALLOW); #endif EVP_DigestInit_ex(context, EVP_md5(), NULL); +#endif } static void md5_input(EVP_MD_CTX *context, const uchar *buf, unsigned len) From babb803222d4a5d5a3256720c59d056cc8ba7dc3 Mon Sep 17 00:00:00 2001 From: Vladislav Vaintroub Date: Mon, 23 May 2022 14:38:56 +0200 Subject: [PATCH 13/19] MDEV-28648 main.ssl_timeout fails with OpenSSL 3.0.3 Depending on OpenSSL version, and at least in 3.0.3, the client-side socket timeout is reported as generic error (SSL_ERROR_SYSCALL), losing further details (both errno and GetLastError() return 0). This results in client reporting "Unknown OpenSSL error" 2026, instead of another generic "Lost connection to server during query" 2013 Adjusted test case. --- mysql-test/main/ssl_timeout.result | 2 +- mysql-test/main/ssl_timeout.test | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/mysql-test/main/ssl_timeout.result b/mysql-test/main/ssl_timeout.result index e0d1dbed69f..208be527a6b 100644 --- a/mysql-test/main/ssl_timeout.result +++ b/mysql-test/main/ssl_timeout.result @@ -5,6 +5,6 @@ SELECT (VARIABLE_VALUE <> '') AS have_ssl FROM INFORMATION_SCHEMA.SESSION_STATUS have_ssl 1 SELECT SLEEP(600); -ERROR HY000: Lost connection to server during query +Got one of the listed errors connection default; disconnect ssl_con; diff --git a/mysql-test/main/ssl_timeout.test b/mysql-test/main/ssl_timeout.test index 430fe7130de..f5965f874ff 100644 --- a/mysql-test/main/ssl_timeout.test +++ b/mysql-test/main/ssl_timeout.test @@ -10,7 +10,7 @@ connect (ssl_con,localhost,root,,,,,SSL read_timeout=5); SELECT (VARIABLE_VALUE <> '') AS have_ssl FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME='Ssl_cipher'; # --error CR_SERVER_LOST ---error 2013 +--error 2013,2026 SELECT SLEEP(600); connection default; From 3dd3dccb8e58053d063cb5a2299bf3964fa999cc Mon Sep 17 00:00:00 2001 From: Tingyao Nian Date: Tue, 10 May 2022 00:04:10 +0000 Subject: [PATCH 14/19] MDEV-22023 Update man pages titles to say MariaDB instead of MySQL When reading the man page of e.g. 'mysql' on a system with MariaDB installed one would actually see the man page of 'mariadb'. However the man page had no indication of the page being for 'mariadb', which was confusing for users. Fix this by updating the man page title lines to use mariadb-* instead of mysql* for MariaDB binaries that are drop-in replacements for MySQL equivalents, indicating that the commands are actually of the MariaDB version. In long term, all the commands in man pages should be replaced by their MariaDB counterparts. Update the title lines as a start, and only those that exist as symlinks to their MariaDB counterparts. Before: man mariadb-upgrade | head -n 1 MYSQL_UPGRADE(1) ... After: man mariadb-upgrade | head -n 1 MARIADB-UPGRADE(1) ... All new code of the whole pull request, including one or several files that are either new files or modified ones, are contributed under the BSD-new license. I am contributing on behalf of my employer Amazon Web Services, Inc. --- man/mysql.1 | 2 +- man/mysql_client_test.1 | 2 +- man/mysql_convert_table_format.1 | 2 +- man/mysql_find_rows.1 | 2 +- man/mysql_fix_extensions.1 | 2 +- man/mysql_install_db.1 | 2 +- man/mysql_ldb.1 | 2 +- man/mysql_plugin.1 | 2 +- man/mysql_secure_installation.1 | 2 +- man/mysql_setpermission.1 | 2 +- man/mysql_tzinfo_to_sql.1 | 2 +- man/mysql_upgrade.1 | 2 +- man/mysql_waitpid.1 | 2 +- man/mysqlaccess.1 | 2 +- man/mysqladmin.1 | 2 +- man/mysqlbinlog.1 | 2 +- man/mysqlcheck.1 | 2 +- man/mysqld.8 | 2 +- man/mysqld_multi.1 | 2 +- man/mysqld_safe.1 | 2 +- man/mysqld_safe_helper.1 | 2 +- man/mysqldump.1 | 2 +- man/mysqldumpslow.1 | 2 +- man/mysqlhotcopy.1 | 2 +- man/mysqlimport.1 | 2 +- man/mysqlshow.1 | 2 +- man/mysqlslap.1 | 2 +- man/mysqltest.1 | 2 +- 28 files changed, 28 insertions(+), 28 deletions(-) diff --git a/man/mysql.1 b/man/mysql.1 index 65c87e48179..0d83b89a0ab 100644 --- a/man/mysql.1 +++ b/man/mysql.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMYSQL\FR" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" +.TH "\FBMARIADB\FR" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysql_client_test.1 b/man/mysql_client_test.1 index 78484cef062..768217cada7 100644 --- a/man/mysql_client_test.1 +++ b/man/mysql_client_test.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMYSQL_CLIENT_TEST" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" +.TH "\FBMARIADB-CLIENT-TEST" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysql_convert_table_format.1 b/man/mysql_convert_table_format.1 index faa35afbe56..0cffaf0dd2c 100644 --- a/man/mysql_convert_table_format.1 +++ b/man/mysql_convert_table_format.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMYSQL_CONVERT_TAB" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" +.TH "\FBMARIADB-CONVERT-TAB" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysql_find_rows.1 b/man/mysql_find_rows.1 index b00819a6954..7dfe0509ed4 100644 --- a/man/mysql_find_rows.1 +++ b/man/mysql_find_rows.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMYSQL_FIND_ROWS\F" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" +.TH "\FBMARIADB-FIND-ROWS\F" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysql_fix_extensions.1 b/man/mysql_fix_extensions.1 index 152ea99948f..85406576f5d 100644 --- a/man/mysql_fix_extensions.1 +++ b/man/mysql_fix_extensions.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMYSQL_FIX_EXTENSI" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" +.TH "\FBMARIADB-FIX-EXTENSI" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysql_install_db.1 b/man/mysql_install_db.1 index 6ab81344de9..632a2e204f0 100644 --- a/man/mysql_install_db.1 +++ b/man/mysql_install_db.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMYSQL_INSTALL_DB\FR" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" +.TH "\FBMARIADB-INSTALL-DB\FR" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysql_ldb.1 b/man/mysql_ldb.1 index d2fa02a6318..f8859e259c7 100644 --- a/man/mysql_ldb.1 +++ b/man/mysql_ldb.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMYSQL_LDB\FR" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" +.TH "\FBMARIADB-LDB\FR" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysql_plugin.1 b/man/mysql_plugin.1 index 856b127c4cc..5001e542c38 100644 --- a/man/mysql_plugin.1 +++ b/man/mysql_plugin.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMYSQL_PLUGIN\FR" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" +.TH "\FBMARIADB-PLUGIN\FR" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff --git a/man/mysql_secure_installation.1 b/man/mysql_secure_installation.1 index 871a833b46f..fc07f0d98cf 100644 --- a/man/mysql_secure_installation.1 +++ b/man/mysql_secure_installation.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMYSQL_SECURE_INST" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" +.TH "\FBMARIADB-SECURE-INST" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysql_setpermission.1 b/man/mysql_setpermission.1 index f2f5e3e039c..58cf1927a35 100644 --- a/man/mysql_setpermission.1 +++ b/man/mysql_setpermission.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMYSQL_SETPERMISSI" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" +.TH "\FBMARIADB-SETPERMISSI" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysql_tzinfo_to_sql.1 b/man/mysql_tzinfo_to_sql.1 index 5c6e377ad4c..732fbe4f868 100644 --- a/man/mysql_tzinfo_to_sql.1 +++ b/man/mysql_tzinfo_to_sql.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMYSQL_TZINFO_TO_S" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" +.TH "\FBMARIADB-TZINFO-TO-S" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysql_upgrade.1 b/man/mysql_upgrade.1 index 3962d2f43c9..fa46d792505 100644 --- a/man/mysql_upgrade.1 +++ b/man/mysql_upgrade.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMYSQL_UPGRADE\FR" "1" "20 July 2020" "MariaDB 10\&.5" "MariaDB Database System" +.TH "\FBMARIADB-UPGRADE\FR" "1" "20 July 2020" "MariaDB 10\&.5" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysql_waitpid.1 b/man/mysql_waitpid.1 index b77b8729764..5fb4c403b1c 100644 --- a/man/mysql_waitpid.1 +++ b/man/mysql_waitpid.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMYSQL_WAITPID\FR" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" +.TH "\FBMARIADB-WAITPID\FR" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysqlaccess.1 b/man/mysqlaccess.1 index 34894cf0760..0f0a5baea39 100644 --- a/man/mysqlaccess.1 +++ b/man/mysqlaccess.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMYSQLACCESS\FR" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" +.TH "\FBMARIADB-ACCESS\FR" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysqladmin.1 b/man/mysqladmin.1 index 5f7ad066084..fb458af1d47 100644 --- a/man/mysqladmin.1 +++ b/man/mysqladmin.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMYSQLADMIN\FR" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" +.TH "\FBMARIADB-ADMIN\FR" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysqlbinlog.1 b/man/mysqlbinlog.1 index 42eb1b38272..cd6d1616b4d 100644 --- a/man/mysqlbinlog.1 +++ b/man/mysqlbinlog.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMYSQLBINLOG\FR" "1" "14 April 2021" "MariaDB 10\&.5" "MariaDB Database System" +.TH "\FBMARIADB-BINLOG\FR" "1" "14 April 2021" "MariaDB 10\&.5" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysqlcheck.1 b/man/mysqlcheck.1 index 7415082b478..39d4f119563 100644 --- a/man/mysqlcheck.1 +++ b/man/mysqlcheck.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMYSQLCHECK\FR" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" +.TH "\FBMARIADB-CHECK\FR" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysqld.8 b/man/mysqld.8 index 67daad786a3..6889e042e98 100644 --- a/man/mysqld.8 +++ b/man/mysqld.8 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMYSQLD\FR" "8" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" +.TH "\FBMARIADBD\FR" "8" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysqld_multi.1 b/man/mysqld_multi.1 index 7f1572e1352..4b63dd7caf8 100644 --- a/man/mysqld_multi.1 +++ b/man/mysqld_multi.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMYSQLD_MULTI\FR" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" +.TH "\FBMARIADB-MULTI\FR" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysqld_safe.1 b/man/mysqld_safe.1 index 5f824dc96f2..80b8274bf67 100644 --- a/man/mysqld_safe.1 +++ b/man/mysqld_safe.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMYSQLD_SAFE\FR" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" +.TH "\FBMARIADB-SAFE\FR" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysqld_safe_helper.1 b/man/mysqld_safe_helper.1 index 23d932a94cc..fd45258cb68 100644 --- a/man/mysqld_safe_helper.1 +++ b/man/mysqld_safe_helper.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMYSQLD_SAFE_HELPER\FR" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" +.TH "\FBMARIADB-SAFE-HELPER\FR" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysqldump.1 b/man/mysqldump.1 index e942b10cdc5..705d88bbd20 100644 --- a/man/mysqldump.1 +++ b/man/mysqldump.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMYSQLDUMP\FR" "1" "24 October 2020" "MariaDB 10\&.5" "MariaDB Database System" +.TH "\FBMARIADB-DUMP\FR" "1" "24 October 2020" "MariaDB 10\&.5" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysqldumpslow.1 b/man/mysqldumpslow.1 index 13018c4850e..b1d03ed474d 100644 --- a/man/mysqldumpslow.1 +++ b/man/mysqldumpslow.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMYSQLDUMPSLOW\FR" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" +.TH "\FBMARIADB-DUMPSLOW\FR" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysqlhotcopy.1 b/man/mysqlhotcopy.1 index 98d14caa7dd..224896f7347 100644 --- a/man/mysqlhotcopy.1 +++ b/man/mysqlhotcopy.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMYSQLHOTCOPY\FR" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" +.TH "\FBMARIADB-HOTCOPY\FR" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysqlimport.1 b/man/mysqlimport.1 index 29dbb9cbc49..7916da98a6e 100644 --- a/man/mysqlimport.1 +++ b/man/mysqlimport.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMYSQLIMPORT\FR" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" +.TH "\FBMARIADB-IMPORT\FR" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysqlshow.1 b/man/mysqlshow.1 index 4fc35d966fa..974f1249a07 100644 --- a/man/mysqlshow.1 +++ b/man/mysqlshow.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMYSQLSHOW\FR" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" +.TH "\FBMARIADB-SHOW\FR" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysqlslap.1 b/man/mysqlslap.1 index 7cca703b0d5..dceffba418f 100644 --- a/man/mysqlslap.1 +++ b/man/mysqlslap.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMYSQLSLAP\FR" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" +.TH "\FBMARIADB-SLAP\FR" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysqltest.1 b/man/mysqltest.1 index 4aa3efda8e1..8586d50926e 100644 --- a/man/mysqltest.1 +++ b/man/mysqltest.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMYSQLTEST\FR" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" +.TH "\FBMARIADB-TEST\FR" "1" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- From 99566fc89429481797f4aea3f011545c7b3bb417 Mon Sep 17 00:00:00 2001 From: Norio Akagi Date: Mon, 9 May 2022 21:08:33 -0700 Subject: [PATCH 15/19] MDEV-27892 Improve an error message for foreign server exists Improve and add more languages for the ERROR 1476: Foreign Server already exists. --- mysql-test/main/create_drop_binlog.result | 2 +- mysql-test/main/create_drop_server.result | 6 +++--- sql/share/errmsg-utf8.txt | 18 +++++++++++++++--- 3 files changed, 19 insertions(+), 7 deletions(-) diff --git a/mysql-test/main/create_drop_binlog.result b/mysql-test/main/create_drop_binlog.result index 4a8c75a3dae..30ccc116a85 100644 --- a/mysql-test/main/create_drop_binlog.result +++ b/mysql-test/main/create_drop_binlog.result @@ -142,7 +142,7 @@ DROP SERVER s1; CREATE SERVER IF NOT EXISTS s1 FOREIGN DATA WRAPPER mysql OPTIONS (USER 'root', HOST 'localhost', DATABASE 'test'); CREATE SERVER IF NOT EXISTS s1 FOREIGN DATA WRAPPER mysql OPTIONS (USER 'root', HOST 'localhost', DATABASE 'test'); Warnings: -Note 1476 The foreign server, s1, you are trying to create already exists +Note 1476 Cannot create foreign server 's1' as it already exists DROP SERVER IF EXISTS s1; DROP SERVER IF EXISTS s1; SHOW BINLOG EVENTS; diff --git a/mysql-test/main/create_drop_server.result b/mysql-test/main/create_drop_server.result index 4f5d13b3541..dc3c5eefbf8 100644 --- a/mysql-test/main/create_drop_server.result +++ b/mysql-test/main/create_drop_server.result @@ -7,7 +7,7 @@ server_name username db server1 user1 test0 CREATE SERVER IF NOT EXISTS server1 FOREIGN DATA WRAPPER mysql OPTIONS (USER 'user2', HOST 'localhost', DATABASE 'test1'); Warnings: -Note 1476 The foreign server, server1, you are trying to create already exists +Note 1476 Cannot create foreign server 'server1' as it already exists SELECT server_name, username, db FROM mysql.servers; server_name username db server1 user1 test0 @@ -21,10 +21,10 @@ server_name username db DROP SERVER IF EXISTS server1; CREATE SERVER server_1 FOREIGN DATA WRAPPER mysql OPTIONS (USER 'mysqltest_1', HOST 'localhost', DATABASE 'test0'); CREATE SERVER server_1 FOREIGN DATA WRAPPER mysql OPTIONS (USER 'mysqltest_1', HOST 'localhost', DATABASE 'test1'); -ERROR HY000: The foreign server, server_1, you are trying to create already exists +ERROR HY000: Cannot create foreign server 'server_1' as it already exists CREATE SERVER IF NOT EXISTS server_1 FOREIGN DATA WRAPPER mysql OPTIONS (USER 'mysqltest_1', HOST 'localhost', DATABASE 'test2'); Warnings: -Note 1476 The foreign server, server_1, you are trying to create already exists +Note 1476 Cannot create foreign server 'server_1' as it already exists SELECT server_name, username, db FROM mysql.servers; server_name username db server_1 mysqltest_1 test0 diff --git a/sql/share/errmsg-utf8.txt b/sql/share/errmsg-utf8.txt index 9b16247784f..11b9775a4f9 100644 --- a/sql/share/errmsg-utf8.txt +++ b/sql/share/errmsg-utf8.txt @@ -6257,9 +6257,21 @@ ER_AMBIGUOUS_FIELD_TERM eng "First character of the FIELDS TERMINATED string is ambiguous; please use non-optional and non-empty FIELDS ENCLOSED BY" ger "Das erste Zeichen der Zeichenkette FIELDS TERMINATED ist mehrdeutig; bitte benutzen Sie nicht optionale und nicht leere FIELDS ENCLOSED BY" ER_FOREIGN_SERVER_EXISTS - chi "您正在尝试创建的外来服务器%s已存在" - eng "The foreign server, %s, you are trying to create already exists" - ger "Der entfernte Server %s, den Sie versuchen zu erzeugen, existiert schon" + chi "无法创建外部服务器'%s',因为它已经存在" + eng "Cannot create foreign server '%s' as it already exists" + fin "Vieraata palvelinta '%s' ei voida luoda, koska se on jo olemassa" + fre "Impossible de créer le serveur étranger '%s' car il existe déjà" + ger "Der auswärtige Server '%s' kann nicht erstellt werden, da er bereits vorhanden ist" + greek "Δεν είναι δυνατή η δημιουργία ξένου διακομιστή '%s' επειδή υπάρχει ήδη" + ita "Impossibile creare il server esterno '%s' poiché esiste già" + jpn "外部サーバー '%s'は既に存在するため、作成できません" + nla "Kan geen externe server '%s' maken omdat deze al bestaat" + nor "Kan ikke opprette utenlandsk server '%s' fordi den allerede eksisterer" + pol "Nie można utworzyć obcego serwera '%s', ponieważ już istnieje" + por "Não foi possível criar o servidor externo '%s' porque ele já existe" + rus "Невозможно создать сторонний сервер '%s', так как он уже существует" + spa "No se puede crear el servidor externo '%s' porque ya existe" + swe "Det gick inte att skapa främmande server '%s' eftersom den redan finns" ER_FOREIGN_SERVER_DOESNT_EXIST chi "您尝试引用的外部服务器名称不存在。数据源错误:%-.64s" eng "The foreign server name you are trying to reference does not exist. Data source error: %-.64s" From 443590406caf2b547e5697708c216ee52011b890 Mon Sep 17 00:00:00 2001 From: Tuukka Pasanen Date: Wed, 11 May 2022 11:45:57 +0300 Subject: [PATCH 16/19] MDEV-28376: Make sure available Perl MariaDB DBI driver is chosen Commit introduces automatic detection which supported Perl MariaDB DBI driver is available: * DBD::mysql * DBD::MariaDB If nothing is then bail out and die Current Detection prefers Perl DBD:MariaDB driver. This is mainly for older Linux distros or Windows which does not have Perl DBD:MariaDB packaged or does not want to use Perl cpan command. --- debian/additions/mariadb-report | 62 ++++++++++++++++++++++++--------- 1 file changed, 46 insertions(+), 16 deletions(-) diff --git a/debian/additions/mariadb-report b/debian/additions/mariadb-report index 48ee7bf8f53..665add394ca 100755 --- a/debian/additions/mariadb-report +++ b/debian/additions/mariadb-report @@ -240,26 +240,56 @@ sub get_user_mycnf sub connect_to_MySQL { - print "connect_to_MySQL\n" if $op{debug}; + print "connect_to_MySQL\n" if $op{debug}; - my $dsn; + if(my @driverList = grep {/mariadb|mysql/i} DBI->available_drivers()) { + my $dsn; + my $driver = undef; - if($mycnf{'socket'} && -S $mycnf{'socket'}) - { - $dsn = "DBI:MariaDB:mariadb_socket=$mycnf{socket}"; - } - elsif($mycnf{'host'}) - { - $dsn = "DBI:MariaDB:host=$mycnf{host}" . ($mycnf{port} ? ";port=$mycnf{port}" : ""); - } - else - { - $dsn = "DBI:MariaDB:host=localhost"; - } + if(grep {/mariadb/i} @driverList) + { + $driver = "DBI:MariaDB"; + } + elsif(grep {/mysql/i} @driverList) + { + $driver = "DBI:mysql"; + } - print "connect_to_MySQL: DBI DSN: $dsn\n" if $op{debug}; + if($mycnf{'socket'} && -S $mycnf{'socket'}) + { + if(grep {/mariadb/i} @driverList) + { + $dsn = $driver . ":mariadb_socket=$mycnf{socket}"; + } + elsif(grep {/mysql/i} @driverList) + { + $dsn = $driver . ":mysql_socket=$mycnf{socket}"; + } + } + elsif($mycnf{'host'}) + { + $dsn = $driver . ":host=$mycnf{host}" . ($mycnf{port} ? ";port=$mycnf{port}" : ""); + } + else + { + $dsn = $driver . ":host=localhost"; + } - $dbh = DBI->connect($dsn, $mycnf{'user'}, $mycnf{'pass'}) or die; + print "connect_to_MySQL: DBI DSN: " . $dsn . "\n" if $op{debug}; + + $dbh = DBI->connect($dsn, $mycnf{'user'}, $mycnf{'pass'}) or die; + } + else + { + print STDERR "Install Perl 5.x driver: DBD:mysql or DBD:MariaDB\n"; + print STDERR "currently installed Perl DBD drivers:\n"; + foreach my $driver (DBI->available_drivers()) + { + print STDERR " * " . $driver . "\n"; + } + print STDERR "\n"; + die("Exit as no MariaDB DBI driver found!\n"); + } } sub collect_reports From 0d9aba05ec6dd87fadbbca31aa1c0f3f4ee2b468 Mon Sep 17 00:00:00 2001 From: Daniel Black Date: Tue, 24 May 2022 08:54:14 +1000 Subject: [PATCH 17/19] MDEV-28153: Debian autobake to get control (postfix) The debian/mariabd-plugin-columnstore.install should not have been committed. It was removed on other branches, just 10.6 was missed. This prevented packages being built because the debain/control wasn't populated. --- debian/mariadb-plugin-columnstore.install | 119 ---------------------- 1 file changed, 119 deletions(-) delete mode 100644 debian/mariadb-plugin-columnstore.install diff --git a/debian/mariadb-plugin-columnstore.install b/debian/mariadb-plugin-columnstore.install deleted file mode 100644 index 39f4e8c7279..00000000000 --- a/debian/mariadb-plugin-columnstore.install +++ /dev/null @@ -1,119 +0,0 @@ -etc/columnstore/Columnstore.xml -etc/columnstore/ErrorMessage.txt -etc/columnstore/MessageFile.txt -etc/columnstore/storagemanager.cnf -etc/mysql/mariadb.conf.d/columnstore.cnf -usr/bin/mcsRebuildEM -usr/bin/DDLProc -usr/bin/DMLProc -usr/bin/ExeMgr -usr/bin/PrimProc -usr/bin/StorageManager -usr/bin/WriteEngineServer -usr/bin/clearShm -usr/bin/cleartablelock -usr/bin/columnstore-post-install -usr/bin/columnstore-pre-uninstall -usr/bin/columnstoreDBWrite -usr/bin/columnstoreSyslogSetup.sh -usr/bin/columnstore_run.sh -usr/bin/colxml -usr/bin/controllernode -usr/bin/cpimport -usr/bin/cpimport.bin -usr/bin/cplogger -usr/bin/cspasswd -usr/bin/cskeys -usr/bin/dbbuilder -usr/bin/dbrmctl -usr/bin/ddlcleanup -usr/bin/editem -usr/bin/idbmeminfo -usr/bin/load_brm -usr/bin/mariadb-columnstore-start.sh -usr/bin/mariadb-columnstore-stop.sh -usr/bin/mcs-savebrm.py -usr/bin/mcs-loadbrm.py -usr/bin/mcs-stop-controllernode.sh -usr/bin/mcsGetConfig -usr/bin/mcsSetConfig -usr/bin/mycnfUpgrade -usr/bin/post-mysql-install -usr/bin/post-mysqld-install -usr/bin/reset_locks -usr/bin/rollback -usr/bin/save_brm -usr/bin/smcat -usr/bin/smls -usr/bin/smput -usr/bin/smrm -usr/bin/testS3Connection -usr/bin/viewtablelock -usr/bin/workernode -usr/lib/*/libbatchloader.so -usr/lib/*/libbrm.so -usr/lib/*/libcacheutils.so -usr/lib/*/libcloudio.so -usr/lib/*/libcommon.so -usr/lib/*/libcompress.so -usr/lib/*/libconfigcpp.so -usr/lib/*/libdataconvert.so -usr/lib/*/libddlcleanuputil.so -usr/lib/*/libddlpackage.so -usr/lib/*/libddlpackageproc.so -usr/lib/*/libdmlpackage.so -usr/lib/*/libdmlpackageproc.so -usr/lib/*/libexecplan.so -usr/lib/*/libfuncexp.so -usr/lib/*/libidbdatafile.so -usr/lib/*/libjoblist.so -usr/lib/*/libjoiner.so -usr/lib/*/liblibmysql_client.so -usr/lib/*/libloggingcpp.so -usr/lib/*/libmarias3.so -usr/lib/*/libmessageqcpp.so -usr/lib/*/liboamcpp.so -usr/lib/*/libquerystats.so -usr/lib/*/libquerytele.so -usr/lib/*/libregr.so -usr/lib/*/librowgroup.so -usr/lib/*/librwlock.so -usr/lib/*/libstoragemanager.so -usr/lib/*/libthreadpool.so -usr/lib/*/libthrift.so -usr/lib/*/libudfsdk.so -usr/lib/*/libwindowfunction.so -usr/lib/*/libwriteengine.so -usr/lib/*/libwriteengineclient.so -usr/lib/*/libwriteengineredistribute.so -usr/lib/*/libdatatypes.so -usr/lib/mysql/plugin/ha_columnstore.so -usr/lib/mysql/plugin/libregr_mysql.so -usr/lib/mysql/plugin/libudf_mysql.so -usr/sbin/install_mcs_mysql.sh -usr/share/columnstore/calremoveuserpriority.sql -usr/share/columnstore/calsetuserpriority.sql -usr/share/columnstore/calshowprocesslist.sql -usr/share/columnstore/columnstoreAlias -usr/share/columnstore/columnstoreLogRotate -usr/share/columnstore/columnstoreSyslog -usr/share/columnstore/columnstoreSyslog-ng -usr/share/columnstore/columnstoreSyslog7 -usr/share/columnstore/columnstore_info.sql -usr/share/columnstore/dumpcat_mysql.sql -usr/share/columnstore/gitversionEngine -usr/share/columnstore/mariadb-columnstore.service -usr/share/columnstore/mcs-controllernode.service -usr/share/columnstore/mcs-ddlproc.service -usr/share/columnstore/mcs-dmlproc.service -usr/share/columnstore/mcs-exemgr.service -usr/share/columnstore/mcs-loadbrm.service -usr/share/columnstore/mcs-primproc.service -usr/share/columnstore/mcs-storagemanager.service -usr/share/columnstore/mcs-workernode.service -usr/share/columnstore/mcs-writeengineserver.service -usr/share/columnstore/myCnf-exclude-args.text -usr/share/columnstore/myCnf-include-args.text -usr/share/columnstore/releasenum -usr/share/columnstore/syscatalog_mysql.sql -var/lib/columnstore/local/module From 571a8f4a086470d5cf6fc4ccd3ec755ee67f87d7 Mon Sep 17 00:00:00 2001 From: Norio Akagi Date: Mon, 9 May 2022 21:08:33 -0700 Subject: [PATCH 18/19] MDEV-27892 Improve an error message for foreign server exists (backport) Improve and add more languages for the ERROR 1476: Foreign Server already exists. --- mysql-test/main/ps_missed_cmds.result | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mysql-test/main/ps_missed_cmds.result b/mysql-test/main/ps_missed_cmds.result index 1d996141adf..d1a15f5504b 100644 --- a/mysql-test/main/ps_missed_cmds.result +++ b/mysql-test/main/ps_missed_cmds.result @@ -694,7 +694,7 @@ EXECUTE stmt_1; # results in emitting the error ER_FOREIGN_SERVER_EXISTS # since a server with same has just been created. EXECUTE stmt_1; -ERROR HY000: The foreign server, s, you are trying to create already exists +ERROR HY000: Cannot create foreign server 's' as it already exists EXECUTE stmt_2; # Execute the same prepared statement the second time to check that # no internal structures used for handling the 'ALTER SERVER' statement From 61727fa40f914370e843ff89a76eba7ef785c5fe Mon Sep 17 00:00:00 2001 From: Daniel Black Date: Tue, 24 May 2022 17:11:01 +1000 Subject: [PATCH 19/19] man: adjust major version to 10.7 --- man/mysql-stress-test.pl.1 | 2 +- man/mysql-test-run.pl.1 | 2 +- man/mysql.1 | 2 +- man/mysql.server.1 | 2 +- man/mysql_client_test.1 | 2 +- man/mysql_config.1 | 2 +- man/mysql_convert_table_format.1 | 2 +- man/mysql_find_rows.1 | 2 +- man/mysql_fix_extensions.1 | 2 +- man/mysql_install_db.1 | 2 +- man/mysql_ldb.1 | 2 +- man/mysql_plugin.1 | 2 +- man/mysql_secure_installation.1 | 2 +- man/mysql_setpermission.1 | 2 +- man/mysql_tzinfo_to_sql.1 | 2 +- man/mysql_upgrade.1 | 2 +- man/mysql_waitpid.1 | 2 +- man/mysqlaccess.1 | 2 +- man/mysqladmin.1 | 2 +- man/mysqlbinlog.1 | 2 +- man/mysqlcheck.1 | 2 +- man/mysqld.8 | 6 +----- man/mysqld_multi.1 | 2 +- man/mysqld_safe.1 | 2 +- man/mysqld_safe_helper.1 | 2 +- man/mysqldump.1 | 2 +- man/mysqldumpslow.1 | 2 +- man/mysqlhotcopy.1 | 2 +- man/mysqlimport.1 | 2 +- man/mysqlshow.1 | 2 +- man/mysqlslap.1 | 2 +- man/mysqltest.1 | 2 +- 32 files changed, 32 insertions(+), 36 deletions(-) diff --git a/man/mysql-stress-test.pl.1 b/man/mysql-stress-test.pl.1 index d69f6123488..a55c5a652a3 100644 --- a/man/mysql-stress-test.pl.1 +++ b/man/mysql-stress-test.pl.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMYSQL\-STRESS\-TE" "1" "15 May 2020" "MariaDB 10\&.6" "MariaDB Database System" +.TH "\FBMYSQL\-STRESS\-TE" "1" "15 May 2020" "MariaDB 10\&.7" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysql-test-run.pl.1 b/man/mysql-test-run.pl.1 index b13727c3298..8b2fb5f3a21 100644 --- a/man/mysql-test-run.pl.1 +++ b/man/mysql-test-run.pl.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMYSQL\-TEST\-RUN\" "1" "15 May 2020" "MariaDB 10\&.6" "MariaDB Database System" +.TH "\FBMYSQL\-TEST\-RUN\" "1" "15 May 2020" "MariaDB 10\&.7" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysql.1 b/man/mysql.1 index ebc889b8745..8e36acdd3be 100644 --- a/man/mysql.1 +++ b/man/mysql.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMARIADB\FR" "1" "15 May 2020" "MariaDB 10\&.6" "MariaDB Database System" +.TH "\FBMARIADB\FR" "1" "15 May 2020" "MariaDB 10\&.7" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysql.server.1 b/man/mysql.server.1 index 4b99aadb0b3..4a5c24deda2 100644 --- a/man/mysql.server.1 +++ b/man/mysql.server.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMYSQL\&.SERVER\FR" "1" "15 May 2020" "MariaDB 10\&.6" "MariaDB Database System" +.TH "\FBMYSQL\&.SERVER\FR" "1" "15 May 2020" "MariaDB 10\&.7" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysql_client_test.1 b/man/mysql_client_test.1 index 399cef3ae19..484cd566dee 100644 --- a/man/mysql_client_test.1 +++ b/man/mysql_client_test.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMARIADB-CLIENT-TEST" "1" "15 May 2020" "MariaDB 10\&.6" "MariaDB Database System" +.TH "\FBMARIADB-CLIENT-TEST" "1" "15 May 2020" "MariaDB 10\&.7" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysql_config.1 b/man/mysql_config.1 index 90b09cb5d4b..5dbe2c2140c 100644 --- a/man/mysql_config.1 +++ b/man/mysql_config.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMYSQL_CONFIG\FR" "1" "15 May 2020" "MariaDB 10\&.6" "MariaDB Database System" +.TH "\FBMYSQL_CONFIG\FR" "1" "15 May 2020" "MariaDB 10\&.7" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysql_convert_table_format.1 b/man/mysql_convert_table_format.1 index e43a7436e9b..de2d5478fa3 100644 --- a/man/mysql_convert_table_format.1 +++ b/man/mysql_convert_table_format.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMARIADB-CONVERT-TAB" "1" "15 May 2020" "MariaDB 10\&.6" "MariaDB Database System" +.TH "\FBMARIADB-CONVERT-TAB" "1" "15 May 2020" "MariaDB 10\&.7" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysql_find_rows.1 b/man/mysql_find_rows.1 index c8563d6097b..1a968aae5af 100644 --- a/man/mysql_find_rows.1 +++ b/man/mysql_find_rows.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMARIADB-FIND-ROWS\F" "1" "15 May 2020" "MariaDB 10\&.6" "MariaDB Database System" +.TH "\FBMARIADB-FIND-ROWS\F" "1" "15 May 2020" "MariaDB 10\&.7" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysql_fix_extensions.1 b/man/mysql_fix_extensions.1 index 4c8f1b58f99..9321a6d6fbe 100644 --- a/man/mysql_fix_extensions.1 +++ b/man/mysql_fix_extensions.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMARIADB-FIX-EXTENSI" "1" "15 May 2020" "MariaDB 10\&.6" "MariaDB Database System" +.TH "\FBMARIADB-FIX-EXTENSI" "1" "15 May 2020" "MariaDB 10\&.7" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysql_install_db.1 b/man/mysql_install_db.1 index f826b2b787f..547b568e3f9 100644 --- a/man/mysql_install_db.1 +++ b/man/mysql_install_db.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMARIADB-INSTALL-DB\FR" "1" "15 May 2020" "MariaDB 10\&.6" "MariaDB Database System" +.TH "\FBMARIADB-INSTALL-DB\FR" "1" "15 May 2020" "MariaDB 10\&.7" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysql_ldb.1 b/man/mysql_ldb.1 index 2ef7bd3170e..24302e13139 100644 --- a/man/mysql_ldb.1 +++ b/man/mysql_ldb.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMARIADB-LDB\FR" "1" "15 May 2020" "MariaDB 10\&.6" "MariaDB Database System" +.TH "\FBMARIADB-LDB\FR" "1" "15 May 2020" "MariaDB 10\&.7" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysql_plugin.1 b/man/mysql_plugin.1 index 62a0d2e09a1..3009fc1361f 100644 --- a/man/mysql_plugin.1 +++ b/man/mysql_plugin.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMARIADB-PLUGIN\FR" "1" "15 May 2020" "MariaDB 10\&.6" "MariaDB Database System" +.TH "\FBMARIADB-PLUGIN\FR" "1" "15 May 2020" "MariaDB 10\&.7" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff --git a/man/mysql_secure_installation.1 b/man/mysql_secure_installation.1 index b1bcb5b06b2..88cd2a8944c 100644 --- a/man/mysql_secure_installation.1 +++ b/man/mysql_secure_installation.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMARIADB-SECURE-INST" "1" "15 May 2020" "MariaDB 10\&.6" "MariaDB Database System" +.TH "\FBMARIADB-SECURE-INST" "1" "15 May 2020" "MariaDB 10\&.7" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysql_setpermission.1 b/man/mysql_setpermission.1 index e9cf8043606..33f8c58cb0e 100644 --- a/man/mysql_setpermission.1 +++ b/man/mysql_setpermission.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMARIADB-SETPERMISSI" "1" "15 May 2020" "MariaDB 10\&.6" "MariaDB Database System" +.TH "\FBMARIADB-SETPERMISSI" "1" "15 May 2020" "MariaDB 10\&.7" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysql_tzinfo_to_sql.1 b/man/mysql_tzinfo_to_sql.1 index 4882d11c044..90e91431edb 100644 --- a/man/mysql_tzinfo_to_sql.1 +++ b/man/mysql_tzinfo_to_sql.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMARIADB-TZINFO-TO-S" "1" "22 April 2022" "MariaDB 10\&.6" "MariaDB Database System" +.TH "\FBMARIADB-TZINFO-TO-S" "1" "22 April 2022" "MariaDB 10\&.7" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysql_upgrade.1 b/man/mysql_upgrade.1 index 1f21c4af90d..465c905ae6e 100644 --- a/man/mysql_upgrade.1 +++ b/man/mysql_upgrade.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMARIADB-UPGRADE\FR" "1" "20 July 2020" "MariaDB 10\&.6" "MariaDB Database System" +.TH "\FBMARIADB-UPGRADE\FR" "1" "20 July 2020" "MariaDB 10\&.7" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysql_waitpid.1 b/man/mysql_waitpid.1 index 6c7b74faa3a..9a2dcb72acb 100644 --- a/man/mysql_waitpid.1 +++ b/man/mysql_waitpid.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMARIADB-WAITPID\FR" "1" "15 May 2020" "MariaDB 10\&.6" "MariaDB Database System" +.TH "\FBMARIADB-WAITPID\FR" "1" "15 May 2020" "MariaDB 10\&.7" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysqlaccess.1 b/man/mysqlaccess.1 index a38cd6c9e44..6c2ff84c777 100644 --- a/man/mysqlaccess.1 +++ b/man/mysqlaccess.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMARIADB-ACCESS\FR" "1" "15 May 2020" "MariaDB 10\&.6" "MariaDB Database System" +.TH "\FBMARIADB-ACCESS\FR" "1" "15 May 2020" "MariaDB 10\&.7" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysqladmin.1 b/man/mysqladmin.1 index ebd60e73c07..ae2fbf9ba8e 100644 --- a/man/mysqladmin.1 +++ b/man/mysqladmin.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMARIADB-ADMIN\FR" "1" "15 May 2020" "MariaDB 10\&.6" "MariaDB Database System" +.TH "\FBMARIADB-ADMIN\FR" "1" "15 May 2020" "MariaDB 10\&.7" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysqlbinlog.1 b/man/mysqlbinlog.1 index 9aae9798881..aed6925c787 100644 --- a/man/mysqlbinlog.1 +++ b/man/mysqlbinlog.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMARIADB-BINLOG\FR" "1" "14 April 2021" "MariaDB 10\&.6" "MariaDB Database System" +.TH "\FBMARIADB-BINLOG\FR" "1" "14 April 2021" "MariaDB 10\&.7" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysqlcheck.1 b/man/mysqlcheck.1 index 17217907c0c..b273dee9312 100644 --- a/man/mysqlcheck.1 +++ b/man/mysqlcheck.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMARIADB-CHECK\FR" "1" "15 May 2020" "MariaDB 10\&.6" "MariaDB Database System" +.TH "\FBMARIADB-CHECK\FR" "1" "15 May 2020" "MariaDB 10\&.7" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysqld.8 b/man/mysqld.8 index dd19bcb8480..8857c5961c4 100644 --- a/man/mysqld.8 +++ b/man/mysqld.8 @@ -1,10 +1,6 @@ '\" t .\" -<<<<<<< HEAD -.TH "\FBMYSQLD\FR" "8" "15 May 2020" "MariaDB 10\&.6" "MariaDB Database System" -======= -.TH "\FBMARIADBD\FR" "8" "27 June 2019" "MariaDB 10\&.5" "MariaDB Database System" ->>>>>>> 10.5-MDEV-28376-mariadb-report +.TH "\FBMARIADBD\FR" "8" "15 May 2020" "MariaDB 10\&.7" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysqld_multi.1 b/man/mysqld_multi.1 index 729df284595..3c5bca5a07b 100644 --- a/man/mysqld_multi.1 +++ b/man/mysqld_multi.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMARIADB-MULTI\FR" "1" "15 May 2020" "MariaDB 10\&.6" "MariaDB Database System" +.TH "\FBMARIADB-MULTI\FR" "1" "15 May 2020" "MariaDB 10\&.7" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysqld_safe.1 b/man/mysqld_safe.1 index c875d775278..36d6eb82faf 100644 --- a/man/mysqld_safe.1 +++ b/man/mysqld_safe.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMARIADB-SAFE\FR" "1" "15 May 2020" "MariaDB 10\&.6" "MariaDB Database System" +.TH "\FBMARIADB-SAFE\FR" "1" "15 May 2020" "MariaDB 10\&.7" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysqld_safe_helper.1 b/man/mysqld_safe_helper.1 index a94f3d98a17..93bea715a34 100644 --- a/man/mysqld_safe_helper.1 +++ b/man/mysqld_safe_helper.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMARIADB-SAFE-HELPER\FR" "1" "15 May 2020" "MariaDB 10\&.6" "MariaDB Database System" +.TH "\FBMARIADB-SAFE-HELPER\FR" "1" "15 May 2020" "MariaDB 10\&.7" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysqldump.1 b/man/mysqldump.1 index 58e56b382e7..8dcce60b0d9 100644 --- a/man/mysqldump.1 +++ b/man/mysqldump.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMARIADB-DUMP\FR" "1" "24 October 2020" "MariaDB 10\&.6" "MariaDB Database System" +.TH "\FBMARIADB-DUMP\FR" "1" "24 October 2020" "MariaDB 10\&.7" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysqldumpslow.1 b/man/mysqldumpslow.1 index 29340aae34e..f93bcfac979 100644 --- a/man/mysqldumpslow.1 +++ b/man/mysqldumpslow.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMARIADB-DUMPSLOW\FR" "1" "15 May 2020" "MariaDB 10\&.6" "MariaDB Database System" +.TH "\FBMARIADB-DUMPSLOW\FR" "1" "15 May 2020" "MariaDB 10\&.7" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysqlhotcopy.1 b/man/mysqlhotcopy.1 index 2199b45d942..eb8d8caa39c 100644 --- a/man/mysqlhotcopy.1 +++ b/man/mysqlhotcopy.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMARIADB-HOTCOPY\FR" "1" "15 May 2020" "MariaDB 10\&.6" "MariaDB Database System" +.TH "\FBMARIADB-HOTCOPY\FR" "1" "15 May 2020" "MariaDB 10\&.7" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysqlimport.1 b/man/mysqlimport.1 index 6e6649765cd..5c2a03df843 100644 --- a/man/mysqlimport.1 +++ b/man/mysqlimport.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMARIADB-IMPORT\FR" "1" "15 May 2020" "MariaDB 10\&.6" "MariaDB Database System" +.TH "\FBMARIADB-IMPORT\FR" "1" "15 May 2020" "MariaDB 10\&.7" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysqlshow.1 b/man/mysqlshow.1 index ba403c24ee8..15a4a2fa4d3 100644 --- a/man/mysqlshow.1 +++ b/man/mysqlshow.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMARIADB-SHOW\FR" "1" "15 May 2020" "MariaDB 10\&.6" "MariaDB Database System" +.TH "\FBMARIADB-SHOW\FR" "1" "15 May 2020" "MariaDB 10\&.7" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysqlslap.1 b/man/mysqlslap.1 index 5f7439442a4..1658fd7c2f0 100644 --- a/man/mysqlslap.1 +++ b/man/mysqlslap.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMARIADB-SLAP\FR" "1" "15 May 2020" "MariaDB 10\&.6" "MariaDB Database System" +.TH "\FBMARIADB-SLAP\FR" "1" "15 May 2020" "MariaDB 10\&.7" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- diff --git a/man/mysqltest.1 b/man/mysqltest.1 index e641cf5b912..73a466370b4 100644 --- a/man/mysqltest.1 +++ b/man/mysqltest.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMARIADB-TEST\FR" "1" "15 May 2020" "MariaDB 10\&.6" "MariaDB Database System" +.TH "\FBMARIADB-TEST\FR" "1" "15 May 2020" "MariaDB 10\&.7" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" -----------------------------------------------------------------