1
############## mysql-test\t\query_alloc_block_size_basic.test ###############
3
# Variable Name: query_alloc_block_size #
4
# Scope: GLOBAL | SESSION #
5
# Access Type: Dynamic #
7
# Default Value: 8192 #
8
# Range: 1024-4294967295 #
11
# Creation Date: 2008-02-07 #
14
# Description: Test Cases of Dynamic System Variable query_alloc_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 query_alloc_block_size TESTS #
30
###################################################################
33
#############################################################
34
# Save initial value #
35
#############################################################
37
SET @start_global_value = @@global.query_alloc_block_size;
38
SELECT @start_global_value;
39
SET @start_session_value = @@session.query_alloc_block_size;
40
SELECT @start_session_value;
43
--echo '#--------------------FN_DYNVARS_130_01-------------------------#'
44
###################################################################
45
# Display the DEFAULT value of query_alloc_block_size #
46
###################################################################
48
SET @@global.query_alloc_block_size = 10000;
49
SET @@global.query_alloc_block_size = DEFAULT;
50
SELECT @@global.query_alloc_block_size;
52
SET @@session.query_alloc_block_size = 20000;
53
SET @@session.query_alloc_block_size = DEFAULT;
54
SELECT @@session.query_alloc_block_size;
57
--echo '#--------------------FN_DYNVARS_130_02-------------------------#'
58
###################################################################
59
# Check the DEFAULT value of query_alloc_block_size #
60
###################################################################
62
SET @@global.query_alloc_block_size = DEFAULT;
63
SELECT @@global.query_alloc_block_size = 8192;
65
SET @@session.query_alloc_block_size = DEFAULT;
66
SELECT @@session.query_alloc_block_size = 8192;
69
--echo '#--------------------FN_DYNVARS_130_03-------------------------#'
70
#############################################################################
71
# Change the value of query_alloc_block_size to a valid value for GLOBAL Scope #
72
#############################################################################
74
SET @@global.query_alloc_block_size = 1024;
75
SELECT @@global.query_alloc_block_size;
76
SET @@global.query_alloc_block_size = 1025;
77
SELECT @@global.query_alloc_block_size;
78
SET @@global.query_alloc_block_size = 4294967295;
79
SELECT @@global.query_alloc_block_size;
80
SET @@global.query_alloc_block_size = 4294967294;
81
SELECT @@global.query_alloc_block_size;
82
SET @@global.query_alloc_block_size = 65536;
83
SELECT @@global.query_alloc_block_size;
85
--echo 'Bug# 34877: Invalid Values are coming in variable on assigning valid values';
88
--echo '#--------------------FN_DYNVARS_130_04-------------------------#'
89
#################################################################################
90
# Change the value of query_alloc_block_size to a valid value for SESSION Scope #
91
#################################################################################
93
SET @@session.query_alloc_block_size = 1024;
94
SELECT @@session.query_alloc_block_size;
95
SET @@session.query_alloc_block_size = 1025;
96
SELECT @@session.query_alloc_block_size;
97
SET @@session.query_alloc_block_size = 4294967295;
98
SELECT @@session.query_alloc_block_size;
99
SET @@session.query_alloc_block_size = 4294967294;
100
SELECT @@session.query_alloc_block_size;
101
SET @@session.query_alloc_block_size = 655536;
102
SELECT @@session.query_alloc_block_size;
104
--echo '#------------------FN_DYNVARS_130_05-----------------------#'
105
##################################################################
106
# Change the value of query_alloc_block_size to an invalid value #
107
##################################################################
109
SET @@global.query_alloc_block_size = 64;
110
SELECT @@global.query_alloc_block_size;
111
SET @@global.query_alloc_block_size = -1;
112
SELECT @@global.query_alloc_block_size;
113
SET @@global.query_alloc_block_size = 1023;
114
SELECT @@global.query_alloc_block_size;
115
SET @@global.query_alloc_block_size = 4294967296;
116
SELECT @@global.query_alloc_block_size;
117
--Error ER_PARSE_ERROR
118
SET @@global.query_alloc_block_size = 65530.34.;
119
SELECT @@global.query_alloc_block_size;
120
--Error ER_WRONG_TYPE_FOR_VAR
121
SET @@global.query_alloc_block_size = test;
122
SELECT @@global.query_alloc_block_size;
124
SET @@session.query_alloc_block_size = 64;
125
SELECT @@session.query_alloc_block_size;
126
SET @@session.query_alloc_block_size = -2;
127
SELECT @@session.query_alloc_block_size;
128
--Error ER_PARSE_ERROR
129
SET @@session.query_alloc_block_size = 65530.34.;
130
SET @@session.query_alloc_block_size = 1023;
131
SELECT @@session.query_alloc_block_size;
132
SET @@session.query_alloc_block_size = 4294967296;
133
SELECT @@session.query_alloc_block_size;
134
--echo 'Bug # 34837: Errors are not coming on assigning invalid values to variable';
136
--Error ER_WRONG_TYPE_FOR_VAR
137
SET @@session.query_alloc_block_size = test;
138
SELECT @@session.query_alloc_block_size;
140
--echo '#------------------FN_DYNVARS_130_06-----------------------#'
141
####################################################################
142
# Check if the value in GLOBAL Table matches value in variable #
143
####################################################################
145
#SET @@global.query_alloc_block_size = 1;
146
#SET @@session.query_alloc_block_size = 12;
147
--echo 'Bug# 34877: OutOFMemeory errors are coming if we dont assign these values to variable before comparision statement';
149
SET @@global.query_alloc_block_size = 1;
150
SET @@session.query_alloc_block_size = 12;
152
SELECT @@global.query_alloc_block_size =
153
VARIABLE_VALUE FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
154
WHERE VARIABLE_NAME='query_alloc_block_size';
157
--echo '#------------------FN_DYNVARS_130_07-----------------------#'
158
####################################################################
159
# Check if the value in SESSION Table matches value in variable #
160
####################################################################
162
SELECT @@session.query_alloc_block_size = VARIABLE_VALUE
163
FROM INFORMATION_SCHEMA.SESSION_VARIABLES
164
WHERE VARIABLE_NAME='query_alloc_block_size';
167
--echo '#------------------FN_DYNVARS_130_08-----------------------#'
168
####################################################################
169
# Check if TRUE and FALSE values can be used on variable #
170
####################################################################
172
SET @@global.query_alloc_block_size = TRUE;
173
SELECT @@global.query_alloc_block_size;
174
SET @@global.query_alloc_block_size = FALSE;
175
SELECT @@global.query_alloc_block_size;
178
--echo '#---------------------FN_DYNVARS_130_09----------------------#'
179
#################################################################################
180
# Check if accessing variable with and without GLOBAL point to same variable #
181
#################################################################################
183
SET @@global.query_alloc_block_size = 2048;
184
SELECT @@query_alloc_block_size = @@global.query_alloc_block_size;
187
--echo '#---------------------FN_DYNVARS_130_10----------------------#'
188
########################################################################################################
189
# Check if accessing variable with SESSION,LOCAL and without SCOPE points to same session variable #
190
########################################################################################################
192
SET @@query_alloc_block_size = 5000;
193
SELECT @@query_alloc_block_size = @@local.query_alloc_block_size;
194
SELECT @@local.query_alloc_block_size = @@session.query_alloc_block_size;
197
--echo '#---------------------FN_DYNVARS_130_11----------------------#'
198
##############################################################################
199
# Check if query_alloc_block_size can be accessed with and without @@ sign #
200
##############################################################################
202
SET query_alloc_block_size = 1024;
203
SELECT @@query_alloc_block_size;
204
--Error ER_UNKNOWN_TABLE
205
SELECT local.query_alloc_block_size;
206
--Error ER_UNKNOWN_TABLE
207
SELECT session.query_alloc_block_size;
208
--Error ER_BAD_FIELD_ERROR
209
SELECT query_alloc_block_size = @@session.query_alloc_block_size;
212
####################################
213
# Restore initial value #
214
####################################
216
SET @@global.query_alloc_block_size = @start_global_value;
217
SELECT @@global.query_alloc_block_size;
218
SET @@session.query_alloc_block_size = @start_session_value;
219
SELECT @@session.query_alloc_block_size;
222
########################################################
223
# END OF query_alloc_block_size TESTS #
224
########################################################