summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorunknown <kostja@dipika.(none)>2008-02-08 13:35:11 +0300
committerunknown <kostja@dipika.(none)>2008-02-08 13:35:11 +0300
commited312cb5790c33d91e1160e9a41eb4d9df2675bd (patch)
treedcae6ea3862da55e225e56846cecc2639bbdb229
parentee0b7f38567bf8661d89500b67d115d8a1cb53f8 (diff)
downloadmariadb-git-ed312cb5790c33d91e1160e9a41eb4d9df2675bd.tar.gz
Give a more informative message if we failed to write to mysql.general_log
table.
-rw-r--r--sql/log.cc12
1 files changed, 9 insertions, 3 deletions
diff --git a/sql/log.cc b/sql/log.cc
index 3a09acd8fca..06f4e2d7b78 100644
--- a/sql/log.cc
+++ b/sql/log.cc
@@ -73,23 +73,28 @@ static int binlog_prepare(handlerton *hton, THD *thd, bool all);
*/
class Silence_log_table_errors : public Internal_error_handler
{
+ char m_message[MYSQL_ERRMSG_SIZE];
public:
Silence_log_table_errors()
- {}
+ {
+ m_message[0]= '\0';
+ }
virtual ~Silence_log_table_errors() {}
virtual bool handle_error(uint sql_errno, const char *message,
MYSQL_ERROR::enum_warning_level level,
THD *thd);
+ const char *message() const { return m_message; }
};
bool
Silence_log_table_errors::handle_error(uint /* sql_errno */,
- const char * /* message */,
+ const char *message_arg,
MYSQL_ERROR::enum_warning_level /* level */,
THD * /* thd */)
{
+ strmake(m_message, message_arg, sizeof(m_message));
return TRUE;
}
@@ -437,7 +442,8 @@ bool Log_to_csv_event_handler::
err:
if (result)
- sql_print_error("Failed to write to mysql.general_log");
+ sql_print_error("Failed to write to mysql.general_log: %s",
+ error_handler.message());
if (need_rnd_end)
{