Commit 1bee5903 authored by Michael Widenius's avatar Michael Widenius

Removed compiler warnings

Removed random failures from test suite

mysql-test/extra/rpl_tests/rpl_insert_id_pk.test:
  Make test predicatable.
mysql-test/include/maria_empty_logs.inc:
  We can't use 'Threads_connected' for syncronization, as the 'check_warnings' thread that just quit may still be counted in 'Threads_connected'
  Now we just wait until MySQLD answers again, which should be good enough for our purposes
mysql-test/suite/binlog/r/binlog_index.result:
  Updated results file
mysql-test/suite/binlog/t/binlog_index-master.opt:
  Added option file to not get stack traces in .err file.
mysql-test/suite/binlog/t/binlog_index.test:
  Added 'flush tables' to remove warning about crashed suppression file from logs
mysql-test/suite/pbxt/r/multi_statement.result:
  Updated results
mysql-test/suite/pbxt/t/multi_statement-master.opt:
  Added options so that slow query testing makes sense
sql/events.cc:
  Don't write Event Scheduler startup message if warnings are turned off.
sql/handler.cc:
  Removed compiler warning
sql/log.cc:
  Removed compiler warning
sql/mysqld.cc:
  Added option 'test-expect-abort'; If this is set, we don't write message to log in case of 'DBUG_ABORT'.
  (Gives us smaller, easier to read log files)
sql/set_var.cc:
  Removed compiler warning
sql/slave.cc:
  Removed compiler warning
sql/sql_plugin.cc:
  Don't write warnings about disabled plugin if using --log_warnings=0
storage/xtradb/include/ut0lst.h:
  Removed compiler warning
support-files/compiler_warnings.supp:
  Supress warning from xtradb
