7 changed files with 321 additions and 11 deletions
			
			
		- 
					1.bzrignore
 - 
					79mysql-test/r/group_concat_max_len_func.result
 - 
					12mysql-test/r/timestamp_func.result
 - 
					4mysql-test/t/disabled.def
 - 
					131mysql-test/t/group_concat_max_len_func.test
 - 
					95mysql-test/t/max_allowed_packet_func.test
 - 
					10mysql-test/t/timestamp_func.test
 
@ -0,0 +1,79 @@ | 
				
			|||
SET @save = @@global.group_concat_max_len; | 
				
			|||
drop table if exists t1; | 
				
			|||
## Creating new table t1 ## | 
				
			|||
CREATE TABLE t1 | 
				
			|||
( | 
				
			|||
id INT NOT NULL auto_increment, | 
				
			|||
PRIMARY KEY (id), | 
				
			|||
rollno int NOT NULL, | 
				
			|||
name VARCHAR(30) | 
				
			|||
); | 
				
			|||
'#--------------------FN_DYNVARS_034_01-------------------------#' | 
				
			|||
## Setting initial value of variable to 4 ##  | 
				
			|||
SET @@global.group_concat_max_len = 4; | 
				
			|||
## Inserting some rows in table ##  | 
				
			|||
INSERT into t1(rollno, name) values(1, 'Record_1'); | 
				
			|||
INSERT into t1(rollno, name) values(2, 'Record_2'); | 
				
			|||
INSERT into t1(rollno, name) values(1, 'Record_3'); | 
				
			|||
INSERT into t1(rollno, name) values(3, 'Record_4'); | 
				
			|||
INSERT into t1(rollno, name) values(1, 'Record_5'); | 
				
			|||
INSERT into t1(rollno, name) values(3, 'Record_6'); | 
				
			|||
INSERT into t1(rollno, name) values(4, 'Record_7'); | 
				
			|||
INSERT into t1(rollno, name) values(4, 'Record_8'); | 
				
			|||
## Creating two new connections ##  | 
				
			|||
'#--------------------FN_DYNVARS_034_02-------------------------#' | 
				
			|||
## Connecting with test_con1 ## | 
				
			|||
## Accessing data and using group_concat on column whose value is greater than 4 ##  | 
				
			|||
SELECT id, rollno, group_concat(name) FROM t1 GROUP BY rollno; | 
				
			|||
id	rollno	group_concat(name) | 
				
			|||
1	1	Reco | 
				
			|||
2	2	Reco | 
				
			|||
4	3	Reco | 
				
			|||
7	4	Reco | 
				
			|||
Warnings: | 
				
			|||
Warning	1260	4 line(s) were cut by GROUP_CONCAT() | 
				
			|||
## Changing session value of variable and verifying its behavior, ## | 
				
			|||
## warning should come here ##  | 
				
			|||
SET @@session.group_concat_max_len = 10; | 
				
			|||
SELECT id, rollno, group_concat(name) FROM t1 GROUP BY rollno; | 
				
			|||
id	rollno	group_concat(name) | 
				
			|||
1	1	Record_1,R | 
				
			|||
2	2	Record_2 | 
				
			|||
4	3	Record_4,R | 
				
			|||
7	4	Record_7,R | 
				
			|||
Warnings: | 
				
			|||
Warning	1260	3 line(s) were cut by GROUP_CONCAT() | 
				
			|||
'#--------------------FN_DYNVARS_034_03-------------------------#' | 
				
			|||
## Connecting with new connection test_con2 ##  | 
				
			|||
## Verifying initial value of variable. It should be 4 ##  | 
				
			|||
SELECT @@session.group_concat_max_len = 4; | 
				
			|||
@@session.group_concat_max_len = 4 | 
				
			|||
1 | 
				
			|||
## Setting session value of variable to 20 and verifying variable is concating ##  | 
				
			|||
## column's value to 20 or not ##  | 
				
			|||
