# This test tests for ha features
if ($USE_HA_TEST)
{
--disable_warnings
--disable_query_log
--disable_result_log
--source test_init.inc
--source ha_test_init.inc
--enable_result_log
--enable_query_log
if (!$HAVE_PARTITION)
{
  --disable_query_log
  --disable_result_log
  --source ha_test_deinit.inc
  --source test_deinit.inc
  --enable_result_log
  --enable_query_log
  --enable_warnings
  skip Test requires partitioning;
}

--echo
--echo drop and create databases
--connection master_1
DROP DATABASE IF EXISTS auto_test_local;
CREATE DATABASE auto_test_local;
USE auto_test_local;
if ($USE_CHILD_GROUP2)
{
  --connection child2_1
  DROP DATABASE IF EXISTS auto_test_remote;
  CREATE DATABASE auto_test_remote;
  USE auto_test_remote;
  --connection child2_2
  DROP DATABASE IF EXISTS auto_test_remote2;
  CREATE DATABASE auto_test_remote2;
  USE auto_test_remote2;
  --connection child2_3
  DROP DATABASE IF EXISTS auto_test_remote3;
  CREATE DATABASE auto_test_remote3;
  USE auto_test_remote3;
}
if ($USE_CHILD_GROUP3)
{
  --connection child3_1
  DROP DATABASE IF EXISTS auto_test_local;
  CREATE DATABASE auto_test_local;
  USE auto_test_local;
  --connection child3_2
  DROP DATABASE IF EXISTS auto_test_local;
  CREATE DATABASE auto_test_local;
  USE auto_test_local;
  --connection child3_3
  DROP DATABASE IF EXISTS auto_test_local;
  CREATE DATABASE auto_test_local;
  USE auto_test_local;
}
--enable_warnings

--echo
--echo test select 1
--connection master_1
SELECT 1;
if ($USE_CHILD_GROUP2)
{
  if (!$OUTPUT_CHILD_GROUP2)
  {
    --disable_query_log
    --disable_result_log
  }
  --connection child2_1
  SELECT 1;
  --connection child2_2
  SELECT 1;
  --connection child2_3
  SELECT 1;
  if (!$OUTPUT_CHILD_GROUP2)
  {
    --enable_query_log
    --enable_result_log
  }
}
if ($USE_CHILD_GROUP3)
{
  if (!$OUTPUT_CHILD_GROUP3)
  {
    --disable_query_log
    --disable_result_log
  }
  --connection child3_1
  SELECT 1;
  --connection child3_2
  SELECT 1;
  --connection child3_3
  SELECT 1;
  if (!$OUTPUT_CHILD_GROUP3)
  {
    --enable_query_log
    --enable_result_log
  }
}

if ($HAVE_PARTITION)
{
  --echo
  --echo create table with partition test
  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_DROP_TABLES2;
      echo CHILD2_1_CREATE_TABLES;
      echo CHILD2_1_CREATE_TABLES2;
    }
    --disable_warnings
    eval $CHILD2_1_DROP_TABLES;
    eval $CHILD2_1_DROP_TABLES2;
    --enable_warnings
    eval $CHILD2_1_CREATE_TABLES;
    eval $CHILD2_1_CREATE_TABLES2;
    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
    }
  }
  if ($USE_CHILD_GROUP3)
  {
    if (!$OUTPUT_CHILD_GROUP3)
    {
      --disable_query_log
      --disable_result_log
    }
    --connection child3_1
    --disable_warnings
    eval $CHILD3_1_DROP_TABLES_HA_P_2_1;
    --enable_warnings
    eval $CHILD3_1_CREATE_TABLES_HA_P_2_1;
    --connection child3_2
    --disable_warnings
    eval $CHILD3_2_DROP_TABLES_HA_P_2_1;
    --enable_warnings
    eval $CHILD3_2_CREATE_TABLES_HA_P_2_1;
    --connection child3_3
    --disable_warnings
    eval $CHILD3_3_DROP_TABLES_HA_P_2_1;
    --enable_warnings
    eval $CHILD3_3_CREATE_TABLES_HA_P_2_1;
    if (!$OUTPUT_CHILD_GROUP3)
    {
      --enable_query_log
      --enable_result_log
    }
  }
  --connection master_1
  --disable_warnings
  DROP TABLE IF EXISTS ta_l2;
  --enable_warnings
  --disable_query_log
  echo CREATE TABLE ta_l2 (
    a INT,
    b CHAR(1),
    c DATETIME,
    PRIMARY KEY(a)
  ) MASTER_1_ENGINE MASTER_1_CHARSET MASTER_1_COMMENT_HA_P_2_1;
  eval CREATE TABLE ta_l2 (
    a INT,
    b CHAR(1),
    c DATETIME,
    PRIMARY KEY(a)
  ) $MASTER_1_ENGINE $MASTER_1_CHARSET $MASTER_1_COMMENT_HA_P_2_1;
  --enable_query_log
  INSERT INTO ta_l2 (a, b, c) VALUES
    (1, 'a', '2008-08-01 10:21:39'),
    (2, 'b', '2000-01-01 00:00:00'),
    (3, 'e', '2007-06-04 20:03:11'),
    (4, 'd', '2003-11-30 05:01:03'),
    (5, 'c', '2001-12-31 23:59:59');

  --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;
    }
    --connection child2_2
    if ($USE_GENERAL_LOG)
    {
      TRUNCATE TABLE mysql.general_log;
    }
    --connection child2_3
    if ($USE_GENERAL_LOG)
    {
      TRUNCATE TABLE mysql.general_log;
    }
    if (!$OUTPUT_CHILD_GROUP2)
    {
      --enable_query_log
      --enable_result_log
    }
  }
  --connection master_1
  SELECT a, b, date_format(c, '%Y-%m-%d %H:%i:%s') FROM ta_l2 ORDER BY a;
  if ($USE_CHILD_GROUP2)
  {
    if (!$OUTPUT_CHILD_GROUP2)
    {
      --disable_query_log
      --disable_result_log
    }
    --connection child2_1
    if ($USE_GENERAL_LOG)
    {
      SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %';
    }
    eval $CHILD2_1_SELECT_TABLES;
    eval $CHILD2_1_SELECT_TABLES2;
    --connection child2_2
    if ($USE_GENERAL_LOG)
    {
      SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %';
    }
    eval $CHILD2_2_SELECT_TABLES;
    --connection child2_3
    if ($USE_GENERAL_LOG)
    {
      SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %';
    }
    eval $CHILD2_3_SELECT_TABLES;
    if (!$OUTPUT_CHILD_GROUP2)
    {
      --enable_query_log
      --enable_result_log
    }
  }

  --echo
  --echo fail-over 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;
    }
    --connection child2_2
    if ($USE_GENERAL_LOG)
    {
      TRUNCATE TABLE mysql.general_log;
    }
    --connection child2_3
    if ($OUTPUT_CHILD_GROUP2)
    {
      --disable_query_log
      echo CHILD2_3_HA_DROP_TABLES;
    }
    --disable_warnings
    eval $CHILD2_3_HA_DROP_TABLES;
    --enable_warnings
    if ($OUTPUT_CHILD_GROUP2)
    {
      --enable_query_log
    }
    if (!$OUTPUT_CHILD_GROUP2)
    {
      --enable_query_log
      --enable_result_log
    }
  }
  --connection master_1
  eval $MASTER_1_CHECK_HA_STATUS;
  --error 12511
  INSERT INTO ta_l2 (a, b, c) VALUES
    (6, 'e', '2011-05-05 20:04:05');
  eval $MASTER_1_CHECK_LINK_STATUS;
  eval $MASTER_1_CHECK_LINK_FAILED_LOG;
  eval $MASTER_1_CHECK_HA_STATUS;
  INSERT INTO ta_l2 (a, b, c) VALUES
    (6, 'e', '2011-05-05 20:04:05');
  SELECT a, b, date_format(c, '%Y-%m-%d %H:%i:%s') FROM ta_l2 ORDER BY a;
  if ($USE_CHILD_GROUP2)
  {
    if (!$OUTPUT_CHILD_GROUP2)
    {
      --disable_query_log
      --disable_result_log
    }
    --connection child2_1
    if ($USE_GENERAL_LOG)
    {
      SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %';
    }
    eval $CHILD2_1_SELECT_TABLES;
    eval $CHILD2_1_SELECT_TABLES2;
    --connection child2_2
    if ($USE_GENERAL_LOG)
    {
      SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %';
    }
    eval $CHILD2_2_SELECT_TABLES;
    if (!$OUTPUT_CHILD_GROUP2)
    {
      --enable_query_log
      --enable_result_log
    }
  }
  if ($USE_CHILD_GROUP3)
  {
    if (!$OUTPUT_CHILD_GROUP3)
    {
      --disable_query_log
      --disable_result_log
    }
    --connection child3_1
    eval $CHILD3_1_CHECK_LINK_STATUS;
    eval $CHILD3_1_CHECK_LINK_FAILED_LOG;
    --connection child3_2
    eval $CHILD3_2_CHECK_LINK_STATUS;
    eval $CHILD3_2_CHECK_LINK_FAILED_LOG;
    --connection child3_3
    eval $CHILD3_3_CHECK_LINK_STATUS;
    eval $CHILD3_3_CHECK_LINK_FAILED_LOG;
    if (!$OUTPUT_CHILD_GROUP3)
    {
      --enable_query_log
      --enable_result_log
    }
  }

  --echo
  --echo recovery 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;
    }
    --connection child2_2
    if ($USE_GENERAL_LOG)
    {
      TRUNCATE TABLE mysql.general_log;
    }
    --connection child2_3
    if ($OUTPUT_CHILD_GROUP2)
    {
      --disable_query_log
      echo CHILD2_3_HA_CREATE_TABLES;
    }
    eval $CHILD2_3_HA_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
    }
  }
  if ($USE_CHILD_GROUP3)
  {
    if (!$OUTPUT_CHILD_GROUP3)
    {
      --disable_query_log
      --disable_result_log
    }
    --connection child3_1
    eval $CHILD3_1_SET_RECOVERY_STATUS_P_2_1;
    eval $CHILD3_1_CHECK_LINK_STATUS;
    --connection child3_2
    eval $CHILD3_2_SET_RECOVERY_STATUS_P_2_1;
    eval $CHILD3_2_CHECK_LINK_STATUS;
    --connection child3_3
    eval $CHILD3_3_SET_RECOVERY_STATUS_P_2_1;
    eval $CHILD3_3_CHECK_LINK_STATUS;
    if (!$OUTPUT_CHILD_GROUP3)
    {
      --enable_query_log
      --enable_result_log
    }
  }
  --connection master_1
  eval $MASTER_1_SET_RECOVERY_STATUS_P_2_1;
  eval $MASTER_1_CHECK_LINK_STATUS;
  eval $MASTER_1_COPY_TABLES_P_2_1;
  if ($USE_CHILD_GROUP3)
  {
    if (!$OUTPUT_CHILD_GROUP3)
    {
      --disable_query_log
      --disable_result_log
    }
    --connection child3_1
    eval $CHILD3_1_SET_OK_STATUS_P_2_1;
    eval $CHILD3_1_CHECK_LINK_STATUS;
    --connection child3_2
    eval $CHILD3_2_SET_OK_STATUS_P_2_1;
    eval $CHILD3_2_CHECK_LINK_STATUS;
    --connection child3_3
    eval $CHILD3_3_SET_OK_STATUS_P_2_1;
    eval $CHILD3_3_CHECK_LINK_STATUS;
    if (!$OUTPUT_CHILD_GROUP3)
    {
      --enable_query_log
      --enable_result_log
    }
  }
  --connection master_1
  eval $MASTER_1_SET_OK_STATUS_P_2_1;
  eval $MASTER_1_CHECK_LINK_STATUS;
  INSERT INTO ta_l2 (a, b, c) VALUES
    (8, 'g', '2011-05-05 21:33:30'),
    (9, 'h', '2011-05-05 22:32:10');
  SELECT a, b, date_format(c, '%Y-%m-%d %H:%i:%s') FROM ta_l2 ORDER BY a;
  DROP TABLE ta_l2;
  if ($USE_CHILD_GROUP2)
  {
    if (!$OUTPUT_CHILD_GROUP2)
    {
      --disable_query_log
      --disable_result_log
    }
    --connection child2_1
    if ($USE_GENERAL_LOG)
    {
      SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %';
    }
    eval $CHILD2_1_SELECT_TABLES;
    eval $CHILD2_1_SELECT_TABLES2;
    --connection child2_2
    if ($USE_GENERAL_LOG)
    {
      SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %';
    }
    eval $CHILD2_2_SELECT_TABLES;
    --connection child2_3
    if ($USE_GENERAL_LOG)
    {
      SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %';
    }
    eval $CHILD2_3_SELECT_TABLES;
    if (!$OUTPUT_CHILD_GROUP2)
    {
      --enable_query_log
      --enable_result_log
    }
  }
  if ($USE_CHILD_GROUP3)
  {
    if (!$OUTPUT_CHILD_GROUP3)
    {
      --disable_query_log
      --disable_result_log
    }
    --connection child3_1
    --disable_warnings
    eval $CHILD3_1_DROP_TABLES_HA_P_2_1;
    --enable_warnings
    --connection child3_2
    --disable_warnings
    eval $CHILD3_2_DROP_TABLES_HA_P_2_1;
    --enable_warnings
    --connection child3_3
    --disable_warnings
    eval $CHILD3_3_DROP_TABLES_HA_P_2_1;
    --enable_warnings
    if (!$OUTPUT_CHILD_GROUP3)
    {
      --enable_query_log
      --enable_result_log
    }
  }
}

