Commit f758ada4 authored by unknown's avatar unknown

cosmetic change


sql/sql_class.h:
  comment
sql/sql_table.cc:
  smarter use of the Disable_binlog object (using a block so that when leaving it either way, the object gets
  destroyed and so properties of the thread get reset).
parent ac866d9e
...@@ -647,7 +647,7 @@ public: ...@@ -647,7 +647,7 @@ public:
so we internally disable it temporarily by creating the Disable_binlog so we internally disable it temporarily by creating the Disable_binlog
object and reset the state by destroying the object (don't forget that! or object and reset the state by destroying the object (don't forget that! or
write code so that the object gets automatically destroyed when leaving a write code so that the object gets automatically destroyed when leaving a
function...). block, see example in sql_table.cc).
*/ */
class Disable_binlog { class Disable_binlog {
private: private:
......
...@@ -1762,7 +1762,6 @@ int mysql_alter_table(THD *thd,char *new_db, char *new_name, ...@@ -1762,7 +1762,6 @@ int mysql_alter_table(THD *thd,char *new_db, char *new_name,
List_iterator<Key> key_it(keys); List_iterator<Key> key_it(keys);
List_iterator<create_field> field_it(create_list); List_iterator<create_field> field_it(create_list);
List<key_part_spec> key_parts; List<key_part_spec> key_parts;
Disable_binlog *disable_binlog;
KEY *key_info=table->key_info; KEY *key_info=table->key_info;
for (uint i=0 ; i < table->keys ; i++,key_info++) for (uint i=0 ; i < table->keys ; i++,key_info++)
...@@ -1925,16 +1924,17 @@ int mysql_alter_table(THD *thd,char *new_db, char *new_name, ...@@ -1925,16 +1924,17 @@ int mysql_alter_table(THD *thd,char *new_db, char *new_name,
} }
else else
create_info->data_file_name=create_info->index_file_name=0; create_info->data_file_name=create_info->index_file_name=0;
/* We don't log the statement, it will be logged later */
disable_binlog= new Disable_binlog(thd);
if ((error=mysql_create_table(thd, new_db, tmp_name,
create_info,
create_list,key_list,1)))
{ {
delete disable_binlog; /*
DBUG_RETURN(error); We don't log the statement, it will be logged later. Using a block so
that disable_binlog is deleted when we leave it in either way.
*/
Disable_binlog disable_binlog(thd);
if ((error=mysql_create_table(thd, new_db, tmp_name,
create_info,
create_list,key_list,1)))
DBUG_RETURN(error);
} }
delete disable_binlog; // reset binlogging properties for next code lines
if (table->tmp_table) if (table->tmp_table)
new_table=open_table(thd,new_db,tmp_name,tmp_name,0); new_table=open_table(thd,new_db,tmp_name,tmp_name,0);
else else
......
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