SET @@session.group_concat_max_len = 20; | 
				
			|||
## Verifying value of name column, it should not me more than 20 characters ## | 
				
			|||
## Warning should come here ## | 
				
			|||
SELECT id, rollno, group_concat(name) FROM t1 GROUP BY rollno; | 
				
			|||
id	rollno	group_concat(name) | 
				
			|||
1	1	Record_1,Record_3,Re | 
				
			|||
2	2	Record_2 | 
				
			|||
4	3	Record_4,Record_6 | 
				
			|||
7	4	Record_7,Record_8 | 
				
			|||
Warnings: | 
				
			|||
Warning	1260	1 line(s) were cut by GROUP_CONCAT() | 
				
			|||
'#--------------------FN_DYNVARS_034_04-------------------------#' | 
				
			|||
## Setting session value of variable to 26. No warning should appear here ##  | 
				
			|||
## because the value after concatination is less than 30 ##  | 
				
			|||
SET @@session.group_concat_max_len = 26; | 
				
			|||
## Verifying value of name column, it should not give warning now ##  | 
				
			|||
SELECT id, rollno, group_concat(name) FROM t1 GROUP BY rollno; | 
				
			|||
id	rollno	group_concat(name) | 
				
			|||
1	1	Record_1,Record_3,Record_5 | 
				
			|||
2	2	Record_2 | 
				
			|||
4	3	Record_4,Record_6 | 
				
			|||
7	4	Record_7,Record_8 | 
				
			|||
## Dropping table t1 ## | 
				
			|||
DROP table t1; | 
				
			|||
## Disconnecting both the connection ## | 
				
			|||
SET @@group_concat_max_len = @save; | 
				
			|||
@ -0,0 +1,131 @@ | 
				
			|||
############## mysql-test\t\group_concat_max_len_func.test #################### | 
				
			|||
#                                                                             # | 
				
			|||
# Variable Name: group_concat_max_len                                         # | 
				
			|||
# Scope: GLOBAL | SESSION                                                     # | 
				
			|||
# Access Type: Dynamic                                                        # | 
				
			|||
# Data Type: numeric                                                          # | 
				
			|||
# Default Value: 1024                                                         # | 
				
			|||
# Minimum value:  4                                                           # | 
				
			|||
#                                                                             # | 
				
			|||
#                                                                             # | 
				
			|||
# Creation Date: 2008-03-07                                                   # | 
				
			|||
# Author:  Salman Rawala                                                      # | 
				
			|||
#                                                                             # | 
				
			|||
# Description: Test Cases of Dynamic System Variable group_concat_max_len     # | 
				
			|||
#              that checks the functionality of this variable                 # | 
				
			|||
#                                                                             # | 
				
			|||
# Reference: http://dev.mysql.com/doc/refman/5.1/en/                          # | 
				
			|||
#  server-system-variables.html                                               # | 
				
			|||
#                                                                             # | 
				
			|||
############################################################################### | 
				
			|||
 | 
				
			|||
SET @save = @@global.group_concat_max_len; | 
				
			|||
 | 
				
			|||
--disable_warnings | 
				
			|||
drop table if exists t1; | 
				
			|||
--enable_warnings | 
				
			|||
 | 
				
			|||
######################### | 
				
			|||
#   Creating new table  # | 
				
			|||
######################### | 
				
			|||
 | 
				
			|||
--echo ## Creating new table t1 ## | 
				
			|||
CREATE TABLE t1 | 
				
			|||
( | 
				
			|||
id INT NOT NULL auto_increment, | 
				
			|||
PRIMARY KEY (id), | 
				
			|||
rollno int NOT NULL, | 
				
			|||
name VARCHAR(30) | 
				
			|||
); | 
				
			|||
 | 
				
			|||
--echo '#--------------------FN_DYNVARS_034_01-------------------------#' | 
				
			|||
######################################################################## | 
				
			|||