if ($HAVE_PARTITION)
{
  --echo
  --echo create table with partition test
  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_DROP_TABLES2;
      echo CHILD2_1_CREATE_TABLES;
      echo CHILD2_1_CREATE_TABLES2;
    }
    --disable_warnings
    eval $CHILD2_1_DROP_TABLES;
    eval $CHILD2_1_DROP_TABLES2;
    --enable_warnings
    eval $CHILD2_1_CREATE_TABLES;
    eval $CHILD2_1_CREATE_TABLES2;
    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
    }
  }
  if ($USE_CHILD_GROUP3)
  {
    if (!$OUTPUT_CHILD_GROUP3)
    {
      --disable_query_log
      --disable_result_log
    }
    --connection child3_1
    --disable_warnings
    eval $CHILD3_1_DROP_TABLES_HA_P_2_1;
    --enable_warnings
    eval $CHILD3_1_CREATE_TABLES_HA_AS_P_2_1;
    --connection child3_2
    --disable_warnings
    eval $CHILD3_2_DROP_TABLES_HA_P_2_1;
    --enable_warnings
    eval $CHILD3_2_CREATE_TABLES_HA_AS_P_2_1;
    --connection child3_3
    --disable_warnings
    eval $CHILD3_3_DROP_TABLES_HA_P_2_1;
    --enable_warnings
    eval $CHILD3_3_CREATE_TABLES_HA_AS_P_2_1;
    if (!$OUTPUT_CHILD_GROUP3)
    {
      --enable_query_log
      --enable_result_log
    }
  }
  --connection master_1
  --disable_warnings
  DROP TABLE IF EXISTS ta_l2;
  --enable_warnings
  --disable_query_log
  echo CREATE TABLE ta_l2 (
    a INT,
    b CHAR(1),
    c DATETIME,
    PRIMARY KEY(a)
  ) MASTER_1_ENGINE MASTER_1_CHARSET MASTER_1_COMMENT_HA_AS_P_2_1;
  eval CREATE TABLE ta_l2 (
    a INT,
    b CHAR(1),
    c DATETIME,
    PRIMARY KEY(a)
  ) $MASTER_1_ENGINE $MASTER_1_CHARSET $MASTER_1_COMMENT_HA_AS_P_2_1;
  --enable_query_log
  INSERT INTO ta_l2 (a, b, c) VALUES
    (1, 'a', '2008-08-01 10:21:39'),
    (2, 'b', '2000-01-01 00:00:00'),
    (3, 'e', '2007-06-04 20:03:11'),
    (4, 'd', '2003-11-30 05:01:03'),
    (5, 'c', '2001-12-31 23:59:59');

  --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;
    }
    --connection child2_2
    if ($USE_GENERAL_LOG)
    {
      TRUNCATE TABLE mysql.general_log;
    }
    --connection child2_3
    if ($USE_GENERAL_LOG)
    {
      TRUNCATE TABLE mysql.general_log;
    }
    if (!$OUTPUT_CHILD_GROUP2)
    {
      --enable_query_log
      --enable_result_log
    }
  }
  --connection master_1
  SELECT a, b, date_format(c, '%Y-%m-%d %H:%i:%s') FROM ta_l2 ORDER BY a;
  if ($USE_CHILD_GROUP2)
  {
    if (!$OUTPUT_CHILD_GROUP2)
    {
      --disable_query_log
      --disable_result_log
    }
    --connection child2_1
    if ($USE_GENERAL_LOG)
    {
      SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %';
    }
    eval $CHILD2_1_SELECT_TABLES;
    eval $CHILD2_1_SELECT_TABLES2;
    --connection child2_2
    if ($USE_GENERAL_LOG)
    {
      SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %';
    }
    eval $CHILD2_2_SELECT_TABLES;
    --connection child2_3
    if ($USE_GENERAL_LOG)
    {
      SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %';
    }
    eval $CHILD2_3_SELECT_TABLES;
    if (!$OUTPUT_CHILD_GROUP2)
    {
      --enable_query_log
      --enable_result_log
    }
  }

  --echo
  --echo fail-over test
  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_HA_AS_DROP_TABLES2;
    }
    --disable_warnings
    eval $CHILD2_1_HA_AS_DROP_TABLES2;
    --enable_warnings
    if ($OUTPUT_CHILD_GROUP2)
    {
      --enable_query_log
    }
    if ($USE_GENERAL_LOG)
    {
      TRUNCATE TABLE mysql.general_log;
    }
    --connection child2_2
    if ($USE_GENERAL_LOG)
    {
      TRUNCATE TABLE mysql.general_log;
    }
    --connection child2_3
    if ($USE_GENERAL_LOG)
    {
      TRUNCATE TABLE mysql.general_log;
    }
    if (!$OUTPUT_CHILD_GROUP2)
    {
      --enable_query_log
      --enable_result_log
    }
  }
  --connection master_1
  eval $MASTER_1_CHECK_HA_STATUS;
  --error 12511
  INSERT INTO ta_l2 (a, b, c) VALUES
    (6, 'e', '2011-05-05 20:04:05');
  eval $MASTER_1_CHECK_LINK_STATUS;
  eval $MASTER_1_CHECK_LINK_FAILED_LOG;
  eval $MASTER_1_CHECK_HA_STATUS;
  INSERT INTO ta_l2 (a, b, c) VALUES
    (6, 'e', '2011-05-05 20:04:05');
  SELECT a, b, date_format(c, '%Y-%m-%d %H:%i:%s') FROM ta_l2 ORDER BY a;
  if ($USE_CHILD_GROUP2)
  {
    if (!$OUTPUT_CHILD_GROUP2)
    {
      --disable_query_log
      --disable_result_log
    }
    --connection child2_1
    if ($USE_GENERAL_LOG)
    {
      SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %';
    }
    eval $CHILD2_1_SELECT_TABLES;
    --connection child2_2
    if ($USE_GENERAL_LOG)
    {
      SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %';
    }
    eval $CHILD2_2_SELECT_TABLES;
    --connection child2_3
    if ($USE_GENERAL_LOG)
    {
      SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %';
    }
    eval $CHILD2_3_SELECT_TABLES;
    if (!$OUTPUT_CHILD_GROUP2)
    {
      --enable_query_log
      --enable_result_log
    }
  }
  if ($USE_CHILD_GROUP3)
  {
    if (!$OUTPUT_CHILD_GROUP3)
    {
      --disable_query_log
      --disable_result_log
    }
    --connection child3_1
    eval $CHILD3_1_CHECK_LINK_STATUS;
    eval $CHILD3_1_CHECK_LINK_FAILED_LOG;
    --connection child3_2
    eval $CHILD3_2_CHECK_LINK_STATUS;
    eval $CHILD3_2_CHECK_LINK_FAILED_LOG;
    --connection child3_3
    eval $CHILD3_3_CHECK_LINK_STATUS;
    eval $CHILD3_3_CHECK_LINK_FAILED_LOG;
    if (!$OUTPUT_CHILD_GROUP3)
    {
      --enable_query_log
      --enable_result_log
    }
  }

  --echo
  --echo recovery test
  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_HA_AS_CREATE_TABLES2;
    }
    eval $CHILD2_1_HA_AS_CREATE_TABLES2;
    if ($OUTPUT_CHILD_GROUP2)
    {
      --enable_query_log
    }
    if ($USE_GENERAL_LOG)
    {
      TRUNCATE TABLE mysql.general_log;
    }
    --connection child2_2
    if ($USE_GENERAL_LOG)
    {
      TRUNCATE TABLE mysql.general_log;
    }
    --connection child2_3
    if ($USE_GENERAL_LOG)
    {
      TRUNCATE TABLE mysql.general_log;
    }
    if (!$OUTPUT_CHILD_GROUP2)
    {
      --enable_query_log
      --enable_result_log
    }
  }
  if ($USE_CHILD_GROUP3)
  {
    if (!$OUTPUT_CHILD_GROUP3)
    {
      --disable_query_log
      --disable_result_log
    }
    --connection child3_1
    eval $CHILD3_1_SET_OK_STATUS_AS_P_2_1;
    eval $CHILD3_1_CHECK_LINK_STATUS;
    --connection child3_2
    eval $CHILD3_2_SET_OK_STATUS_AS_P_2_1;
    eval $CHILD3_2_CHECK_LINK_STATUS;
    --connection child3_3
    eval $CHILD3_3_SET_OK_STATUS_AS_P_2_1;
    eval $CHILD3_3_CHECK_LINK_STATUS;
    if (!$OUTPUT_CHILD_GROUP3)
    {
      --enable_query_log
      --enable_result_log
    }
  }
  --connection master_1
  eval $MASTER_1_SET_OK_STATUS_AS_P_2_1;
  eval $MASTER_1_CHECK_LINK_STATUS;
  INSERT INTO ta_l2 (a, b, c) VALUES
    (8, 'g', '2011-05-05 21:33:30'),
    (9, 'h', '2011-05-05 22:32:10');
  SELECT a, b, date_format(c, '%Y-%m-%d %H:%i:%s') FROM ta_l2 ORDER BY a;
  DROP TABLE ta_l2;
  if ($USE_CHILD_GROUP2)
  {
    if (!$OUTPUT_CHILD_GROUP2)
    {
      --disable_query_log
      --disable_result_log
    }
    --connection child2_1
    if ($USE_GENERAL_LOG)
    {
      SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %';
    }
    eval $CHILD2_1_SELECT_TABLES;
    eval $CHILD2_1_SELECT_TABLES2;
    --connection child2_2
    if ($USE_GENERAL_LOG)
    {
      SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %';
    }
    eval $CHILD2_2_SELECT_TABLES;
    --connection child2_3
    if ($USE_GENERAL_LOG)
    {
      SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %';
    }
    eval $CHILD2_3_SELECT_TABLES;
    if (!$OUTPUT_CHILD_GROUP2)
    {
      --enable_query_log
      --enable_result_log
    }
  }
  if ($USE_CHILD_GROUP3)
  {
    if (!$OUTPUT_CHILD_GROUP3)
    {
      --disable_query_log
      --disable_result_log
    }
    --connection child3_1
    --disable_warnings
    eval $CHILD3_1_DROP_TABLES_HA_P_2_1;
    --enable_warnings
    --connection child3_2
    --disable_warnings
    eval $CHILD3_2_DROP_TABLES_HA_P_2_1;
    --enable_warnings
    --connection child3_3
    --disable_warnings
    eval $CHILD3_3_DROP_TABLES_HA_P_2_1;
    --enable_warnings
    if (!$OUTPUT_CHILD_GROUP3)
    {
      --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;
  --connection child2_2
  DROP DATABASE IF EXISTS auto_test_remote2;
  --connection child2_3
  DROP DATABASE IF EXISTS auto_test_remote3;
}
if ($USE_CHILD_GROUP3)
{
  --connection child3_1
  DROP DATABASE IF EXISTS auto_test_local;
  --connection child3_2
  DROP DATABASE IF EXISTS auto_test_local;
  --connection child3_3
  DROP DATABASE IF EXISTS auto_test_local;
}
--disable_query_log
--disable_result_log
--source ha_test_deinit.inc
--source test_deinit.inc
--enable_result_log
--enable_query_log
--enable_warnings
}
--echo
--echo end of test
