List:Commits« Previous MessageNext Message »
From:ramil Date:August 2 2007 9:51am
Subject:bk commit into 5.0 tree (ramil:1.2499) BUG#30200
View as plain text  
Below is the list of changes that have just been committed into a local
5.0 repository of ram. When ram does a push these changes will
be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html

ChangeSet@stripped, 2007-08-02 14:51:03+05:00, ramil@stripped +3 -0
  Fix for bug #30200: mysqlbinlog.test: connection_id() not restored under ps-protocol
  
  Problem: thd->thread_specific_used flag is not set executing a statement
  containig connection_id() function using PS protocol, that leads to 
  improper binlog event creation.
  
  Fix: set the flag in the Item_func_connection_id::fix_fields().

  sql/item_create.cc@stripped, 2007-08-02 14:51:00+05:00, ramil@stripped +0 -1
    Fix for bug #30200: mysqlbinlog.test: connection_id() not restored under ps-protocol
      - set the thd->thread_specific_used flag in the Item_func_connection_id::fix_fields()
        to have it properly set using PS protocol as well.

  sql/item_func.cc@stripped, 2007-08-02 14:51:00+05:00, ramil@stripped +1 -0
    Fix for bug #30200: mysqlbinlog.test: connection_id() not restored under ps-protocol
      - set the thd->thread_specific_used flag in the Item_func_connection_id::fix_fields()
        to have it properly set using PS protocol as well.

  sql/sql_parse.cc@stripped, 2007-08-02 14:51:00+05:00, ramil@stripped +1 -0
    Fix for bug #30200: mysqlbinlog.test: connection_id() not restored under ps-protocol
      - reset the thd->thread_specific_used flag in the mysql_reset_thd_for_next_command().

diff -Nrup a/sql/item_create.cc b/sql/item_create.cc
--- a/sql/item_create.cc	2007-08-01 15:27:00 +05:00
+++ b/sql/item_create.cc	2007-08-02 14:51:00 +05:00
@@ -72,7 +72,6 @@ Item *create_func_connection_id(void)
 {
   THD *thd= current_thd;
   thd->lex->safe_to_cache_query= 0;
-  thd->thread_specific_used= TRUE;
   return new Item_func_connection_id();
 }
 
diff -Nrup a/sql/item_func.cc b/sql/item_func.cc
--- a/sql/item_func.cc	2007-08-02 05:13:03 +05:00
+++ b/sql/item_func.cc	2007-08-02 14:51:00 +05:00
@@ -649,6 +649,7 @@ bool Item_func_connection_id::fix_fields
 {
   if (Item_int_func::fix_fields(thd, ref))
     return TRUE;
+  thd->thread_specific_used= TRUE;
   value= thd->variables.pseudo_thread_id;
   return FALSE;
 }
diff -Nrup a/sql/sql_parse.cc b/sql/sql_parse.cc
--- a/sql/sql_parse.cc	2007-07-30 20:27:30 +05:00
+++ b/sql/sql_parse.cc	2007-08-02 14:51:00 +05:00
@@ -5847,6 +5847,7 @@ void mysql_reset_thd_for_next_command(TH
                           SERVER_QUERY_NO_GOOD_INDEX_USED);
   DBUG_ASSERT(thd->security_ctx== &thd->main_security_ctx);
   thd->tmp_table_used= 0;
+  thd->thread_specific_used= FALSE;
   if (!thd->in_sub_stmt)
   {
     if (opt_bin_log)
Thread
bk commit into 5.0 tree (ramil:1.2499) BUG#30200ramil2 Aug
  • Re: bk commit into 5.0 tree (ramil:1.2499) BUG#30200Konstantin Osipov2 Aug