#    Setting initial value of group_concat_max_len, inserting some rows | 
				
			|||
#    & creating 2 new connections  | 
				
			|||
######################################################################## | 
				
			|||
 | 
				
			|||
--echo ## Setting initial value of variable to 4 ##  | 
				
			|||
SET @@global.group_concat_max_len = 4; | 
				
			|||
 | 
				
			|||
--echo ## Inserting some rows in table ##  | 
				
			|||
INSERT into t1(rollno, name) values(1, 'Record_1');	 | 
				
			|||
INSERT into t1(rollno, name) values(2, 'Record_2'); | 
				
			|||
INSERT into t1(rollno, name) values(1, 'Record_3');	 | 
				
			|||
INSERT into t1(rollno, name) values(3, 'Record_4'); | 
				
			|||
INSERT into t1(rollno, name) values(1, 'Record_5');	 | 
				
			|||
INSERT into t1(rollno, name) values(3, 'Record_6'); | 
				
			|||
INSERT into t1(rollno, name) values(4, 'Record_7');	 | 
				
			|||
INSERT into t1(rollno, name) values(4, 'Record_8'); | 
				
			|||
 | 
				
			|||
--echo ## Creating two new connections ##  | 
				
			|||
CONNECT (test_con1,localhost,root,,); | 
				
			|||
CONNECT (test_con2,localhost,root,,); | 
				
			|||
 | 
				
			|||
 | 
				
			|||
--echo '#--------------------FN_DYNVARS_034_02-------------------------#' | 
				
			|||
############################################################################### | 
				
			|||
# Verifying initial behavior of variable by concatinating values greater than 4 | 
				
			|||
############################################################################### | 
				
			|||
 | 
				
			|||
--echo ## Connecting with test_con1 ## | 
				
			|||
CONNECTION test_con1; | 
				
			|||
 | 
				
			|||
--echo ## Accessing data and using group_concat on column whose value is greater than 4 ##  | 
				
			|||
SELECT id, rollno, group_concat(name) FROM t1 GROUP BY rollno; | 
				
			|||
 | 
				
			|||
--echo ## Changing session value of variable and verifying its behavior, ## | 
				
			|||
--echo ## warning should come here ##  | 
				
			|||
 | 
				
			|||
SET @@session.group_concat_max_len = 10; | 
				
			|||
SELECT id, rollno, group_concat(name) FROM t1 GROUP BY rollno; | 
				
			|||
 | 
				
			|||
 | 
				
			|||
--echo '#--------------------FN_DYNVARS_034_03-------------------------#' | 
				
			|||
############################################################################## | 
				
			|||
#    Verifying behavior of variable by increasing session value of variable  # | 
				
			|||
############################################################################## | 
				
			|||
 | 
				
			|||
--echo ## Connecting with new connection test_con2 ##  | 
				
			|||
connection test_con2; | 
				
			|||
 | 
				
			|||
--echo ## Verifying initial value of variable. It should be 4 ##  | 
				
			|||
SELECT @@session.group_concat_max_len = 4; | 
				
			|||
 | 
				
			|||
--echo ## Setting session value of variable to 20 and verifying variable is concating ##  | 
				
			|||
--echo ## column's value to 20 or not ##  | 
				
			|||
SET @@session.group_concat_max_len = 20; | 
				
			|||
 | 
				
			|||
--echo ## Verifying value of name column, it should not me more than 20 characters ## | 
				
			|||
--echo ## Warning should come here ## | 
				
			|||
SELECT id, rollno, group_concat(name) FROM t1 GROUP BY rollno; | 
				
			|||
 | 
				
			|||
 | 
				
			|||
--echo '#--------------------FN_DYNVARS_034_04-------------------------#' | 
				
			|||
############################################################################### | 
				
			|||
#    Verifying behavior of variable by increasing session value of variable   # | 
				
			|||
#    greater than the maximum concat length of name column                    # | 
				
			|||
