Commit 0f83c887 authored by Eugene Kosov's avatar Eugene Kosov

Merge 10.2 into 10.3

parents aa96e56c d2f094d9
...@@ -45,17 +45,8 @@ SET(CPACK_RPM_PACKAGE_LICENSE "GPLv2") ...@@ -45,17 +45,8 @@ SET(CPACK_RPM_PACKAGE_LICENSE "GPLv2")
SET(CPACK_RPM_PACKAGE_RELOCATABLE FALSE) SET(CPACK_RPM_PACKAGE_RELOCATABLE FALSE)
SET(CPACK_PACKAGE_RELOCATABLE FALSE) SET(CPACK_PACKAGE_RELOCATABLE FALSE)
SET(CPACK_RPM_PACKAGE_GROUP "Applications/Databases") SET(CPACK_RPM_PACKAGE_GROUP "Applications/Databases")
SET(CPACK_RPM_PACKAGE_SUMMARY ${CPACK_PACKAGE_SUMMARY})
SET(CPACK_RPM_PACKAGE_URL ${CPACK_PACKAGE_URL}) SET(CPACK_RPM_PACKAGE_URL ${CPACK_PACKAGE_URL})
SET(CPACK_RPM_PACKAGE_DESCRIPTION "${CPACK_RPM_PACKAGE_SUMMARY} SET(CPACK_RPM_PACKAGE_DESCRIPTION "${CPACK_PACKAGE_DESCRIPTION}")
It is GPL v2 licensed, which means you can use the it free of charge under the
conditions of the GNU General Public License Version 2 (http://www.gnu.org/licenses/).
MariaDB documentation can be found at https://mariadb.com/kb
MariaDB bug reports should be submitted through https://jira.mariadb.org
")
SET(CPACK_RPM_shared_PACKAGE_VENDOR "MariaDB Corporation Ab") SET(CPACK_RPM_shared_PACKAGE_VENDOR "MariaDB Corporation Ab")
SET(CPACK_RPM_shared_PACKAGE_LICENSE "LGPLv2.1") SET(CPACK_RPM_shared_PACKAGE_LICENSE "LGPLv2.1")
......
...@@ -11,3 +11,9 @@ ELSE() ...@@ -11,3 +11,9 @@ ELSE()
SET(__msg1_${id} ${hash} CACHE INTERNAL "") SET(__msg1_${id} ${hash} CACHE INTERNAL "")
ENDFUNCTION() ENDFUNCTION()
ENDIF() ENDIF()
MACRO(SET_IF_UNSET VAR VAL)
IF(NOT DEFINED ${VAR})
SET(${VAR} ${VAL})
ENDIF()
ENDMACRO()
...@@ -75,24 +75,27 @@ string(TOUPPER ${SERVER_MATURITY} SERVER_MATURITY) ...@@ -75,24 +75,27 @@ string(TOUPPER ${SERVER_MATURITY} SERVER_MATURITY)
SET(SERVER_MATURITY_LEVEL MariaDB_PLUGIN_MATURITY_${SERVER_MATURITY}) SET(SERVER_MATURITY_LEVEL MariaDB_PLUGIN_MATURITY_${SERVER_MATURITY})
SET(MYSQL_TCP_PORT_DEFAULT 0) SET(MYSQL_TCP_PORT_DEFAULT 0)
IF(NOT MYSQL_TCP_PORT) SET_IF_UNSET(MYSQL_TCP_PORT 3306)
SET(MYSQL_TCP_PORT 3306)
ENDIF()
IF(NOT COMPILATION_COMMENT) SET_IF_UNSET(COMPILATION_COMMENT "Source distribution")
SET(COMPILATION_COMMENT "Source distribution")
ENDIF()
INCLUDE(package_name) INCLUDE(package_name)
IF(NOT CPACK_PACKAGE_FILE_NAME) IF(NOT CPACK_PACKAGE_FILE_NAME)
GET_PACKAGE_FILE_NAME(CPACK_PACKAGE_FILE_NAME) GET_PACKAGE_FILE_NAME(CPACK_PACKAGE_FILE_NAME)
ENDIF() ENDIF()
IF(NOT CPACK_SOURCE_PACKAGE_FILE_NAME) SET_IF_UNSET(CPACK_SOURCE_PACKAGE_FILE_NAME "mariadb-${VERSION}")
SET(CPACK_SOURCE_PACKAGE_FILE_NAME "mariadb-${VERSION}") SET_IF_UNSET(CPACK_PACKAGE_CONTACT "MariaDB Developers <maria-developers@lists.launchpad.net>")
ENDIF() SET_IF_UNSET(CPACK_PACKAGE_VENDOR "MariaDB Foundation")
SET(CPACK_PACKAGE_CONTACT "MariaDB Developers <maria-developers@lists.launchpad.net>") SET_IF_UNSET(CPACK_PACKAGE_DESCRIPTION "${CPACK_PACKAGE_DESCRIPTION_SUMMARY}
SET(CPACK_PACKAGE_VENDOR "MariaDB Foundation")
It is GPL v2 licensed, which means you can use the it free of charge under the
conditions of the GNU General Public License Version 2 (http://www.gnu.org/licenses/).
MariaDB documentation can be found at https://mariadb.com/kb
MariaDB bug reports should be submitted through https://jira.mariadb.org
")
SET(CPACK_SOURCE_GENERATOR "TGZ") SET(CPACK_SOURCE_GENERATOR "TGZ")
# Definitions for windows version resources # Definitions for windows version resources
......
...@@ -28,13 +28,9 @@ MACRO(CHECK_SYSTEMD) ...@@ -28,13 +28,9 @@ MACRO(CHECK_SYSTEMD)
ENDIF() ENDIF()
ENDIF() ENDIF()
IF(HAVE_DLOPEN) IF(HAVE_DLOPEN)
SET(LIBSYSTEMD ${LIBSYSTEMD_LIBRARIES}) SET(LIBSYSTEMD ${LIBSYSTEMD_LDFLAGS} ${LIBSYSTEMD_LIBRARIES})
#SET(CMAKE_REQUIRED_FLAGS ${LIBSYSTEMD_CFLAGS})
SET(MYSQLD_LINK_FLAGS "${MYSQLD_LINK_FLAGS} ${LIBSYSTEMD_LDFLAGS}")
ELSE() ELSE()
SET(LIBSYSTEMD ${LIBSYSTEMD_STATIC_LIBRARIES}) SET(LIBSYSTEMD ${LIBSYSTEMD_STATIC_LDFLAGS} ${LIBSYSTEMD_STATIC_LIBRARIES})
#SET(CMAKE_REQUIRED_FLAGS ${LIBSYSTEMD_STATIC_CFLAGS})
SET(MYSQLD_LINK_FLAGS "${MYSQLD_LINK_FLAGS} ${LIBSYSTEMD_STATIC_LDFLAGS}")
ENDIF() ENDIF()
ELSE() ELSE()
SET(LIBSYSTEMD systemd) SET(LIBSYSTEMD systemd)
......
...@@ -234,7 +234,7 @@ Description: MariaDB database common files (e.g. /etc/mysql/conf.d/mariadb.cnf) ...@@ -234,7 +234,7 @@ Description: MariaDB database common files (e.g. /etc/mysql/conf.d/mariadb.cnf)
Package: mariadb-client-core-10.3 Package: mariadb-client-core-10.3
Architecture: any Architecture: any
Depends: mariadb-common (>= ${source:Version}), Depends: mariadb-common (>= ${source:Version}), libmariadb3,
${misc:Depends}, ${misc:Depends},
${shlibs:Depends} ${shlibs:Depends}
Conflicts: mariadb-client-10.0, Conflicts: mariadb-client-10.0,
......
...@@ -224,7 +224,7 @@ void BasicDES::SetKey(const byte* key, word32 /*length*/, CipherDir dir) ...@@ -224,7 +224,7 @@ void BasicDES::SetKey(const byte* key, word32 /*length*/, CipherDir dir)
byte *const pc1m = buffer; /* place to modify pc1 into */ byte *const pc1m = buffer; /* place to modify pc1 into */
byte *const pcr = pc1m + 56; /* place to rotate pc1 into */ byte *const pcr = pc1m + 56; /* place to rotate pc1 into */
byte *const ks = pcr + 56; byte *const ks = pcr + 56;
register int i,j,l; int i,j,l;
int m; int m;
for (j = 0; j < 56; j++) { /* convert pc1 to bits of key */ for (j = 0; j < 56; j++) { /* convert pc1 to bits of key */
......
# ==== Purpose ====
#
# Tell mtr that all servers must be restarted after the test has
# finished.
#
# ==== Usage ====
#
# --source include/force_restart.inc
#
--let $_force_restart_datadir= `SELECT @@datadir`
--append_file $_force_restart_datadir/mtr/force_restart
1
EOF
# include/wait_condition_with_debug.inc
#
# SUMMARY
#
# Waits until the passed statement returns true, or the operation
# times out. If the operation times out, the additional error
# statement will be executed.
#
# USAGE
#
# let $wait_condition=
# SELECT c = 3 FROM t;
# let $wait_condition_on_error_output= select count(*) from t;
# [let $explicit_default_wait_timeout= N] # to override the default reset
# --source include/wait_condition_with_debug.inc
#
# OR
#
# let $wait_timeout= 60; # Override default 30 seconds with 60.
# let $wait_condition=
# SELECT c = 3 FROM t;
# let $wait_condition_on_error_output= select count(*) from t;
# --source include/wait_condition_with_debug.inc
# --echo Executed the test condition $wait_condition_reps times
#
#
# EXAMPLE
# events_bugs.test, events_time_zone.test
#
let $wait_counter= 300;
if ($wait_timeout)
{
let $wait_counter= `SELECT $wait_timeout * 10`;
}
# Reset $wait_timeout so that its value won't be used on subsequent
# calls, and default will be used instead.
if ($explicit_default_wait_timeout)
{
--let $wait_timeout= $explicit_default_wait_timeout
}
if (!$explicit_default_wait_timeout)
{
--let $wait_timeout= 0
}
# Keep track of how many times the wait condition is tested
# This is used by some tests (e.g., main.status)
let $wait_condition_reps= 0;
while ($wait_counter)
{
--error 0,ER_NO_SUCH_TABLE,ER_LOCK_WAIT_TIMEOUT,ER_UNKNOWN_COM_ERROR,ER_LOCK_DEADLOCK
let $success= `$wait_condition`;
inc $wait_condition_reps;
if ($success)
{
let $wait_counter= 0;
}
if (!$success)
{
real_sleep 0.1;
dec $wait_counter;
}
}
if (!$success)
{
echo Timeout in wait_condition.inc for $wait_condition;
--eval $wait_condition_on_error_output
}
...@@ -338,6 +338,13 @@ sub new { ...@@ -338,6 +338,13 @@ sub new {
# Skip comment # Skip comment
next; next;
} }
# Correctly process Replication Filter when they are defined
# with connection name.
elsif ( $line =~ /^([\w]+.[\w]+)\s*=\s*(.*)\s*/){
my $option= $1;
my $value= $2;
$self->insert($group_name, $option, $value);
}
else { else {
croak "Unexpected line '$line' found in '$path'"; croak "Unexpected line '$line' found in '$path'";
} }
......
create table t1 (a int) engine=myisam data directory='MYSQL_TMP_DIR'; create table t1 (a int) engine=myisam data directory='MYSQL_TMP_DIR';
insert t1 values (1); insert t1 values (1);
# Some systems fail with errcode 40, when doing openat, while others # Some systems fail with errcode 40, or 90 (MIPS) when doing openat,
# don't have openat and fail with errcode 20. # while others don't have openat and fail with errcode 20.
repair table t1; repair table t1;
Table Op Msg_type Msg_text Table Op Msg_type Msg_text
test.t1 repair error 20 for record at pos 0 test.t1 repair error 20 for record at pos 0
......
...@@ -9,9 +9,9 @@ ...@@ -9,9 +9,9 @@
eval create table t1 (a int) engine=myisam data directory='$MYSQL_TMP_DIR'; eval create table t1 (a int) engine=myisam data directory='$MYSQL_TMP_DIR';
insert t1 values (1); insert t1 values (1);
--system ln -s $MYSQL_TMP_DIR/foobar5543 $MYSQL_TMP_DIR/t1.TMD --system ln -s $MYSQL_TMP_DIR/foobar5543 $MYSQL_TMP_DIR/t1.TMD
--echo # Some systems fail with errcode 40, when doing openat, while others --echo # Some systems fail with errcode 40, or 90 (MIPS) when doing openat,
--echo # don't have openat and fail with errcode 20. --echo # while others don't have openat and fail with errcode 20.
--replace_regex / '.*\/t1/ 'MYSQL_TMP_DIR\/t1/ /40/20/ /".*"/"<errmsg>"/ --replace_regex / '.*\/t1/ 'MYSQL_TMP_DIR\/t1/ /[49]0/20/ /".*"/"<errmsg>"/
repair table t1; repair table t1;
drop table t1; drop table t1;
...@@ -19,7 +19,7 @@ drop table t1; ...@@ -19,7 +19,7 @@ drop table t1;
eval create table t2 (a int) engine=aria data directory='$MYSQL_TMP_DIR'; eval create table t2 (a int) engine=aria data directory='$MYSQL_TMP_DIR';
insert t2 values (1); insert t2 values (1);
--system ln -s $MYSQL_TMP_DIR/foobar5543 $MYSQL_TMP_DIR/t2.TMD --system ln -s $MYSQL_TMP_DIR/foobar5543 $MYSQL_TMP_DIR/t2.TMD
--replace_regex / '.*\/t2/ 'MYSQL_TMP_DIR\/t2/ /40/20/ /".*"/"<errmsg>"/ --replace_regex / '.*\/t2/ 'MYSQL_TMP_DIR\/t2/ /[49]0/20/ /".*"/"<errmsg>"/
repair table t2; repair table t2;
drop table t2; drop table t2;
......
...@@ -8328,6 +8328,20 @@ UNION ...@@ -8328,6 +8328,20 @@ UNION
SELECT * FROM INFORMATION_SCHEMA.TABLES JOIN INFORMATION_SCHEMA.PARAMETERS; SELECT * FROM INFORMATION_SCHEMA.TABLES JOIN INFORMATION_SCHEMA.PARAMETERS;
DROP FUNCTION f; DROP FUNCTION f;
DROP VIEW v; DROP VIEW v;
#
# MDEV-17963: Assertion `field_pos < field_count' failed in Protocol_text::store,
# Assertion `field_handlers == 0 || field_pos < field_count'
#
CREATE TABLE t1 (ct time);
INSERT INTO t1 VALUES ('16:11:28');
CREATE FUNCTION f1 () RETURNS varchar(100)
BEGIN
DECLARE xxx varchar(100);
ANALYZE SELECT sum(ct) FROM t1 INTO xxx ;
RETURN xxx;
END|
ERROR 0A000: Not allowed to return a result set from a function
drop table t1;
#End of 10.1 tests #End of 10.1 tests
# #
# MDEV-11081: CURSOR for query with GROUP BY # MDEV-11081: CURSOR for query with GROUP BY
......
...@@ -9835,6 +9835,26 @@ SELECT * FROM INFORMATION_SCHEMA.TABLES JOIN INFORMATION_SCHEMA.PARAMETERS; ...@@ -9835,6 +9835,26 @@ SELECT * FROM INFORMATION_SCHEMA.TABLES JOIN INFORMATION_SCHEMA.PARAMETERS;
DROP FUNCTION f; DROP FUNCTION f;
DROP VIEW v; DROP VIEW v;
--echo #
--echo # MDEV-17963: Assertion `field_pos < field_count' failed in Protocol_text::store,
--echo # Assertion `field_handlers == 0 || field_pos < field_count'
--echo #
CREATE TABLE t1 (ct time);
INSERT INTO t1 VALUES ('16:11:28');
DELIMITER |;
--error ER_SP_NO_RETSET
CREATE FUNCTION f1 () RETURNS varchar(100)
BEGIN
DECLARE xxx varchar(100);
ANALYZE SELECT sum(ct) FROM t1 INTO xxx ;
RETURN xxx;
END|
DELIMITER ;|
drop table t1;
--echo #End of 10.1 tests --echo #End of 10.1 tests
--echo # --echo #
......
...@@ -1146,6 +1146,16 @@ a ...@@ -1146,6 +1146,16 @@ a
00:01:00 00:01:00
DROP TABLE t1; DROP TABLE t1;
# #
# MDEV-17857 Assertion `tmp != ((long long) 0x8000000000000000LL)' failed in TIME_from_longlong_datetime_packed upon SELECT with GROUP BY
#
CREATE TABLE t1 (i INT, d DATETIME);
INSERT INTO t1 VALUES (3,NULL),(3,'1976-12-14 13:21:07'),(NULL,'1981-09-24 01:04:47');
SELECT ExtractValue('foo','bar'), i, MIN(d) FROM t1 GROUP BY i;
ExtractValue('foo','bar') i MIN(d)
NULL 1981-09-24 01:04:47
3 1976-12-14 13:21:07
DROP TABLE t1;
#
# End of 10.1 tests # End of 10.1 tests
# #
# #
......
...@@ -700,6 +700,16 @@ SELECT 1 FROM t1 WHERE 20160101 > SOME (SELECT CAST(a AS DATETIME) FROM t1); ...@@ -700,6 +700,16 @@ SELECT 1 FROM t1 WHERE 20160101 > SOME (SELECT CAST(a AS DATETIME) FROM t1);
SELECT * FROM t1 WHERE 20160101 > CAST(a AS DATETIME); SELECT * FROM t1 WHERE 20160101 > CAST(a AS DATETIME);
DROP TABLE t1; DROP TABLE t1;
--echo #
--echo # MDEV-17857 Assertion `tmp != ((long long) 0x8000000000000000LL)' failed in TIME_from_longlong_datetime_packed upon SELECT with GROUP BY
--echo #
CREATE TABLE t1 (i INT, d DATETIME);
INSERT INTO t1 VALUES (3,NULL),(3,'1976-12-14 13:21:07'),(NULL,'1981-09-24 01:04:47');
SELECT ExtractValue('foo','bar'), i, MIN(d) FROM t1 GROUP BY i;
DROP TABLE t1;
--echo # --echo #
--echo # End of 10.1 tests --echo # End of 10.1 tests
--echo # --echo #
......
...@@ -1004,6 +1004,8 @@ sub run_test_server ($$$) { ...@@ -1004,6 +1004,8 @@ sub run_test_server ($$$) {
next if (defined $t->{reserved} and $t->{reserved} != $wid); next if (defined $t->{reserved} and $t->{reserved} != $wid);
if (! defined $t->{reserved}) if (! defined $t->{reserved})
{ {
# Force-restart not relevant when comparing *next* test
$t->{criteria} =~ s/force-restart$/no-restart/;
my $criteria= $t->{criteria}; my $criteria= $t->{criteria};
# Reserve similar tests for this worker, but not too many # Reserve similar tests for this worker, but not too many
my $maxres= (@$tests - $i) / $opt_parallel + 1; my $maxres= (@$tests - $i) / $opt_parallel + 1;
...@@ -2042,7 +2044,10 @@ sub collect_mysqld_features { ...@@ -2042,7 +2044,10 @@ sub collect_mysqld_features {
if (/Copyright/ .. /^-{30,}/) { if (/Copyright/ .. /^-{30,}/) {
# here we want to detect all not mandatory plugins # here we want to detect all not mandatory plugins
# they are listed in the --help output as # they are listed in the --help output as
# --archive[=name] Enable or disable ARCHIVE plugin. Possible values are ON, OFF, FORCE (don't start if the plugin fails to load). # --archive[=name]
# Enable or disable ARCHIVE plugin. Possible values are ON, OFF,
# FORCE (don't start if the plugin fails to load),
# FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not be uninstalled).
push @optional_plugins, $1 push @optional_plugins, $1
if /^ --([-a-z0-9]+)\[=name\] +Enable or disable \w+ plugin. One of: ON, OFF, FORCE/; if /^ --([-a-z0-9]+)\[=name\] +Enable or disable \w+ plugin. One of: ON, OFF, FORCE/;
next; next;
...@@ -3853,6 +3858,25 @@ sub find_analyze_request ...@@ -3853,6 +3858,25 @@ sub find_analyze_request
return $analyze; return $analyze;
} }
# The test can leave a file in var/tmp/ to signal
# that all servers should be restarted
sub restart_forced_by_test($)
{
my $file = shift;
my $restart = 0;
foreach my $mysqld ( mysqlds() )
{
my $datadir = $mysqld->value('datadir');
my $force_restart_file = "$datadir/mtr/$file";
if ( -f $force_restart_file )
{
mtr_verbose("Restart of servers forced by test");
$restart = 1;
last;
}
}
return $restart;
}
# Return timezone value of tinfo or default value # Return timezone value of tinfo or default value
sub timezone { sub timezone {
...@@ -4213,7 +4237,11 @@ sub run_testcase ($$) { ...@@ -4213,7 +4237,11 @@ sub run_testcase ($$) {
if ( $res == 0 ) if ( $res == 0 )
{ {
my $check_res; my $check_res;
if ( $opt_check_testcases and if ( restart_forced_by_test('force_restart') )
{
stop_all_servers($opt_shutdown_timeout);
}
elsif ( $opt_check_testcases and
$check_res= check_testcase($tinfo, "after")) $check_res= check_testcase($tinfo, "after"))
{ {
if ($check_res == 1) { if ($check_res == 1) {
...@@ -4249,7 +4277,8 @@ sub run_testcase ($$) { ...@@ -4249,7 +4277,8 @@ sub run_testcase ($$) {
find_testcase_skipped_reason($tinfo); find_testcase_skipped_reason($tinfo);
mtr_report_test_skipped($tinfo); mtr_report_test_skipped($tinfo);
# Restart if skipped due to missing perl, it may have had side effects # Restart if skipped due to missing perl, it may have had side effects
if ( $tinfo->{'comment'} =~ /^perl not found/ ) if ( restart_forced_by_test('force_restart_if_skipped') ||
$tinfo->{'comment'} =~ /^perl not found/ )
{ {
stop_all_servers($opt_shutdown_timeout); stop_all_servers($opt_shutdown_timeout);
} }
...@@ -5399,6 +5428,11 @@ sub server_need_restart { ...@@ -5399,6 +5428,11 @@ sub server_need_restart {
return 0; return 0;
} }
if ( $tinfo->{'force_restart'} ) {
mtr_verbose_restart($server, "forced in .opt file");
return 1;
}
if ( $opt_force_restart ) { if ( $opt_force_restart ) {
mtr_verbose_restart($server, "forced restart turned on"); mtr_verbose_restart($server, "forced restart turned on");
return 1; return 1;
...@@ -6382,6 +6416,7 @@ Misc options ...@@ -6382,6 +6416,7 @@ Misc options
servers to exit before finishing the process servers to exit before finishing the process
fast Run as fast as possible, don't wait for servers fast Run as fast as possible, don't wait for servers
to shutdown etc. to shutdown etc.
force-restart Always restart servers between tests
parallel=N Run tests in N parallel threads (default 1) parallel=N Run tests in N parallel threads (default 1)
Use parallel=auto for auto-setting of N Use parallel=auto for auto-setting of N
repeat=N Run each test N number of times repeat=N Run each test N number of times
......
-----BEGIN CERTIFICATE-----
MIIDWTCCAkGgAwIBAgIJAIlW4JmZGnU4MA0GCSqGSIb3DQEBBQUAMEIxCzAJBgNV
BAYTAkZJMRUwEwYDVQQHDAxEZWZhdWx0IENpdHkxHDAaBgNVBAoME0RlZmF1bHQg
Q29tcGFueSBMdGQwIBcNMTQxMDI0MDc1MTU1WhgPMzAxNDAyMjQwNzUxNTVaMEIx
CzAJBgNVBAYTAkZJMRUwEwYDVQQHDAxEZWZhdWx0IENpdHkxHDAaBgNVBAoME0Rl
ZmF1bHQgQ29tcGFueSBMdGQwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB
AQDDzU6xLZDD5rZENsOpTpTmqS8YisBaefU3ZeN7VJepZZ/7unM/1YLGJtuRh2Qa
MyTkvyjzf7bSFsDt9L5lfQwBBblVeWkrCvGnQmHDQQYB7JrSmFDPz9W9Mxf9Q2BW
B3lcoKXXJgMnWw0WGrt0lEdFp9gWbq8H9hwJdjpyyk4ZTIuucSOD4JUP3QFEhYU5
kdcIbDRVw81J4eAZ6EdvbjDN05S7qWjW7rJTnCHAHEd18hcsMGwjpwhjEaSdhMrM
mhOeL8kuQV0fI8v2xfYBliIn9xBZGOVzySPzwFmQceORlW6F3V5w6mwFkmuXqXWX
Qo98swTu7mb89qVYmR71d3L3AgMBAAGjUDBOMB0GA1UdDgQWBBRdWet/kGNTyvXK
wuBdP/eSldOgWjAfBgNVHSMEGDAWgBRdWet/kGNTyvXKwuBdP/eSldOgWjAMBgNV
HRMEBTADAQH/MA0GCSqGSIb3DQEBBQUAA4IBAQCcJpP+DR4AJxVelNTSZa+V38c+
jgrMD2Ku2eU8NQlsjgMfNEU5Md/g7FpP8aCFzVf0kAAT7DxZmSE3uWXQbMXyVJmy
bF+qXinf71QzdWULm6sASoshC6wbHnXL9ZjWQ3gh1nqVgo3MmLQYrb3eJfKaaLoc
wpjhYxVxGFOx1ITN3jED64lUfoLHvR6NFbESYKAuAAzSNqX4HOQ3uGk2THM8JocZ
oH2+38d81Kd4HQ7DDDKS/isG0+rR60Ti1cMgu7OT7p1dZCwT/KQuI5eGjE9lubkc
yAJjaod4rVLdBri3XVvtySfS2+/75qUgv2TF7d/s7mxMq4DDt29yeKSUhZCs
-----END CERTIFICATE-----
-----BEGIN DH PARAMETERS-----
MIGHAoGBAJWyvKjE+s7OP4Lj1jXKGlJGWT4Vd5YaxPljihTsRe1aXkWAgsuwISXk
/TQ8Rx5Zmze7rtwtU0PoYxvuam9FMXYqhw2dVe4qRdeSX78DSiL/YBkQzaxlfWVy
RE9+9dzHbCtRVDlN7K1kA+mGWH4/r7NAu4Qm/003V0NTtMwQSqebAgEC
-----END DH PARAMETERS-----
-----BEGIN PRIVATE KEY-----
MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDDzU6xLZDD5rZE
NsOpTpTmqS8YisBaefU3ZeN7VJepZZ/7unM/1YLGJtuRh2QaMyTkvyjzf7bSFsDt
9L5lfQwBBblVeWkrCvGnQmHDQQYB7JrSmFDPz9W9Mxf9Q2BWB3lcoKXXJgMnWw0W
Grt0lEdFp9gWbq8H9hwJdjpyyk4ZTIuucSOD4JUP3QFEhYU5kdcIbDRVw81J4eAZ
6EdvbjDN05S7qWjW7rJTnCHAHEd18hcsMGwjpwhjEaSdhMrMmhOeL8kuQV0fI8v2
xfYBliIn9xBZGOVzySPzwFmQceORlW6F3V5w6mwFkmuXqXWXQo98swTu7mb89qVY
mR71d3L3AgMBAAECggEBAIMT0UdZSp1quL/nrYqNGa9kuSuDz4uCM3+3jNcGZVU4
vCYHxpmINLi0UK8W5ROJA3zC4AZKjDgOlW93NXK5iKyyiUTIN3hiJi4jiVDuGbh2
DZtH7mmAKAU1zCx2y2osLLmurfbe8qOJF7ShhrZfgWsHFujFhhUdU92dsTkhZ7EU
2NF8ScxCo4PbOJoHC3j0ApfwCMxUMAKZF5+08EeKYqK7OAXI79HeIvEbHn3cUDGm
bvg6ykwlz2UUO4sg+xdCmn1Bt36HF/4e973Y5fkE/vd9mryHIlu9t7GJgWyUiPr8
BGEoAWDSpPOMd/b9ivtxh9Gd+LW/uitMuBIfrRPgz9kCgYEA+JqeeD2xqF2IzZyq
i1UqgKe3su2U2zhkgbu1h/1M/reNIZGylF0wFs3P+kNIB2NavmHjXcgSjdJzqRL9
XEWfFJRmeARo9RTEQEVd8zp1Eo8ISeiksGgvbL4rrNIRR5V5MZytfISRiGCWN6jx
ulJ6EieQk5EcvknGlWpJY/bBsQ0CgYEAyaCLqrR38gVl2Z0t6YlhW/HWAwGt+lf4
apN1AS4uykx7wRW2B0y9QUDfsrYeVlbbeRPP4UzPmJez+J2cweoIIeFFyo3KP2L7
79E3EVYywjXhPg52F7OjFA4Bp970XclIC5Al7kDufSgwZmWdceSx4Jjc5ixyQEC8
Ad0ThgP6yxMCgYAvC4OFmZcvF1Q2JLmZWGqMojB/KbqLqaZLbqwxqduSMEYC3kF/
FgttpVEAOQ8+ZqzbbkbKjnwEXpkIm9FaTsqF6HdjquH5zw48Y2QeDSfudSbKZb4U
rAKdf3dgYvhmJYEjxFSIRcYMmsqSieQEsGrtWJNheYqI8AkmaVCuHBoXWQKBgQCj
daelNffD2wJuQNI28axfiRjSiSsNuQHpDTCfS1ydnxH5QGu5UUphO4HfdWv03SfC
6f/vDIGEmQBLvyOVxfDf3qzhAMCFUO8kxj1ZrcMq1dmMoNa2cmj0WkKXYNZFrmfd
D/jgRf3Ss6FBcoIJErnudp8nb8MUOibxb9RjIpjQxwKBgEliKaGN+/QkPTNJ4vXz
609CIilxpE+YVTzlv3YeZP5HqsJTJPS2ARIUr/Pjpbl3LHfYNeeGDCwgkJIK0JJH
iA1M51q6t3zG2y9gKmC15FF0jShoZkRgqBxqrSHAnrCo5t2C48ElxJ3FEU8T75sz
dlGTbkmR0Wm43Kh++dWICJ3g
-----END PRIVATE KEY-----
-----BEGIN CERTIFICATE-----
MIIDWTCCAkGgAwIBAgIJAIlW4JmZGnU4MA0GCSqGSIb3DQEBBQUAMEIxCzAJBgNV
BAYTAkZJMRUwEwYDVQQHDAxEZWZhdWx0IENpdHkxHDAaBgNVBAoME0RlZmF1bHQg
Q29tcGFueSBMdGQwIBcNMTQxMDI0MDc1MTU1WhgPMzAxNDAyMjQwNzUxNTVaMEIx
CzAJBgNVBAYTAkZJMRUwEwYDVQQHDAxEZWZhdWx0IENpdHkxHDAaBgNVBAoME0Rl
ZmF1bHQgQ29tcGFueSBMdGQwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB
AQDDzU6xLZDD5rZENsOpTpTmqS8YisBaefU3ZeN7VJepZZ/7unM/1YLGJtuRh2Qa
MyTkvyjzf7bSFsDt9L5lfQwBBblVeWkrCvGnQmHDQQYB7JrSmFDPz9W9Mxf9Q2BW
B3lcoKXXJgMnWw0WGrt0lEdFp9gWbq8H9hwJdjpyyk4ZTIuucSOD4JUP3QFEhYU5
kdcIbDRVw81J4eAZ6EdvbjDN05S7qWjW7rJTnCHAHEd18hcsMGwjpwhjEaSdhMrM
mhOeL8kuQV0fI8v2xfYBliIn9xBZGOVzySPzwFmQceORlW6F3V5w6mwFkmuXqXWX
Qo98swTu7mb89qVYmR71d3L3AgMBAAGjUDBOMB0GA1UdDgQWBBRdWet/kGNTyvXK
wuBdP/eSldOgWjAfBgNVHSMEGDAWgBRdWet/kGNTyvXKwuBdP/eSldOgWjAMBgNV
HRMEBTADAQH/MA0GCSqGSIb3DQEBBQUAA4IBAQCcJpP+DR4AJxVelNTSZa+V38c+
jgrMD2Ku2eU8NQlsjgMfNEU5Md/g7FpP8aCFzVf0kAAT7DxZmSE3uWXQbMXyVJmy
bF+qXinf71QzdWULm6sASoshC6wbHnXL9ZjWQ3gh1nqVgo3MmLQYrb3eJfKaaLoc
wpjhYxVxGFOx1ITN3jED64lUfoLHvR6NFbESYKAuAAzSNqX4HOQ3uGk2THM8JocZ
oH2+38d81Kd4HQ7DDDKS/isG0+rR60Ti1cMgu7OT7p1dZCwT/KQuI5eGjE9lubkc
yAJjaod4rVLdBri3XVvtySfS2+/75qUgv2TF7d/s7mxMq4DDt29yeKSUhZCs
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIDVzCCAj+gAwIBAgIJALBO5bqmtlYkMA0GCSqGSIb3DQEBBQUAMEIxCzAJBgNV
BAYTAkZJMRUwEwYDVQQHDAxEZWZhdWx0IENpdHkxHDAaBgNVBAoME0RlZmF1bHQg
Q29tcGFueSBMdGQwHhcNMTUwNjI2MDcxMjQ1WhcNMjUwNTA0MDcxMjQ1WjBCMQsw
CQYDVQQGEwJGSTEVMBMGA1UEBwwMRGVmYXVsdCBDaXR5MRwwGgYDVQQKDBNEZWZh
dWx0IENvbXBhbnkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
1DlcztIzSngGeTUFibj9GZ4ZO78ASpgYySZv/DRIVn/3hbF41ZRD/6uJlb5rf1R7
fpFsurbXNDDxeap7b/Gz2XSQy96Dbm0SbsFSZttV/R2WtlT1Wf5n9ix6RLqhKSbg
nPyL2fsDaxtZh2uywGJEXhwXFtdx3deIo/tYivDfl5Tcsv0NnZY8Vg0boBRP+FEn
ReJOdSa5LLn+QJN2Xa+wutbLHe0hI6huKUXU2YUeBfgyk1nWol5241ZUDCgDsoaW
8r2YeJNHmNInd3wERbqFgFHsR4N1+Atcyrfn/uQSj9zrTPO/Pp51KpjWf/gjxjXP
biu5De50qZ4+U4no20EIOwIDAQABo1AwTjAdBgNVHQ4EFgQU3kSPGchrOoQJ5gq1
mmV2HEra6GswHwYDVR0jBBgwFoAU3kSPGchrOoQJ5gq1mmV2HEra6GswDAYDVR0T
BAUwAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEAfoBD64FJ9fAR19+vwueFGmpWNIqF
PzN7QmEpCMduV3DXuxYO73q2ikXgrVO5HWFz9IjNvzXbSRmWNzJGaZ3QYZ+Xx1JJ
8MrAOUr6djWuyD659f64dh/2jMxiQNoEHrknXm9HSqR5oJVwndFyr/zvSkYSRexE
KFciIprb9LOba9G3ZMBYBdqK+f3Ky16BMjaD6XfaTx+xjHk/8peSueXIQl+v2biz
zSfpEUa0dKCIxckrzD4JknDHFimTsrzlRftcg8t8piOXwZomFcnVunyGs2bJ/Npj
25c2e6sx7XSc5bUgPGuQcSGflZPLg9zWyJ69sVYUNAz+gqfvWfOOJuzPNg==
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIDVzCCAj+gAwIBAgIJALBO5bqmtlYkMA0GCSqGSIb3DQEBBQUAMEIxCzAJBgNV
BAYTAkZJMRUwEwYDVQQHDAxEZWZhdWx0IENpdHkxHDAaBgNVBAoME0RlZmF1bHQg
Q29tcGFueSBMdGQwHhcNMTUwNjI2MDcxMjQ1WhcNMjUwNTA0MDcxMjQ1WjBCMQsw
CQYDVQQGEwJGSTEVMBMGA1UEBwwMRGVmYXVsdCBDaXR5MRwwGgYDVQQKDBNEZWZh
dWx0IENvbXBhbnkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
1DlcztIzSngGeTUFibj9GZ4ZO78ASpgYySZv/DRIVn/3hbF41ZRD/6uJlb5rf1R7
fpFsurbXNDDxeap7b/Gz2XSQy96Dbm0SbsFSZttV/R2WtlT1Wf5n9ix6RLqhKSbg
nPyL2fsDaxtZh2uywGJEXhwXFtdx3deIo/tYivDfl5Tcsv0NnZY8Vg0boBRP+FEn
ReJOdSa5LLn+QJN2Xa+wutbLHe0hI6huKUXU2YUeBfgyk1nWol5241ZUDCgDsoaW
8r2YeJNHmNInd3wERbqFgFHsR4N1+Atcyrfn/uQSj9zrTPO/Pp51KpjWf/gjxjXP
biu5De50qZ4+U4no20EIOwIDAQABo1AwTjAdBgNVHQ4EFgQU3kSPGchrOoQJ5gq1
mmV2HEra6GswHwYDVR0jBBgwFoAU3kSPGchrOoQJ5gq1mmV2HEra6GswDAYDVR0T
BAUwAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEAfoBD64FJ9fAR19+vwueFGmpWNIqF
PzN7QmEpCMduV3DXuxYO73q2ikXgrVO5HWFz9IjNvzXbSRmWNzJGaZ3QYZ+Xx1JJ
8MrAOUr6djWuyD659f64dh/2jMxiQNoEHrknXm9HSqR5oJVwndFyr/zvSkYSRexE
KFciIprb9LOba9G3ZMBYBdqK+f3Ky16BMjaD6XfaTx+xjHk/8peSueXIQl+v2biz
zSfpEUa0dKCIxckrzD4JknDHFimTsrzlRftcg8t8piOXwZomFcnVunyGs2bJ/Npj
25c2e6sx7XSc5bUgPGuQcSGflZPLg9zWyJ69sVYUNAz+gqfvWfOOJuzPNg==
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDUOVzO0jNKeAZ5
NQWJuP0Znhk7vwBKmBjJJm/8NEhWf/eFsXjVlEP/q4mVvmt/VHt+kWy6ttc0MPF5
qntv8bPZdJDL3oNubRJuwVJm21X9HZa2VPVZ/mf2LHpEuqEpJuCc/IvZ+wNrG1mH
a7LAYkReHBcW13Hd14ij+1iK8N+XlNyy/Q2dljxWDRugFE/4USdF4k51Jrksuf5A
k3Zdr7C61ssd7SEjqG4pRdTZhR4F+DKTWdaiXnbjVlQMKAOyhpbyvZh4k0eY0id3
fARFuoWAUexHg3X4C1zKt+f+5BKP3OtM878+nnUqmNZ/+CPGNc9uK7kN7nSpnj5T
iejbQQg7AgMBAAECggEBAJ4m7VG3db+uOGzFJY5fzEX1+qn6ibYNKJNmUJfrQmkr
zgLUoc7QQehbJhnwoN1v0OQebZ+rOC7NtnZLpNdkkPmhk3JKLTnykIT3DnhWRftt
vG2+XGUnYMQkmy1ywz0Omt6CmZnlJMQByrNPgBM8Z+SWHGLKRTHkOBCz82T/YjDr
wqug1Yv6W0wMNM/cikgoBldVG7hABCJuShjffIbUgVysK3dEPNywNAC78neoGECm
evPZOaIkWEr86SpAlwA6Yh+zTQZ03CXATcGonJdWJ015DvlKRv6QyRR0Q/Y1ONwb
f115kll15MJBEspFdSyhlMcVJlwO8WMaZ2qIzlQZmdECgYEA//P469QzX00L/urK
7IRvtSVu5CP/A/Wui90U4KoP7XgXIeExnEtzLVs1K7vjuzdpTyq+68XuC40gPcJW
RvoX229m6gRV8nC53UiV71jM8IvkyEqFYT/gfZC9KQCMSRJLtVnDMpZ3gMxAY6/5
p20o616Au8DKFFetQV0aD4Hj1/MCgYEA1ENV1WkgvN6yItB77E9kN/vbKLRh0hrg
9xj0SmMXGYyDM9NpjbgbgJIZo3ukkBtp3kEY8P9JQZRcd1EcnnSrwTB7ChdInWkR
m/LpIZBEMqNQbeu4QSzZYYS6z4tcGGx43aHqzzNBZdnQnqhYL1CvlLwhkgX6oQCo
woXqyfMNKJkCgYEA63gD1NGPwWkcVBSlQxpDup8JeZE0Fux6++kUP+u0Y39LqLuH
7IXtHBkAvY9JXv8HPvHQWw/og2/97VNQFFQYhqPiRgBfIX9bPpx8c4l6YQISI8GL
G4CsglgZ7hK2/LJ8PAascWnD3xYJVqyaPNFMB90VCaW/Qx+2IKAKTaHtfskCgYBu
1f5C4pMqrCpeTXj4Cvis1wE4PwB5QnnH7SrakOVl/N4huLn8O2948lEa8Zwbd4UP
ffR1Gwh4iuzBjQQhpZBt30/QFBphv5RnVy7uzLMfsfF0hEqBFdcoubMGXqGnSzTN
nhfLO9thQJxTzFnH0xzr0FTDOAYH/h0g/eZ8r0JmuQKBgQDjhXM+hJ3Pkwua+Fnl
nZfY5MeSzkJki/9iwVo8rSDwmZS9Nsc83oZnddM7c2x63t+zYOAcMxsVCiByMDzo
5IB781HWRBGcU8TnW1b0bAnZimjKp/qsZ/Szr38rvImqG8TjzbcSD7w0SpyRQ/Ot
A7SZFkWYfem8/q/VImjU/CNbOQ==
-----END PRIVATE KEY-----
...@@ -10,27 +10,24 @@ ...@@ -10,27 +10,24 @@
# #
############################################################################## ##############################################################################
GAL-419 : MDEV-13549 Galera test failures MW-286 : MDEV-19992 Galera test failure on MW-286
MW-328A : MDEV-17847 Galera test failure on MW-328[A|B|C] MW-328A : MDEV-17847 Galera test failure on MW-328[A|B|C]
MW-328B : MDEV-17847 Galera test failure on MW-328[A|B|C] MW-328B : MDEV-17847 Galera test failure on MW-328[A|B|C]
MW-328C : MDEV-17847 Galera test failure on MW-328[A|B|C] MW-328C : MDEV-17847 Galera test failure on MW-328[A|B|C]
MW-329 : wsrep_local_replays not stable MW-329 : MDEV-19962 Galera test failure on MW-329
MW-336 : MDEV-19746 Galera test failures because of wsrep_slave_threads identification
MW-388: MDEV-19803 Long semaphore wait error on galera.MW-388 MW-388: MDEV-19803 Long semaphore wait error on galera.MW-388
MW-416 : MDEV-13549 Galera test failures
MW-44 : MDEV-15809 Test failure on galera.MW-44
galera_account_management : MariaDB 10.0 does not support ALTER USER galera_account_management : MariaDB 10.0 does not support ALTER USER
galera_as_master_gtid : Requires MySQL GTID galera_as_master_gtid : Requires MySQL GTID
galera_as_master_gtid_change_master : Requires MySQL GTID galera_as_master_gtid_change_master : Requires MySQL GTID
galera_as_slave_preordered : wsrep-preordered feature not merged to MariaDB galera_as_slave_preordered : wsrep-preordered feature not merged to MariaDB
galera_as_slave_replication_bundle : MDEV-15785 OPTION_GTID_BEGIN is set in Gtid_log_event::do_apply_event() galera_as_slave_replication_bundle : MDEV-15785 OPTION_GTID_BEGIN is set in Gtid_log_event::do_apply_event()
galera_autoinc_sst_mariabackup : MDEV-19926 Galera SST tests fail
galera_binlog_rows_query_log_events: MariaDB does not support binlog_rows_query_log_events galera_binlog_rows_query_log_events: MariaDB does not support binlog_rows_query_log_events
galera_binlog_stmt_autoinc: MDEV-19959 Galera test failure on galera_binlog_stmt_autoinc
galera_flush : MariaDB does not have global.thread_statistics galera_flush : MariaDB does not have global.thread_statistics
galera_gcache_recover_manytrx : MDEV-18834 Galera test failure galera_gcache_recover_manytrx : MDEV-18834 Galera test failure
galera_ist_mariabackup : MDEV-18829 test leaves port open galera_ist_mariabackup : MDEV-18829 test leaves port open
galera_ist_progress: MDEV-15236 fails when trying to read transfer status galera_ist_progress : MDEV-15236 fails when trying to read transfer status
galera_kill_applier : race condition at the start of the test
galera_kill_ddl : MDEV-17108 Test failure on galera.galera_kill_ddl
galera_migrate : MariaDB does not support START SLAVE USER galera_migrate : MariaDB does not support START SLAVE USER
galera_pc_ignore_sb : MDEV-15811/MDEV-17357 Test failure galera_pc_ignore_sb : MDEV-15811/MDEV-17357 Test failure
galera_ssl_upgrade : MDEV-13549 Galera test failures galera_ssl_upgrade : MDEV-13549 Galera test failures
...@@ -38,7 +35,6 @@ galera_sst_mysqldump_with_key : MDEV-16890 Galera test failure ...@@ -38,7 +35,6 @@ galera_sst_mysqldump_with_key : MDEV-16890 Galera test failure
galera_var_node_address : MDEV-17151 Galera test failure galera_var_node_address : MDEV-17151 Galera test failure
galera_var_notify_cmd : MDEV-13549 Galera test failures galera_var_notify_cmd : MDEV-13549 Galera test failures
galera_var_slave_threads : MDEV-19746 Galera test failures because of wsrep_slave_threads identification galera_var_slave_threads : MDEV-19746 Galera test failures because of wsrep_slave_threads identification
galera_sst_mariabackup_encrypt_with_key : MDEV-19926 Galera SST tests fail
galera_wan : MDEV-17259: Test failure on galera.galera_wan galera_wan : MDEV-17259: Test failure on galera.galera_wan
partition : MDEV-13549 regularly showing auto_increment mismatch partition : MDEV-19958 Galera test failure on galera.partition
pxc-421: Lock timeout exceeded
query_cache : MDEV-18137: Galera test failure on query_cache
call mtr.add_suppression("WSREP: It may not be safe to bootstrap the cluster from this node.*");
call mtr.add_suppression("Aborting");
connection node_2;
SET SESSION wsrep_sync_wait = 0; SET SESSION wsrep_sync_wait = 0;
Killing server ... Killing server ...
connection node_1;
SET SESSION wsrep_sync_wait = 0; SET SESSION wsrep_sync_wait = 0;
Killing server ... Killing server ...
connection node_1;
connection node_2;
...@@ -11,16 +11,12 @@ DECLARE CONTINUE HANDLER FOR SQLEXCEPTION BEGIN END; ...@@ -11,16 +11,12 @@ DECLARE CONTINUE HANDLER FOR SQLEXCEPTION BEGIN END;
SET SESSION wsrep_sync_wait = 0; SET SESSION wsrep_sync_wait = 0;
WHILE 1 DO WHILE 1 DO
INSERT INTO t1 (f1) VALUES (FLOOR( 1 + RAND( ) * 65535 )); INSERT INTO t1 (f1) VALUES (FLOOR( 1 + RAND( ) * 65535 ));
SELECT SLEEP(0.1);
END WHILE; END WHILE;
END| END|
connect node_1b, 127.0.0.1, root, , test, $NODE_MYPORT_1; connect node_1b, 127.0.0.1, root, , test, $NODE_MYPORT_1;
connection node_1b; connection node_1b;
CALL proc_insert();;
connection node_2;
CALL mtr.add_suppression("WSREP: Failed to report last committed .*");
SELECT VARIABLE_VALUE > 0 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_local_replays'; SELECT VARIABLE_VALUE > 0 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_local_replays';
VARIABLE_VALUE > 0
1
connection node_1; connection node_1;
connection node_1b; connection node_1b;
connection node_1; connection node_1;
......
CREATE TABLE t1 (f1 INTEGER) Engine=InnoDB;
INSERT INTO t1 values(0);
connection node_1; connection node_1;
CREATE TABLE t1 (f1 INTEGER) Engine=InnoDB;
SET GLOBAL wsrep_slave_threads = 10; SET GLOBAL wsrep_slave_threads = 10;
# Set slave threads to 10 step 1
SET GLOBAL wsrep_slave_threads = 1; SET GLOBAL wsrep_slave_threads = 1;
# Wait 10 slave threads to start 1
connection node_2; connection node_2;
SET SESSION wsrep_sync_wait=15; INSERT INTO t1 VALUES (1);
# Generate 100 replication events
connection node_1; connection node_1;
SET SESSION wsrep_sync_wait=15; SET SESSION wsrep_sync_wait=15;
SELECT COUNT(*) FROM t1; SELECT COUNT(*) FROM t1;
COUNT(*) COUNT(*)
101 1
# Wait 9 slave threads to exit 1
SET GLOBAL wsrep_slave_threads = 10; SET GLOBAL wsrep_slave_threads = 10;
# Wait 10 slave threads to start 2 # Set slave threads to 10 step 2
SET GLOBAL wsrep_slave_threads = 20; SET GLOBAL wsrep_slave_threads = 20;
# Wait 20 slave threads to start 3 # Set slave threads to 20
SET GLOBAL wsrep_slave_threads = 1; SET GLOBAL wsrep_slave_threads = 1;
connection node_2; connection node_2;
# Generate 100 replication events INSERT INTO t1 VALUES (1);
INSERT INTO t1 VALUES (2);
INSERT INTO t1 VALUES (3);
INSERT INTO t1 VALUES (4);
INSERT INTO t1 VALUES (5);
INSERT INTO t1 VALUES (6);
INSERT INTO t1 VALUES (7);
INSERT INTO t1 VALUES (8);
INSERT INTO t1 VALUES (9);
INSERT INTO t1 VALUES (10);
connection node_1; connection node_1;
SET GLOBAL wsrep_slave_threads = 10;
SELECT COUNT(*) FROM t1; SELECT COUNT(*) FROM t1;
COUNT(*) COUNT(*)
201 11
# Wait 10 slave threads to exit 3 # Set slave threads to 10 step 3
SET GLOBAL wsrep_slave_threads = 10;
SET GLOBAL wsrep_slave_threads = 1;
# Wait 10 slave threads to start 3
connection node_2; connection node_2;
# Generate 100 replication events INSERT INTO t1 VALUES (11);
INSERT INTO t1 VALUES (12);
INSERT INTO t1 VALUES (13);
INSERT INTO t1 VALUES (14);
INSERT INTO t1 VALUES (15);
INSERT INTO t1 VALUES (16);
INSERT INTO t1 VALUES (17);
INSERT INTO t1 VALUES (18);
INSERT INTO t1 VALUES (19);
INSERT INTO t1 VALUES (20);
connection node_1; connection node_1;
SELECT COUNT(*) FROM t1; SELECT COUNT(*) FROM t1;
COUNT(*) COUNT(*)
301 21
# Wait 10 slave threads to exit 4 SET GLOBAL wsrep_slave_threads = 1;
connection node_1;
DROP TABLE t1; DROP TABLE t1;
CREATE USER 'userMW416'@'localhost'; CREATE USER 'userMW416'@'localhost';
GRANT SELECT, INSERT, UPDATE ON test.* TO 'userMW416'@'localhost'; GRANT SELECT, INSERT, UPDATE ON test.* TO 'userMW416'@'localhost';
SHOW GLOBAL STATUS LIKE 'wsrep_replicated'; connect userMW416, localhost, userMW416,, test, $NODE_MYPORT_1;
Variable_name Value connection userMW416;
wsrep_replicated 2
ALTER DATABASE db CHARACTER SET = utf8; ALTER DATABASE db CHARACTER SET = utf8;
ERROR 42000: Access denied for user 'userMW416'@'localhost' to database 'db' ERROR 42000: Access denied for user 'userMW416'@'localhost' to database 'db'
ALTER EVENT ev1 RENAME TO ev2; ALTER EVENT ev1 RENAME TO ev2;
...@@ -101,6 +100,7 @@ INSTALL PLUGIN plg SONAME 'plg.so'; ...@@ -101,6 +100,7 @@ INSTALL PLUGIN plg SONAME 'plg.so';
Got one of the listed errors Got one of the listed errors
UNINSTALL PLUGIN plg; UNINSTALL PLUGIN plg;
Got one of the listed errors Got one of the listed errors
connection node_1;
DROP USER 'userMW416'@'localhost'; DROP USER 'userMW416'@'localhost';
SHOW DATABASES; SHOW DATABASES;
Database Database
...@@ -109,6 +109,3 @@ mtr ...@@ -109,6 +109,3 @@ mtr
mysql mysql
performance_schema performance_schema
test test
SHOW GLOBAL STATUS LIKE 'wsrep_replicated';
Variable_name Value
wsrep_replicated 3
connection node_1;
TRUNCATE TABLE mysql.general_log; TRUNCATE TABLE mysql.general_log;
connection node_2;
TRUNCATE TABLE mysql.general_log; TRUNCATE TABLE mysql.general_log;
connection node_1;
SELECT Argument FROM mysql.general_log; SELECT Argument FROM mysql.general_log;
Argument Argument
SET GLOBAL general_log='ON'; SET GLOBAL general_log='ON';
...@@ -12,8 +15,10 @@ SELECT argument FROM mysql.general_log WHERE argument LIKE 'CREATE%' OR argument ...@@ -12,8 +15,10 @@ SELECT argument FROM mysql.general_log WHERE argument LIKE 'CREATE%' OR argument
argument argument
CREATE TABLE t1 (f1 INTEGER) ENGINE=InnoDB CREATE TABLE t1 (f1 INTEGER) ENGINE=InnoDB
ALTER TABLE t1 ADD COLUMN f2 INTEGER ALTER TABLE t1 ADD COLUMN f2 INTEGER
connection node_2;
SELECT Argument FROM mysql.general_log; SELECT Argument FROM mysql.general_log;
Argument Argument
DROP TABLE t1; DROP TABLE t1;
SET GLOBAL general_log='OFF'; SET GLOBAL general_log='OFF';
connection node_1;
SET GLOBAL general_log='OFF'; SET GLOBAL general_log='OFF';
...@@ -22,3 +22,10 @@ connection node_3; ...@@ -22,3 +22,10 @@ connection node_3;
connection node_2; connection node_2;
STOP SLAVE; STOP SLAVE;
RESET SLAVE ALL; RESET SLAVE ALL;
#cleanup
connection node_1;
reset master;
connection node_2;
reset master;
connection node_3;
reset master;
connection node_1; connection node_2;
SET GLOBAL wsrep_slave_threads=2;
Got one of the listed errors Got one of the listed errors
Got one of the listed errors Got one of the listed errors
Got one of the listed errors Got one of the listed errors
Got one of the listed errors Got one of the listed errors
SET GLOBAL wsrep_slave_threads=1;
connection node_1;
create table t1(a int not null primary key) engine=innodb;
insert into t1 values (1);
insert into t1 values (2);
connection node_2;
set global wsrep_sync_wait=15;
select count(*) from t1;
count(*)
2
connection node_1;
drop table t1;
call mtr.add_suppression("WSREP: Last Applied Action message in non-primary configuration from member .*");
connection node_1; connection node_1;
connection node_2;
connection node_1;
call mtr.add_suppression("WSREP: Last Applied Action message in non-primary configuration from member .*");
SET GLOBAL wsrep_provider_options = 'pc.ignore_sb=true'; SET GLOBAL wsrep_provider_options = 'pc.ignore_sb=true';
CREATE TABLE t1 (f1 INTEGER) ENGINE=InnoDB; CREATE TABLE t1 (f1 INTEGER NOT NULL PRIMARY KEY) ENGINE=InnoDB;
connection node_2; connection node_2;
Killing server ... Killing server ...
connection node_1; connection node_1;
ALTER TABLE t1 ADD COLUMN f2 INTEGER; ALTER TABLE t1 ADD COLUMN f2 INTEGER;
connection node_2; connection node_2;
connection node_2a; connection node_2a;
SELECT COUNT(*) = 2 FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME='t1'; SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME='t1';
COUNT(*) = 2 COUNT(*)
1 2
connection node_1; connection node_1;
DROP TABLE t1; DROP TABLE t1;
connection node_1;
reset master;
connection node_2;
reset master;
CREATE TABLE t1 (id INT PRIMARY KEY) ENGINE=InnoDB; CREATE TABLE t1 (id INT PRIMARY KEY) ENGINE=InnoDB;
INSERT INTO t1 VALUES (1); INSERT INTO t1 VALUES (1);
CREATE TABLE t2 (id INT) ENGINE=InnoDB; CREATE TABLE t2 (id INT) ENGINE=InnoDB;
...@@ -12,58 +16,60 @@ COUNT(*) = 2 ...@@ -12,58 +16,60 @@ COUNT(*) = 2
1 1
connection node_1; connection node_1;
ALTER TABLE t1 ADD COLUMN f2 INTEGER; ALTER TABLE t1 ADD COLUMN f2 INTEGER;
FLUSH LOGS; include/show_binlog_events.inc
SHOW BINLOG EVENTS IN 'mysqld-bin.000002' LIMIT 4,21;
Log_name Pos Event_type Server_id End_log_pos Info Log_name Pos Event_type Server_id End_log_pos Info
mysqld-bin.000002 # Gtid # # GTID 0-1-1 mysqld-bin.000001 # Gtid # # GTID #-#-#
mysqld-bin.000002 # Query # # use `test`; CREATE TABLE t1 (id INT PRIMARY KEY) ENGINE=InnoDB mysqld-bin.000001 # Query # # use `test`; CREATE TABLE t1 (id INT PRIMARY KEY) ENGINE=InnoDB
mysqld-bin.000002 # Gtid # # BEGIN GTID 0-1-2 mysqld-bin.000001 # Gtid # # BEGIN GTID #-#-#
mysqld-bin.000002 # Annotate_rows # # INSERT INTO t1 VALUES (1) mysqld-bin.000001 # Annotate_rows # # INSERT INTO t1 VALUES (1)
mysqld-bin.000002 # Table_map # # table_id: # (test.t1) mysqld-bin.000001 # Table_map # # table_id: # (test.t1)
mysqld-bin.000002 # Write_rows_v1 # # table_id: # flags: STMT_END_F mysqld-bin.000001 # Write_rows_v1 # # table_id: # flags: STMT_END_F
mysqld-bin.000002 # Xid # # COMMIT /* xid=# */ mysqld-bin.000001 # Xid # # COMMIT /* XID */
mysqld-bin.000002 # Gtid # # GTID 0-1-3 mysqld-bin.000001 # Gtid # # GTID #-#-#
mysqld-bin.000002 # Query # # use `test`; CREATE TABLE t2 (id INT) ENGINE=InnoDB mysqld-bin.000001 # Query # # use `test`; CREATE TABLE t2 (id INT) ENGINE=InnoDB
mysqld-bin.000002 # Gtid # # BEGIN GTID 0-1-4 mysqld-bin.000001 # Gtid # # BEGIN GTID #-#-#
mysqld-bin.000002 # Annotate_rows # # INSERT INTO t2 VALUES (1) mysqld-bin.000001 # Annotate_rows # # INSERT INTO t2 VALUES (1)
mysqld-bin.000002 # Table_map # # table_id: # (test.t2) mysqld-bin.000001 # Table_map # # table_id: # (test.t2)
mysqld-bin.000002 # Write_rows_v1 # # table_id: # flags: STMT_END_F mysqld-bin.000001 # Write_rows_v1 # # table_id: # flags: STMT_END_F
mysqld-bin.000002 # Xid # # COMMIT /* xid=# */ mysqld-bin.000001 # Xid # # COMMIT /* XID */
mysqld-bin.000002 # Gtid # # BEGIN GTID 0-1-5 mysqld-bin.000001 # Gtid # # BEGIN GTID #-#-#
mysqld-bin.000002 # Annotate_rows # # INSERT INTO t2 VALUES (1) mysqld-bin.000001 # Annotate_rows # # INSERT INTO t2 VALUES (1)
mysqld-bin.000002 # Table_map # # table_id: # (test.t2) mysqld-bin.000001 # Table_map # # table_id: # (test.t2)
mysqld-bin.000002 # Write_rows_v1 # # table_id: # flags: STMT_END_F mysqld-bin.000001 # Write_rows_v1 # # table_id: # flags: STMT_END_F
mysqld-bin.000002 # Xid # # COMMIT /* xid=# */ mysqld-bin.000001 # Xid # # COMMIT /* XID */
mysqld-bin.000002 # Gtid # # GTID 0-1-6 mysqld-bin.000001 # Gtid # # GTID #-#-#
mysqld-bin.000002 # Query # # use `test`; ALTER TABLE t1 ADD COLUMN f2 INTEGER mysqld-bin.000001 # Query # # use `test`; ALTER TABLE t1 ADD COLUMN f2 INTEGER
connection node_2; connection node_2;
SELECT COUNT(*) = 2 FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 't1'; SELECT COUNT(*) = 2 FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 't1';
COUNT(*) = 2 COUNT(*) = 2
1 1
SHOW BINLOG EVENTS IN 'mysqld-bin.000003' LIMIT 3,21; include/show_binlog_events.inc
Log_name Pos Event_type Server_id End_log_pos Info Log_name Pos Event_type Server_id End_log_pos Info
mysqld-bin.000003 # Gtid # # GTID 0-1-1 mysqld-bin.000001 # Gtid # # GTID #-#-#
mysqld-bin.000003 # Query # # use `test`; CREATE TABLE t1 (id INT PRIMARY KEY) ENGINE=InnoDB mysqld-bin.000001 # Query # # use `test`; CREATE TABLE t1 (id INT PRIMARY KEY) ENGINE=InnoDB
mysqld-bin.000003 # Gtid # # BEGIN GTID 0-1-2 mysqld-bin.000001 # Gtid # # BEGIN GTID #-#-#
mysqld-bin.000003 # Annotate_rows # # INSERT INTO t1 VALUES (1) mysqld-bin.000001 # Annotate_rows # # INSERT INTO t1 VALUES (1)
mysqld-bin.000003 # Table_map # # table_id: # (test.t1) mysqld-bin.000001 # Table_map # # table_id: # (test.t1)
mysqld-bin.000003 # Write_rows_v1 # # table_id: # flags: STMT_END_F mysqld-bin.000001 # Write_rows_v1 # # table_id: # flags: STMT_END_F
mysqld-bin.000003 # Xid # # COMMIT /* xid=# */ mysqld-bin.000001 # Xid # # COMMIT /* XID */
mysqld-bin.000003 # Gtid # # GTID 0-1-3 mysqld-bin.000001 # Gtid # # GTID #-#-#
mysqld-bin.000003 # Query # # use `test`; CREATE TABLE t2 (id INT) ENGINE=InnoDB mysqld-bin.000001 # Query # # use `test`; CREATE TABLE t2 (id INT) ENGINE=InnoDB
mysqld-bin.000003 # Gtid # # BEGIN GTID 0-1-4 mysqld-bin.000001 # Gtid # # BEGIN GTID #-#-#
mysqld-bin.000003 # Annotate_rows # # INSERT INTO t2 VALUES (1) mysqld-bin.000001 # Annotate_rows # # INSERT INTO t2 VALUES (1)
mysqld-bin.000003 # Table_map # # table_id: # (test.t2) mysqld-bin.000001 # Table_map # # table_id: # (test.t2)
mysqld-bin.000003 # Write_rows_v1 # # table_id: # flags: STMT_END_F mysqld-bin.000001 # Write_rows_v1 # # table_id: # flags: STMT_END_F
mysqld-bin.000003 # Xid # # COMMIT /* xid=# */ mysqld-bin.000001 # Xid # # COMMIT /* XID */
mysqld-bin.000003 # Gtid # # BEGIN GTID 0-1-5 mysqld-bin.000001 # Gtid # # BEGIN GTID #-#-#
mysqld-bin.000003 # Annotate_rows # # INSERT INTO t2 VALUES (1) mysqld-bin.000001 # Annotate_rows # # INSERT INTO t2 VALUES (1)
mysqld-bin.000003 # Table_map # # table_id: # (test.t2) mysqld-bin.000001 # Table_map # # table_id: # (test.t2)
mysqld-bin.000003 # Write_rows_v1 # # table_id: # flags: STMT_END_F mysqld-bin.000001 # Write_rows_v1 # # table_id: # flags: STMT_END_F
mysqld-bin.000003 # Xid # # COMMIT /* xid=# */ mysqld-bin.000001 # Xid # # COMMIT /* XID */
mysqld-bin.000003 # Gtid # # GTID 0-1-6 mysqld-bin.000001 # Gtid # # GTID #-#-#
mysqld-bin.000003 # Query # # use `test`; ALTER TABLE t1 ADD COLUMN f2 INTEGER mysqld-bin.000001 # Query # # use `test`; ALTER TABLE t1 ADD COLUMN f2 INTEGER
DROP TABLE t1; DROP TABLE t1;
DROP TABLE t2; DROP TABLE t2;
#cleanup
connection node_1; connection node_1;
RESET MASTER; RESET MASTER;
connection node_2;
reset master;
...@@ -18,3 +18,5 @@ COUNT(*) = 1 ...@@ -18,3 +18,5 @@ COUNT(*) = 1
1 1
connection node_1; connection node_1;
DROP TABLE t1; DROP TABLE t1;
truncate table mysql.slow_log;
truncate table mysql.general_log;
--- r/galera_sst_mysqldump_with_key.result 2018-11-19 09:56:30.081976558 +0200 --- r/galera_sst_mysqldump_with_key.result 2019-07-04 09:39:54.993971174 +0300
+++ r/galera_sst_mysqldump_with_key.reject 2018-11-19 10:47:41.609299365 +0200 +++ r/galera_sst_mysqldump_with_key.reject 2019-07-04 09:55:34.171175305 +0300
@@ -183,6 +183,103 @@ @@ -204,6 +204,114 @@
DROP TABLE t1; DROP TABLE t1;
COMMIT; COMMIT;
SET AUTOCOMMIT=ON; SET AUTOCOMMIT=ON;
+Performing State Transfer on a server that has been killed and restarted +Performing State Transfer on a server that has been killed and restarted
+while a DDL was in progress on it +while a DDL was in progress on it
+connection node_1;
+CREATE TABLE t1 (f1 CHAR(255)) ENGINE=InnoDB; +CREATE TABLE t1 (f1 CHAR(255)) ENGINE=InnoDB;
+SET AUTOCOMMIT=OFF; +SET AUTOCOMMIT=OFF;
+START TRANSACTION; +START TRANSACTION;
...@@ -14,6 +15,7 @@ ...@@ -14,6 +15,7 @@
+INSERT INTO t1 VALUES ('node1_committed_before'); +INSERT INTO t1 VALUES ('node1_committed_before');
+INSERT INTO t1 VALUES ('node1_committed_before'); +INSERT INTO t1 VALUES ('node1_committed_before');
+INSERT INTO t1 VALUES ('node1_committed_before'); +INSERT INTO t1 VALUES ('node1_committed_before');
+connection node_2;
+START TRANSACTION; +START TRANSACTION;
+INSERT INTO t1 VALUES ('node2_committed_before'); +INSERT INTO t1 VALUES ('node2_committed_before');
+INSERT INTO t1 VALUES ('node2_committed_before'); +INSERT INTO t1 VALUES ('node2_committed_before');
...@@ -22,9 +24,12 @@ ...@@ -22,9 +24,12 @@
+INSERT INTO t1 VALUES ('node2_committed_before'); +INSERT INTO t1 VALUES ('node2_committed_before');
+COMMIT; +COMMIT;
+SET GLOBAL debug_dbug = 'd,sync.alter_opened_table'; +SET GLOBAL debug_dbug = 'd,sync.alter_opened_table';
+connection node_1;
+ALTER TABLE t1 ADD COLUMN f2 INTEGER; +ALTER TABLE t1 ADD COLUMN f2 INTEGER;
+connection node_2;
+SET wsrep_sync_wait = 0; +SET wsrep_sync_wait = 0;
+Killing server ... +Killing server ...
+connection node_1;
+SET AUTOCOMMIT=OFF; +SET AUTOCOMMIT=OFF;
+START TRANSACTION; +START TRANSACTION;
+INSERT INTO t1 (f1) VALUES ('node1_committed_during'); +INSERT INTO t1 (f1) VALUES ('node1_committed_during');
...@@ -39,6 +44,7 @@ ...@@ -39,6 +44,7 @@
+INSERT INTO t1 (f1) VALUES ('node1_to_be_committed_after'); +INSERT INTO t1 (f1) VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 (f1) VALUES ('node1_to_be_committed_after'); +INSERT INTO t1 (f1) VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 (f1) VALUES ('node1_to_be_committed_after'); +INSERT INTO t1 (f1) VALUES ('node1_to_be_committed_after');
+connect node_1a_galera_st_kill_slave_ddl, 127.0.0.1, root, , test, $NODE_MYPORT_1;
+SET AUTOCOMMIT=OFF; +SET AUTOCOMMIT=OFF;
+START TRANSACTION; +START TRANSACTION;
+INSERT INTO t1 (f1) VALUES ('node1_to_be_rollbacked_after'); +INSERT INTO t1 (f1) VALUES ('node1_to_be_rollbacked_after');
...@@ -46,7 +52,9 @@ ...@@ -46,7 +52,9 @@
+INSERT INTO t1 (f1) VALUES ('node1_to_be_rollbacked_after'); +INSERT INTO t1 (f1) VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 (f1) VALUES ('node1_to_be_rollbacked_after'); +INSERT INTO t1 (f1) VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 (f1) VALUES ('node1_to_be_rollbacked_after'); +INSERT INTO t1 (f1) VALUES ('node1_to_be_rollbacked_after');
+connection node_2;
+Performing --wsrep-recover ... +Performing --wsrep-recover ...
+connection node_2;
+Starting server ... +Starting server ...
+Using --wsrep-start-position when starting mysqld ... +Using --wsrep-start-position when starting mysqld ...
+SET AUTOCOMMIT=OFF; +SET AUTOCOMMIT=OFF;
...@@ -57,6 +65,7 @@ ...@@ -57,6 +65,7 @@
+INSERT INTO t1 (f1) VALUES ('node2_committed_after'); +INSERT INTO t1 (f1) VALUES ('node2_committed_after');
+INSERT INTO t1 (f1) VALUES ('node2_committed_after'); +INSERT INTO t1 (f1) VALUES ('node2_committed_after');
+COMMIT; +COMMIT;
+connection node_1;
+INSERT INTO t1 (f1) VALUES ('node1_to_be_committed_after'); +INSERT INTO t1 (f1) VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 (f1) VALUES ('node1_to_be_committed_after'); +INSERT INTO t1 (f1) VALUES ('node1_to_be_committed_after');
+INSERT INTO t1 (f1) VALUES ('node1_to_be_committed_after'); +INSERT INTO t1 (f1) VALUES ('node1_to_be_committed_after');
...@@ -71,6 +80,7 @@ ...@@ -71,6 +80,7 @@
+INSERT INTO t1 (f1) VALUES ('node1_committed_after'); +INSERT INTO t1 (f1) VALUES ('node1_committed_after');
+INSERT INTO t1 (f1) VALUES ('node1_committed_after'); +INSERT INTO t1 (f1) VALUES ('node1_committed_after');
+COMMIT; +COMMIT;
+connection node_1a_galera_st_kill_slave_ddl;
+INSERT INTO t1 (f1) VALUES ('node1_to_be_rollbacked_after'); +INSERT INTO t1 (f1) VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 (f1) VALUES ('node1_to_be_rollbacked_after'); +INSERT INTO t1 (f1) VALUES ('node1_to_be_rollbacked_after');
+INSERT INTO t1 (f1) VALUES ('node1_to_be_rollbacked_after'); +INSERT INTO t1 (f1) VALUES ('node1_to_be_rollbacked_after');
...@@ -88,6 +98,7 @@ ...@@ -88,6 +98,7 @@
+1 +1
+COMMIT; +COMMIT;
+SET AUTOCOMMIT=ON; +SET AUTOCOMMIT=ON;
+connection node_1;
+SELECT COUNT(*) = 2 FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 't1'; +SELECT COUNT(*) = 2 FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 't1';
+COUNT(*) = 2 +COUNT(*) = 2
+1 +1
...@@ -101,6 +112,6 @@ ...@@ -101,6 +112,6 @@
+COMMIT; +COMMIT;
+SET AUTOCOMMIT=ON; +SET AUTOCOMMIT=ON;
+SET GLOBAL debug_dbug = $debug_orig; +SET GLOBAL debug_dbug = $debug_orig;
connection node_1;
CALL mtr.add_suppression("Slave SQL: Error 'The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement' on query"); CALL mtr.add_suppression("Slave SQL: Error 'The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement' on query");
DROP USER sst; DROP USER sst;
CALL mtr.add_suppression("Slave SQL: Error 'The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement' on query");
...@@ -205,17 +205,6 @@ DROP TABLE t1; ...@@ -205,17 +205,6 @@ DROP TABLE t1;
COMMIT; COMMIT;
SET AUTOCOMMIT=ON; SET AUTOCOMMIT=ON;
connection node_1; connection node_1;
connection node_2;
connection node_1;
connection node_2;
connection node_1;
connect node_1a_galera_st_kill_slave_ddl, 127.0.0.1, root, , test, $NODE_MYPORT_1;
connection node_2;
connection node_2;
connection node_1;
connection node_1a_galera_st_kill_slave_ddl;
connection node_1;
connection node_1;
CALL mtr.add_suppression("Slave SQL: Error 'The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement' on query"); CALL mtr.add_suppression("Slave SQL: Error 'The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement' on query");
DROP USER sst; DROP USER sst;
connection node_2; connection node_2;
......
...@@ -47,8 +47,6 @@ tr1 STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE ...@@ -47,8 +47,6 @@ tr1 STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE
DROP TABLE t1; DROP TABLE t1;
connection node_1; connection node_1;
CREATE EVENT event1 ON SCHEDULE AT '2038-01-01 23:59:59' DO SELECT 1; CREATE EVENT event1 ON SCHEDULE AT '2038-01-01 23:59:59' DO SELECT 1;
Warnings:
Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it.
connection node_2; connection node_2;
SHOW CREATE EVENT event1; SHOW CREATE EVENT event1;
Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation
......
CREATE TABLE ten (f1 INTEGER) ENGINE=InnoDB; CREATE TABLE ten (f1 INTEGER NOT NULL PRIMARY KEY) ENGINE=InnoDB;
INSERT INTO ten VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10); INSERT INTO ten VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10);
CREATE TABLE parent ( CREATE TABLE parent (
id INT PRIMARY KEY AUTO_INCREMENT, id INT PRIMARY KEY AUTO_INCREMENT,
f2 INTEGER, f2 INTEGER
KEY (id)
) ENGINE=InnoDB; ) ENGINE=InnoDB;
CREATE TABLE child ( CREATE TABLE child (
id INT PRIMARY KEY AUTO_INCREMENT, id INT PRIMARY KEY AUTO_INCREMENT,
...@@ -23,19 +22,21 @@ connection node_1b; ...@@ -23,19 +22,21 @@ connection node_1b;
connection node_2; connection node_2;
connection node_2a; connection node_2a;
connection node_1; connection node_1;
SELECT COUNT(*) = 20001 FROM parent; SET SESSION wsrep_sync_wait=15;
COUNT(*) = 20001 SELECT COUNT(*) FROM parent;
1 COUNT(*)
SELECT COUNT(*) = 10000 FROM child; 20001
COUNT(*) = 10000 SELECT COUNT(*) FROM child;
1 COUNT(*)
10000
connection node_2; connection node_2;
SELECT COUNT(*) = 20001 FROM parent; SET SESSION wsrep_sync_wait=15;
COUNT(*) = 20001 SELECT COUNT(*) FROM parent;
1 COUNT(*)
SELECT COUNT(*) = 10000 FROM child; 20001
COUNT(*) = 10000 SELECT COUNT(*) FROM child;
1 COUNT(*)
10000
DROP TABLE child; DROP TABLE child;
DROP TABLE parent; DROP TABLE parent;
DROP TABLE ten; DROP TABLE ten;
...@@ -78,6 +78,11 @@ wsrep_gtid_mode 1 ...@@ -78,6 +78,11 @@ wsrep_gtid_mode 1
# On node_1 # On node_1
connection node_1; connection node_1;
DROP TABLE t1, t2; DROP TABLE t1, t2;
#cleanup
connection node_1;
reset master;
connection node_2;
reset master;
disconnect node_2; disconnect node_2;
disconnect node_1; disconnect node_1;
# End of test # End of test
...@@ -8,4 +8,3 @@ MAX(size) = 2 ...@@ -8,4 +8,3 @@ MAX(size) = 2
SELECT COUNT(DISTINCT idx) = 2 FROM mtr_wsrep_notify.status; SELECT COUNT(DISTINCT idx) = 2 FROM mtr_wsrep_notify.status;
COUNT(DISTINCT idx) = 2 COUNT(DISTINCT idx) = 2
1 1
DROP SCHEMA mtr_wsrep_notify;
...@@ -16,22 +16,19 @@ SET GLOBAL wsrep_slave_threads = 1; ...@@ -16,22 +16,19 @@ SET GLOBAL wsrep_slave_threads = 1;
SELECT COUNT(*) FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE LIKE '%wsrep aborter%'; SELECT COUNT(*) FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE LIKE '%wsrep aborter%';
COUNT(*) COUNT(*)
1 1
SET GLOBAL wsrep_slave_threads = 64;
connection node_1; connection node_1;
INSERT INTO t1 VALUES (1); INSERT INTO t1 VALUES (1);
connection node_2; connection node_2;
SELECT COUNT(*) = 1 FROM t1; SELECT COUNT(*) FROM t1;
COUNT(*) = 1 COUNT(*)
1 1
SET GLOBAL wsrep_slave_threads = 64;
SET GLOBAL wsrep_slave_threads = 1; SET GLOBAL wsrep_slave_threads = 1;
connection node_1; connection node_1;
connection node_2; connection node_2;
SELECT COUNT(*) FROM t2; SELECT COUNT(*) FROM t2;
COUNT(*) COUNT(*)
64 70
SELECT COUNT(*) FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE LIKE '%wsrep aborter%';
COUNT(*)
1
SET GLOBAL wsrep_slave_threads = 1; SET GLOBAL wsrep_slave_threads = 1;
DROP TABLE t1; DROP TABLE t1;
DROP TABLE t2; DROP TABLE t2;
...@@ -47,11 +44,12 @@ connection node_1; ...@@ -47,11 +44,12 @@ connection node_1;
INSERT INTO t1 VALUES (DEFAULT); INSERT INTO t1 VALUES (DEFAULT);
INSERT INTO t1 VALUES (DEFAULT); INSERT INTO t1 VALUES (DEFAULT);
INSERT INTO t1 VALUES (DEFAULT); INSERT INTO t1 VALUES (DEFAULT);
INSERT INTO t1 VALUES (DEFAULT);
INSERT INTO t1 VALUES (DEFAULT);
INSERT INTO t1 VALUES (DEFAULT);
INSERT INTO t1 VALUES (DEFAULT);
INSERT INTO t1 VALUES (DEFAULT);
DROP TABLE t1; DROP TABLE t1;
connection node_2; connection node_2;
SELECT NAME FROM INFORMATION_SCHEMA.INNODB_SYS_TABLES WHERE NAME LIKE 'test/t%'; SELECT NAME FROM INFORMATION_SCHEMA.INNODB_SYS_TABLES WHERE NAME LIKE 'test/t%';
NAME NAME
SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE LIKE '%wsrep aborter%';
COUNT(*) = 1
1
# End of tests
...@@ -78,6 +78,11 @@ wsrep_gtid_mode 1 ...@@ -78,6 +78,11 @@ wsrep_gtid_mode 1
# On node_1 # On node_1
connection node_1; connection node_1;
DROP TABLE t1, t2; DROP TABLE t1, t2;
#cleanup
connection node_1;
reset master;
connection node_2;
reset master;
disconnect node_2; disconnect node_2;
disconnect node_1; disconnect node_1;
# End of test # End of test
...@@ -5,6 +5,9 @@ ...@@ -5,6 +5,9 @@
--source include/galera_cluster.inc --source include/galera_cluster.inc
--source include/big_test.inc --source include/big_test.inc
call mtr.add_suppression("WSREP: It may not be safe to bootstrap the cluster from this node.*");
call mtr.add_suppression("Aborting");
--connection node_2 --connection node_2
SET SESSION wsrep_sync_wait = 0; SET SESSION wsrep_sync_wait = 0;
--source include/kill_galera.inc --source include/kill_galera.inc
......
...@@ -27,6 +27,7 @@ BEGIN ...@@ -27,6 +27,7 @@ BEGIN
SET SESSION wsrep_sync_wait = 0; SET SESSION wsrep_sync_wait = 0;
WHILE 1 DO WHILE 1 DO
INSERT INTO t1 (f1) VALUES (FLOOR( 1 + RAND( ) * 65535 )); INSERT INTO t1 (f1) VALUES (FLOOR( 1 + RAND( ) * 65535 ));
SELECT SLEEP(0.1);
END WHILE; END WHILE;
END| END|
DELIMITER ;| DELIMITER ;|
...@@ -34,6 +35,8 @@ DELIMITER ;| ...@@ -34,6 +35,8 @@ DELIMITER ;|
--connect node_1b, 127.0.0.1, root, , test, $NODE_MYPORT_1 --connect node_1b, 127.0.0.1, root, , test, $NODE_MYPORT_1
--connection node_1b --connection node_1b
--let $connection_id = `SELECT CONNECTION_ID()` --let $connection_id = `SELECT CONNECTION_ID()`
--disable_query_log
--disable_result_log
--send CALL proc_insert(); --send CALL proc_insert();
# #
...@@ -78,6 +81,8 @@ SELECT VARIABLE_VALUE > 0 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_N ...@@ -78,6 +81,8 @@ SELECT VARIABLE_VALUE > 0 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_N
--connection node_1b --connection node_1b
--error 0,2013,1317 --error 0,2013,1317
--reap --reap
--enable_query_log
--enable_result_log
--connection node_1 --connection node_1
DROP PROCEDURE proc_insert; DROP PROCEDURE proc_insert;
......
!include ../galera_2nodes.cnf
[mysqld.1]
wsrep-debug=ON
[mysqld.2]
wsrep-debug=ON
...@@ -4,110 +4,77 @@ ...@@ -4,110 +4,77 @@
--source include/galera_cluster.inc --source include/galera_cluster.inc
--source include/have_innodb.inc --source include/have_innodb.inc
--source include/force_restart.inc
CREATE TABLE t1 (f1 INTEGER) Engine=InnoDB;
INSERT INTO t1 values(0);
--connection node_1 --connection node_1
CREATE TABLE t1 (f1 INTEGER) Engine=InnoDB;
SET GLOBAL wsrep_slave_threads = 10; SET GLOBAL wsrep_slave_threads = 10;
SET GLOBAL wsrep_slave_threads = 1;
--echo # Wait 10 slave threads to start 1 # ensure that the threads have actually started running
--let $wait_timeout=600 --echo # Set slave threads to 10 step 1
--let $wait_condition = SELECT COUNT(*) = 11 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND (STATE IS NULL OR STATE NOT LIKE 'InnoDB%'); --let $wait_condition = SELECT COUNT(*) = 10 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE = 'wsrep applier idle';
--source include/wait_condition.inc --let $wait_condition_on_error_output = SELECT COUNT(*), 10 as EXPECTED_VALUE FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE = 'wsrep applier idle'; show processlist
--source include/wait_condition_with_debug.inc
SET GLOBAL wsrep_slave_threads = 1;
--connection node_2 --connection node_2
SET SESSION wsrep_sync_wait=15; INSERT INTO t1 VALUES (1);
# Wait until inserts are replicated
--let $wait_condition = SELECT COUNT(*) = 1 FROM t1;
--source include/wait_condition.inc
--echo # Generate 100 replication events
--disable_query_log
--disable_result_log
--let $count = 100
while ($count)
{
INSERT INTO t1 VALUES (1);
--dec $count
}
--enable_result_log
--enable_query_log
--connection node_1 --connection node_1
SET SESSION wsrep_sync_wait=15; SET SESSION wsrep_sync_wait=15;
SELECT COUNT(*) FROM t1; SELECT COUNT(*) FROM t1;
--echo # Wait 9 slave threads to exit 1
# Wait until appliers exit
--let $wait_condition = SELECT COUNT(*) = 2 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND (STATE IS NULL OR STATE NOT LIKE 'InnoDB%');
--source include/wait_condition.inc
SET GLOBAL wsrep_slave_threads = 10; SET GLOBAL wsrep_slave_threads = 10;
--echo # Wait 10 slave threads to start 2 --echo # Set slave threads to 10 step 2
--let $wait_condition = SELECT COUNT(*) = 11 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND (STATE IS NULL OR STATE NOT LIKE 'InnoDB%'); --let $wait_condition = SELECT COUNT(*) = 10 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE = 'wsrep applier idle';
--source include/wait_condition.inc --let $wait_condition_on_error_output = SELECT COUNT(*), 10 as EXPECTED_VALUE FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE = 'wsrep applier idle'; show processlist
--source include/wait_condition_with_debug.inc
SET GLOBAL wsrep_slave_threads = 20; SET GLOBAL wsrep_slave_threads = 20;
--echo # Wait 20 slave threads to start 3 --echo # Set slave threads to 20
--let $wait_condition = SELECT COUNT(*) = 21 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND (STATE IS NULL OR STATE NOT LIKE 'InnoDB%'); --let $wait_condition = SELECT COUNT(*) = 20 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE = 'wsrep applier idle';
--source include/wait_condition.inc --let $wait_condition_on_error_output = SELECT COUNT(*), 20 as EXPECTED_VALUE FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE = 'wsrep applier idle'; show processlist
--source include/wait_condition_with_debug.inc
SET GLOBAL wsrep_slave_threads = 1; SET GLOBAL wsrep_slave_threads = 1;
--connection node_2 --connection node_2
--echo # Generate 100 replication events INSERT INTO t1 VALUES (1);
--disable_query_log INSERT INTO t1 VALUES (2);
--disable_result_log INSERT INTO t1 VALUES (3);
--let $count = 100 INSERT INTO t1 VALUES (4);
while ($count) INSERT INTO t1 VALUES (5);
{ INSERT INTO t1 VALUES (6);
INSERT INTO t1 VALUES (1); INSERT INTO t1 VALUES (7);
--dec $count INSERT INTO t1 VALUES (8);
} INSERT INTO t1 VALUES (9);
--enable_query_log INSERT INTO t1 VALUES (10);
--enable_result_log
--connection node_1 --connection node_1
SELECT COUNT(*) FROM t1;
--echo # Wait 10 slave threads to exit 3
# Wait until appliers exit
--let $wait_condition = SELECT COUNT(*) = 2 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND (STATE IS NULL OR STATE NOT LIKE 'InnoDB%');
--source include/wait_condition.inc
SET GLOBAL wsrep_slave_threads = 10; SET GLOBAL wsrep_slave_threads = 10;
SET GLOBAL wsrep_slave_threads = 1; SELECT COUNT(*) FROM t1;
--echo # Set slave threads to 10 step 3
--echo # Wait 10 slave threads to start 3 --let $wait_condition = SELECT COUNT(*) = 10 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE = 'wsrep applier idle';
--let $wait_timeout=600 --let $wait_condition_on_error_output = SELECT COUNT(*), 10 as EXPECTED_VALUE FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE = 'wsrep applier idle'; show processlist
--let $wait_condition = SELECT COUNT(*) = 11 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND (STATE IS NULL OR STATE NOT LIKE 'InnoDB%'); --source include/wait_condition_with_debug.inc
--source include/wait_condition.inc
--connection node_2 --connection node_2
--echo # Generate 100 replication events INSERT INTO t1 VALUES (11);
--disable_query_log INSERT INTO t1 VALUES (12);
--disable_result_log INSERT INTO t1 VALUES (13);
--let $count = 100 INSERT INTO t1 VALUES (14);
while ($count) INSERT INTO t1 VALUES (15);
{ INSERT INTO t1 VALUES (16);
INSERT INTO t1 VALUES (1); INSERT INTO t1 VALUES (17);
--dec $count INSERT INTO t1 VALUES (18);
} INSERT INTO t1 VALUES (19);
--enable_result_log INSERT INTO t1 VALUES (20);
--enable_query_log
--connection node_1 --connection node_1
SELECT COUNT(*) FROM t1; SELECT COUNT(*) FROM t1;
SET GLOBAL wsrep_slave_threads = 1;
--echo # Wait 10 slave threads to exit 4
# Wait until appliers exit
--let $wait_condition = SELECT COUNT(*) = 2 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND (STATE IS NULL OR STATE NOT LIKE 'InnoDB%');
--source include/wait_condition.inc
--connection node_1
DROP TABLE t1; DROP TABLE t1;
...@@ -6,8 +6,6 @@ ...@@ -6,8 +6,6 @@
CREATE USER 'userMW416'@'localhost'; CREATE USER 'userMW416'@'localhost';
GRANT SELECT, INSERT, UPDATE ON test.* TO 'userMW416'@'localhost'; GRANT SELECT, INSERT, UPDATE ON test.* TO 'userMW416'@'localhost';
SHOW GLOBAL STATUS LIKE 'wsrep_replicated';
--connect userMW416, localhost, userMW416,, test, $NODE_MYPORT_1 --connect userMW416, localhost, userMW416,, test, $NODE_MYPORT_1
--connection userMW416 --connection userMW416
...@@ -131,4 +129,4 @@ UNINSTALL PLUGIN plg; ...@@ -131,4 +129,4 @@ UNINSTALL PLUGIN plg;
--connection node_1 --connection node_1
DROP USER 'userMW416'@'localhost'; DROP USER 'userMW416'@'localhost';
SHOW DATABASES; SHOW DATABASES;
SHOW GLOBAL STATUS LIKE 'wsrep_replicated';
...@@ -65,3 +65,13 @@ DROP TABLE t1; ...@@ -65,3 +65,13 @@ DROP TABLE t1;
STOP SLAVE; STOP SLAVE;
RESET SLAVE ALL; RESET SLAVE ALL;
--echo #cleanup
--connection node_1
reset master;
--connection node_2
reset master;
--connection node_3
reset master;
...@@ -66,6 +66,8 @@ show variables like 'binlog_format'; ...@@ -66,6 +66,8 @@ show variables like 'binlog_format';
SET GLOBAL wsrep_auto_increment_control='OFF'; SET GLOBAL wsrep_auto_increment_control='OFF';
let $increment_node1 = `SELECT @@session.auto_increment_increment`;
let $offset_node1 = `SELECT @@session.auto_increment_offset`;
SET SESSION auto_increment_increment = 3; SET SESSION auto_increment_increment = 3;
SET SESSION auto_increment_offset = 1; SET SESSION auto_increment_offset = 1;
......
...@@ -6,7 +6,6 @@ ...@@ -6,7 +6,6 @@
--source include/big_test.inc --source include/big_test.inc
--source include/galera_cluster.inc --source include/galera_cluster.inc
--source include/have_innodb.inc
--source include/have_mariabackup.inc --source include/have_mariabackup.inc
--source suite/galera/include/galera_st_kill_slave.inc --source suite/galera/include/galera_st_kill_slave.inc
......
...@@ -6,7 +6,6 @@ ...@@ -6,7 +6,6 @@
--source include/big_test.inc --source include/big_test.inc
--source include/galera_cluster.inc --source include/galera_cluster.inc
--source include/have_innodb.inc
--source include/have_mariabackup.inc --source include/have_mariabackup.inc
--source suite/galera/include/galera_st_kill_slave.inc --source suite/galera/include/galera_st_kill_slave.inc
......
...@@ -4,10 +4,16 @@ ...@@ -4,10 +4,16 @@
--source include/galera_cluster.inc --source include/galera_cluster.inc
--source include/have_innodb.inc --source include/have_innodb.inc
--source include/force_restart.inc
--connection node_1 --connection node_2
--sleep 2 SET GLOBAL wsrep_slave_threads=2;
--let $applier_thread = `SELECT ID FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE IS NULL LIMIT 1`
--let $wait_condition = SELECT COUNT(*) >= 1 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE = 'wsrep applier idle';
--let $wait_condition_on_error_output = SELECT COUNT(*), 2 as EXPECTED_VALUE FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE = 'wsrep applier idle'; show processlist
--source include/wait_condition_with_debug.inc
--let $applier_thread = `SELECT ID FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE = 'wsrep applier idle' LIMIT 1`
--disable_query_log --disable_query_log
--error ER_KILL_DENIED_ERROR,ER_KILL_DENIED_ERROR --error ER_KILL_DENIED_ERROR,ER_KILL_DENIED_ERROR
...@@ -24,3 +30,17 @@ ...@@ -24,3 +30,17 @@
--error ER_KILL_DENIED_ERROR,ER_KILL_DENIED_ERROR --error ER_KILL_DENIED_ERROR,ER_KILL_DENIED_ERROR
--eval KILL QUERY $aborter_thread --eval KILL QUERY $aborter_thread
--enable_query_log --enable_query_log
SET GLOBAL wsrep_slave_threads=1;
--connection node_1
create table t1(a int not null primary key) engine=innodb;
insert into t1 values (1);
insert into t1 values (2);
--connection node_2
set global wsrep_sync_wait=15;
select count(*) from t1;
--connection node_1
drop table t1;
...@@ -5,16 +5,20 @@ ...@@ -5,16 +5,20 @@
--source include/galera_cluster.inc --source include/galera_cluster.inc
--source include/have_innodb.inc --source include/have_innodb.inc
call mtr.add_suppression("WSREP: Last Applied Action message in non-primary configuration from member .*"); # Save original auto_increment_offset values.
--let $node_1=node_1
--let $node_2=node_2
--source include/auto_increment_offset_save.inc
--connection node_1 --connection node_1
call mtr.add_suppression("WSREP: Last Applied Action message in non-primary configuration from member .*");
# Enable the master to continue running during the split-brain situation that # Enable the master to continue running during the split-brain situation that
# occurs when the slave is killed # occurs when the slave is killed
--let $wsrep_provider_options_orig = `SELECT @@wsrep_provider_options` --let $wsrep_provider_options_orig = `SELECT @@wsrep_provider_options`
SET GLOBAL wsrep_provider_options = 'pc.ignore_sb=true'; SET GLOBAL wsrep_provider_options = 'pc.ignore_sb=true';
CREATE TABLE t1 (f1 INTEGER) ENGINE=InnoDB; CREATE TABLE t1 (f1 INTEGER NOT NULL PRIMARY KEY) ENGINE=InnoDB;
--connection node_2 --connection node_2
--source include/kill_galera.inc --source include/kill_galera.inc
...@@ -36,7 +40,10 @@ ALTER TABLE t1 ADD COLUMN f2 INTEGER; ...@@ -36,7 +40,10 @@ ALTER TABLE t1 ADD COLUMN f2 INTEGER;
--let $wait_condition = SELECT VARIABLE_VALUE = 'Primary' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_status'; --let $wait_condition = SELECT VARIABLE_VALUE = 'Primary' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_status';
--source include/wait_condition.inc --source include/wait_condition.inc
SELECT COUNT(*) = 2 FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME='t1'; # Restore original auto_increment_offset values.
--source include/auto_increment_offset_restore.inc
SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME='t1';
--connection node_1 --connection node_1
--disable_query_log --disable_query_log
......
--source include/galera_cluster.inc --source include/galera_cluster.inc
--source include/have_innodb.inc --source include/have_innodb.inc
--connection node_1
reset master;
--connection node_2
reset master;
# #
# Test Galera with --log-bin --log-slave-updates . # Test Galera with --log-bin --log-slave-updates .
# This way the actual MySQL binary log is used, # This way the actual MySQL binary log is used,
...@@ -20,20 +25,19 @@ SELECT COUNT(*) = 2 FROM t2; ...@@ -20,20 +25,19 @@ SELECT COUNT(*) = 2 FROM t2;
--connection node_1 --connection node_1
ALTER TABLE t1 ADD COLUMN f2 INTEGER; ALTER TABLE t1 ADD COLUMN f2 INTEGER;
--let $MASTER_MYPORT=$NODE_MYPORT_1
FLUSH LOGS; --source include/show_binlog_events.inc
--replace_column 2 # 4 # 5 #
--replace_regex /table_id: [0-9]+/table_id: #/ /xid=[0-9]+/xid=#/
SHOW BINLOG EVENTS IN 'mysqld-bin.000002' LIMIT 4,21;
--connection node_2 --connection node_2
SELECT COUNT(*) = 2 FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 't1'; SELECT COUNT(*) = 2 FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 't1';
--replace_column 2 # 4 # 5 # --let $MASTER_MYPORT=$NODE_MYPORT_2
--replace_regex /table_id: [0-9]+/table_id: #/ /xid=[0-9]+/xid=#/ --source include/show_binlog_events.inc
SHOW BINLOG EVENTS IN 'mysqld-bin.000003' LIMIT 3,21;
DROP TABLE t1; DROP TABLE t1;
DROP TABLE t2; DROP TABLE t2;
--echo #cleanup
--connection node_1 --connection node_1
RESET MASTER; RESET MASTER;
--connection node_2
reset master;
...@@ -22,3 +22,5 @@ SELECT COUNT(*) = 1 FROM mysql.slow_log WHERE sql_text = 'SELECT 2 = 2 FROM t1'; ...@@ -22,3 +22,5 @@ SELECT COUNT(*) = 1 FROM mysql.slow_log WHERE sql_text = 'SELECT 2 = 2 FROM t1';
--connection node_1 --connection node_1
DROP TABLE t1; DROP TABLE t1;
truncate table mysql.slow_log;
truncate table mysql.general_log;
...@@ -5,6 +5,7 @@ ...@@ -5,6 +5,7 @@
--source include/galera_cluster.inc --source include/galera_cluster.inc
--source include/have_innodb.inc --source include/have_innodb.inc
--source include/big_test.inc --source include/big_test.inc
--source include/force_restart.inc
# Create a second connection to node1 so that we can run transactions concurrently # Create a second connection to node1 so that we can run transactions concurrently
--let $galera_connection_name = node_1a --let $galera_connection_name = node_1a
...@@ -20,11 +21,11 @@ CREATE TABLE t1 (f1 INTEGER AUTO_INCREMENT PRIMARY KEY, f2 INTEGER) Engine=InnoD ...@@ -20,11 +21,11 @@ CREATE TABLE t1 (f1 INTEGER AUTO_INCREMENT PRIMARY KEY, f2 INTEGER) Engine=InnoD
--connection node_2 --connection node_2
set session wsrep_sync_wait=15; set session wsrep_sync_wait=15;
--let $wsrep_slave_threads_orig = `SELECT @@wsrep_slave_threads` --let $wsrep_slave_threads_orig = `SELECT @@wsrep_slave_threads`
SET GLOBAL wsrep_slave_threads = 4; SET GLOBAL wsrep_slave_threads = 4;
--let $wait_condition = SELECT COUNT(*) = @@wsrep_slave_threads + 1 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND (STATE IS NULL OR STATE NOT LIKE 'InnoDB%'); --let $wait_condition = SELECT VARIABLE_VALUE = 4 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count';
--source include/wait_condition.inc --source include/wait_condition.inc
--connection node_1 --connection node_1
--send INSERT INTO t1 (f2) SELECT 1 FROM ten AS a1, ten AS a2, ten AS a3, ten AS a4; --send INSERT INTO t1 (f2) SELECT 1 FROM ten AS a1, ten AS a2, ten AS a3, ten AS a4;
......
...@@ -5,6 +5,7 @@ ...@@ -5,6 +5,7 @@
--source include/galera_cluster.inc --source include/galera_cluster.inc
--source include/have_innodb.inc --source include/have_innodb.inc
--source include/big_test.inc --source include/big_test.inc
--source include/force_restart.inc
--connection node_1 --connection node_1
CREATE TABLE ten (f1 INTEGER) Engine=InnoDB; CREATE TABLE ten (f1 INTEGER) Engine=InnoDB;
...@@ -24,8 +25,9 @@ CREATE TABLE t1 (f1 INTEGER AUTO_INCREMENT PRIMARY KEY, f2 INTEGER) Engine=InnoD ...@@ -24,8 +25,9 @@ CREATE TABLE t1 (f1 INTEGER AUTO_INCREMENT PRIMARY KEY, f2 INTEGER) Engine=InnoD
--connection node_2 --connection node_2
set session wsrep_sync_wait=15; set session wsrep_sync_wait=15;
--let $wsrep_slave_threads_orig = `SELECT @@wsrep_slave_threads` --let $wsrep_slave_threads_orig = `SELECT @@wsrep_slave_threads`
SET GLOBAL wsrep_slave_threads = 4; SET GLOBAL wsrep_slave_threads = 4;
--let $wait_condition = SELECT COUNT(*) = @@wsrep_slave_threads + 1 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND (STATE IS NULL OR STATE NOT LIKE 'InnoDB%'); --let $wait_condition = SELECT VARIABLE_VALUE = 4 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count';
--source include/wait_condition.inc --source include/wait_condition.inc
--connection node_1 --connection node_1
......
...@@ -64,7 +64,9 @@ DROP TABLE t1; ...@@ -64,7 +64,9 @@ DROP TABLE t1;
--connection node_1 --connection node_1
--disable_warnings
CREATE EVENT event1 ON SCHEDULE AT '2038-01-01 23:59:59' DO SELECT 1; CREATE EVENT event1 ON SCHEDULE AT '2038-01-01 23:59:59' DO SELECT 1;
--enable_warnings
--connection node_2 --connection node_2
SHOW CREATE EVENT event1; SHOW CREATE EVENT event1;
......
...@@ -6,13 +6,12 @@ ...@@ -6,13 +6,12 @@
# This test creates a new FK constraint while concurrent INSERTS are running # This test creates a new FK constraint while concurrent INSERTS are running
# #
CREATE TABLE ten (f1 INTEGER) ENGINE=InnoDB; CREATE TABLE ten (f1 INTEGER NOT NULL PRIMARY KEY) ENGINE=InnoDB;
INSERT INTO ten VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10); INSERT INTO ten VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10);
CREATE TABLE parent ( CREATE TABLE parent (
id INT PRIMARY KEY AUTO_INCREMENT, id INT PRIMARY KEY AUTO_INCREMENT,
f2 INTEGER, f2 INTEGER
KEY (id)
) ENGINE=InnoDB; ) ENGINE=InnoDB;
CREATE TABLE child ( CREATE TABLE child (
...@@ -41,7 +40,6 @@ INSERT INTO parent VALUES (1, 0); ...@@ -41,7 +40,6 @@ INSERT INTO parent VALUES (1, 0);
--let $galera_server_number = 1 --let $galera_server_number = 1
--source include/galera_connect.inc --source include/galera_connect.inc
--connection node_1b --connection node_1b
--sleep 2
--send ALTER TABLE child ADD FOREIGN KEY (parent_id) REFERENCES parent(id); --send ALTER TABLE child ADD FOREIGN KEY (parent_id) REFERENCES parent(id);
--connection node_1a --connection node_1a
...@@ -57,14 +55,15 @@ INSERT INTO parent VALUES (1, 0); ...@@ -57,14 +55,15 @@ INSERT INTO parent VALUES (1, 0);
--reap --reap
--connection node_1 --connection node_1
SELECT COUNT(*) = 20001 FROM parent; SET SESSION wsrep_sync_wait=15;
SELECT COUNT(*) = 10000 FROM child; SELECT COUNT(*) FROM parent;
SELECT COUNT(*) FROM child;
--connection node_2 --connection node_2
SELECT COUNT(*) = 20001 FROM parent; SET SESSION wsrep_sync_wait=15;
SELECT COUNT(*) = 10000 FROM child; SELECT COUNT(*) FROM parent;
SELECT COUNT(*) FROM child;
DROP TABLE child; DROP TABLE child;
DROP TABLE parent; DROP TABLE parent;
DROP TABLE ten; DROP TABLE ten;
...@@ -48,6 +48,13 @@ source include/print_gtid.inc; ...@@ -48,6 +48,13 @@ source include/print_gtid.inc;
# Cleanup # Cleanup
DROP TABLE t1, t2; DROP TABLE t1, t2;
--echo #cleanup
--connection node_1
reset master;
--connection node_2
reset master;
--source include/galera_end.inc --source include/galera_end.inc
--echo # End of test --echo # End of test
...@@ -10,5 +10,3 @@ ...@@ -10,5 +10,3 @@
SELECT COUNT(DISTINCT uuid) = 2 FROM mtr_wsrep_notify.membership; SELECT COUNT(DISTINCT uuid) = 2 FROM mtr_wsrep_notify.membership;
SELECT MAX(size) = 2 FROM mtr_wsrep_notify.status; SELECT MAX(size) = 2 FROM mtr_wsrep_notify.status;
SELECT COUNT(DISTINCT idx) = 2 FROM mtr_wsrep_notify.status; SELECT COUNT(DISTINCT idx) = 2 FROM mtr_wsrep_notify.status;
DROP SCHEMA mtr_wsrep_notify;
...@@ -6,9 +6,10 @@ ...@@ -6,9 +6,10 @@
--source include/galera_cluster.inc --source include/galera_cluster.inc
--source include/have_innodb.inc --source include/have_innodb.inc
--let $wsrep_slave_threads_orig = `SELECT @@wsrep_slave_threads` --source include/force_restart.inc
--connection node_1 --connection node_1
--let $wsrep_slave_threads_orig = `SELECT @@wsrep_slave_threads`
CREATE TABLE t1 (f1 INT PRIMARY KEY) Engine=InnoDB; CREATE TABLE t1 (f1 INT PRIMARY KEY) Engine=InnoDB;
CREATE TABLE t2 (f1 INT AUTO_INCREMENT PRIMARY KEY) Engine=InnoDB; CREATE TABLE t2 (f1 INT AUTO_INCREMENT PRIMARY KEY) Engine=InnoDB;
...@@ -23,23 +24,23 @@ SET GLOBAL wsrep_slave_threads = 1; ...@@ -23,23 +24,23 @@ SET GLOBAL wsrep_slave_threads = 1;
# There is a separate wsrep_aborter thread at all times # There is a separate wsrep_aborter thread at all times
SELECT COUNT(*) FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE LIKE '%wsrep aborter%'; SELECT COUNT(*) FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE LIKE '%wsrep aborter%';
#
# Increase the number of slave threads. The change takes effect immediately
#
SET GLOBAL wsrep_slave_threads = 64;
--connection node_1 --connection node_1
INSERT INTO t1 VALUES (1); INSERT INTO t1 VALUES (1);
--connection node_2 --connection node_2
--let $wait_timeout=600 --let $wait_timeout=600
--let $wait_condition = SELECT COUNT(*) = 1 FROM t1; --let $wait_condition = SELECT COUNT(*) = 1 FROM t1;
--source include/wait_condition.inc --source include/wait_condition.inc
SELECT COUNT(*) = 1 FROM t1; SELECT COUNT(*) FROM t1;
#
# Increase the number of slave threads. The change takes effect immediately
#
SET GLOBAL wsrep_slave_threads = 64;
--let $wait_condition = SELECT COUNT(*) = @@wsrep_slave_threads + 1 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND (STATE IS NULL OR STATE NOT LIKE 'InnoDB%'); --let $wait_condition = SELECT VARIABLE_VALUE = 64 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count';
--source include/wait_condition.inc --source include/wait_condition.inc
# #
...@@ -52,8 +53,8 @@ SET GLOBAL wsrep_slave_threads = 1; ...@@ -52,8 +53,8 @@ SET GLOBAL wsrep_slave_threads = 1;
--disable_result_log --disable_result_log
--disable_query_log --disable_query_log
# Generate 64 replication events # Generate 70 replication events
--let $count = 64 --let $count = 70
while ($count) while ($count)
{ {
INSERT INTO t2 VALUES (DEFAULT); INSERT INTO t2 VALUES (DEFAULT);
...@@ -65,10 +66,8 @@ while ($count) ...@@ -65,10 +66,8 @@ while ($count)
--connection node_2 --connection node_2
SELECT COUNT(*) FROM t2; SELECT COUNT(*) FROM t2;
--let $wait_condition = SELECT COUNT(*) = @@wsrep_slave_threads + 1 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND (STATE IS NULL OR STATE NOT LIKE 'InnoDB%') --let $wait_condition = SELECT VARIABLE_VALUE = 1 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count';
--source include/wait_condition.inc --source include/wait_condition.inc
SELECT COUNT(*) FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE LIKE '%wsrep aborter%';
--eval SET GLOBAL wsrep_slave_threads = $wsrep_slave_threads_orig --eval SET GLOBAL wsrep_slave_threads = $wsrep_slave_threads_orig
...@@ -84,7 +83,7 @@ CREATE TABLE t1 (i INT AUTO_INCREMENT PRIMARY KEY) ENGINE=INNODB; ...@@ -84,7 +83,7 @@ CREATE TABLE t1 (i INT AUTO_INCREMENT PRIMARY KEY) ENGINE=INNODB;
--connection node_2 --connection node_2
SET GLOBAL wsrep_slave_threads = 4; SET GLOBAL wsrep_slave_threads = 4;
--let $wait_condition = SELECT COUNT(*) = @@wsrep_slave_threads + 1 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND (STATE IS NULL OR STATE NOT LIKE 'InnoDB%') --let $wait_condition = SELECT VARIABLE_VALUE = 4 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count';
--source include/wait_condition.inc --source include/wait_condition.inc
SET GLOBAL wsrep_slave_threads = 1; SET GLOBAL wsrep_slave_threads = 1;
...@@ -93,21 +92,20 @@ SET GLOBAL wsrep_slave_threads = 1; ...@@ -93,21 +92,20 @@ SET GLOBAL wsrep_slave_threads = 1;
INSERT INTO t1 VALUES (DEFAULT); INSERT INTO t1 VALUES (DEFAULT);
INSERT INTO t1 VALUES (DEFAULT); INSERT INTO t1 VALUES (DEFAULT);
INSERT INTO t1 VALUES (DEFAULT); INSERT INTO t1 VALUES (DEFAULT);
INSERT INTO t1 VALUES (DEFAULT);
INSERT INTO t1 VALUES (DEFAULT);
INSERT INTO t1 VALUES (DEFAULT);
INSERT INTO t1 VALUES (DEFAULT);
INSERT INTO t1 VALUES (DEFAULT);
DROP TABLE t1; DROP TABLE t1;
--connection node_2 --connection node_2
# Wait until above DDL is replicated # Wait until above DDL is replicated
--let $wait_condition = SELECT COUNT(*) = 0 FROM INFORMATION_SCHEMA.INNODB_SYS_TABLES WHERE NAME LIKE 'test/t%';
--source include/wait_condition.inc
SELECT NAME FROM INFORMATION_SCHEMA.INNODB_SYS_TABLES WHERE NAME LIKE 'test/t%';
# #
# make sure that we are left with exactly one applier thread before we leaving the test # make sure that we are left with exactly one applier thread before we leaving the test
# #
--let $wait_condition = SELECT COUNT(*) = 2 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND (STATE IS NULL OR STATE NOT LIKE 'InnoDB%') --let $wait_condition = SELECT VARIABLE_VALUE = 1 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count';
--source include/wait_condition.inc --source include/wait_condition.inc
SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE LIKE '%wsrep aborter%';
--echo # End of tests SELECT NAME FROM INFORMATION_SCHEMA.INNODB_SYS_TABLES WHERE NAME LIKE 'test/t%';
...@@ -48,6 +48,13 @@ source include/print_gtid.inc; ...@@ -48,6 +48,13 @@ source include/print_gtid.inc;
# Cleanup # Cleanup
DROP TABLE t1, t2; DROP TABLE t1, t2;
--echo #cleanup
--connection node_1
reset master;
--connection node_2
reset master;
--source include/galera_end.inc --source include/galera_end.inc
--echo # End of test --echo # End of test
CREATE TABLE t1(f1 char(200), f2 char(200), f3 char(200),
f4 char(200), f5 char(200), f6 char(200),
f7 char(200), f8 char(200))ENGINE=InnoDB;
INSERT INTO t1 SELECT '','','','','','','','' FROM seq_1_to_16384;
SET DEBUG_SYNC = 'inplace_after_index_build SIGNAL rebuilt WAIT_FOR dml_pause';
SET DEBUG_SYNC = 'alter_table_inplace_before_lock_upgrade SIGNAL dml_restart WAIT_FOR dml_done';
SET DEBUG_SYNC = 'row_log_table_apply2_before SIGNAL ddl_start';
ALTER TABLE t1 FORCE, ALGORITHM=INPLACE;
connect con1,localhost,root,,test;
SET DEBUG_SYNC = 'now WAIT_FOR rebuilt';
BEGIN;
INSERT INTO t1 SELECT '','','','','','','','' FROM seq_1_to_16384;
SET DEBUG_SYNC = 'now SIGNAL dml_pause';
SET DEBUG_SYNC = 'now WAIT_FOR dml_restart';
ROLLBACK;
BEGIN;
INSERT INTO t1 SELECT '','','','','','','','' FROM seq_1_to_16384;
INSERT INTO t1 SELECT '','','','','','','','' FROM seq_1_to_16384;
INSERT INTO t1 SELECT '','','','','','','','' FROM seq_1_to_16384;
INSERT INTO t1 SELECT '','','','','','','','' FROM seq_1_to_16384;
INSERT INTO t1 SELECT '','','','','','','','' FROM seq_1_to_16384;
ROLLBACK;
BEGIN;
INSERT INTO t1 SELECT * FROM t1;
INSERT INTO t1 SELECT * FROM t1;
INSERT INTO t1 SELECT * FROM t1;
ROLLBACK;
SET DEBUG_SYNC = 'now SIGNAL dml_done';
connect con2, localhost,root,,test;
SET DEBUG_SYNC = 'now WAIT_FOR ddl_start';
CREATE TABLE t2(f1 INT NOT NULL)ENGINE=InnoDB;
connection default;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
`f1` char(200) DEFAULT NULL,
`f2` char(200) DEFAULT NULL,
`f3` char(200) DEFAULT NULL,
`f4` char(200) DEFAULT NULL,
`f5` char(200) DEFAULT NULL,
`f6` char(200) DEFAULT NULL,
`f7` char(200) DEFAULT NULL,
`f8` char(200) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1
SELECT COUNT(*) FROM t1;
COUNT(*)
16384
SET DEBUG_SYNC = 'RESET';
DROP TABLE t1, t2;
This diff is collapsed.
call mtr.add_suppression("Cannot add field `u` in table `test`.`t2` because after adding it, the row size is");
CREATE TABLE t1(a blob,b blob,c blob,d blob,e blob,f blob,g blob, CREATE TABLE t1(a blob,b blob,c blob,d blob,e blob,f blob,g blob,
h blob,i blob,j blob,k blob,l blob,m blob,n blob, h blob,i blob,j blob,k blob,l blob,m blob,n blob,
o blob,p blob,q blob,r blob,s blob,t blob,u blob, o blob,p blob,q blob,r blob,s blob,t blob,u blob,
...@@ -7,6 +8,7 @@ ha blob,ia blob,ja blob,ka blob,la blob,ma blob,na blob, ...@@ -7,6 +8,7 @@ ha blob,ia blob,ja blob,ka blob,la blob,ma blob,na blob,
oa blob,pa blob,qa blob,ra blob,sa blob,ta blob,ua blob, oa blob,pa blob,qa blob,ra blob,sa blob,ta blob,ua blob,
va blob, wa blob, xa blob, ya blob, za blob) va blob, wa blob, xa blob, ya blob, za blob)
ENGINE=InnoDB ROW_FORMAT=dynamic; ENGINE=InnoDB ROW_FORMAT=dynamic;
SET innodb_strict_mode=OFF;
CREATE TABLE t2(a blob,b blob,c blob,d blob,e blob,f blob,g blob, CREATE TABLE t2(a blob,b blob,c blob,d blob,e blob,f blob,g blob,
h blob,i blob,j blob,k blob,l blob,m blob,n blob, h blob,i blob,j blob,k blob,l blob,m blob,n blob,
o blob,p blob,q blob,r blob,s blob,t blob,u blob, o blob,p blob,q blob,r blob,s blob,t blob,u blob,
...@@ -16,6 +18,9 @@ ha blob,ia blob,ja blob,ka blob,la blob,ma blob,na blob, ...@@ -16,6 +18,9 @@ ha blob,ia blob,ja blob,ka blob,la blob,ma blob,na blob,
oa blob,pa blob,qa blob,ra blob,sa blob,ta blob,ua blob, oa blob,pa blob,qa blob,ra blob,sa blob,ta blob,ua blob,
va blob, wa blob, xa blob, ya blob, za blob) va blob, wa blob, xa blob, ya blob, za blob)
ENGINE=InnoDB ROW_FORMAT=compact; ENGINE=InnoDB ROW_FORMAT=compact;
Warnings:
Warning 139 Row size too large (> 16318). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
SET innodb_strict_mode=ON;
SET @a = repeat('a', 767); SET @a = repeat('a', 767);
SET @b = repeat('b', 767); SET @b = repeat('b', 767);
SET @c = repeat('c', 767); SET @c = repeat('c', 767);
......
...@@ -27,129 +27,9 @@ c61 char(200), c62 char(200), c63 char(200), c64 char(200), c65 char(200), ...@@ -27,129 +27,9 @@ c61 char(200), c62 char(200), c63 char(200), c64 char(200), c65 char(200),
c66 char(200), c67 char(200), c68 char(200), c69 char(200), c70 char(200), c66 char(200), c67 char(200), c68 char(200), c69 char(200), c70 char(200),
c71 char(200), c72 char(200), c73 char(200), c74 char(200), c75 char(200), c71 char(200), c72 char(200), c73 char(200), c74 char(200), c75 char(200),
c76 char(200), c77 char(200), c78 char(200), c79 char(200), c80 char(200), c76 char(200), c77 char(200), c78 char(200), c79 char(200), c80 char(200),
c81 char(121)
) ROW_FORMAT=redundant;
DROP TABLE t1;
CREATE TABLE t1 (
c01 char(200), c02 char(200), c03 char(200), c04 char(200), c05 char(200),
c06 char(200), c07 char(200), c08 char(200), c09 char(200), c10 char(200),
c11 char(200), c12 char(200), c13 char(200), c14 char(200), c15 char(200),
c16 char(200), c17 char(200), c18 char(200), c19 char(200), c20 char(200),
c21 char(200), c22 char(200), c23 char(200), c24 char(200), c25 char(200),
c26 char(200), c27 char(200), c28 char(200), c29 char(200), c30 char(200),
c31 char(200), c32 char(200), c33 char(200), c34 char(200), c35 char(200),
c36 char(200), c37 char(200), c38 char(200), c39 char(200), c40 char(200),
c41 char(200), c42 char(200), c43 char(200), c44 char(200), c45 char(200),
c46 char(200), c47 char(200), c48 char(200), c49 char(200), c50 char(200),
c51 char(200), c52 char(200), c53 char(200), c54 char(200), c55 char(200),
c56 char(200), c57 char(200), c58 char(200), c59 char(200), c60 char(200),
c61 char(200), c62 char(200), c63 char(200), c64 char(200), c65 char(200),
c66 char(200), c67 char(200), c68 char(200), c69 char(200), c70 char(200),
c71 char(200), c72 char(200), c73 char(200), c74 char(200), c75 char(200),
c76 char(200), c77 char(200), c78 char(200), c79 char(200), c80 char(200),
c81 char(122)
) ROW_FORMAT=redundant;
ERROR 42000: Row size too large (> max_row_size). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
CREATE TABLE t1 (
c01 char(200), c02 char(200), c03 char(200), c04 char(200), c05 char(200),
c06 char(200), c07 char(200), c08 char(200), c09 char(200), c10 char(200),
c11 char(200), c12 char(200), c13 char(200), c14 char(200), c15 char(200),
c16 char(200), c17 char(200), c18 char(200), c19 char(200), c20 char(200),
c21 char(200), c22 char(200), c23 char(200), c24 char(200), c25 char(200),
c26 char(200), c27 char(200), c28 char(200), c29 char(200), c30 char(200),
c31 char(200), c32 char(200), c33 char(200), c34 char(200), c35 char(200),
c36 char(200), c37 char(200), c38 char(200), c39 char(200), c40 char(200),
c41 char(200), c42 char(200), c43 char(200), c44 char(200), c45 char(200),
c46 char(200), c47 char(200), c48 char(200), c49 char(200), c50 char(200),
c51 char(200), c52 char(200), c53 char(200), c54 char(200), c55 char(200),
c56 char(200), c57 char(200), c58 char(200), c59 char(200), c60 char(200),
c61 char(200), c62 char(200), c63 char(200), c64 char(200), c65 char(200),
c66 char(200), c67 char(200), c68 char(200), c69 char(200), c70 char(200),
c71 char(200), c72 char(200), c73 char(200), c74 char(200), c75 char(200),
c76 char(200), c77 char(200), c78 char(200), c79 char(200), c80 char(200),
c81 char(200), c82 char(82)
) ROW_FORMAT=compact;
DROP TABLE t1;
CREATE TABLE t1 (
c01 char(200), c02 char(200), c03 char(200), c04 char(200), c05 char(200),
c06 char(200), c07 char(200), c08 char(200), c09 char(200), c10 char(200),
c11 char(200), c12 char(200), c13 char(200), c14 char(200), c15 char(200),
c16 char(200), c17 char(200), c18 char(200), c19 char(200), c20 char(200),
c21 char(200), c22 char(200), c23 char(200), c24 char(200), c25 char(200),
c26 char(200), c27 char(200), c28 char(200), c29 char(200), c30 char(200),
c31 char(200), c32 char(200), c33 char(200), c34 char(200), c35 char(200),
c36 char(200), c37 char(200), c38 char(200), c39 char(200), c40 char(200),
c41 char(200), c42 char(200), c43 char(200), c44 char(200), c45 char(200),
c46 char(200), c47 char(200), c48 char(200), c49 char(200), c50 char(200),
c51 char(200), c52 char(200), c53 char(200), c54 char(200), c55 char(200),
c56 char(200), c57 char(200), c58 char(200), c59 char(200), c60 char(200),
c61 char(200), c62 char(200), c63 char(200), c64 char(200), c65 char(200),
c66 char(200), c67 char(200), c68 char(200), c69 char(200), c70 char(200),
c71 char(200), c72 char(200), c73 char(200), c74 char(200), c75 char(200),
c76 char(200), c77 char(200), c78 char(200), c79 char(200), c80 char(200),
c81 char(200), c82 char(83)
) ROW_FORMAT=compact;
ERROR 42000: Row size too large (> max_row_size). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
CREATE TABLE t1 (
c01 char(200), c02 char(200), c03 char(200), c04 char(200), c05 char(200),
c06 char(200), c07 char(200), c08 char(200), c09 char(200), c10 char(200),
c11 char(200), c12 char(200), c13 char(200), c14 char(200), c15 char(200),
c16 char(200), c17 char(200), c18 char(200), c19 char(200), c20 char(200),
c21 char(200), c22 char(200), c23 char(200), c24 char(200), c25 char(200),
c26 char(200), c27 char(200), c28 char(200), c29 char(200), c30 char(200),
c31 char(200), c32 char(200), c33 char(200), c34 char(200), c35 char(200),
c36 char(200), c37 char(200), c38 char(200), c39 char(200), c40 char(200),
c41 char(200), c42 char(200), c43 char(200), c44 char(200), c45 char(200),
c46 char(200), c47 char(200), c48 char(200), c49 char(200), c50 char(200),
c51 char(200), c52 char(200), c53 char(200), c54 char(200), c55 char(200),
c56 char(200), c57 char(200), c58 char(200), c59 char(200), c60 char(200),
c61 char(200), c62 char(200), c63 char(200), c64 char(200), c65 char(200),
c66 char(200), c67 char(200), c68 char(200), c69 char(200), c70 char(200),
c71 char(200), c72 char(200), c73 char(200), c74 char(200), c75 char(200),
c76 char(200), c77 char(200), c78 char(200), c79 char(200), c80 char(200),
c81 char(63) c81 char(63)
) ROW_FORMAT=compressed; ) ROW_FORMAT=compressed;
ERROR HY000: Can't create table `test`.`t1` (errno: 140 "Wrong create options") ERROR HY000: Can't create table `test`.`t1` (errno: 140 "Wrong create options")
CREATE TABLE t1 (
c01 char(200), c02 char(200), c03 char(200), c04 char(200), c05 char(200),
c06 char(200), c07 char(200), c08 char(200), c09 char(200), c10 char(200),
c11 char(200), c12 char(200), c13 char(200), c14 char(200), c15 char(200),
c16 char(200), c17 char(200), c18 char(200), c19 char(200), c20 char(200),
c21 char(200), c22 char(200), c23 char(200), c24 char(200), c25 char(200),
c26 char(200), c27 char(200), c28 char(200), c29 char(200), c30 char(200),
c31 char(200), c32 char(200), c33 char(200), c34 char(200), c35 char(200),
c36 char(200), c37 char(200), c38 char(200), c39 char(200), c40 char(200),
c41 char(200), c42 char(200), c43 char(200), c44 char(200), c45 char(200),
c46 char(200), c47 char(200), c48 char(200), c49 char(200), c50 char(200),
c51 char(200), c52 char(200), c53 char(200), c54 char(200), c55 char(200),
c56 char(200), c57 char(200), c58 char(200), c59 char(200), c60 char(200),
c61 char(200), c62 char(200), c63 char(200), c64 char(200), c65 char(200),
c66 char(200), c67 char(200), c68 char(200), c69 char(200), c70 char(200),
c71 char(200), c72 char(200), c73 char(200), c74 char(200), c75 char(200),
c76 char(200), c77 char(200), c78 char(200), c79 char(200), c80 char(200),
c81 char(200), c82 char(82)
) ROW_FORMAT=dynamic;
DROP TABLE t1;
CREATE TABLE t1 (
c01 char(200), c02 char(200), c03 char(200), c04 char(200), c05 char(200),
c06 char(200), c07 char(200), c08 char(200), c09 char(200), c10 char(200),
c11 char(200), c12 char(200), c13 char(200), c14 char(200), c15 char(200),
c16 char(200), c17 char(200), c18 char(200), c19 char(200), c20 char(200),
c21 char(200), c22 char(200), c23 char(200), c24 char(200), c25 char(200),
c26 char(200), c27 char(200), c28 char(200), c29 char(200), c30 char(200),
c31 char(200), c32 char(200), c33 char(200), c34 char(200), c35 char(200),
c36 char(200), c37 char(200), c38 char(200), c39 char(200), c40 char(200),
c41 char(200), c42 char(200), c43 char(200), c44 char(200), c45 char(200),
c46 char(200), c47 char(200), c48 char(200), c49 char(200), c50 char(200),
c51 char(200), c52 char(200), c53 char(200), c54 char(200), c55 char(200),
c56 char(200), c57 char(200), c58 char(200), c59 char(200), c60 char(200),
c61 char(200), c62 char(200), c63 char(200), c64 char(200), c65 char(200),
c66 char(200), c67 char(200), c68 char(200), c69 char(200), c70 char(200),
c71 char(200), c72 char(200), c73 char(200), c74 char(200), c75 char(200),
c76 char(200), c77 char(200), c78 char(200), c79 char(200), c80 char(200),
c81 char(200), c82 char(83)
) ROW_FORMAT=dynamic;
ERROR 42000: Row size too large (> max_row_size). Changing some columns to TEXT or BLOB may help. In current row format, BLOB prefix of 0 bytes is stored inline.
CREATE TABLE t1 (a varchar(255) character set utf8, CREATE TABLE t1 (a varchar(255) character set utf8,
b varchar(255) character set utf8, b varchar(255) character set utf8,
c varchar(255) character set utf8, c varchar(255) character set utf8,
......
call mtr.add_suppression("Cannot add field `pa` in table `test`.`t2` because after adding it, the row size is");
CREATE TABLE t1(a blob,b blob,c blob,d blob,e blob,f blob,g blob, CREATE TABLE t1(a blob,b blob,c blob,d blob,e blob,f blob,g blob,
h blob,i blob,j blob,k blob,l blob,m blob,n blob, h blob,i blob,j blob,k blob,l blob,m blob,n blob,
o blob,p blob,q blob,r blob,s blob,t blob,u blob, o blob,p blob,q blob,r blob,s blob,t blob,u blob,
...@@ -15,6 +16,7 @@ hc blob, ic blob, jc blob, kc blob, lc blob,mc blob,nc blob, ...@@ -15,6 +16,7 @@ hc blob, ic blob, jc blob, kc blob, lc blob,mc blob,nc blob,
oc blob, pc blob, qc blob, rc blob, sc blob,tc blob,uc blob, oc blob, pc blob, qc blob, rc blob, sc blob,tc blob,uc blob,
vc blob, wc blob, xc blob, yc blob, zc blob vc blob, wc blob, xc blob, yc blob, zc blob
) ENGINE=InnoDB ROW_FORMAT=dynamic; ) ENGINE=InnoDB ROW_FORMAT=dynamic;
SET innodb_strict_mode=OFF;
CREATE TABLE t2(a blob,b blob,c blob,d blob,e blob,f blob,g blob, CREATE TABLE t2(a blob,b blob,c blob,d blob,e blob,f blob,g blob,
h blob,i blob,j blob,k blob,l blob,m blob,n blob, h blob,i blob,j blob,k blob,l blob,m blob,n blob,
o blob,p blob,q blob,r blob,s blob,t blob,u blob, o blob,p blob,q blob,r blob,s blob,t blob,u blob,
...@@ -32,6 +34,9 @@ hc blob, ic blob, jc blob, kc blob, lc blob,mc blob,nc blob, ...@@ -32,6 +34,9 @@ hc blob, ic blob, jc blob, kc blob, lc blob,mc blob,nc blob,
oc blob, pc blob, qc blob, rc blob, sc blob,tc blob,uc blob, oc blob, pc blob, qc blob, rc blob, sc blob,tc blob,uc blob,
vc blob, wc blob, xc blob, yc blob, zc blob vc blob, wc blob, xc blob, yc blob, zc blob
) ENGINE=InnoDB ROW_FORMAT=compact; ) ENGINE=InnoDB ROW_FORMAT=compact;
Warnings:
Warning 139 Row size too large (> 32702). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
SET innodb_strict_mode=ON;
SET @a = repeat('a', 767); SET @a = repeat('a', 767);
SET @b = repeat('b', 767); SET @b = repeat('b', 767);
SET @c = repeat('c', 767); SET @c = repeat('c', 767);
......
...@@ -14,53 +14,6 @@ col42 CHAR(255),col43 CHAR(255),col44 CHAR(255),col45 CHAR(255),col46 CHAR(255) ...@@ -14,53 +14,6 @@ col42 CHAR(255),col43 CHAR(255),col44 CHAR(255),col45 CHAR(255),col46 CHAR(255)
col48 CHAR(255),col49 CHAR(255),col50 CHAR(255),col51 CHAR(255),col52 CHAR(255), col53 CHAR(255), col48 CHAR(255),col49 CHAR(255),col50 CHAR(255),col51 CHAR(255),col52 CHAR(255), col53 CHAR(255),
col54 CHAR(255),col55 CHAR(255),col56 CHAR(255),col57 CHAR(255),col58 CHAR(255), col59 CHAR(255), col54 CHAR(255),col55 CHAR(255),col56 CHAR(255),col57 CHAR(255),col58 CHAR(255), col59 CHAR(255),
col60 CHAR(255),col61 CHAR(255),col62 CHAR(255),col63 CHAR(255),col64 CHAR(255), col65 CHAR(255)) col60 CHAR(255),col61 CHAR(255),col62 CHAR(255),col63 CHAR(255),col64 CHAR(255), col65 CHAR(255))
ENGINE = innodb ROW_FORMAT= COMPACT;
ERROR 42000: Row size too large (> 16318). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
CREATE TABLE tab5(col1 CHAR (255), col2 CHAR (255), col3 CHAR(255),col4 CHAR(255), col5 CHAR(255),
col6 CHAR(255), col7 CHAR(255), col8 CHAR(255), col9 CHAR(255),col10 CHAR(255), col11 CHAR(255),
col12 CHAR(255), col13 CHAR(255),col14 CHAR(255),col15 CHAR(255),col16 CHAR(255), col17 CHAR(255),
col18 CHAR(255),col19 CHAR(255),col20 CHAR(255),col21 CHAR(255),col22 CHAR(255), col23 CHAR(255),
col24 CHAR(255),col25 CHAR(255),col26 CHAR(255),col27 CHAR(255),col28 CHAR(255), col29 CHAR(255),
col30 CHAR(255),col31 CHAR(255),col32 CHAR(255),col33 CHAR(255),col34 CHAR(255), col35 CHAR(255),
col36 CHAR(255),col37 CHAR(255),col38 CHAR(255),col39 CHAR(255),col40 CHAR(255), col41 CHAR(255),
col42 CHAR(255),col43 CHAR(255),col44 CHAR(255),col45 CHAR(255),col46 CHAR(255), col47 CHAR(255),
col48 CHAR(255),col49 CHAR(255),col50 CHAR(255),col51 CHAR(255),col52 CHAR(255), col53 CHAR(255),
col54 CHAR(255),col55 CHAR(255),col56 CHAR(255),col57 CHAR(255),col58 CHAR(255), col59 CHAR(255),
col60 CHAR(255),col61 CHAR(255),col62 CHAR(255),col63 CHAR(255),col64 CHAR(255), col65 CHAR(255))
ENGINE = innodb ROW_FORMAT= DYNAMIC;
ERROR 42000: Row size too large (> 16318). Changing some columns to TEXT or BLOB may help. In current row format, BLOB prefix of 0 bytes is stored inline.
show warnings;
Level Code Message
Error 1118 Row size too large (> 16318). Changing some columns to TEXT or BLOB may help. In current row format, BLOB prefix of 0 bytes is stored inline.
Warning 1030 Got error 139 "Too big row" from storage engine InnoDB
CREATE TABLE tab5(col1 CHAR (255), col2 CHAR (255), col3 CHAR(255),col4 CHAR(255), col5 CHAR(255),
col6 CHAR(255), col7 CHAR(255), col8 CHAR(255), col9 CHAR(255),col10 CHAR(255), col11 CHAR(255),
col12 CHAR(255), col13 CHAR(255),col14 CHAR(255),col15 CHAR(255),col16 CHAR(255), col17 CHAR(255),
col18 CHAR(255),col19 CHAR(255),col20 CHAR(255),col21 CHAR(255),col22 CHAR(255), col23 CHAR(255),
col24 CHAR(255),col25 CHAR(255),col26 CHAR(255),col27 CHAR(255),col28 CHAR(255), col29 CHAR(255),
col30 CHAR(255),col31 CHAR(255),col32 CHAR(255),col33 CHAR(255),col34 CHAR(255), col35 CHAR(255),
col36 CHAR(255),col37 CHAR(255),col38 CHAR(255),col39 CHAR(255),col40 CHAR(255), col41 CHAR(255),
col42 CHAR(255),col43 CHAR(255),col44 CHAR(255),col45 CHAR(255),col46 CHAR(255), col47 CHAR(255),
col48 CHAR(255),col49 CHAR(255),col50 CHAR(255),col51 CHAR(255),col52 CHAR(255), col53 CHAR(255),
col54 CHAR(255),col55 CHAR(255),col56 CHAR(255),col57 CHAR(255),col58 CHAR(255), col59 CHAR(255),
col60 CHAR(255),col61 CHAR(255),col62 CHAR(255),col63 CHAR(255),col64 CHAR(255), col65 CHAR(255))
ENGINE = innodb ROW_FORMAT=REDUNDANT;
ERROR 42000: Row size too large (> 16315). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
show warnings;
Level Code Message
Error 1118 Row size too large (> 16315). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
Warning 1030 Got error 139 "Too big row" from storage engine InnoDB
CREATE TABLE tab5(col1 CHAR (255), col2 CHAR (255), col3 CHAR(255),col4 CHAR(255), col5 CHAR(255),
col6 CHAR(255), col7 CHAR(255), col8 CHAR(255), col9 CHAR(255),col10 CHAR(255), col11 CHAR(255),
col12 CHAR(255), col13 CHAR(255),col14 CHAR(255),col15 CHAR(255),col16 CHAR(255), col17 CHAR(255),
col18 CHAR(255),col19 CHAR(255),col20 CHAR(255),col21 CHAR(255),col22 CHAR(255), col23 CHAR(255),
col24 CHAR(255),col25 CHAR(255),col26 CHAR(255),col27 CHAR(255),col28 CHAR(255), col29 CHAR(255),
col30 CHAR(255),col31 CHAR(255),col32 CHAR(255),col33 CHAR(255),col34 CHAR(255), col35 CHAR(255),
col36 CHAR(255),col37 CHAR(255),col38 CHAR(255),col39 CHAR(255),col40 CHAR(255), col41 CHAR(255),
col42 CHAR(255),col43 CHAR(255),col44 CHAR(255),col45 CHAR(255),col46 CHAR(255), col47 CHAR(255),
col48 CHAR(255),col49 CHAR(255),col50 CHAR(255),col51 CHAR(255),col52 CHAR(255), col53 CHAR(255),
col54 CHAR(255),col55 CHAR(255),col56 CHAR(255),col57 CHAR(255),col58 CHAR(255), col59 CHAR(255),
col60 CHAR(255),col61 CHAR(255),col62 CHAR(255),col63 CHAR(255),col64 CHAR(255), col65 CHAR(255))
ENGINE = innodb ROW_FORMAT=FIXED; ENGINE = innodb ROW_FORMAT=FIXED;
ERROR HY000: Can't create table `test`.`tab5` (errno: 140 "Wrong create options") ERROR HY000: Can't create table `test`.`tab5` (errno: 140 "Wrong create options")
show warnings; show warnings;
...@@ -133,6 +86,8 @@ col48 VARCHAR(255),col49 VARCHAR(255),col50 VARCHAR(255),col51 VARCHAR(255),col5 ...@@ -133,6 +86,8 @@ col48 VARCHAR(255),col49 VARCHAR(255),col50 VARCHAR(255),col51 VARCHAR(255),col5
col54 VARCHAR(255),col55 VARCHAR(255),col56 VARCHAR(255),col57 VARCHAR(255),col58 VARCHAR(255), col59 VARCHAR(255), col54 VARCHAR(255),col55 VARCHAR(255),col56 VARCHAR(255),col57 VARCHAR(255),col58 VARCHAR(255), col59 VARCHAR(255),
col60 VARCHAR(255),col61 VARCHAR(255),col62 VARCHAR(255),col63 VARCHAR(255),col64 VARCHAR(255), col65 VARCHAR(255)) col60 VARCHAR(255),col61 VARCHAR(255),col62 VARCHAR(255),col63 VARCHAR(255),col64 VARCHAR(255), col65 VARCHAR(255))
ENGINE = innodb ROW_FORMAT=COMPACT; ENGINE = innodb ROW_FORMAT=COMPACT;
Warnings:
Warning 139 Row size too large (> NNNN). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
INSERT INTO tab5 values(repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255), INSERT INTO tab5 values(repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),
repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255), repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),
repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255), repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),
...@@ -191,6 +146,8 @@ col48 VARCHAR(255),col49 VARCHAR(255),col50 VARCHAR(255),col51 VARCHAR(255),col5 ...@@ -191,6 +146,8 @@ col48 VARCHAR(255),col49 VARCHAR(255),col50 VARCHAR(255),col51 VARCHAR(255),col5
col54 VARCHAR(255),col55 VARCHAR(255),col56 VARCHAR(255),col57 VARCHAR(255),col58 VARCHAR(255), col59 VARCHAR(255), col54 VARCHAR(255),col55 VARCHAR(255),col56 VARCHAR(255),col57 VARCHAR(255),col58 VARCHAR(255), col59 VARCHAR(255),
col60 VARCHAR(255),col61 VARCHAR(255),col62 VARCHAR(255),col63 VARCHAR(255),col64 VARCHAR(255), col65 VARCHAR(255)) col60 VARCHAR(255),col61 VARCHAR(255),col62 VARCHAR(255),col63 VARCHAR(255),col64 VARCHAR(255), col65 VARCHAR(255))
ENGINE = innodb ROW_FORMAT=DYNAMIC; ENGINE = innodb ROW_FORMAT=DYNAMIC;
Warnings:
Warning 139 Row size too large (> NNNN). Changing some columns to TEXT or BLOB may help. In current row format, BLOB prefix of 0 bytes is stored inline.
INSERT INTO tab5 values(repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255), INSERT INTO tab5 values(repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),
repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255), repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),
repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255), repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),
...@@ -265,6 +222,8 @@ col48 VARCHAR(255),col49 VARCHAR(255),col50 VARCHAR(255),col51 VARCHAR(255),col5 ...@@ -265,6 +222,8 @@ col48 VARCHAR(255),col49 VARCHAR(255),col50 VARCHAR(255),col51 VARCHAR(255),col5
col54 VARCHAR(255),col55 VARCHAR(255),col56 VARCHAR(255),col57 VARCHAR(255),col58 VARCHAR(255), col59 VARCHAR(255), col54 VARCHAR(255),col55 VARCHAR(255),col56 VARCHAR(255),col57 VARCHAR(255),col58 VARCHAR(255), col59 VARCHAR(255),
col60 VARCHAR(255),col61 VARCHAR(255),col62 VARCHAR(255),col63 VARCHAR(255),col64 VARCHAR(255), col65 VARCHAR(255)) col60 VARCHAR(255),col61 VARCHAR(255),col62 VARCHAR(255),col63 VARCHAR(255),col64 VARCHAR(255), col65 VARCHAR(255))
ENGINE = innodb ROW_FORMAT=REDUNDANT; ENGINE = innodb ROW_FORMAT=REDUNDANT;
Warnings:
Warning 139 Row size too large (> NNNN). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
INSERT INTO tab5 values(repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255), INSERT INTO tab5 values(repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),
repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255), repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),
repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255), repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),
...@@ -310,6 +269,7 @@ col60 VARCHAR(255),col61 VARCHAR(255),col62 VARCHAR(255),col63 VARCHAR(255),col6 ...@@ -310,6 +269,7 @@ col60 VARCHAR(255),col61 VARCHAR(255),col62 VARCHAR(255),col63 VARCHAR(255),col6
ENGINE = innodb ROW_FORMAT=COMPRESSED; ENGINE = innodb ROW_FORMAT=COMPRESSED;
Warnings: Warnings:
Warning 1478 InnoDB: Cannot create a COMPRESSED table when innodb_page_size > NNNNk. Assuming ROW_FORMAT=DYNAMIC. Warning 1478 InnoDB: Cannot create a COMPRESSED table when innodb_page_size > NNNNk. Assuming ROW_FORMAT=DYNAMIC.
Warning 139 Row size too large (> NNNN). Changing some columns to TEXT or BLOB may help. In current row format, BLOB prefix of 0 bytes is stored inline.
DROP TABLE tab5; DROP TABLE tab5;
CREATE TABLE t(col BLOB) ENGINE=InnoDB ROW_FORMAT=DYNAMIC; CREATE TABLE t(col BLOB) ENGINE=InnoDB ROW_FORMAT=DYNAMIC;
SHOW WARNINGS; SHOW WARNINGS;
......
...@@ -13,73 +13,6 @@ col36 CHAR(255),col37 CHAR(255),col38 CHAR(255),col39 CHAR(255),col40 CHAR(255) ...@@ -13,73 +13,6 @@ col36 CHAR(255),col37 CHAR(255),col38 CHAR(255),col39 CHAR(255),col40 CHAR(255)
col42 CHAR(255),col43 CHAR(255),col44 CHAR(255),col45 CHAR(255),col46 CHAR(255), col47 CHAR(255), col42 CHAR(255),col43 CHAR(255),col44 CHAR(255),col45 CHAR(255),col46 CHAR(255), col47 CHAR(255),
col48 CHAR(255),col49 CHAR(255),col50 CHAR(255),col51 CHAR(255),col52 CHAR(255), col53 CHAR(255), col48 CHAR(255),col49 CHAR(255),col50 CHAR(255),col51 CHAR(255),col52 CHAR(255), col53 CHAR(255),
col54 CHAR(255),col55 CHAR(255),col56 CHAR(255),col57 CHAR(255),col58 CHAR(255), col59 CHAR(255), col54 CHAR(255),col55 CHAR(255),col56 CHAR(255),col57 CHAR(255),col58 CHAR(255), col59 CHAR(255),
col60 CHAR(255),col61 CHAR(255),col62 CHAR(255),col63 CHAR(255),col64 CHAR(255), col65 CHAR(255),
ccol1 CHAR(255),ccol2 CHAR(255),ccol3 CHAR(255),ccol4 CHAR(255),ccol5 CHAR(255),
ccol6 CHAR(255),ccol7 CHAR(255),ccol8 CHAR(255),ccol9 CHAR(255),ccol10 CHAR(255), ccol11 CHAR(255),
ccol12 CHAR(255),ccol13 CHAR(255),ccol14 CHAR(255),ccol15 CHAR(255),ccol16 CHAR(255), ccol17 CHAR(255),
ccol18 CHAR(255),ccol19 CHAR(255),ccol20 CHAR(255),ccol21 CHAR(255),ccol22 CHAR(255), ccol23 CHAR(255),
ccol24 CHAR(255),ccol25 CHAR(255),ccol26 CHAR(255),ccol27 CHAR(255),ccol28 CHAR(255), ccol29 CHAR(255),
ccol30 CHAR(255),ccol31 CHAR(255),ccol32 CHAR(255),ccol33 CHAR(255),ccol34 CHAR(255), ccol35 CHAR(255),
ccol36 CHAR(255),ccol37 CHAR(255),ccol38 CHAR(255),ccol39 CHAR(255),ccol40 CHAR(255), ccol41 CHAR(255),
ccol42 CHAR(255),ccol43 CHAR(255),ccol44 CHAR(255),ccol45 CHAR(255),ccol46 CHAR(255), ccol47 CHAR(255),
ccol48 CHAR(255),ccol49 CHAR(255),ccol50 CHAR(255),ccol51 CHAR(255),ccol52 CHAR(255), ccol53 CHAR(255),
ccol54 CHAR(255),ccol55 CHAR(255),ccol56 CHAR(255),ccol57 CHAR(255),ccol58 CHAR(255), ccol59 CHAR(255),
ccol60 CHAR(255),ccol61 CHAR(255),ccol62 CHAR(255),ccol63 CHAR(255),ccol64 CHAR(255), ccol65 CHAR(255)
)
ENGINE = innodb ROW_FORMAT= COMPACT;
ERROR 42000: Row size too large (> 16383). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
CREATE TABLE tab5(col1 CHAR (255), col2 CHAR (255), col3 CHAR(255),col4 CHAR(255), col5 CHAR(255),
col6 CHAR(255), col7 CHAR(255), col8 CHAR(255), col9 CHAR(255),col10 CHAR(255), col11 CHAR(255),
col12 CHAR(255), col13 CHAR(255),col14 CHAR(255),col15 CHAR(255),col16 CHAR(255), col17 CHAR(255),
col18 CHAR(255),col19 CHAR(255),col20 CHAR(255),col21 CHAR(255),col22 CHAR(255), col23 CHAR(255),
col24 CHAR(255),col25 CHAR(255),col26 CHAR(255),col27 CHAR(255),col28 CHAR(255), col29 CHAR(255),
col30 CHAR(255),col31 CHAR(255),col32 CHAR(255),col33 CHAR(255),col34 CHAR(255), col35 CHAR(255),
col36 CHAR(255),col37 CHAR(255),col38 CHAR(255),col39 CHAR(255),col40 CHAR(255), col41 CHAR(255),
col42 CHAR(255),col43 CHAR(255),col44 CHAR(255),col45 CHAR(255),col46 CHAR(255), col47 CHAR(255),
col48 CHAR(255),col49 CHAR(255),col50 CHAR(255),col51 CHAR(255),col52 CHAR(255), col53 CHAR(255),
col54 CHAR(255),col55 CHAR(255),col56 CHAR(255),col57 CHAR(255),col58 CHAR(255), col59 CHAR(255),
col60 CHAR(255),col61 CHAR(255),col62 CHAR(255),col63 CHAR(255),col64 CHAR(255), col65 CHAR(255),
ccol1 CHAR(255),ccol2 CHAR(255),ccol3 CHAR(255),ccol4 CHAR(255),ccol5 CHAR(255),
ccol6 CHAR(255),ccol7 CHAR(255),ccol8 CHAR(255),ccol9 CHAR(255),ccol10 CHAR(255), ccol11 CHAR(255),
ccol12 CHAR(255),ccol13 CHAR(255),ccol14 CHAR(255),ccol15 CHAR(255),ccol16 CHAR(255), ccol17 CHAR(255),
ccol18 CHAR(255),ccol19 CHAR(255),ccol20 CHAR(255),ccol21 CHAR(255),ccol22 CHAR(255), ccol23 CHAR(255),
ccol24 CHAR(255),ccol25 CHAR(255),ccol26 CHAR(255),ccol27 CHAR(255),ccol28 CHAR(255), ccol29 CHAR(255),
ccol30 CHAR(255),ccol31 CHAR(255),ccol32 CHAR(255),ccol33 CHAR(255),ccol34 CHAR(255), ccol35 CHAR(255),
ccol36 CHAR(255),ccol37 CHAR(255),ccol38 CHAR(255),ccol39 CHAR(255),ccol40 CHAR(255), ccol41 CHAR(255),
ccol42 CHAR(255),ccol43 CHAR(255),ccol44 CHAR(255),ccol45 CHAR(255),ccol46 CHAR(255), ccol47 CHAR(255),
ccol48 CHAR(255),ccol49 CHAR(255),ccol50 CHAR(255),ccol51 CHAR(255),ccol52 CHAR(255), ccol53 CHAR(255),
ccol54 CHAR(255),ccol55 CHAR(255),ccol56 CHAR(255),ccol57 CHAR(255),ccol58 CHAR(255), ccol59 CHAR(255),
ccol60 CHAR(255),ccol61 CHAR(255),ccol62 CHAR(255),ccol63 CHAR(255),ccol64 CHAR(255), ccol65 CHAR(255)
)
ENGINE = innodb ROW_FORMAT= DYNAMIC;
ERROR 42000: Row size too large (> 16383). Changing some columns to TEXT or BLOB may help. In current row format, BLOB prefix of 0 bytes is stored inline.
CREATE TABLE tab5(col1 CHAR (255), col2 CHAR (255), col3 CHAR(255),col4 CHAR(255), col5 CHAR(255),
col6 CHAR(255), col7 CHAR(255), col8 CHAR(255), col9 CHAR(255),col10 CHAR(255), col11 CHAR(255),
col12 CHAR(255), col13 CHAR(255),col14 CHAR(255),col15 CHAR(255),col16 CHAR(255), col17 CHAR(255),
col18 CHAR(255),col19 CHAR(255),col20 CHAR(255),col21 CHAR(255),col22 CHAR(255), col23 CHAR(255),
col24 CHAR(255),col25 CHAR(255),col26 CHAR(255),col27 CHAR(255),col28 CHAR(255), col29 CHAR(255),
col30 CHAR(255),col31 CHAR(255),col32 CHAR(255),col33 CHAR(255),col34 CHAR(255), col35 CHAR(255),
col36 CHAR(255),col37 CHAR(255),col38 CHAR(255),col39 CHAR(255),col40 CHAR(255), col41 CHAR(255),
col42 CHAR(255),col43 CHAR(255),col44 CHAR(255),col45 CHAR(255),col46 CHAR(255), col47 CHAR(255),
col48 CHAR(255),col49 CHAR(255),col50 CHAR(255),col51 CHAR(255),col52 CHAR(255), col53 CHAR(255),
col54 CHAR(255),col55 CHAR(255),col56 CHAR(255),col57 CHAR(255),col58 CHAR(255), col59 CHAR(255),
col60 CHAR(255),col61 CHAR(255),col62 CHAR(255),col63 CHAR(255),col64 CHAR(255), col65 CHAR(255))
ENGINE = innodb ROW_FORMAT=REDUNDANT;
ERROR 42000: Row size too large (> 16382). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
show warnings;
Level Code Message
Error 1118 Row size too large (> 16382). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
Warning 1030 Got error 139 "Too big row" from storage engine InnoDB
CREATE TABLE tab5(col1 CHAR (255), col2 CHAR (255), col3 CHAR(255),col4 CHAR(255), col5 CHAR(255),
col6 CHAR(255), col7 CHAR(255), col8 CHAR(255), col9 CHAR(255),col10 CHAR(255), col11 CHAR(255),
col12 CHAR(255), col13 CHAR(255),col14 CHAR(255),col15 CHAR(255),col16 CHAR(255), col17 CHAR(255),
col18 CHAR(255),col19 CHAR(255),col20 CHAR(255),col21 CHAR(255),col22 CHAR(255), col23 CHAR(255),
col24 CHAR(255),col25 CHAR(255),col26 CHAR(255),col27 CHAR(255),col28 CHAR(255), col29 CHAR(255),
col30 CHAR(255),col31 CHAR(255),col32 CHAR(255),col33 CHAR(255),col34 CHAR(255), col35 CHAR(255),
col36 CHAR(255),col37 CHAR(255),col38 CHAR(255),col39 CHAR(255),col40 CHAR(255), col41 CHAR(255),
col42 CHAR(255),col43 CHAR(255),col44 CHAR(255),col45 CHAR(255),col46 CHAR(255), col47 CHAR(255),
col48 CHAR(255),col49 CHAR(255),col50 CHAR(255),col51 CHAR(255),col52 CHAR(255), col53 CHAR(255),
col54 CHAR(255),col55 CHAR(255),col56 CHAR(255),col57 CHAR(255),col58 CHAR(255), col59 CHAR(255),
col60 CHAR(255),col61 CHAR(255),col62 CHAR(255),col63 CHAR(255),col64 CHAR(255), col65 CHAR(255)) col60 CHAR(255),col61 CHAR(255),col62 CHAR(255),col63 CHAR(255),col64 CHAR(255), col65 CHAR(255))
ENGINE = innodb ROW_FORMAT=FIXED; ENGINE = innodb ROW_FORMAT=FIXED;
ERROR HY000: Can't create table `test`.`tab5` (errno: 140 "Wrong create options") ERROR HY000: Can't create table `test`.`tab5` (errno: 140 "Wrong create options")
...@@ -190,6 +123,8 @@ ccol54 VARCHAR(255),ccol55 VARCHAR(255),ccol56 VARCHAR(255),ccol57 VARCHAR(255), ...@@ -190,6 +123,8 @@ ccol54 VARCHAR(255),ccol55 VARCHAR(255),ccol56 VARCHAR(255),ccol57 VARCHAR(255),
ccol60 VARCHAR(255),ccol61 VARCHAR(255),ccol62 VARCHAR(255),ccol63 VARCHAR(255),ccol64 VARCHAR(255), ccol65 VARCHAR(255) ccol60 VARCHAR(255),ccol61 VARCHAR(255),ccol62 VARCHAR(255),ccol63 VARCHAR(255),ccol64 VARCHAR(255), ccol65 VARCHAR(255)
) )
ENGINE = innodb ROW_FORMAT=COMPACT; ENGINE = innodb ROW_FORMAT=COMPACT;
Warnings:
Warning 139 Row size too large (> 32702). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
INSERT INTO tab5 values(repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255), INSERT INTO tab5 values(repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),
repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255), repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),
repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255), repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),
...@@ -300,6 +235,8 @@ ccol54 VARCHAR(255),ccol55 VARCHAR(255),ccol56 VARCHAR(255),ccol57 VARCHAR(255), ...@@ -300,6 +235,8 @@ ccol54 VARCHAR(255),ccol55 VARCHAR(255),ccol56 VARCHAR(255),ccol57 VARCHAR(255),
ccol60 VARCHAR(255),ccol61 VARCHAR(255),ccol62 VARCHAR(255),ccol63 VARCHAR(255),ccol64 VARCHAR(255), ccol65 VARCHAR(255) ccol60 VARCHAR(255),ccol61 VARCHAR(255),ccol62 VARCHAR(255),ccol63 VARCHAR(255),ccol64 VARCHAR(255), ccol65 VARCHAR(255)
) )
ENGINE = innodb ROW_FORMAT=DYNAMIC; ENGINE = innodb ROW_FORMAT=DYNAMIC;
Warnings:
Warning 139 Row size too large (> NNNN). Changing some columns to TEXT or BLOB may help. In current row format, BLOB prefix of 0 bytes is stored inline.
INSERT INTO tab5 values(repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255), INSERT INTO tab5 values(repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),
repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255), repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),
repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255), repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),
...@@ -440,6 +377,8 @@ ccol54 VARCHAR(255),ccol55 VARCHAR(255),ccol56 VARCHAR(255),ccol57 VARCHAR(255), ...@@ -440,6 +377,8 @@ ccol54 VARCHAR(255),ccol55 VARCHAR(255),ccol56 VARCHAR(255),ccol57 VARCHAR(255),
ccol60 VARCHAR(255),ccol61 VARCHAR(255),ccol62 VARCHAR(255),ccol63 VARCHAR(255),ccol64 VARCHAR(255), ccol65 VARCHAR(255) ccol60 VARCHAR(255),ccol61 VARCHAR(255),ccol62 VARCHAR(255),ccol63 VARCHAR(255),ccol64 VARCHAR(255), ccol65 VARCHAR(255)
) )
ENGINE = innodb ROW_FORMAT=REDUNDANT; ENGINE = innodb ROW_FORMAT=REDUNDANT;
Warnings:
Warning 139 Row size too large (> NNNN). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
INSERT INTO tab5 values(repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255), INSERT INTO tab5 values(repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),
repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255), repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),
repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255), repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),repeat('a',255),
......
# #
# MDEV-11369: Instant ADD COLUMN for InnoDB # MDEV-11369: Instant ADD COLUMN for InnoDB
# #
call mtr.add_suppression("Cannot add field `.*` in table `test`.`.*` because after adding it, the row size is");
CREATE TABLE t(a INT UNIQUE)ENGINE=InnoDB ROW_FORMAT=COMPACT; CREATE TABLE t(a INT UNIQUE)ENGINE=InnoDB ROW_FORMAT=COMPACT;
ALTER TABLE t ADD e INT, ROW_FORMAT=COMPRESSED; ALTER TABLE t ADD e INT, ROW_FORMAT=COMPRESSED;
INSERT INTO t SET a=1; INSERT INTO t SET a=1;
...@@ -328,6 +329,8 @@ affected rows: 1 ...@@ -328,6 +329,8 @@ affected rows: 1
Warnings: Warnings:
Note 1265 Data truncated for column 'c7' at row 1 Note 1265 Data truncated for column 'c7' at row 1
Note 1265 Data truncated for column 'c8' at row 1 Note 1265 Data truncated for column 'c8' at row 1
SET innodb_strict_mode = OFF;
affected rows: 0
ALTER TABLE t3 CHANGE t phrase TEXT DEFAULT 0xc3a4c3a448, ALTER TABLE t3 CHANGE t phrase TEXT DEFAULT 0xc3a4c3a448,
CHANGE b b BLOB NOT NULL DEFAULT 'binary line of business'; CHANGE b b BLOB NOT NULL DEFAULT 'binary line of business';
affected rows: 4 affected rows: 4
...@@ -346,6 +349,8 @@ id c2 c3 c4 c5 c6 c7 c8 phrase b ...@@ -346,6 +349,8 @@ id c2 c3 c4 c5 c6 c7 c8 phrase b
ALTER TABLE t3 DROP c3, DROP c7; ALTER TABLE t3 DROP c3, DROP c7;
affected rows: 0 affected rows: 0
info: Records: 0 Duplicates: 0 Warnings: 0 info: Records: 0 Duplicates: 0 Warnings: 0
SET innodb_strict_mode = OFF;
affected rows: 0
SELECT * FROM t3; SELECT * FROM t3;
id c2 c4 c5 c6 c8 phrase b id c2 c4 c5 c6 c8 phrase b
1 1 1970-01-01 03:00:42 1970-01-01 03:00:42 NULL 1970-01-01 The quick brown fox jumps over the lazy dog 1 1 1970-01-01 03:00:42 1970-01-01 03:00:42 NULL 1970-01-01 The quick brown fox jumps over the lazy dog
...@@ -760,6 +765,8 @@ affected rows: 1 ...@@ -760,6 +765,8 @@ affected rows: 1
Warnings: Warnings:
Note 1265 Data truncated for column 'c7' at row 1 Note 1265 Data truncated for column 'c7' at row 1
Note 1265 Data truncated for column 'c8' at row 1 Note 1265 Data truncated for column 'c8' at row 1
SET innodb_strict_mode = OFF;
affected rows: 0
ALTER TABLE t3 CHANGE t phrase TEXT DEFAULT 0xc3a4c3a448, ALTER TABLE t3 CHANGE t phrase TEXT DEFAULT 0xc3a4c3a448,
CHANGE b b BLOB NOT NULL DEFAULT 'binary line of business'; CHANGE b b BLOB NOT NULL DEFAULT 'binary line of business';
affected rows: 4 affected rows: 4
...@@ -778,6 +785,8 @@ id c2 c3 c4 c5 c6 c7 c8 phrase b ...@@ -778,6 +785,8 @@ id c2 c3 c4 c5 c6 c7 c8 phrase b
ALTER TABLE t3 DROP c3, DROP c7; ALTER TABLE t3 DROP c3, DROP c7;
affected rows: 0 affected rows: 0
info: Records: 0 Duplicates: 0 Warnings: 0 info: Records: 0 Duplicates: 0 Warnings: 0
SET innodb_strict_mode = OFF;
affected rows: 0
SELECT * FROM t3; SELECT * FROM t3;
id c2 c4 c5 c6 c8 phrase b id c2 c4 c5 c6 c8 phrase b
1 1 1970-01-01 03:00:42 1970-01-01 03:00:42 NULL 1970-01-01 The quick brown fox jumps over the lazy dog 1 1 1970-01-01 03:00:42 1970-01-01 03:00:42 NULL 1970-01-01 The quick brown fox jumps over the lazy dog
...@@ -1192,6 +1201,8 @@ affected rows: 1 ...@@ -1192,6 +1201,8 @@ affected rows: 1
Warnings: Warnings:
Note 1265 Data truncated for column 'c7' at row 1 Note 1265 Data truncated for column 'c7' at row 1
Note 1265 Data truncated for column 'c8' at row 1 Note 1265 Data truncated for column 'c8' at row 1
SET innodb_strict_mode = OFF;
affected rows: 0
ALTER TABLE t3 CHANGE t phrase TEXT DEFAULT 0xc3a4c3a448, ALTER TABLE t3 CHANGE t phrase TEXT DEFAULT 0xc3a4c3a448,
CHANGE b b BLOB NOT NULL DEFAULT 'binary line of business'; CHANGE b b BLOB NOT NULL DEFAULT 'binary line of business';
affected rows: 4 affected rows: 4
...@@ -1210,6 +1221,8 @@ id c2 c3 c4 c5 c6 c7 c8 phrase b ...@@ -1210,6 +1221,8 @@ id c2 c3 c4 c5 c6 c7 c8 phrase b
ALTER TABLE t3 DROP c3, DROP c7; ALTER TABLE t3 DROP c3, DROP c7;
affected rows: 0 affected rows: 0
info: Records: 0 Duplicates: 0 Warnings: 0 info: Records: 0 Duplicates: 0 Warnings: 0
SET innodb_strict_mode = OFF;
affected rows: 0
SELECT * FROM t3; SELECT * FROM t3;
id c2 c4 c5 c6 c8 phrase b id c2 c4 c5 c6 c8 phrase b
1 1 1970-01-01 03:00:42 1970-01-01 03:00:42 NULL 1970-01-01 The quick brown fox jumps over the lazy dog 1 1 1970-01-01 03:00:42 1970-01-01 03:00:42 NULL 1970-01-01 The quick brown fox jumps over the lazy dog
......
--- max_record_size.result 2019-07-03 11:54:44.591421526 +0300
+++ max_record_size.reject 2019-07-03 12:51:26.070418078 +0300
@@ -3,45 +3,65 @@
c1 CHAR(255), c2 CHAR(255), c3 CHAR(255), c4 CHAR(255),
c5 CHAR(255), c6 CHAR(255), c7 CHAR(255), c8 CHAR(255),
c9 CHAR(255), c10 CHAR(255), c11 CHAR(255), c12 CHAR(255),
-c13 CHAR(255), c14 CHAR(255), c15 CHAR(255)
+c13 CHAR(255), c14 CHAR(255), c15 CHAR(255), c16 CHAR(255),
+c17 CHAR(255), c18 CHAR(255), c19 CHAR(255), c20 CHAR(255),
+c21 CHAR(255), c22 CHAR(255), c23 CHAR(255), c24 CHAR(255),
+c25 CHAR(255), c26 CHAR(255), c27 CHAR(255), c28 CHAR(255),
+c29 CHAR(255), c30 CHAR(255), c31 CHAR(255)
) ENGINE=INNODB;
DROP TABLE t1;
CREATE TABLE t1 (
c1 CHAR(255), c2 CHAR(255), c3 CHAR(255), c4 CHAR(255),
c5 CHAR(255), c6 CHAR(255), c7 CHAR(255), c8 CHAR(255),
c9 CHAR(255), c10 CHAR(255), c11 CHAR(255), c12 CHAR(255),
-c13 CHAR(255), c14 CHAR(255), c15 CHAR(255), c16 CHAR(255)
+c13 CHAR(255), c14 CHAR(255), c15 CHAR(255), c16 CHAR(255),
+c17 CHAR(255), c18 CHAR(255), c19 CHAR(255), c20 CHAR(255),
+c21 CHAR(255), c22 CHAR(255), c23 CHAR(255), c24 CHAR(255),
+c25 CHAR(255), c26 CHAR(255), c27 CHAR(255), c28 CHAR(255),
+c29 CHAR(255), c30 CHAR(255), c31 CHAR(255), c32 CHAR(255)
) ENGINE=INNODB;
-ERROR 42000: Row size too large (> 4027). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
+ERROR 42000: Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
CREATE TABLE t1 (
c1 VARCHAR(255), c2 VARCHAR(255), c3 VARCHAR(255), c4 VARCHAR(255),
c5 VARCHAR(255), c6 VARCHAR(255), c7 VARCHAR(255), c8 VARCHAR(255),
c9 VARCHAR(255), c10 VARCHAR(255), c11 VARCHAR(255), c12 VARCHAR(255),
-c13 VARCHAR(255), c14 VARCHAR(255), c15 VARCHAR(255)
+c13 VARCHAR(255), c14 VARCHAR(255), c15 VARCHAR(255), c16 VARCHAR(255),
+c17 VARCHAR(255), c18 VARCHAR(255), c19 VARCHAR(255), c20 VARCHAR(255),
+c21 VARCHAR(255), c22 VARCHAR(255), c23 VARCHAR(255), c24 VARCHAR(255),
+c25 VARCHAR(255), c26 VARCHAR(255), c27 VARCHAR(255), c28 VARCHAR(255),
+c29 VARCHAR(255), c30 VARCHAR(255), c31 VARCHAR(255)
) ENGINE=INNODB;
DROP TABLE t1;
CREATE TABLE t1 (
c1 VARCHAR(255), c2 VARCHAR(255), c3 VARCHAR(255), c4 VARCHAR(255),
c5 VARCHAR(255), c6 VARCHAR(255), c7 VARCHAR(255), c8 VARCHAR(255),
c9 VARCHAR(255), c10 VARCHAR(255), c11 VARCHAR(255), c12 VARCHAR(255),
-c13 VARCHAR(255), c14 VARCHAR(255), c15 VARCHAR(255), c16 VARCHAR(255)
+c13 VARCHAR(255), c14 VARCHAR(255), c15 VARCHAR(255), c16 VARCHAR(255),
+c17 VARCHAR(255), c18 VARCHAR(255), c19 VARCHAR(255), c20 VARCHAR(255),
+c21 VARCHAR(255), c22 VARCHAR(255), c23 VARCHAR(255), c24 VARCHAR(255),
+c25 VARCHAR(255), c26 VARCHAR(255), c27 VARCHAR(255), c28 VARCHAR(255),
+c29 VARCHAR(255), c30 VARCHAR(255), c31 VARCHAR(255), c32 VARCHAR(255)
) ENGINE=INNODB;
-ERROR 42000: Row size too large (> 4027). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
+ERROR 42000: Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
CREATE TABLE t1 (
c1 VARCHAR(788), c2 VARCHAR(788), c3 VARCHAR(788), c4 VARCHAR(788),
-c5 VARCHAR(788)
+c5 VARCHAR(788), c6 VARCHAR(788), c7 VARCHAR(788), c8 VARCHAR(788),
+c9 VARCHAR(788), c10 VARCHAR(788)
) ENGINE=INNODB;
DROP TABLE t1;
CREATE TABLE t1 (
c1 VARCHAR(788), c2 VARCHAR(788), c3 VARCHAR(788), c4 VARCHAR(788),
-c5 VARCHAR(788), c6 VARCHAR(788)
+c5 VARCHAR(788), c6 VARCHAR(788), c7 VARCHAR(788), c8 VARCHAR(788),
+c9 VARCHAR(788), c10 VARCHAR(788), c11 VARCHAR(788)
) ENGINE=INNODB;
-ERROR 42000: Row size too large (> 4027). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
+ERROR 42000: Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
CREATE TABLE t1 (
-c1 TEXT, c2 TEXT, c3 TEXT, c4 TEXT, c5 TEXT
+c1 TEXT, c2 TEXT, c3 TEXT, c4 TEXT, c5 TEXT, c6 TEXT, c7 TEXT,
+c8 TEXT, c9 TEXT, c10 TEXT
) ENGINE=INNODB;
DROP TABLE t1;
CREATE TABLE t1 (
-c1 TEXT, c2 TEXT, c3 TEXT, c4 TEXT, c5 TEXT, c6 TEXT
+c1 TEXT, c2 TEXT, c3 TEXT, c4 TEXT, c5 TEXT, c6 TEXT, c7 TEXT,
+c8 TEXT, c9 TEXT, c10 TEXT, c11 TEXT
) ENGINE=INNODB;
-ERROR 42000: Row size too large (> 4027). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
+ERROR 42000: Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
--- max_record_size.result 2019-07-03 11:54:44.591421526 +0300
+++ max_record_size.reject 2019-07-03 12:55:05.258762945 +0300
@@ -3,45 +3,65 @@
c1 CHAR(255), c2 CHAR(255), c3 CHAR(255), c4 CHAR(255),
c5 CHAR(255), c6 CHAR(255), c7 CHAR(255), c8 CHAR(255),
c9 CHAR(255), c10 CHAR(255), c11 CHAR(255), c12 CHAR(255),
-c13 CHAR(255), c14 CHAR(255), c15 CHAR(255)
+c13 CHAR(255), c14 CHAR(255), c15 CHAR(255), c16 CHAR(255),
+c17 CHAR(255), c18 CHAR(255), c19 CHAR(255), c20 CHAR(255),
+c21 CHAR(255), c22 CHAR(255), c23 CHAR(255), c24 CHAR(255),
+c25 CHAR(255), c26 CHAR(255), c27 CHAR(255), c28 CHAR(255),
+c29 CHAR(255), c30 CHAR(255), c31 CHAR(255)
) ENGINE=INNODB;
DROP TABLE t1;
CREATE TABLE t1 (
c1 CHAR(255), c2 CHAR(255), c3 CHAR(255), c4 CHAR(255),
c5 CHAR(255), c6 CHAR(255), c7 CHAR(255), c8 CHAR(255),
c9 CHAR(255), c10 CHAR(255), c11 CHAR(255), c12 CHAR(255),
-c13 CHAR(255), c14 CHAR(255), c15 CHAR(255), c16 CHAR(255)
+c13 CHAR(255), c14 CHAR(255), c15 CHAR(255), c16 CHAR(255),
+c17 CHAR(255), c18 CHAR(255), c19 CHAR(255), c20 CHAR(255),
+c21 CHAR(255), c22 CHAR(255), c23 CHAR(255), c24 CHAR(255),
+c25 CHAR(255), c26 CHAR(255), c27 CHAR(255), c28 CHAR(255),
+c29 CHAR(255), c30 CHAR(255), c31 CHAR(255), c32 CHAR(255)
) ENGINE=INNODB;
-ERROR 42000: Row size too large (> 4027). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
+ERROR 42000: Row size too large (> 8123). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
CREATE TABLE t1 (
c1 VARCHAR(255), c2 VARCHAR(255), c3 VARCHAR(255), c4 VARCHAR(255),
c5 VARCHAR(255), c6 VARCHAR(255), c7 VARCHAR(255), c8 VARCHAR(255),
c9 VARCHAR(255), c10 VARCHAR(255), c11 VARCHAR(255), c12 VARCHAR(255),
-c13 VARCHAR(255), c14 VARCHAR(255), c15 VARCHAR(255)
+c13 VARCHAR(255), c14 VARCHAR(255), c15 VARCHAR(255), c16 VARCHAR(255),
+c17 VARCHAR(255), c18 VARCHAR(255), c19 VARCHAR(255), c20 VARCHAR(255),
+c21 VARCHAR(255), c22 VARCHAR(255), c23 VARCHAR(255), c24 VARCHAR(255),
+c25 VARCHAR(255), c26 VARCHAR(255), c27 VARCHAR(255), c28 VARCHAR(255),
+c29 VARCHAR(255), c30 VARCHAR(255), c31 VARCHAR(255)
) ENGINE=INNODB;
DROP TABLE t1;
CREATE TABLE t1 (
c1 VARCHAR(255), c2 VARCHAR(255), c3 VARCHAR(255), c4 VARCHAR(255),
c5 VARCHAR(255), c6 VARCHAR(255), c7 VARCHAR(255), c8 VARCHAR(255),
c9 VARCHAR(255), c10 VARCHAR(255), c11 VARCHAR(255), c12 VARCHAR(255),
-c13 VARCHAR(255), c14 VARCHAR(255), c15 VARCHAR(255), c16 VARCHAR(255)
+c13 VARCHAR(255), c14 VARCHAR(255), c15 VARCHAR(255), c16 VARCHAR(255),
+c17 VARCHAR(255), c18 VARCHAR(255), c19 VARCHAR(255), c20 VARCHAR(255),
+c21 VARCHAR(255), c22 VARCHAR(255), c23 VARCHAR(255), c24 VARCHAR(255),
+c25 VARCHAR(255), c26 VARCHAR(255), c27 VARCHAR(255), c28 VARCHAR(255),
+c29 VARCHAR(255), c30 VARCHAR(255), c31 VARCHAR(255), c32 VARCHAR(255)
) ENGINE=INNODB;
-ERROR 42000: Row size too large (> 4027). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
+ERROR 42000: Row size too large (> 8123). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
CREATE TABLE t1 (
c1 VARCHAR(788), c2 VARCHAR(788), c3 VARCHAR(788), c4 VARCHAR(788),
-c5 VARCHAR(788)
+c5 VARCHAR(788), c6 VARCHAR(788), c7 VARCHAR(788), c8 VARCHAR(788),
+c9 VARCHAR(788), c10 VARCHAR(788)
) ENGINE=INNODB;
DROP TABLE t1;
CREATE TABLE t1 (
c1 VARCHAR(788), c2 VARCHAR(788), c3 VARCHAR(788), c4 VARCHAR(788),
-c5 VARCHAR(788), c6 VARCHAR(788)
+c5 VARCHAR(788), c6 VARCHAR(788), c7 VARCHAR(788), c8 VARCHAR(788),
+c9 VARCHAR(788), c10 VARCHAR(788), c11 VARCHAR(788)
) ENGINE=INNODB;
-ERROR 42000: Row size too large (> 4027). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
+ERROR 42000: Row size too large (> 8123). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
CREATE TABLE t1 (
-c1 TEXT, c2 TEXT, c3 TEXT, c4 TEXT, c5 TEXT
+c1 TEXT, c2 TEXT, c3 TEXT, c4 TEXT, c5 TEXT, c6 TEXT, c7 TEXT,
+c8 TEXT, c9 TEXT, c10 TEXT
) ENGINE=INNODB;
DROP TABLE t1;
CREATE TABLE t1 (
-c1 TEXT, c2 TEXT, c3 TEXT, c4 TEXT, c5 TEXT, c6 TEXT
+c1 TEXT, c2 TEXT, c3 TEXT, c4 TEXT, c5 TEXT, c6 TEXT, c7 TEXT,
+c8 TEXT, c9 TEXT, c10 TEXT, c11 TEXT
) ENGINE=INNODB;
-ERROR 42000: Row size too large (> 4027). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
+ERROR 42000: Row size too large (> 8123). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
--- max_record_size.result 2019-07-03 11:54:44.591421526 +0300
+++ max_record_size.reject 2019-07-03 12:27:08.004932026 +0300
@@ -3,45 +3,104 @@
c1 CHAR(255), c2 CHAR(255), c3 CHAR(255), c4 CHAR(255),
c5 CHAR(255), c6 CHAR(255), c7 CHAR(255), c8 CHAR(255),
c9 CHAR(255), c10 CHAR(255), c11 CHAR(255), c12 CHAR(255),
-c13 CHAR(255), c14 CHAR(255), c15 CHAR(255)
+c13 CHAR(255), c14 CHAR(255), c15 CHAR(255), c16 CHAR(255),
+c17 CHAR(255), c18 CHAR(255), c19 CHAR(255), c20 CHAR(255),
+c21 CHAR(255), c22 CHAR(255), c23 CHAR(255), c24 CHAR(255),
+c25 CHAR(255), c26 CHAR(255), c27 CHAR(255), c28 CHAR(255),
+c29 CHAR(255), c30 CHAR(255), c31 CHAR(255), c32 CHAR(255),
+c33 CHAR(255), c34 CHAR(255), c35 CHAR(255), c36 CHAR(255),
+c37 CHAR(255), c38 CHAR(255), c39 CHAR(255), c40 CHAR(255),
+c41 CHAR(255), c42 CHAR(255), c43 CHAR(255), c44 CHAR(255),
+c45 CHAR(255), c46 CHAR(255), c47 CHAR(255), c48 CHAR(255),
+c49 CHAR(255), c50 CHAR(255), c51 CHAR(255), c52 CHAR(255),
+c53 CHAR(255), c54 CHAR(255), c55 CHAR(255), c56 CHAR(255),
+c57 CHAR(255), c58 CHAR(255), c59 CHAR(255), c60 CHAR(255),
+c61 CHAR(255), c62 CHAR(255), c63 CHAR(255)
) ENGINE=INNODB;
DROP TABLE t1;
CREATE TABLE t1 (
c1 CHAR(255), c2 CHAR(255), c3 CHAR(255), c4 CHAR(255),
c5 CHAR(255), c6 CHAR(255), c7 CHAR(255), c8 CHAR(255),
c9 CHAR(255), c10 CHAR(255), c11 CHAR(255), c12 CHAR(255),
-c13 CHAR(255), c14 CHAR(255), c15 CHAR(255), c16 CHAR(255)
+c13 CHAR(255), c14 CHAR(255), c15 CHAR(255), c16 CHAR(255),
+c17 CHAR(255), c18 CHAR(255), c19 CHAR(255), c20 CHAR(255),
+c21 CHAR(255), c22 CHAR(255), c23 CHAR(255), c24 CHAR(255),
+c25 CHAR(255), c26 CHAR(255), c27 CHAR(255), c28 CHAR(255),
+c29 CHAR(255), c30 CHAR(255), c31 CHAR(255), c32 CHAR(255),
+c33 CHAR(255), c34 CHAR(255), c35 CHAR(255), c36 CHAR(255),
+c37 CHAR(255), c38 CHAR(255), c39 CHAR(255), c40 CHAR(255),
+c41 CHAR(255), c42 CHAR(255), c43 CHAR(255), c44 CHAR(255),
+c45 CHAR(255), c46 CHAR(255), c47 CHAR(255), c48 CHAR(255),
+c49 CHAR(255), c50 CHAR(255), c51 CHAR(255), c52 CHAR(255),
+c53 CHAR(255), c54 CHAR(255), c55 CHAR(255), c56 CHAR(255),
+c57 CHAR(255), c58 CHAR(255), c59 CHAR(255), c60 CHAR(255),
+c61 CHAR(255), c62 CHAR(255), c63 CHAR(255), c64 CHAR(255)
) ENGINE=INNODB;
-ERROR 42000: Row size too large (> 4027). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
+ERROR 42000: Row size too large (> 16318). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
CREATE TABLE t1 (
c1 VARCHAR(255), c2 VARCHAR(255), c3 VARCHAR(255), c4 VARCHAR(255),
c5 VARCHAR(255), c6 VARCHAR(255), c7 VARCHAR(255), c8 VARCHAR(255),
c9 VARCHAR(255), c10 VARCHAR(255), c11 VARCHAR(255), c12 VARCHAR(255),
-c13 VARCHAR(255), c14 VARCHAR(255), c15 VARCHAR(255)
+c13 VARCHAR(255), c14 VARCHAR(255), c15 VARCHAR(255), c16 VARCHAR(255),
+c17 VARCHAR(255), c18 VARCHAR(255), c19 VARCHAR(255), c20 VARCHAR(255),
+c21 VARCHAR(255), c22 VARCHAR(255), c23 VARCHAR(255), c24 VARCHAR(255),
+c25 VARCHAR(255), c26 VARCHAR(255), c27 VARCHAR(255), c28 VARCHAR(255),
+c29 VARCHAR(255), c30 VARCHAR(255), c31 VARCHAR(255), c32 VARCHAR(255),
+c33 VARCHAR(255), c34 VARCHAR(255), c35 VARCHAR(255), c36 VARCHAR(255),
+c37 VARCHAR(255), c38 VARCHAR(255), c39 VARCHAR(255), c40 VARCHAR(255),
+c41 VARCHAR(255), c42 VARCHAR(255), c43 VARCHAR(255), c44 VARCHAR(255),
+c45 VARCHAR(255), c46 VARCHAR(255), c47 VARCHAR(255), c48 VARCHAR(255),
+c49 VARCHAR(255), c50 VARCHAR(255), c51 VARCHAR(255), c52 VARCHAR(255),
+c53 VARCHAR(255), c54 VARCHAR(255), c55 VARCHAR(255), c56 VARCHAR(255),
+c57 VARCHAR(255), c58 VARCHAR(255), c59 VARCHAR(255), c60 VARCHAR(255),
+c61 VARCHAR(255), c62 VARCHAR(255), c63 VARCHAR(255)
) ENGINE=INNODB;
DROP TABLE t1;
CREATE TABLE t1 (
c1 VARCHAR(255), c2 VARCHAR(255), c3 VARCHAR(255), c4 VARCHAR(255),
c5 VARCHAR(255), c6 VARCHAR(255), c7 VARCHAR(255), c8 VARCHAR(255),
c9 VARCHAR(255), c10 VARCHAR(255), c11 VARCHAR(255), c12 VARCHAR(255),
-c13 VARCHAR(255), c14 VARCHAR(255), c15 VARCHAR(255), c16 VARCHAR(255)
+c13 VARCHAR(255), c14 VARCHAR(255), c15 VARCHAR(255), c16 VARCHAR(255),
+c17 VARCHAR(255), c18 VARCHAR(255), c19 VARCHAR(255), c20 VARCHAR(255),
+c21 VARCHAR(255), c22 VARCHAR(255), c23 VARCHAR(255), c24 VARCHAR(255),
+c25 VARCHAR(255), c26 VARCHAR(255), c27 VARCHAR(255), c28 VARCHAR(255),
+c29 VARCHAR(255), c30 VARCHAR(255), c31 VARCHAR(255), c32 VARCHAR(255),
+c33 VARCHAR(255), c34 VARCHAR(255), c35 VARCHAR(255), c36 VARCHAR(255),
+c37 VARCHAR(255), c38 VARCHAR(255), c39 VARCHAR(255), c40 VARCHAR(255),
+c41 VARCHAR(255), c42 VARCHAR(255), c43 VARCHAR(255), c44 VARCHAR(255),
+c45 VARCHAR(255), c46 VARCHAR(255), c47 VARCHAR(255), c48 VARCHAR(255),
+c49 VARCHAR(255), c50 VARCHAR(255), c51 VARCHAR(255), c52 VARCHAR(255),
+c53 VARCHAR(255), c54 VARCHAR(255), c55 VARCHAR(255), c56 VARCHAR(255),
+c57 VARCHAR(255), c58 VARCHAR(255), c59 VARCHAR(255), c60 VARCHAR(255),
+c61 VARCHAR(255), c62 VARCHAR(255), c63 VARCHAR(255), c64 VARCHAR(255)
) ENGINE=INNODB;
-ERROR 42000: Row size too large (> 4027). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
+ERROR 42000: Row size too large (> 16318). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
CREATE TABLE t1 (
c1 VARCHAR(788), c2 VARCHAR(788), c3 VARCHAR(788), c4 VARCHAR(788),
-c5 VARCHAR(788)
+c5 VARCHAR(788), c6 VARCHAR(788), c7 VARCHAR(788), c8 VARCHAR(788),
+c9 VARCHAR(788), c10 VARCHAR(788), c11 VARCHAR(788), c12 VARCHAR(788),
+c13 VARCHAR(788), c14 VARCHAR(788), c15 VARCHAR(788), c16 VARCHAR(788),
+c17 VARCHAR(788), c18 VARCHAR(788), c19 VARCHAR(788), c20 VARCHAR(788)
) ENGINE=INNODB;
DROP TABLE t1;
CREATE TABLE t1 (
c1 VARCHAR(788), c2 VARCHAR(788), c3 VARCHAR(788), c4 VARCHAR(788),
-c5 VARCHAR(788), c6 VARCHAR(788)
-) ENGINE=INNODB;
-ERROR 42000: Row size too large (> 4027). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
-CREATE TABLE t1 (
-c1 TEXT, c2 TEXT, c3 TEXT, c4 TEXT, c5 TEXT
+c5 VARCHAR(788), c6 VARCHAR(788), c7 VARCHAR(788), c8 VARCHAR(788),
+c9 VARCHAR(788), c10 VARCHAR(788), c11 VARCHAR(788), c12 VARCHAR(788),
+c13 VARCHAR(788), c14 VARCHAR(788), c15 VARCHAR(788), c16 VARCHAR(788),
+c17 VARCHAR(788), c18 VARCHAR(788), c19 VARCHAR(788), c20 VARCHAR(788),
+c21 VARCHAR(788)
+) ENGINE=INNODB;
+ERROR 42000: Row size too large (> 16318). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
+CREATE TABLE t1 (
+c1 TEXT, c2 TEXT, c3 TEXT, c4 TEXT, c5 TEXT, c6 TEXT, c7 TEXT,
+c8 TEXT, c9 TEXT, c10 TEXT, c11 TEXT, c12 TEXT, c13 TEXT, c14 TEXT,
+c15 TEXT, c16 TEXT, c17 TEXT, c18 TEXT, c19 TEXT, c20 TEXT
) ENGINE=INNODB;
DROP TABLE t1;
CREATE TABLE t1 (
-c1 TEXT, c2 TEXT, c3 TEXT, c4 TEXT, c5 TEXT, c6 TEXT
+c1 TEXT, c2 TEXT, c3 TEXT, c4 TEXT, c5 TEXT, c6 TEXT, c7 TEXT,
+c8 TEXT, c9 TEXT, c10 TEXT, c11 TEXT, c12 TEXT, c13 TEXT, c14 TEXT,
+c15 TEXT, c16 TEXT, c17 TEXT, c18 TEXT, c19 TEXT, c20 TEXT, c21 TEXT
) ENGINE=INNODB;
-ERROR 42000: Row size too large (> 4027). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
+ERROR 42000: Row size too large (> 16318). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
--- max_record_size.result 2019-07-03 11:54:44.591421526 +0300
+++ max_record_size.reject 2019-07-03 12:41:03.319664978 +0300
@@ -3,45 +3,104 @@
c1 CHAR(255), c2 CHAR(255), c3 CHAR(255), c4 CHAR(255),
c5 CHAR(255), c6 CHAR(255), c7 CHAR(255), c8 CHAR(255),
c9 CHAR(255), c10 CHAR(255), c11 CHAR(255), c12 CHAR(255),
-c13 CHAR(255), c14 CHAR(255), c15 CHAR(255)
+c13 CHAR(255), c14 CHAR(255), c15 CHAR(255), c16 CHAR(255),
+c17 CHAR(255), c18 CHAR(255), c19 CHAR(255), c20 CHAR(255),
+c21 CHAR(255), c22 CHAR(255), c23 CHAR(255), c24 CHAR(255),
+c25 CHAR(255), c26 CHAR(255), c27 CHAR(255), c28 CHAR(255),
+c29 CHAR(255), c30 CHAR(255), c31 CHAR(255), c32 CHAR(255),
+c33 CHAR(255), c34 CHAR(255), c35 CHAR(255), c36 CHAR(255),
+c37 CHAR(255), c38 CHAR(255), c39 CHAR(255), c40 CHAR(255),
+c41 CHAR(255), c42 CHAR(255), c43 CHAR(255), c44 CHAR(255),
+c45 CHAR(255), c46 CHAR(255), c47 CHAR(255), c48 CHAR(255),
+c49 CHAR(255), c50 CHAR(255), c51 CHAR(255), c52 CHAR(255),
+c53 CHAR(255), c54 CHAR(255), c55 CHAR(255), c56 CHAR(255),
+c57 CHAR(255), c58 CHAR(255), c59 CHAR(255), c60 CHAR(255),
+c61 CHAR(255), c62 CHAR(255), c63 CHAR(255)
) ENGINE=INNODB;
DROP TABLE t1;
CREATE TABLE t1 (
c1 CHAR(255), c2 CHAR(255), c3 CHAR(255), c4 CHAR(255),
c5 CHAR(255), c6 CHAR(255), c7 CHAR(255), c8 CHAR(255),
c9 CHAR(255), c10 CHAR(255), c11 CHAR(255), c12 CHAR(255),
-c13 CHAR(255), c14 CHAR(255), c15 CHAR(255), c16 CHAR(255)
+c13 CHAR(255), c14 CHAR(255), c15 CHAR(255), c16 CHAR(255),
+c17 CHAR(255), c18 CHAR(255), c19 CHAR(255), c20 CHAR(255),
+c21 CHAR(255), c22 CHAR(255), c23 CHAR(255), c24 CHAR(255),
+c25 CHAR(255), c26 CHAR(255), c27 CHAR(255), c28 CHAR(255),
+c29 CHAR(255), c30 CHAR(255), c31 CHAR(255), c32 CHAR(255),
+c33 CHAR(255), c34 CHAR(255), c35 CHAR(255), c36 CHAR(255),
+c37 CHAR(255), c38 CHAR(255), c39 CHAR(255), c40 CHAR(255),
+c41 CHAR(255), c42 CHAR(255), c43 CHAR(255), c44 CHAR(255),
+c45 CHAR(255), c46 CHAR(255), c47 CHAR(255), c48 CHAR(255),
+c49 CHAR(255), c50 CHAR(255), c51 CHAR(255), c52 CHAR(255),
+c53 CHAR(255), c54 CHAR(255), c55 CHAR(255), c56 CHAR(255),
+c57 CHAR(255), c58 CHAR(255), c59 CHAR(255), c60 CHAR(255),
+c61 CHAR(255), c62 CHAR(255), c63 CHAR(255), c64 CHAR(255)
) ENGINE=INNODB;
-ERROR 42000: Row size too large (> 4027). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
+ERROR 42000: Row size too large (> 16315). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
CREATE TABLE t1 (
c1 VARCHAR(255), c2 VARCHAR(255), c3 VARCHAR(255), c4 VARCHAR(255),
c5 VARCHAR(255), c6 VARCHAR(255), c7 VARCHAR(255), c8 VARCHAR(255),
c9 VARCHAR(255), c10 VARCHAR(255), c11 VARCHAR(255), c12 VARCHAR(255),
-c13 VARCHAR(255), c14 VARCHAR(255), c15 VARCHAR(255)
+c13 VARCHAR(255), c14 VARCHAR(255), c15 VARCHAR(255), c16 VARCHAR(255),
+c17 VARCHAR(255), c18 VARCHAR(255), c19 VARCHAR(255), c20 VARCHAR(255),
+c21 VARCHAR(255), c22 VARCHAR(255), c23 VARCHAR(255), c24 VARCHAR(255),
+c25 VARCHAR(255), c26 VARCHAR(255), c27 VARCHAR(255), c28 VARCHAR(255),
+c29 VARCHAR(255), c30 VARCHAR(255), c31 VARCHAR(255), c32 VARCHAR(255),
+c33 VARCHAR(255), c34 VARCHAR(255), c35 VARCHAR(255), c36 VARCHAR(255),
+c37 VARCHAR(255), c38 VARCHAR(255), c39 VARCHAR(255), c40 VARCHAR(255),
+c41 VARCHAR(255), c42 VARCHAR(255), c43 VARCHAR(255), c44 VARCHAR(255),
+c45 VARCHAR(255), c46 VARCHAR(255), c47 VARCHAR(255), c48 VARCHAR(255),
+c49 VARCHAR(255), c50 VARCHAR(255), c51 VARCHAR(255), c52 VARCHAR(255),
+c53 VARCHAR(255), c54 VARCHAR(255), c55 VARCHAR(255), c56 VARCHAR(255),
+c57 VARCHAR(255), c58 VARCHAR(255), c59 VARCHAR(255), c60 VARCHAR(255),
+c61 VARCHAR(255), c62 VARCHAR(255), c63 VARCHAR(255)
) ENGINE=INNODB;
DROP TABLE t1;
CREATE TABLE t1 (
c1 VARCHAR(255), c2 VARCHAR(255), c3 VARCHAR(255), c4 VARCHAR(255),
c5 VARCHAR(255), c6 VARCHAR(255), c7 VARCHAR(255), c8 VARCHAR(255),
c9 VARCHAR(255), c10 VARCHAR(255), c11 VARCHAR(255), c12 VARCHAR(255),
-c13 VARCHAR(255), c14 VARCHAR(255), c15 VARCHAR(255), c16 VARCHAR(255)
+c13 VARCHAR(255), c14 VARCHAR(255), c15 VARCHAR(255), c16 VARCHAR(255),
+c17 VARCHAR(255), c18 VARCHAR(255), c19 VARCHAR(255), c20 VARCHAR(255),
+c21 VARCHAR(255), c22 VARCHAR(255), c23 VARCHAR(255), c24 VARCHAR(255),
+c25 VARCHAR(255), c26 VARCHAR(255), c27 VARCHAR(255), c28 VARCHAR(255),
+c29 VARCHAR(255), c30 VARCHAR(255), c31 VARCHAR(255), c32 VARCHAR(255),
+c33 VARCHAR(255), c34 VARCHAR(255), c35 VARCHAR(255), c36 VARCHAR(255),
+c37 VARCHAR(255), c38 VARCHAR(255), c39 VARCHAR(255), c40 VARCHAR(255),
+c41 VARCHAR(255), c42 VARCHAR(255), c43 VARCHAR(255), c44 VARCHAR(255),
+c45 VARCHAR(255), c46 VARCHAR(255), c47 VARCHAR(255), c48 VARCHAR(255),
+c49 VARCHAR(255), c50 VARCHAR(255), c51 VARCHAR(255), c52 VARCHAR(255),
+c53 VARCHAR(255), c54 VARCHAR(255), c55 VARCHAR(255), c56 VARCHAR(255),
+c57 VARCHAR(255), c58 VARCHAR(255), c59 VARCHAR(255), c60 VARCHAR(255),
+c61 VARCHAR(255), c62 VARCHAR(255), c63 VARCHAR(255), c64 VARCHAR(255)
) ENGINE=INNODB;
-ERROR 42000: Row size too large (> 4027). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
+ERROR 42000: Row size too large (> 16315). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
CREATE TABLE t1 (
c1 VARCHAR(788), c2 VARCHAR(788), c3 VARCHAR(788), c4 VARCHAR(788),
-c5 VARCHAR(788)
+c5 VARCHAR(788), c6 VARCHAR(788), c7 VARCHAR(788), c8 VARCHAR(788),
+c9 VARCHAR(788), c10 VARCHAR(788), c11 VARCHAR(788), c12 VARCHAR(788),
+c13 VARCHAR(788), c14 VARCHAR(788), c15 VARCHAR(788), c16 VARCHAR(788),
+c17 VARCHAR(788), c18 VARCHAR(788), c19 VARCHAR(788), c20 VARCHAR(788)
) ENGINE=INNODB;
DROP TABLE t1;
CREATE TABLE t1 (
c1 VARCHAR(788), c2 VARCHAR(788), c3 VARCHAR(788), c4 VARCHAR(788),
-c5 VARCHAR(788), c6 VARCHAR(788)
-) ENGINE=INNODB;
-ERROR 42000: Row size too large (> 4027). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
-CREATE TABLE t1 (
-c1 TEXT, c2 TEXT, c3 TEXT, c4 TEXT, c5 TEXT
+c5 VARCHAR(788), c6 VARCHAR(788), c7 VARCHAR(788), c8 VARCHAR(788),
+c9 VARCHAR(788), c10 VARCHAR(788), c11 VARCHAR(788), c12 VARCHAR(788),
+c13 VARCHAR(788), c14 VARCHAR(788), c15 VARCHAR(788), c16 VARCHAR(788),
+c17 VARCHAR(788), c18 VARCHAR(788), c19 VARCHAR(788), c20 VARCHAR(788),
+c21 VARCHAR(788)
+) ENGINE=INNODB;
+ERROR 42000: Row size too large (> 16315). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
+CREATE TABLE t1 (
+c1 TEXT, c2 TEXT, c3 TEXT, c4 TEXT, c5 TEXT, c6 TEXT, c7 TEXT,
+c8 TEXT, c9 TEXT, c10 TEXT, c11 TEXT, c12 TEXT, c13 TEXT, c14 TEXT,
+c15 TEXT, c16 TEXT, c17 TEXT, c18 TEXT, c19 TEXT, c20 TEXT
) ENGINE=INNODB;
DROP TABLE t1;
CREATE TABLE t1 (
-c1 TEXT, c2 TEXT, c3 TEXT, c4 TEXT, c5 TEXT, c6 TEXT
+c1 TEXT, c2 TEXT, c3 TEXT, c4 TEXT, c5 TEXT, c6 TEXT, c7 TEXT,
+c8 TEXT, c9 TEXT, c10 TEXT, c11 TEXT, c12 TEXT, c13 TEXT, c14 TEXT,
+c15 TEXT, c16 TEXT, c17 TEXT, c18 TEXT, c19 TEXT, c20 TEXT, c21 TEXT
) ENGINE=INNODB;
-ERROR 42000: Row size too large (> 4027). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
+ERROR 42000: Row size too large (> 16315). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
--- max_record_size.result 2019-07-03 11:54:44.591421526 +0300
+++ max_record_size.reject 2019-07-03 12:56:23.489432164 +0300
@@ -1,47 +1,37 @@
call mtr.add_suppression("Cannot add field `.*` in table `test`.`t1` because after adding it, the row size is");
CREATE TABLE t1 (
c1 CHAR(255), c2 CHAR(255), c3 CHAR(255), c4 CHAR(255),
-c5 CHAR(255), c6 CHAR(255), c7 CHAR(255), c8 CHAR(255),
-c9 CHAR(255), c10 CHAR(255), c11 CHAR(255), c12 CHAR(255),
-c13 CHAR(255), c14 CHAR(255), c15 CHAR(255)
+c5 CHAR(255), c6 CHAR(255), c7 CHAR(255)
) ENGINE=INNODB;
DROP TABLE t1;
CREATE TABLE t1 (
c1 CHAR(255), c2 CHAR(255), c3 CHAR(255), c4 CHAR(255),
-c5 CHAR(255), c6 CHAR(255), c7 CHAR(255), c8 CHAR(255),
-c9 CHAR(255), c10 CHAR(255), c11 CHAR(255), c12 CHAR(255),
-c13 CHAR(255), c14 CHAR(255), c15 CHAR(255), c16 CHAR(255)
+c5 CHAR(255), c6 CHAR(255), c7 CHAR(255), c8 CHAR(255)
) ENGINE=INNODB;
-ERROR 42000: Row size too large (> 4027). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
+ERROR 42000: Row size too large (> 1982). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
CREATE TABLE t1 (
c1 VARCHAR(255), c2 VARCHAR(255), c3 VARCHAR(255), c4 VARCHAR(255),
-c5 VARCHAR(255), c6 VARCHAR(255), c7 VARCHAR(255), c8 VARCHAR(255),
-c9 VARCHAR(255), c10 VARCHAR(255), c11 VARCHAR(255), c12 VARCHAR(255),
-c13 VARCHAR(255), c14 VARCHAR(255), c15 VARCHAR(255)
+c5 VARCHAR(255), c6 VARCHAR(255), c7 VARCHAR(255)
) ENGINE=INNODB;
DROP TABLE t1;
CREATE TABLE t1 (
c1 VARCHAR(255), c2 VARCHAR(255), c3 VARCHAR(255), c4 VARCHAR(255),
-c5 VARCHAR(255), c6 VARCHAR(255), c7 VARCHAR(255), c8 VARCHAR(255),
-c9 VARCHAR(255), c10 VARCHAR(255), c11 VARCHAR(255), c12 VARCHAR(255),
-c13 VARCHAR(255), c14 VARCHAR(255), c15 VARCHAR(255), c16 VARCHAR(255)
+c5 VARCHAR(255), c6 VARCHAR(255), c7 VARCHAR(255), c8 VARCHAR(255)
) ENGINE=INNODB;
-ERROR 42000: Row size too large (> 4027). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
+ERROR 42000: Row size too large (> 1982). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
CREATE TABLE t1 (
-c1 VARCHAR(788), c2 VARCHAR(788), c3 VARCHAR(788), c4 VARCHAR(788),
-c5 VARCHAR(788)
+c1 VARCHAR(788), c2 VARCHAR(788)
) ENGINE=INNODB;
DROP TABLE t1;
CREATE TABLE t1 (
-c1 VARCHAR(788), c2 VARCHAR(788), c3 VARCHAR(788), c4 VARCHAR(788),
-c5 VARCHAR(788), c6 VARCHAR(788)
+c1 VARCHAR(788), c2 VARCHAR(788), c3 VARCHAR(788)
) ENGINE=INNODB;
-ERROR 42000: Row size too large (> 4027). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
+ERROR 42000: Row size too large (> 1982). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
CREATE TABLE t1 (
-c1 TEXT, c2 TEXT, c3 TEXT, c4 TEXT, c5 TEXT
+c1 TEXT, c2 TEXT
) ENGINE=INNODB;
DROP TABLE t1;
CREATE TABLE t1 (
-c1 TEXT, c2 TEXT, c3 TEXT, c4 TEXT, c5 TEXT, c6 TEXT
+c1 TEXT, c2 TEXT, c3 TEXT
) ENGINE=INNODB;
-ERROR 42000: Row size too large (> 4027). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
+ERROR 42000: Row size too large (> 1982). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
--- max_record_size.result 2019-07-03 11:54:44.591421526 +0300
+++ max_record_size.reject 2019-07-03 12:57:38.636143710 +0300
@@ -1,47 +1,103 @@
call mtr.add_suppression("Cannot add field `.*` in table `test`.`t1` because after adding it, the row size is");
CREATE TABLE t1 (
c1 CHAR(255), c2 CHAR(255), c3 CHAR(255), c4 CHAR(255),
-c5 CHAR(255), c6 CHAR(255), c7 CHAR(255), c8 CHAR(255),
-c9 CHAR(255), c10 CHAR(255), c11 CHAR(255), c12 CHAR(255),
-c13 CHAR(255), c14 CHAR(255), c15 CHAR(255)
+c5 CHAR(255), c6 CHAR(255), c7 CHAR(255)
) ENGINE=INNODB;
DROP TABLE t1;
CREATE TABLE t1 (
c1 CHAR(255), c2 CHAR(255), c3 CHAR(255), c4 CHAR(255),
-c5 CHAR(255), c6 CHAR(255), c7 CHAR(255), c8 CHAR(255),
-c9 CHAR(255), c10 CHAR(255), c11 CHAR(255), c12 CHAR(255),
-c13 CHAR(255), c14 CHAR(255), c15 CHAR(255), c16 CHAR(255)
+c5 CHAR(255), c6 CHAR(255), c7 CHAR(255), c8 CHAR(255)
) ENGINE=INNODB;
-ERROR 42000: Row size too large (> 4027). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
+ERROR 42000: Row size too large (> 1982). Changing some columns to TEXT or BLOB may help. In current row format, BLOB prefix of 0 bytes is stored inline.
CREATE TABLE t1 (
c1 VARCHAR(255), c2 VARCHAR(255), c3 VARCHAR(255), c4 VARCHAR(255),
-c5 VARCHAR(255), c6 VARCHAR(255), c7 VARCHAR(255), c8 VARCHAR(255),
-c9 VARCHAR(255), c10 VARCHAR(255), c11 VARCHAR(255), c12 VARCHAR(255),
-c13 VARCHAR(255), c14 VARCHAR(255), c15 VARCHAR(255)
+c5 VARCHAR(255), c6 VARCHAR(255), c7 VARCHAR(255)
) ENGINE=INNODB;
DROP TABLE t1;
CREATE TABLE t1 (
c1 VARCHAR(255), c2 VARCHAR(255), c3 VARCHAR(255), c4 VARCHAR(255),
-c5 VARCHAR(255), c6 VARCHAR(255), c7 VARCHAR(255), c8 VARCHAR(255),
-c9 VARCHAR(255), c10 VARCHAR(255), c11 VARCHAR(255), c12 VARCHAR(255),
-c13 VARCHAR(255), c14 VARCHAR(255), c15 VARCHAR(255), c16 VARCHAR(255)
+c5 VARCHAR(255), c6 VARCHAR(255), c7 VARCHAR(255), c8 VARCHAR(255)
) ENGINE=INNODB;
-ERROR 42000: Row size too large (> 4027). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
+ERROR 42000: Row size too large (> 1982). Changing some columns to TEXT or BLOB may help. In current row format, BLOB prefix of 0 bytes is stored inline.
CREATE TABLE t1 (
c1 VARCHAR(788), c2 VARCHAR(788), c3 VARCHAR(788), c4 VARCHAR(788),
-c5 VARCHAR(788)
+c5 VARCHAR(788), c6 VARCHAR(788), c7 VARCHAR(788), c8 VARCHAR(788),
+c9 VARCHAR(788), c10 VARCHAR(788), c11 VARCHAR(788), c12 VARCHAR(788),
+c13 VARCHAR(788), c14 VARCHAR(788), c15 VARCHAR(788), c16 VARCHAR(788),
+c17 VARCHAR(788), c18 VARCHAR(788), c19 VARCHAR(788), c20 VARCHAR(788),
+c21 VARCHAR(788), c22 VARCHAR(788), c23 VARCHAR(788), c24 VARCHAR(788),
+c25 VARCHAR(788), c26 VARCHAR(788), c27 VARCHAR(788), c28 VARCHAR(788),
+c29 VARCHAR(788), c30 VARCHAR(788), c31 VARCHAR(788), c32 VARCHAR(788),
+c33 VARCHAR(788), c34 VARCHAR(788), c35 VARCHAR(788), c36 VARCHAR(788),
+c37 VARCHAR(788), c38 VARCHAR(788), c39 VARCHAR(788), c40 VARCHAR(788),
+c41 VARCHAR(788), c42 VARCHAR(788), c43 VARCHAR(788), c44 VARCHAR(788),
+c45 VARCHAR(788), c46 VARCHAR(788), c47 VARCHAR(788), c48 VARCHAR(788),
+c49 VARCHAR(788), c50 VARCHAR(788), c51 VARCHAR(788), c52 VARCHAR(788),
+c53 VARCHAR(788), c54 VARCHAR(788), c55 VARCHAR(788), c56 VARCHAR(788),
+c57 VARCHAR(788), c58 VARCHAR(788), c59 VARCHAR(788), c60 VARCHAR(788),
+c61 VARCHAR(788), c62 VARCHAR(788), c63 VARCHAR(788), c64 VARCHAR(788),
+c65 VARCHAR(788), c66 VARCHAR(788), c67 VARCHAR(788), c68 VARCHAR(788),
+c69 VARCHAR(788), c70 VARCHAR(788), c71 VARCHAR(788), c72 VARCHAR(788),
+c73 VARCHAR(788), c74 VARCHAR(788), c75 VARCHAR(788), c76 VARCHAR(788),
+c77 VARCHAR(788), c78 VARCHAR(788), c79 VARCHAR(788), c80 VARCHAR(788),
+c81 VARCHAR(788), c82 VARCHAR(788)
) ENGINE=INNODB;
DROP TABLE t1;
CREATE TABLE t1 (
c1 VARCHAR(788), c2 VARCHAR(788), c3 VARCHAR(788), c4 VARCHAR(788),
-c5 VARCHAR(788), c6 VARCHAR(788)
-) ENGINE=INNODB;
-ERROR 42000: Row size too large (> 4027). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
-CREATE TABLE t1 (
-c1 TEXT, c2 TEXT, c3 TEXT, c4 TEXT, c5 TEXT
+c5 VARCHAR(788), c6 VARCHAR(788), c7 VARCHAR(788), c8 VARCHAR(788),
+c9 VARCHAR(788), c10 VARCHAR(788), c11 VARCHAR(788), c12 VARCHAR(788),
+c13 VARCHAR(788), c14 VARCHAR(788), c15 VARCHAR(788), c16 VARCHAR(788),
+c17 VARCHAR(788), c18 VARCHAR(788), c19 VARCHAR(788), c20 VARCHAR(788),
+c21 VARCHAR(788), c22 VARCHAR(788), c23 VARCHAR(788), c24 VARCHAR(788),
+c25 VARCHAR(788), c26 VARCHAR(788), c27 VARCHAR(788), c28 VARCHAR(788),
+c29 VARCHAR(788), c30 VARCHAR(788), c31 VARCHAR(788), c32 VARCHAR(788),
+c33 VARCHAR(788), c34 VARCHAR(788), c35 VARCHAR(788), c36 VARCHAR(788),
+c37 VARCHAR(788), c38 VARCHAR(788), c39 VARCHAR(788), c40 VARCHAR(788),
+c41 VARCHAR(788), c42 VARCHAR(788), c43 VARCHAR(788), c44 VARCHAR(788),
+c45 VARCHAR(788), c46 VARCHAR(788), c47 VARCHAR(788), c48 VARCHAR(788),
+c49 VARCHAR(788), c50 VARCHAR(788), c51 VARCHAR(788), c52 VARCHAR(788),
+c53 VARCHAR(788), c54 VARCHAR(788), c55 VARCHAR(788), c56 VARCHAR(788),
+c57 VARCHAR(788), c58 VARCHAR(788), c59 VARCHAR(788), c60 VARCHAR(788),
+c61 VARCHAR(788), c62 VARCHAR(788), c63 VARCHAR(788), c64 VARCHAR(788),
+c65 VARCHAR(788), c66 VARCHAR(788), c67 VARCHAR(788), c68 VARCHAR(788),
+c69 VARCHAR(788), c70 VARCHAR(788), c71 VARCHAR(788), c72 VARCHAR(788),
+c73 VARCHAR(788), c74 VARCHAR(788), c75 VARCHAR(788), c76 VARCHAR(788),
+c77 VARCHAR(788), c78 VARCHAR(788), c79 VARCHAR(788), c80 VARCHAR(788),
+c81 VARCHAR(788), c82 VARCHAR(788), c83 VARCHAR(788)
+) ENGINE=INNODB;
+ERROR 42000: Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. This includes storage overhead, check the manual. You have to change some columns to TEXT or BLOBs
+CREATE TABLE t1 (
+c1 TEXT, c2 TEXT, c3 TEXT, c4 TEXT, c5 TEXT, c6 TEXT, c7 TEXT,
+c8 TEXT, c9 TEXT, c10 TEXT, c11 TEXT, c12 TEXT, c13 TEXT, c14 TEXT,
+c15 TEXT, c16 TEXT, c17 TEXT, c18 TEXT, c19 TEXT, c20 TEXT, c21 TEXT,
+c22 TEXT, c23 TEXT, c24 TEXT, c25 TEXT, c26 TEXT, c27 TEXT, c28 TEXT,
+c29 TEXT, c30 TEXT, c31 TEXT, c32 TEXT, c33 TEXT, c34 TEXT, c35 TEXT,
+c36 TEXT, c37 TEXT, c38 TEXT, c39 TEXT, c40 TEXT, c41 TEXT, c42 TEXT,
+c43 TEXT, c44 TEXT, c45 TEXT, c46 TEXT, c47 TEXT, c48 TEXT, c49 TEXT,
+c50 TEXT, c51 TEXT, c52 TEXT, c53 TEXT, c54 TEXT, c55 TEXT, c56 TEXT,
+c57 TEXT, c58 TEXT, c59 TEXT, c60 TEXT, c61 TEXT, c62 TEXT, c63 TEXT,
+c64 TEXT, c65 TEXT, c66 TEXT, c67 TEXT, c68 TEXT, c69 TEXT, c70 TEXT,
+c71 TEXT, c72 TEXT, c73 TEXT, c74 TEXT, c75 TEXT, c76 TEXT, c77 TEXT,
+c78 TEXT, c79 TEXT, c80 TEXT, c81 TEXT, c82 TEXT, c83 TEXT, c84 TEXT,
+c85 TEXT, c86 TEXT, c87 TEXT, c88 TEXT, c89 TEXT, c90 TEXT, c91 TEXT,
+c92 TEXT
) ENGINE=INNODB;
DROP TABLE t1;
CREATE TABLE t1 (
-c1 TEXT, c2 TEXT, c3 TEXT, c4 TEXT, c5 TEXT, c6 TEXT
+c1 TEXT, c2 TEXT, c3 TEXT, c4 TEXT, c5 TEXT, c6 TEXT, c7 TEXT,
+c8 TEXT, c9 TEXT, c10 TEXT, c11 TEXT, c12 TEXT, c13 TEXT, c14 TEXT,
+c15 TEXT, c16 TEXT, c17 TEXT, c18 TEXT, c19 TEXT, c20 TEXT, c21 TEXT,
+c22 TEXT, c23 TEXT, c24 TEXT, c25 TEXT, c26 TEXT, c27 TEXT, c28 TEXT,
+c29 TEXT, c30 TEXT, c31 TEXT, c32 TEXT, c33 TEXT, c34 TEXT, c35 TEXT,
+c36 TEXT, c37 TEXT, c38 TEXT, c39 TEXT, c40 TEXT, c41 TEXT, c42 TEXT,
+c43 TEXT, c44 TEXT, c45 TEXT, c46 TEXT, c47 TEXT, c48 TEXT, c49 TEXT,
+c50 TEXT, c51 TEXT, c52 TEXT, c53 TEXT, c54 TEXT, c55 TEXT, c56 TEXT,
+c57 TEXT, c58 TEXT, c59 TEXT, c60 TEXT, c61 TEXT, c62 TEXT, c63 TEXT,
+c64 TEXT, c65 TEXT, c66 TEXT, c67 TEXT, c68 TEXT, c69 TEXT, c70 TEXT,
+c71 TEXT, c72 TEXT, c73 TEXT, c74 TEXT, c75 TEXT, c76 TEXT, c77 TEXT,
+c78 TEXT, c79 TEXT, c80 TEXT, c81 TEXT, c82 TEXT, c83 TEXT, c84 TEXT,
+c85 TEXT, c86 TEXT, c87 TEXT, c88 TEXT, c89 TEXT, c90 TEXT, c91 TEXT,
+c92 TEXT, c93 TEXT
) ENGINE=INNODB;
-ERROR 42000: Row size too large (> 4027). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
+ERROR 42000: Row size too large (> 1982). Changing some columns to TEXT or BLOB may help. In current row format, BLOB prefix of 0 bytes is stored inline.
--- max_record_size.result 2019-07-03 11:54:44.591421526 +0300
+++ max_record_size.reject 2019-07-03 12:58:58.318768169 +0300
@@ -1,47 +1,37 @@
call mtr.add_suppression("Cannot add field `.*` in table `test`.`t1` because after adding it, the row size is");
CREATE TABLE t1 (
c1 CHAR(255), c2 CHAR(255), c3 CHAR(255), c4 CHAR(255),
-c5 CHAR(255), c6 CHAR(255), c7 CHAR(255), c8 CHAR(255),
-c9 CHAR(255), c10 CHAR(255), c11 CHAR(255), c12 CHAR(255),
-c13 CHAR(255), c14 CHAR(255), c15 CHAR(255)
+c5 CHAR(255), c6 CHAR(255), c7 CHAR(255)
) ENGINE=INNODB;
DROP TABLE t1;
CREATE TABLE t1 (
c1 CHAR(255), c2 CHAR(255), c3 CHAR(255), c4 CHAR(255),
-c5 CHAR(255), c6 CHAR(255), c7 CHAR(255), c8 CHAR(255),
-c9 CHAR(255), c10 CHAR(255), c11 CHAR(255), c12 CHAR(255),
-c13 CHAR(255), c14 CHAR(255), c15 CHAR(255), c16 CHAR(255)
+c5 CHAR(255), c6 CHAR(255), c7 CHAR(255), c8 CHAR(255)
) ENGINE=INNODB;
-ERROR 42000: Row size too large (> 4027). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
+ERROR 42000: Row size too large (> 1979). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
CREATE TABLE t1 (
c1 VARCHAR(255), c2 VARCHAR(255), c3 VARCHAR(255), c4 VARCHAR(255),
-c5 VARCHAR(255), c6 VARCHAR(255), c7 VARCHAR(255), c8 VARCHAR(255),
-c9 VARCHAR(255), c10 VARCHAR(255), c11 VARCHAR(255), c12 VARCHAR(255),
-c13 VARCHAR(255), c14 VARCHAR(255), c15 VARCHAR(255)
+c5 VARCHAR(255), c6 VARCHAR(255), c7 VARCHAR(255)
) ENGINE=INNODB;
DROP TABLE t1;
CREATE TABLE t1 (
c1 VARCHAR(255), c2 VARCHAR(255), c3 VARCHAR(255), c4 VARCHAR(255),
-c5 VARCHAR(255), c6 VARCHAR(255), c7 VARCHAR(255), c8 VARCHAR(255),
-c9 VARCHAR(255), c10 VARCHAR(255), c11 VARCHAR(255), c12 VARCHAR(255),
-c13 VARCHAR(255), c14 VARCHAR(255), c15 VARCHAR(255), c16 VARCHAR(255)
+c5 VARCHAR(255), c6 VARCHAR(255), c7 VARCHAR(255), c8 VARCHAR(255)
) ENGINE=INNODB;
-ERROR 42000: Row size too large (> 4027). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
+ERROR 42000: Row size too large (> 1979). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
CREATE TABLE t1 (
-c1 VARCHAR(788), c2 VARCHAR(788), c3 VARCHAR(788), c4 VARCHAR(788),
-c5 VARCHAR(788)
+c1 VARCHAR(788), c2 VARCHAR(788)
) ENGINE=INNODB;
DROP TABLE t1;
CREATE TABLE t1 (
-c1 VARCHAR(788), c2 VARCHAR(788), c3 VARCHAR(788), c4 VARCHAR(788),
-c5 VARCHAR(788), c6 VARCHAR(788)
+c1 VARCHAR(788), c2 VARCHAR(788), c3 VARCHAR(788)
) ENGINE=INNODB;
-ERROR 42000: Row size too large (> 4027). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
+ERROR 42000: Row size too large (> 1979). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
CREATE TABLE t1 (
-c1 TEXT, c2 TEXT, c3 TEXT, c4 TEXT, c5 TEXT
+c1 TEXT, c2 TEXT
) ENGINE=INNODB;
DROP TABLE t1;
CREATE TABLE t1 (
-c1 TEXT, c2 TEXT, c3 TEXT, c4 TEXT, c5 TEXT, c6 TEXT
+c1 TEXT, c2 TEXT, c3 TEXT
) ENGINE=INNODB;
-ERROR 42000: Row size too large (> 4027). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
+ERROR 42000: Row size too large (> 1979). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
--- max_record_size.result 2019-07-03 11:54:44.591421526 +0300
+++ max_record_size.reject 2019-07-03 12:50:05.663724193 +0300
@@ -3,45 +3,104 @@
c1 CHAR(255), c2 CHAR(255), c3 CHAR(255), c4 CHAR(255),
c5 CHAR(255), c6 CHAR(255), c7 CHAR(255), c8 CHAR(255),
c9 CHAR(255), c10 CHAR(255), c11 CHAR(255), c12 CHAR(255),
-c13 CHAR(255), c14 CHAR(255), c15 CHAR(255)
+c13 CHAR(255), c14 CHAR(255), c15 CHAR(255), c16 CHAR(255),
+c17 CHAR(255), c18 CHAR(255), c19 CHAR(255), c20 CHAR(255),
+c21 CHAR(255), c22 CHAR(255), c23 CHAR(255), c24 CHAR(255),
+c25 CHAR(255), c26 CHAR(255), c27 CHAR(255), c28 CHAR(255),
+c29 CHAR(255), c30 CHAR(255), c31 CHAR(255), c32 CHAR(255),
+c33 CHAR(255), c34 CHAR(255), c35 CHAR(255), c36 CHAR(255),
+c37 CHAR(255), c38 CHAR(255), c39 CHAR(255), c40 CHAR(255),
+c41 CHAR(255), c42 CHAR(255), c43 CHAR(255), c44 CHAR(255),
+c45 CHAR(255), c46 CHAR(255), c47 CHAR(255), c48 CHAR(255),
+c49 CHAR(255), c50 CHAR(255), c51 CHAR(255), c52 CHAR(255),
+c53 CHAR(255), c54 CHAR(255), c55 CHAR(255), c56 CHAR(255),
+c57 CHAR(255), c58 CHAR(255), c59 CHAR(255), c60 CHAR(255),
+c61 CHAR(255), c62 CHAR(255), c63 CHAR(255)
) ENGINE=INNODB;
DROP TABLE t1;
CREATE TABLE t1 (
c1 CHAR(255), c2 CHAR(255), c3 CHAR(255), c4 CHAR(255),
c5 CHAR(255), c6 CHAR(255), c7 CHAR(255), c8 CHAR(255),
c9 CHAR(255), c10 CHAR(255), c11 CHAR(255), c12 CHAR(255),
-c13 CHAR(255), c14 CHAR(255), c15 CHAR(255), c16 CHAR(255)
+c13 CHAR(255), c14 CHAR(255), c15 CHAR(255), c16 CHAR(255),
+c17 CHAR(255), c18 CHAR(255), c19 CHAR(255), c20 CHAR(255),
+c21 CHAR(255), c22 CHAR(255), c23 CHAR(255), c24 CHAR(255),
+c25 CHAR(255), c26 CHAR(255), c27 CHAR(255), c28 CHAR(255),
+c29 CHAR(255), c30 CHAR(255), c31 CHAR(255), c32 CHAR(255),
+c33 CHAR(255), c34 CHAR(255), c35 CHAR(255), c36 CHAR(255),
+c37 CHAR(255), c38 CHAR(255), c39 CHAR(255), c40 CHAR(255),
+c41 CHAR(255), c42 CHAR(255), c43 CHAR(255), c44 CHAR(255),
+c45 CHAR(255), c46 CHAR(255), c47 CHAR(255), c48 CHAR(255),
+c49 CHAR(255), c50 CHAR(255), c51 CHAR(255), c52 CHAR(255),
+c53 CHAR(255), c54 CHAR(255), c55 CHAR(255), c56 CHAR(255),
+c57 CHAR(255), c58 CHAR(255), c59 CHAR(255), c60 CHAR(255),
+c61 CHAR(255), c62 CHAR(255), c63 CHAR(255), c64 CHAR(255)
) ENGINE=INNODB;
-ERROR 42000: Row size too large (> 4027). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
+ERROR 42000: Row size too large (> 16382). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
CREATE TABLE t1 (
c1 VARCHAR(255), c2 VARCHAR(255), c3 VARCHAR(255), c4 VARCHAR(255),
c5 VARCHAR(255), c6 VARCHAR(255), c7 VARCHAR(255), c8 VARCHAR(255),
c9 VARCHAR(255), c10 VARCHAR(255), c11 VARCHAR(255), c12 VARCHAR(255),
-c13 VARCHAR(255), c14 VARCHAR(255), c15 VARCHAR(255)
+c13 VARCHAR(255), c14 VARCHAR(255), c15 VARCHAR(255), c16 VARCHAR(255),
+c17 VARCHAR(255), c18 VARCHAR(255), c19 VARCHAR(255), c20 VARCHAR(255),
+c21 VARCHAR(255), c22 VARCHAR(255), c23 VARCHAR(255), c24 VARCHAR(255),
+c25 VARCHAR(255), c26 VARCHAR(255), c27 VARCHAR(255), c28 VARCHAR(255),
+c29 VARCHAR(255), c30 VARCHAR(255), c31 VARCHAR(255), c32 VARCHAR(255),
+c33 VARCHAR(255), c34 VARCHAR(255), c35 VARCHAR(255), c36 VARCHAR(255),
+c37 VARCHAR(255), c38 VARCHAR(255), c39 VARCHAR(255), c40 VARCHAR(255),
+c41 VARCHAR(255), c42 VARCHAR(255), c43 VARCHAR(255), c44 VARCHAR(255),
+c45 VARCHAR(255), c46 VARCHAR(255), c47 VARCHAR(255), c48 VARCHAR(255),
+c49 VARCHAR(255), c50 VARCHAR(255), c51 VARCHAR(255), c52 VARCHAR(255),
+c53 VARCHAR(255), c54 VARCHAR(255), c55 VARCHAR(255), c56 VARCHAR(255),
+c57 VARCHAR(255), c58 VARCHAR(255), c59 VARCHAR(255), c60 VARCHAR(255),
+c61 VARCHAR(255), c62 VARCHAR(255), c63 VARCHAR(255)
) ENGINE=INNODB;
DROP TABLE t1;
CREATE TABLE t1 (
c1 VARCHAR(255), c2 VARCHAR(255), c3 VARCHAR(255), c4 VARCHAR(255),
c5 VARCHAR(255), c6 VARCHAR(255), c7 VARCHAR(255), c8 VARCHAR(255),
c9 VARCHAR(255), c10 VARCHAR(255), c11 VARCHAR(255), c12 VARCHAR(255),
-c13 VARCHAR(255), c14 VARCHAR(255), c15 VARCHAR(255), c16 VARCHAR(255)
+c13 VARCHAR(255), c14 VARCHAR(255), c15 VARCHAR(255), c16 VARCHAR(255),
+c17 VARCHAR(255), c18 VARCHAR(255), c19 VARCHAR(255), c20 VARCHAR(255),
+c21 VARCHAR(255), c22 VARCHAR(255), c23 VARCHAR(255), c24 VARCHAR(255),
+c25 VARCHAR(255), c26 VARCHAR(255), c27 VARCHAR(255), c28 VARCHAR(255),
+c29 VARCHAR(255), c30 VARCHAR(255), c31 VARCHAR(255), c32 VARCHAR(255),
+c33 VARCHAR(255), c34 VARCHAR(255), c35 VARCHAR(255), c36 VARCHAR(255),
+c37 VARCHAR(255), c38 VARCHAR(255), c39 VARCHAR(255), c40 VARCHAR(255),
+c41 VARCHAR(255), c42 VARCHAR(255), c43 VARCHAR(255), c44 VARCHAR(255),
+c45 VARCHAR(255), c46 VARCHAR(255), c47 VARCHAR(255), c48 VARCHAR(255),
+c49 VARCHAR(255), c50 VARCHAR(255), c51 VARCHAR(255), c52 VARCHAR(255),
+c53 VARCHAR(255), c54 VARCHAR(255), c55 VARCHAR(255), c56 VARCHAR(255),
+c57 VARCHAR(255), c58 VARCHAR(255), c59 VARCHAR(255), c60 VARCHAR(255),
+c61 VARCHAR(255), c62 VARCHAR(255), c63 VARCHAR(255), c64 VARCHAR(255)
) ENGINE=INNODB;
-ERROR 42000: Row size too large (> 4027). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
+ERROR 42000: Row size too large (> 16382). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
CREATE TABLE t1 (
c1 VARCHAR(788), c2 VARCHAR(788), c3 VARCHAR(788), c4 VARCHAR(788),
-c5 VARCHAR(788)
+c5 VARCHAR(788), c6 VARCHAR(788), c7 VARCHAR(788), c8 VARCHAR(788),
+c9 VARCHAR(788), c10 VARCHAR(788), c11 VARCHAR(788), c12 VARCHAR(788),
+c13 VARCHAR(788), c14 VARCHAR(788), c15 VARCHAR(788), c16 VARCHAR(788),
+c17 VARCHAR(788), c18 VARCHAR(788), c19 VARCHAR(788), c20 VARCHAR(788)
) ENGINE=INNODB;
DROP TABLE t1;
CREATE TABLE t1 (
c1 VARCHAR(788), c2 VARCHAR(788), c3 VARCHAR(788), c4 VARCHAR(788),
-c5 VARCHAR(788), c6 VARCHAR(788)
-) ENGINE=INNODB;
-ERROR 42000: Row size too large (> 4027). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
-CREATE TABLE t1 (
-c1 TEXT, c2 TEXT, c3 TEXT, c4 TEXT, c5 TEXT
+c5 VARCHAR(788), c6 VARCHAR(788), c7 VARCHAR(788), c8 VARCHAR(788),
+c9 VARCHAR(788), c10 VARCHAR(788), c11 VARCHAR(788), c12 VARCHAR(788),
+c13 VARCHAR(788), c14 VARCHAR(788), c15 VARCHAR(788), c16 VARCHAR(788),
+c17 VARCHAR(788), c18 VARCHAR(788), c19 VARCHAR(788), c20 VARCHAR(788),
+c21 VARCHAR(788)
+) ENGINE=INNODB;
+ERROR 42000: Row size too large (> 16382). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
+CREATE TABLE t1 (
+c1 TEXT, c2 TEXT, c3 TEXT, c4 TEXT, c5 TEXT, c6 TEXT, c7 TEXT,
+c8 TEXT, c9 TEXT, c10 TEXT, c11 TEXT, c12 TEXT, c13 TEXT, c14 TEXT,
+c15 TEXT, c16 TEXT, c17 TEXT, c18 TEXT, c19 TEXT, c20 TEXT
) ENGINE=INNODB;
DROP TABLE t1;
CREATE TABLE t1 (
-c1 TEXT, c2 TEXT, c3 TEXT, c4 TEXT, c5 TEXT, c6 TEXT
+c1 TEXT, c2 TEXT, c3 TEXT, c4 TEXT, c5 TEXT, c6 TEXT, c7 TEXT,
+c8 TEXT, c9 TEXT, c10 TEXT, c11 TEXT, c12 TEXT, c13 TEXT, c14 TEXT,
+c15 TEXT, c16 TEXT, c17 TEXT, c18 TEXT, c19 TEXT, c20 TEXT, c21 TEXT
) ENGINE=INNODB;
-ERROR 42000: Row size too large (> 4027). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
+ERROR 42000: Row size too large (> 16382). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
This diff is collapsed.
call mtr.add_suppression("Cannot add field `b_str_20` in table `test`.`test_tab` because after adding it, the row size is");
SET innodb_strict_mode=OFF;
CREATE TABLE test_tab ( CREATE TABLE test_tab (
a_str_18 mediumtext, a_str_18 mediumtext,
b_str_3 varchar(32) DEFAULT NULL, b_str_3 varchar(32) DEFAULT NULL,
...@@ -123,6 +125,9 @@ KEY b_str_5 (b_str_5), ...@@ -123,6 +125,9 @@ KEY b_str_5 (b_str_5),
KEY b_str_31 (b_str_31), KEY b_str_31 (b_str_31),
KEY a_ref_11 (a_ref_11) KEY a_ref_11 (a_ref_11)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=COMPACT; ) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=COMPACT;
Warnings:
Warning 139 Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
SET innodb_strict_mode=ON;
BEGIN; BEGIN;
INSERT INTO test_tab (b_str_26, a_str_13, a_str_18) VALUES INSERT INTO test_tab (b_str_26, a_str_13, a_str_18) VALUES
('a', REPEAT('f',4031), REPEAT('g', 4031)); ('a', REPEAT('f',4031), REPEAT('g', 4031));
......
--innodb_fatal_semaphore_wait_threshold=20
--innodb_online_alter_log_max_size=536870912
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
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