mirror of
https://github.com/MariaDB/server.git
synced 2025-02-02 12:01:42 +01:00
[t:4297], add test that induces crashes in handlerton
git-svn-id: file:///svn/mysql/tests/mysql-test@41755 c7de825b-a66e-492c-adef-691d508d4ae1
This commit is contained in:
parent
af457d12bc
commit
00504ff4ce
2 changed files with 202 additions and 0 deletions
78
mysql-test/suite/tokudb.bugs/r/xa-6.result
Normal file
78
mysql-test/suite/tokudb.bugs/r/xa-6.result
Normal file
|
@ -0,0 +1,78 @@
|
|||
drop table if exists t1;
|
||||
CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE=tokudb;
|
||||
xa begin 'a','ab';
|
||||
insert into t1 values (1);
|
||||
select * from t1;
|
||||
a
|
||||
1
|
||||
xa end 'a','ab';
|
||||
SET SESSION debug="d,tokudb_crash_prepare_before";
|
||||
xa prepare 'a','ab';
|
||||
ERROR HY000: Lost connection to MySQL server during query
|
||||
xa commit'a','ab';
|
||||
ERROR XAE04: XAER_NOTA: Unknown XID
|
||||
drop table t1;
|
||||
CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE=tokudb;
|
||||
xa begin 'a','ab';
|
||||
insert into t1 values (1);
|
||||
select * from t1;
|
||||
a
|
||||
1
|
||||
xa end 'a','ab';
|
||||
SET SESSION debug="d,tokudb_crash_prepare_after";
|
||||
CALL mtr.add_suppression("Found 1 prepared XA transactions");
|
||||
xa prepare 'a','ab';
|
||||
ERROR HY000: Lost connection to MySQL server during query
|
||||
xa commit 'a','ab';
|
||||
select * from t1;
|
||||
a
|
||||
1
|
||||
drop table t1;
|
||||
CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE=tokudb;
|
||||
xa begin 'a','ab';
|
||||
insert into t1 values (1);
|
||||
select * from t1;
|
||||
a
|
||||
1
|
||||
xa end 'a','ab';
|
||||
SET SESSION debug="d,tokudb_crash_prepare_after";
|
||||
CALL mtr.add_suppression("Found 1 prepared XA transactions");
|
||||
xa prepare 'a','ab';
|
||||
ERROR HY000: Lost connection to MySQL server during query
|
||||
xa rollback 'a','ab';
|
||||
select * from t1;
|
||||
a
|
||||
drop table t1;
|
||||
CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE=tokudb;
|
||||
xa begin 'a','ab';
|
||||
insert into t1 values (1);
|
||||
select * from t1;
|
||||
a
|
||||
1
|
||||
xa end 'a','ab';
|
||||
SET SESSION debug="d,tokudb_crash_commit_before";
|
||||
CALL mtr.add_suppression("Found 1 prepared XA transactions");
|
||||
xa prepare 'a','ab';
|
||||
xa commit 'a','ab';
|
||||
ERROR HY000: Lost connection to MySQL server during query
|
||||
xa commit 'a','ab';
|
||||
select * from t1;
|
||||
a
|
||||
1
|
||||
drop table t1;
|
||||
CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE=tokudb;
|
||||
xa begin 'a','ab';
|
||||
insert into t1 values (1);
|
||||
select * from t1;
|
||||
a
|
||||
1
|
||||
xa end 'a','ab';
|
||||
SET SESSION debug="d,tokudb_crash_commit_before";
|
||||
CALL mtr.add_suppression("Found 1 prepared XA transactions");
|
||||
xa prepare 'a','ab';
|
||||
xa commit 'a','ab';
|
||||
ERROR HY000: Lost connection to MySQL server during query
|
||||
xa rollback 'a','ab';
|
||||
select * from t1;
|
||||
a
|
||||
drop table t1;
|
124
mysql-test/suite/tokudb.bugs/t/xa-6.test
Normal file
124
mysql-test/suite/tokudb.bugs/t/xa-6.test
Normal file
|
@ -0,0 +1,124 @@
|
|||
-- source include/have_tokudb.inc
|
||||
--source include/have_debug.inc
|
||||
|
||||
--disable_warnings
|
||||
drop table if exists t1;
|
||||
--enable_warnings
|
||||
|
||||
|
||||
# test that simple xa commands work with TokuDB
|
||||
CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE=tokudb;
|
||||
|
||||
xa begin 'a','ab';
|
||||
insert into t1 values (1);
|
||||
select * from t1;
|
||||
xa end 'a','ab';
|
||||
SET SESSION debug="d,tokudb_crash_prepare_before";
|
||||
--exec echo "restart" > $MYSQLTEST_VARDIR/tmp/mysqld.1.expect
|
||||
|
||||
--error 2013
|
||||
xa prepare 'a','ab';
|
||||
|
||||
--enable_reconnect
|
||||
|
||||
--source include/wait_until_connected_again.inc
|
||||
|
||||
--error ER_XAER_NOTA
|
||||
xa commit'a','ab';
|
||||
drop table t1;
|
||||
|
||||
CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE=tokudb;
|
||||
xa begin 'a','ab';
|
||||
insert into t1 values (1);
|
||||
select * from t1;
|
||||
xa end 'a','ab';
|
||||
SET SESSION debug="d,tokudb_crash_prepare_after";
|
||||
--exec echo "restart" > $MYSQLTEST_VARDIR/tmp/mysqld.1.expect
|
||||
|
||||
# this warning is expected, we want to test that
|
||||
# a prepared transaction is around after we come back up
|
||||
CALL mtr.add_suppression("Found 1 prepared XA transactions");
|
||||
|
||||
--error 2013
|
||||
xa prepare 'a','ab';
|
||||
|
||||
|
||||
--enable_reconnect
|
||||
|
||||
--source include/wait_until_connected_again.inc
|
||||
|
||||
xa commit 'a','ab';
|
||||
select * from t1;
|
||||
drop table t1;
|
||||
|
||||
CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE=tokudb;
|
||||
xa begin 'a','ab';
|
||||
insert into t1 values (1);
|
||||
select * from t1;
|
||||
xa end 'a','ab';
|
||||
SET SESSION debug="d,tokudb_crash_prepare_after";
|
||||
--exec echo "restart" > $MYSQLTEST_VARDIR/tmp/mysqld.1.expect
|
||||
|
||||
# this warning is expected, we want to test that
|
||||
# a prepared transaction is around after we come back up
|
||||
CALL mtr.add_suppression("Found 1 prepared XA transactions");
|
||||
|
||||
--error 2013
|
||||
xa prepare 'a','ab';
|
||||
|
||||
|
||||
--enable_reconnect
|
||||
|
||||
--source include/wait_until_connected_again.inc
|
||||
|
||||
xa rollback 'a','ab';
|
||||
select * from t1;
|
||||
drop table t1;
|
||||
|
||||
CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE=tokudb;
|
||||
xa begin 'a','ab';
|
||||
insert into t1 values (1);
|
||||
select * from t1;
|
||||
xa end 'a','ab';
|
||||
SET SESSION debug="d,tokudb_crash_commit_before";
|
||||
--exec echo "restart" > $MYSQLTEST_VARDIR/tmp/mysqld.1.expect
|
||||
|
||||
# this warning is expected, we want to test that
|
||||
# a prepared transaction is around after we come back up
|
||||
CALL mtr.add_suppression("Found 1 prepared XA transactions");
|
||||
|
||||
xa prepare 'a','ab';
|
||||
--error 2013
|
||||
xa commit 'a','ab';
|
||||
|
||||
--enable_reconnect
|
||||
|
||||
--source include/wait_until_connected_again.inc
|
||||
|
||||
xa commit 'a','ab';
|
||||
select * from t1;
|
||||
drop table t1;
|
||||
|
||||
CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE=tokudb;
|
||||
xa begin 'a','ab';
|
||||
insert into t1 values (1);
|
||||
select * from t1;
|
||||
xa end 'a','ab';
|
||||
SET SESSION debug="d,tokudb_crash_commit_before";
|
||||
--exec echo "restart" > $MYSQLTEST_VARDIR/tmp/mysqld.1.expect
|
||||
|
||||
# this warning is expected, we want to test that
|
||||
# a prepared transaction is around after we come back up
|
||||
CALL mtr.add_suppression("Found 1 prepared XA transactions");
|
||||
|
||||
xa prepare 'a','ab';
|
||||
--error 2013
|
||||
xa commit 'a','ab';
|
||||
|
||||
--enable_reconnect
|
||||
|
||||
--source include/wait_until_connected_again.inc
|
||||
|
||||
xa rollback 'a','ab';
|
||||
select * from t1;
|
||||
drop table t1;
|
Loading…
Add table
Reference in a new issue