1
############## mysql-test\t\transaction_alloc_block_size_basic.test ###########
3
# Variable Name: transaction_alloc_block_size #
4
# Scope: GLOBAL | SESSION #
5
# Access Type: Dynamic #
7
# Default Value: 8192 #
8
# Range: 1024-134217728 #
11
# Creation Date: 2008-02-14 #
14
# Description: Test Cases of Dynamic System Variable #
15
# transaction_alloc_block_size #
16
# that checks the behavior of this variable in the following ways#
18
# * Valid & Invalid values #
19
# * Scope & Access method #
22
# Reference: http://dev.mysql.com/doc/refman/5.1/en/ #
23
# server-system-variables.html #
25
###############################################################################
27
--source include/load_sysvars.inc
29
########################################################################
30
# START OF transaction_alloc_block_size TESTS #
31
########################################################################
34
#############################################################
35
# Save initial value #
36
#############################################################
38
SET @start_global_value = @@global.transaction_alloc_block_size;
39
SELECT @start_global_value;
40
SET @start_session_value = @@session.transaction_alloc_block_size;
41
SELECT @start_session_value;
44
--echo '#--------------------FN_DYNVARS_005_01-------------------------#'
45
########################################################################
46
# Display the DEFAULT value of transaction_alloc_block_size #
47
########################################################################
49
SET @@global.transaction_alloc_block_size = 100;
50
SET @@global.transaction_alloc_block_size = DEFAULT;
51
SELECT @@global.transaction_alloc_block_size;
54
SET @@session.transaction_alloc_block_size = 200;
55
SET @@session.transaction_alloc_block_size = DEFAULT;
56
SELECT @@session.transaction_alloc_block_size;
60
--echo '#--------------------FN_DYNVARS_005_02-------------------------#'
61
########################################################################
62
# Check the DEFAULT value of transaction_alloc_block_size #
63
########################################################################
65
SET @@global.transaction_alloc_block_size = DEFAULT;
66
SELECT @@global.transaction_alloc_block_size = 8192;
68
SET @@session.transaction_alloc_block_size = DEFAULT;
69
SELECT @@session.transaction_alloc_block_size = 8192;
72
--echo '#--------------------FN_DYNVARS_005_03-------------------------#'
73
##################################################################
74
# Change the value of variable to a valid value for GLOBAL Scope #
75
##################################################################
77
SET @@global.transaction_alloc_block_size = 1024;
78
SELECT @@global.transaction_alloc_block_size;
80
SET @@global.transaction_alloc_block_size = 60020;
81
SELECT @@global.transaction_alloc_block_size;
83
--echo '#--------------------FN_DYNVARS_005_04-------------------------#'
84
###################################################################
85
# Change the value of variable to a valid value for SESSION Scope #
86
###################################################################
88
SET @@session.transaction_alloc_block_size = 1024;
89
SELECT @@session.transaction_alloc_block_size;
91
SET @@session.transaction_alloc_block_size = 65535;
92
SELECT @@session.transaction_alloc_block_size;
95
--echo '#------------------FN_DYNVARS_005_05-----------------------#'
96
########################################################################
97
# Change the value of transaction_alloc_block_size to an invalid value #
98
########################################################################
100
SET @@global.transaction_alloc_block_size = 0;
101
SELECT @@global.transaction_alloc_block_size;
103
SET @@global.transaction_alloc_block_size = -1024;
104
SELECT @@global.transaction_alloc_block_size;
107
SET @@global.transaction_alloc_block_size = 135217728;
108
SELECT @@global.transaction_alloc_block_size;
110
-- Error ER_WRONG_TYPE_FOR_VAR
111
SET @@global.transaction_alloc_block_size = ON;
113
-- Error ER_WRONG_TYPE_FOR_VAR
114
SET @@global.transaction_alloc_block_size = OFF;
117
SET @@global.transaction_alloc_block_size = True;
118
SELECT @@global.transaction_alloc_block_size;
120
SET @@global.transaction_alloc_block_size = False;
121
SELECT @@global.transaction_alloc_block_size;
124
-- Error ER_WRONG_TYPE_FOR_VAR
125
SET @@global.transaction_alloc_block_size = 65530.34;
127
-- Error ER_WRONG_TYPE_FOR_VAR
128
SET @@global.transaction_alloc_block_size ="Test";
130
SET @@global.transaction_alloc_block_size = 1000;
131
SELECT @@global.transaction_alloc_block_size;
133
SET @@session.transaction_alloc_block_size = 135217728;
134
SELECT @@session.transaction_alloc_block_size;
136
-- Error ER_WRONG_TYPE_FOR_VAR
137
SET @@session.transaction_alloc_block_size = ON;
139
-- Error ER_WRONG_TYPE_FOR_VAR
140
SET @@session.transaction_alloc_block_size = OFF;
142
SET @@session.transaction_alloc_block_size = True;
143
SELECT @@session.transaction_alloc_block_size;
145
SET @@session.transaction_alloc_block_size = False;
146
SELECT @@session.transaction_alloc_block_size;
149
-- Error ER_WRONG_TYPE_FOR_VAR
150
SET @@session.transaction_alloc_block_size = "Test";
153
--Error ER_WRONG_TYPE_FOR_VAR
154
SET @@session.transaction_alloc_block_size = 'test';
156
--echo '#------------------FN_DYNVARS_005_06-----------------------#'
157
####################################################################
158
# Check if the value in GLOBAL Table matches value in variable #
159
####################################################################
162
SELECT @@global.transaction_alloc_block_size = VARIABLE_VALUE
163
FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
164
WHERE VARIABLE_NAME='transaction_alloc_block_size';
166
--echo '#------------------FN_DYNVARS_005_07-----------------------#'
167
####################################################################
168
# Check if the value in SESSION Table matches value in variable #
169
####################################################################
171
SELECT @@session.transaction_alloc_block_size = VARIABLE_VALUE
172
FROM INFORMATION_SCHEMA.SESSION_VARIABLES
173
WHERE VARIABLE_NAME='transaction_alloc_block_size';
176
--echo '#---------------------FN_DYNVARS_001_08----------------------#'
177
###########################################################################
178
# Check if global and session variable are independent of each other #
179
###########################################################################
181
SET @@transaction_alloc_block_size = 1024;
182
SET @@global.transaction_alloc_block_size = 134217728;
183
SELECT @@transaction_alloc_block_size = @@global.transaction_alloc_block_size;
186
--echo '#---------------------FN_DYNVARS_001_09----------------------#'
187
########################################################################
188
# Check if accessing variable with SESSION,LOCAL and without SCOPE #
189
# points to same session variable #
190
########################################################################
192
SET @@transaction_alloc_block_size = 100;
193
SELECT @@transaction_alloc_block_size = @@local.transaction_alloc_block_size;
194
SELECT @@local.transaction_alloc_block_size = @@session.transaction_alloc_block_size;
197
--echo '#---------------------FN_DYNVARS_001_10----------------------#'
198
################################################################
199
# Check if variable can be accessed with and without @@ sign #
200
################################################################
202
SET transaction_alloc_block_size = 1027;
203
SELECT @@transaction_alloc_block_size;
205
--Error ER_UNKNOWN_TABLE
206
SELECT local.transaction_alloc_block_size;
208
--Error ER_UNKNOWN_TABLE
209
SELECT session.transaction_alloc_block_size;
211
--Error ER_BAD_FIELD_ERROR
212
SELECT transaction_alloc_block_size = @@session.transaction_alloc_block_size;
215
####################################
216
# Restore initial value #
217
####################################
219
SET @@global.transaction_alloc_block_size = @start_global_value;
220
SELECT @@global.transaction_alloc_block_size;
221
SET @@session.tmp_table_size = @start_session_value;
222
SELECT @@session.transaction_alloc_block_size;
225
#############################################################
226
# END OF transaction_alloc_block_size TESTS #
227
#############################################################