List:Commits« Previous MessageNext Message »
From:magnus.blaudd Date:November 18 2011 10:54am
Subject:bzr push into mysql-trunk-cluster branch (magnus.blaudd:3419 to 3420) WL#5881
View as plain text  
 3420 magnus.blaudd@stripped	2011-11-18
      WL#5881
       - Revert impl. of slave_allow_batching to default behaviour,
         allowing it to be changed although slave sql thread is running
       - Prefix variable with opt_
       - Update test cases
       - Move opt_slave_allow_batching together with the other slave_ variables

    modified:
      mysql-test/suite/rpl/r/rpl_row_basic_allow_batching.result
      mysql-test/suite/rpl/t/rpl_row_basic_allow_batching.test
      sql/log_event.cc
      sql/mysqld.cc
      sql/mysqld.h
      sql/sys_vars.cc
 3419 magnus.blaudd@stripped	2011-11-16
      WL#5881
       - cherrypick fix to silence the most annoying warnings in ndbapi

    modified:
      storage/ndb/include/ndbapi/NdbScanOperation.hpp
      storage/ndb/src/ndbapi/NdbScanOperation.cpp
=== modified file 'mysql-test/suite/rpl/r/rpl_row_basic_allow_batching.result'
--- a/mysql-test/suite/rpl/r/rpl_row_basic_allow_batching.result	2011-11-16 13:34:08 +0000
+++ b/mysql-test/suite/rpl/r/rpl_row_basic_allow_batching.result	2011-11-18 10:45:23 +0000
@@ -3,22 +3,10 @@ include/master-slave.inc
 show variables like 'slave_allow_batching';
 Variable_name	Value
 slave_allow_batching	OFF
-Show that slave_allow_batching cannot be changed while slave is running
-set global slave_allow_batching=ON;
-ERROR HY000: This operation cannot be performed with a running slave; run STOP SLAVE first
-show warnings;
-Level	Code	Message
-Error	1198	This operation cannot be performed with a running slave; run STOP SLAVE first
-show variables like 'slave_allow_batching';
-Variable_name	Value
-slave_allow_batching	OFF
-Now stop slave and change it
-stop slave;
 set global slave_allow_batching=ON;
 show variables like 'slave_allow_batching';
 Variable_name	Value
 slave_allow_batching	ON
-start slave;
 Now the normal test
 CREATE TABLE t1 (C1 CHAR(1), C2 CHAR(1), INDEX (C1)) ENGINE = 'INNODB'  ;
 SELECT * FROM t1;

=== modified file 'mysql-test/suite/rpl/t/rpl_row_basic_allow_batching.test'
--- a/mysql-test/suite/rpl/t/rpl_row_basic_allow_batching.test	2011-11-15 14:30:51 +0000
+++ b/mysql-test/suite/rpl/t/rpl_row_basic_allow_batching.test	2011-11-18 10:45:23 +0000
@@ -4,18 +4,9 @@
 --connection slave
 show variables like 'slave_allow_batching';
 
---echo Show that slave_allow_batching cannot be changed while slave is running
---error ER_SLAVE_MUST_STOP
 set global slave_allow_batching=ON;
-show warnings;
 show variables like 'slave_allow_batching';
 
---echo Now stop slave and change it
-stop slave;
-set global slave_allow_batching=ON;
-show variables like 'slave_allow_batching';
-start slave;
-
 --echo Now the normal test
 --connection master
 