############################################################################### | 
				
			|||
 | 
				
			|||
--echo ## Setting session value of variable to 26. No warning should appear here ##  | 
				
			|||
--echo ## because the value after concatination is less than 30 ##  | 
				
			|||
SET @@session.group_concat_max_len = 26; | 
				
			|||
 | 
				
			|||
--echo ## Verifying value of name column, it should not give warning now ##  | 
				
			|||
SELECT id, rollno, group_concat(name) FROM t1 GROUP BY rollno; | 
				
			|||
 | 
				
			|||
 | 
				
			|||
############################################################ | 
				
			|||
#    Disconnecting all connection & dropping table         # | 
				
			|||
############################################################ | 
				
			|||
 | 
				
			|||
--echo ## Dropping table t1 ## | 
				
			|||
DROP table t1; | 
				
			|||
 | 
				
			|||
--echo ## Disconnecting both the connection ## | 
				
			|||
DISCONNECT test_con2; | 
				
			|||
DISCONNECT test_con1; | 
				
			|||
 | 
				
			|||
connection default; | 
				
			|||
 | 
				
			|||
SET @@group_concat_max_len = @save; | 
				
			|||
 | 
				
			|||
@ -0,0 +1,95 @@ | 
				
			|||
################## mysql-test\t\max_allowed_packet_func.test ################## | 
				
			|||
#                                                                             # | 
				
			|||
# Variable Name: max_allowed_packet                                           # | 
				
			|||
# Scope: GLOBAL | SESSION                                                     # | 
				
			|||
# Access Type: Dynamic                                                        # | 
				
			|||
# Data Type: numeric                                                          # | 
				
			|||
# Default Value:1048576                                                       # | 
				
			|||
# Range:1024-1073741824                                                       # | 
				
			|||
#                                                                             # | 
				
			|||
#                                                                             # | 
				
			|||
# Creation Date: 2008-03-07                                                   # | 
				
			|||
# Author:  Salman Rawala                                                      # | 
				
			|||
#                                                                             # | 
				
			|||
# Description: Test Cases of Dynamic System Variable max_allowed_packet       # | 
				
			|||
#              that checks the functionality of this variable                 # | 
				
			|||
#                                                                             # | 
				
			|||
# Reference: http://dev.mysql.com/doc/refman/5.1/en/                          # | 
				
			|||
#  server-system-variables.html                                               # | 
				
			|||
#                                                                             # | 
				
			|||
############################################################################### | 
				
			|||
 | 
				
			|||
#due to lost connection on win64 | 
				
			|||
--source include/not_windows.inc | 
				
			|||
 | 
				
			|||
let $start_global_value = `SELECT @@global.max_allowed_packet`; | 
				
			|||
--echo $start_global_value | 
				
			|||
 | 
				
			|||
--disable_warnings | 
				
			|||
drop table if exists t1; | 
				
			|||
--enable_warnings | 
				
			|||
 | 
				
			|||
######################### | 
				
			|||
#   Creating new table  # | 
				
			|||
######################### | 
				
			|||
 | 
				
			|||
--echo ## Creating new table t1 ## | 
				
			|||
CREATE TABLE t1 | 
				
			|||
( | 
				
			|||
id INT NOT NULL auto_increment, | 
				
			|||
PRIMARY KEY (id), | 
				
			|||
name BLOB | 
				
			|||
); | 
				
			|||
 | 
				
			|||
--echo '#--------------------FN_DYNVARS_070_01-------------------------#' | 
				
			|||
############################################################################### | 
				
			|||
#    Setting initial value of max_allowed_packet to 1024 at session level and | 
				
			|||
#    verifying its behavior after inserting data greater than 1024 bytes      | 
				
			|||
############################################################################### | 
				
			|||
 | 
				
			|||
--echo ## Setting value of max_allowed packet and net_buffer_length to 1024 ##  | 
				
			|||
