1
############## mysql-test\t\range_alloc_block_size_basic.test ###############
3
# Variable Name: range_alloc_block_size #
4
# Scope: GLOBAL | SESSION #
5
# Access Type: Dynamic #
8
# Max value: 4294967295 #
11
# Creation Date: 2008-02-07 #
14
# Description: Test Cases of Dynamic System Variable range_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 range_alloc_block_size TESTS #
30
######################################################################
33
#############################################################
34
# Save initial value #
35
#############################################################
37
SET @start_global_value = @@global.range_alloc_block_size;
38
SELECT @start_global_value;
39
SET @start_session_value = @@session.range_alloc_block_size;
40
SELECT @start_session_value;
43
--echo '#--------------------FN_DYNVARS_137_01-------------------------#'
44
######################################################################
45
# Display the DEFAULT value of range_alloc_block_size #
46
######################################################################
48
SET @@global.range_alloc_block_size = 100;
49
SET @@global.range_alloc_block_size = DEFAULT;
50
SELECT @@global.range_alloc_block_size;
52
SET @@session.range_alloc_block_size = 200;
53
SET @@session.range_alloc_block_size = DEFAULT;
54
SELECT @@session.range_alloc_block_size;
57
--echo '#--------------------FN_DYNVARS_137_02-------------------------#'
58
######################################################################
59
# Check the DEFAULT value of range_alloc_block_size #
60
######################################################################
62
SET @@global.range_alloc_block_size = DEFAULT;
63
SELECT @@global.range_alloc_block_size = 2048;
65
SET @@session.range_alloc_block_size = DEFAULT;
66
SELECT @@session.range_alloc_block_size = 2048;
69
--echo '#--------------------FN_DYNVARS_137_03-------------------------#'
70
################################################################################
71
# Change the value of range_alloc_block_size to a valid value for GLOBAL Scope #
72
################################################################################
74
SET @@global.range_alloc_block_size = 2048;
75
SELECT @@global.range_alloc_block_size;
76
--echo 'Bug# 34877: Invalid Values are coming in variable on assigning valid values';
77
SET @@global.range_alloc_block_size = 4294967295;
78
SELECT @@global.range_alloc_block_size;
79
SET @@global.range_alloc_block_size = 4294967294;
80
SELECT @@global.range_alloc_block_size;
81
--echo 'Bug# 34877: Invalid Values are coming in variable on assigning valid values';
84
--echo '#--------------------FN_DYNVARS_137_04-------------------------#'
85
###################################################################################
86
# Change the value of range_alloc_block_size to a valid value for SESSION Scope #
87
###################################################################################
89
SET @@session.range_alloc_block_size = 2048;
90
SELECT @@session.range_alloc_block_size;
91
SET @@session.range_alloc_block_size = 4294967295;
92
SELECT @@session.range_alloc_block_size;
93
SET @@session.range_alloc_block_size = 4294967294;
94
SELECT @@session.range_alloc_block_size;
97
--echo '#------------------FN_DYNVARS_137_05-----------------------#'
98
##################################################################
99
# Change the value of range_alloc_block_size to an invalid value #
100
##################################################################
102
SET @@global.range_alloc_block_size = 0;
103
SELECT @@global.range_alloc_block_size;
104
SET @@global.range_alloc_block_size = -1024;
105
SELECT @@global.range_alloc_block_size;
106
SET @@global.range_alloc_block_size = 42949672951;
107
SELECT @@global.range_alloc_block_size;
108
--Error ER_PARSE_ERROR
109
SET @@global.range_alloc_block_size = 65530.34.;
110
SELECT @@global.range_alloc_block_size;
111
--Error ER_WRONG_TYPE_FOR_VAR
112
SET @@global.range_alloc_block_size = test;
113
SELECT @@global.range_alloc_block_size;
115
SET @@session.range_alloc_block_size = 0;
116
SELECT @@session.range_alloc_block_size;
117
SET @@session.range_alloc_block_size = -2;
118
SELECT @@session.range_alloc_block_size;
119
--Error ER_PARSE_ERROR
120
SET @@session.range_alloc_block_size = 65530.34.;
121
SET @@session.range_alloc_block_size = 4294967296;
122
SELECT @@session.range_alloc_block_size;
123
--echo 'Bug # 34837: Errors are not coming on assigning invalid values to variable';
125
--Error ER_WRONG_TYPE_FOR_VAR
126
SET @@session.range_alloc_block_size = test;
127
SELECT @@session.range_alloc_block_size;
130
--echo '#------------------FN_DYNVARS_137_06-----------------------#'
131
####################################################################
132
# Check if the value in GLOBAL Table matches value in variable #
133
####################################################################
136
SELECT @@global.range_alloc_block_size = VARIABLE_VALUE
137
FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
138
WHERE VARIABLE_NAME='range_alloc_block_size';
140
--echo '#------------------FN_DYNVARS_137_07-----------------------#'
141
####################################################################
142
# Check if the value in SESSION Table matches value in variable #
143
####################################################################
145
SELECT @@session.range_alloc_block_size = VARIABLE_VALUE
146
FROM INFORMATION_SCHEMA.SESSION_VARIABLES
147
WHERE VARIABLE_NAME='range_alloc_block_size';
150
--echo '#------------------FN_DYNVARS_137_08-----------------------#'
151
####################################################################
152
# Check if TRUE and FALSE values can be used on variable #
153
####################################################################
155
SET @@global.range_alloc_block_size = TRUE;
156
SELECT @@global.range_alloc_block_size;
157
SET @@global.range_alloc_block_size = FALSE;
158
SELECT @@global.range_alloc_block_size;
161
--echo '#---------------------FN_DYNVARS_137_09----------------------#'
162
####################################################################################
163
# Check if accessing variable with and without GLOBAL point to same variable #
164
####################################################################################
166
SET @@global.range_alloc_block_size = 10;
167
SELECT @@range_alloc_block_size = @@global.range_alloc_block_size;
170
--echo '#---------------------FN_DYNVARS_137_10----------------------#'
171
########################################################################################################
172
# Check if accessing variable with SESSION,LOCAL and without SCOPE points to same session variable #
173
########################################################################################################
175
SET @@range_alloc_block_size = 100;
176
SELECT @@range_alloc_block_size = @@local.range_alloc_block_size;
177
SELECT @@local.range_alloc_block_size = @@session.range_alloc_block_size;
180
--echo '#---------------------FN_DYNVARS_137_11----------------------#'
181
###################################################################################
182
# Check if range_alloc_block_size can be accessed with and without @@ sign #
183
###################################################################################
185
SET range_alloc_block_size = 1;
186
SELECT @@range_alloc_block_size;
187
--Error ER_UNKNOWN_TABLE
188
SELECT local.range_alloc_block_size;
189
--Error ER_UNKNOWN_TABLE
190
SELECT session.range_alloc_block_size;
191
--Error ER_BAD_FIELD_ERROR
192
SELECT range_alloc_block_size = @@session.range_alloc_block_size;
195
####################################
196
# Restore initial value #
197
####################################
199
SET @@global.range_alloc_block_size = @start_global_value;
200
SELECT @@global.range_alloc_block_size;
201
SET @@session.range_alloc_block_size = @start_session_value;
202
SELECT @@session.range_alloc_block_size;
205
#############################################################
206
# END OF range_alloc_block_size TESTS #
207
#############################################################