1
############## mysql-test\t\read_rnd_buffer_size_basic.test ###############
3
# Variable Name: read_rnd_buffer_size #
4
# Scope: GLOBAL | SESSION #
5
# Access Type: Dynamic #
7
# Default Value:262144 #
8
# Range: 8200-4294967295 #
11
# Creation Date: 2008-02-07 #
14
# Description: Test Cases of Dynamic System Variable read_rnd_buffer_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
29
######################################################################
30
# START OF read_rnd_buffer_size TESTS #
31
######################################################################
34
#############################################################
35
# Save initial value #
36
#############################################################
38
SET @start_global_value = @@global.read_rnd_buffer_size;
39
SELECT @start_global_value;
40
SET @start_session_value = @@session.read_rnd_buffer_size;
41
SELECT @start_session_value;
44
--echo '#--------------------FN_DYNVARS_140_01-------------------------#'
45
######################################################################
46
# Display the DEFAULT value of read_rnd_buffer_size #
47
######################################################################
49
SET @@global.read_rnd_buffer_size = 1000;
50
SET @@global.read_rnd_buffer_size = DEFAULT;
51
SELECT @@global.read_rnd_buffer_size;
53
SET @@session.read_rnd_buffer_size = 2000;
54
SET @@session.read_rnd_buffer_size = DEFAULT;
55
SELECT @@session.read_rnd_buffer_size;
58
--echo '#--------------------FN_DYNVARS_140_02-------------------------#'
59
######################################################################
60
# Check the DEFAULT value of read_rnd_buffer_size #
61
######################################################################
63
SET @@global.read_rnd_buffer_size = DEFAULT;
64
SELECT @@global.read_rnd_buffer_size = 262144;
66
SET @@session.read_rnd_buffer_size = DEFAULT;
67
SELECT @@session.read_rnd_buffer_size = 262144;
68
--echo 'Bug# 34876: This variable has invalid default value as compared to documentation';
71
--echo '#--------------------FN_DYNVARS_140_03-------------------------#'
72
################################################################################
73
# Change the value of read_rnd_buffer_size to a valid value for GLOBAL Scope #
74
################################################################################
76
SET @@global.read_rnd_buffer_size = 8201;
77
SELECT @@global.read_rnd_buffer_size= 8200 OR @@global.read_rnd_buffer_size= 8228;
78
SET @@global.read_rnd_buffer_size = 8200;
79
SELECT @@global.read_rnd_buffer_size= 8200 OR @@global.read_rnd_buffer_size= 8228;
80
SET @@global.read_rnd_buffer_size = 2147479552;
81
SELECT @@global.read_rnd_buffer_size;
82
SET @@global.read_rnd_buffer_size = 2147479551;
83
SELECT @@global.read_rnd_buffer_size;
84
--echo 'Bug# 34877: Invalid Values are coming in variable on assigning valid values';
87
--echo '#--------------------FN_DYNVARS_140_04-------------------------#'
88
###################################################################################
89
# Change the value of read_rnd_buffer_size to a valid value for SESSION Scope #
90
###################################################################################
92
SET @@session.read_rnd_buffer_size = 8200;
93
SELECT @@session.read_rnd_buffer_size= 8200 OR @@session.read_rnd_buffer_size= 8228;
94
SET @@session.read_rnd_buffer_size = 8201;
95
SELECT @@session.read_rnd_buffer_size= 8200 OR @@session.read_rnd_buffer_size= 8228;
96
SET @@session.read_rnd_buffer_size = 2147479552;
97
SELECT @@session.read_rnd_buffer_size;
98
SET @@session.read_rnd_buffer_size = 2147479551;
99
SELECT @@session.read_rnd_buffer_size;
102
--echo '#------------------FN_DYNVARS_140_05-----------------------#'
103
##################################################################
104
# Change the value of read_rnd_buffer_size to an invalid value #
105
##################################################################
107
SET @@global.read_rnd_buffer_size = 8199;
108
SELECT @@global.read_rnd_buffer_size= 8200 OR @@global.read_rnd_buffer_size= 8228;
109
SET @@global.read_rnd_buffer_size = -1024;
110
SELECT @@global.read_rnd_buffer_size= 8200 OR @@global.read_rnd_buffer_size= 8228;
111
SET @@global.read_rnd_buffer_size = 2147479553;
112
SELECT @@global.read_rnd_buffer_size;
113
--Error ER_PARSE_ERROR
114
SET @@global.read_rnd_buffer_size = 65530.34.;
115
SELECT @@global.read_rnd_buffer_size;
116
--Error ER_WRONG_TYPE_FOR_VAR
117
SET @@global.read_rnd_buffer_size = test;
118
SELECT @@global.read_rnd_buffer_size;
120
SET @@session.read_rnd_buffer_size = 8199;
121
SELECT @@session.read_rnd_buffer_size= 8200 OR @@session.read_rnd_buffer_size= 8228;
122
SET @@session.read_rnd_buffer_size = -2;
123
SELECT @@session.read_rnd_buffer_size= 8200 OR @@session.read_rnd_buffer_size= 8228;
124
--Error ER_PARSE_ERROR
125
SET @@session.read_rnd_buffer_size = 65530.34.;
126
SET @@session.read_rnd_buffer_size = 2147479553;
127
SELECT @@session.read_rnd_buffer_size;
128
--echo 'Bug # 34837: Errors are not coming on assigning invalid values to variable';
130
--Error ER_WRONG_TYPE_FOR_VAR
131
SET @@session.read_rnd_buffer_size = test;
132
SELECT @@session.read_rnd_buffer_size;
135
--echo '#------------------FN_DYNVARS_140_06-----------------------#'
136
####################################################################
137
# Check if the value in GLOBAL Table matches value in variable #
138
####################################################################
141
SELECT @@global.read_rnd_buffer_size = VARIABLE_VALUE FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES WHERE VARIABLE_NAME='read_rnd_buffer_size';
143
--echo '#------------------FN_DYNVARS_140_07-----------------------#'
144
####################################################################
145
# Check if the value in SESSION Table matches value in variable #
146
####################################################################
148
SELECT @@session.read_rnd_buffer_size =
149
VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_VARIABLES WHERE VARIABLE_NAME='read_rnd_buffer_size';
152
--echo '#------------------FN_DYNVARS_140_08-----------------------#'
153
####################################################################
154
# Check if TRUE and FALSE values can be used on variable #
155
####################################################################
157
SET @@global.read_rnd_buffer_size = TRUE;
158
SELECT @@global.read_rnd_buffer_size= 8200 OR @@global.read_rnd_buffer_size= 8228;
159
SET @@global.read_rnd_buffer_size = FALSE;
160
SELECT @@global.read_rnd_buffer_size= 8200 OR @@global.read_rnd_buffer_size= 8228;
163
--echo '#---------------------FN_DYNVARS_140_09----------------------#'
164
####################################################################################
165
# Check if accessing variable with and without GLOBAL point to same variable #
166
####################################################################################
168
SET @@global.read_rnd_buffer_size = 9000;
169
SELECT @@read_rnd_buffer_size = @@global.read_rnd_buffer_size;
172
--echo '#---------------------FN_DYNVARS_140_10----------------------#'
173
########################################################################################################
174
# Check if accessing variable with SESSION,LOCAL and without SCOPE points to same session variable #
175
########################################################################################################
177
SET @@read_rnd_buffer_size = 9000;
178
SELECT @@read_rnd_buffer_size = @@local.read_rnd_buffer_size;
179
SELECT @@local.read_rnd_buffer_size = @@session.read_rnd_buffer_size;
182
--echo '#---------------------FN_DYNVARS_140_11----------------------#'
183
###################################################################################
184
# Check if read_rnd_buffer_size can be accessed with and without @@ sign #
185
###################################################################################
187
SET read_rnd_buffer_size = 9100;
188
SELECT @@read_rnd_buffer_size= 8200 OR @@read_rnd_buffer_size= 8228;
189
--Error ER_UNKNOWN_TABLE
190
SELECT local.read_rnd_buffer_size;
191
--Error ER_UNKNOWN_TABLE
192
SELECT session.read_rnd_buffer_size;
193
--Error ER_BAD_FIELD_ERROR
194
SELECT read_rnd_buffer_size = @@session.read_rnd_buffer_size;
197
####################################
198
# Restore initial value #
199
####################################
201
SET @@global.read_rnd_buffer_size = @start_global_value;
202
SELECT @@global.read_rnd_buffer_size;
203
SET @@session.read_rnd_buffer_size = @start_session_value;
204
SELECT @@session.read_rnd_buffer_size;
207
#############################################################
208
# END OF read_rnd_buffer_size TESTS #
209
#############################################################