Commit 7434eb56 authored by Marko Mäkelä's avatar Marko Mäkelä

Merge 10.3 into 10.4

parents 3f5b03c4 e8101a4d
...@@ -1781,7 +1781,7 @@ that may lead to an endless loop.", ...@@ -1781,7 +1781,7 @@ that may lead to an endless loop.",
&opt_binlog_rows_event_max_encoded_size, 0, &opt_binlog_rows_event_max_encoded_size, 0,
GET_ULONG, REQUIRED_ARG, UINT_MAX/4, 256, ULONG_MAX, 0, 256, 0}, GET_ULONG, REQUIRED_ARG, UINT_MAX/4, 256, ULONG_MAX, 0, 256, 0},
#endif #endif
{"verify-binlog-checksum", 'c', "Verify checksum binlog events.", {"verify-binlog-checksum", 'c', "Verify binlog event checksums.",
(uchar**) &opt_verify_binlog_checksum, (uchar**) &opt_verify_binlog_checksum, (uchar**) &opt_verify_binlog_checksum, (uchar**) &opt_verify_binlog_checksum,
0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0}, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0},
{"rewrite-db", OPT_REWRITE_DB, {"rewrite-db", OPT_REWRITE_DB,
......
...@@ -258,9 +258,6 @@ ...@@ -258,9 +258,6 @@
#cmakedefine STRUCT_TIMESPEC_HAS_TV_SEC 1 #cmakedefine STRUCT_TIMESPEC_HAS_TV_SEC 1
#cmakedefine STRUCT_TIMESPEC_HAS_TV_NSEC 1 #cmakedefine STRUCT_TIMESPEC_HAS_TV_NSEC 1
#define USE_MB 1
#define USE_MB_IDENT 1
/* this means that valgrind headers and macros are available */ /* this means that valgrind headers and macros are available */
#cmakedefine HAVE_VALGRIND_MEMCHECK_H 1 #cmakedefine HAVE_VALGRIND_MEMCHECK_H 1
...@@ -459,8 +456,8 @@ ...@@ -459,8 +456,8 @@
#cmakedefine MYSQL_DEFAULT_CHARSET_NAME "@MYSQL_DEFAULT_CHARSET_NAME@" #cmakedefine MYSQL_DEFAULT_CHARSET_NAME "@MYSQL_DEFAULT_CHARSET_NAME@"
#cmakedefine MYSQL_DEFAULT_COLLATION_NAME "@MYSQL_DEFAULT_COLLATION_NAME@" #cmakedefine MYSQL_DEFAULT_COLLATION_NAME "@MYSQL_DEFAULT_COLLATION_NAME@"
#cmakedefine USE_MB 1 #cmakedefine USE_MB
#cmakedefine USE_MB_IDENT 1 #cmakedefine USE_MB_IDENT
/* This should mean case insensitive file system */ /* This should mean case insensitive file system */
#cmakedefine FN_NO_CASE_SENSE 1 #cmakedefine FN_NO_CASE_SENSE 1
......
...@@ -1082,9 +1082,11 @@ COMMIT; ...@@ -1082,9 +1082,11 @@ COMMIT;
drop table t2; drop table t2;
DROP TABLE t1; DROP TABLE t1;
# #
# MDEV-19526 heap number overflow # MDEV-19526/MDEV-29742 heap number overflow
# #
CREATE TABLE t1(a SMALLINT NOT NULL UNIQUE AUTO_INCREMENT, KEY(a)) CREATE TABLE t1(a SMALLINT NOT NULL UNIQUE AUTO_INCREMENT, KEY(a))
ENGINE=InnoDB; ENGINE=InnoDB;
INSERT INTO t1 (a) SELECT seq FROM seq_1_to_8191; INSERT INTO t1 (a) SELECT seq FROM seq_1_to_8191;
ALTER TABLE t1 FORCE, ALGORITHM=INPLACE;
DROP TABLE t1; DROP TABLE t1;
# End of 10.3 tests
...@@ -641,9 +641,12 @@ drop table t2; ...@@ -641,9 +641,12 @@ drop table t2;
DROP TABLE t1; DROP TABLE t1;
--echo # --echo #
--echo # MDEV-19526 heap number overflow --echo # MDEV-19526/MDEV-29742 heap number overflow
--echo # --echo #
CREATE TABLE t1(a SMALLINT NOT NULL UNIQUE AUTO_INCREMENT, KEY(a)) CREATE TABLE t1(a SMALLINT NOT NULL UNIQUE AUTO_INCREMENT, KEY(a))
ENGINE=InnoDB; ENGINE=InnoDB;
INSERT INTO t1 (a) SELECT seq FROM seq_1_to_8191; INSERT INTO t1 (a) SELECT seq FROM seq_1_to_8191;
ALTER TABLE t1 FORCE, ALGORITHM=INPLACE;
DROP TABLE t1; DROP TABLE t1;
--echo # End of 10.3 tests
...@@ -56,9 +56,8 @@ DROP TABLE t1; ...@@ -56,9 +56,8 @@ DROP TABLE t1;
# MDEV-25663 Double free of transaction during TRUNCATE # MDEV-25663 Double free of transaction during TRUNCATE
# #
call mtr.add_suppression("InnoDB: \\(Too many concurrent transactions\\)"); call mtr.add_suppression("InnoDB: \\(Too many concurrent transactions\\)");
SET DEBUG_DBUG='-d,ib_create_table_fail_too_many_trx';
CREATE TABLE t1 (b CHAR(12), FULLTEXT KEY(b)) engine=InnoDB;
SET @save_dbug= @@debug_dbug; SET @save_dbug= @@debug_dbug;
CREATE TABLE t1 (b CHAR(12), FULLTEXT KEY(b)) engine=InnoDB;
SET debug_dbug='+d,ib_create_table_fail_too_many_trx'; SET debug_dbug='+d,ib_create_table_fail_too_many_trx';
TRUNCATE t1; TRUNCATE t1;
ERROR HY000: Got error -1 "Internal error < 0 (Not system error)" from storage engine InnoDB ERROR HY000: Got error -1 "Internal error < 0 (Not system error)" from storage engine InnoDB
......
...@@ -11,12 +11,13 @@ DROP TABLE mdev21563; ...@@ -11,12 +11,13 @@ DROP TABLE mdev21563;
# #
CREATE TABLE t1(f1 CHAR(100), FULLTEXT idx(f1))ENGINE=InnoDB; CREATE TABLE t1(f1 CHAR(100), FULLTEXT idx(f1))ENGINE=InnoDB;
INSERT INTO t1 VALUES('mysql'), ('innodb'); INSERT INTO t1 VALUES('mysql'), ('innodb');
SET @save_dbug=@@debug_dbug;
set debug_dbug="+d,fts_instrument_sync_debug"; set debug_dbug="+d,fts_instrument_sync_debug";
INSERT INTO t1 VALUES('test'); INSERT INTO t1 VALUES('test');
set debug_dbug="-d,fts_instrument_sync_debug"; set debug_dbug=@save_dbug;
INSERT INTO t1 VALUES('This is a fts issue'); INSERT INTO t1 VALUES('This is a fts issue');
# restart # restart
set debug_dbug="+d,fts_instrument_sync_debug"; set debug_dbug="+d,fts_instrument_sync_debug";
UPDATE t1 SET f1="mariadb"; UPDATE t1 SET f1="mariadb";
set debug_dbug="-d,fts_instrument_sync_debug"; set debug_dbug=@save_dbug;
DROP TABLE t1; DROP TABLE t1;
...@@ -85,10 +85,9 @@ DROP TABLE t1; ...@@ -85,10 +85,9 @@ DROP TABLE t1;
--echo # MDEV-25663 Double free of transaction during TRUNCATE --echo # MDEV-25663 Double free of transaction during TRUNCATE
--echo # --echo #
call mtr.add_suppression("InnoDB: \\(Too many concurrent transactions\\)"); call mtr.add_suppression("InnoDB: \\(Too many concurrent transactions\\)");
SET DEBUG_DBUG='-d,ib_create_table_fail_too_many_trx'; SET @save_dbug= @@debug_dbug;
CREATE TABLE t1 (b CHAR(12), FULLTEXT KEY(b)) engine=InnoDB; CREATE TABLE t1 (b CHAR(12), FULLTEXT KEY(b)) engine=InnoDB;
SET @save_dbug= @@debug_dbug;
SET debug_dbug='+d,ib_create_table_fail_too_many_trx'; SET debug_dbug='+d,ib_create_table_fail_too_many_trx';
--error ER_GET_ERRNO --error ER_GET_ERRNO
TRUNCATE t1; TRUNCATE t1;
......
...@@ -16,12 +16,13 @@ DROP TABLE mdev21563; ...@@ -16,12 +16,13 @@ DROP TABLE mdev21563;
--echo # --echo #
CREATE TABLE t1(f1 CHAR(100), FULLTEXT idx(f1))ENGINE=InnoDB; CREATE TABLE t1(f1 CHAR(100), FULLTEXT idx(f1))ENGINE=InnoDB;
INSERT INTO t1 VALUES('mysql'), ('innodb'); INSERT INTO t1 VALUES('mysql'), ('innodb');
SET @save_dbug=@@debug_dbug;
set debug_dbug="+d,fts_instrument_sync_debug"; set debug_dbug="+d,fts_instrument_sync_debug";
INSERT INTO t1 VALUES('test'); INSERT INTO t1 VALUES('test');
set debug_dbug="-d,fts_instrument_sync_debug"; set debug_dbug=@save_dbug;
INSERT INTO t1 VALUES('This is a fts issue'); INSERT INTO t1 VALUES('This is a fts issue');
--source include/restart_mysqld.inc --source include/restart_mysqld.inc
set debug_dbug="+d,fts_instrument_sync_debug"; set debug_dbug="+d,fts_instrument_sync_debug";
UPDATE t1 SET f1="mariadb"; UPDATE t1 SET f1="mariadb";
set debug_dbug="-d,fts_instrument_sync_debug"; set debug_dbug=@save_dbug;
DROP TABLE t1; DROP TABLE t1;
# Copyright (c) 2006, 2014, Oracle and/or its affiliates. # Copyright (c) 2006, 2014, Oracle and/or its affiliates.
# Copyright (c) 2010, 2018, MariaDB Corporation # Copyright (c) 2010, 2022, MariaDB Corporation.
# #
# This program is free software; you can redistribute it and/or modify # This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by # it under the terms of the GNU General Public License as published by
...@@ -152,7 +152,14 @@ SET (SQL_SOURCE ...@@ -152,7 +152,14 @@ SET (SQL_SOURCE
${GEN_SOURCES} ${GEN_SOURCES}
${MYSYS_LIBWRAP_SOURCE} ${MYSYS_LIBWRAP_SOURCE}
) )
IF(CMAKE_C_COMPILER_ID MATCHES "Clang" AND
NOT CMAKE_C_COMPILER_VERSION VERSION_LESS "13.0.0")
ADD_COMPILE_FLAGS(${CMAKE_CURRENT_BINARY_DIR}/sql_yacc.cc
${CMAKE_CURRENT_BINARY_DIR}/sql_yacc_ora.cc
COMPILE_FLAGS "-Wno-unused-but-set-variable")
ENDIF()
IF ((CMAKE_SYSTEM_NAME MATCHES "Linux" OR IF ((CMAKE_SYSTEM_NAME MATCHES "Linux" OR
CMAKE_SYSTEM_NAME MATCHES "SunOS" OR CMAKE_SYSTEM_NAME MATCHES "SunOS" OR
WIN32 OR WIN32 OR
......
...@@ -364,6 +364,11 @@ IF(MSVC) ...@@ -364,6 +364,11 @@ IF(MSVC)
# on generated file. # on generated file.
TARGET_COMPILE_OPTIONS(innobase PRIVATE "/wd4065") TARGET_COMPILE_OPTIONS(innobase PRIVATE "/wd4065")
ENDIF() ENDIF()
IF(CMAKE_C_COMPILER_ID MATCHES "Clang" AND
NOT CMAKE_C_COMPILER_VERSION VERSION_LESS "13.0.0")
ADD_COMPILE_FLAGS(pars/pars0grm.cc fts/fts0pars.cc
COMPILE_FLAGS "-Wno-unused-but-set-variable")
ENDIF()
IF(NOT (PLUGIN_INNOBASE STREQUAL DYNAMIC)) IF(NOT (PLUGIN_INNOBASE STREQUAL DYNAMIC))
ADD_SUBDIRECTORY(${CMAKE_SOURCE_DIR}/extra/mariabackup ${CMAKE_BINARY_DIR}/extra/mariabackup) ADD_SUBDIRECTORY(${CMAKE_SOURCE_DIR}/extra/mariabackup ${CMAKE_BINARY_DIR}/extra/mariabackup)
......
/***************************************************************************** /*****************************************************************************
Copyright (c) 2014, 2019, Oracle and/or its affiliates. All Rights Reserved. Copyright (c) 2014, 2019, Oracle and/or its affiliates. All Rights Reserved.
Copyright (c) 2017, 2021, MariaDB Corporation. Copyright (c) 2017, 2022, MariaDB Corporation.
This program is free software; you can redistribute it and/or modify it under This program is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free Software the terms of the GNU General Public License as published by the Free Software
...@@ -597,6 +597,11 @@ bool ...@@ -597,6 +597,11 @@ bool
PageBulk::isSpaceAvailable( PageBulk::isSpaceAvailable(
ulint rec_size) ulint rec_size)
{ {
if (m_rec_no >= 8190) {
ut_ad(srv_page_size == 65536);
return false;
}
ulint slot_size; ulint slot_size;
ulint required_space; ulint required_space;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment