mirror of
https://github.com/MariaDB/server.git
synced 2025-07-27 18:02:13 +03:00
Merge 10.6 into 10.11
This commit is contained in:
@ -31,7 +31,7 @@ ENDIF()
|
|||||||
# in RPM's:
|
# in RPM's:
|
||||||
|
|
||||||
#set(CPACK_RPM_SPEC_MORE_DEFINE "%define __spec_install_post /bin/true")
|
#set(CPACK_RPM_SPEC_MORE_DEFINE "%define __spec_install_post /bin/true")
|
||||||
FOREACH(p CMP0022 CMP0046 CMP0040 CMP0048 CMP0054 CMP0067 CMP0074 CMP0075 CMP0069 CMP0135)
|
FOREACH(p CMP0022 CMP0046 CMP0040 CMP0048 CMP0054 CMP0056 CMP0067 CMP0074 CMP0075 CMP0069 CMP0135)
|
||||||
IF(POLICY ${p})
|
IF(POLICY ${p})
|
||||||
CMAKE_POLICY(SET ${p} NEW)
|
CMAKE_POLICY(SET ${p} NEW)
|
||||||
ENDIF()
|
ENDIF()
|
||||||
@ -246,7 +246,7 @@ ENDIF()
|
|||||||
|
|
||||||
OPTION(WITH_MSAN "Enable memory sanitizer" OFF)
|
OPTION(WITH_MSAN "Enable memory sanitizer" OFF)
|
||||||
IF (WITH_MSAN)
|
IF (WITH_MSAN)
|
||||||
MY_CHECK_AND_SET_COMPILER_FLAG("-fsanitize=memory -fsanitize-memory-track-origins -U_FORTIFY_SOURCE" DEBUG RELWITHDEBINFO)
|
MY_CHECK_AND_SET_COMPILER_FLAG("-fsanitize=memory -fsanitize-memory-track-origins -U_FORTIFY_SOURCE")
|
||||||
IF(NOT (have_C__fsanitize_memory__fsanitize_memory_track_origins__U_FORTIFY_SOURCE
|
IF(NOT (have_C__fsanitize_memory__fsanitize_memory_track_origins__U_FORTIFY_SOURCE
|
||||||
AND have_CXX__fsanitize_memory__fsanitize_memory_track_origins__U_FORTIFY_SOURCE))
|
AND have_CXX__fsanitize_memory__fsanitize_memory_track_origins__U_FORTIFY_SOURCE))
|
||||||
MESSAGE(FATAL_ERROR "Compiler doesn't support -fsanitize=memory flags")
|
MESSAGE(FATAL_ERROR "Compiler doesn't support -fsanitize=memory flags")
|
||||||
@ -256,7 +256,7 @@ IF (WITH_MSAN)
|
|||||||
MESSAGE(FATAL_ERROR "C++ Compiler requires support for -stdlib=libc++")
|
MESSAGE(FATAL_ERROR "C++ Compiler requires support for -stdlib=libc++")
|
||||||
ENDIF()
|
ENDIF()
|
||||||
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++")
|
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++")
|
||||||
MY_CHECK_AND_SET_LINKER_FLAG("-fsanitize=memory" DEBUG RELWITHDEBINFO)
|
MY_CHECK_AND_SET_LINKER_FLAG("-fsanitize=memory")
|
||||||
IF(NOT HAVE_LINK_FLAG__fsanitize_memory)
|
IF(NOT HAVE_LINK_FLAG__fsanitize_memory)
|
||||||
MESSAGE(FATAL_ERROR "Linker doesn't support -fsanitize=memory flags")
|
MESSAGE(FATAL_ERROR "Linker doesn't support -fsanitize=memory flags")
|
||||||
ENDIF()
|
ENDIF()
|
||||||
|
@ -6247,9 +6247,22 @@ xtrabackup_apply_delta(
|
|||||||
buf + FSP_HEADER_OFFSET + FSP_SIZE);
|
buf + FSP_HEADER_OFFSET + FSP_SIZE);
|
||||||
if (mach_read_from_4(buf
|
if (mach_read_from_4(buf
|
||||||
+ FIL_PAGE_SPACE_ID)) {
|
+ FIL_PAGE_SPACE_ID)) {
|
||||||
|
#ifdef _WIN32
|
||||||
|
os_offset_t last_page =
|
||||||
|
os_file_get_size(dst_file) /
|
||||||
|
page_size;
|
||||||
|
|
||||||
|
/* os_file_set_size() would
|
||||||
|
shrink the size of the file */
|
||||||
|
if (last_page < n_pages &&
|
||||||
|
!os_file_set_size(
|
||||||
|
dst_path, dst_file,
|
||||||
|
n_pages * page_size))
|
||||||
|
#else
|
||||||
if (!os_file_set_size(
|
if (!os_file_set_size(
|
||||||
dst_path, dst_file,
|
dst_path, dst_file,
|
||||||
n_pages * page_size))
|
n_pages * page_size))
|
||||||
|
#endif /* _WIN32 */
|
||||||
goto error;
|
goto error;
|
||||||
} else if (fil_space_t* space
|
} else if (fil_space_t* space
|
||||||
= fil_system.sys_space) {
|
= fil_system.sys_space) {
|
||||||
|
@ -97,7 +97,12 @@ static inline void MY_RELAX_CPU(void)
|
|||||||
/* Changed from __ppc_get_timebase for musl and clang compatibility */
|
/* Changed from __ppc_get_timebase for musl and clang compatibility */
|
||||||
__builtin_ppc_get_timebase();
|
__builtin_ppc_get_timebase();
|
||||||
#elif defined __GNUC__ && defined __riscv
|
#elif defined __GNUC__ && defined __riscv
|
||||||
__builtin_riscv_pause();
|
/* The GCC-only __builtin_riscv_pause() or the pause instruction is
|
||||||
|
encoded like a fence instruction with special parameters. On RISC-V
|
||||||
|
implementations that do not support arch=+zihintpause this
|
||||||
|
instruction could be interpreted as a more expensive memory fence;
|
||||||
|
it should not be an illegal instruction. */
|
||||||
|
__asm__ volatile(".long 0x0100000f" ::: "memory");
|
||||||
#elif defined __GNUC__
|
#elif defined __GNUC__
|
||||||
/* Mainly, prevent the compiler from optimizing away delay loops */
|
/* Mainly, prevent the compiler from optimizing away delay loops */
|
||||||
__asm__ __volatile__ ("":::"memory");
|
__asm__ __volatile__ ("":::"memory");
|
||||||
|
Submodule libmariadb updated: 2d56f340c4...a7ad25b01b
@ -1,6 +1,6 @@
|
|||||||
# We use this --source include to mark a test as taking long to run.
|
# We use this --source include to mark a test as taking long to run.
|
||||||
# We can use this to schedule such test early (to not be left with
|
# We can use this to schedule such test early (to not be left with
|
||||||
# only one or two long tests running, and rests of works idle), or to
|
# only one or two long tests running, and rests of workers idle), or to
|
||||||
# run a quick test skipping long-running test cases.
|
# run a quick test skipping long-running test cases.
|
||||||
|
|
||||||
--source include/no_valgrind_without_big.inc
|
--source include/no_valgrind_without_big.inc
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
# Tests BACKUP STAGE locking
|
# Tests BACKUP STAGE locking
|
||||||
########################################################################
|
########################################################################
|
||||||
|
|
||||||
|
--source include/long_test.inc
|
||||||
--source include/have_innodb.inc
|
--source include/have_innodb.inc
|
||||||
--source include/have_metadata_lock_info.inc
|
--source include/have_metadata_lock_info.inc
|
||||||
--source include/not_embedded.inc
|
--source include/not_embedded.inc
|
||||||
|
@ -776,7 +776,7 @@ SELECT ST_DISTANCE_SPHERE(1, 1, NULL);
|
|||||||
ST_DISTANCE_SPHERE(1, 1, NULL)
|
ST_DISTANCE_SPHERE(1, 1, NULL)
|
||||||
NULL
|
NULL
|
||||||
SELECT ST_DISTANCE_SPHERE(ST_GEOMFROMTEXT('POINT(1 0)'), ST_GEOMFROMTEXT('LINESTRING(0 0, 1 1)')) as result;
|
SELECT ST_DISTANCE_SPHERE(ST_GEOMFROMTEXT('POINT(1 0)'), ST_GEOMFROMTEXT('LINESTRING(0 0, 1 1)')) as result;
|
||||||
ERROR HY000: Internal error: st_distance_sphere
|
ERROR HY000: Calling geometry function st_distance_sphere with unsupported types of arguments.
|
||||||
# Test Points and radius
|
# Test Points and radius
|
||||||
SELECT ST_DISTANCE_SPHERE(ST_GEOMFROMTEXT('POINT(0 0)'), ST_GEOMFROMTEXT('POINT(1 1)')) as result;
|
SELECT ST_DISTANCE_SPHERE(ST_GEOMFROMTEXT('POINT(0 0)'), ST_GEOMFROMTEXT('POINT(1 1)')) as result;
|
||||||
result
|
result
|
||||||
@ -788,9 +788,9 @@ SELECT ST_DISTANCE_SPHERE(ST_GEOMFROMTEXT('POINT(0 0)'), ST_GEOMFROMTEXT('POINT(
|
|||||||
result
|
result
|
||||||
0.024682056391766436
|
0.024682056391766436
|
||||||
SELECT ST_DISTANCE_SPHERE(ST_GEOMFROMTEXT('POINT(0 0)'), ST_GEOMFROMTEXT('POINT(1 1)'), 0) as result;
|
SELECT ST_DISTANCE_SPHERE(ST_GEOMFROMTEXT('POINT(0 0)'), ST_GEOMFROMTEXT('POINT(1 1)'), 0) as result;
|
||||||
ERROR HY000: Internal error: Radius must be greater than zero.
|
ERROR HY000: Calling geometry function st_distance_sphere with unsupported types of arguments.
|
||||||
SELECT ST_DISTANCE_SPHERE(ST_GEOMFROMTEXT('POINT(0 0)'), ST_GEOMFROMTEXT('POINT(1 1)'), -1) as result;
|
SELECT ST_DISTANCE_SPHERE(ST_GEOMFROMTEXT('POINT(0 0)'), ST_GEOMFROMTEXT('POINT(1 1)'), -1) as result;
|
||||||
ERROR HY000: Internal error: Radius must be greater than zero.
|
ERROR HY000: Calling geometry function st_distance_sphere with unsupported types of arguments.
|
||||||
# Test longitude/lattitude
|
# Test longitude/lattitude
|
||||||
SELECT TRUNCATE(ST_DISTANCE_SPHERE(ST_GEOMFROMTEXT('POINT(0 1)'), ST_GEOMFROMTEXT('POINT(1 2)')), 10) as result;
|
SELECT TRUNCATE(ST_DISTANCE_SPHERE(ST_GEOMFROMTEXT('POINT(0 1)'), ST_GEOMFROMTEXT('POINT(1 2)')), 10) as result;
|
||||||
result
|
result
|
||||||
@ -843,7 +843,7 @@ SELECT TRUNCATE(ST_DISTANCE_SPHERE(ST_GEOMFROMTEXT('MULTIPOINT(1 2,1 1 )'), ST_G
|
|||||||
result
|
result
|
||||||
0.04933028646581131
|
0.04933028646581131
|
||||||
SELECT ST_DISTANCE_SPHERE(ST_GEOMFROMTEXT('MULTIPOINT(1 2,1 1 )'), ST_GEOMFROMTEXT('MULTIPOINT(8 9,3 4 )'),0) as result;
|
SELECT ST_DISTANCE_SPHERE(ST_GEOMFROMTEXT('MULTIPOINT(1 2,1 1 )'), ST_GEOMFROMTEXT('MULTIPOINT(8 9,3 4 )'),0) as result;
|
||||||
ERROR HY000: Internal error: Radius must be greater than zero.
|
ERROR HY000: Calling geometry function st_distance_sphere with unsupported types of arguments.
|
||||||
set @pt1 = ST_GeomFromText('POINT(190 -30)');
|
set @pt1 = ST_GeomFromText('POINT(190 -30)');
|
||||||
set @pt2 = ST_GeomFromText('POINT(-30 50)');
|
set @pt2 = ST_GeomFromText('POINT(-30 50)');
|
||||||
SELECT ST_Distance_Sphere(@pt1, @pt2);
|
SELECT ST_Distance_Sphere(@pt1, @pt2);
|
||||||
|
@ -422,7 +422,7 @@ SELECT ST_DISTANCE_SPHERE(1, 1, 3);
|
|||||||
# Return NULL if radius is NULL
|
# Return NULL if radius is NULL
|
||||||
SELECT ST_DISTANCE_SPHERE(1, 1, NULL);
|
SELECT ST_DISTANCE_SPHERE(1, 1, NULL);
|
||||||
# Wrong geometry
|
# Wrong geometry
|
||||||
--error ER_INTERNAL_ERROR
|
--error ER_GIS_UNSUPPORTED_ARGUMENT
|
||||||
SELECT ST_DISTANCE_SPHERE(ST_GEOMFROMTEXT('POINT(1 0)'), ST_GEOMFROMTEXT('LINESTRING(0 0, 1 1)')) as result;
|
SELECT ST_DISTANCE_SPHERE(ST_GEOMFROMTEXT('POINT(1 0)'), ST_GEOMFROMTEXT('LINESTRING(0 0, 1 1)')) as result;
|
||||||
|
|
||||||
--echo # Test Points and radius
|
--echo # Test Points and radius
|
||||||
@ -430,9 +430,9 @@ SELECT ST_DISTANCE_SPHERE(ST_GEOMFROMTEXT('POINT(0 0)'), ST_GEOMFROMTEXT('POINT(
|
|||||||
# make bb x86 happy
|
# make bb x86 happy
|
||||||
SELECT TRUNCATE(ST_DISTANCE_SPHERE(ST_GEOMFROMTEXT('POINT(-1 -1)'), ST_GEOMFROMTEXT('POINT(-2 -2)')), 10) as result;
|
SELECT TRUNCATE(ST_DISTANCE_SPHERE(ST_GEOMFROMTEXT('POINT(-1 -1)'), ST_GEOMFROMTEXT('POINT(-2 -2)')), 10) as result;
|
||||||
SELECT ST_DISTANCE_SPHERE(ST_GEOMFROMTEXT('POINT(0 0)'), ST_GEOMFROMTEXT('POINT(1 1)'), 1) as result;
|
SELECT ST_DISTANCE_SPHERE(ST_GEOMFROMTEXT('POINT(0 0)'), ST_GEOMFROMTEXT('POINT(1 1)'), 1) as result;
|
||||||
--error ER_INTERNAL_ERROR
|
--error ER_GIS_UNSUPPORTED_ARGUMENT
|
||||||
SELECT ST_DISTANCE_SPHERE(ST_GEOMFROMTEXT('POINT(0 0)'), ST_GEOMFROMTEXT('POINT(1 1)'), 0) as result;
|
SELECT ST_DISTANCE_SPHERE(ST_GEOMFROMTEXT('POINT(0 0)'), ST_GEOMFROMTEXT('POINT(1 1)'), 0) as result;
|
||||||
--error ER_INTERNAL_ERROR
|
--error ER_GIS_UNSUPPORTED_ARGUMENT
|
||||||
SELECT ST_DISTANCE_SPHERE(ST_GEOMFROMTEXT('POINT(0 0)'), ST_GEOMFROMTEXT('POINT(1 1)'), -1) as result;
|
SELECT ST_DISTANCE_SPHERE(ST_GEOMFROMTEXT('POINT(0 0)'), ST_GEOMFROMTEXT('POINT(1 1)'), -1) as result;
|
||||||
--echo # Test longitude/lattitude
|
--echo # Test longitude/lattitude
|
||||||
# make bb x86 happy
|
# make bb x86 happy
|
||||||
@ -456,7 +456,7 @@ SELECT TRUNCATE(ST_DISTANCE_SPHERE(ST_GEOMFROMTEXT('MULTIPOINT(1 2,1 1 )'), ST_G
|
|||||||
SELECT TRUNCATE(ST_DISTANCE_SPHERE(ST_GEOMFROMTEXT('MULTIPOINT(1 2,1 1 )'), ST_GEOMFROMTEXT('MULTIPOINT(8 9,3 4 )')), 10) as result;
|
SELECT TRUNCATE(ST_DISTANCE_SPHERE(ST_GEOMFROMTEXT('MULTIPOINT(1 2,1 1 )'), ST_GEOMFROMTEXT('MULTIPOINT(8 9,3 4 )')), 10) as result;
|
||||||
# make bb x86 happy
|
# make bb x86 happy
|
||||||
SELECT TRUNCATE(ST_DISTANCE_SPHERE(ST_GEOMFROMTEXT('MULTIPOINT(1 2,1 1 )'), ST_GEOMFROMTEXT('MULTIPOINT(8 9,3 4 )'),1), 17) as result;
|
SELECT TRUNCATE(ST_DISTANCE_SPHERE(ST_GEOMFROMTEXT('MULTIPOINT(1 2,1 1 )'), ST_GEOMFROMTEXT('MULTIPOINT(8 9,3 4 )'),1), 17) as result;
|
||||||
--error ER_INTERNAL_ERROR
|
--error ER_GIS_UNSUPPORTED_ARGUMENT
|
||||||
SELECT ST_DISTANCE_SPHERE(ST_GEOMFROMTEXT('MULTIPOINT(1 2,1 1 )'), ST_GEOMFROMTEXT('MULTIPOINT(8 9,3 4 )'),0) as result;
|
SELECT ST_DISTANCE_SPHERE(ST_GEOMFROMTEXT('MULTIPOINT(1 2,1 1 )'), ST_GEOMFROMTEXT('MULTIPOINT(8 9,3 4 )'),0) as result;
|
||||||
|
|
||||||
# Longitude out of range [-180,180]
|
# Longitude out of range [-180,180]
|
||||||
|
@ -5501,4 +5501,9 @@ MULTIPOLYGON(POLYGON(LINESTRING(POINT(4, 3), POINT(4, 4), POINT(3, 4), POINT(4,
|
|||||||
) AS t;
|
) AS t;
|
||||||
ST_SRID(g1) ST_SRID(ST_GeomFromWKB(g1, 4326)) ST_SRID(ST_GeomFromWKB(g1)) ST_AsText(g1) ST_SRID(ST_PointFromWKB(g2, 4326)) ST_SRID(g2) ST_SRID(ST_LineStringFromWKB(g3, 3)) ST_SRID(ST_PolygonFromWKB(g4, 4)) ST_SRID(ST_MultiPointFromWKB(g5, 5)) ST_SRID(ST_MultiLineStringFromWKB(g6, 6)) ST_SRID(ST_MultiPolygonFromWKB(g7, 7))
|
ST_SRID(g1) ST_SRID(ST_GeomFromWKB(g1, 4326)) ST_SRID(ST_GeomFromWKB(g1)) ST_AsText(g1) ST_SRID(ST_PointFromWKB(g2, 4326)) ST_SRID(g2) ST_SRID(ST_LineStringFromWKB(g3, 3)) ST_SRID(ST_PolygonFromWKB(g4, 4)) ST_SRID(ST_MultiPointFromWKB(g5, 5)) ST_SRID(ST_MultiLineStringFromWKB(g6, 6)) ST_SRID(ST_MultiPolygonFromWKB(g7, 7))
|
||||||
0 4326 0 POINT(1 2) 4326 0 3 4 5 6 7
|
0 4326 0 POINT(1 2) 4326 0 3 4 5 6 7
|
||||||
|
#
|
||||||
|
# MDEV-35117 Error message "ERROR 1815 (HY000): Internal error: st_distance_sphere' could be improved
|
||||||
|
#
|
||||||
|
SELECT ST_DISTANCE_SPHERE(st_geomfromtext('linestring( 2 2, 2 8) '), ST_GeomFromText('POINT(18.413076 43.856258)')) ;
|
||||||
|
ERROR HY000: Calling geometry function st_distance_sphere with unsupported types of arguments.
|
||||||
# End of 10.5 tests
|
# End of 10.5 tests
|
||||||
|
@ -3508,4 +3508,10 @@ FROM (
|
|||||||
MULTIPOLYGON(POLYGON(LINESTRING(POINT(4, 3), POINT(4, 4), POINT(3, 4), POINT(4, 3)))) AS g7
|
MULTIPOLYGON(POLYGON(LINESTRING(POINT(4, 3), POINT(4, 4), POINT(3, 4), POINT(4, 3)))) AS g7
|
||||||
) AS t;
|
) AS t;
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
--echo # MDEV-35117 Error message "ERROR 1815 (HY000): Internal error: st_distance_sphere' could be improved
|
||||||
|
--echo #
|
||||||
|
--error ER_GIS_UNSUPPORTED_ARGUMENT
|
||||||
|
SELECT ST_DISTANCE_SPHERE(st_geomfromtext('linestring( 2 2, 2 8) '), ST_GeomFromText('POINT(18.413076 43.856258)')) ;
|
||||||
|
|
||||||
--echo # End of 10.5 tests
|
--echo # End of 10.5 tests
|
||||||
|
@ -1452,4 +1452,26 @@ DROP TABLE t1, t2;
|
|||||||
#
|
#
|
||||||
CREATE TABLE t1 (pk INT, a TEXT NOT NULL DEFAULT '', PRIMARY KEY (pk), b INT AUTO_INCREMENT, UNIQUE(b), UNIQUE (a,b)) ENGINE=myisam;
|
CREATE TABLE t1 (pk INT, a TEXT NOT NULL DEFAULT '', PRIMARY KEY (pk), b INT AUTO_INCREMENT, UNIQUE(b), UNIQUE (a,b)) ENGINE=myisam;
|
||||||
ERROR HY000: AUTO_INCREMENT column `b` cannot be used in the UNIQUE index `a`
|
ERROR HY000: AUTO_INCREMENT column `b` cannot be used in the UNIQUE index `a`
|
||||||
|
#
|
||||||
|
# MDEV-35620 UBSAN: runtime error: applying zero offset to null pointer in _ma_unique_hash, skip_trailing_space, my_hash_sort_mb_nopad_bin and my_strnncollsp_utf8mb4_bin
|
||||||
|
#
|
||||||
|
# Disable result log. The exact result is not important.
|
||||||
|
# We just need to make sure UBSAN nullptr-with-offset is not reported.
|
||||||
|
SELECT DISTINCT user,authentication_string FROM mysql.user;
|
||||||
|
SELECT DISTINCT USER,PASSWORD FROM mysql.user;
|
||||||
|
SELECT DISTINCT USER,plugin FROM mysql.user;
|
||||||
|
# Enabling result log again.
|
||||||
|
create or replace table t1 (t text) engine=aria;
|
||||||
|
insert into t1 values ('');
|
||||||
|
insert into t1 values (NULL);
|
||||||
|
select distinct t from t1;
|
||||||
|
t
|
||||||
|
|
||||||
|
NULL
|
||||||
|
alter table t1 ENGINE=MyISAM;
|
||||||
|
select distinct t from t1;
|
||||||
|
t
|
||||||
|
|
||||||
|
NULL
|
||||||
|
DROP TABLE t1;
|
||||||
# End of 10.5 tests
|
# End of 10.5 tests
|
||||||
|
@ -551,4 +551,26 @@ DROP TABLE t1, t2;
|
|||||||
--error ER_NO_AUTOINCREMENT_WITH_UNIQUE
|
--error ER_NO_AUTOINCREMENT_WITH_UNIQUE
|
||||||
CREATE TABLE t1 (pk INT, a TEXT NOT NULL DEFAULT '', PRIMARY KEY (pk), b INT AUTO_INCREMENT, UNIQUE(b), UNIQUE (a,b)) ENGINE=myisam;
|
CREATE TABLE t1 (pk INT, a TEXT NOT NULL DEFAULT '', PRIMARY KEY (pk), b INT AUTO_INCREMENT, UNIQUE(b), UNIQUE (a,b)) ENGINE=myisam;
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
--echo # MDEV-35620 UBSAN: runtime error: applying zero offset to null pointer in _ma_unique_hash, skip_trailing_space, my_hash_sort_mb_nopad_bin and my_strnncollsp_utf8mb4_bin
|
||||||
|
--echo #
|
||||||
|
|
||||||
|
--echo # Disable result log. The exact result is not important.
|
||||||
|
--echo # We just need to make sure UBSAN nullptr-with-offset is not reported.
|
||||||
|
--disable_result_log
|
||||||
|
SELECT DISTINCT user,authentication_string FROM mysql.user;
|
||||||
|
SELECT DISTINCT USER,PASSWORD FROM mysql.user;
|
||||||
|
SELECT DISTINCT USER,plugin FROM mysql.user;
|
||||||
|
--enable_result_log
|
||||||
|
--echo # Enabling result log again.
|
||||||
|
|
||||||
|
create or replace table t1 (t text) engine=aria;
|
||||||
|
insert into t1 values ('');
|
||||||
|
insert into t1 values (NULL);
|
||||||
|
select distinct t from t1;
|
||||||
|
alter table t1 ENGINE=MyISAM;
|
||||||
|
select distinct t from t1;
|
||||||
|
DROP TABLE t1;
|
||||||
|
|
||||||
|
|
||||||
--echo # End of 10.5 tests
|
--echo # End of 10.5 tests
|
||||||
|
1
mysql-test/main/my_getopt_case_insensitive.opt
Normal file
1
mysql-test/main/my_getopt_case_insensitive.opt
Normal file
@ -0,0 +1 @@
|
|||||||
|
--slOw_QuEry_loG=OFF
|
8
mysql-test/main/my_getopt_case_insensitive.result
Normal file
8
mysql-test/main/my_getopt_case_insensitive.result
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
#
|
||||||
|
# MDEV-27126: my_getopt compares option names case sensitively
|
||||||
|
#
|
||||||
|
# Check if the variable is set correctly from options
|
||||||
|
SELECT @@GLOBAL.slow_query_log;
|
||||||
|
@@GLOBAL.slow_query_log
|
||||||
|
0
|
||||||
|
# End of test.
|
8
mysql-test/main/my_getopt_case_insensitive.test
Normal file
8
mysql-test/main/my_getopt_case_insensitive.test
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
--echo #
|
||||||
|
--echo # MDEV-27126: my_getopt compares option names case sensitively
|
||||||
|
--echo #
|
||||||
|
|
||||||
|
--echo # Check if the variable is set correctly from options
|
||||||
|
SELECT @@GLOBAL.slow_query_log;
|
||||||
|
|
||||||
|
--echo # End of test.
|
@ -1,4 +1,7 @@
|
|||||||
drop table if exists t1,t2;
|
drop table if exists t1,t2;
|
||||||
|
call mtr.add_suppression("Index.*try to repair it");
|
||||||
|
call mtr.add_suppression("Disk got full");
|
||||||
|
call mtr.add_suppression("Got an error from thread_id");
|
||||||
create table t1 (id int, sometext varchar(100)) engine=myisam;
|
create table t1 (id int, sometext varchar(100)) engine=myisam;
|
||||||
insert into t1 values (1, "hello"),(2, "hello2"),(4, "hello3"),(4, "hello4");
|
insert into t1 values (1, "hello"),(2, "hello2"),(4, "hello3"),(4, "hello4");
|
||||||
create table t2 like t1;
|
create table t2 like t1;
|
||||||
@ -43,4 +46,9 @@ connection default;
|
|||||||
connection con2;
|
connection con2;
|
||||||
disconnect con2;
|
disconnect con2;
|
||||||
connection default;
|
connection default;
|
||||||
|
SET @saved_dbug = @@SESSION.debug_dbug;
|
||||||
|
SET debug_dbug='+d,simulate_file_pwrite_error';
|
||||||
|
insert into t1 select * from t2;
|
||||||
|
ERROR HY000: Disk got full writing 'test.t1' (Errcode: 28 "No space left on device")
|
||||||
|
SET debug_dbug= @saved_dbug;
|
||||||
drop table t1,t2;
|
drop table t1,t2;
|
||||||
|
@ -1,12 +1,17 @@
|
|||||||
#
|
#
|
||||||
# Test bugs in the MyISAM code that require more space/time
|
# Test bugs in the MyISAM code that require more space/time
|
||||||
--source include/big_test.inc
|
--source include/big_test.inc
|
||||||
|
--source include/have_debug.inc
|
||||||
|
|
||||||
# Initialise
|
# Initialise
|
||||||
--disable_warnings
|
--disable_warnings
|
||||||
drop table if exists t1,t2;
|
drop table if exists t1,t2;
|
||||||
--enable_warnings
|
--enable_warnings
|
||||||
|
|
||||||
|
call mtr.add_suppression("Index.*try to repair it");
|
||||||
|
call mtr.add_suppression("Disk got full");
|
||||||
|
call mtr.add_suppression("Got an error from thread_id");
|
||||||
|
|
||||||
#
|
#
|
||||||
# BUG#925377:
|
# BUG#925377:
|
||||||
# Querying myisam table metadata while 'alter table..enable keys' is
|
# Querying myisam table metadata while 'alter table..enable keys' is
|
||||||
@ -61,4 +66,12 @@ connection con2;
|
|||||||
reap;
|
reap;
|
||||||
disconnect con2;
|
disconnect con2;
|
||||||
connection default;
|
connection default;
|
||||||
|
|
||||||
|
#
|
||||||
|
# Test error message from disk full
|
||||||
|
SET @saved_dbug = @@SESSION.debug_dbug;
|
||||||
|
SET debug_dbug='+d,simulate_file_pwrite_error';
|
||||||
|
--error ER_DISK_FULL
|
||||||
|
insert into t1 select * from t2;
|
||||||
|
SET debug_dbug= @saved_dbug;
|
||||||
drop table t1,t2;
|
drop table t1,t2;
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
|
--source include/long_test.inc
|
||||||
-- source include/mysql_upgrade_preparation.inc
|
-- source include/mysql_upgrade_preparation.inc
|
||||||
-- source include/have_working_dns.inc
|
-- source include/have_working_dns.inc
|
||||||
-- source include/have_innodb.inc
|
-- source include/have_innodb.inc
|
||||||
-- source include/have_partition.inc
|
-- source include/have_partition.inc
|
||||||
-- source include/no_valgrind_without_big.inc
|
|
||||||
|
|
||||||
set sql_mode="";
|
set sql_mode="";
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
--source include/no_valgrind_without_big.inc
|
--source include/long_test.inc
|
||||||
--source include/have_utf8mb4.inc
|
--source include/have_utf8mb4.inc
|
||||||
|
|
||||||
call mtr.add_suppression("@003f.frm' \\(errno: 22\\)");
|
call mtr.add_suppression("@003f.frm' \\(errno: 22\\)");
|
||||||
|
@ -138,6 +138,14 @@ drop user baz@baz;
|
|||||||
# End of 10.3 tests
|
# End of 10.3 tests
|
||||||
#
|
#
|
||||||
#
|
#
|
||||||
|
# MDEV-34501: SIGSEGV in pfs_start_mutex_wait_v1, __strlen_avx2, or __strlen_evex from safe_mutex_lock on CREATE DEFINER when using skip-grant-tables
|
||||||
|
#
|
||||||
|
CREATE DEFINER=a PROCEDURE p() SELECT 1;
|
||||||
|
CREATE DEFINER=a FUNCTION f() RETURNS INT RETURN 100;
|
||||||
|
DROP PROCEDURE p;
|
||||||
|
DROP FUNCTION f;
|
||||||
|
# End of 10.5 tests
|
||||||
|
#
|
||||||
# MDEV-24815 Show "--skip-grant-tables" state in SYSTEM VARIABLES
|
# MDEV-24815 Show "--skip-grant-tables" state in SYSTEM VARIABLES
|
||||||
#
|
#
|
||||||
SELECT @@skip_grant_tables AS EXPECT_1;
|
SELECT @@skip_grant_tables AS EXPECT_1;
|
||||||
|
@ -169,6 +169,17 @@ drop user baz@baz;
|
|||||||
--echo # End of 10.3 tests
|
--echo # End of 10.3 tests
|
||||||
--echo #
|
--echo #
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
--echo # MDEV-34501: SIGSEGV in pfs_start_mutex_wait_v1, __strlen_avx2, or __strlen_evex from safe_mutex_lock on CREATE DEFINER when using skip-grant-tables
|
||||||
|
--echo #
|
||||||
|
CREATE DEFINER=a PROCEDURE p() SELECT 1;
|
||||||
|
CREATE DEFINER=a FUNCTION f() RETURNS INT RETURN 100;
|
||||||
|
|
||||||
|
DROP PROCEDURE p;
|
||||||
|
DROP FUNCTION f;
|
||||||
|
|
||||||
|
--echo # End of 10.5 tests
|
||||||
|
|
||||||
--echo #
|
--echo #
|
||||||
--echo # MDEV-24815 Show "--skip-grant-tables" state in SYSTEM VARIABLES
|
--echo # MDEV-24815 Show "--skip-grant-tables" state in SYSTEM VARIABLES
|
||||||
--echo #
|
--echo #
|
||||||
|
@ -388,5 +388,14 @@ ERROR 23000: Column 'c2' in FROM is ambiguous
|
|||||||
DROP PROCEDURE p2;
|
DROP PROCEDURE p2;
|
||||||
DROP TABLE t1, t2;
|
DROP TABLE t1, t2;
|
||||||
#
|
#
|
||||||
|
# MDEV-34501: SIGSEGV in pfs_start_mutex_wait_v1, __strlen_avx2, or __strlen_evex from safe_mutex_lock on CREATE DEFINER when using skip-grant-tables
|
||||||
|
#
|
||||||
|
# This test is a duplicate of the one located in the file skip_grants.test
|
||||||
|
# and placed here to check the same test case against embedded-server
|
||||||
|
CREATE DEFINER=a PROCEDURE p() SELECT 1;
|
||||||
|
CREATE DEFINER=a FUNCTION f() RETURNS INT RETURN 100;
|
||||||
|
DROP PROCEDURE p;
|
||||||
|
DROP FUNCTION f;
|
||||||
|
#
|
||||||
# End of 10.5 tests
|
# End of 10.5 tests
|
||||||
#
|
#
|
||||||
|
@ -414,6 +414,26 @@ CALL p2 (@a,@c);
|
|||||||
DROP PROCEDURE p2;
|
DROP PROCEDURE p2;
|
||||||
DROP TABLE t1, t2;
|
DROP TABLE t1, t2;
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
--echo # MDEV-34501: SIGSEGV in pfs_start_mutex_wait_v1, __strlen_avx2, or __strlen_evex from safe_mutex_lock on CREATE DEFINER when using skip-grant-tables
|
||||||
|
--echo #
|
||||||
|
--echo # This test is a duplicate of the one located in the file skip_grants.test
|
||||||
|
--echo # and placed here to check the same test case against embedded-server
|
||||||
|
|
||||||
|
# Disable warnings before running the following CREATE PROCEDURE/FUNCTION
|
||||||
|
# statement since the warning message
|
||||||
|
# "The user specified as a definer ('a'@'%') does not exist"
|
||||||
|
# is output in case the test be run against a regular server
|
||||||
|
# and isn't output if embedded server is used (@sa sp_process_definer()
|
||||||
|
# in sql_parse.cc).
|
||||||
|
--disable_warnings
|
||||||
|
CREATE DEFINER=a PROCEDURE p() SELECT 1;
|
||||||
|
CREATE DEFINER=a FUNCTION f() RETURNS INT RETURN 100;
|
||||||
|
--enable_warnings
|
||||||
|
|
||||||
|
DROP PROCEDURE p;
|
||||||
|
DROP FUNCTION f;
|
||||||
|
|
||||||
--echo #
|
--echo #
|
||||||
--echo # End of 10.5 tests
|
--echo # End of 10.5 tests
|
||||||
--echo #
|
--echo #
|
||||||
|
@ -2313,3 +2313,44 @@ SELECT 1 LIKE 2 ESCAPE a;
|
|||||||
END;
|
END;
|
||||||
$$
|
$$
|
||||||
ERROR 21000: Operand should contain 1 column(s)
|
ERROR 21000: Operand should contain 1 column(s)
|
||||||
|
# Start of 10.6 tests
|
||||||
|
#
|
||||||
|
# MDEV-36179 Assertion `0' failed in virtual bool Type_handler_row::Item_save_in_value(THD*, Item*, st_value*) const
|
||||||
|
#
|
||||||
|
CREATE PROCEDURE p0 (IN a ROW(a INT,b INT))
|
||||||
|
BEGIN
|
||||||
|
SET a=ROW(0,0);
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
PREPARE s0 FROM 'CALL p0(?)';
|
||||||
|
EXECUTE s0 USING @a;
|
||||||
|
ERROR HY000: Illegal parameter data type row for operation 'EXECUTE ... USING ?'
|
||||||
|
DROP PROCEDURE p0;
|
||||||
|
CREATE PROCEDURE p0 (INOUT a ROW(a INT,b INT))
|
||||||
|
BEGIN
|
||||||
|
SET a=ROW(0,0);
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
PREPARE s0 FROM 'CALL p0(?)';
|
||||||
|
EXECUTE s0 USING @a;
|
||||||
|
ERROR HY000: Illegal parameter data type row for operation 'EXECUTE ... USING ?'
|
||||||
|
DROP PROCEDURE p0;
|
||||||
|
CREATE PROCEDURE p0 (OUT a ROW(a INT,b INT))
|
||||||
|
BEGIN
|
||||||
|
SET a=ROW(0,0);
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
PREPARE s0 FROM 'CALL p0(?)';
|
||||||
|
EXECUTE s0 USING @a;
|
||||||
|
ERROR HY000: Illegal parameter data type row for operation 'EXECUTE ... USING ?'
|
||||||
|
DROP PROCEDURE p0;
|
||||||
|
CREATE FUNCTION f0(a ROW(a INT,b INT)) RETURNS BOOLEAN
|
||||||
|
BEGIN
|
||||||
|
RETURN FALSE;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
PREPARE s0 FROM 'SELECT f0(?)';
|
||||||
|
EXECUTE s0 USING @a;
|
||||||
|
ERROR HY000: Illegal parameter data type row for operation 'EXECUTE ... USING ?'
|
||||||
|
DROP FUNCTION f0;
|
||||||
|
# End of 10.6 tests
|
||||||
|
@ -1544,3 +1544,64 @@ BEGIN NOT ATOMIC
|
|||||||
END;
|
END;
|
||||||
$$
|
$$
|
||||||
DELIMITER ;$$
|
DELIMITER ;$$
|
||||||
|
|
||||||
|
|
||||||
|
--echo # Start of 10.6 tests
|
||||||
|
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
--echo # MDEV-36179 Assertion `0' failed in virtual bool Type_handler_row::Item_save_in_value(THD*, Item*, st_value*) const
|
||||||
|
--echo #
|
||||||
|
|
||||||
|
DELIMITER /;
|
||||||
|
CREATE PROCEDURE p0 (IN a ROW(a INT,b INT))
|
||||||
|
BEGIN
|
||||||
|
SET a=ROW(0,0);
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
DELIMITER ;/
|
||||||
|
PREPARE s0 FROM 'CALL p0(?)';
|
||||||
|
--error ER_ILLEGAL_PARAMETER_DATA_TYPE_FOR_OPERATION
|
||||||
|
EXECUTE s0 USING @a;
|
||||||
|
DROP PROCEDURE p0;
|
||||||
|
|
||||||
|
|
||||||
|
DELIMITER /;
|
||||||
|
CREATE PROCEDURE p0 (INOUT a ROW(a INT,b INT))
|
||||||
|
BEGIN
|
||||||
|
SET a=ROW(0,0);
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
DELIMITER ;/
|
||||||
|
PREPARE s0 FROM 'CALL p0(?)';
|
||||||
|
--error ER_ILLEGAL_PARAMETER_DATA_TYPE_FOR_OPERATION
|
||||||
|
EXECUTE s0 USING @a;
|
||||||
|
DROP PROCEDURE p0;
|
||||||
|
|
||||||
|
|
||||||
|
DELIMITER /;
|
||||||
|
CREATE PROCEDURE p0 (OUT a ROW(a INT,b INT))
|
||||||
|
BEGIN
|
||||||
|
SET a=ROW(0,0);
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
DELIMITER ;/
|
||||||
|
PREPARE s0 FROM 'CALL p0(?)';
|
||||||
|
--error ER_ILLEGAL_PARAMETER_DATA_TYPE_FOR_OPERATION
|
||||||
|
EXECUTE s0 USING @a;
|
||||||
|
DROP PROCEDURE p0;
|
||||||
|
|
||||||
|
|
||||||
|
DELIMITER /;
|
||||||
|
CREATE FUNCTION f0(a ROW(a INT,b INT)) RETURNS BOOLEAN
|
||||||
|
BEGIN
|
||||||
|
RETURN FALSE;
|
||||||
|
END;
|
||||||
|
/
|
||||||
|
DELIMITER ;/
|
||||||
|
PREPARE s0 FROM 'SELECT f0(?)';
|
||||||
|
--error ER_ILLEGAL_PARAMETER_DATA_TYPE_FOR_OPERATION
|
||||||
|
EXECUTE s0 USING @a;
|
||||||
|
DROP FUNCTION f0;
|
||||||
|
|
||||||
|
--echo # End of 10.6 tests
|
||||||
|
@ -25,3 +25,9 @@ OPENED_VIEWS 0
|
|||||||
set @@use_stat_tables= @save_use_stat_tables;
|
set @@use_stat_tables= @save_use_stat_tables;
|
||||||
set @@optimizer_use_condition_selectivity=@save_optimizer_use_condition_selectivity;
|
set @@optimizer_use_condition_selectivity=@save_optimizer_use_condition_selectivity;
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
#
|
||||||
|
# MDEV-36138 Server null-pointer crash at startup when tmptables left in --tmpdir
|
||||||
|
#
|
||||||
|
create table t1 (c int);
|
||||||
|
drop table t1;
|
||||||
|
# restart
|
||||||
|
@ -24,4 +24,15 @@ select variable_name, session_status.variable_value - t1.variable_value
|
|||||||
from information_schema.session_status join t1 using (variable_name);
|
from information_schema.session_status join t1 using (variable_name);
|
||||||
set @@use_stat_tables= @save_use_stat_tables;
|
set @@use_stat_tables= @save_use_stat_tables;
|
||||||
set @@optimizer_use_condition_selectivity=@save_optimizer_use_condition_selectivity;
|
set @@optimizer_use_condition_selectivity=@save_optimizer_use_condition_selectivity;
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
--echo # MDEV-36138 Server null-pointer crash at startup when tmptables left in --tmpdir
|
||||||
|
--echo #
|
||||||
|
|
||||||
|
create table t1 (c int);
|
||||||
|
let $MYSQLD_TMPDIR=`SELECT @@tmpdir`;
|
||||||
|
let $MYSQLD_DATADIR=`SELECT @@datadir`;
|
||||||
|
--copy_file $MYSQLD_DATADIR/test/t1.frm $MYSQLD_TMPDIR/#sqlt1.frm
|
||||||
|
drop table t1;
|
||||||
|
--source include/restart_mysqld.inc
|
||||||
|
@ -399,4 +399,19 @@ Warnings:
|
|||||||
Warning 1364 Field 'c5' doesn't have a default value
|
Warning 1364 Field 'c5' doesn't have a default value
|
||||||
drop table t1;
|
drop table t1;
|
||||||
set sql_mode=default;
|
set sql_mode=default;
|
||||||
|
#
|
||||||
|
# MDEV-36026 Problem with INSERT SELECT on NOT NULL columns while having BEFORE UPDATE trigger
|
||||||
|
#
|
||||||
|
create table t1 (b int(11) not null);
|
||||||
|
create trigger t1bu before update on t1 for each row begin end;
|
||||||
|
insert t1 (b) select 1 union select 2;
|
||||||
|
create trigger trgi before insert on t1 for each row set new.b=ifnull(new.b,10);
|
||||||
|
insert t1 (b) select NULL union select 11;
|
||||||
|
select * from t1;
|
||||||
|
b
|
||||||
|
1
|
||||||
|
2
|
||||||
|
10
|
||||||
|
11
|
||||||
|
drop table t1;
|
||||||
# End of 10.5 tests
|
# End of 10.5 tests
|
||||||
|
@ -425,4 +425,15 @@ insert into t1 (c) values (1);
|
|||||||
drop table t1;
|
drop table t1;
|
||||||
set sql_mode=default;
|
set sql_mode=default;
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
--echo # MDEV-36026 Problem with INSERT SELECT on NOT NULL columns while having BEFORE UPDATE trigger
|
||||||
|
--echo #
|
||||||
|
create table t1 (b int(11) not null);
|
||||||
|
create trigger t1bu before update on t1 for each row begin end;
|
||||||
|
insert t1 (b) select 1 union select 2;
|
||||||
|
create trigger trgi before insert on t1 for each row set new.b=ifnull(new.b,10);
|
||||||
|
insert t1 (b) select NULL union select 11;
|
||||||
|
select * from t1;
|
||||||
|
drop table t1;
|
||||||
|
|
||||||
--echo # End of 10.5 tests
|
--echo # End of 10.5 tests
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
MIIFlTCCA32gAwIBAgIUKCF88W+48rZzdfgYpE2dXVMGSKgwDQYJKoZIhvcNAQEL
|
MIIFlTCCA32gAwIBAgIUKCF88W+48rZzdfgYpE2dXVMGSKgwDQYJKoZIhvcNAQEL
|
||||||
BQAwWjELMAkGA1UEBhMCRkkxETAPBgNVBAgMCEhlbHNpbmtpMREwDwYDVQQHDAhI
|
BQAwWjELMAkGA1UEBhMCRkkxETAPBgNVBAgMCEhlbHNpbmtpMREwDwYDVQQHDAhI
|
||||||
ZWxzaW5raTEPMA0GA1UECgwGR2FsZXJhMRQwEgYDVQQDDAtnYWxlcmEucm9vdDAe
|
ZWxzaW5raTEPMA0GA1UECgwGR2FsZXJhMRQwEgYDVQQDDAtnYWxlcmEucm9vdDAe
|
||||||
Fw0yMTAyMDQxMzE3MDJaFw0yMzExMjUxMzE3MDJaMFoxCzAJBgNVBAYTAkZJMREw
|
Fw0yMzEyMDExMzQzNDBaFw0zMzExMjgxMzQzNDBaMFoxCzAJBgNVBAYTAkZJMREw
|
||||||
DwYDVQQIDAhIZWxzaW5raTERMA8GA1UEBwwISGVsc2lua2kxDzANBgNVBAoMBkdh
|
DwYDVQQIDAhIZWxzaW5raTERMA8GA1UEBwwISGVsc2lua2kxDzANBgNVBAoMBkdh
|
||||||
bGVyYTEUMBIGA1UEAwwLZ2FsZXJhLnJvb3QwggIiMA0GCSqGSIb3DQEBAQUAA4IC
|
bGVyYTEUMBIGA1UEAwwLZ2FsZXJhLnJvb3QwggIiMA0GCSqGSIb3DQEBAQUAA4IC
|
||||||
DwAwggIKAoICAQDKqL45jbaq8RLOj+DeilPcEnBN5gn/y9V3IfZ0BQCd4bR09zLz
|
DwAwggIKAoICAQDKqL45jbaq8RLOj+DeilPcEnBN5gn/y9V3IfZ0BQCd4bR09zLz
|
||||||
@ -18,15 +18,15 @@ dl5QYYMbmyNedNKdwV4idhGCy+Zq7VAX4lBXazI1rD9vQb+oTcPGQiy4i/Vi/g6i
|
|||||||
F+XZTdTiaOWPEmvFFGLLUQxKl4w872hJaupqfteqdiZ+3ICVIUI8qnXHmwIDAQAB
|
F+XZTdTiaOWPEmvFFGLLUQxKl4w872hJaupqfteqdiZ+3ICVIUI8qnXHmwIDAQAB
|
||||||
o1MwUTAdBgNVHQ4EFgQUs75v/MgjJ5RHGE6+0qdiVo4BwlowHwYDVR0jBBgwFoAU
|
o1MwUTAdBgNVHQ4EFgQUs75v/MgjJ5RHGE6+0qdiVo4BwlowHwYDVR0jBBgwFoAU
|
||||||
s75v/MgjJ5RHGE6+0qdiVo4BwlowDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0B
|
s75v/MgjJ5RHGE6+0qdiVo4BwlowDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0B
|
||||||
AQsFAAOCAgEAOVhBs28dwwvD5q2r7oVVcxLc+tb8zu4XxpXT1p6hiZYUyPguCh00
|
AQsFAAOCAgEAKLV6mkWb88HEJXo1XlmAzznIYNfilrvvxwcjhceluDE8s8sPSpYM
|
||||||
GVdXCgR4JMI/NcyM5fBAbF3S8oK3+9rw2kW09afVV06Qf/8o3nIyOiDl7598tGIP
|
Bz5ebWlHCgEkC/ezhA/PDtZsZlQKwv4jb++lAlFSlebT1GW77xKkdRBTKgkFAaOA
|
||||||
CCK4QsUW/dGajx5kvhtQ7qce+u9KfFTof6lq2xkYtFBBhmBdSv9A1jAZJMw2x3bc
|
pF5eZao6IP8l76fA4OoI2Tttw5jeb23kOoklDp/8VS0JEAT3wm/hZiE20aUbAFC+
|
||||||
nr99PS8XZMphS0MIExHKj6Ry5DdYm722zZHyIEiiEGyMViDm2m1iug5r/LPH5Z56
|
kPiCucBztzaTHQud9CgtxRH/B3D9FaPuwae/H6FYrvQVNVjcaHTIUh9fTcyKRXYm
|
||||||
BjQiH4VP+0y5mevBOUGuH8ID+J9Hu9BeoXLhkv+W2Ljs/S6wqzjinMBqVG+wwe0Y
|
oYbvK7fIhCjZkG2LRWRU9Kirivb+ktO4POsuK4BgYrsFaOBf9HYsojA7llyGDopN
|
||||||
a8F5pABkl5uX38nMQ7CikSbLxSbn7nRf+sux1sbzqjMldeCSqiv9mI5Ysq97+Ni1
|
cfw9jtb27Qb/uMKJnClFg14u685CU5JAzY31E5OQPPUUx9PqP4Z9PgXRQ0xI6H/4
|
||||||
5qMxNxNc0u/wGRnrXH8fWfxBKPP5moA7DQfVcUWPgDGQwDpA8kn8RlJxFk3g4yaK
|
sejlcQuqGCDKiL2lOzUjbT86EjO4ZfiKHR+lKOIuT5mXiR8cbS1JeyX3Mrv1Ds4r
|
||||||
+NMwk5MORKyx3tz/A3Yhs9AUXk3okvmQCT2YVSHcKUB8PAU+TaKqbr3wk07Y/tL/
|
UVcdtSXTy6/XYWFIzhu+MrsFon6VX0HkmSH1HjSoLMOZcHAZIFZZ/uAahLmMNaEG
|
||||||
jFPHS+t3eD91Y05KGUXjdtGi+33zpV0biHmTWAZT78VQowDNvEpTnXhkSx8HGHYR
|
lV15fD5+t5QRKwqmdFUW2ETiqSJxRs6Y++ptxpiiH38QVWPvBWeRgcPpf3A478Bl
|
||||||
nqSMU2m2LboHSatY113RYznx0LJ1azczRlJdGs8oyPWLPDD2JCesZaQqGZVRJoms
|
iGO0xn0N57TnhFs3g0C0xyZgTBMozfVostYpps1Tqqz0VOhtmURxTZm9JZgTb7qv
|
||||||
lK4EzYEb5mZTCRgtgoiO+iKcf6XifuOCrWZXoLm4FlLEfOQ3b8yAFlo=
|
nMURY0SIQKXpHCcJuNtxZcDSu8uxgUcMsLSSC7Zmk7/cSeUfmOgZVzU=
|
||||||
-----END CERTIFICATE-----
|
-----END CERTIFICATE-----
|
||||||
|
@ -1,3 +1,4 @@
|
|||||||
|
--source include/long_test.inc
|
||||||
--source include/have_debug.inc
|
--source include/have_debug.inc
|
||||||
--source include/have_innodb.inc
|
--source include/have_innodb.inc
|
||||||
--source include/have_log_bin.inc
|
--source include/have_log_bin.inc
|
||||||
|
@ -1,3 +1,4 @@
|
|||||||
|
--source include/long_test.inc
|
||||||
--source include/have_debug.inc
|
--source include/have_debug.inc
|
||||||
--source include/have_sequence.inc
|
--source include/have_sequence.inc
|
||||||
--source include/have_innodb.inc
|
--source include/have_innodb.inc
|
||||||
|
@ -1,3 +1,4 @@
|
|||||||
|
--source include/long_test.inc
|
||||||
--source include/have_debug.inc
|
--source include/have_debug.inc
|
||||||
--source include/have_innodb.inc
|
--source include/have_innodb.inc
|
||||||
--source include/have_csv.inc
|
--source include/have_csv.inc
|
||||||
|
@ -1,3 +1,4 @@
|
|||||||
|
--source include/long_test.inc
|
||||||
--source include/have_debug.inc
|
--source include/have_debug.inc
|
||||||
--source include/have_innodb.inc
|
--source include/have_innodb.inc
|
||||||
--source include/have_csv.inc
|
--source include/have_csv.inc
|
||||||
|
@ -18,6 +18,7 @@
|
|||||||
# - with annotated events, default checksums and minimal binlog row image
|
# - with annotated events, default checksums and minimal binlog row image
|
||||||
#
|
#
|
||||||
|
|
||||||
|
--source include/long_test.inc
|
||||||
# The test can take very long time with valgrind
|
# The test can take very long time with valgrind
|
||||||
--source include/not_valgrind.inc
|
--source include/not_valgrind.inc
|
||||||
|
|
||||||
|
@ -3,8 +3,9 @@ call mtr.add_suppression("InnoDB: Unable to apply log to corrupted page ");
|
|||||||
call mtr.add_suppression("InnoDB: Plugin initialization aborted");
|
call mtr.add_suppression("InnoDB: Plugin initialization aborted");
|
||||||
call mtr.add_suppression("Plugin 'InnoDB' init function returned error");
|
call mtr.add_suppression("Plugin 'InnoDB' init function returned error");
|
||||||
call mtr.add_suppression("Plugin 'InnoDB' registration as a STORAGE ENGINE failed");
|
call mtr.add_suppression("Plugin 'InnoDB' registration as a STORAGE ENGINE failed");
|
||||||
create table t1 (f1 int primary key, f2 blob)page_compressed = 1 engine=innodb stats_persistent=0;
|
create table t1 (f1 int primary key, f2 blob)page_compressed=1 engine=innodb encrypted=yes stats_persistent=0;
|
||||||
create table t2(f1 int primary key, f2 blob)engine=innodb stats_persistent=0;
|
create table t2(f1 int primary key, f2 blob)engine=innodb encrypted=yes stats_persistent=0;
|
||||||
|
create table t3(f1 int primary key, f2 blob)page_compressed=1 engine=innodb encrypted=no stats_persistent=0;
|
||||||
start transaction;
|
start transaction;
|
||||||
insert into t1 values(1, repeat('#',12));
|
insert into t1 values(1, repeat('#',12));
|
||||||
insert into t1 values(2, repeat('+',12));
|
insert into t1 values(2, repeat('+',12));
|
||||||
@ -12,29 +13,37 @@ insert into t1 values(3, repeat('/',12));
|
|||||||
insert into t1 values(4, repeat('-',12));
|
insert into t1 values(4, repeat('-',12));
|
||||||
insert into t1 values(5, repeat('.',12));
|
insert into t1 values(5, repeat('.',12));
|
||||||
insert into t2 select * from t1;
|
insert into t2 select * from t1;
|
||||||
|
insert into t3 select * from t1;
|
||||||
commit work;
|
commit work;
|
||||||
SET GLOBAL innodb_fast_shutdown = 0;
|
SET GLOBAL innodb_fast_shutdown = 0;
|
||||||
# restart: --debug_dbug=+d,ib_log_checkpoint_avoid_hard --innodb_flush_sync=0
|
# restart: --debug_dbug=+d,ib_log_checkpoint_avoid_hard --innodb_flush_sync=0
|
||||||
select space into @t1_space_id from information_schema.innodb_sys_tablespaces where name='test/t1';
|
select space into @t1_space_id from information_schema.innodb_sys_tablespaces where name='test/t1';
|
||||||
select space into @t2_space_id from information_schema.innodb_sys_tablespaces where name='test/t2';
|
select space into @t2_space_id from information_schema.innodb_sys_tablespaces where name='test/t2';
|
||||||
|
select space into @t3_space_id from information_schema.innodb_sys_tablespaces where name='test/t3';
|
||||||
begin;
|
begin;
|
||||||
insert into t1 values (6, repeat('%', 400));
|
insert into t1 values (6, repeat('%', 400));
|
||||||
insert into t2 values (6, repeat('%', 400));
|
insert into t2 values (6, repeat('%', 400));
|
||||||
|
insert into t3 values (6, repeat('%', 400));
|
||||||
# xtrabackup prepare
|
# xtrabackup prepare
|
||||||
set global innodb_saved_page_number_debug = 3;
|
set global innodb_saved_page_number_debug = 3;
|
||||||
set global innodb_fil_make_page_dirty_debug = @t1_space_id;
|
set global innodb_fil_make_page_dirty_debug = @t1_space_id;
|
||||||
set global innodb_saved_page_number_debug = 3;
|
set global innodb_saved_page_number_debug = 3;
|
||||||
set global innodb_fil_make_page_dirty_debug = @t2_space_id;
|
set global innodb_fil_make_page_dirty_debug = @t2_space_id;
|
||||||
|
set global innodb_saved_page_number_debug = 3;
|
||||||
|
set global innodb_fil_make_page_dirty_debug = @t3_space_id;
|
||||||
set global innodb_buf_flush_list_now = 1;
|
set global innodb_buf_flush_list_now = 1;
|
||||||
# Kill the server
|
# Kill the server
|
||||||
# restart
|
# restart
|
||||||
FOUND 2 /InnoDB: Recovered page \[page id: space=[1-9]*, page number=3\]/ in mysqld.1.err
|
FOUND 3 /InnoDB: Recovered page \[page id: space=[1-9]*, page number=3\]/ in mysqld.1.err
|
||||||
check table t1;
|
check table t1;
|
||||||
Table Op Msg_type Msg_text
|
Table Op Msg_type Msg_text
|
||||||
test.t1 check status OK
|
test.t1 check status OK
|
||||||
check table t2;
|
check table t2;
|
||||||
Table Op Msg_type Msg_text
|
Table Op Msg_type Msg_text
|
||||||
test.t2 check status OK
|
test.t2 check status OK
|
||||||
|
check table t3;
|
||||||
|
Table Op Msg_type Msg_text
|
||||||
|
test.t3 check status OK
|
||||||
select f1, f2 from t1;
|
select f1, f2 from t1;
|
||||||
f1 f2
|
f1 f2
|
||||||
1 ############
|
1 ############
|
||||||
@ -49,6 +58,13 @@ f1 f2
|
|||||||
3 ////////////
|
3 ////////////
|
||||||
4 ------------
|
4 ------------
|
||||||
5 ............
|
5 ............
|
||||||
|
select f1, f2 from t3;
|
||||||
|
f1 f2
|
||||||
|
1 ############
|
||||||
|
2 ++++++++++++
|
||||||
|
3 ////////////
|
||||||
|
4 ------------
|
||||||
|
5 ............
|
||||||
SET GLOBAL innodb_fast_shutdown = 0;
|
SET GLOBAL innodb_fast_shutdown = 0;
|
||||||
# shutdown server
|
# shutdown server
|
||||||
# remove datadir
|
# remove datadir
|
||||||
@ -78,4 +94,4 @@ f1 f2
|
|||||||
3 ////////////
|
3 ////////////
|
||||||
4 ------------
|
4 ------------
|
||||||
5 ............
|
5 ............
|
||||||
drop table t2, t1;
|
drop table t3, t2, t1;
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
--innodb-use-atomic-writes=0
|
--innodb-use-atomic-writes=0
|
||||||
--innodb-encrypt-tables=FORCE
|
--innodb-encrypt-tables=on
|
||||||
--innodb_sys_tablespaces
|
--innodb_sys_tablespaces
|
||||||
|
@ -12,8 +12,9 @@ let INNODB_PAGE_SIZE=`select @@innodb_page_size`;
|
|||||||
let MYSQLD_DATADIR=`select @@datadir`;
|
let MYSQLD_DATADIR=`select @@datadir`;
|
||||||
let ALGO=`select @@innodb_checksum_algorithm`;
|
let ALGO=`select @@innodb_checksum_algorithm`;
|
||||||
|
|
||||||
create table t1 (f1 int primary key, f2 blob)page_compressed = 1 engine=innodb stats_persistent=0;
|
create table t1 (f1 int primary key, f2 blob)page_compressed=1 engine=innodb encrypted=yes stats_persistent=0;
|
||||||
create table t2(f1 int primary key, f2 blob)engine=innodb stats_persistent=0;
|
create table t2(f1 int primary key, f2 blob)engine=innodb encrypted=yes stats_persistent=0;
|
||||||
|
create table t3(f1 int primary key, f2 blob)page_compressed=1 engine=innodb encrypted=no stats_persistent=0;
|
||||||
|
|
||||||
start transaction;
|
start transaction;
|
||||||
insert into t1 values(1, repeat('#',12));
|
insert into t1 values(1, repeat('#',12));
|
||||||
@ -22,6 +23,7 @@ insert into t1 values(3, repeat('/',12));
|
|||||||
insert into t1 values(4, repeat('-',12));
|
insert into t1 values(4, repeat('-',12));
|
||||||
insert into t1 values(5, repeat('.',12));
|
insert into t1 values(5, repeat('.',12));
|
||||||
insert into t2 select * from t1;
|
insert into t2 select * from t1;
|
||||||
|
insert into t3 select * from t1;
|
||||||
commit work;
|
commit work;
|
||||||
|
|
||||||
# Slow shutdown and restart to make sure ibuf merge is finished
|
# Slow shutdown and restart to make sure ibuf merge is finished
|
||||||
@ -33,12 +35,14 @@ let $restart_parameters=--debug_dbug=+d,ib_log_checkpoint_avoid_hard --innodb_fl
|
|||||||
|
|
||||||
select space into @t1_space_id from information_schema.innodb_sys_tablespaces where name='test/t1';
|
select space into @t1_space_id from information_schema.innodb_sys_tablespaces where name='test/t1';
|
||||||
select space into @t2_space_id from information_schema.innodb_sys_tablespaces where name='test/t2';
|
select space into @t2_space_id from information_schema.innodb_sys_tablespaces where name='test/t2';
|
||||||
|
select space into @t3_space_id from information_schema.innodb_sys_tablespaces where name='test/t3';
|
||||||
|
|
||||||
begin;
|
begin;
|
||||||
insert into t1 values (6, repeat('%', 400));
|
insert into t1 values (6, repeat('%', 400));
|
||||||
insert into t2 values (6, repeat('%', 400));
|
insert into t2 values (6, repeat('%', 400));
|
||||||
|
insert into t3 values (6, repeat('%', 400));
|
||||||
|
|
||||||
# Copy the t1.ibd, t2.ibd file
|
# Copy the t1.ibd, t2.ibd, t3.ibd file
|
||||||
let $targetdir=$MYSQLTEST_VARDIR/tmp/backup_1;
|
let $targetdir=$MYSQLTEST_VARDIR/tmp/backup_1;
|
||||||
--disable_result_log
|
--disable_result_log
|
||||||
exec $XTRABACKUP --defaults-file=$MYSQLTEST_VARDIR/my.cnf --backup --skip-innodb-log-checkpoint-now --target-dir=$targetdir;
|
exec $XTRABACKUP --defaults-file=$MYSQLTEST_VARDIR/my.cnf --backup --skip-innodb-log-checkpoint-now --target-dir=$targetdir;
|
||||||
@ -54,8 +58,11 @@ set global innodb_fil_make_page_dirty_debug = @t1_space_id;
|
|||||||
set global innodb_saved_page_number_debug = 3;
|
set global innodb_saved_page_number_debug = 3;
|
||||||
set global innodb_fil_make_page_dirty_debug = @t2_space_id;
|
set global innodb_fil_make_page_dirty_debug = @t2_space_id;
|
||||||
|
|
||||||
|
set global innodb_saved_page_number_debug = 3;
|
||||||
|
set global innodb_fil_make_page_dirty_debug = @t3_space_id;
|
||||||
|
|
||||||
set global innodb_buf_flush_list_now = 1;
|
set global innodb_buf_flush_list_now = 1;
|
||||||
--let CLEANUP_IF_CHECKPOINT=drop table t1, t2, unexpected_checkpoint;
|
--let CLEANUP_IF_CHECKPOINT=drop table t1, t2, t3, unexpected_checkpoint;
|
||||||
--source ../../suite/innodb/include/no_checkpoint_end.inc
|
--source ../../suite/innodb/include/no_checkpoint_end.inc
|
||||||
# Corrupt the page 3 in t1.ibd, t2.ibd file
|
# Corrupt the page 3 in t1.ibd, t2.ibd file
|
||||||
perl;
|
perl;
|
||||||
@ -103,6 +110,15 @@ binmode FILE;
|
|||||||
sysseek(FILE, 3*$page_size, 0);
|
sysseek(FILE, 3*$page_size, 0);
|
||||||
print FILE chr(0) x ($ENV{'INNODB_PAGE_SIZE'});
|
print FILE chr(0) x ($ENV{'INNODB_PAGE_SIZE'});
|
||||||
close FILE;
|
close FILE;
|
||||||
|
|
||||||
|
# Zero the complete page
|
||||||
|
my $fname= "$ENV{'MYSQLD_DATADIR'}test/t3.ibd";
|
||||||
|
open(FILE, "+<", $fname) or die;
|
||||||
|
FILE->autoflush(1);
|
||||||
|
binmode FILE;
|
||||||
|
sysseek(FILE, 3*$page_size, 0);
|
||||||
|
print FILE chr(0) x ($ENV{'INNODB_PAGE_SIZE'});
|
||||||
|
close FILE;
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
# Successful recover from doublewrite buffer
|
# Successful recover from doublewrite buffer
|
||||||
@ -114,8 +130,10 @@ let SEARCH_PATTERN=InnoDB: Recovered page \\[page id: space=[1-9]*, page number=
|
|||||||
|
|
||||||
check table t1;
|
check table t1;
|
||||||
check table t2;
|
check table t2;
|
||||||
|
check table t3;
|
||||||
select f1, f2 from t1;
|
select f1, f2 from t1;
|
||||||
select f1, f2 from t2;
|
select f1, f2 from t2;
|
||||||
|
select f1, f2 from t3;
|
||||||
|
|
||||||
SET GLOBAL innodb_fast_shutdown = 0;
|
SET GLOBAL innodb_fast_shutdown = 0;
|
||||||
let $shutdown_timeout=;
|
let $shutdown_timeout=;
|
||||||
@ -220,4 +238,4 @@ select * from t1;
|
|||||||
|
|
||||||
--source ../../mariabackup/include/restart_and_restore.inc
|
--source ../../mariabackup/include/restart_and_restore.inc
|
||||||
select * from t1;
|
select * from t1;
|
||||||
drop table t2, t1;
|
drop table t3, t2, t1;
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
# Checking of other prerequisites is in charset_master.test #
|
# Checking of other prerequisites is in charset_master.test #
|
||||||
################################################################################
|
################################################################################
|
||||||
|
|
||||||
--source include/no_valgrind_without_big.inc
|
--source include/long_test.inc
|
||||||
--source include/have_innodb.inc
|
--source include/have_innodb.inc
|
||||||
|
|
||||||
# Starting with MariaDB 10.6, ensure that DDL recovery will have completed
|
# Starting with MariaDB 10.6, ensure that DDL recovery will have completed
|
||||||
|
@ -11,4 +11,8 @@
|
|||||||
##############################################################################
|
##############################################################################
|
||||||
|
|
||||||
galera_sequences : MDEV-35934/MDEV-33850 For Galera, create sequence with low cache got signal 6 error: [ERROR] WSREP: FSM: no such a transition REPLICATING -> COMMITTED
|
galera_sequences : MDEV-35934/MDEV-33850 For Galera, create sequence with low cache got signal 6 error: [ERROR] WSREP: FSM: no such a transition REPLICATING -> COMMITTED
|
||||||
|
galera_wan : MDEV-35940 Unallowed state transition: donor -> synced in galera_wan
|
||||||
|
galera_vote_rejoin_ddl : MDEV-35940 Unallowed state transition: donor -> synced in galera_wan
|
||||||
|
MW-329 : MDEV-35951 Complete freeze during MW-329 test
|
||||||
|
galera_vote_rejoin_dml : MDEV-35964 Assertion `ist_seqno >= cc_seqno' failed in galera_vote_rejoin_dml
|
||||||
MDEV-26266 : MDEV-26266
|
MDEV-26266 : MDEV-26266
|
||||||
|
@ -17,7 +17,7 @@ wsrep-on=1
|
|||||||
#ist_port=@OPT.port
|
#ist_port=@OPT.port
|
||||||
#sst_port=@OPT.port
|
#sst_port=@OPT.port
|
||||||
wsrep_cluster_address=gcomm://
|
wsrep_cluster_address=gcomm://
|
||||||
wsrep_provider_options='repl.causal_read_timeout=PT90S;base_port=@mysqld.1.#galera_port;evs.suspect_timeout=PT10S;evs.inactive_timeout=PT30S;evs.install_timeout=PT15S;gcache.size=10M'
|
wsrep_provider_options='repl.causal_read_timeout=PT90S;base_port=@mysqld.1.#galera_port;evs.suspect_timeout=PT10S;evs.inactive_timeout=PT30S;evs.install_timeout=PT15S;pc.wait_prim_timeout=PT60S;gcache.size=10M'
|
||||||
wsrep_node_address='127.0.0.1:@mysqld.1.#galera_port'
|
wsrep_node_address='127.0.0.1:@mysqld.1.#galera_port'
|
||||||
wsrep_node_incoming_address=127.0.0.1:@mysqld.1.port
|
wsrep_node_incoming_address=127.0.0.1:@mysqld.1.port
|
||||||
wsrep_sst_receive_address='127.0.0.1:@mysqld.1.#sst_port'
|
wsrep_sst_receive_address='127.0.0.1:@mysqld.1.#sst_port'
|
||||||
@ -28,7 +28,7 @@ wsrep-on=1
|
|||||||
#ist_port=@OPT.port
|
#ist_port=@OPT.port
|
||||||
#sst_port=@OPT.port
|
#sst_port=@OPT.port
|
||||||
wsrep_cluster_address='gcomm://127.0.0.1:@mysqld.1.#galera_port'
|
wsrep_cluster_address='gcomm://127.0.0.1:@mysqld.1.#galera_port'
|
||||||
wsrep_provider_options='repl.causal_read_timeout=PT90S;base_port=@mysqld.2.#galera_port;evs.suspect_timeout=PT10S;evs.inactive_timeout=PT30S;evs.install_timeout=PT15S;gcache.size=10M'
|
wsrep_provider_options='repl.causal_read_timeout=PT90S;base_port=@mysqld.2.#galera_port;evs.suspect_timeout=PT10S;evs.inactive_timeout=PT30S;evs.install_timeout=PT15S;pc.wait_prim_timeout=PT60S;gcache.size=10M'
|
||||||
wsrep_node_address='127.0.0.1:@mysqld.2.#galera_port'
|
wsrep_node_address='127.0.0.1:@mysqld.2.#galera_port'
|
||||||
wsrep_node_incoming_address=127.0.0.1:@mysqld.2.port
|
wsrep_node_incoming_address=127.0.0.1:@mysqld.2.port
|
||||||
wsrep_sst_receive_address='127.0.0.1:@mysqld.2.#sst_port'
|
wsrep_sst_receive_address='127.0.0.1:@mysqld.2.#sst_port'
|
||||||
|
@ -25,7 +25,7 @@ server-id=1
|
|||||||
#sst_port=@OPT.port
|
#sst_port=@OPT.port
|
||||||
wsrep_provider=@ENV.WSREP_PROVIDER
|
wsrep_provider=@ENV.WSREP_PROVIDER
|
||||||
wsrep_cluster_address=gcomm://
|
wsrep_cluster_address=gcomm://
|
||||||
wsrep_provider_options='repl.causal_read_timeout=PT90S;base_port=@mysqld.1.#galera_port;evs.suspect_timeout=PT10S;evs.inactive_timeout=PT30S;evs.install_timeout=PT15S;gcache.size=10M'
|
wsrep_provider_options='repl.causal_read_timeout=PT90S;base_port=@mysqld.1.#galera_port;evs.suspect_timeout=PT10S;evs.inactive_timeout=PT30S;evs.install_timeout=PT15S;pc.wait_prim_timeout=PT60S;gcache.size=10M'
|
||||||
wsrep_node_address='127.0.0.1:@mysqld.1.#galera_port'
|
wsrep_node_address='127.0.0.1:@mysqld.1.#galera_port'
|
||||||
wsrep_node_incoming_address=127.0.0.1:@mysqld.1.port
|
wsrep_node_incoming_address=127.0.0.1:@mysqld.1.port
|
||||||
wsrep_sst_receive_address='127.0.0.1:@mysqld.1.#sst_port'
|
wsrep_sst_receive_address='127.0.0.1:@mysqld.1.#sst_port'
|
||||||
@ -38,7 +38,7 @@ server-id=2
|
|||||||
#sst_port=@OPT.port
|
#sst_port=@OPT.port
|
||||||
wsrep_provider=@ENV.WSREP_PROVIDER
|
wsrep_provider=@ENV.WSREP_PROVIDER
|
||||||
wsrep_cluster_address='gcomm://127.0.0.1:@mysqld.1.#galera_port'
|
wsrep_cluster_address='gcomm://127.0.0.1:@mysqld.1.#galera_port'
|
||||||
wsrep_provider_options='repl.causal_read_timeout=PT90S;base_port=@mysqld.2.#galera_port;evs.suspect_timeout=PT10S;evs.inactive_timeout=PT30S;evs.install_timeout=PT15S;gcache.size=10M'
|
wsrep_provider_options='repl.causal_read_timeout=PT90S;base_port=@mysqld.2.#galera_port;evs.suspect_timeout=PT10S;evs.inactive_timeout=PT30S;evs.install_timeout=PT15S;pc.wait_prim_timeout=PT60S;gcache.size=10M'
|
||||||
wsrep_node_address='127.0.0.1:@mysqld.2.#galera_port'
|
wsrep_node_address='127.0.0.1:@mysqld.2.#galera_port'
|
||||||
wsrep_node_incoming_address=127.0.0.1:@mysqld.2.port
|
wsrep_node_incoming_address=127.0.0.1:@mysqld.2.port
|
||||||
wsrep_sst_receive_address='127.0.0.1:@mysqld.2.#sst_port'
|
wsrep_sst_receive_address='127.0.0.1:@mysqld.2.#sst_port'
|
||||||
|
@ -24,7 +24,7 @@ server-id=1
|
|||||||
#sst_port=@OPT.port
|
#sst_port=@OPT.port
|
||||||
wsrep_provider=@ENV.WSREP_PROVIDER
|
wsrep_provider=@ENV.WSREP_PROVIDER
|
||||||
wsrep_cluster_address=gcomm://
|
wsrep_cluster_address=gcomm://
|
||||||
wsrep_provider_options='repl.causal_read_timeout=PT90S;base_port=@mysqld.1.#galera_port;evs.suspect_timeout=PT10S;evs.inactive_timeout=PT30S;evs.install_timeout=PT15S;gcache.size=10M'
|
wsrep_provider_options='repl.causal_read_timeout=PT90S;base_port=@mysqld.1.#galera_port;evs.suspect_timeout=PT10S;evs.inactive_timeout=PT30S;evs.install_timeout=PT15S;pc.wait_prim_timeout=PT60S;gcache.size=10M'
|
||||||
wsrep_node_address='127.0.0.1:@mysqld.1.#galera_port'
|
wsrep_node_address='127.0.0.1:@mysqld.1.#galera_port'
|
||||||
wsrep_node_incoming_address=127.0.0.1:@mysqld.1.port
|
wsrep_node_incoming_address=127.0.0.1:@mysqld.1.port
|
||||||
wsrep_sst_receive_address='127.0.0.1:@mysqld.1.#sst_port'
|
wsrep_sst_receive_address='127.0.0.1:@mysqld.1.#sst_port'
|
||||||
@ -37,7 +37,7 @@ server-id=2
|
|||||||
#sst_port=@OPT.port
|
#sst_port=@OPT.port
|
||||||
wsrep_provider=@ENV.WSREP_PROVIDER
|
wsrep_provider=@ENV.WSREP_PROVIDER
|
||||||
wsrep_cluster_address='gcomm://127.0.0.1:@mysqld.1.#galera_port'
|
wsrep_cluster_address='gcomm://127.0.0.1:@mysqld.1.#galera_port'
|
||||||
wsrep_provider_options='repl.causal_read_timeout=PT90S;base_port=@mysqld.2.#galera_port;evs.suspect_timeout=PT10S;evs.inactive_timeout=PT30S;evs.install_timeout=PT15S;gcache.size=10M'
|
wsrep_provider_options='repl.causal_read_timeout=PT90S;base_port=@mysqld.2.#galera_port;evs.suspect_timeout=PT10S;evs.inactive_timeout=PT30S;evs.install_timeout=PT15S;pc.wait_prim_timeout=PT60S;gcache.size=10M'
|
||||||
wsrep_node_address='127.0.0.1:@mysqld.2.#galera_port'
|
wsrep_node_address='127.0.0.1:@mysqld.2.#galera_port'
|
||||||
wsrep_node_incoming_address=127.0.0.1:@mysqld.2.port
|
wsrep_node_incoming_address=127.0.0.1:@mysqld.2.port
|
||||||
wsrep_sst_receive_address='127.0.0.1:@mysqld.2.#sst_port'
|
wsrep_sst_receive_address='127.0.0.1:@mysqld.2.#sst_port'
|
||||||
|
@ -24,7 +24,7 @@ server-id=1
|
|||||||
#sst_port=@OPT.port
|
#sst_port=@OPT.port
|
||||||
wsrep_provider=@ENV.WSREP_PROVIDER
|
wsrep_provider=@ENV.WSREP_PROVIDER
|
||||||
wsrep_cluster_address=gcomm://
|
wsrep_cluster_address=gcomm://
|
||||||
wsrep_provider_options='repl.causal_read_timeout=PT90S;base_port=@mysqld.1.#galera_port;evs.suspect_timeout=PT10S;evs.inactive_timeout=PT30S;evs.install_timeout=PT15S;gcache.size=10M'
|
wsrep_provider_options='repl.causal_read_timeout=PT90S;base_port=@mysqld.1.#galera_port;evs.suspect_timeout=PT10S;evs.inactive_timeout=PT30S;evs.install_timeout=PT15S;pc.wait_prim_timeout=PT60S;gcache.size=10M'
|
||||||
wsrep_node_address='127.0.0.1:@mysqld.1.#galera_port'
|
wsrep_node_address='127.0.0.1:@mysqld.1.#galera_port'
|
||||||
wsrep_node_incoming_address=127.0.0.1:@mysqld.1.port
|
wsrep_node_incoming_address=127.0.0.1:@mysqld.1.port
|
||||||
wsrep_sst_receive_address='127.0.0.1:@mysqld.1.#sst_port'
|
wsrep_sst_receive_address='127.0.0.1:@mysqld.1.#sst_port'
|
||||||
@ -37,7 +37,7 @@ server-id=2
|
|||||||
#sst_port=@OPT.port
|
#sst_port=@OPT.port
|
||||||
wsrep_provider=@ENV.WSREP_PROVIDER
|
wsrep_provider=@ENV.WSREP_PROVIDER
|
||||||
wsrep_cluster_address='gcomm://127.0.0.1:@mysqld.1.#galera_port'
|
wsrep_cluster_address='gcomm://127.0.0.1:@mysqld.1.#galera_port'
|
||||||
wsrep_provider_options='repl.causal_read_timeout=PT90S;base_port=@mysqld.2.#galera_port;evs.suspect_timeout=PT10S;evs.inactive_timeout=PT30S;evs.install_timeout=PT15S;gcache.size=10M'
|
wsrep_provider_options='repl.causal_read_timeout=PT90S;base_port=@mysqld.2.#galera_port;evs.suspect_timeout=PT10S;evs.inactive_timeout=PT30S;evs.install_timeout=PT15S;pc.wait_prim_timeout=PT60S;gcache.size=10M'
|
||||||
wsrep_node_address='127.0.0.1:@mysqld.2.#galera_port'
|
wsrep_node_address='127.0.0.1:@mysqld.2.#galera_port'
|
||||||
wsrep_node_incoming_address=127.0.0.1:@mysqld.2.port
|
wsrep_node_incoming_address=127.0.0.1:@mysqld.2.port
|
||||||
wsrep_sst_receive_address='127.0.0.1:@mysqld.2.#sst_port'
|
wsrep_sst_receive_address='127.0.0.1:@mysqld.2.#sst_port'
|
||||||
|
@ -24,7 +24,7 @@ server-id=1
|
|||||||
#sst_port=@OPT.port
|
#sst_port=@OPT.port
|
||||||
wsrep_provider=@ENV.WSREP_PROVIDER
|
wsrep_provider=@ENV.WSREP_PROVIDER
|
||||||
wsrep_cluster_address=gcomm://
|
wsrep_cluster_address=gcomm://
|
||||||
wsrep_provider_options='repl.causal_read_timeout=PT90S;base_port=@mysqld.1.#galera_port;evs.suspect_timeout=PT10S;evs.inactive_timeout=PT30S;evs.install_timeout=PT15S;gcache.size=10M'
|
wsrep_provider_options='repl.causal_read_timeout=PT90S;base_port=@mysqld.1.#galera_port;evs.suspect_timeout=PT10S;evs.inactive_timeout=PT30S;evs.install_timeout=PT15S;pc.wait_prim_timeout=PT60S;gcache.size=10M'
|
||||||
wsrep_node_address='127.0.0.1:@mysqld.1.#galera_port'
|
wsrep_node_address='127.0.0.1:@mysqld.1.#galera_port'
|
||||||
wsrep_node_incoming_address=127.0.0.1:@mysqld.1.port
|
wsrep_node_incoming_address=127.0.0.1:@mysqld.1.port
|
||||||
wsrep_sst_receive_address='127.0.0.1:@mysqld.1.#sst_port'
|
wsrep_sst_receive_address='127.0.0.1:@mysqld.1.#sst_port'
|
||||||
@ -37,7 +37,7 @@ server-id=2
|
|||||||
#sst_port=@OPT.port
|
#sst_port=@OPT.port
|
||||||
wsrep_provider=@ENV.WSREP_PROVIDER
|
wsrep_provider=@ENV.WSREP_PROVIDER
|
||||||
wsrep_cluster_address='gcomm://127.0.0.1:@mysqld.1.#galera_port'
|
wsrep_cluster_address='gcomm://127.0.0.1:@mysqld.1.#galera_port'
|
||||||
wsrep_provider_options='repl.causal_read_timeout=PT90S;base_port=@mysqld.2.#galera_port;evs.suspect_timeout=PT10S;evs.inactive_timeout=PT30S;evs.install_timeout=PT15S;gcache.size=10M'
|
wsrep_provider_options='repl.causal_read_timeout=PT90S;base_port=@mysqld.2.#galera_port;evs.suspect_timeout=PT10S;evs.inactive_timeout=PT30S;evs.install_timeout=PT15S;pc.wait_prim_timeout=PT60S;gcache.size=10M'
|
||||||
wsrep_node_address='127.0.0.1:@mysqld.2.#galera_port'
|
wsrep_node_address='127.0.0.1:@mysqld.2.#galera_port'
|
||||||
wsrep_node_incoming_address=127.0.0.1:@mysqld.2.port
|
wsrep_node_incoming_address=127.0.0.1:@mysqld.2.port
|
||||||
wsrep_sst_receive_address='127.0.0.1:@mysqld.2.#sst_port'
|
wsrep_sst_receive_address='127.0.0.1:@mysqld.2.#sst_port'
|
||||||
@ -50,7 +50,7 @@ server-id=3
|
|||||||
#sst_port=@OPT.port
|
#sst_port=@OPT.port
|
||||||
wsrep-provider=@ENV.WSREP_PROVIDER
|
wsrep-provider=@ENV.WSREP_PROVIDER
|
||||||
wsrep_cluster_address='gcomm://127.0.0.1:@mysqld.1.#galera_port'
|
wsrep_cluster_address='gcomm://127.0.0.1:@mysqld.1.#galera_port'
|
||||||
wsrep_provider_options='repl.causal_read_timeout=PT90S;base_port=@mysqld.3.#galera_port;evs.suspect_timeout=PT10S;evs.inactive_timeout=PT30S;evs.install_timeout=PT15S;gcache.size=10M'
|
wsrep_provider_options='repl.causal_read_timeout=PT90S;base_port=@mysqld.3.#galera_port;evs.suspect_timeout=PT10S;evs.inactive_timeout=PT30S;evs.install_timeout=PT15S;pc.wait_prim_timeout=PT60S;gcache.size=10M'
|
||||||
wsrep_node_address='127.0.0.1:@mysqld.3.#galera_port'
|
wsrep_node_address='127.0.0.1:@mysqld.3.#galera_port'
|
||||||
wsrep_node_incoming_address=127.0.0.1:@mysqld.3.port
|
wsrep_node_incoming_address=127.0.0.1:@mysqld.3.port
|
||||||
wsrep_sst_receive_address='127.0.0.1:@mysqld.3.#sst_port'
|
wsrep_sst_receive_address='127.0.0.1:@mysqld.3.#sst_port'
|
||||||
|
@ -18,7 +18,7 @@ wsrep-on=1
|
|||||||
#ist_port=@OPT.port
|
#ist_port=@OPT.port
|
||||||
#sst_port=@OPT.port
|
#sst_port=@OPT.port
|
||||||
wsrep_cluster_address=gcomm://
|
wsrep_cluster_address=gcomm://
|
||||||
wsrep_provider_options='repl.causal_read_timeout=PT90S;base_port=@mysqld.1.#galera_port;evs.suspect_timeout=PT10S;evs.inactive_timeout=PT30S;evs.install_timeout=PT25S'
|
wsrep_provider_options='repl.causal_read_timeout=PT90S;base_port=@mysqld.1.#galera_port;evs.suspect_timeout=PT10S;evs.inactive_timeout=PT30S;evs.install_timeout=PT15S;pc.wait_prim_timeout=PT60S;gcache.size=10M'
|
||||||
wsrep_node_address='127.0.0.1:@mysqld.1.#galera_port'
|
wsrep_node_address='127.0.0.1:@mysqld.1.#galera_port'
|
||||||
wsrep_node_incoming_address=127.0.0.1:@mysqld.1.port
|
wsrep_node_incoming_address=127.0.0.1:@mysqld.1.port
|
||||||
wsrep_sst_receive_address='127.0.0.1:@mysqld.1.#sst_port'
|
wsrep_sst_receive_address='127.0.0.1:@mysqld.1.#sst_port'
|
||||||
@ -30,7 +30,7 @@ wsrep-on=1
|
|||||||
#ist_port=@OPT.port
|
#ist_port=@OPT.port
|
||||||
#sst_port=@OPT.port
|
#sst_port=@OPT.port
|
||||||
wsrep_cluster_address='gcomm://127.0.0.1:@mysqld.1.#galera_port'
|
wsrep_cluster_address='gcomm://127.0.0.1:@mysqld.1.#galera_port'
|
||||||
wsrep_provider_options='repl.causal_read_timeout=PT90S;base_port=@mysqld.2.#galera_port;evs.suspect_timeout=PT10S;evs.inactive_timeout=PT30S;evs.install_timeout=PT25S'
|
wsrep_provider_options='repl.causal_read_timeout=PT90S;base_port=@mysqld.2.#galera_port;evs.suspect_timeout=PT10S;evs.inactive_timeout=PT30S;evs.install_timeout=PT15S;pc.wait_prim_timeout=PT60S;gcache.size=10M'
|
||||||
wsrep_node_address='127.0.0.1:@mysqld.2.#galera_port'
|
wsrep_node_address='127.0.0.1:@mysqld.2.#galera_port'
|
||||||
wsrep_node_incoming_address=127.0.0.1:@mysqld.2.port
|
wsrep_node_incoming_address=127.0.0.1:@mysqld.2.port
|
||||||
wsrep_sst_receive_address='127.0.0.1:@mysqld.2.#sst_port'
|
wsrep_sst_receive_address='127.0.0.1:@mysqld.2.#sst_port'
|
||||||
@ -42,7 +42,7 @@ wsrep-on=1
|
|||||||
#ist_port=@OPT.port
|
#ist_port=@OPT.port
|
||||||
#sst_port=@OPT.port
|
#sst_port=@OPT.port
|
||||||
wsrep_cluster_address='gcomm://127.0.0.1:@mysqld.1.#galera_port'
|
wsrep_cluster_address='gcomm://127.0.0.1:@mysqld.1.#galera_port'
|
||||||
wsrep_provider_options='repl.causal_read_timeout=PT90S;base_port=@mysqld.3.#galera_port;evs.suspect_timeout=PT10S;evs.inactive_timeout=PT30S;evs.install_timeout=PT25S'
|
wsrep_provider_options='repl.causal_read_timeout=PT90S;base_port=@mysqld.3.#galera_port;evs.suspect_timeout=PT10S;evs.inactive_timeout=PT30S;evs.install_timeout=PT15S;pc.wait_prim_timeout=PT60S;gcache.size=10M'
|
||||||
wsrep_node_address='127.0.0.1:@mysqld.3.#galera_port'
|
wsrep_node_address='127.0.0.1:@mysqld.3.#galera_port'
|
||||||
wsrep_node_incoming_address=127.0.0.1:@mysqld.3.port
|
wsrep_node_incoming_address=127.0.0.1:@mysqld.3.port
|
||||||
wsrep_sst_receive_address='127.0.0.1:@mysqld.3.#sst_port'
|
wsrep_sst_receive_address='127.0.0.1:@mysqld.3.#sst_port'
|
||||||
@ -54,7 +54,7 @@ wsrep-on=1
|
|||||||
#ist_port=@OPT.port
|
#ist_port=@OPT.port
|
||||||
#sst_port=@OPT.port
|
#sst_port=@OPT.port
|
||||||
wsrep_cluster_address='gcomm://127.0.0.1:@mysqld.1.#galera_port'
|
wsrep_cluster_address='gcomm://127.0.0.1:@mysqld.1.#galera_port'
|
||||||
wsrep_provider_options='repl.causal_read_timeout=PT90S;base_port=@mysqld.4.#galera_port;evs.suspect_timeout=PT10S;evs.inactive_timeout=PT30S;evs.install_timeout=PT25S'
|
wsrep_provider_options='repl.causal_read_timeout=PT90S;base_port=@mysqld.4.#galera_port;evs.suspect_timeout=PT10S;evs.inactive_timeout=PT30S;evs.install_timeout=PT15S;pc.wait_prim_timeout=PT60S;gcache.size=10M'
|
||||||
wsrep_node_address='127.0.0.1:@mysqld.4.#galera_port'
|
wsrep_node_address='127.0.0.1:@mysqld.4.#galera_port'
|
||||||
wsrep_node_incoming_address=127.0.0.1:@mysqld.4.port
|
wsrep_node_incoming_address=127.0.0.1:@mysqld.4.port
|
||||||
wsrep_sst_receive_address='127.0.0.1:@mysqld.4.#sst_port'
|
wsrep_sst_receive_address='127.0.0.1:@mysqld.4.#sst_port'
|
||||||
|
@ -15,7 +15,7 @@ connection node_2a;
|
|||||||
SET GLOBAL debug_dbug = 'RESET';
|
SET GLOBAL debug_dbug = 'RESET';
|
||||||
SET DEBUG_SYNC = 'now SIGNAL signal.mdev_20225_continue';
|
SET DEBUG_SYNC = 'now SIGNAL signal.mdev_20225_continue';
|
||||||
SET DEBUG_SYNC = 'RESET';
|
SET DEBUG_SYNC = 'RESET';
|
||||||
SET GLOBAL wsrep_slave_threads = 1;
|
SET GLOBAL wsrep_slave_threads = DEFAULT;
|
||||||
connection node_2;
|
connection node_2;
|
||||||
SHOW TRIGGERS;
|
SHOW TRIGGERS;
|
||||||
Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation
|
Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation
|
||||||
|
@ -41,4 +41,4 @@ connection node_1;
|
|||||||
ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
|
ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
|
||||||
SET debug_sync = "RESET";
|
SET debug_sync = "RESET";
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
SET GLOBAL wsrep_slave_threads = 1;
|
SET GLOBAL wsrep_slave_threads = DEFAULT;
|
||||||
|
@ -15,3 +15,4 @@ SET GLOBAL wsrep_slave_threads=1;
|
|||||||
SELECT @@wsrep_slave_threads;
|
SELECT @@wsrep_slave_threads;
|
||||||
@@wsrep_slave_threads
|
@@wsrep_slave_threads
|
||||||
1
|
1
|
||||||
|
connection node_2;
|
||||||
|
@ -18,5 +18,6 @@ connection node_1b;
|
|||||||
connection node_1;
|
connection node_1;
|
||||||
DROP PROCEDURE proc_insert;
|
DROP PROCEDURE proc_insert;
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
|
disconnect node_1b;
|
||||||
CALL mtr.add_suppression("WSREP: .* conflict state after post commit ");
|
CALL mtr.add_suppression("WSREP: .* conflict state after post commit ");
|
||||||
set global innodb_status_output=Default;
|
set global innodb_status_output=Default;
|
||||||
|
25
mysql-test/suite/galera/r/MW-329F.result
Normal file
25
mysql-test/suite/galera/r/MW-329F.result
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
connection node_2;
|
||||||
|
connection node_1;
|
||||||
|
CREATE TABLE t1 (f1 INTEGER, f2 CHAR(20) DEFAULT 'abc') ENGINE=InnoDB;
|
||||||
|
INSERT INTO t1 (f1) VALUES (1),(65535);
|
||||||
|
CREATE PROCEDURE proc_insert (repeat_count int)
|
||||||
|
BEGIN
|
||||||
|
DECLARE current_num int;
|
||||||
|
DECLARE CONTINUE HANDLER FOR SQLEXCEPTION BEGIN END;
|
||||||
|
SET current_num = 0;
|
||||||
|
SET SESSION wsrep_sync_wait = 0;
|
||||||
|
WHILE current_num < repeat_count do
|
||||||
|
INSERT INTO t1 (f1) VALUES (FLOOR( 1 + RAND( ) * 65535 ));
|
||||||
|
SELECT SLEEP(0.1);
|
||||||
|
SET current_num = current_num + 1;
|
||||||
|
END WHILE;
|
||||||
|
END|
|
||||||
|
connect node_1b, 127.0.0.1, root, , test, $NODE_MYPORT_1;
|
||||||
|
connection node_1b;
|
||||||
|
connection node_1b;
|
||||||
|
connection node_1;
|
||||||
|
DROP PROCEDURE proc_insert;
|
||||||
|
DROP TABLE t1;
|
||||||
|
disconnect node_1b;
|
||||||
|
CALL mtr.add_suppression("WSREP: .* conflict state after post commit ");
|
||||||
|
set global innodb_status_output=Default;
|
@ -20,13 +20,13 @@ ALTER VIEW vw AS SELECT 1;
|
|||||||
Got one of the listed errors
|
Got one of the listed errors
|
||||||
CREATE DATABASE db;
|
CREATE DATABASE db;
|
||||||
Got one of the listed errors
|
Got one of the listed errors
|
||||||
CREATE EVENT ev1 ON SCHEDULE AT CURRENT_TIMESTAMP DO SELECT 1;
|
CREATE EVENT ev1 ON SCHEDULE AT CURRENT_TIMESTAMP DO SELECT 1;
|
||||||
Got one of the listed errors
|
Got one of the listed errors
|
||||||
CREATE FUNCTION fun1() RETURNS int RETURN(1);
|
CREATE FUNCTION fun1() RETURNS int RETURN(1);
|
||||||
Got one of the listed errors
|
Got one of the listed errors
|
||||||
CREATE FUNCTION fun1 RETURNS STRING SONAME 'funlib.so';
|
CREATE FUNCTION fun1 RETURNS STRING SONAME 'funlib.so';
|
||||||
Got one of the listed errors
|
Got one of the listed errors
|
||||||
CREATE PROCEDURE proc1() BEGIN END;
|
CREATE PROCEDURE proc1() BEGIN END;
|
||||||
Got one of the listed errors
|
Got one of the listed errors
|
||||||
CREATE INDEX idx ON tbl(id);
|
CREATE INDEX idx ON tbl(id);
|
||||||
Got one of the listed errors
|
Got one of the listed errors
|
||||||
@ -100,3 +100,4 @@ mysql
|
|||||||
performance_schema
|
performance_schema
|
||||||
sys
|
sys
|
||||||
test
|
test
|
||||||
|
disconnect userMW416;
|
||||||
|
@ -13,7 +13,7 @@ connection node_1;
|
|||||||
SELECT 1 FROM DUAL;
|
SELECT 1 FROM DUAL;
|
||||||
1
|
1
|
||||||
1
|
1
|
||||||
SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE = 'Waiting for table metadata lock';
|
SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND (STATE LIKE 'Waiting for table metadata lock%' OR STATE LIKE 'Waiting to execute in isolation%');
|
||||||
COUNT(*) = 1
|
COUNT(*) = 1
|
||||||
1
|
1
|
||||||
UNLOCK TABLES;
|
UNLOCK TABLES;
|
||||||
@ -25,7 +25,7 @@ t1 CREATE TABLE `t1` (
|
|||||||
`f2` int(11) DEFAULT NULL,
|
`f2` int(11) DEFAULT NULL,
|
||||||
PRIMARY KEY (`f1`)
|
PRIMARY KEY (`f1`)
|
||||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci
|
||||||
SELECT COUNT(*) = 0 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE = 'Waiting for table metadata lock';
|
SELECT COUNT(*) = 0 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND (STATE LIKE 'Waiting for table metadata lock%' OR STATE LIKE 'Waiting to execute in isolation%');
|
||||||
COUNT(*) = 0
|
COUNT(*) = 0
|
||||||
1
|
1
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
|
@ -27,7 +27,7 @@ STOP SLAVE;
|
|||||||
RESET SLAVE ALL;
|
RESET SLAVE ALL;
|
||||||
CALL mtr.add_suppression("Slave SQL: Error 'Unknown command' on query");
|
CALL mtr.add_suppression("Slave SQL: Error 'Unknown command' on query");
|
||||||
CALL mtr.add_suppression("Slave: Unknown command Error_code: 1047");
|
CALL mtr.add_suppression("Slave: Unknown command Error_code: 1047");
|
||||||
CALL mtr.add_suppression("Transport endpoint is not connected");
|
CALL mtr.add_suppression("(Transport endpoint|Socket) is not connected");
|
||||||
CALL mtr.add_suppression("Slave SQL: Error in Xid_log_event: Commit could not be completed, 'Deadlock found when trying to get lock; try restarting transaction', Error_code: 1213");
|
CALL mtr.add_suppression("Slave SQL: Error in Xid_log_event: Commit could not be completed, 'Deadlock found when trying to get lock; try restarting transaction', Error_code: 1213");
|
||||||
CALL mtr.add_suppression("Slave SQL: Node has dropped from cluster, Error_code: 1047");
|
CALL mtr.add_suppression("Slave SQL: Node has dropped from cluster, Error_code: 1047");
|
||||||
connection node_4;
|
connection node_4;
|
||||||
|
@ -1,685 +0,0 @@
|
|||||||
SET SESSION wsrep_sync_wait = 0;
|
|
||||||
galera_sr_bf_abort_at_commit = 0
|
|
||||||
after_replicate_sync
|
|
||||||
CREATE TABLE t1 (f1 INTEGER PRIMARY KEY) ENGINE=InnoDB;
|
|
||||||
SET SESSION wsrep_trx_fragment_size = 1;
|
|
||||||
SET AUTOCOMMIT=OFF;
|
|
||||||
INSERT INTO t1 VALUES (1);
|
|
||||||
SELECT * FROM t1 FOR UPDATE;
|
|
||||||
f1
|
|
||||||
1
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,apply_monitor_slave_enter_sync';
|
|
||||||
SET AUTOCOMMIT=ON;
|
|
||||||
INSERT INTO t1 VALUES (2);
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,after_replicate_sync';
|
|
||||||
INSERT INTO t1 VALUES (3);
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,abort_trx_end';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=apply_monitor_slave_enter_sync';
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=abort_trx_end';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=after_replicate_sync';
|
|
||||||
ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
|
|
||||||
ROLLBACK;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=abort_trx_end';
|
|
||||||
SELECT * FROM t1;
|
|
||||||
f1
|
|
||||||
2
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 2;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT * FROM t1;
|
|
||||||
f1
|
|
||||||
2
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 2;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 0 FROM mysql.wsrep_streaming_log;
|
|
||||||
COUNT(*) = 0
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 0 FROM mysql.wsrep_streaming_log;
|
|
||||||
COUNT(*) = 0
|
|
||||||
1
|
|
||||||
SET AUTOCOMMIT=ON;
|
|
||||||
SET SESSION wsrep_trx_fragment_size = 0;
|
|
||||||
DELETE FROM t1;
|
|
||||||
DROP TABLE t1;
|
|
||||||
local_monitor_master_enter_sync
|
|
||||||
CREATE TABLE t1 (f1 INTEGER PRIMARY KEY) ENGINE=InnoDB;
|
|
||||||
SET SESSION wsrep_trx_fragment_size = 1;
|
|
||||||
SET AUTOCOMMIT=OFF;
|
|
||||||
INSERT INTO t1 VALUES (1);
|
|
||||||
SELECT * FROM t1 FOR UPDATE;
|
|
||||||
f1
|
|
||||||
1
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,apply_monitor_slave_enter_sync';
|
|
||||||
SET AUTOCOMMIT=ON;
|
|
||||||
INSERT INTO t1 VALUES (2);
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,local_monitor_master_enter_sync';
|
|
||||||
INSERT INTO t1 VALUES (3);
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,abort_trx_end';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=apply_monitor_slave_enter_sync';
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=abort_trx_end';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=local_monitor_master_enter_sync';
|
|
||||||
ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
|
|
||||||
ROLLBACK;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=abort_trx_end';
|
|
||||||
SELECT * FROM t1;
|
|
||||||
f1
|
|
||||||
2
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 2;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT * FROM t1;
|
|
||||||
f1
|
|
||||||
2
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 2;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 0 FROM mysql.wsrep_streaming_log;
|
|
||||||
COUNT(*) = 0
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 0 FROM mysql.wsrep_streaming_log;
|
|
||||||
COUNT(*) = 0
|
|
||||||
1
|
|
||||||
SET AUTOCOMMIT=ON;
|
|
||||||
SET SESSION wsrep_trx_fragment_size = 0;
|
|
||||||
DELETE FROM t1;
|
|
||||||
DROP TABLE t1;
|
|
||||||
apply_monitor_master_enter_sync
|
|
||||||
CREATE TABLE t1 (f1 INTEGER PRIMARY KEY) ENGINE=InnoDB;
|
|
||||||
SET SESSION wsrep_trx_fragment_size = 1;
|
|
||||||
SET AUTOCOMMIT=OFF;
|
|
||||||
INSERT INTO t1 VALUES (1);
|
|
||||||
SELECT * FROM t1 FOR UPDATE;
|
|
||||||
f1
|
|
||||||
1
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,apply_monitor_slave_enter_sync';
|
|
||||||
SET AUTOCOMMIT=ON;
|
|
||||||
INSERT INTO t1 VALUES (2);
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,apply_monitor_master_enter_sync';
|
|
||||||
INSERT INTO t1 VALUES (3);
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,abort_trx_end';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=apply_monitor_slave_enter_sync';
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=abort_trx_end';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=apply_monitor_master_enter_sync';
|
|
||||||
ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
|
|
||||||
ROLLBACK;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=abort_trx_end';
|
|
||||||
SELECT * FROM t1;
|
|
||||||
f1
|
|
||||||
2
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 2;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT * FROM t1;
|
|
||||||
f1
|
|
||||||
2
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 2;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 0 FROM mysql.wsrep_streaming_log;
|
|
||||||
COUNT(*) = 0
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 0 FROM mysql.wsrep_streaming_log;
|
|
||||||
COUNT(*) = 0
|
|
||||||
1
|
|
||||||
SET AUTOCOMMIT=ON;
|
|
||||||
SET SESSION wsrep_trx_fragment_size = 0;
|
|
||||||
DELETE FROM t1;
|
|
||||||
DROP TABLE t1;
|
|
||||||
commit_monitor_master_enter_sync
|
|
||||||
CREATE TABLE t1 (f1 INTEGER PRIMARY KEY) ENGINE=InnoDB;
|
|
||||||
SET SESSION wsrep_trx_fragment_size = 1;
|
|
||||||
SET AUTOCOMMIT=OFF;
|
|
||||||
INSERT INTO t1 VALUES (1);
|
|
||||||
SELECT * FROM t1 FOR UPDATE;
|
|
||||||
f1
|
|
||||||
1
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,apply_monitor_slave_enter_sync';
|
|
||||||
SET AUTOCOMMIT=ON;
|
|
||||||
INSERT INTO t1 VALUES (2);
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,commit_monitor_master_enter_sync';
|
|
||||||
INSERT INTO t1 VALUES (3);
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,abort_trx_end';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=apply_monitor_slave_enter_sync';
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=abort_trx_end';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=commit_monitor_master_enter_sync';
|
|
||||||
ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
|
|
||||||
ROLLBACK;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=abort_trx_end';
|
|
||||||
SELECT * FROM t1;
|
|
||||||
f1
|
|
||||||
2
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 2;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT * FROM t1;
|
|
||||||
f1
|
|
||||||
2
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 2;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 0 FROM mysql.wsrep_streaming_log;
|
|
||||||
COUNT(*) = 0
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 0 FROM mysql.wsrep_streaming_log;
|
|
||||||
COUNT(*) = 0
|
|
||||||
1
|
|
||||||
SET AUTOCOMMIT=ON;
|
|
||||||
SET SESSION wsrep_trx_fragment_size = 0;
|
|
||||||
DELETE FROM t1;
|
|
||||||
DROP TABLE t1;
|
|
||||||
galera_sr_bf_abort_at_commit = 1
|
|
||||||
after_replicate_sync
|
|
||||||
CREATE TABLE t1 (f1 INTEGER PRIMARY KEY) ENGINE=InnoDB;
|
|
||||||
SET SESSION wsrep_trx_fragment_size = 1;
|
|
||||||
SET AUTOCOMMIT=OFF;
|
|
||||||
INSERT INTO t1 VALUES (1);
|
|
||||||
SELECT * FROM t1 FOR UPDATE;
|
|
||||||
f1
|
|
||||||
1
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,apply_monitor_slave_enter_sync';
|
|
||||||
SET AUTOCOMMIT=ON;
|
|
||||||
INSERT INTO t1 VALUES (2);
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,after_replicate_sync';
|
|
||||||
COMMIT;
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,abort_trx_end';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=apply_monitor_slave_enter_sync';
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=abort_trx_end';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=after_replicate_sync';
|
|
||||||
ROLLBACK;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=abort_trx_end';
|
|
||||||
SELECT * FROM t1;
|
|
||||||
f1
|
|
||||||
1
|
|
||||||
2
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 1;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 2;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT * FROM t1;
|
|
||||||
f1
|
|
||||||
1
|
|
||||||
2
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 1;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 2;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 0 FROM mysql.wsrep_streaming_log;
|
|
||||||
COUNT(*) = 0
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 0 FROM mysql.wsrep_streaming_log;
|
|
||||||
COUNT(*) = 0
|
|
||||||
1
|
|
||||||
SET AUTOCOMMIT=ON;
|
|
||||||
SET SESSION wsrep_trx_fragment_size = 0;
|
|
||||||
DELETE FROM t1;
|
|
||||||
DROP TABLE t1;
|
|
||||||
local_monitor_master_enter_sync
|
|
||||||
CREATE TABLE t1 (f1 INTEGER PRIMARY KEY) ENGINE=InnoDB;
|
|
||||||
SET SESSION wsrep_trx_fragment_size = 1;
|
|
||||||
SET AUTOCOMMIT=OFF;
|
|
||||||
INSERT INTO t1 VALUES (1);
|
|
||||||
SELECT * FROM t1 FOR UPDATE;
|
|
||||||
f1
|
|
||||||
1
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,apply_monitor_slave_enter_sync';
|
|
||||||
SET AUTOCOMMIT=ON;
|
|
||||||
INSERT INTO t1 VALUES (2);
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,local_monitor_master_enter_sync';
|
|
||||||
COMMIT;
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,abort_trx_end';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=apply_monitor_slave_enter_sync';
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=abort_trx_end';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=local_monitor_master_enter_sync';
|
|
||||||
ROLLBACK;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=abort_trx_end';
|
|
||||||
SELECT * FROM t1;
|
|
||||||
f1
|
|
||||||
1
|
|
||||||
2
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 1;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 2;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT * FROM t1;
|
|
||||||
f1
|
|
||||||
1
|
|
||||||
2
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 1;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 2;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 0 FROM mysql.wsrep_streaming_log;
|
|
||||||
COUNT(*) = 0
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 0 FROM mysql.wsrep_streaming_log;
|
|
||||||
COUNT(*) = 0
|
|
||||||
1
|
|
||||||
SET AUTOCOMMIT=ON;
|
|
||||||
SET SESSION wsrep_trx_fragment_size = 0;
|
|
||||||
DELETE FROM t1;
|
|
||||||
DROP TABLE t1;
|
|
||||||
apply_monitor_master_enter_sync
|
|
||||||
CREATE TABLE t1 (f1 INTEGER PRIMARY KEY) ENGINE=InnoDB;
|
|
||||||
SET SESSION wsrep_trx_fragment_size = 1;
|
|
||||||
SET AUTOCOMMIT=OFF;
|
|
||||||
INSERT INTO t1 VALUES (1);
|
|
||||||
SELECT * FROM t1 FOR UPDATE;
|
|
||||||
f1
|
|
||||||
1
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,apply_monitor_slave_enter_sync';
|
|
||||||
SET AUTOCOMMIT=ON;
|
|
||||||
INSERT INTO t1 VALUES (2);
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,apply_monitor_master_enter_sync';
|
|
||||||
COMMIT;
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,abort_trx_end';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=apply_monitor_slave_enter_sync';
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=abort_trx_end';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=apply_monitor_master_enter_sync';
|
|
||||||
ROLLBACK;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=abort_trx_end';
|
|
||||||
SELECT * FROM t1;
|
|
||||||
f1
|
|
||||||
1
|
|
||||||
2
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 1;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 2;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT * FROM t1;
|
|
||||||
f1
|
|
||||||
1
|
|
||||||
2
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 1;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 2;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 0 FROM mysql.wsrep_streaming_log;
|
|
||||||
COUNT(*) = 0
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 0 FROM mysql.wsrep_streaming_log;
|
|
||||||
COUNT(*) = 0
|
|
||||||
1
|
|
||||||
SET AUTOCOMMIT=ON;
|
|
||||||
SET SESSION wsrep_trx_fragment_size = 0;
|
|
||||||
DELETE FROM t1;
|
|
||||||
DROP TABLE t1;
|
|
||||||
commit_monitor_master_enter_sync
|
|
||||||
CREATE TABLE t1 (f1 INTEGER PRIMARY KEY) ENGINE=InnoDB;
|
|
||||||
SET SESSION wsrep_trx_fragment_size = 1;
|
|
||||||
SET AUTOCOMMIT=OFF;
|
|
||||||
INSERT INTO t1 VALUES (1);
|
|
||||||
SELECT * FROM t1 FOR UPDATE;
|
|
||||||
f1
|
|
||||||
1
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,apply_monitor_slave_enter_sync';
|
|
||||||
SET AUTOCOMMIT=ON;
|
|
||||||
INSERT INTO t1 VALUES (2);
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,commit_monitor_master_enter_sync';
|
|
||||||
COMMIT;
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,abort_trx_end';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=apply_monitor_slave_enter_sync';
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=abort_trx_end';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=commit_monitor_master_enter_sync';
|
|
||||||
ROLLBACK;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=abort_trx_end';
|
|
||||||
SELECT * FROM t1;
|
|
||||||
f1
|
|
||||||
1
|
|
||||||
2
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 1;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 2;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT * FROM t1;
|
|
||||||
f1
|
|
||||||
1
|
|
||||||
2
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 1;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 2;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 0 FROM mysql.wsrep_streaming_log;
|
|
||||||
COUNT(*) = 0
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 0 FROM mysql.wsrep_streaming_log;
|
|
||||||
COUNT(*) = 0
|
|
||||||
1
|
|
||||||
SET AUTOCOMMIT=ON;
|
|
||||||
SET SESSION wsrep_trx_fragment_size = 0;
|
|
||||||
DELETE FROM t1;
|
|
||||||
DROP TABLE t1;
|
|
||||||
galera_sr_bf_abort_at_commit = 1
|
|
||||||
after_replicate_sync
|
|
||||||
CREATE TABLE t1 (f1 INTEGER PRIMARY KEY) ENGINE=InnoDB;
|
|
||||||
SET SESSION wsrep_trx_fragment_size = 0;
|
|
||||||
SET AUTOCOMMIT=OFF;
|
|
||||||
INSERT INTO t1 VALUES (1);
|
|
||||||
SELECT * FROM t1 FOR UPDATE;
|
|
||||||
f1
|
|
||||||
1
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,apply_monitor_slave_enter_sync';
|
|
||||||
SET AUTOCOMMIT=ON;
|
|
||||||
INSERT INTO t1 VALUES (2);
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,after_replicate_sync';
|
|
||||||
COMMIT;
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,abort_trx_end';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=apply_monitor_slave_enter_sync';
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=abort_trx_end';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=after_replicate_sync';
|
|
||||||
ROLLBACK;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=abort_trx_end';
|
|
||||||
SELECT * FROM t1;
|
|
||||||
f1
|
|
||||||
1
|
|
||||||
2
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 1;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 2;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT * FROM t1;
|
|
||||||
f1
|
|
||||||
1
|
|
||||||
2
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 1;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 2;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 0 FROM mysql.wsrep_streaming_log;
|
|
||||||
COUNT(*) = 0
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 0 FROM mysql.wsrep_streaming_log;
|
|
||||||
COUNT(*) = 0
|
|
||||||
1
|
|
||||||
SET AUTOCOMMIT=ON;
|
|
||||||
SET SESSION wsrep_trx_fragment_size = 0;
|
|
||||||
DELETE FROM t1;
|
|
||||||
DROP TABLE t1;
|
|
||||||
local_monitor_master_enter_sync
|
|
||||||
CREATE TABLE t1 (f1 INTEGER PRIMARY KEY) ENGINE=InnoDB;
|
|
||||||
SET SESSION wsrep_trx_fragment_size = 0;
|
|
||||||
SET AUTOCOMMIT=OFF;
|
|
||||||
INSERT INTO t1 VALUES (1);
|
|
||||||
SELECT * FROM t1 FOR UPDATE;
|
|
||||||
f1
|
|
||||||
1
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,apply_monitor_slave_enter_sync';
|
|
||||||
SET AUTOCOMMIT=ON;
|
|
||||||
INSERT INTO t1 VALUES (2);
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,local_monitor_master_enter_sync';
|
|
||||||
COMMIT;
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,abort_trx_end';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=apply_monitor_slave_enter_sync';
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=abort_trx_end';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=local_monitor_master_enter_sync';
|
|
||||||
ROLLBACK;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=abort_trx_end';
|
|
||||||
SELECT * FROM t1;
|
|
||||||
f1
|
|
||||||
1
|
|
||||||
2
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 1;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 2;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT * FROM t1;
|
|
||||||
f1
|
|
||||||
1
|
|
||||||
2
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 1;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 2;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 0 FROM mysql.wsrep_streaming_log;
|
|
||||||
COUNT(*) = 0
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 0 FROM mysql.wsrep_streaming_log;
|
|
||||||
COUNT(*) = 0
|
|
||||||
1
|
|
||||||
SET AUTOCOMMIT=ON;
|
|
||||||
SET SESSION wsrep_trx_fragment_size = 0;
|
|
||||||
DELETE FROM t1;
|
|
||||||
DROP TABLE t1;
|
|
||||||
apply_monitor_master_enter_sync
|
|
||||||
CREATE TABLE t1 (f1 INTEGER PRIMARY KEY) ENGINE=InnoDB;
|
|
||||||
SET SESSION wsrep_trx_fragment_size = 0;
|
|
||||||
SET AUTOCOMMIT=OFF;
|
|
||||||
INSERT INTO t1 VALUES (1);
|
|
||||||
SELECT * FROM t1 FOR UPDATE;
|
|
||||||
f1
|
|
||||||
1
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,apply_monitor_slave_enter_sync';
|
|
||||||
SET AUTOCOMMIT=ON;
|
|
||||||
INSERT INTO t1 VALUES (2);
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,apply_monitor_master_enter_sync';
|
|
||||||
COMMIT;
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,abort_trx_end';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=apply_monitor_slave_enter_sync';
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=abort_trx_end';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=apply_monitor_master_enter_sync';
|
|
||||||
ROLLBACK;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=abort_trx_end';
|
|
||||||
SELECT * FROM t1;
|
|
||||||
f1
|
|
||||||
1
|
|
||||||
2
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 1;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 2;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT * FROM t1;
|
|
||||||
f1
|
|
||||||
1
|
|
||||||
2
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 1;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 2;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 0 FROM mysql.wsrep_streaming_log;
|
|
||||||
COUNT(*) = 0
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 0 FROM mysql.wsrep_streaming_log;
|
|
||||||
COUNT(*) = 0
|
|
||||||
1
|
|
||||||
SET AUTOCOMMIT=ON;
|
|
||||||
SET SESSION wsrep_trx_fragment_size = 0;
|
|
||||||
DELETE FROM t1;
|
|
||||||
DROP TABLE t1;
|
|
||||||
commit_monitor_master_enter_sync
|
|
||||||
CREATE TABLE t1 (f1 INTEGER PRIMARY KEY) ENGINE=InnoDB;
|
|
||||||
SET SESSION wsrep_trx_fragment_size = 0;
|
|
||||||
SET AUTOCOMMIT=OFF;
|
|
||||||
INSERT INTO t1 VALUES (1);
|
|
||||||
SELECT * FROM t1 FOR UPDATE;
|
|
||||||
f1
|
|
||||||
1
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,apply_monitor_slave_enter_sync';
|
|
||||||
SET AUTOCOMMIT=ON;
|
|
||||||
INSERT INTO t1 VALUES (2);
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,commit_monitor_master_enter_sync';
|
|
||||||
COMMIT;
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,abort_trx_end';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=apply_monitor_slave_enter_sync';
|
|
||||||
SET SESSION wsrep_on = 0;
|
|
||||||
SET SESSION wsrep_on = 1;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=abort_trx_end';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=commit_monitor_master_enter_sync';
|
|
||||||
ROLLBACK;
|
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
|
||||||
SET GLOBAL wsrep_provider_options = 'signal=abort_trx_end';
|
|
||||||
SELECT * FROM t1;
|
|
||||||
f1
|
|
||||||
1
|
|
||||||
2
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 1;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 2;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT * FROM t1;
|
|
||||||
f1
|
|
||||||
1
|
|
||||||
2
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 1;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 2;
|
|
||||||
COUNT(*) = 1
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 0 FROM mysql.wsrep_streaming_log;
|
|
||||||
COUNT(*) = 0
|
|
||||||
1
|
|
||||||
SELECT COUNT(*) = 0 FROM mysql.wsrep_streaming_log;
|
|
||||||
COUNT(*) = 0
|
|
||||||
1
|
|
||||||
SET AUTOCOMMIT=ON;
|
|
||||||
SET SESSION wsrep_trx_fragment_size = 0;
|
|
||||||
DELETE FROM t1;
|
|
||||||
DROP TABLE t1;
|
|
||||||
CALL mtr.add_suppression("WSREP: fragment replication failed: 1");
|
|
@ -1,5 +1,5 @@
|
|||||||
--- a/home/panda/mariadb-10.5/mysql-test/suite/galera/r/galera_bf_kill.result
|
--- r/galera_bf_kill.result
|
||||||
+++ b/home/panda/mariadb-10.5/mysql-test/suite/galera/r/galera_bf_kill.reject
|
+++ r/galera_bf_kill,debug.reject
|
||||||
@@ -77,4 +77,34 @@ a b
|
@@ -77,4 +77,34 @@ a b
|
||||||
5 2
|
5 2
|
||||||
disconnect node_2a;
|
disconnect node_2a;
|
||||||
|
@ -1,11 +1,11 @@
|
|||||||
connection node_2;
|
connection node_2;
|
||||||
connection node_1;
|
connection node_1;
|
||||||
connection node_1;
|
connection node_1;
|
||||||
|
connection node_2;
|
||||||
|
connection node_1;
|
||||||
SET GLOBAL auto_increment_offset=1;
|
SET GLOBAL auto_increment_offset=1;
|
||||||
connection node_2;
|
connection node_2;
|
||||||
SET GLOBAL auto_increment_offset=2;
|
SET GLOBAL auto_increment_offset=2;
|
||||||
connection node_1;
|
|
||||||
connection node_2;
|
|
||||||
connection node_2;
|
connection node_2;
|
||||||
SET GLOBAL wsrep_forced_binlog_format='STATEMENT';
|
SET GLOBAL wsrep_forced_binlog_format='STATEMENT';
|
||||||
connection node_1;
|
connection node_1;
|
||||||
|
@ -298,6 +298,7 @@ DROP TABLE p1, p2;
|
|||||||
######################################################################
|
######################################################################
|
||||||
connection node_1;
|
connection node_1;
|
||||||
SET SESSION wsrep_sync_wait=0;
|
SET SESSION wsrep_sync_wait=0;
|
||||||
|
FLUSH STATUS;
|
||||||
CREATE TABLE p1 (pk INTEGER PRIMARY KEY, f2 CHAR(30));
|
CREATE TABLE p1 (pk INTEGER PRIMARY KEY, f2 CHAR(30));
|
||||||
INSERT INTO p1 VALUES (1, 'INITIAL VALUE');
|
INSERT INTO p1 VALUES (1, 'INITIAL VALUE');
|
||||||
CREATE TABLE p2 (pk INTEGER PRIMARY KEY, f2 CHAR(30));
|
CREATE TABLE p2 (pk INTEGER PRIMARY KEY, f2 CHAR(30));
|
||||||
@ -491,6 +492,7 @@ Note 1051 Unknown table 'test.tmp1,test.tmp2'
|
|||||||
######################################################################
|
######################################################################
|
||||||
connection node_1;
|
connection node_1;
|
||||||
SET SESSION wsrep_sync_wait=0;
|
SET SESSION wsrep_sync_wait=0;
|
||||||
|
FLUSH STATUS;
|
||||||
CREATE TABLE p1 (pk INTEGER PRIMARY KEY, f2 CHAR(30));
|
CREATE TABLE p1 (pk INTEGER PRIMARY KEY, f2 CHAR(30));
|
||||||
INSERT INTO p1 VALUES (1, 'INITIAL VALUE');
|
INSERT INTO p1 VALUES (1, 'INITIAL VALUE');
|
||||||
CREATE TABLE p2 (pk INTEGER PRIMARY KEY, f2 CHAR(30));
|
CREATE TABLE p2 (pk INTEGER PRIMARY KEY, f2 CHAR(30));
|
||||||
@ -684,6 +686,7 @@ Note 1051 Unknown table 'test.tmp1,test.tmp2'
|
|||||||
######################################################################
|
######################################################################
|
||||||
connection node_1;
|
connection node_1;
|
||||||
SET SESSION wsrep_sync_wait=0;
|
SET SESSION wsrep_sync_wait=0;
|
||||||
|
FLUSH STATUS;
|
||||||
CREATE TABLE p1 (pk INTEGER PRIMARY KEY, f2 CHAR(30));
|
CREATE TABLE p1 (pk INTEGER PRIMARY KEY, f2 CHAR(30));
|
||||||
INSERT INTO p1 VALUES (1, 'INITIAL VALUE');
|
INSERT INTO p1 VALUES (1, 'INITIAL VALUE');
|
||||||
CREATE TABLE p2 (pk INTEGER PRIMARY KEY, f2 CHAR(30));
|
CREATE TABLE p2 (pk INTEGER PRIMARY KEY, f2 CHAR(30));
|
||||||
|
@ -3,8 +3,11 @@ connection node_1;
|
|||||||
CREATE TABLE t1(id int not null primary key, b int) engine=InnoDB;
|
CREATE TABLE t1(id int not null primary key, b int) engine=InnoDB;
|
||||||
INSERT INTO t1 VALUES (0,0),(1,1),(2,2),(3,3);
|
INSERT INTO t1 VALUES (0,0),(1,1),(2,2),(3,3);
|
||||||
BEGIN;
|
BEGIN;
|
||||||
|
SET DEBUG_SYNC = 'wsrep_after_statement_enter SIGNAL blocked';
|
||||||
UPDATE t1 set b = 100 where id between 1 and 2;;
|
UPDATE t1 set b = 100 where id between 1 and 2;;
|
||||||
connect node_1b, 127.0.0.1, root, , test, $NODE_MYPORT_1;
|
connect node_1b, 127.0.0.1, root, , test, $NODE_MYPORT_1;
|
||||||
|
SET DEBUG_SYNC = 'now WAIT_FOR blocked';
|
||||||
|
SET DEBUG_SYNC = 'wsrep_after_statement_enter CLEAR';
|
||||||
connection node_1b;
|
connection node_1b;
|
||||||
SET @save_dbug = @@SESSION.debug_dbug;
|
SET @save_dbug = @@SESSION.debug_dbug;
|
||||||
SET @@SESSION.innodb_lock_wait_timeout=2;
|
SET @@SESSION.innodb_lock_wait_timeout=2;
|
||||||
@ -20,5 +23,6 @@ id b
|
|||||||
1 100
|
1 100
|
||||||
2 100
|
2 100
|
||||||
3 3
|
3 3
|
||||||
|
SET DEBUG_SYNC = 'RESET';
|
||||||
disconnect node_1b;
|
disconnect node_1b;
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
--- suite/galera/r/galera_ist_MDEV-28423.result 2022-06-13 09:40:33.073863796 +0300
|
--- r/galera_ist_MDEV-28423.result
|
||||||
+++ suite/galera/r/galera_ist_MDEV-28423.reject 2022-06-13 09:58:59.936874991 +0300
|
+++ r/galera_ist_MDEV-28423,debug.reject
|
||||||
@@ -517,3 +517,187 @@
|
@@ -517,3 +517,187 @@
|
||||||
1
|
1
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
--- suite/galera/r/galera_ist_MDEV-28583.result 2022-06-11 10:48:16.875034382 +0300
|
--- r/galera_ist_MDEV-28583.result
|
||||||
+++ suite/galera/r/galera_ist_MDEV-28583,debug.reject 2022-06-11 11:25:55.616481509 +0300
|
+++ r/galera_ist_MDEV-28583,debug.reject
|
||||||
@@ -517,3 +517,187 @@
|
@@ -517,3 +517,187 @@
|
||||||
1
|
1
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
|
@ -1,13 +1,12 @@
|
|||||||
--- r/galera_ist_mysqldump.result
|
--- r/galera_ist_mysqldump.result
|
||||||
+++ r/galera_ist_mysqldump,debug.reject
|
+++ r/galera_ist_mysqldump,debug.reject
|
||||||
@@ -354,11 +354,195 @@
|
@@ -354,6 +354,190 @@
|
||||||
1
|
1
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
COMMIT;
|
COMMIT;
|
||||||
+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;
|
+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");
|
|
||||||
+CREATE TABLE t1 (id int not null primary key,f1 CHAR(255)) ENGINE=InnoDB;
|
+CREATE TABLE t1 (id int not null primary key,f1 CHAR(255)) ENGINE=InnoDB;
|
||||||
+SET AUTOCOMMIT=OFF;
|
+SET AUTOCOMMIT=OFF;
|
||||||
+START TRANSACTION;
|
+START TRANSACTION;
|
||||||
@ -189,12 +188,6 @@
|
|||||||
+DROP TABLE t1;
|
+DROP TABLE t1;
|
||||||
+COMMIT;
|
+COMMIT;
|
||||||
+SET GLOBAL debug_dbug = $debug_orig;
|
+SET GLOBAL debug_dbug = $debug_orig;
|
||||||
+connection node_1;
|
connection node_1;
|
||||||
+CALL mtr.add_suppression("Slave SQL: Error 'The MariaDB 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 MariaDB 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;
|
|
||||||
-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 MariaDB server is running with the --skip-grant-tables option so it cannot execute this statement' on query");
|
|
||||||
CALL mtr.add_suppression("InnoDB: Error: Table \"mysql\"\\.\"innodb_index_stats\" not found");
|
|
||||||
CALL mtr.add_suppression("Can't open and lock time zone table");
|
|
||||||
CALL mtr.add_suppression("Can't open and lock privilege tables");
|
|
||||||
|
@ -1,15 +0,0 @@
|
|||||||
--- r/galera_ist_mysqldump.result
|
|
||||||
+++ r/galera_ist_mysqldump.reject
|
|
||||||
@@ -355,10 +355,10 @@
|
|
||||||
DROP TABLE t1;
|
|
||||||
COMMIT;
|
|
||||||
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 MariaDB server is running with the --skip-grant-tables option so it cannot execute this statement' on query");
|
|
||||||
DROP USER sst;
|
|
||||||
connection node_2;
|
|
||||||
-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 MariaDB server is running with the --skip-grant-tables option so it cannot execute this statement' on query");
|
|
||||||
CALL mtr.add_suppression("InnoDB: Error: Table \"mysql\"\\.\"innodb_index_stats\" not found");
|
|
||||||
CALL mtr.add_suppression("Can't open and lock time zone table");
|
|
||||||
CALL mtr.add_suppression("Can't open and lock privilege tables");
|
|
@ -355,10 +355,10 @@ COUNT(*) = 0
|
|||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
COMMIT;
|
COMMIT;
|
||||||
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 MariaDB 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;
|
||||||
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 MariaDB server is running with the --skip-grant-tables option so it cannot execute this statement' on query");
|
||||||
CALL mtr.add_suppression("InnoDB: Error: Table \"mysql\"\\.\"innodb_index_stats\" not found");
|
CALL mtr.add_suppression("InnoDB: Error: Table \"mysql\"\\.\"innodb_index_stats\" not found");
|
||||||
CALL mtr.add_suppression("Can't open and lock time zone table");
|
CALL mtr.add_suppression("Can't open and lock time zone table");
|
||||||
CALL mtr.add_suppression("Can't open and lock privilege tables");
|
CALL mtr.add_suppression("Can't open and lock privilege tables");
|
||||||
|
@ -8,7 +8,7 @@ connection node_2;
|
|||||||
SET SESSION wsrep_sync_wait = 0;
|
SET SESSION wsrep_sync_wait = 0;
|
||||||
SET GLOBAL wsrep_slave_threads = 2;
|
SET GLOBAL wsrep_slave_threads = 2;
|
||||||
***************************************************************
|
***************************************************************
|
||||||
scenario 1, conflicting UPDATE
|
scenario 1, conflicting UPDATE
|
||||||
***************************************************************
|
***************************************************************
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,commit_monitor_slave_enter_sync';
|
SET GLOBAL wsrep_provider_options = 'dbug=d,commit_monitor_slave_enter_sync';
|
||||||
connection node_1;
|
connection node_1;
|
||||||
@ -31,7 +31,7 @@ SET SESSION wsrep_on = 1;
|
|||||||
SET GLOBAL wsrep_provider_options = 'signal=commit_monitor_slave_enter_sync';
|
SET GLOBAL wsrep_provider_options = 'signal=commit_monitor_slave_enter_sync';
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=';
|
SET GLOBAL wsrep_provider_options = 'dbug=';
|
||||||
***************************************************************
|
***************************************************************
|
||||||
scenario 2, conflicting DELETE
|
scenario 2, conflicting DELETE
|
||||||
***************************************************************
|
***************************************************************
|
||||||
SET GLOBAL wsrep_provider_options = 'dbug=d,commit_monitor_slave_enter_sync';
|
SET GLOBAL wsrep_provider_options = 'dbug=d,commit_monitor_slave_enter_sync';
|
||||||
connection node_1;
|
connection node_1;
|
||||||
|
@ -10,10 +10,10 @@ INSERT INTO t1 VALUES (1);
|
|||||||
INSERT INTO t2 VALUES (1);
|
INSERT INTO t2 VALUES (1);
|
||||||
connection node_2a;
|
connection node_2a;
|
||||||
SET SESSION wsrep_sync_wait=0;
|
SET SESSION wsrep_sync_wait=0;
|
||||||
SELECT COUNT(*) AS EXPECT_1 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE (STATE LIKE 'Commit' or STATE = 'Waiting for certification');
|
SELECT COUNT(*) AS EXPECT_1 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND (STATE LIKE '%committing%' OR STATE LIKE 'Commit' OR STATE LIKE 'Waiting for certification');
|
||||||
EXPECT_1
|
EXPECT_1
|
||||||
1
|
1
|
||||||
SELECT COUNT(*) AS EXPECT_1 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE STATE LIKE '%Waiting for table metadata lock%';
|
SELECT COUNT(*) AS EXPECT_1 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND (STATE LIKE 'Waiting for table metadata lock%' OR STATE LIKE 'Waiting to execute in isolation%');
|
||||||
EXPECT_1
|
EXPECT_1
|
||||||
1
|
1
|
||||||
SELECT COUNT(*) AS EXPECT_0 FROM t1;
|
SELECT COUNT(*) AS EXPECT_0 FROM t1;
|
||||||
@ -32,9 +32,8 @@ EXPECT_1
|
|||||||
SELECT COUNT(*) AS EXPECT_1 FROM t2;
|
SELECT COUNT(*) AS EXPECT_1 FROM t2;
|
||||||
EXPECT_1
|
EXPECT_1
|
||||||
1
|
1
|
||||||
SELECT COUNT(*) AS EXPECT_2 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE (STATE LIKE '%committed%' or STATE = 'Waiting for certification');
|
SELECT COUNT(*) AS EXPECT_2 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND (STATE LIKE '%committed%' OR STATE LIKE 'Waiting for certification');
|
||||||
EXPECT_2
|
EXPECT_2
|
||||||
2
|
2
|
||||||
SET GLOBAL wsrep_slave_threads = 1;;
|
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
DROP TABLE t2;
|
DROP TABLE t2;
|
||||||
|
@ -34,6 +34,5 @@ expect_20
|
|||||||
SELECT COUNT(*) as expect_20 FROM t2;
|
SELECT COUNT(*) as expect_20 FROM t2;
|
||||||
expect_20
|
expect_20
|
||||||
20
|
20
|
||||||
SET GLOBAL wsrep_slave_threads = 1;;
|
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
DROP TABLE t2;
|
DROP TABLE t2;
|
||||||
|
@ -1,5 +1,10 @@
|
|||||||
connection node_2;
|
connection node_2;
|
||||||
connection node_1;
|
connection node_1;
|
||||||
|
connection node_2;
|
||||||
|
SET GLOBAL wsrep_ignore_apply_errors=0;
|
||||||
|
connect node_2a, 127.0.0.1, root, , test, $NODE_MYPORT_2;
|
||||||
|
connection node_2a;
|
||||||
|
SET SESSION wsrep_sync_wait=0;
|
||||||
SET GLOBAL wsrep_ignore_apply_errors=0;
|
SET GLOBAL wsrep_ignore_apply_errors=0;
|
||||||
SET SESSION AUTOCOMMIT=0;
|
SET SESSION AUTOCOMMIT=0;
|
||||||
SET SESSION max_error_count=0;
|
SET SESSION max_error_count=0;
|
||||||
@ -8,5 +13,4 @@ ERROR 42000: This version of MariaDB doesn't yet support 'non-InnoDB sequences i
|
|||||||
connection node_2;
|
connection node_2;
|
||||||
SHOW CREATE TABLE t0;
|
SHOW CREATE TABLE t0;
|
||||||
ERROR 42S02: Table 'test.t0' doesn't exist
|
ERROR 42S02: Table 'test.t0' doesn't exist
|
||||||
connection node_1;
|
disconnect node_2a;
|
||||||
SET GLOBAL wsrep_ignore_apply_errors=DEFAULT;
|
|
||||||
|
11
mysql-test/suite/galera/r/galera_sequences,binlogoff.rdiff
Normal file
11
mysql-test/suite/galera/r/galera_sequences,binlogoff.rdiff
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
--- r/galera_sequences.result
|
||||||
|
+++ r/galera_sequences,binlogoff.reject
|
||||||
|
@@ -313,7 +313,7 @@
|
||||||
|
7 4
|
||||||
|
SELECT NEXTVAL(t);
|
||||||
|
NEXTVAL(t)
|
||||||
|
-42
|
||||||
|
+2
|
||||||
|
connection node_1;
|
||||||
|
DROP TABLE t1;
|
||||||
|
DROP SEQUENCE t;
|
@ -279,6 +279,9 @@ NEXTVAL(t)
|
|||||||
connection node_1;
|
connection node_1;
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
DROP SEQUENCE t;
|
DROP SEQUENCE t;
|
||||||
|
connection node_2;
|
||||||
|
SET SESSION wsrep_sync_wait=15;
|
||||||
|
connection node_1;
|
||||||
CREATE SEQUENCE t INCREMENT BY 0 CACHE=20 ENGINE=INNODB;
|
CREATE SEQUENCE t INCREMENT BY 0 CACHE=20 ENGINE=INNODB;
|
||||||
CREATE TABLE t1(a int not null primary key default nextval(t), b int) engine=innodb;
|
CREATE TABLE t1(a int not null primary key default nextval(t), b int) engine=innodb;
|
||||||
BEGIN;
|
BEGIN;
|
||||||
@ -324,4 +327,14 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
|
|||||||
ALTER SEQUENCE IF EXISTS t MINVALUE=1;
|
ALTER SEQUENCE IF EXISTS t MINVALUE=1;
|
||||||
ERROR 42000: This version of MariaDB doesn't yet support 'CACHE without INCREMENT BY 0 in Galera cluster'
|
ERROR 42000: This version of MariaDB doesn't yet support 'CACHE without INCREMENT BY 0 in Galera cluster'
|
||||||
DROP TABLE t;
|
DROP TABLE t;
|
||||||
|
|
||||||
|
MDEV-32631:
|
||||||
|
|
||||||
|
CREATE OR REPLACE TABLE t1(c INT ) ENGINE=ARIA;
|
||||||
|
SET SESSION WSREP_OSU_METHOD=RSU;
|
||||||
|
INSERT INTO t1 SELECT seq,concat(seq,1) FROM seq_1_to_100;
|
||||||
|
ERROR 42000: This version of MariaDB doesn't yet support 'RSU on this table engine'
|
||||||
|
SET SESSION WSREP_OSU_METHOD=TOI;
|
||||||
|
DROP TABLE t1;
|
||||||
|
|
||||||
End of 10.5 tests
|
End of 10.5 tests
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
--- galera/r/galera_sst_mariabackup.result 2024-04-11 09:53:12.950512316 +0300
|
--- r/galera_sst_mariabackup.result
|
||||||
+++ galera/r/galera_sst_mariabackup,debug.reject 2024-04-11 10:00:36.771144955 +0300
|
+++ r/galera_sst_mariabackup,debug.reject
|
||||||
@@ -524,6 +524,190 @@
|
@@ -516,5 +516,189 @@
|
||||||
1
|
1
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
COMMIT;
|
COMMIT;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
--- r/galera_sst_mariabackup.result
|
--- r/galera_sst_mariabackup_force_recovery.result
|
||||||
+++ r/galera_sst_mariabackup,debug.reject
|
+++ r/galera_sst_mariabackup_force_recovery,debug.reject
|
||||||
@@ -516,5 +516,189 @@
|
@@ -516,5 +516,189 @@
|
||||||
1
|
1
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
|
@ -0,0 +1,210 @@
|
|||||||
|
--- r/galera_sst_mariabackup_gtid.result
|
||||||
|
+++ r/galera_sst_mariabackup_gtid,debug.reject
|
||||||
|
@@ -516,19 +516,203 @@
|
||||||
|
1
|
||||||
|
DROP TABLE t1;
|
||||||
|
COMMIT;
|
||||||
|
+Performing State Transfer on a server that has been killed and restarted
|
||||||
|
+while a DDL was in progress on it
|
||||||
|
+connection node_1;
|
||||||
|
+CREATE TABLE t1 (id int not null primary key,f1 CHAR(255)) ENGINE=InnoDB;
|
||||||
|
+SET AUTOCOMMIT=OFF;
|
||||||
|
+START TRANSACTION;
|
||||||
|
+INSERT INTO t1 VALUES (1,'node1_committed_before');
|
||||||
|
+INSERT INTO t1 VALUES (2,'node1_committed_before');
|
||||||
|
+INSERT INTO t1 VALUES (3,'node1_committed_before');
|
||||||
|
+INSERT INTO t1 VALUES (4,'node1_committed_before');
|
||||||
|
+INSERT INTO t1 VALUES (5,'node1_committed_before');
|
||||||
|
+connection node_2;
|
||||||
|
+START TRANSACTION;
|
||||||
|
+INSERT INTO t1 VALUES (6,'node2_committed_before');
|
||||||
|
+INSERT INTO t1 VALUES (7,'node2_committed_before');
|
||||||
|
+INSERT INTO t1 VALUES (8,'node2_committed_before');
|
||||||
|
+INSERT INTO t1 VALUES (9,'node2_committed_before');
|
||||||
|
+INSERT INTO t1 VALUES (10,'node2_committed_before');
|
||||||
|
+COMMIT;
|
||||||
|
+SET GLOBAL debug_dbug = 'd,sync.alter_opened_table';
|
||||||
|
+connection node_1;
|
||||||
|
+ALTER TABLE t1 ADD COLUMN f2 INTEGER;
|
||||||
|
+connection node_2;
|
||||||
|
+SET wsrep_sync_wait = 0;
|
||||||
|
+Killing server ...
|
||||||
|
+connection node_1;
|
||||||
|
+SET AUTOCOMMIT=OFF;
|
||||||
|
+START TRANSACTION;
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (11,'node1_committed_during');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (12,'node1_committed_during');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (13,'node1_committed_during');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (14,'node1_committed_during');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (15,'node1_committed_during');
|
||||||
|
+COMMIT;
|
||||||
|
+START TRANSACTION;
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (16,'node1_to_be_committed_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (17,'node1_to_be_committed_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (18,'node1_to_be_committed_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (19,'node1_to_be_committed_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (20,'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;
|
||||||
|
+START TRANSACTION;
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (21,'node1_to_be_rollbacked_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (22,'node1_to_be_rollbacked_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (23,'node1_to_be_rollbacked_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (24,'node1_to_be_rollbacked_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (25,'node1_to_be_rollbacked_after');
|
||||||
|
+connection node_2;
|
||||||
|
+Performing --wsrep-recover ...
|
||||||
|
+connection node_2;
|
||||||
|
+Starting server ...
|
||||||
|
+Using --wsrep-start-position when starting mysqld ...
|
||||||
|
+SET AUTOCOMMIT=OFF;
|
||||||
|
+START TRANSACTION;
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (26,'node2_committed_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (27,'node2_committed_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (28,'node2_committed_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (29,'node2_committed_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (30,'node2_committed_after');
|
||||||
|
+COMMIT;
|
||||||
|
+connection node_1;
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (31,'node1_to_be_committed_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (32,'node1_to_be_committed_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (33,'node1_to_be_committed_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (34,'node1_to_be_committed_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (35,'node1_to_be_committed_after');
|
||||||
|
+COMMIT;
|
||||||
|
+SET AUTOCOMMIT=OFF;
|
||||||
|
+START TRANSACTION;
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (36,'node1_committed_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (37,'node1_committed_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (38,'node1_committed_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (39,'node1_committed_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (40,'node1_committed_after');
|
||||||
|
+COMMIT;
|
||||||
|
+connection node_1a_galera_st_kill_slave_ddl;
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (41,'node1_to_be_rollbacked_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (42,'node1_to_be_rollbacked_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (43,'node1_to_be_rollbacked_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (44,'node1_to_be_rollbacked_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (45,'node1_to_be_rollbacked_after');
|
||||||
|
+ROLLBACK;
|
||||||
|
+SET AUTOCOMMIT=ON;
|
||||||
|
+SET SESSION wsrep_sync_wait=15;
|
||||||
|
+SELECT COUNT(*) AS EXPECT_3 FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 't1';
|
||||||
|
+EXPECT_3
|
||||||
|
+3
|
||||||
|
+SELECT COUNT(*) AS EXPECT_35 FROM t1;
|
||||||
|
+EXPECT_35
|
||||||
|
+35
|
||||||
|
+SELECT * FROM t1;
|
||||||
|
+id f1 f2
|
||||||
|
+1 node1_committed_before NULL
|
||||||
|
+2 node1_committed_before NULL
|
||||||
|
+3 node1_committed_before NULL
|
||||||
|
+4 node1_committed_before NULL
|
||||||
|
+5 node1_committed_before NULL
|
||||||
|
+6 node2_committed_before NULL
|
||||||
|
+7 node2_committed_before NULL
|
||||||
|
+8 node2_committed_before NULL
|
||||||
|
+9 node2_committed_before NULL
|
||||||
|
+10 node2_committed_before NULL
|
||||||
|
+11 node1_committed_during NULL
|
||||||
|
+12 node1_committed_during NULL
|
||||||
|
+13 node1_committed_during NULL
|
||||||
|
+14 node1_committed_during NULL
|
||||||
|
+15 node1_committed_during NULL
|
||||||
|
+16 node1_to_be_committed_after NULL
|
||||||
|
+17 node1_to_be_committed_after NULL
|
||||||
|
+18 node1_to_be_committed_after NULL
|
||||||
|
+19 node1_to_be_committed_after NULL
|
||||||
|
+20 node1_to_be_committed_after NULL
|
||||||
|
+26 node2_committed_after NULL
|
||||||
|
+27 node2_committed_after NULL
|
||||||
|
+28 node2_committed_after NULL
|
||||||
|
+29 node2_committed_after NULL
|
||||||
|
+30 node2_committed_after NULL
|
||||||
|
+31 node1_to_be_committed_after NULL
|
||||||
|
+32 node1_to_be_committed_after NULL
|
||||||
|
+33 node1_to_be_committed_after NULL
|
||||||
|
+34 node1_to_be_committed_after NULL
|
||||||
|
+35 node1_to_be_committed_after NULL
|
||||||
|
+36 node1_committed_after NULL
|
||||||
|
+37 node1_committed_after NULL
|
||||||
|
+38 node1_committed_after NULL
|
||||||
|
+39 node1_committed_after NULL
|
||||||
|
+40 node1_committed_after NULL
|
||||||
|
+SELECT COUNT(*) = 0 FROM (SELECT COUNT(*) AS c, f1 FROM t1 GROUP BY f1 HAVING c NOT IN (5, 10)) AS a1;
|
||||||
|
+COUNT(*) = 0
|
||||||
|
+1
|
||||||
|
+COMMIT;
|
||||||
|
+connection node_1;
|
||||||
|
+SET AUTOCOMMIT=ON;
|
||||||
|
+SET SESSION wsrep_sync_wait=15;
|
||||||
|
+SELECT COUNT(*) AS EXPECT_3 FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 't1';
|
||||||
|
+EXPECT_3
|
||||||
|
+3
|
||||||
|
+SELECT COUNT(*) AS EXPECT_35 FROM t1;
|
||||||
|
+EXPECT_35
|
||||||
|
+35
|
||||||
|
+SELECT * FROM t1;
|
||||||
|
+id f1 f2
|
||||||
|
+1 node1_committed_before NULL
|
||||||
|
+2 node1_committed_before NULL
|
||||||
|
+3 node1_committed_before NULL
|
||||||
|
+4 node1_committed_before NULL
|
||||||
|
+5 node1_committed_before NULL
|
||||||
|
+6 node2_committed_before NULL
|
||||||
|
+7 node2_committed_before NULL
|
||||||
|
+8 node2_committed_before NULL
|
||||||
|
+9 node2_committed_before NULL
|
||||||
|
+10 node2_committed_before NULL
|
||||||
|
+11 node1_committed_during NULL
|
||||||
|
+12 node1_committed_during NULL
|
||||||
|
+13 node1_committed_during NULL
|
||||||
|
+14 node1_committed_during NULL
|
||||||
|
+15 node1_committed_during NULL
|
||||||
|
+16 node1_to_be_committed_after NULL
|
||||||
|
+17 node1_to_be_committed_after NULL
|
||||||
|
+18 node1_to_be_committed_after NULL
|
||||||
|
+19 node1_to_be_committed_after NULL
|
||||||
|
+20 node1_to_be_committed_after NULL
|
||||||
|
+26 node2_committed_after NULL
|
||||||
|
+27 node2_committed_after NULL
|
||||||
|
+28 node2_committed_after NULL
|
||||||
|
+29 node2_committed_after NULL
|
||||||
|
+30 node2_committed_after NULL
|
||||||
|
+31 node1_to_be_committed_after NULL
|
||||||
|
+32 node1_to_be_committed_after NULL
|
||||||
|
+33 node1_to_be_committed_after NULL
|
||||||
|
+34 node1_to_be_committed_after NULL
|
||||||
|
+35 node1_to_be_committed_after NULL
|
||||||
|
+36 node1_committed_after NULL
|
||||||
|
+37 node1_committed_after NULL
|
||||||
|
+38 node1_committed_after NULL
|
||||||
|
+39 node1_committed_after NULL
|
||||||
|
+40 node1_committed_after NULL
|
||||||
|
+SELECT COUNT(*) = 0 FROM (SELECT COUNT(*) AS c, f1 FROM t1 GROUP BY f1 HAVING c NOT IN (5, 10)) AS a1;
|
||||||
|
+COUNT(*) = 0
|
||||||
|
+1
|
||||||
|
+DROP TABLE t1;
|
||||||
|
+COMMIT;
|
||||||
|
+SET GLOBAL debug_dbug = $debug_orig;
|
||||||
|
connection node_1;
|
||||||
|
# Node_1
|
||||||
|
SHOW global variables like 'gtid%pos';
|
||||||
|
Variable_name Value
|
||||||
|
-gtid_binlog_pos 100-10-24
|
||||||
|
-gtid_current_pos 100-10-24
|
||||||
|
+gtid_binlog_pos 100-10-33
|
||||||
|
+gtid_current_pos 100-10-33
|
||||||
|
gtid_slave_pos
|
||||||
|
connection node_2;
|
||||||
|
# Node_2
|
||||||
|
SHOW global variables like 'gtid%pos';
|
||||||
|
Variable_name Value
|
||||||
|
-gtid_binlog_pos 100-10-24
|
||||||
|
-gtid_current_pos 100-10-24
|
||||||
|
+gtid_binlog_pos 100-10-33
|
||||||
|
+gtid_current_pos 100-10-33
|
||||||
|
gtid_slave_pos
|
||||||
|
disconnect node_2;
|
||||||
|
disconnect node_1;
|
534
mysql-test/suite/galera/r/galera_sst_mariabackup_gtid.result
Normal file
534
mysql-test/suite/galera/r/galera_sst_mariabackup_gtid.result
Normal file
@ -0,0 +1,534 @@
|
|||||||
|
connection node_2;
|
||||||
|
connection node_1;
|
||||||
|
connection node_1;
|
||||||
|
connection node_2;
|
||||||
|
Performing State Transfer on a server that has been shut down cleanly and restarted
|
||||||
|
connection node_1;
|
||||||
|
CREATE TABLE t1 (id int not null primary key,f1 CHAR(255)) ENGINE=InnoDB;
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (1,'node1_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (2,'node1_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (3,'node1_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (4,'node1_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (5,'node1_committed_before');
|
||||||
|
COMMIT;
|
||||||
|
connection node_2;
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (6,'node2_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (7,'node2_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (8,'node2_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (9,'node2_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (10,'node2_committed_before');
|
||||||
|
COMMIT;
|
||||||
|
Shutting down server ...
|
||||||
|
connection node_1;
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (11,'node1_committed_during');
|
||||||
|
INSERT INTO t1 VALUES (12,'node1_committed_during');
|
||||||
|
INSERT INTO t1 VALUES (13,'node1_committed_during');
|
||||||
|
INSERT INTO t1 VALUES (14,'node1_committed_during');
|
||||||
|
INSERT INTO t1 VALUES (15,'node1_committed_during');
|
||||||
|
COMMIT;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (16,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (17,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (18,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (19,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (20,'node1_to_be_committed_after');
|
||||||
|
connect node_1a_galera_st_shutdown_slave, 127.0.0.1, root, , test, $NODE_MYPORT_1;
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (21,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (22,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (23,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (24,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (25,'node1_to_be_rollbacked_after');
|
||||||
|
connection node_2;
|
||||||
|
Starting server ...
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (26,'node2_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (27,'node2_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (28,'node2_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (29,'node2_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (30,'node2_committed_after');
|
||||||
|
COMMIT;
|
||||||
|
connection node_1;
|
||||||
|
INSERT INTO t1 VALUES (31,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (32,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (33,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (34,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (35,'node1_to_be_committed_after');
|
||||||
|
COMMIT;
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (36,'node1_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (37,'node1_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (38,'node1_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (39,'node1_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (40,'node1_committed_after');
|
||||||
|
COMMIT;
|
||||||
|
connection node_1a_galera_st_shutdown_slave;
|
||||||
|
INSERT INTO t1 VALUES (41,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (42,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (43,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (44,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (45,'node1_to_be_rollbacked_after');
|
||||||
|
ROLLBACK;
|
||||||
|
SET AUTOCOMMIT=ON;
|
||||||
|
SET SESSION wsrep_sync_wait=15;
|
||||||
|
SELECT COUNT(*) AS EXPECT_15 FROM t1;
|
||||||
|
EXPECT_15
|
||||||
|
35
|
||||||
|
SELECT * from t1;
|
||||||
|
id f1
|
||||||
|
1 node1_committed_before
|
||||||
|
2 node1_committed_before
|
||||||
|
3 node1_committed_before
|
||||||
|
4 node1_committed_before
|
||||||
|
5 node1_committed_before
|
||||||
|
6 node2_committed_before
|
||||||
|
7 node2_committed_before
|
||||||
|
8 node2_committed_before
|
||||||
|
9 node2_committed_before
|
||||||
|
10 node2_committed_before
|
||||||
|
11 node1_committed_during
|
||||||
|
12 node1_committed_during
|
||||||
|
13 node1_committed_during
|
||||||
|
14 node1_committed_during
|
||||||
|
15 node1_committed_during
|
||||||
|
16 node1_to_be_committed_after
|
||||||
|
17 node1_to_be_committed_after
|
||||||
|
18 node1_to_be_committed_after
|
||||||
|
19 node1_to_be_committed_after
|
||||||
|
20 node1_to_be_committed_after
|
||||||
|
26 node2_committed_after
|
||||||
|
27 node2_committed_after
|
||||||
|
28 node2_committed_after
|
||||||
|
29 node2_committed_after
|
||||||
|
30 node2_committed_after
|
||||||
|
31 node1_to_be_committed_after
|
||||||
|
32 node1_to_be_committed_after
|
||||||
|
33 node1_to_be_committed_after
|
||||||
|
34 node1_to_be_committed_after
|
||||||
|
35 node1_to_be_committed_after
|
||||||
|
36 node1_committed_after
|
||||||
|
37 node1_committed_after
|
||||||
|
38 node1_committed_after
|
||||||
|
39 node1_committed_after
|
||||||
|
40 node1_committed_after
|
||||||
|
SELECT COUNT(*) = 0 FROM (SELECT COUNT(*) AS c, f1 FROM t1 GROUP BY f1 HAVING c NOT IN (5, 10)) AS a1;
|
||||||
|
COUNT(*) = 0
|
||||||
|
1
|
||||||
|
COMMIT;
|
||||||
|
connection node_1;
|
||||||
|
SET AUTOCOMMIT=ON;
|
||||||
|
SET SESSION wsrep_sync_wait=15;
|
||||||
|
SELECT COUNT(*) AS EXPECT_15 FROM t1;
|
||||||
|
EXPECT_15
|
||||||
|
35
|
||||||
|
SELECT * from t1;
|
||||||
|
id f1
|
||||||
|
1 node1_committed_before
|
||||||
|
2 node1_committed_before
|
||||||
|
3 node1_committed_before
|
||||||
|
4 node1_committed_before
|
||||||
|
5 node1_committed_before
|
||||||
|
6 node2_committed_before
|
||||||
|
7 node2_committed_before
|
||||||
|
8 node2_committed_before
|
||||||
|
9 node2_committed_before
|
||||||
|
10 node2_committed_before
|
||||||
|
11 node1_committed_during
|
||||||
|
12 node1_committed_during
|
||||||
|
13 node1_committed_during
|
||||||
|
14 node1_committed_during
|
||||||
|
15 node1_committed_during
|
||||||
|
16 node1_to_be_committed_after
|
||||||
|
17 node1_to_be_committed_after
|
||||||
|
18 node1_to_be_committed_after
|
||||||
|
19 node1_to_be_committed_after
|
||||||
|
20 node1_to_be_committed_after
|
||||||
|
26 node2_committed_after
|
||||||
|
27 node2_committed_after
|
||||||
|
28 node2_committed_after
|
||||||
|
29 node2_committed_after
|
||||||
|
30 node2_committed_after
|
||||||
|
31 node1_to_be_committed_after
|
||||||
|
32 node1_to_be_committed_after
|
||||||
|
33 node1_to_be_committed_after
|
||||||
|
34 node1_to_be_committed_after
|
||||||
|
35 node1_to_be_committed_after
|
||||||
|
36 node1_committed_after
|
||||||
|
37 node1_committed_after
|
||||||
|
38 node1_committed_after
|
||||||
|
39 node1_committed_after
|
||||||
|
40 node1_committed_after
|
||||||
|
SELECT COUNT(*) = 0 FROM (SELECT COUNT(*) AS c, f1 FROM t1 GROUP BY f1 HAVING c NOT IN (5, 10)) AS a1;
|
||||||
|
COUNT(*) = 0
|
||||||
|
1
|
||||||
|
DROP TABLE t1;
|
||||||
|
COMMIT;
|
||||||
|
Performing State Transfer on a server that starts from a clean var directory
|
||||||
|
This is accomplished by shutting down node #2 and removing its var directory before restarting it
|
||||||
|
connection node_1;
|
||||||
|
CREATE TABLE t1 (id int not null primary key,f1 CHAR(255)) ENGINE=InnoDB;
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (1,'node1_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (2,'node1_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (3,'node1_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (4,'node1_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (5,'node1_committed_before');
|
||||||
|
COMMIT;
|
||||||
|
connection node_2;
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (6,'node2_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (7,'node2_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (8,'node2_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (9,'node2_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (10,'node2_committed_before');
|
||||||
|
COMMIT;
|
||||||
|
Shutting down server ...
|
||||||
|
connection node_1;
|
||||||
|
Cleaning var directory ...
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (11,'node1_committed_during');
|
||||||
|
INSERT INTO t1 VALUES (12,'node1_committed_during');
|
||||||
|
INSERT INTO t1 VALUES (13,'node1_committed_during');
|
||||||
|
INSERT INTO t1 VALUES (14,'node1_committed_during');
|
||||||
|
INSERT INTO t1 VALUES (15,'node1_committed_during');
|
||||||
|
COMMIT;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (16,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (17,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (18,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (19,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (20,'node1_to_be_committed_after');
|
||||||
|
connect node_1a_galera_st_clean_slave, 127.0.0.1, root, , test, $NODE_MYPORT_1;
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (21,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (22,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (23,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (24,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (25,'node1_to_be_rollbacked_after');
|
||||||
|
connection node_2;
|
||||||
|
Starting server ...
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (26,'node2_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (27,'node2_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (28,'node2_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (29,'node2_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (30,'node2_committed_after');
|
||||||
|
COMMIT;
|
||||||
|
connection node_1;
|
||||||
|
INSERT INTO t1 VALUES (31,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (32,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (33,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (34,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (35,'node1_to_be_committed_after');
|
||||||
|
COMMIT;
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (36,'node1_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (37,'node1_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (38,'node1_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (39,'node1_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (40,'node1_committed_after');
|
||||||
|
COMMIT;
|
||||||
|
connection node_1a_galera_st_clean_slave;
|
||||||
|
INSERT INTO t1 VALUES (41,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (42,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (43,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (44,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (45,'node1_to_be_rollbacked_after');
|
||||||
|
ROLLBACK;
|
||||||
|
SET AUTOCOMMIT=ON;
|
||||||
|
SET SESSION wsrep_sync_wait=15;
|
||||||
|
SELECT COUNT(*) AS EXPECT_35 FROM t1;
|
||||||
|
EXPECT_35
|
||||||
|
35
|
||||||
|
SELECT * from t1;
|
||||||
|
id f1
|
||||||
|
1 node1_committed_before
|
||||||
|
2 node1_committed_before
|
||||||
|
3 node1_committed_before
|
||||||
|
4 node1_committed_before
|
||||||
|
5 node1_committed_before
|
||||||
|
6 node2_committed_before
|
||||||
|
7 node2_committed_before
|
||||||
|
8 node2_committed_before
|
||||||
|
9 node2_committed_before
|
||||||
|
10 node2_committed_before
|
||||||
|
11 node1_committed_during
|
||||||
|
12 node1_committed_during
|
||||||
|
13 node1_committed_during
|
||||||
|
14 node1_committed_during
|
||||||
|
15 node1_committed_during
|
||||||
|
16 node1_to_be_committed_after
|
||||||
|
17 node1_to_be_committed_after
|
||||||
|
18 node1_to_be_committed_after
|
||||||
|
19 node1_to_be_committed_after
|
||||||
|
20 node1_to_be_committed_after
|
||||||
|
26 node2_committed_after
|
||||||
|
27 node2_committed_after
|
||||||
|
28 node2_committed_after
|
||||||
|
29 node2_committed_after
|
||||||
|
30 node2_committed_after
|
||||||
|
31 node1_to_be_committed_after
|
||||||
|
32 node1_to_be_committed_after
|
||||||
|
33 node1_to_be_committed_after
|
||||||
|
34 node1_to_be_committed_after
|
||||||
|
35 node1_to_be_committed_after
|
||||||
|
36 node1_committed_after
|
||||||
|
37 node1_committed_after
|
||||||
|
38 node1_committed_after
|
||||||
|
39 node1_committed_after
|
||||||
|
40 node1_committed_after
|
||||||
|
SELECT COUNT(*) = 0 FROM (SELECT COUNT(*) AS c, f1 FROM t1 GROUP BY f1 HAVING c NOT IN (5, 10)) AS a1;
|
||||||
|
COUNT(*) = 0
|
||||||
|
1
|
||||||
|
COMMIT;
|
||||||
|
connection node_1;
|
||||||
|
SET AUTOCOMMIT=ON;
|
||||||
|
SET SESSION wsrep_sync_wait=15;
|
||||||
|
SELECT COUNT(*) AS EXPECT_35 FROM t1;
|
||||||
|
EXPECT_35
|
||||||
|
35
|
||||||
|
SELECT * from t1;
|
||||||
|
id f1
|
||||||
|
1 node1_committed_before
|
||||||
|
2 node1_committed_before
|
||||||
|
3 node1_committed_before
|
||||||
|
4 node1_committed_before
|
||||||
|
5 node1_committed_before
|
||||||
|
6 node2_committed_before
|
||||||
|
7 node2_committed_before
|
||||||
|
8 node2_committed_before
|
||||||
|
9 node2_committed_before
|
||||||
|
10 node2_committed_before
|
||||||
|
11 node1_committed_during
|
||||||
|
12 node1_committed_during
|
||||||
|
13 node1_committed_during
|
||||||
|
14 node1_committed_during
|
||||||
|
15 node1_committed_during
|
||||||
|
16 node1_to_be_committed_after
|
||||||
|
17 node1_to_be_committed_after
|
||||||
|
18 node1_to_be_committed_after
|
||||||
|
19 node1_to_be_committed_after
|
||||||
|
20 node1_to_be_committed_after
|
||||||
|
26 node2_committed_after
|
||||||
|
27 node2_committed_after
|
||||||
|
28 node2_committed_after
|
||||||
|
29 node2_committed_after
|
||||||
|
30 node2_committed_after
|
||||||
|
31 node1_to_be_committed_after
|
||||||
|
32 node1_to_be_committed_after
|
||||||
|
33 node1_to_be_committed_after
|
||||||
|
34 node1_to_be_committed_after
|
||||||
|
35 node1_to_be_committed_after
|
||||||
|
36 node1_committed_after
|
||||||
|
37 node1_committed_after
|
||||||
|
38 node1_committed_after
|
||||||
|
39 node1_committed_after
|
||||||
|
40 node1_committed_after
|
||||||
|
SELECT COUNT(*) = 0 FROM (SELECT COUNT(*) AS c, f1 FROM t1 GROUP BY f1 HAVING c NOT IN (5, 10)) AS a1;
|
||||||
|
COUNT(*) = 0
|
||||||
|
1
|
||||||
|
DROP TABLE t1;
|
||||||
|
COMMIT;
|
||||||
|
Performing State Transfer on a server that has been killed and restarted
|
||||||
|
connection node_1;
|
||||||
|
CREATE TABLE t1 (id int not null primary key,f1 CHAR(255)) ENGINE=InnoDB;
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (1,'node1_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (2,'node1_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (3,'node1_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (4,'node1_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (5,'node1_committed_before');
|
||||||
|
COMMIT;
|
||||||
|
connection node_2;
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (6,'node2_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (7,'node2_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (8,'node2_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (9,'node2_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (10,'node2_committed_before');
|
||||||
|
COMMIT;
|
||||||
|
Killing server ...
|
||||||
|
connection node_1;
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (11,'node1_committed_during');
|
||||||
|
INSERT INTO t1 VALUES (12,'node1_committed_during');
|
||||||
|
INSERT INTO t1 VALUES (13,'node1_committed_during');
|
||||||
|
INSERT INTO t1 VALUES (14,'node1_committed_during');
|
||||||
|
INSERT INTO t1 VALUES (15,'node1_committed_during');
|
||||||
|
COMMIT;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (16,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (17,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (18,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (19,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (20,'node1_to_be_committed_after');
|
||||||
|
connect node_1a_galera_st_kill_slave, 127.0.0.1, root, , test, $NODE_MYPORT_1;
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (21,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (22,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (23,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (24,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (25,'node1_to_be_rollbacked_after');
|
||||||
|
connection node_2;
|
||||||
|
Performing --wsrep-recover ...
|
||||||
|
Starting server ...
|
||||||
|
Using --wsrep-start-position when starting mysqld ...
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (26,'node2_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (27,'node2_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (28,'node2_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (29,'node2_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (30,'node2_committed_after');
|
||||||
|
COMMIT;
|
||||||
|
connection node_1;
|
||||||
|
INSERT INTO t1 VALUES (31,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (32,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (33,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (34,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (35,'node1_to_be_committed_after');
|
||||||
|
COMMIT;
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (36,'node1_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (37,'node1_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (38,'node1_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (39,'node1_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (40,'node1_committed_after');
|
||||||
|
COMMIT;
|
||||||
|
connection node_1a_galera_st_kill_slave;
|
||||||
|
INSERT INTO t1 VALUES (41,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (42,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (43,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (45,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (46,'node1_to_be_rollbacked_after');
|
||||||
|
ROLLBACK;
|
||||||
|
SET AUTOCOMMIT=ON;
|
||||||
|
SET SESSION wsrep_sync_wait=15;
|
||||||
|
SELECT COUNT(*) AS EXPECT_35 FROM t1;
|
||||||
|
EXPECT_35
|
||||||
|
35
|
||||||
|
SELECT * FROM t1;
|
||||||
|
id f1
|
||||||
|
1 node1_committed_before
|
||||||
|
2 node1_committed_before
|
||||||
|
3 node1_committed_before
|
||||||
|
4 node1_committed_before
|
||||||
|
5 node1_committed_before
|
||||||
|
6 node2_committed_before
|
||||||
|
7 node2_committed_before
|
||||||
|
8 node2_committed_before
|
||||||
|
9 node2_committed_before
|
||||||
|
10 node2_committed_before
|
||||||
|
11 node1_committed_during
|
||||||
|
12 node1_committed_during
|
||||||
|
13 node1_committed_during
|
||||||
|
14 node1_committed_during
|
||||||
|
15 node1_committed_during
|
||||||
|
16 node1_to_be_committed_after
|
||||||
|
17 node1_to_be_committed_after
|
||||||
|
18 node1_to_be_committed_after
|
||||||
|
19 node1_to_be_committed_after
|
||||||
|
20 node1_to_be_committed_after
|
||||||
|
26 node2_committed_after
|
||||||
|
27 node2_committed_after
|
||||||
|
28 node2_committed_after
|
||||||
|
29 node2_committed_after
|
||||||
|
30 node2_committed_after
|
||||||
|
31 node1_to_be_committed_after
|
||||||
|
32 node1_to_be_committed_after
|
||||||
|
33 node1_to_be_committed_after
|
||||||
|
34 node1_to_be_committed_after
|
||||||
|
35 node1_to_be_committed_after
|
||||||
|
36 node1_committed_after
|
||||||
|
37 node1_committed_after
|
||||||
|
38 node1_committed_after
|
||||||
|
39 node1_committed_after
|
||||||
|
40 node1_committed_after
|
||||||
|
SELECT COUNT(*) = 0 FROM (SELECT COUNT(*) AS c, f1 FROM t1 GROUP BY f1 HAVING c NOT IN (5, 10)) AS a1;
|
||||||
|
COUNT(*) = 0
|
||||||
|
1
|
||||||
|
COMMIT;
|
||||||
|
connection node_1;
|
||||||
|
SET AUTOCOMMIT=ON;
|
||||||
|
SET SESSION wsrep_sync_wait=15;
|
||||||
|
SELECT COUNT(*) AS EXPECT_35 FROM t1;
|
||||||
|
EXPECT_35
|
||||||
|
35
|
||||||
|
SELECT * FROM t1;
|
||||||
|
id f1
|
||||||
|
1 node1_committed_before
|
||||||
|
2 node1_committed_before
|
||||||
|
3 node1_committed_before
|
||||||
|
4 node1_committed_before
|
||||||
|
5 node1_committed_before
|
||||||
|
6 node2_committed_before
|
||||||
|
7 node2_committed_before
|
||||||
|
8 node2_committed_before
|
||||||
|
9 node2_committed_before
|
||||||
|
10 node2_committed_before
|
||||||
|
11 node1_committed_during
|
||||||
|
12 node1_committed_during
|
||||||
|
13 node1_committed_during
|
||||||
|
14 node1_committed_during
|
||||||
|
15 node1_committed_during
|
||||||
|
16 node1_to_be_committed_after
|
||||||
|
17 node1_to_be_committed_after
|
||||||
|
18 node1_to_be_committed_after
|
||||||
|
19 node1_to_be_committed_after
|
||||||
|
20 node1_to_be_committed_after
|
||||||
|
26 node2_committed_after
|
||||||
|
27 node2_committed_after
|
||||||
|
28 node2_committed_after
|
||||||
|
29 node2_committed_after
|
||||||
|
30 node2_committed_after
|
||||||
|
31 node1_to_be_committed_after
|
||||||
|
32 node1_to_be_committed_after
|
||||||
|
33 node1_to_be_committed_after
|
||||||
|
34 node1_to_be_committed_after
|
||||||
|
35 node1_to_be_committed_after
|
||||||
|
36 node1_committed_after
|
||||||
|
37 node1_committed_after
|
||||||
|
38 node1_committed_after
|
||||||
|
39 node1_committed_after
|
||||||
|
40 node1_committed_after
|
||||||
|
SELECT COUNT(*) = 0 FROM (SELECT COUNT(*) AS c, f1 FROM t1 GROUP BY f1 HAVING c NOT IN (5, 10)) AS a1;
|
||||||
|
COUNT(*) = 0
|
||||||
|
1
|
||||||
|
DROP TABLE t1;
|
||||||
|
COMMIT;
|
||||||
|
connection node_1;
|
||||||
|
# Node_1
|
||||||
|
SHOW global variables like 'gtid%pos';
|
||||||
|
Variable_name Value
|
||||||
|
gtid_binlog_pos 100-10-24
|
||||||
|
gtid_current_pos 100-10-24
|
||||||
|
gtid_slave_pos
|
||||||
|
connection node_2;
|
||||||
|
# Node_2
|
||||||
|
SHOW global variables like 'gtid%pos';
|
||||||
|
Variable_name Value
|
||||||
|
gtid_binlog_pos 100-10-24
|
||||||
|
gtid_current_pos 100-10-24
|
||||||
|
gtid_slave_pos
|
||||||
|
disconnect node_2;
|
||||||
|
disconnect node_1;
|
@ -1,5 +1,5 @@
|
|||||||
--- r/galera_sst_mariabackup_logarchive.result
|
--- r/galera_sst_mariabackup_logarchive.result
|
||||||
+++ r/galera_sst_mariabackup_logarchive.reject
|
+++ r/galera_sst_mariabackup_logarchive,debug.reject
|
||||||
@@ -516,5 +516,189 @@
|
@@ -516,5 +516,189 @@
|
||||||
1
|
1
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
|
@ -1,13 +1,12 @@
|
|||||||
--- r/galera_sst_mysqldump.result
|
--- r/galera_sst_mysqldump.result
|
||||||
+++ r/galera_sst_mysqldump,debug.reject
|
+++ r/galera_sst_mysqldump,debug.reject
|
||||||
@@ -698,11 +698,195 @@
|
@@ -698,6 +698,190 @@
|
||||||
1
|
1
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
COMMIT;
|
COMMIT;
|
||||||
+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;
|
+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");
|
|
||||||
+CREATE TABLE t1 (id int not null primary key,f1 CHAR(255)) ENGINE=InnoDB;
|
+CREATE TABLE t1 (id int not null primary key,f1 CHAR(255)) ENGINE=InnoDB;
|
||||||
+SET AUTOCOMMIT=OFF;
|
+SET AUTOCOMMIT=OFF;
|
||||||
+START TRANSACTION;
|
+START TRANSACTION;
|
||||||
@ -189,12 +188,6 @@
|
|||||||
+DROP TABLE t1;
|
+DROP TABLE t1;
|
||||||
+COMMIT;
|
+COMMIT;
|
||||||
+SET GLOBAL debug_dbug = $debug_orig;
|
+SET GLOBAL debug_dbug = $debug_orig;
|
||||||
+connection node_1;
|
connection node_1;
|
||||||
+CALL mtr.add_suppression("Slave SQL: Error 'The MariaDB 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 MariaDB 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;
|
|
||||||
-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 MariaDB server is running with the --skip-grant-tables option so it cannot execute this statement' on query");
|
|
||||||
CALL mtr.add_suppression("InnoDB: Error: Table \"mysql\"\\.\"innodb_index_stats\" not found");
|
|
||||||
CALL mtr.add_suppression("Can't open and lock time zone table");
|
|
||||||
CALL mtr.add_suppression("Can't open and lock privilege tables");
|
|
||||||
|
@ -1,15 +0,0 @@
|
|||||||
--- r/galera_sst_mysqldump.result
|
|
||||||
+++ r/galera_sst_mysqldump.reject
|
|
||||||
@@ -699,10 +699,10 @@
|
|
||||||
DROP TABLE t1;
|
|
||||||
COMMIT;
|
|
||||||
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 MariaDB server is running with the --skip-grant-tables option so it cannot execute this statement' on query");
|
|
||||||
DROP USER sst;
|
|
||||||
connection node_2;
|
|
||||||
-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 MariaDB server is running with the --skip-grant-tables option so it cannot execute this statement' on query");
|
|
||||||
CALL mtr.add_suppression("InnoDB: Error: Table \"mysql\"\\.\"innodb_index_stats\" not found");
|
|
||||||
CALL mtr.add_suppression("Can't open and lock time zone table");
|
|
||||||
CALL mtr.add_suppression("Can't open and lock privilege tables");
|
|
@ -699,10 +699,10 @@ COUNT(*) = 0
|
|||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
COMMIT;
|
COMMIT;
|
||||||
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 MariaDB 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;
|
||||||
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 MariaDB server is running with the --skip-grant-tables option so it cannot execute this statement' on query");
|
||||||
CALL mtr.add_suppression("InnoDB: Error: Table \"mysql\"\\.\"innodb_index_stats\" not found");
|
CALL mtr.add_suppression("InnoDB: Error: Table \"mysql\"\\.\"innodb_index_stats\" not found");
|
||||||
CALL mtr.add_suppression("Can't open and lock time zone table");
|
CALL mtr.add_suppression("Can't open and lock time zone table");
|
||||||
CALL mtr.add_suppression("Can't open and lock privilege tables");
|
CALL mtr.add_suppression("Can't open and lock privilege tables");
|
||||||
|
@ -1,13 +1,12 @@
|
|||||||
--- r/galera_sst_mysqldump_with_key.result
|
--- r/galera_sst_mysqldump_with_key.result
|
||||||
+++ r/galera_sst_mysqldump_with_key,debug.reject
|
+++ r/galera_sst_mysqldump_with_key,debug.reject
|
||||||
@@ -358,11 +358,195 @@
|
@@ -358,6 +358,190 @@
|
||||||
1
|
1
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
COMMIT;
|
COMMIT;
|
||||||
+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;
|
+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");
|
|
||||||
+CREATE TABLE t1 (id int not null primary key,f1 CHAR(255)) ENGINE=InnoDB;
|
+CREATE TABLE t1 (id int not null primary key,f1 CHAR(255)) ENGINE=InnoDB;
|
||||||
+SET AUTOCOMMIT=OFF;
|
+SET AUTOCOMMIT=OFF;
|
||||||
+START TRANSACTION;
|
+START TRANSACTION;
|
||||||
@ -189,12 +188,6 @@
|
|||||||
+DROP TABLE t1;
|
+DROP TABLE t1;
|
||||||
+COMMIT;
|
+COMMIT;
|
||||||
+SET GLOBAL debug_dbug = $debug_orig;
|
+SET GLOBAL debug_dbug = $debug_orig;
|
||||||
+connection node_1;
|
connection node_1;
|
||||||
+CALL mtr.add_suppression("Slave SQL: Error 'The MariaDB 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 MariaDB 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;
|
|
||||||
-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 MariaDB server is running with the --skip-grant-tables option so it cannot execute this statement' on query");
|
|
||||||
CALL mtr.add_suppression("InnoDB: Error: Table \"mysql\"\\.\"innodb_index_stats\" not found");
|
|
||||||
CALL mtr.add_suppression("Can't open and lock time zone table");
|
|
||||||
CALL mtr.add_suppression("Can't open and lock privilege tables");
|
|
||||||
|
@ -1,15 +0,0 @@
|
|||||||
--- r/galera_sst_mysqldump_with_key.result
|
|
||||||
+++ r/galera_sst_mysqldump_with_key.reject
|
|
||||||
@@ -359,10 +359,10 @@
|
|
||||||
DROP TABLE t1;
|
|
||||||
COMMIT;
|
|
||||||
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 MariaDB server is running with the --skip-grant-tables option so it cannot execute this statement' on query");
|
|
||||||
DROP USER sst;
|
|
||||||
connection node_2;
|
|
||||||
-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 MariaDB server is running with the --skip-grant-tables option so it cannot execute this statement' on query");
|
|
||||||
CALL mtr.add_suppression("InnoDB: Error: Table \"mysql\"\\.\"innodb_index_stats\" not found");
|
|
||||||
CALL mtr.add_suppression("Can't open and lock time zone table");
|
|
||||||
CALL mtr.add_suppression("Can't open and lock privilege tables");
|
|
@ -359,10 +359,10 @@ COUNT(*) = 0
|
|||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
COMMIT;
|
COMMIT;
|
||||||
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 MariaDB 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;
|
||||||
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 MariaDB server is running with the --skip-grant-tables option so it cannot execute this statement' on query");
|
||||||
CALL mtr.add_suppression("InnoDB: Error: Table \"mysql\"\\.\"innodb_index_stats\" not found");
|
CALL mtr.add_suppression("InnoDB: Error: Table \"mysql\"\\.\"innodb_index_stats\" not found");
|
||||||
CALL mtr.add_suppression("Can't open and lock time zone table");
|
CALL mtr.add_suppression("Can't open and lock time zone table");
|
||||||
CALL mtr.add_suppression("Can't open and lock privilege tables");
|
CALL mtr.add_suppression("Can't open and lock privilege tables");
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
--- galera_sst_rsync.result
|
--- galera_sst_rsync.result
|
||||||
+++ galera_sst_rsync.reject
|
+++ galera_sst_rsync,debug.reject
|
||||||
@@ -516,3 +516,187 @@
|
@@ -516,3 +516,187 @@
|
||||||
1
|
1
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
|
210
mysql-test/suite/galera/r/galera_sst_rsync_gtid,debug.rdiff
Normal file
210
mysql-test/suite/galera/r/galera_sst_rsync_gtid,debug.rdiff
Normal file
@ -0,0 +1,210 @@
|
|||||||
|
--- r/galera_sst_rsync_gtid.result
|
||||||
|
+++ r/galera_sst_rsync_gtid,debug.reject
|
||||||
|
@@ -516,19 +516,203 @@
|
||||||
|
1
|
||||||
|
DROP TABLE t1;
|
||||||
|
COMMIT;
|
||||||
|
+Performing State Transfer on a server that has been killed and restarted
|
||||||
|
+while a DDL was in progress on it
|
||||||
|
+connection node_1;
|
||||||
|
+CREATE TABLE t1 (id int not null primary key,f1 CHAR(255)) ENGINE=InnoDB;
|
||||||
|
+SET AUTOCOMMIT=OFF;
|
||||||
|
+START TRANSACTION;
|
||||||
|
+INSERT INTO t1 VALUES (1,'node1_committed_before');
|
||||||
|
+INSERT INTO t1 VALUES (2,'node1_committed_before');
|
||||||
|
+INSERT INTO t1 VALUES (3,'node1_committed_before');
|
||||||
|
+INSERT INTO t1 VALUES (4,'node1_committed_before');
|
||||||
|
+INSERT INTO t1 VALUES (5,'node1_committed_before');
|
||||||
|
+connection node_2;
|
||||||
|
+START TRANSACTION;
|
||||||
|
+INSERT INTO t1 VALUES (6,'node2_committed_before');
|
||||||
|
+INSERT INTO t1 VALUES (7,'node2_committed_before');
|
||||||
|
+INSERT INTO t1 VALUES (8,'node2_committed_before');
|
||||||
|
+INSERT INTO t1 VALUES (9,'node2_committed_before');
|
||||||
|
+INSERT INTO t1 VALUES (10,'node2_committed_before');
|
||||||
|
+COMMIT;
|
||||||
|
+SET GLOBAL debug_dbug = 'd,sync.alter_opened_table';
|
||||||
|
+connection node_1;
|
||||||
|
+ALTER TABLE t1 ADD COLUMN f2 INTEGER;
|
||||||
|
+connection node_2;
|
||||||
|
+SET wsrep_sync_wait = 0;
|
||||||
|
+Killing server ...
|
||||||
|
+connection node_1;
|
||||||
|
+SET AUTOCOMMIT=OFF;
|
||||||
|
+START TRANSACTION;
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (11,'node1_committed_during');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (12,'node1_committed_during');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (13,'node1_committed_during');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (14,'node1_committed_during');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (15,'node1_committed_during');
|
||||||
|
+COMMIT;
|
||||||
|
+START TRANSACTION;
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (16,'node1_to_be_committed_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (17,'node1_to_be_committed_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (18,'node1_to_be_committed_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (19,'node1_to_be_committed_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (20,'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;
|
||||||
|
+START TRANSACTION;
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (21,'node1_to_be_rollbacked_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (22,'node1_to_be_rollbacked_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (23,'node1_to_be_rollbacked_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (24,'node1_to_be_rollbacked_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (25,'node1_to_be_rollbacked_after');
|
||||||
|
+connection node_2;
|
||||||
|
+Performing --wsrep-recover ...
|
||||||
|
+connection node_2;
|
||||||
|
+Starting server ...
|
||||||
|
+Using --wsrep-start-position when starting mysqld ...
|
||||||
|
+SET AUTOCOMMIT=OFF;
|
||||||
|
+START TRANSACTION;
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (26,'node2_committed_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (27,'node2_committed_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (28,'node2_committed_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (29,'node2_committed_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (30,'node2_committed_after');
|
||||||
|
+COMMIT;
|
||||||
|
+connection node_1;
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (31,'node1_to_be_committed_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (32,'node1_to_be_committed_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (33,'node1_to_be_committed_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (34,'node1_to_be_committed_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (35,'node1_to_be_committed_after');
|
||||||
|
+COMMIT;
|
||||||
|
+SET AUTOCOMMIT=OFF;
|
||||||
|
+START TRANSACTION;
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (36,'node1_committed_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (37,'node1_committed_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (38,'node1_committed_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (39,'node1_committed_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (40,'node1_committed_after');
|
||||||
|
+COMMIT;
|
||||||
|
+connection node_1a_galera_st_kill_slave_ddl;
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (41,'node1_to_be_rollbacked_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (42,'node1_to_be_rollbacked_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (43,'node1_to_be_rollbacked_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (44,'node1_to_be_rollbacked_after');
|
||||||
|
+INSERT INTO t1 (id,f1) VALUES (45,'node1_to_be_rollbacked_after');
|
||||||
|
+ROLLBACK;
|
||||||
|
+SET AUTOCOMMIT=ON;
|
||||||
|
+SET SESSION wsrep_sync_wait=15;
|
||||||
|
+SELECT COUNT(*) AS EXPECT_3 FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 't1';
|
||||||
|
+EXPECT_3
|
||||||
|
+3
|
||||||
|
+SELECT COUNT(*) AS EXPECT_35 FROM t1;
|
||||||
|
+EXPECT_35
|
||||||
|
+35
|
||||||
|
+SELECT * FROM t1;
|
||||||
|
+id f1 f2
|
||||||
|
+1 node1_committed_before NULL
|
||||||
|
+2 node1_committed_before NULL
|
||||||
|
+3 node1_committed_before NULL
|
||||||
|
+4 node1_committed_before NULL
|
||||||
|
+5 node1_committed_before NULL
|
||||||
|
+6 node2_committed_before NULL
|
||||||
|
+7 node2_committed_before NULL
|
||||||
|
+8 node2_committed_before NULL
|
||||||
|
+9 node2_committed_before NULL
|
||||||
|
+10 node2_committed_before NULL
|
||||||
|
+11 node1_committed_during NULL
|
||||||
|
+12 node1_committed_during NULL
|
||||||
|
+13 node1_committed_during NULL
|
||||||
|
+14 node1_committed_during NULL
|
||||||
|
+15 node1_committed_during NULL
|
||||||
|
+16 node1_to_be_committed_after NULL
|
||||||
|
+17 node1_to_be_committed_after NULL
|
||||||
|
+18 node1_to_be_committed_after NULL
|
||||||
|
+19 node1_to_be_committed_after NULL
|
||||||
|
+20 node1_to_be_committed_after NULL
|
||||||
|
+26 node2_committed_after NULL
|
||||||
|
+27 node2_committed_after NULL
|
||||||
|
+28 node2_committed_after NULL
|
||||||
|
+29 node2_committed_after NULL
|
||||||
|
+30 node2_committed_after NULL
|
||||||
|
+31 node1_to_be_committed_after NULL
|
||||||
|
+32 node1_to_be_committed_after NULL
|
||||||
|
+33 node1_to_be_committed_after NULL
|
||||||
|
+34 node1_to_be_committed_after NULL
|
||||||
|
+35 node1_to_be_committed_after NULL
|
||||||
|
+36 node1_committed_after NULL
|
||||||
|
+37 node1_committed_after NULL
|
||||||
|
+38 node1_committed_after NULL
|
||||||
|
+39 node1_committed_after NULL
|
||||||
|
+40 node1_committed_after NULL
|
||||||
|
+SELECT COUNT(*) = 0 FROM (SELECT COUNT(*) AS c, f1 FROM t1 GROUP BY f1 HAVING c NOT IN (5, 10)) AS a1;
|
||||||
|
+COUNT(*) = 0
|
||||||
|
+1
|
||||||
|
+COMMIT;
|
||||||
|
+connection node_1;
|
||||||
|
+SET AUTOCOMMIT=ON;
|
||||||
|
+SET SESSION wsrep_sync_wait=15;
|
||||||
|
+SELECT COUNT(*) AS EXPECT_3 FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 't1';
|
||||||
|
+EXPECT_3
|
||||||
|
+3
|
||||||
|
+SELECT COUNT(*) AS EXPECT_35 FROM t1;
|
||||||
|
+EXPECT_35
|
||||||
|
+35
|
||||||
|
+SELECT * FROM t1;
|
||||||
|
+id f1 f2
|
||||||
|
+1 node1_committed_before NULL
|
||||||
|
+2 node1_committed_before NULL
|
||||||
|
+3 node1_committed_before NULL
|
||||||
|
+4 node1_committed_before NULL
|
||||||
|
+5 node1_committed_before NULL
|
||||||
|
+6 node2_committed_before NULL
|
||||||
|
+7 node2_committed_before NULL
|
||||||
|
+8 node2_committed_before NULL
|
||||||
|
+9 node2_committed_before NULL
|
||||||
|
+10 node2_committed_before NULL
|
||||||
|
+11 node1_committed_during NULL
|
||||||
|
+12 node1_committed_during NULL
|
||||||
|
+13 node1_committed_during NULL
|
||||||
|
+14 node1_committed_during NULL
|
||||||
|
+15 node1_committed_during NULL
|
||||||
|
+16 node1_to_be_committed_after NULL
|
||||||
|
+17 node1_to_be_committed_after NULL
|
||||||
|
+18 node1_to_be_committed_after NULL
|
||||||
|
+19 node1_to_be_committed_after NULL
|
||||||
|
+20 node1_to_be_committed_after NULL
|
||||||
|
+26 node2_committed_after NULL
|
||||||
|
+27 node2_committed_after NULL
|
||||||
|
+28 node2_committed_after NULL
|
||||||
|
+29 node2_committed_after NULL
|
||||||
|
+30 node2_committed_after NULL
|
||||||
|
+31 node1_to_be_committed_after NULL
|
||||||
|
+32 node1_to_be_committed_after NULL
|
||||||
|
+33 node1_to_be_committed_after NULL
|
||||||
|
+34 node1_to_be_committed_after NULL
|
||||||
|
+35 node1_to_be_committed_after NULL
|
||||||
|
+36 node1_committed_after NULL
|
||||||
|
+37 node1_committed_after NULL
|
||||||
|
+38 node1_committed_after NULL
|
||||||
|
+39 node1_committed_after NULL
|
||||||
|
+40 node1_committed_after NULL
|
||||||
|
+SELECT COUNT(*) = 0 FROM (SELECT COUNT(*) AS c, f1 FROM t1 GROUP BY f1 HAVING c NOT IN (5, 10)) AS a1;
|
||||||
|
+COUNT(*) = 0
|
||||||
|
+1
|
||||||
|
+DROP TABLE t1;
|
||||||
|
+COMMIT;
|
||||||
|
+SET GLOBAL debug_dbug = $debug_orig;
|
||||||
|
connection node_1;
|
||||||
|
# Node_1
|
||||||
|
SHOW global variables like 'gtid%pos';
|
||||||
|
Variable_name Value
|
||||||
|
-gtid_binlog_pos 100-10-24
|
||||||
|
-gtid_current_pos 100-10-24
|
||||||
|
+gtid_binlog_pos 100-10-33
|
||||||
|
+gtid_current_pos 100-10-33
|
||||||
|
gtid_slave_pos
|
||||||
|
connection node_2;
|
||||||
|
# Node_2
|
||||||
|
SHOW global variables like 'gtid%pos';
|
||||||
|
Variable_name Value
|
||||||
|
-gtid_binlog_pos 100-10-24
|
||||||
|
-gtid_current_pos 100-10-24
|
||||||
|
+gtid_binlog_pos 100-10-33
|
||||||
|
+gtid_current_pos 100-10-33
|
||||||
|
gtid_slave_pos
|
||||||
|
disconnect node_2;
|
||||||
|
disconnect node_1;
|
534
mysql-test/suite/galera/r/galera_sst_rsync_gtid.result
Normal file
534
mysql-test/suite/galera/r/galera_sst_rsync_gtid.result
Normal file
@ -0,0 +1,534 @@
|
|||||||
|
connection node_2;
|
||||||
|
connection node_1;
|
||||||
|
connection node_1;
|
||||||
|
connection node_2;
|
||||||
|
Performing State Transfer on a server that has been shut down cleanly and restarted
|
||||||
|
connection node_1;
|
||||||
|
CREATE TABLE t1 (id int not null primary key,f1 CHAR(255)) ENGINE=InnoDB;
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (1,'node1_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (2,'node1_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (3,'node1_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (4,'node1_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (5,'node1_committed_before');
|
||||||
|
COMMIT;
|
||||||
|
connection node_2;
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (6,'node2_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (7,'node2_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (8,'node2_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (9,'node2_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (10,'node2_committed_before');
|
||||||
|
COMMIT;
|
||||||
|
Shutting down server ...
|
||||||
|
connection node_1;
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (11,'node1_committed_during');
|
||||||
|
INSERT INTO t1 VALUES (12,'node1_committed_during');
|
||||||
|
INSERT INTO t1 VALUES (13,'node1_committed_during');
|
||||||
|
INSERT INTO t1 VALUES (14,'node1_committed_during');
|
||||||
|
INSERT INTO t1 VALUES (15,'node1_committed_during');
|
||||||
|
COMMIT;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (16,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (17,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (18,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (19,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (20,'node1_to_be_committed_after');
|
||||||
|
connect node_1a_galera_st_shutdown_slave, 127.0.0.1, root, , test, $NODE_MYPORT_1;
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (21,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (22,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (23,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (24,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (25,'node1_to_be_rollbacked_after');
|
||||||
|
connection node_2;
|
||||||
|
Starting server ...
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (26,'node2_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (27,'node2_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (28,'node2_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (29,'node2_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (30,'node2_committed_after');
|
||||||
|
COMMIT;
|
||||||
|
connection node_1;
|
||||||
|
INSERT INTO t1 VALUES (31,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (32,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (33,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (34,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (35,'node1_to_be_committed_after');
|
||||||
|
COMMIT;
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (36,'node1_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (37,'node1_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (38,'node1_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (39,'node1_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (40,'node1_committed_after');
|
||||||
|
COMMIT;
|
||||||
|
connection node_1a_galera_st_shutdown_slave;
|
||||||
|
INSERT INTO t1 VALUES (41,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (42,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (43,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (44,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (45,'node1_to_be_rollbacked_after');
|
||||||
|
ROLLBACK;
|
||||||
|
SET AUTOCOMMIT=ON;
|
||||||
|
SET SESSION wsrep_sync_wait=15;
|
||||||
|
SELECT COUNT(*) AS EXPECT_15 FROM t1;
|
||||||
|
EXPECT_15
|
||||||
|
35
|
||||||
|
SELECT * from t1;
|
||||||
|
id f1
|
||||||
|
1 node1_committed_before
|
||||||
|
2 node1_committed_before
|
||||||
|
3 node1_committed_before
|
||||||
|
4 node1_committed_before
|
||||||
|
5 node1_committed_before
|
||||||
|
6 node2_committed_before
|
||||||
|
7 node2_committed_before
|
||||||
|
8 node2_committed_before
|
||||||
|
9 node2_committed_before
|
||||||
|
10 node2_committed_before
|
||||||
|
11 node1_committed_during
|
||||||
|
12 node1_committed_during
|
||||||
|
13 node1_committed_during
|
||||||
|
14 node1_committed_during
|
||||||
|
15 node1_committed_during
|
||||||
|
16 node1_to_be_committed_after
|
||||||
|
17 node1_to_be_committed_after
|
||||||
|
18 node1_to_be_committed_after
|
||||||
|
19 node1_to_be_committed_after
|
||||||
|
20 node1_to_be_committed_after
|
||||||
|
26 node2_committed_after
|
||||||
|
27 node2_committed_after
|
||||||
|
28 node2_committed_after
|
||||||
|
29 node2_committed_after
|
||||||
|
30 node2_committed_after
|
||||||
|
31 node1_to_be_committed_after
|
||||||
|
32 node1_to_be_committed_after
|
||||||
|
33 node1_to_be_committed_after
|
||||||
|
34 node1_to_be_committed_after
|
||||||
|
35 node1_to_be_committed_after
|
||||||
|
36 node1_committed_after
|
||||||
|
37 node1_committed_after
|
||||||
|
38 node1_committed_after
|
||||||
|
39 node1_committed_after
|
||||||
|
40 node1_committed_after
|
||||||
|
SELECT COUNT(*) = 0 FROM (SELECT COUNT(*) AS c, f1 FROM t1 GROUP BY f1 HAVING c NOT IN (5, 10)) AS a1;
|
||||||
|
COUNT(*) = 0
|
||||||
|
1
|
||||||
|
COMMIT;
|
||||||
|
connection node_1;
|
||||||
|
SET AUTOCOMMIT=ON;
|
||||||
|
SET SESSION wsrep_sync_wait=15;
|
||||||
|
SELECT COUNT(*) AS EXPECT_15 FROM t1;
|
||||||
|
EXPECT_15
|
||||||
|
35
|
||||||
|
SELECT * from t1;
|
||||||
|
id f1
|
||||||
|
1 node1_committed_before
|
||||||
|
2 node1_committed_before
|
||||||
|
3 node1_committed_before
|
||||||
|
4 node1_committed_before
|
||||||
|
5 node1_committed_before
|
||||||
|
6 node2_committed_before
|
||||||
|
7 node2_committed_before
|
||||||
|
8 node2_committed_before
|
||||||
|
9 node2_committed_before
|
||||||
|
10 node2_committed_before
|
||||||
|
11 node1_committed_during
|
||||||
|
12 node1_committed_during
|
||||||
|
13 node1_committed_during
|
||||||
|
14 node1_committed_during
|
||||||
|
15 node1_committed_during
|
||||||
|
16 node1_to_be_committed_after
|
||||||
|
17 node1_to_be_committed_after
|
||||||
|
18 node1_to_be_committed_after
|
||||||
|
19 node1_to_be_committed_after
|
||||||
|
20 node1_to_be_committed_after
|
||||||
|
26 node2_committed_after
|
||||||
|
27 node2_committed_after
|
||||||
|
28 node2_committed_after
|
||||||
|
29 node2_committed_after
|
||||||
|
30 node2_committed_after
|
||||||
|
31 node1_to_be_committed_after
|
||||||
|
32 node1_to_be_committed_after
|
||||||
|
33 node1_to_be_committed_after
|
||||||
|
34 node1_to_be_committed_after
|
||||||
|
35 node1_to_be_committed_after
|
||||||
|
36 node1_committed_after
|
||||||
|
37 node1_committed_after
|
||||||
|
38 node1_committed_after
|
||||||
|
39 node1_committed_after
|
||||||
|
40 node1_committed_after
|
||||||
|
SELECT COUNT(*) = 0 FROM (SELECT COUNT(*) AS c, f1 FROM t1 GROUP BY f1 HAVING c NOT IN (5, 10)) AS a1;
|
||||||
|
COUNT(*) = 0
|
||||||
|
1
|
||||||
|
DROP TABLE t1;
|
||||||
|
COMMIT;
|
||||||
|
Performing State Transfer on a server that starts from a clean var directory
|
||||||
|
This is accomplished by shutting down node #2 and removing its var directory before restarting it
|
||||||
|
connection node_1;
|
||||||
|
CREATE TABLE t1 (id int not null primary key,f1 CHAR(255)) ENGINE=InnoDB;
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (1,'node1_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (2,'node1_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (3,'node1_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (4,'node1_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (5,'node1_committed_before');
|
||||||
|
COMMIT;
|
||||||
|
connection node_2;
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (6,'node2_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (7,'node2_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (8,'node2_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (9,'node2_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (10,'node2_committed_before');
|
||||||
|
COMMIT;
|
||||||
|
Shutting down server ...
|
||||||
|
connection node_1;
|
||||||
|
Cleaning var directory ...
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (11,'node1_committed_during');
|
||||||
|
INSERT INTO t1 VALUES (12,'node1_committed_during');
|
||||||
|
INSERT INTO t1 VALUES (13,'node1_committed_during');
|
||||||
|
INSERT INTO t1 VALUES (14,'node1_committed_during');
|
||||||
|
INSERT INTO t1 VALUES (15,'node1_committed_during');
|
||||||
|
COMMIT;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (16,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (17,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (18,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (19,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (20,'node1_to_be_committed_after');
|
||||||
|
connect node_1a_galera_st_clean_slave, 127.0.0.1, root, , test, $NODE_MYPORT_1;
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (21,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (22,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (23,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (24,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (25,'node1_to_be_rollbacked_after');
|
||||||
|
connection node_2;
|
||||||
|
Starting server ...
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (26,'node2_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (27,'node2_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (28,'node2_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (29,'node2_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (30,'node2_committed_after');
|
||||||
|
COMMIT;
|
||||||
|
connection node_1;
|
||||||
|
INSERT INTO t1 VALUES (31,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (32,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (33,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (34,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (35,'node1_to_be_committed_after');
|
||||||
|
COMMIT;
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (36,'node1_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (37,'node1_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (38,'node1_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (39,'node1_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (40,'node1_committed_after');
|
||||||
|
COMMIT;
|
||||||
|
connection node_1a_galera_st_clean_slave;
|
||||||
|
INSERT INTO t1 VALUES (41,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (42,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (43,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (44,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (45,'node1_to_be_rollbacked_after');
|
||||||
|
ROLLBACK;
|
||||||
|
SET AUTOCOMMIT=ON;
|
||||||
|
SET SESSION wsrep_sync_wait=15;
|
||||||
|
SELECT COUNT(*) AS EXPECT_35 FROM t1;
|
||||||
|
EXPECT_35
|
||||||
|
35
|
||||||
|
SELECT * from t1;
|
||||||
|
id f1
|
||||||
|
1 node1_committed_before
|
||||||
|
2 node1_committed_before
|
||||||
|
3 node1_committed_before
|
||||||
|
4 node1_committed_before
|
||||||
|
5 node1_committed_before
|
||||||
|
6 node2_committed_before
|
||||||
|
7 node2_committed_before
|
||||||
|
8 node2_committed_before
|
||||||
|
9 node2_committed_before
|
||||||
|
10 node2_committed_before
|
||||||
|
11 node1_committed_during
|
||||||
|
12 node1_committed_during
|
||||||
|
13 node1_committed_during
|
||||||
|
14 node1_committed_during
|
||||||
|
15 node1_committed_during
|
||||||
|
16 node1_to_be_committed_after
|
||||||
|
17 node1_to_be_committed_after
|
||||||
|
18 node1_to_be_committed_after
|
||||||
|
19 node1_to_be_committed_after
|
||||||
|
20 node1_to_be_committed_after
|
||||||
|
26 node2_committed_after
|
||||||
|
27 node2_committed_after
|
||||||
|
28 node2_committed_after
|
||||||
|
29 node2_committed_after
|
||||||
|
30 node2_committed_after
|
||||||
|
31 node1_to_be_committed_after
|
||||||
|
32 node1_to_be_committed_after
|
||||||
|
33 node1_to_be_committed_after
|
||||||
|
34 node1_to_be_committed_after
|
||||||
|
35 node1_to_be_committed_after
|
||||||
|
36 node1_committed_after
|
||||||
|
37 node1_committed_after
|
||||||
|
38 node1_committed_after
|
||||||
|
39 node1_committed_after
|
||||||
|
40 node1_committed_after
|
||||||
|
SELECT COUNT(*) = 0 FROM (SELECT COUNT(*) AS c, f1 FROM t1 GROUP BY f1 HAVING c NOT IN (5, 10)) AS a1;
|
||||||
|
COUNT(*) = 0
|
||||||
|
1
|
||||||
|
COMMIT;
|
||||||
|
connection node_1;
|
||||||
|
SET AUTOCOMMIT=ON;
|
||||||
|
SET SESSION wsrep_sync_wait=15;
|
||||||
|
SELECT COUNT(*) AS EXPECT_35 FROM t1;
|
||||||
|
EXPECT_35
|
||||||
|
35
|
||||||
|
SELECT * from t1;
|
||||||
|
id f1
|
||||||
|
1 node1_committed_before
|
||||||
|
2 node1_committed_before
|
||||||
|
3 node1_committed_before
|
||||||
|
4 node1_committed_before
|
||||||
|
5 node1_committed_before
|
||||||
|
6 node2_committed_before
|
||||||
|
7 node2_committed_before
|
||||||
|
8 node2_committed_before
|
||||||
|
9 node2_committed_before
|
||||||
|
10 node2_committed_before
|
||||||
|
11 node1_committed_during
|
||||||
|
12 node1_committed_during
|
||||||
|
13 node1_committed_during
|
||||||
|
14 node1_committed_during
|
||||||
|
15 node1_committed_during
|
||||||
|
16 node1_to_be_committed_after
|
||||||
|
17 node1_to_be_committed_after
|
||||||
|
18 node1_to_be_committed_after
|
||||||
|
19 node1_to_be_committed_after
|
||||||
|
20 node1_to_be_committed_after
|
||||||
|
26 node2_committed_after
|
||||||
|
27 node2_committed_after
|
||||||
|
28 node2_committed_after
|
||||||
|
29 node2_committed_after
|
||||||
|
30 node2_committed_after
|
||||||
|
31 node1_to_be_committed_after
|
||||||
|
32 node1_to_be_committed_after
|
||||||
|
33 node1_to_be_committed_after
|
||||||
|
34 node1_to_be_committed_after
|
||||||
|
35 node1_to_be_committed_after
|
||||||
|
36 node1_committed_after
|
||||||
|
37 node1_committed_after
|
||||||
|
38 node1_committed_after
|
||||||
|
39 node1_committed_after
|
||||||
|
40 node1_committed_after
|
||||||
|
SELECT COUNT(*) = 0 FROM (SELECT COUNT(*) AS c, f1 FROM t1 GROUP BY f1 HAVING c NOT IN (5, 10)) AS a1;
|
||||||
|
COUNT(*) = 0
|
||||||
|
1
|
||||||
|
DROP TABLE t1;
|
||||||
|
COMMIT;
|
||||||
|
Performing State Transfer on a server that has been killed and restarted
|
||||||
|
connection node_1;
|
||||||
|
CREATE TABLE t1 (id int not null primary key,f1 CHAR(255)) ENGINE=InnoDB;
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (1,'node1_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (2,'node1_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (3,'node1_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (4,'node1_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (5,'node1_committed_before');
|
||||||
|
COMMIT;
|
||||||
|
connection node_2;
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (6,'node2_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (7,'node2_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (8,'node2_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (9,'node2_committed_before');
|
||||||
|
INSERT INTO t1 VALUES (10,'node2_committed_before');
|
||||||
|
COMMIT;
|
||||||
|
Killing server ...
|
||||||
|
connection node_1;
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (11,'node1_committed_during');
|
||||||
|
INSERT INTO t1 VALUES (12,'node1_committed_during');
|
||||||
|
INSERT INTO t1 VALUES (13,'node1_committed_during');
|
||||||
|
INSERT INTO t1 VALUES (14,'node1_committed_during');
|
||||||
|
INSERT INTO t1 VALUES (15,'node1_committed_during');
|
||||||
|
COMMIT;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (16,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (17,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (18,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (19,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (20,'node1_to_be_committed_after');
|
||||||
|
connect node_1a_galera_st_kill_slave, 127.0.0.1, root, , test, $NODE_MYPORT_1;
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (21,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (22,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (23,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (24,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (25,'node1_to_be_rollbacked_after');
|
||||||
|
connection node_2;
|
||||||
|
Performing --wsrep-recover ...
|
||||||
|
Starting server ...
|
||||||
|
Using --wsrep-start-position when starting mysqld ...
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (26,'node2_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (27,'node2_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (28,'node2_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (29,'node2_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (30,'node2_committed_after');
|
||||||
|
COMMIT;
|
||||||
|
connection node_1;
|
||||||
|
INSERT INTO t1 VALUES (31,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (32,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (33,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (34,'node1_to_be_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (35,'node1_to_be_committed_after');
|
||||||
|
COMMIT;
|
||||||
|
SET AUTOCOMMIT=OFF;
|
||||||
|
START TRANSACTION;
|
||||||
|
INSERT INTO t1 VALUES (36,'node1_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (37,'node1_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (38,'node1_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (39,'node1_committed_after');
|
||||||
|
INSERT INTO t1 VALUES (40,'node1_committed_after');
|
||||||
|
COMMIT;
|
||||||
|
connection node_1a_galera_st_kill_slave;
|
||||||
|
INSERT INTO t1 VALUES (41,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (42,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (43,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (45,'node1_to_be_rollbacked_after');
|
||||||
|
INSERT INTO t1 VALUES (46,'node1_to_be_rollbacked_after');
|
||||||
|
ROLLBACK;
|
||||||
|
SET AUTOCOMMIT=ON;
|
||||||
|
SET SESSION wsrep_sync_wait=15;
|
||||||
|
SELECT COUNT(*) AS EXPECT_35 FROM t1;
|
||||||
|
EXPECT_35
|
||||||
|
35
|
||||||
|
SELECT * FROM t1;
|
||||||
|
id f1
|
||||||
|
1 node1_committed_before
|
||||||
|
2 node1_committed_before
|
||||||
|
3 node1_committed_before
|
||||||
|
4 node1_committed_before
|
||||||
|
5 node1_committed_before
|
||||||
|
6 node2_committed_before
|
||||||
|
7 node2_committed_before
|
||||||
|
8 node2_committed_before
|
||||||
|
9 node2_committed_before
|
||||||
|
10 node2_committed_before
|
||||||
|
11 node1_committed_during
|
||||||
|
12 node1_committed_during
|
||||||
|
13 node1_committed_during
|
||||||
|
14 node1_committed_during
|
||||||
|
15 node1_committed_during
|
||||||
|
16 node1_to_be_committed_after
|
||||||
|
17 node1_to_be_committed_after
|
||||||
|
18 node1_to_be_committed_after
|
||||||
|
19 node1_to_be_committed_after
|
||||||
|
20 node1_to_be_committed_after
|
||||||
|
26 node2_committed_after
|
||||||
|
27 node2_committed_after
|
||||||
|
28 node2_committed_after
|
||||||
|
29 node2_committed_after
|
||||||
|
30 node2_committed_after
|
||||||
|
31 node1_to_be_committed_after
|
||||||
|
32 node1_to_be_committed_after
|
||||||
|
33 node1_to_be_committed_after
|
||||||
|
34 node1_to_be_committed_after
|
||||||
|
35 node1_to_be_committed_after
|
||||||
|
36 node1_committed_after
|
||||||
|
37 node1_committed_after
|
||||||
|
38 node1_committed_after
|
||||||
|
39 node1_committed_after
|
||||||
|
40 node1_committed_after
|
||||||
|
SELECT COUNT(*) = 0 FROM (SELECT COUNT(*) AS c, f1 FROM t1 GROUP BY f1 HAVING c NOT IN (5, 10)) AS a1;
|
||||||
|
COUNT(*) = 0
|
||||||
|
1
|
||||||
|
COMMIT;
|
||||||
|
connection node_1;
|
||||||
|
SET AUTOCOMMIT=ON;
|
||||||
|
SET SESSION wsrep_sync_wait=15;
|
||||||
|
SELECT COUNT(*) AS EXPECT_35 FROM t1;
|
||||||
|
EXPECT_35
|
||||||
|
35
|
||||||
|
SELECT * FROM t1;
|
||||||
|
id f1
|
||||||
|
1 node1_committed_before
|
||||||
|
2 node1_committed_before
|
||||||
|
3 node1_committed_before
|
||||||
|
4 node1_committed_before
|
||||||
|
5 node1_committed_before
|
||||||
|
6 node2_committed_before
|
||||||
|
7 node2_committed_before
|
||||||
|
8 node2_committed_before
|
||||||
|
9 node2_committed_before
|
||||||
|
10 node2_committed_before
|
||||||
|
11 node1_committed_during
|
||||||
|
12 node1_committed_during
|
||||||
|
13 node1_committed_during
|
||||||
|
14 node1_committed_during
|
||||||
|
15 node1_committed_during
|
||||||
|
16 node1_to_be_committed_after
|
||||||
|
17 node1_to_be_committed_after
|
||||||
|
18 node1_to_be_committed_after
|
||||||
|
19 node1_to_be_committed_after
|
||||||
|
20 node1_to_be_committed_after
|
||||||
|
26 node2_committed_after
|
||||||
|
27 node2_committed_after
|
||||||
|
28 node2_committed_after
|
||||||
|
29 node2_committed_after
|
||||||
|
30 node2_committed_after
|
||||||
|
31 node1_to_be_committed_after
|
||||||
|
32 node1_to_be_committed_after
|
||||||
|
33 node1_to_be_committed_after
|
||||||
|
34 node1_to_be_committed_after
|
||||||
|
35 node1_to_be_committed_after
|
||||||
|
36 node1_committed_after
|
||||||
|
37 node1_committed_after
|
||||||
|
38 node1_committed_after
|
||||||
|
39 node1_committed_after
|
||||||
|
40 node1_committed_after
|
||||||
|
SELECT COUNT(*) = 0 FROM (SELECT COUNT(*) AS c, f1 FROM t1 GROUP BY f1 HAVING c NOT IN (5, 10)) AS a1;
|
||||||
|
COUNT(*) = 0
|
||||||
|
1
|
||||||
|
DROP TABLE t1;
|
||||||
|
COMMIT;
|
||||||
|
connection node_1;
|
||||||
|
# Node_1
|
||||||
|
SHOW global variables like 'gtid%pos';
|
||||||
|
Variable_name Value
|
||||||
|
gtid_binlog_pos 100-10-24
|
||||||
|
gtid_current_pos 100-10-24
|
||||||
|
gtid_slave_pos
|
||||||
|
connection node_2;
|
||||||
|
# Node_2
|
||||||
|
SHOW global variables like 'gtid%pos';
|
||||||
|
Variable_name Value
|
||||||
|
gtid_binlog_pos 100-10-24
|
||||||
|
gtid_current_pos 100-10-24
|
||||||
|
gtid_slave_pos
|
||||||
|
disconnect node_2;
|
||||||
|
disconnect node_1;
|
@ -1,3 +1,5 @@
|
|||||||
|
--- r/galera_sst_rsync_recv_auto.result
|
||||||
|
+++ r/galera_sst_rsync_recv_auto,debug.reject
|
||||||
@@ -516,3 +516,187 @@
|
@@ -516,3 +516,187 @@
|
||||||
1
|
1
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
|
@ -33,7 +33,6 @@ connection node_2;
|
|||||||
SELECT COUNT(*) FROM t2;
|
SELECT COUNT(*) FROM t2;
|
||||||
COUNT(*)
|
COUNT(*)
|
||||||
70
|
70
|
||||||
SET GLOBAL wsrep_slave_threads = 1;
|
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
DROP TABLE t2;
|
DROP TABLE t2;
|
||||||
#
|
#
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
connection node_2;
|
connection node_2;
|
||||||
connection node_1;
|
connection node_1;
|
||||||
CALL mtr.add_suppression("WSREP: Stray state UUID msg:");
|
CALL mtr.add_suppression("WSREP: Stray state UUID msg: ");
|
||||||
CALL mtr.add_suppression("Sending JOIN failed: ");
|
CALL mtr.add_suppression("WSREP: .*Sending JOIN failed: ");
|
||||||
CALL mtr.add_suppression("WSREP: .* sending install message failed: Socket is not connected");
|
CALL mtr.add_suppression("WSREP: .*sending install message failed: Socket is not connected");
|
||||||
CALL mtr.add_suppression("There are no nodes in the same segment that will ever be able to become donors, yet there is a suitable donor outside");
|
CALL mtr.add_suppression("WSREP: .*There are no nodes in the same segment that will ever be able to become donors, yet there is a suitable donor outside");
|
||||||
SELECT VARIABLE_VALUE = 4 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size';
|
SELECT VARIABLE_VALUE = 4 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size';
|
||||||
VARIABLE_VALUE = 4
|
VARIABLE_VALUE = 4
|
||||||
1
|
1
|
||||||
@ -36,8 +36,8 @@ VARIABLE_VALUE LIKE '%gmcast.segment = 3%'
|
|||||||
1
|
1
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
connection node_1;
|
connection node_1;
|
||||||
call mtr.add_suppression("WSREP: read_completion_condition.*");
|
call mtr.add_suppression("WSREP: read_completion_condition");
|
||||||
call mtr.add_suppression("WSREP: read_handler.*");
|
call mtr.add_suppression("WSREP: read_handler");
|
||||||
disconnect node_3;
|
disconnect node_3;
|
||||||
disconnect node_4;
|
disconnect node_4;
|
||||||
disconnect node_2;
|
disconnect node_2;
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
connection node_2;
|
connection node_2;
|
||||||
connection node_1;
|
connection node_1;
|
||||||
call mtr.add_suppression("WSREP\: Unknown parameter 'gmcasts\\.segment'");
|
call mtr.add_suppression("WSREP: Unknown parameter 'gmcasts\\.segment'");
|
||||||
call mtr.add_suppression("WSREP\: Set options returned 7");
|
call mtr.add_suppression("WSREP: Set options returned 7");
|
||||||
SET GLOBAL wsrep_provider_options="gmcasts.segment=1";
|
SET GLOBAL wsrep_provider_options="gmcasts.segment=1";
|
||||||
ERROR HY000: Incorrect arguments to SET
|
ERROR HY000: Incorrect arguments to SET
|
||||||
Unhandled exceptions: 0
|
Unhandled exceptions: 0
|
||||||
|
@ -3,10 +3,17 @@ connection node_1;
|
|||||||
connection node_1;
|
connection node_1;
|
||||||
connection node_2;
|
connection node_2;
|
||||||
connection node_1;
|
connection node_1;
|
||||||
call mtr.add_suppression("WSREP:.*");
|
call mtr.add_suppression("WSREP: async IST sender failed to serve");
|
||||||
|
call mtr.add_suppression("WSREP: Failed to establish connection: Connection refused");
|
||||||
|
call mtr.add_suppression("WSREP: IST failed: IST sender, failed to connect");
|
||||||
|
call mtr.add_suppression("WSREP: .*State transfer.* failed: Protocol error");
|
||||||
SET @wsrep_provider_options_orig = @@GLOBAL.wsrep_provider_options;
|
SET @wsrep_provider_options_orig = @@GLOBAL.wsrep_provider_options;
|
||||||
SET GLOBAL wsrep_provider_options ='pc.ignore_sb=true;pc.weight=2';
|
SET GLOBAL wsrep_provider_options ='pc.ignore_sb=true;pc.weight=2';
|
||||||
connection node_2;
|
connection node_2;
|
||||||
|
call mtr.add_suppression("WSREP: async IST sender failed to serve");
|
||||||
|
call mtr.add_suppression("WSREP: Failed to establish connection: Connection refused");
|
||||||
|
call mtr.add_suppression("WSREP: IST failed: IST sender, failed to connect");
|
||||||
|
call mtr.add_suppression("WSREP: .*State transfer.* failed: Protocol error");
|
||||||
SET @wsrep_cluster_address_orig = @@GLOBAL.wsrep_cluster_address;
|
SET @wsrep_cluster_address_orig = @@GLOBAL.wsrep_cluster_address;
|
||||||
SET GLOBAL WSREP_ON=0;
|
SET GLOBAL WSREP_ON=0;
|
||||||
SELECT COUNT(*) AS EXPECT_0 FROM mysql.wsrep_streaming_log;
|
SELECT COUNT(*) AS EXPECT_0 FROM mysql.wsrep_streaming_log;
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
--- r/mysql-wsrep#33.result
|
--- r/mysql-wsrep#33.result
|
||||||
+++ r/mysql-wsrep#33,debug.reject
|
+++ r/mysql-wsrep#33,debug.reject
|
||||||
@@ -698,12 +698,196 @@
|
@@ -698,6 +698,190 @@
|
||||||
1
|
1
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
COMMIT;
|
COMMIT;
|
||||||
@ -190,12 +190,4 @@
|
|||||||
+SET GLOBAL debug_dbug = $debug_orig;
|
+SET GLOBAL debug_dbug = $debug_orig;
|
||||||
connection node_2;
|
connection node_2;
|
||||||
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 MariaDB 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 MariaDB server is running with the --skip-grant-tables option so it cannot execute this statement' on query");
|
|
||||||
DROP USER sst;
|
|
||||||
connection node_2;
|
|
||||||
-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 MariaDB server is running with the --skip-grant-tables option so it cannot execute this statement' on query");
|
|
||||||
CALL mtr.add_suppression("InnoDB: Error: Table \"mysql\"\\.\"innodb_index_stats\" not found");
|
|
||||||
CALL mtr.add_suppression("Can't open and lock time zone table");
|
|
||||||
CALL mtr.add_suppression("Can't open and lock privilege tables");
|
|
||||||
|
@ -1,15 +0,0 @@
|
|||||||
--- r/mysql-wsrep#33.result
|
|
||||||
+++ r/mysql-wsrep#33.reject
|
|
||||||
@@ -700,10 +700,10 @@
|
|
||||||
COMMIT;
|
|
||||||
connection node_2;
|
|
||||||
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 MariaDB server is running with the --skip-grant-tables option so it cannot execute this statement' on query");
|
|
||||||
DROP USER sst;
|
|
||||||
connection node_2;
|
|
||||||
-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 MariaDB server is running with the --skip-grant-tables option so it cannot execute this statement' on query");
|
|
||||||
CALL mtr.add_suppression("InnoDB: Error: Table \"mysql\"\\.\"innodb_index_stats\" not found");
|
|
||||||
CALL mtr.add_suppression("Can't open and lock time zone table");
|
|
||||||
CALL mtr.add_suppression("Can't open and lock privilege tables");
|
|
@ -700,10 +700,10 @@ DROP TABLE t1;
|
|||||||
COMMIT;
|
COMMIT;
|
||||||
connection node_2;
|
connection node_2;
|
||||||
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 MariaDB 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;
|
||||||
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 MariaDB server is running with the --skip-grant-tables option so it cannot execute this statement' on query");
|
||||||
CALL mtr.add_suppression("InnoDB: Error: Table \"mysql\"\\.\"innodb_index_stats\" not found");
|
CALL mtr.add_suppression("InnoDB: Error: Table \"mysql\"\\.\"innodb_index_stats\" not found");
|
||||||
CALL mtr.add_suppression("Can't open and lock time zone table");
|
CALL mtr.add_suppression("Can't open and lock time zone table");
|
||||||
CALL mtr.add_suppression("Can't open and lock privilege tables");
|
CALL mtr.add_suppression("Can't open and lock privilege tables");
|
||||||
|
@ -10,61 +10,61 @@ return wsrep_not_ok() if wsrep_not_ok();
|
|||||||
|
|
||||||
push @::global_suppressions,
|
push @::global_suppressions,
|
||||||
(
|
(
|
||||||
qr(WSREP: wsrep_sst_receive_address is set to '127.0.0.1),
|
qr(WSREP: wsrep_sst_receive_address is set to '127\.0\.0\.1),
|
||||||
qr(WSREP: Could not open saved state file for reading: .*),
|
qr(WSREP: Could not open saved state file for reading: ),
|
||||||
qr(WSREP: Could not open state file for reading: .*),
|
qr(WSREP: Could not open state file for reading: ),
|
||||||
qr(WSREP: Gap in state sequence. Need state transfer.),
|
qr(WSREP: Gap in state sequence\. Need state transfer\.),
|
||||||
qr(WSREP: Failed to prepare for incremental state transfer:),
|
qr(WSREP: Failed to prepare for incremental state transfer:),
|
||||||
qr(WSREP:.*down context.*),
|
qr(WSREP: .*down context.*),
|
||||||
qr(WSREP: Failed to send state UUID:),
|
qr(WSREP: Failed to send state UUID:),
|
||||||
qr(WSREP: last inactive check more than .* skipping check),
|
qr(WSREP: last inactive check more than .+ skipping check),
|
||||||
qr(WSREP: Releasing seqno [0-9]* before [0-9]* was assigned.),
|
qr(WSREP: Releasing seqno [0-9]+ before [0-9]+ was assigned\.),
|
||||||
qr|WSREP: access file\(.*gvwstate.dat\) failed\(No such file or directory\)|,
|
qr|WSREP: access file\(.*gvwstate.dat\) failed ?\(No such file or directory\)|,
|
||||||
qr(WSREP: Quorum: No node with complete state),
|
qr(WSREP: Quorum: No node with complete state),
|
||||||
qr(WSREP: Initial position was provided by configuration or SST, avoiding override),
|
qr(WSREP: Initial position was provided by configuration or SST, avoiding override),
|
||||||
qr|WSREP: discarding established \(time wait\) .*|,
|
qr|WSREP: discarding established \(time wait\) |,
|
||||||
qr(WSREP: There are no nodes in the same segment that will ever be able to become donors, yet there is a suitable donor outside. Will use that one.),
|
qr(WSREP: There are no nodes in the same segment that will ever be able to become donors, yet there is a suitable donor outside\. Will use that one\.),
|
||||||
qr(WSREP: evs::proto.*),
|
qr(WSREP: evs::proto.*),
|
||||||
qr|WSREP: Ignoring possible split-brain \(allowed by configuration\) from view:.*|,
|
qr|WSREP: Ignoring possible split-brain \(allowed by configuration\) from view:|,
|
||||||
qr(WSREP: no nodes coming from prim view, prim not possible),
|
qr(WSREP: no nodes coming from prim view, prim not possible),
|
||||||
qr(WSREP: Member .* requested state transfer from .* but it is impossible to select State Transfer donor: Resource temporarily unavailable),
|
qr(WSREP: Member .+ ?requested state transfer from .+ but it is impossible to select State Transfer donor: Resource temporarily unavailable),
|
||||||
qr(WSREP: user message in state LEAVING),
|
qr(WSREP: user message in state LEAVING),
|
||||||
qr(WSREP: .* sending install message failed: Transport endpoint is not connected),
|
qr(WSREP: .* sending install message failed: (Transport endpoint|Socket) is not connected),
|
||||||
qr(WSREP: .* sending install message failed: Resource temporarily unavailable),
|
qr(WSREP: .* sending install message failed: Resource temporarily unavailable),
|
||||||
qr(WSREP: Maximum writeset size exceeded by .*),
|
qr(WSREP: Maximum writeset size exceeded by ),
|
||||||
qr(WSREP: transaction size exceeded.*),
|
qr(WSREP: transaction size exceeded),
|
||||||
qr(WSREP: RBR event .*),
|
qr(WSREP: RBR event ),
|
||||||
qr(WSREP: Ignoring error for TO isolated action: .*),
|
qr(WSREP: Ignoring error for TO isolated action: ),
|
||||||
qr(WSREP: transaction size limit .*),
|
qr(WSREP: transaction size limit ),
|
||||||
qr(WSREP: rbr write fail, .*),
|
qr(WSREP: rbr write fail, ),
|
||||||
qr(WSREP: .*Backend not supported: foo.*),
|
qr(WSREP: .*Backend not supported: foo),
|
||||||
qr(WSREP: .*Failed to initialize backend using .*),
|
qr(WSREP: .*Failed to initialize backend using ),
|
||||||
qr(WSREP: .*Failed to open channel 'my_wsrep_cluster' at .*),
|
qr(WSREP: .*Failed to open channel 'my_wsrep_cluster' at ),
|
||||||
qr(WSREP: gcs connect failed: Socket type not supported),
|
qr(WSREP: gcs connect failed: Socket type not supported),
|
||||||
qr(WSREP: failed to open gcomm backend connection: 110: failed to reach primary view: 110 .*),
|
qr(WSREP: failed to open gcomm backend connection: 110: failed to reach primary view: 110 .*),
|
||||||
qr(WSREP: .*Failed to open backend connection: -110 .*),
|
qr(WSREP: .*Failed to open backend connection: -110 ),
|
||||||
qr(WSREP: .*Failed to open channel 'my_wsrep_cluster' at .*),
|
qr(WSREP: .*Failed to open channel 'my_wsrep_cluster' at ),
|
||||||
qr(WSREP: gcs connect failed: Connection timed out),
|
qr(WSREP: gcs connect failed: Connection timed out),
|
||||||
qr|WSREP: wsrep::connect\(.*\) failed: 7|,
|
qr|WSREP: wsrep::connect\(.*\) failed: 7|,
|
||||||
qr(WSREP: SYNC message from member .* in non-primary configuration. Ignored.),
|
qr(WSREP: SYNC message from member .+ ?in non-primary configuration\. Ignored\.),
|
||||||
qr(WSREP: Could not find peer:),
|
qr(WSREP: Could not find peer:),
|
||||||
qr(WSREP: TO isolation failed for: .*),
|
qr(WSREP: TO isolation failed for: ),
|
||||||
qr|WSREP: gcs_caused\(\) returned .*|,
|
qr|WSREP: gcs_caused\(\) returned |,
|
||||||
qr|WSREP: Protocol violation. JOIN message sender .* is not in state transfer \(SYNCED\). Message ignored.|,
|
qr|WSREP: Protocol violation\. JOIN message sender .+ ?is not in state transfer \(SYNCED\)\. Message ignored\.|,
|
||||||
qr|WSREP: Protocol violation. JOIN message sender .* is not in state transfer \(JOINED\). Message ignored.|,
|
qr|WSREP: Protocol violation\. JOIN message sender .+ ?is not in state transfer \(JOINED\)\. Message ignored\.|,
|
||||||
qr|WSREP: Unsupported protocol downgrade: incremental data collection disabled. Expect abort.|,
|
qr|WSREP: Unsupported protocol downgrade: incremental data collection disabled\. Expect abort\.|,
|
||||||
qr(WSREP: Action message in non-primary configuration from member [0-9]*),
|
qr(WSREP: Action message in non-primary configuration from member [0-9]*),
|
||||||
qr(WSREP: Last Applied Action message in non-primary configuration from member [0-9]*),
|
qr(WSREP: Last Applied Action message in non-primary configuration from member [0-9]*),
|
||||||
qr(WSREP: discarding established .*),
|
qr(WSREP: discarding established ),
|
||||||
qr|WSREP: .*core_handle_uuid_msg.*|,
|
qr|WSREP: .*core_handle_uuid_msg|,
|
||||||
qr(WSREP: --wsrep-causal-reads=ON takes precedence over --wsrep-sync-wait=0. WSREP_SYNC_WAIT_BEFORE_READ is on),
|
qr(WSREP: --wsrep-causal-reads=ON takes precedence over --wsrep-sync-wait=0\. WSREP_SYNC_WAIT_BEFORE_READ is on),
|
||||||
qr|WSREP: JOIN message from member .* in non-primary configuration. Ignored.|,
|
qr|WSREP: JOIN message from member .+ ?in non-primary configuration\. Ignored\.|,
|
||||||
qr|Query apply failed:*|,
|
qr|WSREP: .*Query apply failed:|,
|
||||||
qr(WSREP: Ignoring error*),
|
qr(WSREP: Ignoring error),
|
||||||
qr(WSREP: Failed to remove page file .*),
|
qr(WSREP: Failed to remove page file ),
|
||||||
qr(WSREP: wsrep_sst_method is set to 'mysqldump' yet mysqld bind_address is set to .*),
|
qr(WSREP: wsrep_sst_method is set to 'mysqldump' yet mysqld bind_address is set to ),
|
||||||
qr|WSREP: Sending JOIN failed: -107 \(Transport endpoint is not connected\). Will retry in new primary component.|,
|
qr+WSREP: Sending JOIN failed: -107 \((Transport endpoint|Socket) is not connected\)\. Will retry in new primary component\.+,
|
||||||
qr|WSREP: Send action \{.* STATE_REQUEST} returned -107 \(Transport endpoint is not connected\)|,
|
qr+WSREP: Send action \{.* STATE_REQUEST\} returned -107 \((Transport endpoint|Socket) is not connected\)+,
|
||||||
qr|WSREP: Trying to continue unpaused monitor|,
|
qr|WSREP: Trying to continue unpaused monitor|,
|
||||||
qr|WSREP: Wait for gtid returned error 3 while waiting for prior transactions to commit before setting position|,
|
qr|WSREP: Wait for gtid returned error 3 while waiting for prior transactions to commit before setting position|,
|
||||||
qr|WSREP: Failed to report last committed|,
|
qr|WSREP: Failed to report last committed|,
|
||||||
|
@ -4,11 +4,13 @@
|
|||||||
log-bin=mysqld-bin
|
log-bin=mysqld-bin
|
||||||
log-slave-updates
|
log-slave-updates
|
||||||
binlog-format=ROW
|
binlog-format=ROW
|
||||||
|
|
||||||
[mysqld.1]
|
[mysqld.1]
|
||||||
gtid-domain-id=1
|
gtid-domain-id=1
|
||||||
wsrep_gtid_mode=1
|
wsrep_gtid_mode=1
|
||||||
wsrep_gtid_domain_id=1
|
wsrep_gtid_domain_id=1
|
||||||
|
|
||||||
[mysqld.2]
|
[mysqld.2]
|
||||||
gtid-domain-id=1
|
gtid-domain-id=1
|
||||||
wsrep_gtid_mode=1
|
wsrep_gtid_mode=1
|
||||||
wsrep_gtid_domain_id=1
|
wsrep_gtid_domain_id=1
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
!include ../galera_2nodes.cnf
|
!include ../galera_2nodes.cnf
|
||||||
|
|
||||||
[mysqld.1]
|
[mysqld.1]
|
||||||
wsrep_auto_increment_control=OFF
|
wsrep_auto_increment_control=OFF
|
||||||
|
|
||||||
[mysqld.2]
|
[mysqld.2]
|
||||||
wsrep_auto_increment_control=OFF
|
wsrep_auto_increment_control=OFF
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
--source include/galera_cluster.inc
|
--source include/galera_cluster.inc
|
||||||
--source include/have_innodb.inc
|
--source include/have_innodb.inc
|
||||||
|
--source include/have_sequence.inc
|
||||||
|
|
||||||
CREATE SEQUENCE Seq1_1 START WITH 1 INCREMENT BY 1 NOCACHE;
|
CREATE SEQUENCE Seq1_1 START WITH 1 INCREMENT BY 1 NOCACHE;
|
||||||
CREATE TABLE t1 (Id int(11) NOT NULL, PRIMARY KEY (Id));
|
CREATE TABLE t1 (Id int(11) NOT NULL, PRIMARY KEY (Id));
|
||||||
|
@ -41,7 +41,7 @@ INSERT INTO t1 VALUES (NULL);
|
|||||||
SET GLOBAL debug_dbug = 'RESET';
|
SET GLOBAL debug_dbug = 'RESET';
|
||||||
SET DEBUG_SYNC = 'now SIGNAL signal.mdev_20225_continue';
|
SET DEBUG_SYNC = 'now SIGNAL signal.mdev_20225_continue';
|
||||||
SET DEBUG_SYNC = 'RESET';
|
SET DEBUG_SYNC = 'RESET';
|
||||||
SET GLOBAL wsrep_slave_threads = 1;
|
SET GLOBAL wsrep_slave_threads = DEFAULT;
|
||||||
|
|
||||||
--connection node_2
|
--connection node_2
|
||||||
# Trigger should now be dropped on node_2.
|
# Trigger should now be dropped on node_2.
|
||||||
|
@ -99,4 +99,4 @@ SET SESSION debug_sync = "now SIGNAL continue";
|
|||||||
SET debug_sync = "RESET";
|
SET debug_sync = "RESET";
|
||||||
|
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
SET GLOBAL wsrep_slave_threads = 1;
|
SET GLOBAL wsrep_slave_threads = DEFAULT;
|
||||||
|
@ -13,7 +13,7 @@ SET lock_wait_timeout= 1;
|
|||||||
--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
|
||||||
SET SESSION wsrep_sync_wait = 0;
|
SET SESSION wsrep_sync_wait = 0;
|
||||||
--let $wait_condition = SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE STATE = 'Waiting for table level lock'
|
--let $wait_condition = SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE STATE LIKE 'Waiting for table level lock'
|
||||||
--source include/wait_condition.inc
|
--source include/wait_condition.inc
|
||||||
|
|
||||||
--connection node_1
|
--connection node_1
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
!include ../galera_2nodes.cnf
|
!include ../galera_2nodes.cnf
|
||||||
|
|
||||||
[mysqld]
|
[mysqld]
|
||||||
log-bin
|
log-bin
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user