SET @@session.max_allowed_packet = 1024; | 
				
			|||
SET @@session.net_buffer_length = 1024; | 
				
			|||
SELECT @@session.max_allowed_packet; | 
				
			|||
SELECT @@session.net_buffer_length; | 
				
			|||
 | 
				
			|||
--echo ## Inserting and fetching data of length greater than 1024 ## | 
				
			|||
INSERT into t1(name) values("aaassssssssddddddddffffffgggggggg, askdlfjalsdkjfalksdjflaksdjfalkjdflaksjdflakjdflajsflajflajdfalsjfdlajfladjslfajdflajdsflajsflakjsdfla;kjflsdjkf;aljfa;lkdsfjla;sjlkajffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllakjsdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa;;;;;;;;;;;;;;;;;;;;;;;;;;;dsklfjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjkljffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdkskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk"); | 
				
			|||
 | 
				
			|||
SELECT length("aaaaaasssssssssssdddddddfffffgggg, askdlfjalsdkjfalksdjflaksdjfalkjdflaksjdflakjdflajsflajflajdfalsjfdlajfladjslfajdflajdsflajsflakjsdfla;kjflsdjkf;aljfa;lkdsfjla;sjlkajffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllakjsdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa;;;;;;;;;;;;;;;;;;;;;;;;;;;dsklfjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjkljffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdkskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk") as len; | 
				
			|||
 | 
				
			|||
--echo ## Verifying record in table t1 ## | 
				
			|||
SELECT * from t1; | 
				
			|||
 | 
				
			|||
--echo 'Bug#35381: Error is not coming on inserting and fetching data of length' | 
				
			|||
--echo 'greater than max_allowed_packet size at session level'; | 
				
			|||
 | 
				
			|||
--echo '#--------------------FN_DYNVARS_070_02-------------------------#' | 
				
			|||
############################################################################### | 
				
			|||
#    Setting value of max_allowed_packet to 1024 at global level and | 
				
			|||
#    verifying its behavior after inserting data greater than 1024 bytes      | 
				
			|||
############################################################################### | 
				
			|||
 | 
				
			|||
--echo ## Setting value of max_allowed packet and net_buffer_length to 1024 ##  | 
				
			|||
SET @@global.max_allowed_packet = 1024; | 
				
			|||
SET @@global.net_buffer_length = 1024; | 
				
			|||
SELECT @@global.max_allowed_packet; | 
				
			|||
SELECT @@global.net_buffer_length; | 
				
			|||
 | 
				
			|||
--echo ## Creating new connection test_con1 ## | 
				
			|||
connect (test_con1,localhost,root,,); | 
				
			|||
connection test_con1; | 
				
			|||
 | 
				
			|||
--echo ## Inserting and fetching data of length greater than 1024 ##  | 
				
			|||
--Error 0,ER_NET_PACKET_TOO_LARGE | 
				
			|||
INSERT into t1(name) values("aaassssssssddddddddffffffgggggggg, askdlfjalsdkjfalksdjflaksdjfalkjdflaksjdflakjdflajsflajflajdfalsjfdlajfladjslfajdflajdsflajsflakjsdfla;kjflsdjkf;aljfa;lkdsfjla;sjlkajffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllakjsdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa;;;;;;;;;;;;;;;;;;;;;;;;;;;dsklfjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjkljffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdkskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk"); | 
				
			|||
 | 
				
			|||
disconnect test_con1; | 
				
			|||
connection default; | 
				
			|||
drop table t1; | 
				
			|||
eval SET @@global.max_allowed_packet = $start_global_value; | 
				
			|||
 | 
				
			|||
--echo ## Server disconnects after this case and error occurs that Server ## | 
				
			|||
--echo ## has gone away ## | 
				
			|||
 | 
				
			|||
 | 
				
			|||
						Write
						Preview
					
					
					Loading…
					
					Cancel
						Save
					
		Reference in new issue