Files
MaxScale/maxscale-system-test/backend_auth_fail.cpp
Timofey Turenko ddf9002e86 Add tests with big backend
Basic tests can be executed with 15 machines Master/slave backend. Tests have label BIG_REPL_BACKEND Default template modified to support big backend. Tests temporaraly labeled as UNSTABLE to prevent their execution nightly
For big test maxscale.cnf is automatically generated for any number of nodes
2019-04-18 09:48:39 +03:00

43 lines
1.0 KiB
C++

/**
* @backend_auth_fail.cpp Repeatedly connect to maxscale while the backends reject all connections
*
* MaxScale should not crash
*/
#include "testconnections.h"
int main(int argc, char** argv)
{
MYSQL* mysql[1000];
TestConnections* Test = new TestConnections(argc, argv);
Test->repl->execute_query_all_nodes((char*) "set global max_connections = 10;");
for (int x = 0; x < 3; x++)
{
Test->tprintf("Creating 100 connections...\n");
for (int i = 0; i < 100; i++)
{
Test->set_timeout(30);
mysql[i] = Test->maxscales->open_readconn_master_connection(0);
execute_query_silent(mysql[i], "select 1");
}
Test->stop_timeout();
for (int i = 0; i < 100; i++)
{
Test->set_timeout(30);
mysql_close(mysql[i]);
}
}
// Wait for the connections to clean up
Test->stop_timeout();
sleep(2 * Test->repl->N);
Test->check_maxscale_alive(0);
int rval = Test->global_result;
delete Test;
return rval;
}