Enable tee filter tests for 2.2
Enabled the tests that were accidentally disabled and cleaned up some of the redundant code in bug649.
This commit is contained in:
@ -121,7 +121,7 @@ add_test_executable(bug547.cpp bug547 replication LABELS readwritesplit REPL_BAC
|
|||||||
add_test_executable(bug681.cpp bug681 galera.bug681 LABELS readwritesplit GALERA_BACKEND)
|
add_test_executable(bug681.cpp bug681 galera.bug681 LABELS readwritesplit GALERA_BACKEND)
|
||||||
|
|
||||||
# Regression case for the bug "crash with tee filter"
|
# Regression case for the bug "crash with tee filter"
|
||||||
#add_test_executable(bug643.cpp bug643 bug643 LABELS tee REPL_BACKEND)
|
add_test_executable(bug643.cpp bug643 bug643 LABELS tee REPL_BACKEND)
|
||||||
|
|
||||||
# Regression case for the bug ""Different error messages from MariaDB and Maxscale"
|
# Regression case for the bug ""Different error messages from MariaDB and Maxscale"
|
||||||
add_test_script(bug561.sh bug561.sh replication LABELS MySQLAuth REPL_BACKEND)
|
add_test_script(bug561.sh bug561.sh replication LABELS MySQLAuth REPL_BACKEND)
|
||||||
@ -166,13 +166,13 @@ add_test_executable(bug626.cpp bug626 replication LABELS MySQLAuth MySQLProtocol
|
|||||||
add_test_executable(bug634.cpp bug634 replication LABELS readwritesplit REPL_BACKEND)
|
add_test_executable(bug634.cpp bug634 replication LABELS readwritesplit REPL_BACKEND)
|
||||||
|
|
||||||
# Regression cases for several TEE filter hangs
|
# Regression cases for several TEE filter hangs
|
||||||
#add_test_executable(bug645.cpp bug645 bug645 LABELS tee REPL_BACKEND)
|
add_test_executable(bug645.cpp bug645 bug645 LABELS tee REPL_BACKEND)
|
||||||
#add_test_executable(bug645_1.cpp bug645_1 bug645_1 LABELS tee REPL_BACKEND)
|
add_test_executable(bug645_1.cpp bug645_1 bug645_1 LABELS tee REPL_BACKEND)
|
||||||
#add_test_executable(bug649.cpp bug649 bug645 LABELS tee)
|
add_test_executable(bug649.cpp bug649 bug645 LABELS tee REPL_BACKEND)
|
||||||
#add_test_executable(bug650.cpp bug650 bug650 LABELS tee REPL_BACKEND)
|
add_test_executable(bug650.cpp bug650 bug650 LABELS tee REPL_BACKEND)
|
||||||
|
|
||||||
# Heavy test for TEE filter
|
# Heavy test for TEE filter
|
||||||
#add_test_script(bug648 sql_queries bug648 LABELS tee UNSTABLE HEAVY REPL_BACKEND)
|
add_test_script(bug648 sql_queries bug648 LABELS tee HEAVY REPL_BACKEND)
|
||||||
|
|
||||||
# Crash when host name for some user in mysql.user is very long
|
# Crash when host name for some user in mysql.user is very long
|
||||||
add_test_executable(bug653.cpp bug653 replication LABELS MySQLAuth MySQLProtocol REPL_BACKEND)
|
add_test_executable(bug653.cpp bug653 replication LABELS MySQLAuth MySQLProtocol REPL_BACKEND)
|
||||||
@ -181,7 +181,7 @@ add_test_executable(bug653.cpp bug653 replication LABELS MySQLAuth MySQLProtocol
|
|||||||
add_test_executable(bug654.cpp bug654 replication LABELS maxscale REPL_BACKEND)
|
add_test_executable(bug654.cpp bug654 replication LABELS maxscale REPL_BACKEND)
|
||||||
|
|
||||||
# Regression case for the bug "Tee filter: closing child session causes MaxScale to fail"
|
# Regression case for the bug "Tee filter: closing child session causes MaxScale to fail"
|
||||||
#add_test_executable(bug657.cpp bug657 bug657 LABELS tee REPL_BACKEND)
|
add_test_executable(bug657.cpp bug657 bug657 LABELS tee REPL_BACKEND)
|
||||||
|
|
||||||
# Block backends (master or all slaves) and tries to connect Maxscale
|
# Block backends (master or all slaves) and tries to connect Maxscale
|
||||||
add_test_executable(bug658.cpp bug658 replication LABELS readwritesplit readconnroute maxscale REPL_BACKEND)
|
add_test_executable(bug658.cpp bug658 replication LABELS readwritesplit readconnroute maxscale REPL_BACKEND)
|
||||||
@ -193,7 +193,7 @@ add_test_executable(bug662.cpp bug662 bug662 LABELS readwritesplit readconnroute
|
|||||||
add_test_executable(bug664.cpp bug664 bug664 LABELS MySQLAuth MySQLProtocol)
|
add_test_executable(bug664.cpp bug664 bug664 LABELS MySQLAuth MySQLProtocol)
|
||||||
|
|
||||||
# TEE fileter: execute long sequence of queries ans session commands in the loop
|
# TEE fileter: execute long sequence of queries ans session commands in the loop
|
||||||
#add_test_executable(bug670.cpp bug670 bug670 LABELS tee REPL_BACKEND)
|
add_test_executable(bug670.cpp bug670 bug670 LABELS tee REPL_BACKEND)
|
||||||
|
|
||||||
# Regression case for the bug "MaxScale crashes if "Users table data" is empty and "show dbusers" is executed in maxadmin"
|
# Regression case for the bug "MaxScale crashes if "Users table data" is empty and "show dbusers" is executed in maxadmin"
|
||||||
add_test_executable(bug673.cpp bug673 bug673 LABELS MySQLAuth REPL_BACKEND)
|
add_test_executable(bug673.cpp bug673 bug673 LABELS MySQLAuth REPL_BACKEND)
|
||||||
@ -376,7 +376,7 @@ add_test_executable(mxs431.cpp mxs431 sharding LABELS schemarouter REPL_BACKEND
|
|||||||
add_test_executable(mxs47.cpp mxs47 replication LABELS MySQLProtocol LIGHT REPL_BACKEND)
|
add_test_executable(mxs47.cpp mxs47 replication LABELS MySQLProtocol LIGHT REPL_BACKEND)
|
||||||
|
|
||||||
# Regression case for the bug "USE <db> hangs when Tee filter uses matching"
|
# Regression case for the bug "USE <db> hangs when Tee filter uses matching"
|
||||||
#add_test_executable(mxs501_tee_usedb.cpp mxs501_tee_usedb mxs501 LABELS tee REPL_BACKEND)
|
add_test_executable(mxs501_tee_usedb.cpp mxs501_tee_usedb mxs501 LABELS tee REPL_BACKEND)
|
||||||
|
|
||||||
# Open connection, execute 'change user', close connection in the loop
|
# Open connection, execute 'change user', close connection in the loop
|
||||||
add_test_executable(mxs548_short_session_change_user.cpp mxs548_short_session_change_user mxs548 LABELS MySQLProtocol REPL_BACKEND)
|
add_test_executable(mxs548_short_session_change_user.cpp mxs548_short_session_change_user mxs548 LABELS MySQLProtocol REPL_BACKEND)
|
||||||
|
@ -53,22 +53,14 @@ int main(int argc, char *argv[])
|
|||||||
int check_iret[threads_num];
|
int check_iret[threads_num];
|
||||||
|
|
||||||
Test = new TestConnections(argc, argv);
|
Test = new TestConnections(argc, argv);
|
||||||
int time_to_run = (Test->smoke) ? 10 : 30;
|
int time_to_run = 10;
|
||||||
Test->set_timeout(10);
|
Test->set_timeout(60);
|
||||||
|
|
||||||
Test->tprintf("Connecting to RWSplit %s\n", Test->maxscale_IP);
|
|
||||||
Test->connect_rwsplit();
|
|
||||||
|
|
||||||
Test->repl->connect();
|
Test->repl->connect();
|
||||||
Test->tprintf("Drop t1 if exists\n");
|
create_t1(Test->repl->nodes[0]);
|
||||||
execute_query(Test->repl->nodes[0], "DROP TABLE IF EXISTS t1;");
|
Test->repl->sync_slaves();
|
||||||
Test->tprintf("Create t1\n");
|
|
||||||
Test->add_result(create_t1(Test->repl->nodes[0]), "t1 creation Failed\n");
|
|
||||||
Test->repl->close_connections();
|
Test->repl->close_connections();
|
||||||
|
|
||||||
Test->stop_timeout();
|
|
||||||
sleep(5);
|
|
||||||
|
|
||||||
create_insert_string(sql, 65000, 1);
|
create_insert_string(sql, 65000, 1);
|
||||||
Test->tprintf("Creating query threads\n", time_to_run);
|
Test->tprintf("Creating query threads\n", time_to_run);
|
||||||
for (int j = 0; j < threads_num; j++)
|
for (int j = 0; j < threads_num; j++)
|
||||||
@ -90,14 +82,7 @@ int main(int argc, char *argv[])
|
|||||||
|
|
||||||
Test->set_timeout(30);
|
Test->set_timeout(30);
|
||||||
Test->tprintf("Trying query to RWSplit, expecting failure, but not a crash\n");
|
Test->tprintf("Trying query to RWSplit, expecting failure, but not a crash\n");
|
||||||
if (execute_query_silent(Test->conn_rwsplit, (char *) "show processlist;") == 0)
|
test.try_query(Test->conn_rwsplit, "show processlist;");
|
||||||
{
|
|
||||||
Test->add_result(1, "Failure is expected, but query is ok\n");
|
|
||||||
}
|
|
||||||
|
|
||||||
Test->stop_timeout();
|
|
||||||
sleep(time_to_run);
|
|
||||||
|
|
||||||
Test->tprintf("Setup firewall back to allow mysql\n");
|
Test->tprintf("Setup firewall back to allow mysql\n");
|
||||||
Test->repl->unblock_node(0);
|
Test->repl->unblock_node(0);
|
||||||
fflush(stdout);
|
fflush(stdout);
|
||||||
@ -110,23 +95,14 @@ int main(int argc, char *argv[])
|
|||||||
pthread_join(parall_traffic1[i], NULL);
|
pthread_join(parall_traffic1[i], NULL);
|
||||||
Test->tprintf("exit %d\n", i);
|
Test->tprintf("exit %d\n", i);
|
||||||
}
|
}
|
||||||
Test->stop_timeout();
|
|
||||||
sleep(5);
|
|
||||||
|
|
||||||
Test->set_timeout(20);
|
Test->set_timeout(20);
|
||||||
Test->tprintf("Checking Maxscale is alive\n");
|
Test->tprintf("Checking Maxscale is alive\n");
|
||||||
Test->check_maxscale_alive();
|
Test->check_maxscale_alive();
|
||||||
|
|
||||||
Test->set_timeout(20);
|
|
||||||
Test->tprintf("Reconnecting to RWSplit ...\n");
|
|
||||||
Test->connect_rwsplit();
|
|
||||||
Test->tprintf(" ... and trying query\n");
|
|
||||||
Test->try_query(Test->conn_rwsplit, (char *) "show processlist;");
|
|
||||||
Test->close_rwsplit();
|
|
||||||
|
|
||||||
/** Clean up */
|
/** Clean up */
|
||||||
Test->repl->connect();
|
Test->repl->connect();
|
||||||
execute_query(Test->repl->nodes[0], "DROP TABLE IF EXISTS t1;");
|
execute_query(Test->repl->nodes[0], "DROP TABLE t1;");
|
||||||
|
|
||||||
int rval = Test->global_result;
|
int rval = Test->global_result;
|
||||||
delete Test;
|
delete Test;
|
||||||
|
Reference in New Issue
Block a user