im_options_unset.imtest 4.51 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150
###########################################################################
#
# This file contains test for (3) test suite.
#
# Consult WL#2789 for more information.
#
###########################################################################

#
# Check the options-management commands:
#  - UNSET;
#  - FLUSH INSTANCES;
#
# Let's test the commands on the option 'server_id'. It's expected that
# originally the instances have the following server ids:
#  - mysqld1: 1
#  - mysqld2: 2
#
# The test case:
#
#  1. UNSET <instance_id>.server_id;
#
#   Do the step for both instances.
#
#   1.1. check that the configuration file has been updated (i.e.  does not
#     contain 'server_id=' line for the instance);
#   1.2. (for mysqld1) check that the running instance has not been affected:
#     connect to the instance and check that 'SHOW VARIABLES LIKE 'server_id''
#     returns non-zero value;
#   1.3. check that internal cache of Instance Manager is not affected (i.e.
#     SHOW INSTANCE OPTIONS <instance> contains non-zero value for server_id);
#
#  2. FLUSH INSTANCES;
#
#   Do the step for both instances.
#
#   2.1. check that the configuration file has not been updated (i.e.  does not
#     contain 'server_id=' for the instance);
#   2.2. (for mysqld1) check that the running instance has not been affected:
#     connect to the instance and check that 'SHOW VARIABLES LIKE 'server_id''
#     returns non-zero value;
#   2.3. check that internal cache of Instance Manager has been updated (i.e.
#     SHOW INSTANCE OPTIONS <instance> does not contain 'server_id=' line).
#

###########################################################################

--source include/im_check_os.inc

###########################################################################
#
# 0. Check starting conditions.
#
###########################################################################

# - check the configuration file;

--exec grep server_id $MYSQL_TEST_DIR/var/im.cnf ;

# - check the running instances.

--connect (mysql1_con,localhost,root,,mysql,$IM_MYSQLD1_PORT,$IM_MYSQLD1_SOCK)

--connection mysql1_con

SHOW VARIABLES LIKE 'server_id';

--connection default

# - check the internal cache.
#   TODO: we should check only server_id option here.

# SHOW INSTANCE OPTIONS mysqld1;
# SHOW INSTANCE OPTIONS mysqld2;

###########################################################################
#
# 1. UNSET <instance_id>.server_id;
#
###########################################################################

# * mysqld1

UNSET mysqld1.server_id;

#   - check that the configuration file has been updated (i.e.  does not
#     contain 'server_id=' line for the instance);

--exec grep server_id $MYSQL_TEST_DIR/var/im.cnf ;

#   - check that the running instance has not been affected: connect to the
#     instance and check that 'SHOW VARIABLES LIKE 'server_id'' returns non-zero
#     value;

--connection mysql1_con

SHOW VARIABLES LIKE 'server_id';

--connection default

#   - check that internal cache of Instance Manager is not affected (i.e.  SHOW
#     INSTANCE OPTIONS <instance> contains non-zero value for server_id);
#     TODO: we should check only server_id option here.

# SHOW INSTANCE OPTIONS mysqld1;

# * mysqld2

UNSET mysqld2.server_id;

#   - check that the configuration file has been updated (i.e.  does not
#     contain 'server_id=' line for the instance);

--exec grep server_id $MYSQL_TEST_DIR/var/im.cnf || true;

#   - check that internal cache of Instance Manager is not affected (i.e.  SHOW
#     INSTANCE OPTIONS <instance> contains non-zero value for server_id);
#     TODO: we should check only server_id option here.

# SHOW INSTANCE OPTIONS mysqld2;

###########################################################################
#
# 2. FLUSH INSTANCES;
#
###########################################################################

FLUSH INSTANCES;

#   - check that the configuration file has not been updated (i.e.  does not
#     contain 'server_id=' for the instance);

--exec grep server_id $MYSQL_TEST_DIR/var/im.cnf || true;

#   - (for mysqld1) check that the running instance has not been affected:
#     connect to the instance and check that 'SHOW VARIABLES LIKE 'server_id''
#     returns non-zero value;

--connection mysql1_con

SHOW VARIABLES LIKE 'server_id';

--connection default

#   - check that internal cache of Instance Manager has been updated (i.e.
#     SHOW INSTANCE OPTIONS <instance> does not contain 'server_id=' line).
#     TODO: we should check only server_id option here.

# SHOW INSTANCE OPTIONS mysqld1;
# SHOW INSTANCE OPTIONS mysqld2;