1
############## mysql-test\t\key_cache_age_threshold_basic.test ###############
3
# Variable Name: key_cache_age_threshold #
5
# Access Type: Dynamic #
8
# Range: 100-4294967295 #
11
# Creation Date: 2008-02-07 #
14
# Description: Test Cases of Dynamic System Variable key_cache_age_threshold #
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_age_threshold TESTS #
30
########################################################################
33
#############################################################################
34
# Saving initial value of key_cache_age_threshold in a temporary variable #
35
#############################################################################
37
SET @start_value = @@global.key_cache_age_threshold;
41
--echo '#--------------------FN_DYNVARS_056_01------------------------#'
42
################################################################################
43
# Display the DEFAULT value of key_cache_age_threshold #
44
################################################################################
46
SET @@global.key_cache_age_threshold = 99;
48
SET @@global.key_cache_age_threshold = DEFAULT;
49
--echo 'Bug# 34878: This variable has default value according to documentation';
50
SELECT @@global.key_cache_age_threshold;
53
--echo '#---------------------FN_DYNVARS_056_02-------------------------#'
54
###############################################
55
# Verify default value of variable #
56
###############################################
58
SET @@global.key_cache_age_threshold = @start_value;
59
SELECT @@global.key_cache_age_threshold = 300;
62
--echo '#--------------------FN_DYNVARS_056_03------------------------#'
63
###############################################################################
64
# Change the value of key_cache_age_threshold to a valid value #
65
###############################################################################
67
SET @@global.key_cache_age_threshold = 100;
68
SELECT @@global.key_cache_age_threshold;
69
SET @@global.key_cache_age_threshold = 4294967295;
70
SELECT @@global.key_cache_age_threshold;
71
SET @@global.key_cache_age_threshold = 1800;
72
SELECT @@global.key_cache_age_threshold;
73
SET @@global.key_cache_age_threshold = 65535;
74
SELECT @@global.key_cache_age_threshold;
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_056_04-------------------------#'
79
###########################################################################
80
# Change the value of key_cache_age_threshold to invalid value #
81
###########################################################################
83
SET @@global.key_cache_age_threshold = -1;
84
SELECT @@global.key_cache_age_threshold;
85
SET @@global.key_cache_age_threshold = 42949672951;
86
SELECT @@global.key_cache_age_threshold;
87
--Error ER_WRONG_TYPE_FOR_VAR
88
SET @@global.key_cache_age_threshold = 10000.01;
89
SELECT @@global.key_cache_age_threshold;
90
SET @@global.key_cache_age_threshold = -1024;
91
SELECT @@global.key_cache_age_threshold;
92
SET @@global.key_cache_age_threshold = 99;
93
SELECT @@global.key_cache_age_threshold;
95
echo 'Bug # 34837: Errors are not coming on assigning invalid values to variable';
97
--Error ER_WRONG_TYPE_FOR_VAR
98
SET @@global.key_cache_age_threshold = ON;
99
SELECT @@global.key_cache_age_threshold;
100
--Error ER_WRONG_TYPE_FOR_VAR
101
SET @@global.key_cache_age_threshold = 'test';
102
SELECT @@global.key_cache_age_threshold;
105
--echo '#-------------------FN_DYNVARS_056_05----------------------------#'
106
###########################################################################
107
# Test if accessing session key_cache_age_threshold gives error #
108
###########################################################################
110
--Error ER_GLOBAL_VARIABLE
111
SET @@session.key_cache_age_threshold = 0;
112
--Error ER_INCORRECT_GLOBAL_LOCAL_VAR
113
SELECT @@session.key_cache_age_threshold;
116
--echo '#----------------------FN_DYNVARS_056_06------------------------#'
117
##############################################################################
118
# Check if the value in GLOBAL & SESSION Tables matches values in variable #
119
##############################################################################
121
SELECT @@global.key_cache_age_threshold = VARIABLE_VALUE
122
FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
123
WHERE VARIABLE_NAME='key_cache_age_threshold';
125
SELECT @@key_cache_age_threshold = VARIABLE_VALUE
126
FROM INFORMATION_SCHEMA.SESSION_VARIABLES
127
WHERE VARIABLE_NAME='key_cache_age_threshold';
130
--echo '#---------------------FN_DYNVARS_056_07----------------------#'
131
###################################################################
132
# Check if TRUE and FALSE values can be used on variable #
133
###################################################################
135
SET @@global.key_cache_age_threshold = TRUE;
136
SELECT @@global.key_cache_age_threshold;
137
SET @@global.key_cache_age_threshold = FALSE;
138
SELECT @@global.key_cache_age_threshold;
141
--echo '#---------------------FN_DYNVARS_056_08----------------------#'
142
########################################################################################################
143
# Check if accessing variable with SESSION,LOCAL and without SCOPE points to same session variable #
144
########################################################################################################
146
SET @@global.key_cache_age_threshold = 101;
147
SELECT @@key_cache_age_threshold = @@global.key_cache_age_threshold;
150
--echo '#---------------------FN_DYNVARS_056_09----------------------#'
151
########################################################################## #######
152
# Check if key_cache_age_threshold can be accessed with and without @@ sign #
153
##################################################################################
155
--Error ER_GLOBAL_VARIABLE
156
SET key_cache_age_threshold = 8000;
157
SELECT @@key_cache_age_threshold;
158
--Error ER_PARSE_ERROR
159
SET local.key_cache_age_threshold = 10;
160
--Error ER_UNKNOWN_TABLE
161
SELECT local.key_cache_age_threshold;
162
--Error ER_PARSE_ERROR
163
SET global.key_cache_age_threshold = 10;
164
--Error ER_UNKNOWN_TABLE
165
SELECT global.key_cache_age_threshold;
166
--Error ER_BAD_FIELD_ERROR
167
SELECT key_cache_age_threshold = @@session.key_cache_age_threshold;
170
##############################
171
# Restore initial value #
172
##############################
174
SET @@global.key_cache_age_threshold = @start_value;
175
SELECT @@global.key_cache_age_threshold;
178
########################################################################
179
# END OF key_cache_age_threshold TESTS #
180
########################################################################