1** Setup **
2
3SET @session_sql_select_limit = @@SESSION.sql_select_limit;
4SET @global_sql_select_limit = @@GLOBAL.sql_select_limit;
5CREATE TEMPORARY TABLE t1(a int PRIMARY KEY, b varchar(20));
6CREATE TEMPORARY TABLE t2(a int PRIMARY KEY, b varchar(20));
7CREATE TEMPORARY TABLE t3(a int PRIMARY KEY, b varchar(20));
8INSERT INTO t1 VALUES(1, 'val1');
9INSERT INTO t1 VALUES(2, 'val2');
10INSERT INTO t1 VALUES(3, 'val3');
11INSERT INTO t1 VALUES(4, 'val4');
12INSERT INTO t1 VALUES(5, 'val5');
13INSERT INTO t1 VALUES(6, 'val6');
14INSERT INTO t1 VALUES(7, 'val7');
15INSERT INTO t1 VALUES(8, 'val8');
16INSERT INTO t1 VALUES(9, 'val9');
17INSERT INTO t2 VALUES(5, 'val5');
18INSERT INTO t2 VALUES(6, 'val6');
19INSERT INTO t2 VALUES(7, 'val7');
20INSERT INTO t2 VALUES(8, 'val8');
21INSERT INTO t2 VALUES(9, 'val9');
22'#-----------------------------FN_DYNVARS_165_01-----------------#'
23
24Value DEFAULT
25
26SET SESSION sql_select_limit = DEFAULT;
27affected rows: 0
28SELECT * FROM t1;
29a	b
301	val1
312	val2
323	val3
334	val4
345	val5
356	val6
367	val7
378	val8
389	val9
39affected rows: 9
40Expecting affected rows: 9
41SELECT * FROM t1 INNER JOIN t2 ON t1.a = t2.a;
42a	b	a	b
435	val5	5	val5
446	val6	6	val6
457	val7	7	val7
468	val8	8	val8
479	val9	9	val9
48affected rows: 5
49Expecting affected rows: 5
50'#-----------------------------FN_DYNVARS_165_02---------------#'
51SET SESSION sql_select_limit = 2;
52affected rows: 0
53SELECT * FROM t1;
54a	b
551	val1
562	val2
57affected rows: 2
58Expecting affected rows: 2
59SELECT * FROM t1 INNER JOIN t2 ON t1.a = t2.a;
60a	b	a	b
615	val5	5	val5
626	val6	6	val6
63affected rows: 2
64Expecting affected rows: 2
65SET SESSION sql_select_limit = 0;
66affected rows: 0
67SELECT * FROM t1;
68a	b
69affected rows: 0
70Expecting affected rows: 0
71SELECT * FROM t1 INNER JOIN t2 ON t1.a = t2.a;
72a	b	a	b
73affected rows: 0
74Expecting affected rows: 0
75'#-----------------------------FN_DYNVARS_165_03---------------#'
76SET SESSION sql_select_limit = 2;
77affected rows: 0
78SELECT * FROM t1 LIMIT 4;
79a	b
801	val1
812	val2
823	val3
834	val4
84affected rows: 4
85Expecting affected rows: 4
86SELECT * FROM t1 INNER JOIN t2 ON t1.a = t2.a LIMIT 3;
87a	b	a	b
885	val5	5	val5
896	val6	6	val6
907	val7	7	val7
91affected rows: 3
92Expecting affected rows: 3
93'#-----------------------------FN_DYNVARS_165_04----------------#'
94SET SESSION sql_select_limit = 2;
95affected rows: 0
96CREATE PROCEDURE TestProc()
97BEGIN
98SELECT * FROM t1;
99END|
100affected rows: 0
101call TestProc();
102a	b
1031	val1
1042	val2
1053	val3
1064	val4
1075	val5
1086	val6
1097	val7
1108	val8
1119	val9
112affected rows: 9
113affected rows: 0
114Expecting affected rows: 9
115DROP PROCEDURE TestProc;
116affected rows: 0
117CREATE PROCEDURE TestProc()
118BEGIN
119SELECT * FROM t1 INNER JOIN t2 ON t1.a = t2.a;
120END|
121affected rows: 0
122call TestProc();
123a	b	a	b
1245	val5	5	val5
1256	val6	6	val6
1267	val7	7	val7
1278	val8	8	val8
1289	val9	9	val9
129affected rows: 5
130affected rows: 0
131Expecting affected rows: 5
132DROP PROCEDURE TestProc;
133affected rows: 0
134'#-----------------------------FN_DYNVARS_165_05-----------------#'
135SET SESSION sql_select_limit = 2;
136affected rows: 0
137CREATE TEMPORARY TABLE t4(a int PRIMARY KEY, b varchar(20)) SELECT * FROM t2;
138affected rows: 5
139info: Records: 5  Duplicates: 0  Warnings: 0
140Expecting Records: 5
141INSERT INTO t3 SELECT * FROM t1;
142affected rows: 9
143info: Records: 9  Duplicates: 0  Warnings: 0
144Expecting Records: 9
145'#-----------------------------FN_DYNVARS_165_06---------------------#'
146SET GLOBAL sql_select_limit = 2;
147** Connecting con_int2 using root **
148** Connection con_int1 **
149SELECT @@SESSION.sql_select_limit;
150@@SESSION.sql_select_limit
1512
1522 Expected
153SET SESSION sql_select_limit = 10;
154** Connecting con_int2 using root **
155** Connection con_int2 **
156SELECT @@SESSION.sql_select_limit;
157@@SESSION.sql_select_limit
1582
1592 Expected
160SET SESSION sql_select_limit = 12;
161** Connection con_int2 **
162SELECT @@SESSION.sql_select_limit;
163@@SESSION.sql_select_limit
16412
16512 Expected
166** Connection con_int1 **
167SELECT @@SESSION.sql_select_limit;
168@@SESSION.sql_select_limit
16910
17010 Expected
171SELECT @@GLOBAL.sql_select_limit;
172@@GLOBAL.sql_select_limit
1732
1742 Expected
175** Connection default **
176Disconnecting Connections con_int1, con_int2
177SET @@SESSION.sql_select_limit = @session_sql_select_limit;
178SET @@GLOBAL.sql_select_limit = @global_sql_select_limit;
179DROP TABLE t1;
180DROP TABLE t2;
181DROP TABLE t3;
182DROP TABLE t4;
183