[Commits] Rev 3382: MWL#248: added the option skip-stat-tables. in file:///home/igor/maria/maria-5.3-mwl248/

Igor Babaev igor at askmonty.org
Tue Jan 10 07:14:35 EET 2012


At file:///home/igor/maria/maria-5.3-mwl248/

------------------------------------------------------------
revno: 3382
revision-id: igor at askmonty.org-20120110051434-sm86eyc5ii65wgr2
parent: igor at askmonty.org-20120107083430-vad0c6un7ls0svvd
committer: Igor Babaev <igor at askmonty.org>
branch nick: maria-5.3-mwl248
timestamp: Mon 2012-01-09 21:14:34 -0800
message:
  MWL#248: added the option skip-stat-tables.
-------------- next part --------------
=== modified file 'sql/mysql_priv.h'
--- a/sql/mysql_priv.h	2012-01-05 01:51:53 +0000
+++ b/sql/mysql_priv.h	2012-01-10 05:14:34 +0000
@@ -2237,6 +2237,7 @@
 extern my_bool opt_log_slow_admin_statements, opt_log_slow_slave_statements;
 extern my_bool opt_query_cache_strip_comments;
 extern my_bool sp_automatic_privileges, opt_noacl;
+extern my_bool opt_no_stat_tables;
 extern my_bool opt_old_style_user_limits, trust_function_creators;
 extern uint opt_crash_binlog_innodb;
 extern char *shared_memory_base_name, *mysqld_unix_port;

=== modified file 'sql/mysqld.cc'
--- a/sql/mysqld.cc	2012-01-05 01:51:53 +0000
+++ b/sql/mysqld.cc	2012-01-10 05:14:34 +0000
@@ -626,6 +626,7 @@
 */
 volatile bool mqh_used = 0;
 my_bool opt_noacl;
+my_bool opt_no_stat_tables;
 my_bool sp_automatic_privileges= 1;
 
 ulong opt_binlog_rows_event_max_size;
@@ -6191,7 +6192,8 @@
   OPT_MAX_LONG_DATA_SIZE,
   OPT_MASTER_VERIFY_CHECKSUM,
   OPT_SLAVE_SQL_VERIFY_CHECKSUM,
-  OPT_QUERY_CACHE_STRIP_COMMENTS
+  OPT_QUERY_CACHE_STRIP_COMMENTS,
+  OPT_SKIP_STAT_TABLES
 };
 
 
@@ -7018,6 +7020,11 @@
    &opt_noacl, &opt_noacl, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0,
    0},
 #endif
+  {"skip-stat-tables", OPT_SKIP_STAT_TABLES,
+   "Start without statistical tables. Statistical data on table cardinalities, " 
+   "columns and indexes from these tables become unavailable",
+   &opt_no_stat_tables, &opt_no_stat_tables, 0, GET_BOOL, NO_ARG,
+   0, 0, 0, 0, 0, 0},
   {"skip-host-cache", OPT_SKIP_HOST_CACHE, "Don't cache host names.", 0, 0, 0,
    GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0},
   {"skip-locking", OPT_SKIP_LOCK,
@@ -9220,6 +9227,7 @@
     break;
   case OPT_BOOTSTRAP:
     opt_noacl=opt_bootstrap=1;
+    opt_no_stat_tables= 1;
     break;
   case OPT_LOG_SLOW_FILTER:
     global_system_variables.log_slow_filter=

=== modified file 'sql/sql_base.cc'
--- a/sql/sql_base.cc	2012-01-05 01:51:53 +0000
+++ b/sql/sql_base.cc	2012-01-10 05:14:34 +0000
@@ -4855,7 +4855,7 @@
         parent_l->next_global= *parent_l->table->child_last_l;
       }
 
-      if (thd->variables.optimizer_use_stat_tables > 0)
+      if (!opt_no_stat_tables && thd->variables.optimizer_use_stat_tables > 0)
       {
         if (tables->table &&  tables->table->s && 
             tables->table->s->table_category != TABLE_CATEGORY_SYSTEM)    

=== modified file 'sql/sql_table.cc'
--- a/sql/sql_table.cc	2012-01-05 01:51:53 +0000
+++ b/sql/sql_table.cc	2012-01-10 05:14:34 +0000
@@ -4956,7 +4956,7 @@
       DBUG_PRINT("admin", ("operator_func returned: %d", result_code));
     }
 
-    if (operator_func == &handler::ha_analyze &&
+    if (operator_func == &handler::ha_analyze && !opt_no_stat_tables &&
 	thd->variables.optimizer_use_stat_tables > 0)
     {
       if (!(compl_result_code=



More information about the commits mailing list