=== modified file 'sql/log_event.cc'
--- a/sql/log_event.cc	2011-11-15 14:34:44 +0000
+++ b/sql/log_event.cc	2011-11-18 10:45:23 +0000
@@ -8722,7 +8722,7 @@ int Rows_log_event::do_apply_event(Relay
       Note that unlike the other thd options set here, this one
       comes from a global, and not from the incoming event.
     */
-    if (slave_allow_batching)
+    if (opt_slave_allow_batching)
       thd->variables.option_bits|= OPTION_ALLOW_BATCH;
     else
       thd->variables.option_bits&= ~OPTION_ALLOW_BATCH;

=== modified file 'sql/mysqld.cc'
--- a/sql/mysqld.cc	2011-11-15 13:42:05 +0000
+++ b/sql/mysqld.cc	2011-11-18 10:45:23 +0000
@@ -397,6 +397,7 @@ my_bool opt_safe_user_create = 0;
 my_bool opt_show_slave_auth_info;
 my_bool opt_log_slave_updates= 0;
 char *opt_slave_skip_errors;
+my_bool opt_slave_allow_batching= 0;
 
 /**
   compatibility option:

=== modified file 'sql/mysqld.h'
--- a/sql/mysqld.h	2011-11-15 13:42:05 +0000
+++ b/sql/mysqld.h	2011-11-18 10:45:23 +0000
@@ -179,7 +179,7 @@ extern ulong slow_launch_threads, slow_l
 extern ulong table_cache_size, table_def_size;
 extern MYSQL_PLUGIN_IMPORT ulong max_connections;
 extern ulong max_connect_errors, connect_timeout;
-extern my_bool slave_allow_batching;
+extern my_bool opt_slave_allow_batching;
 extern my_bool allow_slave_start;
 extern LEX_CSTRING reason_slave_blocked;
 extern ulong slave_trans_retries;

=== modified file 'sql/sys_vars.cc'
--- a/sql/sys_vars.cc	2011-11-15 15:02:56 +0000
+++ b/sql/sys_vars.cc	2011-11-18 10:45:23 +0000
@@ -2809,38 +2809,6 @@ static Sys_var_ulong Sys_profiling_histo
        VALID_RANGE(0, 100), DEFAULT(15), BLOCK_SIZE(1));
 #endif
 
-#ifndef EMBEDDED_LIBRARY
-my_bool slave_allow_batching;
-
-/*
-  Take Active MI lock while checking/updating slave_allow_batching
-  to give atomicity w.r.t. slave state changes
-*/
-static PolyLock_mutex PLock_active_mi(&LOCK_active_mi);
-
-static bool slave_allow_batching_check(sys_var *self, THD *thd, set_var *var)
-{
-  /* Only allow a change if the slave SQL thread is currently stopped */
-  bool slave_sql_running = active_mi->rli->slave_running;
-
-  if (slave_sql_running)
-  {
-    my_error(ER_SLAVE_MUST_STOP, MYF(0));
-    return true;
-  }
-
-  return false;
-}
-
-static Sys_var_mybool Sys_slave_allow_batching(
-       "slave_allow_batching", "Allow slave to batch requests",
-       GLOBAL_VAR(slave_allow_batching),
-       CMD_LINE(OPT_ARG), DEFAULT(FALSE),
-       &PLock_active_mi,
-       NOT_IN_BINLOG,
-       ON_CHECK(slave_allow_batching_check));
-#endif
-
 static Sys_var_harows Sys_select_limit(
        "sql_select_limit",
        "The maximum number of rows to return from SELECT statements",
@@ -3372,6 +3340,11 @@ static Sys_var_mybool Sys_relay_log_reco
        "processed",
        GLOBAL_VAR(relay_log_recovery), CMD_LINE(OPT_ARG), DEFAULT(FALSE));
 
+static Sys_var_mybool Sys_slave_allow_batching(
+       "slave_allow_batching", "Allow slave to batch requests",
+       GLOBAL_VAR(opt_slave_allow_batching),
+       CMD_LINE(OPT_ARG), DEFAULT(FALSE));
+
 static Sys_var_charptr Sys_slave_load_tmpdir(
        "slave_load_tmpdir", "The location where the slave should put "
        "its temporary files when replicating a LOAD DATA INFILE command",

No bundle (reason: useless for push emails).
Thread
bzr push into mysql-trunk-cluster branch (magnus.blaudd:3419 to 3420) WL#5881magnus.blaudd21 Nov