1
############## mysql-test\t\key_cache_block_size_basic.test ###############
3
# Variable Name: key_cache_block_size #
5
# Access Type: Dynamic #
6
# Data Type: numeric 1024 #
11
# Creation Date: 2008-02-07 #
14
# Description: Test Cases of Dynamic System Variable key_cache_block_size #
15
# that checks the behavior of this variable in the following ways#
17
# * Valid & Invalid values #
18
# * Scope & Access method #
21
# Reference: http://dev.mysql.com/doc/refman/5.1/en/ #
22
# server-system-variables.html #
24
###############################################################################
26
--source include/load_sysvars.inc
28
#####################################################################
29
# START OF key_cache_block_size TESTS #
30
#####################################################################
33
##########################################################################
34
# Saving initial value of key_cache_block_size in a temporary variable #
35
##########################################################################
37
SET @start_value = @@global.key_cache_block_size;
41
--echo '#--------------------FN_DYNVARS_057_01------------------------#'
42
################################################################################
43
# Display the DEFAULT value of key_cache_block_size #
44
################################################################################
46
SET @@global.key_cache_block_size = 600;
48
SET @@global.key_cache_block_size = DEFAULT;
49
--echo 'Bug# 34877 : Invalid Values are coming in variable on assigning valid values and Out Of Memory Warnings are coming';
50
SELECT @@global.key_cache_block_size;
53
--echo '#---------------------FN_DYNVARS_057_02-------------------------#'
54
###############################################
55
# Verify default value of variable #
56
###############################################
58
SET @@global.key_cache_block_size = @start_value;
59
SELECT @@global.key_cache_block_size = 1024;
62
--echo '#--------------------FN_DYNVARS_057_03------------------------#'
63
###############################################################################
64
# Change the value of key_cache_block_size to a valid value #
65
###############################################################################
67
SET @@global.key_cache_block_size = 1024;
68
SELECT @@global.key_cache_block_size;
69
SET @@global.key_cache_block_size = 16384;
70
SELECT @@global.key_cache_block_size;
71
SET @@global.key_cache_block_size = 1800;
72
SELECT @@global.key_cache_block_size;
73
SET @@global.key_cache_block_size = 16383;
74
SELECT @@global.key_cache_block_size;
75
--echo 'Bug# 34877 : Invalid Values are coming in variable on assigning valid values and Out Of Memory Warnings are coming';
78
--echo '#--------------------FN_DYNVARS_057_04-------------------------#'
79
###########################################################################
80
# Change the value of key_cache_block_size to invalid value #
81
###########################################################################
83
SET @@global.key_cache_block_size = -1;
84
SELECT @@global.key_cache_block_size;
85
SET @@global.key_cache_block_size = 42949672951;
86
SELECT @@global.key_cache_block_size;
87
--Error ER_WRONG_TYPE_FOR_VAR
88
SET @@global.key_cache_block_size = 10000.01;
89
SELECT @@global.key_cache_block_size;
90
SET @@global.key_cache_block_size = -1024;
91
SELECT @@global.key_cache_block_size;
92
SET @@global.key_cache_block_size = 256;
93
SELECT @@global.key_cache_block_size;
94
SET @@global.key_cache_block_size = 511;
95
SELECT @@global.key_cache_block_size;
96
SET @@global.key_cache_block_size = 16385;
97
SELECT @@global.key_cache_block_size;
99
echo 'Bug # 34837: Errors are not coming on assigning invalid values to variable';
101
--Error ER_WRONG_TYPE_FOR_VAR
102
SET @@global.key_cache_block_size = ON;
103
SELECT @@global.key_cache_block_size;
104
--Error ER_WRONG_TYPE_FOR_VAR
105
SET @@global.key_cache_block_size = 'test';
106
SELECT @@global.key_cache_block_size;
109
--echo '#-------------------FN_DYNVARS_057_05----------------------------#'
110
###########################################################################
111
# Test if accessing session key_cache_block_size gives error #
112
###########################################################################
114
--Error ER_GLOBAL_VARIABLE
115
SET @@session.key_cache_block_size = 0;
116
--Error ER_INCORRECT_GLOBAL_LOCAL_VAR
117
SELECT @@session.key_cache_block_size;
120
--echo '#----------------------FN_DYNVARS_057_06------------------------#'
121
##############################################################################
122
# Check if the value in GLOBAL & SESSION Tables matches values in variable #
123
##############################################################################
125
SELECT @@global.key_cache_block_size = VARIABLE_VALUE
126
FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
127
WHERE VARIABLE_NAME='key_cache_block_size';
129
SELECT @@key_cache_block_size = VARIABLE_VALUE
130
FROM INFORMATION_SCHEMA.SESSION_VARIABLES
131
WHERE VARIABLE_NAME='key_cache_block_size';
134
--echo '#---------------------FN_DYNVARS_057_07----------------------#'
135
###################################################################
136
# Check if TRUE and FALSE values can be used on variable #
137
###################################################################
139
SET @@global.key_cache_block_size = TRUE;
140
SELECT @@global.key_cache_block_size;
141
SET @@global.key_cache_block_size = FALSE;
142
SELECT @@global.key_cache_block_size;
145
--echo '#---------------------FN_DYNVARS_057_08----------------------#'
146
########################################################################################################
147
# Check if accessing variable with SESSION,LOCAL and without SCOPE points to same session variable #
148
########################################################################################################
150
SET @@global.key_cache_block_size = 1024;
151
SELECT @@key_cache_block_size = @@global.key_cache_block_size;
154
--echo '#---------------------FN_DYNVARS_057_09----------------------#'
155
###############################################################################
156
# Check if key_cache_block_size can be accessed with and without @@ sign #
157
###############################################################################;
159
--Error ER_GLOBAL_VARIABLE
160
SET key_cache_block_size = 8000;
161
SELECT @@key_cache_block_size;
162
--Error ER_PARSE_ERROR
163
SET local.key_cache_block_size = 10;
164
--Error ER_UNKNOWN_TABLE
165
SELECT local.key_cache_block_size;
166
--Error ER_PARSE_ERROR
167
SET global.key_cache_block_size = 10;
168
--Error ER_UNKNOWN_TABLE
169
SELECT global.key_cache_block_size;
170
--Error ER_BAD_FIELD_ERROR
171
SELECT key_cache_block_size = @@session.key_cache_block_size;
174
##############################
175
# Restore initial value #
176
##############################
178
SET @@global.key_cache_block_size = @start_value;
179
SELECT @@global.key_cache_block_size;
182
#####################################################################
183
# END OF key_cache_block_size TESTS #
184
#####################################################################