1 ############## mysql-test\t\query_cache_limit_basic.test ###############
3 # Variable Name: query_cache_limit #
5 # Access Type: Dynamic #
7 # Default Value: 1048576 #
11 # Creation Date: 2008-02-07 #
14 # Description: Test Cases of Dynamic System Variable query_cache_limit #
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/have_query_cache.inc
27 --source include/load_sysvars.inc
29 ########################################################################
30 # START OF query_cache_limit TESTS #
31 ########################################################################
34 ########################################################################
35 # Saving initial value of query_cache_limit in a temporary variable #
36 ########################################################################
38 SET @start_value = @@global.query_cache_limit;
42 --echo
'#--------------------FN_DYNVARS_131_01------------------------#'
43 ########################################################################
44 # Display the DEFAULT value of query_cache_limit #
45 ########################################################################
47 SET @@global.query_cache_limit = 99;
48 SET @@global.query_cache_limit = DEFAULT;
49 SELECT @@global.query_cache_limit;
52 --echo
'#---------------------FN_DYNVARS_131_02-------------------------#'
53 ###############################################
54 # Verify default value of variable #
55 ###############################################
57 SET @@global.query_cache_limit = @start_value;
58 SELECT @@global.query_cache_limit = 1048576;
61 --echo
'#--------------------FN_DYNVARS_131_03------------------------#'
62 ########################################################################
63 # Change the value of query_cache_limit to a valid value #
64 ########################################################################
66 SET @@global.query_cache_limit = 0;
67 SELECT @@global.query_cache_limit;
68 SET @@global.query_cache_limit = 1;
69 SELECT @@global.query_cache_limit;
70 SET @@global.query_cache_limit = 1048576;
71 SELECT @@global.query_cache_limit;
72 SET @@global.query_cache_limit = 1048575;
73 SELECT @@global.query_cache_limit;
76 --echo
'#--------------------FN_DYNVARS_131_04-------------------------#'
77 ###########################################################################
78 # Change the value of query_cache_limit to invalid value #
79 ###########################################################################
81 SET @@global.query_cache_limit = -1;
82 SELECT @@global.query_cache_limit;
83 SET @@global.query_cache_limit = 4294967296;
84 SELECT @@global.query_cache_limit;
85 SET @@global.query_cache_limit = 10240022115;
86 SELECT @@global.query_cache_limit;
87 --Error ER_WRONG_TYPE_FOR_VAR
88 SET @@global.query_cache_limit = 10000.01;
89 SELECT @@global.query_cache_limit;
90 SET @@global.query_cache_limit = -1024;
91 SELECT @@global.query_cache_limit;
92 SET @@global.query_cache_limit = 42949672950;
93 SELECT @@global.query_cache_limit;
95 --Error ER_WRONG_TYPE_FOR_VAR
96 SET @@global.query_cache_limit = ON;
97 SELECT @@global.query_cache_limit;
98 --Error ER_WRONG_TYPE_FOR_VAR
99 SET @@global.query_cache_limit =
'test';
100 SELECT @@global.query_cache_limit;
103 --echo
'#-------------------FN_DYNVARS_131_05----------------------------#'
104 ###########################################################################
105 # Test if accessing session query_cache_limit gives error #
106 ###########################################################################
108 --Error ER_GLOBAL_VARIABLE
109 SET @@session.query_cache_limit = 0;
110 SELECT @@query_cache_limit;
113 --echo
'#----------------------FN_DYNVARS_131_06------------------------#'
114 ##############################################################################
115 # Check if the value in GLOBAL & SESSION Tables matches values in variable #
116 ##############################################################################
118 SELECT @@global.query_cache_limit = VARIABLE_VALUE
119 FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
120 WHERE VARIABLE_NAME=
'query_cache_limit';
122 SELECT @@query_cache_limit = VARIABLE_VALUE
123 FROM INFORMATION_SCHEMA.SESSION_VARIABLES
124 WHERE VARIABLE_NAME=
'query_cache_limit';
127 --echo
'#---------------------FN_DYNVARS_131_07----------------------#'
128 ###################################################################
129 # Check if TRUE and FALSE values can be used on variable #
130 ###################################################################
132 SET @@global.query_cache_limit = TRUE;
133 SELECT @@global.query_cache_limit;
134 SET @@global.query_cache_limit = FALSE;
135 SELECT @@global.query_cache_limit;
138 --echo
'#---------------------FN_DYNVARS_131_08----------------------#'
139 ########################################################################################################
140 # Check if accessing variable with SESSION,LOCAL and without SCOPE points to same session variable #
141 ########################################################################################################
143 SET @@global.query_cache_limit = 1;
144 SELECT @@query_cache_limit = @@global.query_cache_limit;
147 --echo
'#---------------------FN_DYNVARS_131_09----------------------#'
148 ##########################################################################
149 # Check if query_cache_limit can be accessed with and without @@ sign #
150 ##########################################################################
152 --Error ER_GLOBAL_VARIABLE
153 SET query_cache_limit = 1;
154 SELECT @@query_cache_limit;
155 --Error ER_PARSE_ERROR
156 SET local.query_cache_limit = 1;
157 --Error ER_UNKNOWN_TABLE
158 SELECT local.query_cache_limit;
159 --Error ER_PARSE_ERROR
160 SET global.query_cache_limit = 1;
161 --Error ER_UNKNOWN_TABLE
162 SELECT global.query_cache_limit;
163 --Error ER_BAD_FIELD_ERROR
164 SELECT query_cache_limit = @@session.query_cache_limit;
167 ##############################
168 # Restore initial value #
169 ##############################
171 SET @@global.query_cache_limit = @start_value;
172 SELECT @@global.query_cache_limit;
175 ########################################################################
176 # END OF query_cache_limit TESTS #
177 ########################################################################