summaryrefslogtreecommitdiff
path: root/mysql-test/suite/sys_vars/t/sql_buffer_result_func.test
blob: 0f6084b65f67877987693293fc36c017baaf4310 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
############# mysql-test\t\sql_buffer_result_func.test #####################
#                                                                          #
# Variable Name: sql_buffer_result                                         #
# Scope: SESSION                                                           #
# Access Type: Dynamic                                                     #
# Data Type: BOOLEAN                                                       #
# Default Value: 0 FALSE                                                   #
# Values:       1 TRUE, 0 FALSE                                            #
#                                                                          #
#                                                                          #
# Creation Date: 2008-02-25                                                #
# Author:  Sharique Abdullah                                               #
#                                                                          #
# Description: Test Cases of Dynamic System Variable "sql_buffer_result"   #
#              that checks behavior of this variable in the following ways #
#              * Functionality based on different values                   #
#                                                                          #
# Reference: http://dev.mysql.com/doc/refman/5.1/en/set-option.html        #
#                                                                          #
############################################################################

--echo ** Setup **
--echo
#
# Setup
#

SET @original_sql_buffer_result = @@sql_buffer_result;

#
# Create tables
#

CREATE TEMPORARY TABLE t1(a varchar(20), b varchar(20));

INSERT INTO t1 VALUES('aa','bb');
INSERT INTO t1 VALUES('aa','bb');
INSERT INTO t1 VALUES('aa','bb');
INSERT INTO t1 VALUES('aa','bb');
INSERT INTO t1 VALUES('aa','bb');

--echo '#--------------------FN_DYNVARS_156_01-------------------------#'
#
# TRUE mode
#

SET SESSION sql_buffer_result = 1;

SHOW STATUS LIKE 'Created_tmp_tables';
--echo Expected value : 0.

SELECT * FROM t1;

SHOW STATUS LIKE 'Created_tmp_tables';
--echo Expected value : 1.

SELECT * FROM t1;

SHOW STATUS LIKE 'Created_tmp_tables';
--echo Expected value : 2.

--echo '#--------------------FN_DYNVARS_156_02-------------------------#'
#
# FALSE mode
#

SET SESSION sql_buffer_result = 0;

SHOW STATUS LIKE 'Created_tmp_tables';
--echo Expected value : 2.

SELECT * FROM t1;

SHOW STATUS LIKE 'Created_tmp_tables';
--echo Expected value : 2.

--echo '#--------------------FN_DYNVARS_156_03-------------------------#'
#
# Session data integrity check
#
connect (con_int1,localhost,root,,);

connection con_int1;

SELECT @@SESSION.sql_buffer_result;
--echo 0 / FALSE Expected

SET SESSION sql_buffer_result = FALSE;

connect (con_int2,localhost,root,,);

connection con_int2;

SELECT @@SESSION.sql_buffer_result;
--echo 0 / FALSE Expected

SET SESSION sql_buffer_result = TRUE;

connection con_int1;

SELECT @@SESSION.sql_buffer_result;
--echo 0 / FALSE Expected

connection con_int2;

SELECT @@SESSION.sql_buffer_result;
--echo 1 / TRUE Expected

connection default;

disconnect con_int1;
disconnect con_int2;


#
# Cleanup
#
--echo ** Cleanup **

SET @@sql_buffer_result = @original_sql_buffer_result;

DROP TABLE t1;