[Commits] 017d4328faa: Spiral Patch 052:

jacob.mathew at mariadb.com jacob.mathew at mariadb.com
Tue Aug 8 17:01:17 EEST 2017


revision-id: 017d4328faa0b9d2d112cf9b4cb00955520bd255 (mariadb-10.2.3-88-g017d4328faa)
parent(s): 04c4117ff7185624ff603fe6da5fa13665750f1b
author: Jacob Mathew
committer: Jacob Mathew
timestamp: 2017-08-04 18:08:01 -0700
message:

Spiral Patch 052:
  052_mariadb-10.2.0.add_partition_skip_pk_sort_for_non_clustered_index.diff
  MDEV-7748

- Option to skip primary key sorting if engine doesn't have clustered index.

- This commit has the following difference compared to the original patch:
  - Added test case.

---
 sql/ha_partition.cc                                |  33 ++-
 ...p_pk_sort_for_non_clustered_pk_table_deinit.inc |  23 +++
 ...kip_pk_sort_for_non_clustered_pk_table_init.inc |  72 +++++++
 ..._skip_pk_sort_for_non_clustered_pk_table.result | 150 ++++++++++++++
 ...on_skip_pk_sort_for_non_clustered_pk_table.test | 228 +++++++++++++++++++++
 5 files changed, 501 insertions(+), 5 deletions(-)

diff --git a/sql/ha_partition.cc b/sql/ha_partition.cc
index 5a0daff3643..165a9748c6e 100644
--- a/sql/ha_partition.cc
+++ b/sql/ha_partition.cc
@@ -103,6 +103,20 @@ static const char *ha_partition_ext[]=
 };
 
 
+/*
+  Skip primary key sorting if engine doesn't have clustered index
+    FALSE: do not skip primary key sorting
+    TRUE:  skip primary key sorting
+*/
+static MYSQL_THDVAR_BOOL(skip_pk_sort_for_non_clustered_pk_table,
+         /* opt flags */ PLUGIN_VAR_OPCMDARG,
+         /* comment */
+          "Skip primary key sorting if engine doesn't have clustered index",
+         /* check */     NULL,
+         /* update */    NULL,
+         /* default */   FALSE);
+
+
 #ifdef HAVE_PSI_INTERFACE
 PSI_mutex_key key_partition_auto_inc_mutex;
 
@@ -6222,7 +6236,8 @@ extern "C" int cmp_key_rowid_part_id(void *ptr, uchar *ref1, uchar *ref2)
   {
     return res;
   }
