Commit 4d7944f8 authored by MySQL Build Team's avatar MySQL Build Team

Backport into build-200911241145-5.1.40sp1

> ------------------------------------------------------------
> revno: 1810.3961.12
> revision-id: li-bing.song@sun.com-20091103090041-zj7nedx6ok5jgges
> parent: davi.arnaut@sun.com-20091102201021-1brn7cjb1kvqg9gr
> committer: <Li-Bing.Song@sun.com>
> branch nick: mysql-5.0-bugteam
> timestamp: Tue 2009-11-03 17:00:41 +0800
> message:
>   BUG#48216 Replication fails on all slaves after upgrade to 5.0.86 on master
>   
>   When a sessione is closed, all temporary tables of the session are automatically 
>   dropped and are binlogged. But it will be binlogged with wrong database names when
>   the length of the temporary tables' database names are greater than the 
>   length of the current database name or the current database is not set.
>   
>   Query_log_event's db_len is forgot to set when Query_log_event's db is set.
>   This patch wrote code to set db_len immediately after db has set.
parent ecd2a1b2
...@@ -1547,6 +1547,7 @@ void close_temporary_tables(THD *thd) ...@@ -1547,6 +1547,7 @@ void close_temporary_tables(THD *thd)
s_query.length() - 1 /* to remove trailing ',' */, s_query.length() - 1 /* to remove trailing ',' */,
0, FALSE, 0); 0, FALSE, 0);
qinfo.db= db.ptr(); qinfo.db= db.ptr();
qinfo.db_len= db.length();
thd->variables.character_set_client= cs_save; thd->variables.character_set_client= cs_save;
mysql_bin_log.write(&qinfo); mysql_bin_log.write(&qinfo);
thd->variables.pseudo_thread_id= save_pseudo_thread_id; thd->variables.pseudo_thread_id= save_pseudo_thread_id;
......
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