summaryrefslogtreecommitdiff
path: root/mysql-test/mysql-test-run.pl
diff options
context:
space:
mode:
authorunknown <jani@ua141d10.elisa.omakaista.fi>2006-05-09 20:50:29 +0300
committerunknown <jani@ua141d10.elisa.omakaista.fi>2006-05-09 20:50:29 +0300
commitf296bb095d76c8b296ed56301d9ac6fe589c05b2 (patch)
treeee3755ece547e22530426e7c62dd99fe5716dedd /mysql-test/mysql-test-run.pl
parent893317aebca6a66fff10183dc920768448556617 (diff)
parentd6c2616c3ff4f3035f140f1b2923186fc8ae3601 (diff)
downloadmariadb-git-f296bb095d76c8b296ed56301d9ac6fe589c05b2.tar.gz
Merge ua141d10.elisa.omakaista.fi:/home/my/bk/mysql-5.0
into ua141d10.elisa.omakaista.fi:/home/my/bk/mysql-5.1-new BitKeeper/deleted/.del-changelog-4.0.xml~8f56ee8a913e848b: Auto merged BitKeeper/deleted/.del-changelog-4.1.xml~8aa496ebed09d868: Auto merged BitKeeper/deleted/.del-changelog-5.0.xml~f4c50926ccdd7434: Auto merged BitKeeper/deleted/.del-client-req.pem~efd482e1d290d4d8: Auto merged BitKeeper/deleted/.del-server-req.pem~16301893cacf1be4: Auto merged client/mysql.cc: Auto merged configure.in: Auto merged BitKeeper/deleted/.del-Makefile.am~de166d6fcac3b9b6: Auto merged BitKeeper/deleted/.del-NOTES~e926d3e6929ac052: Auto merged client/mysqldump.c: Auto merged client/mysqlimport.c: Auto merged client/mysqltest.c: Auto merged include/mysql.h: Auto merged libmysql/libmysql.c: Auto merged mysql-test/mysql-test-run.pl: Auto merged mysql-test/r/auto_increment.result: Auto merged mysql-test/r/date_formats.result: Auto merged mysql-test/r/func_misc.result: Auto merged mysql-test/r/gis-rtree.result: Auto merged mysql-test/r/information_schema.result: Auto merged mysql-test/r/ndb_condition_pushdown.result: Auto merged mysql-test/r/symlink.result: Auto merged mysql-test/std_data/cacert.pem: Auto merged mysql-test/std_data/client-cert.pem: Auto merged mysql-test/std_data/client-key.pem: Auto merged mysql-test/std_data/server-cert.pem: Auto merged mysql-test/std_data/server-key.pem: Auto merged mysql-test/t/date_formats.test: Auto merged mysql-test/t/having.test: Auto merged mysql-test/t/information_schema.test: Auto merged mysql-test/t/ndb_condition_pushdown.test: Auto merged sql/item_func.cc: Auto merged sql/item_timefunc.cc: Auto merged sql/mysql_priv.h: Auto merged sql/set_var.cc: Auto merged sql/sql_acl.cc: Auto merged sql/sql_acl.h: Auto merged sql/sql_lex.cc: Auto merged sql/sql_lex.h: Auto merged sql-common/client.c: Auto merged sql/sql_parse.cc: Auto merged sql/sql_prepare.cc: Auto merged sql/sql_select.cc: Auto merged sql/sql_show.cc: Auto merged storage/ndb/include/ndbapi/NdbOperation.hpp: Auto merged storage/ndb/include/util/NdbSqlUtil.hpp: Auto merged storage/ndb/src/common/util/NdbSqlUtil.cpp: Auto merged storage/ndb/src/kernel/blocks/dbtc/DbtcInit.cpp: Auto merged vio/vio.c: Auto merged client/client_priv.h: manual merge include/violite.h: Automatic mysql-test/Makefile.am: manual merge mysql-test/r/mysqldump.result: Automatic mysql-test/r/rpl_user_variables.result: Manual merge (diff is because lars removed displaying of binlog) mysql-test/t/disabled.def: manual merge mysql-test/t/mysqldump.test: manual merge mysql-test/t/rpl_user_variables.test: manual merge (Changes becasue of lars removed binlog logging) sql/mysqld.cc: manual merge vio/viossl.c: manual merge vio/viosslfactories.c: manual merge client/client_priv.h.rej: merge 5.0 -> 5.1
Diffstat (limited to 'mysql-test/mysql-test-run.pl')
-rwxr-xr-xmysql-test/mysql-test-run.pl50
1 files changed, 35 insertions, 15 deletions
diff --git a/mysql-test/mysql-test-run.pl b/mysql-test/mysql-test-run.pl
index 0087459e1dd..c14e6d4d534 100755
--- a/mysql-test/mysql-test-run.pl
+++ b/mysql-test/mysql-test-run.pl
@@ -134,7 +134,6 @@ our $glob_win32= 0; # OS and native Win32 executables
our $glob_win32_perl= 0; # ActiveState Win32 Perl
our $glob_cygwin_perl= 0; # Cygwin Perl
our $glob_cygwin_shell= undef;
-our $glob_use_libtool= 1;
our $glob_mysql_test_dir= undef;
our $glob_mysql_bench_dir= undef;
our $glob_hostname= undef;
@@ -192,6 +191,7 @@ our $exe_slave_mysqld;
our $exe_im;
our $exe_my_print_defaults;
our $lib_udf_example;
+our $exe_libtool;
our $opt_bench= 0;
our $opt_small_bench= 0;
@@ -390,7 +390,6 @@ sub main () {
check_ndbcluster_support(); # We check whether to actually use it later
check_ssl_support();
- check_running_as_root();
environment_setup();
signal_setup();
@@ -458,12 +457,6 @@ sub initial_setup () {
$glob_cygwin_perl= ($^O eq "cygwin");
$glob_win32= ($glob_win32_perl or $glob_cygwin_perl);
- # Use libtool on all platforms except windows
- if ( $glob_win32 )
- {
- $glob_use_libtool= 0;
- }
-
# We require that we are in the "mysql-test" directory
# to run mysql-test-run
@@ -1013,6 +1006,21 @@ sub snapshot_setup () {
sub executable_setup () {
+ #
+ # Check if libtool is available in this distribution/clone
+ # we need it when valgrinding or debugging non installed binary
+ # Otherwise valgrind will valgrind the libtool wrapper or bash
+ # and gdb will not find the real executable to debug
+ #
+ if ( -x "../libtool")
+ {
+ $exe_libtool= "../libtool";
+ if ($opt_valgrind or $glob_debugger)
+ {
+ mtr_report("Using \"$exe_libtool\" when running valgrind or debugger");
+ }
+ }
+
if ( $opt_source_dist )
{
if ( $glob_win32 )
@@ -1375,7 +1383,7 @@ sub kill_and_cleanup () {
sub check_running_as_root () {
# Check if running as root
# i.e a file can be read regardless what mode we set it to
- my $test_file= "test_running_as_root.txt";
+ my $test_file= "$opt_vardir/test_running_as_root.txt";
mtr_tofile($test_file, "MySQL");
chmod(oct("0000"), $test_file);
@@ -1821,6 +1829,7 @@ sub initialize_servers () {
save_installed_db();
}
}
+ check_running_as_root();
}
}
@@ -2869,6 +2878,15 @@ sub mysqld_start ($$$$$) {
$exe= undef;
}
+ if ($exe_libtool and $opt_valgrind)
+ {
+ # Add "libtool --mode-execute"
+ # if running in valgrind(to avoid valgrinding bash)
+ unshift(@$args, "--mode=execute", $exe);
+ $exe= $exe_libtool;
+ }
+
+
if ( $type eq 'master' )
{
if ( ! defined $exe or
@@ -3403,12 +3421,12 @@ sub run_mysqltest ($) {
debugger_arguments(\$args, \$exe, "client");
}
- if ($glob_use_libtool and $opt_valgrind)
+ if ($exe_libtool and $opt_valgrind)
{
# Add "libtool --mode-execute" before the test to execute
# if running in valgrind(to avoid valgrinding bash)
unshift(@$args, "--mode=execute", $exe);
- $exe= "libtool";
+ $exe= $exe_libtool;
}
if ( $opt_check_testcases )
@@ -3478,9 +3496,9 @@ sub gdb_arguments {
mtr_add_arg($$args, "$type");
mtr_add_arg($$args, "-e");
- if ( $glob_use_libtool )
+ if ( $exe_libtool )
{
- mtr_add_arg($$args, "libtool");
+ mtr_add_arg($$args, $exe_libtool);
mtr_add_arg($$args, "--mode=execute");
}
@@ -3540,9 +3558,9 @@ sub ddd_arguments {
my $save_exe= $$exe;
$$args= [];
- if ( $glob_use_libtool )
+ if ( $exe_libtool )
{
- $$exe= "libtool";
+ $$exe= $exe_libtool;
mtr_add_arg($$args, "--mode=execute");
mtr_add_arg($$args, "ddd");
}
@@ -3563,6 +3581,8 @@ sub debugger_arguments {
my $exe= shift;
my $debugger= $opt_debugger || $opt_client_debugger;
+ # FIXME Need to change the below "eq"'s to
+ # "case unsensitive string contains"
if ( $debugger eq "vcexpress" or $debugger eq "vc")
{
# vc[express] /debugexe exe arg1 .. argn