-  if ((res= file->m_file[0]->cmp_ref(ref1 + PARTITION_BYTES_IN_POS + file->m_rec_length,
+  if (!THDVAR(current_thd, skip_pk_sort_for_non_clustered_pk_table) &&
+      (res= file->m_file[0]->cmp_ref(ref1 + PARTITION_BYTES_IN_POS + file->m_rec_length,
                                      ref2 + PARTITION_BYTES_IN_POS + file->m_rec_length)))
   {
     return res;
@@ -8252,6 +8267,7 @@ int ha_partition::handle_ordered_index_scan(uchar *buf, bool reverse_order)
   DBUG_PRINT("info", ("partition this=%p", this));
 
   if (!m_using_extended_keys &&
+      !THDVAR(current_thd, skip_pk_sort_for_non_clustered_pk_table) &&
       (error= loop_extra(HA_EXTRA_STARTING_ORDERED_INDEX_SCAN)))
     DBUG_RETURN(error);
 
@@ -11878,6 +11894,13 @@ void ha_partition::delete_bulk_access_info(
 struct st_mysql_storage_engine partition_storage_engine=
 { MYSQL_HANDLERTON_INTERFACE_VERSION };
 
+
+static struct st_mysql_sys_var* partition_system_variables[] =
+{
+  MYSQL_SYSVAR(skip_pk_sort_for_non_clustered_pk_table),
+  NULL
+};
+
 maria_declare_plugin(partition)
 {
   MYSQL_STORAGE_ENGINE_PLUGIN,
@@ -11886,11 +11909,11 @@ maria_declare_plugin(partition)
   "Mikael Ronstrom, MySQL AB",
   "Partition Storage Engine Helper",
   PLUGIN_LICENSE_GPL,
-  partition_initialize, /* Plugin Init */
-  NULL, /* Plugin Deinit */
-  0x0100, /* 1.0 */
+  partition_initialize,       /* Plugin Init */
+  NULL,                       /* Plugin Deinit */
+  0x0100,                     /* 1.0 */
   NULL,                       /* status variables                */
-  NULL,                       /* system variables                */
+  partition_system_variables, /* system variables                */
   "1.0",                      /* string version                  */
   MariaDB_PLUGIN_MATURITY_STABLE /* maturity                     */
 }
diff --git a/storage/spider/mysql-test/spider/include/partition_skip_pk_sort_for_non_clustered_pk_table_deinit.inc b/storage/spider/mysql-test/spider/include/partition_skip_pk_sort_for_non_clustered_pk_table_deinit.inc
new file mode 100644
index 00000000000..c0c652d14f5
--- /dev/null
+++ b/storage/spider/mysql-test/spider/include/partition_skip_pk_sort_for_non_clustered_pk_table_deinit.inc
@@ -0,0 +1,23 @@
+--let $MASTER_1_COMMENT_2_1= $MASTER_1_COMMENT_2_1_BACKUP
+--let $MASTER_1_COMMENT_2_2= $MASTER_1_COMMENT_2_2_BACKUP
+--let $CHILD2_1_DROP_TABLES= $CHILD2_1_DROP_TABLES_BACKUP
+--let $CHILD2_1_CREATE_TABLES= $CHILD2_1_CREATE_TABLES_BACKUP
+--let $CHILD2_1_SELECT_TABLES= $CHILD2_1_SELECT_TABLES_BACKUP
+--let $CHILD2_2_DROP_TABLES= $CHILD2_2_DROP_TABLES_BACKUP
+--let $CHILD2_2_CREATE_TABLES= $CHILD2_2_CREATE_TABLES_BACKUP
+--let $CHILD2_2_SELECT_TABLES= $CHILD2_2_SELECT_TABLES_BACKUP
+--let $CHILD2_3_DROP_TABLES= $CHILD2_3_DROP_TABLES_BACKUP
+--let $CHILD2_3_CREATE_TABLES= $CHILD2_3_CREATE_TABLES_BACKUP
+--let $CHILD2_3_SELECT_TABLES= $CHILD2_3_SELECT_TABLES_BACKUP
+--let $OUTPUT_CHILD_GROUP2= $OUTPUT_CHILD_GROUP2_BACKUP
+--let $USE_GENERAL_LOG= $USE_GENERAL_LOG_BACKUP
+--connection master_1
+set session join_cache_level= @old_join_cache_level;
+set session optimizer_switch= @old_optimizer_switch;
+--disable_warnings
+--disable_query_log
+--disable_result_log
+--source ../t/test_deinit.inc
+--enable_result_log
+--enable_query_log
+--enable_warnings
diff --git a/storage/spider/mysql-test/spider/include/partition_skip_pk_sort_for_non_clustered_pk_table_init.inc b/storage/spider/mysql-test/spider/include/partition_skip_pk_sort_for_non_clustered_pk_table_init.inc
new file mode 100644
index 00000000000..a75f0474046
--- /dev/null
+++ b/storage/spider/mysql-test/spider/include/partition_skip_pk_sort_for_non_clustered_pk_table_init.inc
@@ -0,0 +1,72 @@
+--disable_warnings
+--disable_query_log
+--disable_result_log
+--source ../t/test_init.inc
+--enable_result_log
+--enable_query_log
+--enable_warnings
+--let $MASTER_1_COMMENT_2_1_BACKUP= $MASTER_1_COMMENT_2_1
+let $MASTER_1_COMMENT_2_1=
+  COMMENT='table "tbl_a", bka_mode "1"'
+  PARTITION BY KEY(pkey) (
+    PARTITION pt1 COMMENT='srv "s_2_1"',
+    PARTITION pt2 COMMENT='srv "s_2_2"',
+    PARTITION pt3 COMMENT='srv "s_2_3"'
+  );
+--let $CHILD2_1_DROP_TABLES_BACKUP= $CHILD2_1_DROP_TABLES
+let $CHILD2_1_DROP_TABLES=
+  DROP TABLE IF EXISTS tbl_a;
+--let $CHILD2_1_CREATE_TABLES_BACKUP= $CHILD2_1_CREATE_TABLES
+let $CHILD2_1_CREATE_TABLES=
+  CREATE TABLE tbl_a (
+    pkey int NOT NULL,
+    block_no int NOT NULL,
+    PRIMARY KEY (pkey),
+    KEY idx1 (block_no)
+  ) $CHILD2_1_ENGINE $CHILD2_1_CHARSET;
+--let $CHILD2_1_SELECT_TABLES_BACKUP= $CHILD2_1_SELECT_TABLES
+let $CHILD2_1_SELECT_TABLES=
+  SELECT pkey FROM tbl_a ORDER BY pkey;
+let $CHILD2_1_SELECT_ARGUMENT1=
+  SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %';
+--let $CHILD2_2_DROP_TABLES_BACKUP= $CHILD2_2_DROP_TABLES
+let $CHILD2_2_DROP_TABLES=
+  DROP TABLE IF EXISTS tbl_a;
+--let $CHILD2_2_CREATE_TABLES_BACKUP= $CHILD2_2_CREATE_TABLES
+let $CHILD2_2_CREATE_TABLES=
+  CREATE TABLE tbl_a (
+    pkey int NOT NULL,
+    block_no int NOT NULL,
+    PRIMARY KEY (pkey),
+    KEY idx1 (block_no)
+  ) $CHILD2_2_ENGINE $CHILD2_2_CHARSET;
+--let $CHILD2_2_SELECT_TABLES_BACKUP= $CHILD2_2_SELECT_TABLES
+let $CHILD2_2_SELECT_TABLES=
+  SELECT pkey FROM tbl_a ORDER BY pkey;
+let $CHILD2_2_SELECT_ARGUMENT1=
+  SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %';
+--let $CHILD2_3_DROP_TABLES_BACKUP= $CHILD2_3_DROP_TABLES
+let $CHILD2_3_DROP_TABLES=
+  DROP TABLE IF EXISTS tbl_a;
+--let $CHILD2_3_CREATE_TABLES_BACKUP= $CHILD2_3_CREATE_TABLES
+let $CHILD2_3_CREATE_TABLES=
+  CREATE TABLE tbl_a (
+    pkey int NOT NULL,
+    block_no int NOT NULL,
+    PRIMARY KEY (pkey),
+    KEY idx1 (block_no)
+  ) $CHILD2_3_ENGINE $CHILD2_3_CHARSET;
+--let $CHILD2_3_SELECT_TABLES_BACKUP= $CHILD2_3_SELECT_TABLES
+let $CHILD2_3_SELECT_TABLES=
+  SELECT pkey FROM tbl_a ORDER BY pkey;
+let $CHILD2_3_SELECT_ARGUMENT1=
+  SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %';
+--let $OUTPUT_CHILD_GROUP2_BACKUP= $OUTPUT_CHILD_GROUP2
+--let $OUTPUT_CHILD_GROUP2= 1
+--let $USE_GENERAL_LOG_BACKUP= $USE_GENERAL_LOG
+--let $USE_GENERAL_LOG= 1
+--connection master_1
+set @old_join_cache_level= @@join_cache_level;
+set session join_cache_level= 5;
+set @old_optimizer_switch= @@optimizer_switch;
+set session optimizer_switch= 'mrr=on';
diff --git a/storage/spider/mysql-test/spider/r/partition_skip_pk_sort_for_non_clustered_pk_table.result b/storage/spider/mysql-test/spider/r/partition_skip_pk_sort_for_non_clustered_pk_table.result
new file mode 100644
index 00000000000..6724ebc1e9f
--- /dev/null
+++ b/storage/spider/mysql-test/spider/r/partition_skip_pk_sort_for_non_clustered_pk_table.result
@@ -0,0 +1,150 @@
+for master_1
+for child2
+child2_1
+child2_2
+child2_3
+for child3
+child3_1
+child3_2
+child3_3
+connection master_1;
+set @old_join_cache_level= @@join_cache_level;
+set session join_cache_level= 5;
+set @old_optimizer_switch= @@optimizer_switch;
+set session optimizer_switch= 'mrr=on';
+
+drop and create databases
+connection master_1;
+DROP DATABASE IF EXISTS auto_test_local;
+CREATE DATABASE auto_test_local;
+USE auto_test_local;
+connection child2_1;
+SET @old_log_output = @@global.log_output;
+SET GLOBAL log_output = 'TABLE,FILE';
+DROP DATABASE IF EXISTS auto_test_remote;
+CREATE DATABASE auto_test_remote;
+USE auto_test_remote;
+connection child2_2;
+SET @old_log_output = @@global.log_output;
+SET GLOBAL log_output = 'TABLE,FILE';
+DROP DATABASE IF EXISTS auto_test_remote2;
+CREATE DATABASE auto_test_remote2;
+USE auto_test_remote2;
+connection child2_3;
+SET @old_log_output = @@global.log_output;
+SET GLOBAL log_output = 'TABLE,FILE';
+DROP DATABASE IF EXISTS auto_test_remote3;
+CREATE DATABASE auto_test_remote3;
+USE auto_test_remote3;
+
+create table and insert
+connection child2_1;
+CHILD2_1_DROP_TABLES
+CHILD2_1_CREATE_TABLES
+TRUNCATE TABLE mysql.general_log;
+connection child2_2;
+CHILD2_2_DROP_TABLES
+CHILD2_2_CREATE_TABLES
+TRUNCATE TABLE mysql.general_log;
+connection child2_3;
+CHILD2_3_DROP_TABLES
+CHILD2_3_CREATE_TABLES
+TRUNCATE TABLE mysql.general_log;
+connection master_1;
+DROP TABLE IF EXISTS tbl_a;
+DROP TABLE IF EXISTS tbl_b;
+CREATE TABLE tbl_a (
+pkey int NOT NULL,
+block_no int NOT NULL,
+PRIMARY KEY (pkey),
+KEY idx1 (block_no)
+) MASTER_1_ENGINE MASTER_1_CHARSET MASTER_1_COMMENT_2_1
+INSERT INTO tbl_a (pkey, block_no) VALUES (0, 10),(1, 9),(2, 8),(3, 7),(4, 9),(5, 8),(6, 7),(7, 6);
+
+select test
+connection child2_1;
+TRUNCATE TABLE mysql.general_log;
+connection master_1;
+SET @old_partition_skip_pk_sort_for_non_clustered_pk_table= @@partition_skip_pk_sort_for_non_clustered_pk_table;
+SET partition_skip_pk_sort_for_non_clustered_pk_table= FALSE;
+SELECT block_no FROM tbl_a ORDER BY block_no;
+block_no
+6
+7
+7
+8
+8
+9
+9
+10
+SET partition_skip_pk_sort_for_non_clustered_pk_table= TRUE;
+SELECT block_no FROM tbl_a ORDER BY block_no;
+block_no
+6
+7
+7
+8
+8
+9
+9
+10
+SET partition_skip_pk_sort_for_non_clustered_pk_table= @old_partition_skip_pk_sort_for_non_clustered_pk_table;
+connection child2_1;
+SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %';
+argument
+select `pkey`,`block_no` from `auto_test_remote`.`tbl_a` order by `block_no`
+select `block_no` from `auto_test_remote`.`tbl_a` order by `block_no`
+SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %'
+SELECT pkey FROM tbl_a ORDER BY pkey;
+pkey
+4
+5
+connection child2_2;
+SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %';
+argument
+select `pkey`,`block_no` from `auto_test_remote2`.`tbl_a` order by `block_no`
+select `block_no` from `auto_test_remote2`.`tbl_a` order by `block_no`
+SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %'
+SELECT pkey FROM tbl_a ORDER BY pkey;
+pkey
+0
+1
+6
+7
+connection child2_3;
+SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %';
+argument
+select `pkey`,`block_no` from `auto_test_remote3`.`tbl_a` order by `block_no`
+select `block_no` from `auto_test_remote3`.`tbl_a` order by `block_no`
+SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %'
+SELECT pkey FROM tbl_a ORDER BY pkey;
+pkey
+2
+3
+
+deinit
+connection master_1;
+DROP DATABASE IF EXISTS auto_test_local;
+connection child2_1;
+DROP DATABASE IF EXISTS auto_test_remote;
+SET GLOBAL log_output = @old_log_output;
+connection child2_2;
+DROP DATABASE IF EXISTS auto_test_remote2;
+SET GLOBAL log_output = @old_log_output;
+connection child2_3;
+DROP DATABASE IF EXISTS auto_test_remote3;
+SET GLOBAL log_output = @old_log_output;
+connection master_1;
+set session join_cache_level= @old_join_cache_level;
+set session optimizer_switch= @old_optimizer_switch;
+for master_1
+for child2
+child2_1
+child2_2
+child2_3
+for child3
+child3_1
+child3_2
+child3_3
+
+end of test
diff --git a/storage/spider/mysql-test/spider/t/partition_skip_pk_sort_for_non_clustered_pk_table.test b/storage/spider/mysql-test/spider/t/partition_skip_pk_sort_for_non_clustered_pk_table.test
new file mode 100644
index 00000000000..582e379bc50
--- /dev/null
+++ b/storage/spider/mysql-test/spider/t/partition_skip_pk_sort_for_non_clustered_pk_table.test
@@ -0,0 +1,228 @@
+--source ../include/partition_skip_pk_sort_for_non_clustered_pk_table_init.inc
+if (!$HAVE_PARTITION)
+{
+  --source ../include/partition_skip_pk_sort_for_non_clustered_pk_table_deinit.inc
+  skip Test requires partitioning;
+}
+
+--echo
+--echo drop and create databases
+--connection master_1
+--disable_warnings
+DROP DATABASE IF EXISTS auto_test_local;
+CREATE DATABASE auto_test_local;
+USE auto_test_local;
+if ($USE_CHILD_GROUP2)
+{
+  --connection child2_1
+  if ($USE_GENERAL_LOG)
+  {
+    SET @old_log_output = @@global.log_output;
+    SET GLOBAL log_output = 'TABLE,FILE';
+  }
+  DROP DATABASE IF EXISTS auto_test_remote;
+  CREATE DATABASE auto_test_remote;
+  USE auto_test_remote;
+  --connection child2_2
+  if ($USE_GENERAL_LOG)
+  {
+    SET @old_log_output = @@global.log_output;
+    SET GLOBAL log_output = 'TABLE,FILE';
+  }
+  DROP DATABASE IF EXISTS auto_test_remote2;
+  CREATE DATABASE auto_test_remote2;
+  USE auto_test_remote2;
+  --connection child2_3
+  if ($USE_GENERAL_LOG)
+  {
+    SET @old_log_output = @@global.log_output;
+    SET GLOBAL log_output = 'TABLE,FILE';
+  }
+  DROP DATABASE IF EXISTS auto_test_remote3;
+  CREATE DATABASE auto_test_remote3;
+  USE auto_test_remote3;
+}
+--enable_warnings
+
+--echo
+--echo create table and insert
+if ($USE_CHILD_GROUP2)
+{
+  if (!$OUTPUT_CHILD_GROUP2)
+  {
+    --disable_query_log
+    --disable_result_log
+  }
+  --connection child2_1
+  if ($OUTPUT_CHILD_GROUP2)
+  {
+    --disable_query_log
+    echo CHILD2_1_DROP_TABLES;
+    echo CHILD2_1_CREATE_TABLES;
+  }
+  --disable_warnings
+  eval $CHILD2_1_DROP_TABLES;
+  --enable_warnings
+  eval $CHILD2_1_CREATE_TABLES;
+  if ($OUTPUT_CHILD_GROUP2)
+  {
+    --enable_query_log
+  }
+  if ($USE_GENERAL_LOG)
+  {
+    TRUNCATE TABLE mysql.general_log;
+  }
+  --connection child2_2
+  if ($OUTPUT_CHILD_GROUP2)
+  {
+    --disable_query_log
+    echo CHILD2_2_DROP_TABLES;
+    echo CHILD2_2_CREATE_TABLES;
+  }
+  --disable_warnings
+  eval $CHILD2_2_DROP_TABLES;
+  --enable_warnings
+  eval $CHILD2_2_CREATE_TABLES;
+  if ($OUTPUT_CHILD_GROUP2)
+  {
+    --enable_query_log
+  }
+  if ($USE_GENERAL_LOG)
+  {
+    TRUNCATE TABLE mysql.general_log;
+  }
+  --connection child2_3
+  if ($OUTPUT_CHILD_GROUP2)
+  {
+    --disable_query_log
+    echo CHILD2_3_DROP_TABLES;
+    echo CHILD2_3_CREATE_TABLES;
+  }
+  --disable_warnings
+  eval $CHILD2_3_DROP_TABLES;
+  --enable_warnings
+  eval $CHILD2_3_CREATE_TABLES;
+  if ($OUTPUT_CHILD_GROUP2)
+  {
+    --enable_query_log
+  }
+  if ($USE_GENERAL_LOG)
+  {
+    TRUNCATE TABLE mysql.general_log;
+  }
+  if (!$OUTPUT_CHILD_GROUP2)
+  {
+    --enable_query_log
+    --enable_result_log
+  }
+}
+--connection master_1
+--disable_warnings
+DROP TABLE IF EXISTS tbl_a;
+DROP TABLE IF EXISTS tbl_b;
+--enable_warnings
+--disable_query_log
+echo CREATE TABLE tbl_a (
+    pkey int NOT NULL,
+    block_no int NOT NULL,
+    PRIMARY KEY (pkey),
+    KEY idx1 (block_no)
+) MASTER_1_ENGINE MASTER_1_CHARSET MASTER_1_COMMENT_2_1;
+eval CREATE TABLE tbl_a (
+    pkey int NOT NULL,
+    block_no int NOT NULL,
+    PRIMARY KEY (pkey),
+    KEY idx1 (block_no)
+) $MASTER_1_ENGINE $MASTER_1_CHARSET $MASTER_1_COMMENT_2_1;
+--enable_query_log
+INSERT INTO tbl_a (pkey, block_no) VALUES (0, 10),(1, 9),(2, 8),(3, 7),(4, 9),(5, 8),(6, 7),(7, 6);
+
+--echo
+--echo select test
+if ($USE_CHILD_GROUP2)
+{
+  if (!$OUTPUT_CHILD_GROUP2)
+  {
+    --disable_query_log
+    --disable_result_log
+  }
+  --connection child2_1
+  if ($USE_GENERAL_LOG)
+  {
+    TRUNCATE TABLE mysql.general_log;
+  }
+  if (!$OUTPUT_CHILD_GROUP2)
+  {
+    --enable_query_log
+    --enable_result_log
+  }
+}
+--connection master_1
+SET @old_partition_skip_pk_sort_for_non_clustered_pk_table= @@partition_skip_pk_sort_for_non_clustered_pk_table;
+SET partition_skip_pk_sort_for_non_clustered_pk_table= FALSE;
+SELECT block_no FROM tbl_a ORDER BY block_no;
+SET partition_skip_pk_sort_for_non_clustered_pk_table= TRUE;
+SELECT block_no FROM tbl_a ORDER BY block_no;
+SET partition_skip_pk_sort_for_non_clustered_pk_table= @old_partition_skip_pk_sort_for_non_clustered_pk_table;
+if ($USE_CHILD_GROUP2)
+{
+  if (!$OUTPUT_CHILD_GROUP2)
+  {
+    --disable_query_log
+    --disable_result_log
+  }
+  --connection child2_1
+  if ($USE_GENERAL_LOG)
+  {
+    eval $CHILD2_1_SELECT_ARGUMENT1;
+  }
+  eval $CHILD2_1_SELECT_TABLES;
+  --connection child2_2
+  if ($USE_GENERAL_LOG)
+  {
+    eval $CHILD2_2_SELECT_ARGUMENT1;
+  }
+  eval $CHILD2_2_SELECT_TABLES;
+  --connection child2_3
+  if ($USE_GENERAL_LOG)
+  {
+    eval $CHILD2_3_SELECT_ARGUMENT1;
+  }
+  eval $CHILD2_3_SELECT_TABLES;
+  if (!$OUTPUT_CHILD_GROUP2)
+  {
+    --enable_query_log
+    --enable_result_log
+  }
+}
+
+--echo
+--echo deinit
+--disable_warnings
+--connection master_1
+DROP DATABASE IF EXISTS auto_test_local;
+if ($USE_CHILD_GROUP2)
+{
+  --connection child2_1
+  DROP DATABASE IF EXISTS auto_test_remote;
+  if ($USE_GENERAL_LOG)
+  {
+    SET GLOBAL log_output = @old_log_output;
+  }
+  --connection child2_2
+  DROP DATABASE IF EXISTS auto_test_remote2;
+  if ($USE_GENERAL_LOG)
+  {
+    SET GLOBAL log_output = @old_log_output;
+  }
+  --connection child2_3
+  DROP DATABASE IF EXISTS auto_test_remote3;
+  if ($USE_GENERAL_LOG)
+  {
+    SET GLOBAL log_output = @old_log_output;
+  }
+}
+--enable_warnings
+--source ../include/partition_skip_pk_sort_for_non_clustered_pk_table_deinit.inc
+--echo
+--echo end of test


More information about the commits mailing list