parent 10af1c1f
...@@ -82,7 +82,6 @@ SET FOREIGN_KEY_CHECKS=0; ...@@ -82,7 +82,6 @@ SET FOREIGN_KEY_CHECKS=0;
# Duplicate Key Errors codes # Duplicate Key Errors codes
--error 1022, ER_DUP_ENTRY --error 1022, ER_DUP_ENTRY
INSERT INTO t1 VALUES (1),(1); INSERT INTO t1 VALUES (1),(1);
sync_slave_with_master;
connection master;
drop table t1; drop table t1;
sync_slave_with_master;
# End of 4.1 tests # End of 4.1 tests
...@@ -11,9 +11,10 @@ ...@@ -11,9 +11,10 @@
connection default; connection default;
let $default_db=`select database()`; let $default_db=`select database()`;
let $MYSQLD_DATADIR= `SELECT @@datadir`; let $MYSQLD_DATADIR= `SELECT @@datadir`;
# it will used at end of test for wait_for_status_var.inc primitive
let $status_var= Threads_connected; #it will used at end of test for wait_for_status_var.inc primitive
let $status_var_value= query_get_value(SHOW STATUS LIKE 'Threads_connected', Value, 1); #let $status_var= Threads_connected;
#let $status_var_value= query_get_value(SHOW STATUS LIKE 'Threads_connected', Value, 1);
connection admin; connection admin;
-- echo * shut down mysqld, removed logs, restarted it -- echo * shut down mysqld, removed logs, restarted it
...@@ -77,12 +78,15 @@ append_file $MYSQLTEST_VARDIR/tmp/mysqld.1.expect; ...@@ -77,12 +78,15 @@ append_file $MYSQLTEST_VARDIR/tmp/mysqld.1.expect;
restart-maria_empty_logs.inc restart-maria_empty_logs.inc
EOF EOF
connection default;
--source include/wait_until_connected_again.inc --source include/wait_until_connected_again.inc
connection default;
# Make sure that all connections are restored # Make sure that all connections are restored
--source include/wait_for_status_var.inc # This is disabled as 'Threads_connected' can't be trusted'
# (It may be affected by 'check_testcase()')
# --source include/wait_for_status_var.inc
# Restore current database as the effect of "use" was lost after restart # Restore current database as the effect of "use" was lost after restart
--disable_query_log --disable_query_log
eval use $default_db; eval use $default_db;
--enable_query_log --enable_query_log
...@@ -3,6 +3,7 @@ call mtr.add_suppression('MSYQL_BIN_LOG::purge_logs failed to process registered ...@@ -3,6 +3,7 @@ call mtr.add_suppression('MSYQL_BIN_LOG::purge_logs failed to process registered
call mtr.add_suppression('MSYQL_BIN_LOG::open failed to sync the index file'); call mtr.add_suppression('MSYQL_BIN_LOG::open failed to sync the index file');
call mtr.add_suppression('Turning logging off for the whole duration of the MySQL server process.'); call mtr.add_suppression('Turning logging off for the whole duration of the MySQL server process.');
call mtr.add_suppression('MSYQL_BIN_LOG::purge_logs failed to clean registers before purging logs.'); call mtr.add_suppression('MSYQL_BIN_LOG::purge_logs failed to clean registers before purging logs.');
flush tables;
flush logs; flush logs;
flush logs; flush logs;
flush logs; flush logs;
......
--skip-stack-trace --test-expect-abort --log-warnings=0
...@@ -11,6 +11,8 @@ call mtr.add_suppression('MSYQL_BIN_LOG::purge_logs failed to process registered ...@@ -11,6 +11,8 @@ call mtr.add_suppression('MSYQL_BIN_LOG::purge_logs failed to process registered
call mtr.add_suppression('MSYQL_BIN_LOG::open failed to sync the index file'); call mtr.add_suppression('MSYQL_BIN_LOG::open failed to sync the index file');
call mtr.add_suppression('Turning logging off for the whole duration of the MySQL server process.'); call mtr.add_suppression('Turning logging off for the whole duration of the MySQL server process.');
call mtr.add_suppression('MSYQL_BIN_LOG::purge_logs failed to clean registers before purging logs.'); call mtr.add_suppression('MSYQL_BIN_LOG::purge_logs failed to clean registers before purging logs.');
flush tables;
let $old=`select @@debug`; let $old=`select @@debug`;
let $MYSQLD_DATADIR= `select @@datadir`; let $MYSQLD_DATADIR= `select @@datadir`;
......
...@@ -47,5 +47,5 @@ i ...@@ -47,5 +47,5 @@ i
3 3
show status like 'Slow_queries'|||| show status like 'Slow_queries'||||
Variable_name Value Variable_name Value
Slow_queries 0 Slow_queries 3
drop table t1|||| drop table t1||||
--slow-query-log
--slow-query-log-file=slow.log
--log-queries-not-using-indexes
...@@ -1263,6 +1263,7 @@ Events::load_events_from_db(THD *thd) ...@@ -1263,6 +1263,7 @@ Events::load_events_from_db(THD *thd)
} }
} }
} }
if (global_system_variables.log_warnings)
sql_print_information("Event Scheduler: Loaded %d event%s", sql_print_information("Event Scheduler: Loaded %d event%s",
count, (count == 1) ? "" : "s"); count, (count == 1) ? "" : "s");
ret= FALSE; ret= FALSE;
......
...@@ -4298,6 +4298,8 @@ int handler::index_read_idx_map(uchar * buf, uint index, const uchar * key, ...@@ -4298,6 +4298,8 @@ int handler::index_read_idx_map(uchar * buf, uint index, const uchar * key,
enum ha_rkey_function find_flag) enum ha_rkey_function find_flag)
{ {
int error, error1; int error, error1;
LINT_INIT(error1);
error= index_init(index, 0); error= index_init(index, 0);
if (!error) if (!error)
{ {
......
...@@ -1216,6 +1216,7 @@ void LOGGER::deactivate_log_handler(THD *thd, uint log_type) ...@@ -1216,6 +1216,7 @@ void LOGGER::deactivate_log_handler(THD *thd, uint log_type)
{ {
my_bool *tmp_opt= 0; my_bool *tmp_opt= 0;
MYSQL_LOG *file_log; MYSQL_LOG *file_log;
LINT_INIT(file_log);
switch (log_type) { switch (log_type) {
case QUERY_LOG_SLOW: case QUERY_LOG_SLOW:
......
/* Copyright (C) 2000-2008 MySQL AB, 2008-2009 Sun Microsystems, Inc. /* Copyright (C) 2000-2008 MySQL AB, 2008-2009 Sun Microsystems, Inc.
2009-2010 Monty Program Ab
This program is free software; you can redistribute it and/or modify This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
...@@ -382,7 +383,7 @@ static bool volatile select_thread_in_use, signal_thread_in_use; ...@@ -382,7 +383,7 @@ static bool volatile select_thread_in_use, signal_thread_in_use;
static bool volatile ready_to_exit; static bool volatile ready_to_exit;
static my_bool opt_debugging= 0, opt_external_locking= 0, opt_console= 0; static my_bool opt_debugging= 0, opt_external_locking= 0, opt_console= 0;
static my_bool opt_short_log_format= 0; static my_bool opt_short_log_format= 0;
static my_bool opt_ignore_wrong_options= 0; static my_bool opt_ignore_wrong_options= 0, opt_expect_abort= 0;
static uint kill_cached_threads, wake_thread; static uint kill_cached_threads, wake_thread;
ulong thread_created; ulong thread_created;
static ulong max_used_connections; static ulong max_used_connections;
...@@ -2530,13 +2531,19 @@ extern "C" sig_handler handle_segfault(int sig) ...@@ -2530,13 +2531,19 @@ extern "C" sig_handler handle_segfault(int sig)
curr_time= my_time(0); curr_time= my_time(0);
localtime_r(&curr_time, &tm); localtime_r(&curr_time, &tm);
fprintf(stderr,"\ fprintf(stderr, "%02d%02d%02d %2d:%02d:%02d ",
%02d%02d%02d %2d:%02d:%02d - mysqld got " SIGNAL_FMT " ;\n\ tm.tm_year % 100, tm.tm_mon+1, tm.tm_mday,
tm.tm_hour, tm.tm_min, tm.tm_sec);
if (opt_expect_abort && sig == SIGABRT)
{
fprintf(stderr,"[Note] mysqld did an expected abort\n");
goto end;
}
fprintf(stderr,"[ERROR] mysqld got " SIGNAL_FMT " ;\n\
This could be because you hit a bug. It is also possible that this binary\n\ This could be because you hit a bug. It is also possible that this binary\n\
or one of the libraries it was linked against is corrupt, improperly built,\n\ or one of the libraries it was linked against is corrupt, improperly built,\n\
or misconfigured. This error can also be caused by malfunctioning hardware.\n", or misconfigured. This error can also be caused by malfunctioning hardware.\n",
tm.tm_year % 100, tm.tm_mon+1, tm.tm_mday,
tm.tm_hour, tm.tm_min, tm.tm_sec,
sig); sig);
fprintf(stderr, "\ fprintf(stderr, "\
We will try our best to scrape up some info that will hopefully help diagnose\n\ We will try our best to scrape up some info that will hopefully help diagnose\n\
...@@ -2655,6 +2662,7 @@ bugs.\n"); ...@@ -2655,6 +2662,7 @@ bugs.\n");
} }
#endif #endif
end:
#ifndef __WIN__ #ifndef __WIN__
/* On Windows, do not terminate, but pass control to exception filter */ /* On Windows, do not terminate, but pass control to exception filter */
exit(1); exit(1);
...@@ -5888,7 +5896,7 @@ enum options_mysqld ...@@ -5888,7 +5896,7 @@ enum options_mysqld
OPT_MIN_EXAMINED_ROW_LIMIT, OPT_MIN_EXAMINED_ROW_LIMIT,
OPT_LOG_SLOW_SLAVE_STATEMENTS, OPT_LOG_SLOW_SLAVE_STATEMENTS,
OPT_DEBUG_CRC, OPT_DEBUG_ON, OPT_OLD_MODE, OPT_DEBUG_CRC, OPT_DEBUG_ON, OPT_OLD_MODE,
OPT_TEST_IGNORE_WRONG_OPTIONS, OPT_TEST_IGNORE_WRONG_OPTIONS, OPT_TEST_RESTART,
#if defined(ENABLED_DEBUG_SYNC) #if defined(ENABLED_DEBUG_SYNC)
OPT_DEBUG_SYNC_TIMEOUT, OPT_DEBUG_SYNC_TIMEOUT,
#endif /* defined(ENABLED_DEBUG_SYNC) */ #endif /* defined(ENABLED_DEBUG_SYNC) */
...@@ -6737,6 +6745,10 @@ log and this option does nothing anymore.", ...@@ -6737,6 +6745,10 @@ log and this option does nothing anymore.",
"Ignore wrong enums values in command line arguments. Useful only for test scripts", "Ignore wrong enums values in command line arguments. Useful only for test scripts",
(uchar**) &opt_ignore_wrong_options, (uchar**) &opt_ignore_wrong_options, (uchar**) &opt_ignore_wrong_options, (uchar**) &opt_ignore_wrong_options,
0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0}, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0},
{"test-expect-abort", OPT_TEST_RESTART,
"Expect that server aborts with 'abort'; Don't write out server variables on 'abort'. Useful only for test scripts",
(uchar**) &opt_expect_abort, (uchar**) &opt_expect_abort,
0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0},
{"timed_mutexes", OPT_TIMED_MUTEXES, {"timed_mutexes", OPT_TIMED_MUTEXES,
"Specify whether to time mutexes (only InnoDB mutexes are currently supported)", "Specify whether to time mutexes (only InnoDB mutexes are currently supported)",
(uchar**) &timed_mutexes, (uchar**) &timed_mutexes, 0, GET_BOOL, NO_ARG, 0, (uchar**) &timed_mutexes, (uchar**) &timed_mutexes, 0, GET_BOOL, NO_ARG, 0,
......
...@@ -2590,7 +2590,7 @@ static int sys_check_log_path(THD *thd, set_var *var) ...@@ -2590,7 +2590,7 @@ static int sys_check_log_path(THD *thd, set_var *var)
char path[FN_REFLEN], buff[FN_REFLEN]; char path[FN_REFLEN], buff[FN_REFLEN];
MY_STAT f_stat; MY_STAT f_stat;
String str(buff, sizeof(buff), system_charset_info), *res; String str(buff, sizeof(buff), system_charset_info), *res;
const char *log_file_str; const char *log_file_str= 0;
size_t path_length; size_t path_length;
if (!(res= var->value->val_str(&str))) if (!(res= var->value->val_str(&str)))
...@@ -2640,7 +2640,7 @@ static int sys_check_log_path(THD *thd, set_var *var) ...@@ -2640,7 +2640,7 @@ static int sys_check_log_path(THD *thd, set_var *var)
err: err:
my_error(ER_WRONG_VALUE_FOR_VAR, MYF(0), var->var->name, my_error(ER_WRONG_VALUE_FOR_VAR, MYF(0), var->var->name,
res ? log_file_str : "NULL"); log_file_str ? log_file_str : "NULL");
return 1; return 1;
} }
...@@ -2649,7 +2649,7 @@ bool update_sys_var_str_path(THD *thd, sys_var_str *var_str, ...@@ -2649,7 +2649,7 @@ bool update_sys_var_str_path(THD *thd, sys_var_str *var_str,
set_var *var, const char *log_ext, set_var *var, const char *log_ext,
bool log_state, uint log_type) bool log_state, uint log_type)
{ {
MYSQL_QUERY_LOG *file_log; MYSQL_QUERY_LOG *file_log= 0;
char buff[FN_REFLEN]; char buff[FN_REFLEN];
char *res= 0, *old_value=(char *)(var ? var->value->str_value.ptr() : 0); char *res= 0, *old_value=(char *)(var ? var->value->str_value.ptr() : 0);
bool result= 0; bool result= 0;
......
...@@ -2255,6 +2255,7 @@ static int exec_relay_log_event(THD* thd, Relay_log_info* rli) ...@@ -2255,6 +2255,7 @@ static int exec_relay_log_event(THD* thd, Relay_log_info* rli)
if (slave_trans_retries) if (slave_trans_retries)
{ {
int temp_err; int temp_err;
LINT_INIT(temp_err);
if (exec_res && (temp_err= has_temporary_error(thd))) if (exec_res && (temp_err= has_temporary_error(thd)))
{ {
const char *errmsg; const char *errmsg;
......
...@@ -1701,6 +1701,7 @@ bool mysql_install_plugin(THD *thd, const LEX_STRING *name, const LEX_STRING *dl ...@@ -1701,6 +1701,7 @@ bool mysql_install_plugin(THD *thd, const LEX_STRING *name, const LEX_STRING *dl
if (tmp->state == PLUGIN_IS_DISABLED) if (tmp->state == PLUGIN_IS_DISABLED)
{ {
if (global_system_variables.log_warnings)
push_warning_printf(thd, MYSQL_ERROR::WARN_LEVEL_WARN, push_warning_printf(thd, MYSQL_ERROR::WARN_LEVEL_WARN,
ER_CANT_INITIALIZE_UDF, ER(ER_CANT_INITIALIZE_UDF), ER_CANT_INITIALIZE_UDF, ER(ER_CANT_INITIALIZE_UDF),
name->str, "Plugin is disabled"); name->str, "Plugin is disabled");
......
...@@ -158,7 +158,7 @@ Inserts a NODE2 after NODE1 in a list. ...@@ -158,7 +158,7 @@ Inserts a NODE2 after NODE1 in a list.
/** Invalidate the pointers in a list node. /** Invalidate the pointers in a list node.
@param NAME list name @param NAME list name
@param N pointer to the node that was removed */ @param N pointer to the node that was removed */
# define UT_LIST_REMOVE_CLEAR(NAME, N) {} while (0) # define UT_LIST_REMOVE_CLEAR(NAME, N) do {} while (0)
#endif #endif
/*******************************************************************//** /*******************************************************************//**
......
...@@ -40,6 +40,7 @@ sync/sync0sync\.c: unused parameter ...@@ -40,6 +40,7 @@ sync/sync0sync\.c: unused parameter
sync/sync0sync\.c: unused variable sync/sync0sync\.c: unused variable
ut/ut0ut\.c: ignoring return value of ut/ut0ut\.c: ignoring return value of
srv/srv0srv\.c: value computed is not used srv/srv0srv\.c: value computed is not used
buf/buf0buf\.c: warning: .*block_mutex.* might be used uninitialized
# #
# bdb is not critical to keep up to date # bdb is not critical to keep up to date
......
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