List:Commits« Previous MessageNext Message »
From:Kristofer Pettersson Date:August 6 2008 4:21pm
Subject:bzr commit into mysql-5.1 branch (kpettersson:2683)
View as plain text  
#At file:///home/thek/Development/cpp/mysqlbzr/mysql-5.1-bugteam/

 2683 Kristofer Pettersson	2008-08-06 [merge]
      Manual merge 5.0->5.1
modified:
  sql/share/errmsg.txt
  sql/sql_acl.cc
  sql/sql_parse.cc

=== modified file 'sql/share/errmsg.txt'
--- a/sql/share/errmsg.txt	2008-07-24 13:41:55 +0000
+++ b/sql/share/errmsg.txt	2008-08-06 14:20:41 +0000
@@ -4718,7 +4718,7 @@ ER_SLAVE_IGNORED_TABLE  
         swe "Slav SQL tr�n ignorerade fr�n pga en replicate-*-table regel"
 ER_INCORRECT_GLOBAL_LOCAL_VAR  
         eng "Variable '%-.192s' is a %s variable"
-        serbian "Incorrect foreign key definition for '%-.192s': %s"
+        serbian "Promenljiva '%-.192s' je %s promenljiva"
         ger "Variable '%-.192s' ist eine %s-Variable"
         nla "Variabele '%-.192s' is geen %s variabele"
         spa "Variable '%-.192s' es una %s variable"

=== modified file 'sql/sql_acl.cc'
--- a/sql/sql_acl.cc	2008-07-17 18:26:55 +0000
+++ b/sql/sql_acl.cc	2008-08-06 14:20:41 +0000
@@ -5701,7 +5701,6 @@ bool mysql_drop_user(THD *thd, List <LEX
 
   while ((tmp_user_name= user_list++))
   {
-    user_name= get_current_user(thd, tmp_user_name);
     if (!(user_name= get_current_user(thd, tmp_user_name)))
     {
       result= TRUE;

=== modified file 'sql/sql_parse.cc'
--- a/sql/sql_parse.cc	2008-07-15 01:43:12 +0000
+++ b/sql/sql_parse.cc	2008-08-06 14:20:41 +0000
@@ -6484,15 +6484,24 @@ bool reload_acl_and_cache(THD *thd, ulon
       thd->store_globals();
       lex_start(thd);
     }
+    
     if (thd)
     {
-      if (acl_reload(thd))
-        result= 1;
-      if (grant_reload(thd))
+      bool reload_acl_failed= acl_reload(thd);
+      bool reload_grants_failed= grant_reload(thd);
+      bool reload_servers_failed= servers_reload(thd);
+      
+      if (reload_acl_failed || reload_grants_failed || reload_servers_failed)
+      {
         result= 1;
-      if (servers_reload(thd))
-        result= 1; /* purecov: inspected */
+        /*
+          When an error is returned, my_message may have not been called and
+          the client will hang waiting for a response.
+        */
+        my_error(ER_UNKNOWN_ERROR, MYF(0), "FLUSH PRIVILEGES failed");
+      }
     }
+
     if (tmp_thd)
     {
       delete tmp_thd;
@@ -6581,8 +6590,10 @@ bool reload_acl_and_cache(THD *thd, ulon
       tmp_write_to_binlog= 0;
       if (lock_global_read_lock(thd))
 	return 1;                               // Killed
-      result= close_cached_tables(thd, tables, FALSE, (options & REFRESH_FAST) ?
-                                  FALSE : TRUE, TRUE);
+      if (close_cached_tables(thd, tables, FALSE, (options & REFRESH_FAST) ?
+                              FALSE : TRUE, TRUE));
+          result= 1;
+      
       if (make_global_read_lock_block_commit(thd)) // Killed
       {
         /* Don't leave things in a half-locked state */
@@ -6591,8 +6602,11 @@ bool reload_acl_and_cache(THD *thd, ulon
       }
     }
     else
-      result= close_cached_tables(thd, tables, FALSE, (options & REFRESH_FAST) ?
-                                  FALSE : TRUE, FALSE);
+    {
+      if (close_cached_tables(thd, tables, FALSE, (options & REFRESH_FAST) ?
+                              FALSE : TRUE, FALSE));
+        result= 1;
+    }
     my_dbopt_cleanup();
   }
   if (options & REFRESH_HOSTS)
@@ -6615,8 +6629,8 @@ bool reload_acl_and_cache(THD *thd, ulon
 #ifdef OPENSSL
    if (options & REFRESH_DES_KEY_FILE)
    {
-     if (des_key_file)
-       result=load_des_key_file(des_key_file);
+     if (des_key_file && load_des_key_file(des_key_file))
+         result= 1;
    }
 #endif
 #ifdef HAVE_REPLICATION

Thread
bzr commit into mysql-5.1 branch (kpettersson:2683) Kristofer Pettersson6 Aug