diff --git a/mysql-test/r/events_bugs.result b/mysql-test/r/events_bugs.result index aa5165c56ac..0b554f97b9a 100644 --- a/mysql-test/r/events_bugs.result +++ b/mysql-test/r/events_bugs.result @@ -18,8 +18,8 @@ end| show processlist; Id User Host db Command Time State Info # root localhost events_test Query # NULL show processlist -# event_scheduler NULL Connect # Sleeping NULL -# root events_test Connect # User lock select get_lock('test_bug16407', 60) +# event_scheduler localhost NULL Connect # Sleeping NULL +# root localhost events_test Connect # User lock select get_lock('test_bug16407', 60) select release_lock('test_bug16407'); release_lock('test_bug16407') 1 @@ -72,17 +72,17 @@ set global event_scheduler= 1; show processlist; Id User Host db Command Time State Info # root localhost events_test Query # NULL show processlist -# event_scheduler NULL Connect # Sleeping NULL -# root events_test Connect # User lock select get_lock('ee_16407_2', 60) -# root events_test Connect # User lock select get_lock('ee_16407_2', 60) -# root events_test Connect # User lock select get_lock('ee_16407_2', 60) +# event_scheduler localhost NULL Connect # Sleeping NULL +# root localhost events_test Connect # User lock select get_lock('ee_16407_2', 60) +# root localhost events_test Connect # User lock select get_lock('ee_16407_2', 60) +# root localhost events_test Connect # User lock select get_lock('ee_16407_2', 60) select release_lock('ee_16407_2'); release_lock('ee_16407_2') 1 show processlist; Id User Host db Command Time State Info # root localhost events_test Query # NULL show processlist -# event_scheduler NULL Connect # Sleeping NULL +# event_scheduler localhost NULL Connect # Sleeping NULL set global event_scheduler= 0; select * from events_smode_test order by ev_name, a; ev_name a @@ -121,16 +121,16 @@ set global event_scheduler= 1; show processlist; Id User Host db Command Time State Info # root localhost events_test Query # NULL show processlist -# event_scheduler NULL Connect # Sleeping NULL -# root events_test Connect # User lock select get_lock('ee_16407_5', 60) -# root events_test Connect # User lock select get_lock('ee_16407_5', 60) +# event_scheduler localhost NULL Connect # Sleeping NULL +# root localhost events_test Connect # User lock select get_lock('ee_16407_5', 60) +# root localhost events_test Connect # User lock select get_lock('ee_16407_5', 60) select release_lock('ee_16407_5'); release_lock('ee_16407_5') 1 show processlist; Id User Host db Command Time State Info # root localhost events_test Query # NULL show processlist -# event_scheduler NULL Connect # Sleeping NULL +# event_scheduler localhost NULL Connect # Sleeping NULL select * from events_smode_test order by ev_name, a; ev_name a ee_16407_6 2004-02-29 diff --git a/sql/event.cc b/sql/event.cc index ad686398006..3fa41996995 100644 --- a/sql/event.cc +++ b/sql/event.cc @@ -1384,7 +1384,7 @@ evex_show_create_event(THD *thd, sp_name *spn, LEX_STRING definer) char show_str_buf[768]; String show_str(show_str_buf, sizeof(show_str_buf), system_charset_info); List field_list; - const char *sql_mode_str; + byte *sql_mode_str; ulong sql_mode_len=0; show_str.length(0); diff --git a/sql/event_executor.cc b/sql/event_executor.cc index 9483c2ab165..b6c6981fd7d 100644 --- a/sql/event_executor.cc +++ b/sql/event_executor.cc @@ -268,7 +268,7 @@ init_event_thread(THD* thd) thd->client_capabilities= 0; thd->security_ctx->master_access= 0; thd->security_ctx->db_access= 0; - thd->security_ctx->host= (char*)my_localhost; + thd->security_ctx->host_or_ip= (char*)my_localhost; my_net_init(&thd->net, 0); thd->net.read_timeout = slave_net_timeout; thd->slave_thread= 0; diff --git a/sql/event_timed.cc b/sql/event_timed.cc index ae5f21d99f5..a1ec7f6b718 100644 --- a/sql/event_timed.cc +++ b/sql/event_timed.cc @@ -111,17 +111,21 @@ void event_timed::init_body(THD *thd) { DBUG_ENTER("event_timed::init_body"); - MEM_ROOT *root= thd->mem_root; + DBUG_PRINT("info", ("body=[%s] body_begin=0x%ld end=0x%ld", body_begin, + body_begin, thd->lex->ptr)); body.length= thd->lex->ptr - body_begin; // Trim nuls at the end while (body.length && body_begin[body.length-1] == '\0') body.length--; - //the first is always space which I cannot skip in the parser - DBUG_ASSERT(my_isspace(thd->variables.character_set_client, *body_begin)); - body.length--; - body.str= strmake_root(root, (char *)body_begin + 1, body.length); + /* the first is always whitespace which I cannot skip in the parser */ + while (my_isspace(thd->variables.character_set_client, *body_begin)) + { + ++body_begin; + --body.length; + } + body.str= strmake_root(thd->mem_root, (char *)body_begin, body.length); DBUG_VOID_RETURN; } diff --git a/sql/sql_show.cc b/sql/sql_show.cc index 3fb273386da..5b25141ee28 100644 --- a/sql/sql_show.cc +++ b/sql/sql_show.cc @@ -3956,7 +3956,7 @@ fill_events_copy_to_schema_table(THD *thd, TABLE *sch_table, TABLE *event_table) // [9] is SQL_MODE { - const char *sql_mode_str=""; + byte *sql_mode_str; ulong sql_mode_len=0; sql_mode_str= sys_var_thd_sql_mode::symbolic_mode_representation(thd, et.sql_mode,