summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMonty <monty@mariadb.org>2015-10-09 13:08:41 +0300
committerMonty <monty@mariadb.org>2015-10-09 13:08:41 +0300
commitaffff1aefc81ea0a3cb778a6617504ccd1e905fc (patch)
tree1940fed350ddac532a5a2a6f5bc2ca867c55a81e
parent602c803bd9c80e88d4e2a611422ad2da0033a111 (diff)
downloadmariadb-git-affff1aefc81ea0a3cb778a6617504ccd1e905fc.tar.gz
Less logging of not critial things during startup/shutdown:
- Added --start option to mysqld which don't prints notes to log on startup This helps to find errors in configure options easier - Dont write [Note] entries to log after we have abort the server This makes it easier to find what went wrong - Don't by default write out Changed limits for max_open_files as this didn't really change from anything the user gave us - Dont write warnings about not using --explicit_defaults_for_timestamp (we don't have plans do depricate the old behaviour)
-rw-r--r--mysql-test/r/mysqld--help.result2
-rw-r--r--sql/log.cc3
-rw-r--r--sql/mysqld.cc18
-rw-r--r--sql/mysqld.h3
4 files changed, 21 insertions, 5 deletions
diff --git a/mysql-test/r/mysqld--help.result b/mysql-test/r/mysqld--help.result
index 1ed098ec12a..c0f5fdc0e82 100644
--- a/mysql-test/r/mysqld--help.result
+++ b/mysql-test/r/mysqld--help.result
@@ -909,6 +909,7 @@ The following options may be given as the first argument:
--show-slave-auth-info
Show user and password in SHOW SLAVE HOSTS on this
master.
+ --silent Don't print [Note] to log during startup.
--skip-bdb Deprecated option; Exist only for compatibility with old
my.cnf files
--skip-grant-tables Start without grant tables. This gives all users FULL
@@ -1386,6 +1387,7 @@ secure-auth TRUE
secure-file-priv (No default value)
server-id 0
show-slave-auth-info FALSE
+silent FALSE
skip-grant-tables TRUE
skip-name-resolve FALSE
skip-networking FALSE
diff --git a/sql/log.cc b/sql/log.cc
index 8302dec986f..cea3d7e855e 100644
--- a/sql/log.cc
+++ b/sql/log.cc
@@ -8455,6 +8455,9 @@ void sql_print_information(const char *format, ...)
va_list args;
DBUG_ENTER("sql_print_information");
+ if (disable_log_notes)
+ DBUG_VOID_RETURN; // Skip notes during start/shutdown
+
va_start(args, format);
error_log_print(INFORMATION_LEVEL, format, args);
va_end(args);
diff --git a/sql/mysqld.cc b/sql/mysqld.cc
index cf1447754ac..881bb2282d4 100644
--- a/sql/mysqld.cc
+++ b/sql/mysqld.cc
@@ -386,7 +386,8 @@ static DYNAMIC_ARRAY all_options;
/* Global variables */
bool opt_bin_log, opt_bin_log_used=0, opt_ignore_builtin_innodb= 0;
-my_bool opt_log, debug_assert_if_crashed_table= 0, opt_help= 0;
+my_bool opt_log, debug_assert_if_crashed_table= 0, opt_help= 0, opt_silent= 0;
+my_bool disable_log_notes;
static my_bool opt_abort;
ulonglong log_output_options;
my_bool opt_userstat_running;
@@ -2012,6 +2013,8 @@ extern "C" void unireg_abort(int exit_code)
usage();
if (exit_code)
sql_print_error("Aborting\n");
+ /* Don't write more notes to the log to not hide error message */
+ disable_log_notes= 1;
#ifdef WITH_WSREP
/* Check if wsrep class is used. If yes, then cleanup wsrep */
@@ -4396,7 +4399,7 @@ static int init_common_variables()
DBUG_PRINT("warning",
("Changed limits: max_open_files: %u max_connections: %ld table_cache: %ld",
files, max_connections, tc_size));
- if (global_system_variables.log_warnings)
+ if (global_system_variables.log_warnings > 1)
sql_print_warning("Changed limits: max_open_files: %u max_connections: %ld table_cache: %ld",
files, max_connections, tc_size);
}
@@ -5934,6 +5937,7 @@ int mysqld_main(int argc, char **argv)
unireg_abort(1);
}
+ disable_log_notes= 0; /* Startup done, now we can give notes again */
sql_print_information(ER_DEFAULT(ER_STARTUP),my_progname,server_version,
((mysql_socket_getfd(unix_sock) == INVALID_SOCKET) ?
(char*) "" : mysqld_unix_port),
@@ -7491,6 +7495,8 @@ struct my_option my_long_options[]=
"Show user and password in SHOW SLAVE HOSTS on this master.",
&opt_show_slave_auth_info, &opt_show_slave_auth_info, 0,
GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0},
+ {"silent", OPT_SILENT, "Don't print [Note] to log during startup.",
+ &opt_silent, &opt_silent, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0},
{"skip-bdb", OPT_DEPRECATED_OPTION,
"Deprecated option; Exist only for compatibility with old my.cnf files",
0, 0, 0, GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0},
@@ -8659,6 +8665,7 @@ static int mysql_init_variables(void)
opt_tc_log_file= (char *)"tc.log"; // no hostname in tc_log file name !
opt_secure_auth= 0;
opt_bootstrap= opt_myisam_log= 0;
+ disable_log_notes= 0;
mqh_used= 0;
kill_in_progress= 0;
cleanup_done= 0;
@@ -9164,7 +9171,9 @@ mysqld_get_one_option(int optid, const struct my_option *opt, char *argument)
}
}
break;
-
+ case OPT_SILENT:
+ disable_log_notes= opt_silent;
+ break;
case OPT_PLUGIN_LOAD:
free_list(opt_plugin_load_list_ptr);
/* fall through */
@@ -9398,6 +9407,7 @@ static int get_options(int *argc_ptr, char ***argv_ptr)
global_system_variables.max_allowed_packet);
}
+#if MYSQL_VERSION_ID > 101001
/*
TIMESTAMP columns get implicit DEFAULT values when
--explicit_defaults_for_timestamp is not set.
@@ -9406,7 +9416,7 @@ static int get_options(int *argc_ptr, char ***argv_ptr)
sql_print_warning("TIMESTAMP with implicit DEFAULT value is deprecated. "
"Please use --explicit_defaults_for_timestamp server "
"option (see documentation for more details).");
-
+#endif
if (log_error_file_ptr != disabled_my_option)
opt_error_log= 1;
diff --git a/sql/mysqld.h b/sql/mysqld.h
index 103c334cd08..2b932b8ce7f 100644
--- a/sql/mysqld.h
+++ b/sql/mysqld.h
@@ -616,6 +616,7 @@ enum options_mysqld
OPT_REPLICATE_WILD_IGNORE_TABLE,
OPT_SAFE,
OPT_SERVER_ID,
+ OPT_SILENT,
OPT_SKIP_HOST_CACHE,
OPT_SKIP_RESOLVE,
OPT_SLAVE_PARALLEL_MODE,
@@ -783,7 +784,7 @@ extern ulong thread_created;
extern scheduler_functions *thread_scheduler, *extra_thread_scheduler;
extern char *opt_log_basename;
extern my_bool opt_master_verify_checksum;
-extern my_bool opt_stack_trace;
+extern my_bool opt_stack_trace, disable_log_notes;
extern my_bool opt_expect_abort;
extern my_bool opt_slave_sql_verify_checksum;
extern my_bool opt_mysql56_temporal_format, strict_password_validation;