Commit 95acd124 authored by Bjorn Munch's avatar Bjorn Munch

merge from trunk-mtr

parents 1901e780 9b61982f
...@@ -7711,6 +7711,7 @@ int main(int argc, char **argv) ...@@ -7711,6 +7711,7 @@ int main(int argc, char **argv)
if (!ok_to_do) if (!ok_to_do)
{ {
if (command->type == Q_SOURCE || if (command->type == Q_SOURCE ||
command->type == Q_ERROR ||
command->type == Q_WRITE_FILE || command->type == Q_WRITE_FILE ||
command->type == Q_APPEND_FILE || command->type == Q_APPEND_FILE ||
command->type == Q_PERL) command->type == Q_PERL)
......
...@@ -57,5 +57,5 @@ if (`select @result = 0`){ ...@@ -57,5 +57,5 @@ if (`select @result = 0`){
skip OK; skip OK;
} }
--enable_query_log --enable_query_log
echo ^ Found warnings!!; echo ^ Found warnings in $log_error;
exit; exit;
...@@ -220,7 +220,7 @@ BEGIN ...@@ -220,7 +220,7 @@ BEGIN
WHERE suspicious=1; WHERE suspicious=1;
IF @num_warnings > 0 THEN IF @num_warnings > 0 THEN
SELECT file_name, line SELECT line
FROM error_log WHERE suspicious=1; FROM error_log WHERE suspicious=1;
--SELECT * FROM test_suppressions; --SELECT * FROM test_suppressions;
-- Return 2 -> check failed -- Return 2 -> check failed
......
let $is_win = `select convert(@@version_compile_os using latin1) IN ("Win32","Win64","Windows")`;
let $is_embedded = `select version() like '%embedded%'`;
#echo is_win: $is_win;
#echo is_embedded: $is_embedded;
if ($is_win)
{
if ($is_embedded)
{
skip Not supported with embedded on windows;
}
}
...@@ -30,7 +30,7 @@ int main(int argc, const char** argv ) ...@@ -30,7 +30,7 @@ int main(int argc, const char** argv )
DWORD pid= -1; DWORD pid= -1;
HANDLE shutdown_event; HANDLE shutdown_event;
char safe_process_name[32]= {0}; char safe_process_name[32]= {0};
int retry_open_event= 100; int retry_open_event= 2;
/* Ignore any signals */ /* Ignore any signals */
signal(SIGINT, SIG_IGN); signal(SIGINT, SIG_IGN);
signal(SIGBREAK, SIG_IGN); signal(SIGBREAK, SIG_IGN);
...@@ -51,15 +51,31 @@ int main(int argc, const char** argv ) ...@@ -51,15 +51,31 @@ int main(int argc, const char** argv )
{ {
/* /*
Check if the process is alive, otherwise there is really Check if the process is alive, otherwise there is really
no idea to retry the open of the event no sense to retry the open of the event
*/ */
HANDLE process; HANDLE process;
if ((process= OpenProcess(SYNCHRONIZE, FALSE, pid)) == NULL) DWORD exit_code;
process= OpenProcess(SYNCHRONIZE| PROCESS_QUERY_INFORMATION, FALSE, pid);
if (!process)
{ {
fprintf(stderr, "Could not open event or process %d, error: %d\n", /* Already died */
exit(1);
}
if (!GetExitCodeProcess(process,&exit_code))
{
fprintf(stderr, "GetExitCodeProcess failed, pid= %d, err= %d\n",
pid, GetLastError()); pid, GetLastError());
exit(3); exit(1);
}
if (exit_code != STILL_ACTIVE)
{
/* Already died */
CloseHandle(process);
exit(2);
} }
CloseHandle(process); CloseHandle(process);
if (retry_open_event--) if (retry_open_event--)
......
...@@ -1337,6 +1337,9 @@ sub command_line_setup { ...@@ -1337,6 +1337,9 @@ sub command_line_setup {
push(@valgrind_args, @default_valgrind_args) push(@valgrind_args, @default_valgrind_args)
unless @valgrind_args; unless @valgrind_args;
# Make valgrind run in quiet mode so it only print errors
push(@valgrind_args, "--quiet" );
mtr_report("Running valgrind with options \"", mtr_report("Running valgrind with options \"",
join(" ", @valgrind_args), "\""); join(" ", @valgrind_args), "\"");
} }
...@@ -1794,7 +1797,7 @@ sub environment_setup { ...@@ -1794,7 +1797,7 @@ sub environment_setup {
# -------------------------------------------------------------------------- # --------------------------------------------------------------------------
# Add the path where mysqld will find ha_example.so # Add the path where mysqld will find ha_example.so
# -------------------------------------------------------------------------- # --------------------------------------------------------------------------
if ($mysql_version_id >= 50100 && !(IS_WINDOWS && $opt_embedded_server)) { if ($mysql_version_id >= 50100) {
my $plugin_filename; my $plugin_filename;
if (IS_WINDOWS) if (IS_WINDOWS)
{ {
...@@ -3252,6 +3255,12 @@ sub run_testcase ($) { ...@@ -3252,6 +3255,12 @@ sub run_testcase ($) {
mtr_verbose("Running test:", $tinfo->{name}); mtr_verbose("Running test:", $tinfo->{name});
# Allow only alpanumerics pluss _ - + . in combination names
my $combination= $tinfo->{combination};
if ($combination && $combination !~ /^\w[\w-\.\+]+$/)
{
mtr_error("Combination '$combination' contains illegal characters");
}
# ------------------------------------------------------- # -------------------------------------------------------
# Init variables that can change between each test case # Init variables that can change between each test case
# ------------------------------------------------------- # -------------------------------------------------------
...@@ -3660,7 +3669,7 @@ sub extract_warning_lines ($$) { ...@@ -3660,7 +3669,7 @@ sub extract_warning_lines ($$) {
# of patterns. For more info see BUG#42408 # of patterns. For more info see BUG#42408
qr/^Warning:|mysqld: Warning|\[Warning\]/, qr/^Warning:|mysqld: Warning|\[Warning\]/,
qr/^Error:|\[ERROR\]/, qr/^Error:|\[ERROR\]/,
qr/^==.* at 0x/, qr/^==\d*==/, # valgrind errors
qr/InnoDB: Warning|InnoDB: Error/, qr/InnoDB: Warning|InnoDB: Error/,
qr/^safe_mutex:|allocated at line/, qr/^safe_mutex:|allocated at line/,
qr/missing DBUG_RETURN/, qr/missing DBUG_RETURN/,
...@@ -4285,7 +4294,8 @@ sub mysqld_start ($$) { ...@@ -4285,7 +4294,8 @@ sub mysqld_start ($$) {
$opt_start_timeout, $opt_start_timeout,
$mysqld->{'proc'})) $mysqld->{'proc'}))
{ {
mtr_error("Failed to start mysqld $mysqld->name()"); my $mname= $mysqld->name();
mtr_error("Failed to start mysqld $mname with command $exe");
} }
# Remember options used when starting # Remember options used when starting
......
...@@ -317,6 +317,7 @@ here is the sourced script ...@@ -317,6 +317,7 @@ here is the sourced script
outer=2 ifval=0 outer=2 ifval=0
outer=1 ifval=1 outer=1 ifval=1
here is the sourced script here is the sourced script
ERROR 42S02: Table 'test.nowhere' doesn't exist
In loop In loop
here is the sourced script here is the sourced script
......
...@@ -854,6 +854,7 @@ while ($outer) ...@@ -854,6 +854,7 @@ while ($outer)
} }
# Test source in an if in a while which is false on 1st iteration # Test source in an if in a while which is false on 1st iteration
# Also test --error in same context
let $outer= 2; # Number of outer loops let $outer= 2; # Number of outer loops
let $ifval= 0; # false 1st time let $ifval= 0; # false 1st time
while ($outer) while ($outer)
...@@ -862,6 +863,8 @@ while ($outer) ...@@ -862,6 +863,8 @@ while ($outer)
if ($ifval) { if ($ifval) {
--source $MYSQLTEST_VARDIR/tmp/sourced.inc --source $MYSQLTEST_VARDIR/tmp/sourced.inc
--error ER_NO_SUCH_TABLE
SELECT * from nowhere;
} }
dec $outer; dec $outer;
inc $ifval; inc $ifval;
......
--source include/not_windows_embedded.inc
--source include/have_example_plugin.inc --source include/have_example_plugin.inc
CREATE TABLE t1(a int) ENGINE=EXAMPLE; CREATE TABLE t1(a int) ENGINE=EXAMPLE;
......
--source include/not_windows_embedded.inc
--source include/have_example_plugin.inc --source include/have_example_plugin.inc
SELECT @@global.example_enum_var = 'e2'; SELECT @@global.example_enum_var = 'e2';
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment