Files
MaxScale/maxscale-system-test/pers_02.cpp
Timofey Turenko fb96141dda MXS-2243_labels Maxscale system tests prepare environment by themselves
maxscale-system-test changed in order to control test environment by itself.
Every test checks which machines are running, compare with list of needed machines
and start new VMs is they are missing in the running machines list.
Tests are executiong MDBCI commands, MDBCI executable should be in the PATH
2019-03-28 22:37:24 +02:00

47 lines
1.4 KiB
C++

/**
* @file pers_02.cpp - Persistent connection tests - crash during Maxscale restart
*
* - Set max_connections to 20
* - Open 75 connections to all Maxscale services
* - Close connections
* - Restart replication (stop all nodes and start them again, execute CHANGE MASTER TO again)
* - Set max_connections to 2000
* - Open 70 connections to all Maxscale services
* - Close connections
* - Check there is not crash during restart
*/
#include "testconnections.h"
#include "maxadmin_operations.h"
int main(int argc, char* argv[])
{
TestConnections::require_galera(true);
TestConnections* Test = new TestConnections(argc, argv);
Test->set_timeout(60);
Test->repl->execute_query_all_nodes((char*) "set global max_connections = 20;");
Test->create_connections(0, 75, true, true, true, true);
Test->stop_timeout();
Test->repl->stop_nodes();
Test->repl->start_replication();
Test->repl->close_connections();
Test->repl->sync_slaves();
// Increase connection limits and wait a few seconds for the server to catch up
Test->repl->execute_query_all_nodes((char*) "set global max_connections = 2000;");
sleep(10);
Test->set_timeout(60);
Test->add_result(Test->create_connections(0, 70, true, true, true, true),
"Connections creation error \n");
Test->check_maxscale_alive(0);
int rval = Test->global_result;
delete Test;
return rval;
}