mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
wl2325 wl2324
mysql-test/include/have_ndb_extra.inc: New BitKeeper file ``mysql-test/include/have_ndb_extra.inc'' mysql-test/include/not_ndb.inc: New BitKeeper file ``mysql-test/include/not_ndb.inc'' mysql-test/r/have_ndb_extra.require: New BitKeeper file ``mysql-test/r/have_ndb_extra.require'' mysql-test/r/ndb_alter_table_row.result: New BitKeeper file ``mysql-test/r/ndb_alter_table_row.result'' mysql-test/r/ndb_alter_table_stm.result: New BitKeeper file ``mysql-test/r/ndb_alter_table_stm.result'' mysql-test/r/ndb_binlog_basic.result: New BitKeeper file ``mysql-test/r/ndb_binlog_basic.result'' mysql-test/r/ndb_binlog_multi.result: New BitKeeper file ``mysql-test/r/ndb_binlog_multi.result'' mysql-test/r/ndb_multi_row.result: New BitKeeper file ``mysql-test/r/ndb_multi_row.result'' mysql-test/r/not_ndb.require: New BitKeeper file ``mysql-test/r/not_ndb.require'' mysql-test/r/rpl_ndb_bank.result: New BitKeeper file ``mysql-test/r/rpl_ndb_bank.result'' mysql-test/r/rpl_ndb_basic.result: New BitKeeper file ``mysql-test/r/rpl_ndb_basic.result'' mysql-test/r/rpl_ndb_disk.result: New BitKeeper file ``mysql-test/r/rpl_ndb_disk.result'' mysql-test/r/rpl_ndb_idempotent.result: New BitKeeper file ``mysql-test/r/rpl_ndb_idempotent.result'' mysql-test/r/rpl_ndb_load.result: New BitKeeper file ``mysql-test/r/rpl_ndb_load.result'' mysql-test/r/rpl_ndb_multi.result: New BitKeeper file ``mysql-test/r/rpl_ndb_multi.result'' mysql-test/r/rpl_ndb_sync.result: New BitKeeper file ``mysql-test/r/rpl_ndb_sync.result'' mysql-test/r/rpl_row_basic_7ndb.result: New BitKeeper file ``mysql-test/r/rpl_row_basic_7ndb.result'' mysql-test/t/ndb_alter_table_row.test: New BitKeeper file ``mysql-test/t/ndb_alter_table_row.test'' mysql-test/t/ndb_alter_table_stm.test: New BitKeeper file ``mysql-test/t/ndb_alter_table_stm.test'' mysql-test/t/ndb_binlog_basic.test: New BitKeeper file ``mysql-test/t/ndb_binlog_basic.test'' mysql-test/t/ndb_binlog_multi.test: New BitKeeper file ``mysql-test/t/ndb_binlog_multi.test'' mysql-test/t/ndb_multi_row.test: New BitKeeper file ``mysql-test/t/ndb_multi_row.test'' mysql-test/t/rpl_ndb_bank.test: New BitKeeper file ``mysql-test/t/rpl_ndb_bank.test'' mysql-test/t/rpl_ndb_basic.test: New BitKeeper file ``mysql-test/t/rpl_ndb_basic.test'' mysql-test/t/rpl_ndb_disk.test: New BitKeeper file ``mysql-test/t/rpl_ndb_disk.test'' mysql-test/t/rpl_ndb_idempotent.test: New BitKeeper file ``mysql-test/t/rpl_ndb_idempotent.test'' mysql-test/t/rpl_ndb_load.test: New BitKeeper file ``mysql-test/t/rpl_ndb_load.test'' mysql-test/t/rpl_ndb_multi.test: New BitKeeper file ``mysql-test/t/rpl_ndb_multi.test'' mysql-test/t/rpl_ndb_sync.test: New BitKeeper file ``mysql-test/t/rpl_ndb_sync.test'' mysql-test/t/rpl_row_basic_7ndb.test: New BitKeeper file ``mysql-test/t/rpl_row_basic_7ndb.test'' sql/ha_ndbcluster_binlog.cc: New BitKeeper file ``sql/ha_ndbcluster_binlog.cc'' sql/ha_ndbcluster_binlog.h: New BitKeeper file ``sql/ha_ndbcluster_binlog.h'' sql/ha_ndbcluster_tables.h: New BitKeeper file ``sql/ha_ndbcluster_tables.h'' sql/rpl_injector.cc: New BitKeeper file ``sql/rpl_injector.cc'' sql/rpl_injector.h: New BitKeeper file ``sql/rpl_injector.h'' storage/ndb/include/kernel/signaldata/DihFragCount.hpp: New BitKeeper file ``storage/ndb/include/kernel/signaldata/DihFragCount.hpp''
This commit is contained in:
@ -140,6 +140,7 @@ our $glob_scriptname= undef;
|
||||
our $glob_timers= undef;
|
||||
our $glob_use_running_server= 0;
|
||||
our $glob_use_running_ndbcluster= 0;
|
||||
our $glob_use_running_ndbcluster_slave= 0;
|
||||
our $glob_use_embedded_server= 0;
|
||||
our @glob_test_mode;
|
||||
|
||||
@ -233,6 +234,8 @@ our $instance_manager;
|
||||
|
||||
our $opt_ndbcluster_port;
|
||||
our $opt_ndbconnectstring;
|
||||
our $opt_ndbcluster_port_slave;
|
||||
our $opt_ndbconnectstring_slave;
|
||||
|
||||
our $opt_no_manager; # Does nothing now, we never use manager
|
||||
our $opt_manager_port; # Does nothing now, we never use manager
|
||||
@ -300,12 +303,16 @@ our $opt_udiff;
|
||||
|
||||
our $opt_skip_ndbcluster;
|
||||
our $opt_with_ndbcluster;
|
||||
our $opt_skip_ndbcluster_slave;
|
||||
our $opt_with_ndbcluster_slave;
|
||||
our $opt_ndb_extra_test;
|
||||
|
||||
our $exe_ndb_mgm;
|
||||
our $path_ndb_tools_dir;
|
||||
our $path_ndb_backup_dir;
|
||||
our $file_ndb_testrun_log;
|
||||
our $flag_ndb_status_ok= 1;
|
||||
our $flag_ndb_slave_status_ok= 1;
|
||||
|
||||
######################################################################
|
||||
#
|
||||
@ -322,9 +329,13 @@ sub kill_running_server ();
|
||||
sub kill_and_cleanup ();
|
||||
sub check_ssl_support ();
|
||||
sub check_ndbcluster_support ();
|
||||
sub rm_ndbcluster_tables ($);
|
||||
sub ndbcluster_install ();
|
||||
sub ndbcluster_start ();
|
||||
sub ndbcluster_stop ();
|
||||
sub ndbcluster_install_slave ();
|
||||
sub ndbcluster_start_slave ();
|
||||
sub ndbcluster_stop_slave ();
|
||||
sub run_benchmarks ($);
|
||||
sub run_tests ();
|
||||
sub mysql_install_db ();
|
||||
@ -493,6 +504,7 @@ sub command_line_setup () {
|
||||
my $opt_master_myport= 9306;
|
||||
my $opt_slave_myport= 9308;
|
||||
$opt_ndbcluster_port= 9350;
|
||||
$opt_ndbcluster_port_slave= 9358;
|
||||
my $im_port= 9310;
|
||||
my $im_mysqld1_port= 9312;
|
||||
my $im_mysqld2_port= 9314;
|
||||
@ -529,6 +541,10 @@ sub command_line_setup () {
|
||||
'force' => \$opt_force,
|
||||
'with-ndbcluster' => \$opt_with_ndbcluster,
|
||||
'skip-ndbcluster|skip-ndb' => \$opt_skip_ndbcluster,
|
||||
'with-ndbcluster-slave' => \$opt_with_ndbcluster_slave,
|
||||
'skip-ndbcluster-slave|skip-ndb-slave'
|
||||
=> \$opt_skip_ndbcluster_slave,
|
||||
'ndb-extra-test' => \$opt_ndb_extra_test,
|
||||
'do-test=s' => \$opt_do_test,
|
||||
'suite=s' => \$opt_suite,
|
||||
'skip-rpl' => \$opt_skip_rpl,
|
||||
@ -539,6 +555,7 @@ sub command_line_setup () {
|
||||
'master_port=i' => \$opt_master_myport,
|
||||
'slave_port=i' => \$opt_slave_myport,
|
||||
'ndbcluster_port=i' => \$opt_ndbcluster_port,
|
||||
'ndbcluster_port_slave=i' => \$opt_ndbcluster_port_slave,
|
||||
'manager-port=i' => \$opt_manager_port, # Currently not used
|
||||
'im-port=i' => \$im_port, # Instance Manager port.
|
||||
'im-mysqld1-port=i' => \$im_mysqld1_port, # Port of mysqld, controlled by IM
|
||||
@ -553,6 +570,7 @@ sub command_line_setup () {
|
||||
# Run test on running server
|
||||
'extern' => \$opt_extern,
|
||||
'ndbconnectstring=s' => \$opt_ndbconnectstring,
|
||||
'ndbconnectstring-slave=s' => \$opt_ndbconnectstring_slave,
|
||||
|
||||
# Debugging
|
||||
'gdb' => \$opt_gdb,
|
||||
@ -759,9 +777,25 @@ sub command_line_setup () {
|
||||
$opt_ndbconnectstring= "host=localhost:$opt_ndbcluster_port";
|
||||
}
|
||||
|
||||
if ( $opt_ndbconnectstring_slave )
|
||||
{
|
||||
$glob_use_running_ndbcluster_slave= 1;
|
||||
$opt_with_ndbcluster_slave= 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
$opt_ndbconnectstring_slave= "host=localhost:$opt_ndbcluster_port_slave";
|
||||
}
|
||||
|
||||
if ( $opt_skip_ndbcluster )
|
||||
{
|
||||
$opt_with_ndbcluster= 0;
|
||||
$opt_skip_ndbcluster_slave= 1;
|
||||
}
|
||||
|
||||
if ( $opt_skip_ndbcluster_slave )
|
||||
{
|
||||
$opt_with_ndbcluster_slave= 0;
|
||||
}
|
||||
|
||||
# The ":s" in the argument spec, means we have three different cases
|
||||
@ -855,6 +889,8 @@ sub command_line_setup () {
|
||||
path_mysock => "$sockdir/slave.sock",
|
||||
path_myport => $opt_slave_myport,
|
||||
start_timeout => 400,
|
||||
|
||||
ndbcluster => 1, # ndbcluster not started
|
||||
};
|
||||
|
||||
$slave->[1]=
|
||||
@ -1188,6 +1224,8 @@ sub kill_running_server () {
|
||||
|
||||
ndbcluster_stop();
|
||||
$master->[0]->{'ndbcluster'}= 1;
|
||||
ndbcluster_stop_slave();
|
||||
$slave->[0]->{'ndbcluster'}= 1;
|
||||
}
|
||||
}
|
||||
|
||||
@ -1358,6 +1396,15 @@ sub ndbcluster_start () {
|
||||
return 0;
|
||||
}
|
||||
|
||||
sub rm_ndbcluster_tables ($) {
|
||||
my $dir= shift;
|
||||
foreach my $bin ( glob("$dir/cluster_replication/apply_status*"),
|
||||
glob("$dir/cluster_replication/schema*") )
|
||||
{
|
||||
unlink($bin);
|
||||
}
|
||||
}
|
||||
|
||||
sub ndbcluster_stop () {
|
||||
|
||||
if ( ! $opt_with_ndbcluster or $glob_use_running_ndbcluster )
|
||||
@ -1371,6 +1418,71 @@ sub ndbcluster_stop () {
|
||||
"--stop"],
|
||||
"", "/dev/null", "", "");
|
||||
|
||||
rm_ndbcluster_tables ($master->[0]->{'path_myddir'});
|
||||
rm_ndbcluster_tables ($master->[1]->{'path_myddir'});
|
||||
return;
|
||||
}
|
||||
|
||||
sub ndbcluster_install_slave () {
|
||||
|
||||
if ( ! $opt_with_ndbcluster_slave or $glob_use_running_ndbcluster_slave )
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
mtr_report("Install ndbcluster slave");
|
||||
if ( mtr_run("$glob_mysql_test_dir/ndb/ndbcluster",
|
||||
["--port=$opt_ndbcluster_port_slave",
|
||||
"--data-dir=$opt_vardir",
|
||||
"--small",
|
||||
"--ndbd-nodes=1",
|
||||
"--initial"],
|
||||
"", "", "", "") )
|
||||
{
|
||||
mtr_error("Error ndbcluster_install_slave");
|
||||
return 1;
|
||||
}
|
||||
|
||||
ndbcluster_stop_slave();
|
||||
$slave->[0]->{'ndbcluster'}= 1;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
sub ndbcluster_start_slave () {
|
||||
|
||||
if ( ! $opt_with_ndbcluster_slave or $glob_use_running_ndbcluster_slave )
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
# FIXME, we want to _append_ output to file $file_ndb_testrun_log instead of /dev/null
|
||||
if ( mtr_run("$glob_mysql_test_dir/ndb/ndbcluster",
|
||||
["--port=$opt_ndbcluster_port_slave",
|
||||
"--data-dir=$opt_vardir",
|
||||
"--ndbd-nodes=1"],
|
||||
"", "/dev/null", "", "") )
|
||||
{
|
||||
mtr_error("Error ndbcluster_start_slave");
|
||||
return 1;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
sub ndbcluster_stop_slave () {
|
||||
|
||||
if ( ! $opt_with_ndbcluster_slave or $glob_use_running_ndbcluster_slave )
|
||||
{
|
||||
return;
|
||||
}
|
||||
# FIXME, we want to _append_ output to file $file_ndb_testrun_log instead of /dev/null
|
||||
mtr_run("$glob_mysql_test_dir/ndb/ndbcluster",
|
||||
["--port=$opt_ndbcluster_port_slave",
|
||||
"--data-dir=$opt_vardir",
|
||||
"--stop"],
|
||||
"", "/dev/null", "", "");
|
||||
|
||||
rm_ndbcluster_tables ($slave->[0]->{'path_myddir'});
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
@ -1525,6 +1637,13 @@ sub mysql_install_db () {
|
||||
$flag_ndb_status_ok= 0;
|
||||
}
|
||||
|
||||
if ( ndbcluster_install_slave() )
|
||||
{
|
||||
# failed to install, disable usage but flag that its no ok
|
||||
$opt_with_ndbcluster_slave= 0;
|
||||
$flag_ndb_slave_status_ok= 0;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -1848,6 +1967,18 @@ sub run_testcase ($) {
|
||||
{
|
||||
if ( ! $slave->[$idx]->{'pid'} )
|
||||
{
|
||||
if ( $idx == 0)
|
||||
{
|
||||
if ( $slave->[0]->{'ndbcluster'} )
|
||||
{
|
||||
$slave->[0]->{'ndbcluster'}= ndbcluster_start_slave();
|
||||
if ( $slave->[0]->{'ndbcluster'} )
|
||||
{
|
||||
report_failure_and_restart($tinfo);
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
$slave->[$idx]->{'pid'}=
|
||||
mysqld_start('slave',$idx,
|
||||
$tinfo->{'slave_opt'}, $tinfo->{'slave_mi'});
|
||||
@ -2115,6 +2246,12 @@ sub mysqld_arguments ($$$$$) {
|
||||
{
|
||||
mtr_add_arg($args, "%s--skip-ndbcluster", $prefix);
|
||||
}
|
||||
if ( $opt_with_ndbcluster )
|
||||
{
|
||||
mtr_add_arg($args, "%s--ndbcluster", $prefix);
|
||||
mtr_add_arg($args, "%s--ndb-connectstring=%s", $prefix,
|
||||
$opt_ndbconnectstring);
|
||||
}
|
||||
}
|
||||
|
||||
if ( $type eq 'slave' )
|
||||
@ -2171,6 +2308,17 @@ sub mysqld_arguments ($$$$$) {
|
||||
mtr_add_arg($args, "%s--server-id=%d", $prefix, $slave_server_id);
|
||||
mtr_add_arg($args, "%s--rpl-recovery-rank=%d", $prefix, $slave_rpl_rank);
|
||||
}
|
||||
|
||||
if ( $opt_skip_ndbcluster_slave )
|
||||
{
|
||||
mtr_add_arg($args, "%s--skip-ndbcluster", $prefix);
|
||||
}
|
||||
if ( $idx == 0 and $opt_with_ndbcluster_slave )
|
||||
{
|
||||
mtr_add_arg($args, "%s--ndbcluster", $prefix);
|
||||
mtr_add_arg($args, "%s--ndb-connectstring=%s", $prefix,
|
||||
$opt_ndbconnectstring_slave);
|
||||
}
|
||||
} # end slave
|
||||
|
||||
if ( $opt_debug )
|
||||
@ -2187,13 +2335,6 @@ sub mysqld_arguments ($$$$$) {
|
||||
}
|
||||
}
|
||||
|
||||
if ( $opt_with_ndbcluster )
|
||||
{
|
||||
mtr_add_arg($args, "%s--ndbcluster", $prefix);
|
||||
mtr_add_arg($args, "%s--ndb-connectstring=%s", $prefix,
|
||||
$opt_ndbconnectstring);
|
||||
}
|
||||
|
||||
# FIXME always set nowdays??? SMALL_SERVER
|
||||
mtr_add_arg($args, "%s--key_buffer_size=1M", $prefix);
|
||||
mtr_add_arg($args, "%s--sort_buffer=256K", $prefix);
|
||||
@ -2408,6 +2549,12 @@ sub stop_slaves () {
|
||||
}
|
||||
}
|
||||
|
||||
if ( ! $slave->[0]->{'ndbcluster'} )
|
||||
{
|
||||
ndbcluster_stop_slave();
|
||||
$slave->[0]->{'ndbcluster'}= 1;
|
||||
}
|
||||
|
||||
mtr_stop_mysqld_servers(\@args);
|
||||
}
|
||||
|
||||
@ -2617,6 +2764,8 @@ sub run_mysqltest ($) {
|
||||
$ENV{'MYSQL_MY_PRINT_DEFAULTS'}= $exe_my_print_defaults;
|
||||
|
||||
$ENV{'NDB_STATUS_OK'}= $flag_ndb_status_ok;
|
||||
$ENV{'NDB_SLAVE_STATUS_OK'}= $flag_ndb_slave_status_ok;
|
||||
$ENV{'NDB_EXTRA_TEST'}= $opt_ndb_extra_test;
|
||||
$ENV{'NDB_MGM'}= $exe_ndb_mgm;
|
||||
$ENV{'NDB_BACKUP_DIR'}= $path_ndb_backup_dir;
|
||||
$ENV{'NDB_TOOLS_DIR'}= $path_ndb_tools_dir;
|
||||
|
Reference in New Issue
Block a user