mirror of
https://github.com/MariaDB/server.git
synced 2025-08-01 03:47:19 +03:00
Due to merges.
This commit is contained in:
@ -2407,4 +2407,13 @@ int i_am_a_dummy_function() {
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef __WIN__
|
||||||
|
char _db_doprnt_;
|
||||||
|
char _db_enter_;
|
||||||
|
char _db_pargs_;
|
||||||
|
char _db_process_;
|
||||||
|
char _db_push_;
|
||||||
|
char _db_return_;
|
||||||
|
#endif /*__WIN__*/
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -265,7 +265,7 @@ int CertManager::Validate()
|
|||||||
TaoCrypt::CertDecoder cert(source, true, &signers_, verifyNone_);
|
TaoCrypt::CertDecoder cert(source, true, &signers_, verifyNone_);
|
||||||
|
|
||||||
int err = cert.GetError().What();
|
int err = cert.GetError().What();
|
||||||
if ( err && err != TaoCrypt::SIG_OTHER_E)
|
if ( err )
|
||||||
return err;
|
return err;
|
||||||
|
|
||||||
uint sz = cert.GetPublicKey().size();
|
uint sz = cert.GetPublicKey().size();
|
||||||
|
@ -108,6 +108,22 @@ extern FILE *_db_fp_(void);
|
|||||||
#define DBUG_EXPLAIN(buf,len)
|
#define DBUG_EXPLAIN(buf,len)
|
||||||
#define DBUG_EXPLAIN_INITIAL(buf,len)
|
#define DBUG_EXPLAIN_INITIAL(buf,len)
|
||||||
#define IF_DBUG(A)
|
#define IF_DBUG(A)
|
||||||
|
|
||||||
|
#ifdef __WIN__
|
||||||
|
/*
|
||||||
|
On windows all the dll export has to be declared in the *.def file
|
||||||
|
so as we export these symbols in DEBUG mode we have to export
|
||||||
|
these in the RELEASE mode also. So below are the dummy symbols
|
||||||
|
for the RELEASE export
|
||||||
|
*/
|
||||||
|
extern char _db_doprnt_;
|
||||||
|
extern char _db_enter_;
|
||||||
|
extern char _db_pargs_;
|
||||||
|
extern char _db_process_;
|
||||||
|
extern char _db_push_;
|
||||||
|
extern char _db_return_;
|
||||||
|
#endif /*__WIN__*/
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
|
@ -18,11 +18,6 @@
|
|||||||
#ifndef _global_h
|
#ifndef _global_h
|
||||||
#define _global_h
|
#define _global_h
|
||||||
|
|
||||||
#ifndef EMBEDDED_LIBRARY
|
|
||||||
#define HAVE_REPLICATION
|
|
||||||
#define HAVE_EXTERNAL_CLIENT
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
InnoDB depends on some MySQL internals which other plugins should not
|
InnoDB depends on some MySQL internals which other plugins should not
|
||||||
need. This is because of InnoDB's foreign key support, "safe" binlog
|
need. This is because of InnoDB's foreign key support, "safe" binlog
|
||||||
@ -101,6 +96,11 @@
|
|||||||
#endif
|
#endif
|
||||||
#endif /* !EMBEDDED_LIBRARY */
|
#endif /* !EMBEDDED_LIBRARY */
|
||||||
|
|
||||||
|
#ifndef EMBEDDED_LIBRARY
|
||||||
|
#define HAVE_REPLICATION
|
||||||
|
#define HAVE_EXTERNAL_CLIENT
|
||||||
|
#endif
|
||||||
|
|
||||||
/* Some defines to avoid ifdefs in the code */
|
/* Some defines to avoid ifdefs in the code */
|
||||||
#ifndef NETWARE_YIELD
|
#ifndef NETWARE_YIELD
|
||||||
#define NETWARE_YIELD
|
#define NETWARE_YIELD
|
||||||
|
@ -29,13 +29,13 @@ ADD_DEFINITIONS(-DEMBEDDED_LIBRARY)
|
|||||||
ADD_EXECUTABLE(mysql_embedded ../../client/completion_hash.cc
|
ADD_EXECUTABLE(mysql_embedded ../../client/completion_hash.cc
|
||||||
../../client/mysql.cc ../../client/readline.cc
|
../../client/mysql.cc ../../client/readline.cc
|
||||||
../../client/sql_string.cc)
|
../../client/sql_string.cc)
|
||||||
TARGET_LINK_LIBRARIES(mysql_embedded mysys yassl taocrypt zlib debug dbug regex strings wsock32)
|
TARGET_LINK_LIBRARIES(mysql_embedded wsock32)
|
||||||
ADD_DEPENDENCIES(mysql_embedded libmysqld)
|
ADD_DEPENDENCIES(mysql_embedded libmysqld)
|
||||||
|
|
||||||
ADD_EXECUTABLE(mysqltest_embedded ../../client/mysqltest.c)
|
ADD_EXECUTABLE(mysqltest_embedded ../../client/mysqltest.c)
|
||||||
TARGET_LINK_LIBRARIES(mysqltest_embedded mysys yassl taocrypt zlib debug dbug regex strings wsock32)
|
TARGET_LINK_LIBRARIES(mysqltest_embedded wsock32)
|
||||||
ADD_DEPENDENCIES(mysqltest_embedded libmysqld)
|
ADD_DEPENDENCIES(mysqltest_embedded libmysqld)
|
||||||
|
|
||||||
ADD_EXECUTABLE(mysql_client_test_embedded ../../tests/mysql_client_test.c)
|
ADD_EXECUTABLE(mysql_client_test_embedded ../../tests/mysql_client_test.c)
|
||||||
TARGET_LINK_LIBRARIES(mysql_client_test_embedded debug dbug mysys yassl taocrypt zlib strings wsock32)
|
TARGET_LINK_LIBRARIES(mysql_client_test_embedded wsock32)
|
||||||
ADD_DEPENDENCIES(mysql_client_test_embedded libmysqld)
|
ADD_DEPENDENCIES(mysql_client_test_embedded libmysqld)
|
||||||
|
@ -2,6 +2,66 @@ LIBRARY LIBMYSQLD
|
|||||||
DESCRIPTION 'MySQL 5.1 Embedded Server Library'
|
DESCRIPTION 'MySQL 5.1 Embedded Server Library'
|
||||||
VERSION 5.1
|
VERSION 5.1
|
||||||
EXPORTS
|
EXPORTS
|
||||||
|
_db_process_
|
||||||
|
_db_enter_
|
||||||
|
_db_return_
|
||||||
|
_db_push_
|
||||||
|
_db_doprnt_
|
||||||
|
_db_pargs_
|
||||||
|
strnmov
|
||||||
|
get_charset
|
||||||
|
my_memmem
|
||||||
|
my_snprintf
|
||||||
|
pthread_exit
|
||||||
|
pthread_cond_signal
|
||||||
|
dynstr_append_mem
|
||||||
|
init_dynamic_string
|
||||||
|
dynstr_free
|
||||||
|
my_hash_free
|
||||||
|
my_vsnprintf
|
||||||
|
dynstr_append
|
||||||
|
my_close
|
||||||
|
my_open
|
||||||
|
dynstr_set
|
||||||
|
dynstr_append_os_quoted
|
||||||
|
my_delete
|
||||||
|
my_seek
|
||||||
|
my_write
|
||||||
|
create_temp_file
|
||||||
|
fn_format
|
||||||
|
dirname_part
|
||||||
|
my_hash_insert
|
||||||
|
my_hash_search
|
||||||
|
test_if_hard_path
|
||||||
|
my_copy
|
||||||
|
my_mkdir
|
||||||
|
my_sleep
|
||||||
|
my_strtod
|
||||||
|
pthread_cond_wait
|
||||||
|
my_strnncoll_simple
|
||||||
|
get_dynamic
|
||||||
|
my_regerror
|
||||||
|
init_dynamic_array2
|
||||||
|
pthread_create
|
||||||
|
pthread_cond_init
|
||||||
|
my_regcomp
|
||||||
|
my_regexec
|
||||||
|
my_regex_end
|
||||||
|
my_regfree
|
||||||
|
longlong2str
|
||||||
|
my_set_exception_pointers
|
||||||
|
my_print_stacktrace
|
||||||
|
my_thread_stack_size
|
||||||
|
my_safe_print_str
|
||||||
|
my_stat
|
||||||
|
_my_hash_init
|
||||||
|
pthread_attr_setstacksize
|
||||||
|
pthread_attr_init
|
||||||
|
my_dirend
|
||||||
|
wild_compare
|
||||||
|
my_dir
|
||||||
|
my_micro_time
|
||||||
|
find_type_or_exit
|
||||||
_dig_vec_upper
|
_dig_vec_upper
|
||||||
_dig_vec_lower
|
_dig_vec_lower
|
||||||
bmove_upp
|
bmove_upp
|
||||||
|
@ -1848,3 +1848,35 @@ select hex(_utf8 B'001111111111');
|
|||||||
ERROR HY000: Invalid utf8 character string: 'FF'
|
ERROR HY000: Invalid utf8 character string: 'FF'
|
||||||
select (_utf8 X'616263FF');
|
select (_utf8 X'616263FF');
|
||||||
ERROR HY000: Invalid utf8 character string: 'FF'
|
ERROR HY000: Invalid utf8 character string: 'FF'
|
||||||
|
CREATE TABLE t1 (a INT NOT NULL, b INT NOT NULL);
|
||||||
|
INSERT INTO t1 VALUES (70000, 1092), (70001, 1085), (70002, 1065);
|
||||||
|
SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1 GROUP BY b;
|
||||||
|
CONVERT(a, CHAR) CONVERT(b, CHAR)
|
||||||
|
70002 1065
|
||||||
|
70001 1085
|
||||||
|
70000 1092
|
||||||
|
SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1;
|
||||||
|
CONVERT(a, CHAR) CONVERT(b, CHAR)
|
||||||
|
70000 1092
|
||||||
|
70001 1085
|
||||||
|
70002 1065
|
||||||
|
ALTER TABLE t1 ADD UNIQUE (b);
|
||||||
|
SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1 GROUP BY b;
|
||||||
|
CONVERT(a, CHAR) CONVERT(b, CHAR)
|
||||||
|
70002 1065
|
||||||
|
70001 1085
|
||||||
|
70000 1092
|
||||||
|
DROP INDEX b ON t1;
|
||||||
|
SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1 GROUP BY b;
|
||||||
|
CONVERT(a, CHAR) CONVERT(b, CHAR)
|
||||||
|
70002 1065
|
||||||
|
70001 1085
|
||||||
|
70000 1092
|
||||||
|
ALTER TABLE t1 ADD INDEX (b);
|
||||||
|
SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) from t1 GROUP BY b;
|
||||||
|
CONVERT(a, CHAR) CONVERT(b, CHAR)
|
||||||
|
70002 1065
|
||||||
|
70001 1085
|
||||||
|
70000 1092
|
||||||
|
DROP TABLE t1;
|
||||||
|
End of 5.0 tests
|
||||||
|
@ -68,7 +68,7 @@ Warnings:
|
|||||||
Error 1259 ZLIB: Input data corrupted
|
Error 1259 ZLIB: Input data corrupted
|
||||||
Error 1256 Uncompressed data size too large; the maximum size is 1048576 (probably, length of uncompressed data was corrupted)
|
Error 1256 Uncompressed data size too large; the maximum size is 1048576 (probably, length of uncompressed data was corrupted)
|
||||||
drop table t1;
|
drop table t1;
|
||||||
set @@max_allowed_packet=1048576*100;
|
set @@global.max_allowed_packet=1048576*100;
|
||||||
select compress(repeat('aaaaaaaaaa', IF(XXX, 10, 10000000))) is null;
|
select compress(repeat('aaaaaaaaaa', IF(XXX, 10, 10000000))) is null;
|
||||||
compress(repeat('aaaaaaaaaa', IF(XXX, 10, 10000000))) is null
|
compress(repeat('aaaaaaaaaa', IF(XXX, 10, 10000000))) is null
|
||||||
0
|
0
|
||||||
|
@ -2,10 +2,7 @@ SET @start_global_value = @@global.max_allowed_packet;
|
|||||||
SELECT @start_global_value;
|
SELECT @start_global_value;
|
||||||
@start_global_value
|
@start_global_value
|
||||||
1048576
|
1048576
|
||||||
SET @start_session_value = @@session.max_allowed_packet;
|
SET @@global.max_allowed_packet = DEFAULT;
|
||||||
SELECT @start_session_value;
|
|
||||||
@start_session_value
|
|
||||||
1048576
|
|
||||||
'#--------------------FN_DYNVARS_070_01-------------------------#'
|
'#--------------------FN_DYNVARS_070_01-------------------------#'
|
||||||
SET @@global.max_allowed_packet = 1000;
|
SET @@global.max_allowed_packet = 1000;
|
||||||
Warnings:
|
Warnings:
|
||||||
@ -15,7 +12,9 @@ SELECT @@global.max_allowed_packet;
|
|||||||
@@global.max_allowed_packet
|
@@global.max_allowed_packet
|
||||||
1048576
|
1048576
|
||||||
SET @@session.max_allowed_packet = 20000;
|
SET @@session.max_allowed_packet = 20000;
|
||||||
|
ERROR HY000: SESSION variable 'max_allowed_packet' is read-only. Use SET GLOBAL to assign the value
|
||||||
SET @@session.max_allowed_packet = DEFAULT;
|
SET @@session.max_allowed_packet = DEFAULT;
|
||||||
|
ERROR 42000: Variable 'max_allowed_packet' doesn't have a default value
|
||||||
SELECT @@session.max_allowed_packet;
|
SELECT @@session.max_allowed_packet;
|
||||||
@@session.max_allowed_packet
|
@@session.max_allowed_packet
|
||||||
1048576
|
1048576
|
||||||
@ -24,10 +23,6 @@ SET @@global.max_allowed_packet = DEFAULT;
|
|||||||
SELECT @@global.max_allowed_packet = 1048576;
|
SELECT @@global.max_allowed_packet = 1048576;
|
||||||
@@global.max_allowed_packet = 1048576
|
@@global.max_allowed_packet = 1048576
|
||||||
1
|
1
|
||||||
SET @@session.max_allowed_packet = DEFAULT;
|
|
||||||
SELECT @@session.max_allowed_packet = 1048576;
|
|
||||||
@@session.max_allowed_packet = 1048576
|
|
||||||
1
|
|
||||||
'#--------------------FN_DYNVARS_070_03-------------------------#'
|
'#--------------------FN_DYNVARS_070_03-------------------------#'
|
||||||
SET @@global.max_allowed_packet = 1024;
|
SET @@global.max_allowed_packet = 1024;
|
||||||
SELECT @@global.max_allowed_packet;
|
SELECT @@global.max_allowed_packet;
|
||||||
@ -48,25 +43,30 @@ SELECT @@global.max_allowed_packet;
|
|||||||
1073740800
|
1073740800
|
||||||
'#--------------------FN_DYNVARS_070_04-------------------------#'
|
'#--------------------FN_DYNVARS_070_04-------------------------#'
|
||||||
SET @@session.max_allowed_packet = 1024;
|
SET @@session.max_allowed_packet = 1024;
|
||||||
|
ERROR HY000: SESSION variable 'max_allowed_packet' is read-only. Use SET GLOBAL to assign the value
|
||||||
SELECT @@session.max_allowed_packet;
|
SELECT @@session.max_allowed_packet;
|
||||||
@@session.max_allowed_packet
|
@@session.max_allowed_packet
|
||||||
1024
|
1048576
|
||||||
SET @@session.max_allowed_packet = 1025;
|
SET @@session.max_allowed_packet = 1025;
|
||||||
|
ERROR HY000: SESSION variable 'max_allowed_packet' is read-only. Use SET GLOBAL to assign the value
|
||||||
SELECT @@session.max_allowed_packet;
|
SELECT @@session.max_allowed_packet;
|
||||||
@@session.max_allowed_packet
|
@@session.max_allowed_packet
|
||||||
1024
|
1048576
|
||||||
SET @@session.max_allowed_packet = 65535;
|
SET @@session.max_allowed_packet = 65535;
|
||||||
|
ERROR HY000: SESSION variable 'max_allowed_packet' is read-only. Use SET GLOBAL to assign the value
|
||||||
SELECT @@session.max_allowed_packet;
|
SELECT @@session.max_allowed_packet;
|
||||||
@@session.max_allowed_packet
|
@@session.max_allowed_packet
|
||||||
64512
|
1048576
|
||||||
SET @@session.max_allowed_packet = 1073741824;
|
SET @@session.max_allowed_packet = 1073741824;
|
||||||
|
ERROR HY000: SESSION variable 'max_allowed_packet' is read-only. Use SET GLOBAL to assign the value
|
||||||
SELECT @@session.max_allowed_packet;
|
SELECT @@session.max_allowed_packet;
|
||||||
@@session.max_allowed_packet
|
@@session.max_allowed_packet
|
||||||
1073741824
|
1048576
|
||||||
SET @@session.max_allowed_packet = 1073741823;
|
SET @@session.max_allowed_packet = 1073741823;
|
||||||
|
ERROR HY000: SESSION variable 'max_allowed_packet' is read-only. Use SET GLOBAL to assign the value
|
||||||
SELECT @@session.max_allowed_packet;
|
SELECT @@session.max_allowed_packet;
|
||||||
@@session.max_allowed_packet
|
@@session.max_allowed_packet
|
||||||
1073740800
|
1048576
|
||||||
'#------------------FN_DYNVARS_070_05-----------------------#'
|
'#------------------FN_DYNVARS_070_05-----------------------#'
|
||||||
SET @@global.max_allowed_packet = 0;
|
SET @@global.max_allowed_packet = 0;
|
||||||
Warnings:
|
Warnings:
|
||||||
@ -103,37 +103,33 @@ SELECT @@global.max_allowed_packet;
|
|||||||
@@global.max_allowed_packet
|
@@global.max_allowed_packet
|
||||||
1073741824
|
1073741824
|
||||||
SET @@session.max_allowed_packet = 0;
|
SET @@session.max_allowed_packet = 0;
|
||||||
Warnings:
|
ERROR HY000: SESSION variable 'max_allowed_packet' is read-only. Use SET GLOBAL to assign the value
|
||||||
Warning 1292 Truncated incorrect max_allowed_packet value: '0'
|
|
||||||
SELECT @@session.max_allowed_packet;
|
SELECT @@session.max_allowed_packet;
|
||||||
@@session.max_allowed_packet
|
@@session.max_allowed_packet
|
||||||
1024
|
1048576
|
||||||
SET @@session.max_allowed_packet = 1023;
|
SET @@session.max_allowed_packet = 1023;
|
||||||
Warnings:
|
ERROR HY000: SESSION variable 'max_allowed_packet' is read-only. Use SET GLOBAL to assign the value
|
||||||
Warning 1292 Truncated incorrect max_allowed_packet value: '1023'
|
|
||||||
SELECT @@session.max_allowed_packet;
|
SELECT @@session.max_allowed_packet;
|
||||||
@@session.max_allowed_packet
|
@@session.max_allowed_packet
|
||||||
1024
|
1048576
|
||||||
SET @@session.max_allowed_packet = -2;
|
SET @@session.max_allowed_packet = -2;
|
||||||
Warnings:
|
ERROR HY000: SESSION variable 'max_allowed_packet' is read-only. Use SET GLOBAL to assign the value
|
||||||
Warning 1292 Truncated incorrect max_allowed_packet value: '0'
|
|
||||||
SELECT @@session.max_allowed_packet;
|
SELECT @@session.max_allowed_packet;
|
||||||
@@session.max_allowed_packet
|
@@session.max_allowed_packet
|
||||||
1024
|
1048576
|
||||||
SET @@session.max_allowed_packet = 65530.34.;
|
SET @@session.max_allowed_packet = 65530.34.;
|
||||||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '.' at line 1
|
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '.' at line 1
|
||||||
SET @@session.max_allowed_packet = 10737418241;
|
SET @@session.max_allowed_packet = 10737418241;
|
||||||
Warnings:
|
ERROR HY000: SESSION variable 'max_allowed_packet' is read-only. Use SET GLOBAL to assign the value
|
||||||
Warning 1292 Truncated incorrect max_allowed_packet value: '10737418241'
|
|
||||||
SELECT @@session.max_allowed_packet;
|
SELECT @@session.max_allowed_packet;
|
||||||
@@session.max_allowed_packet
|
@@session.max_allowed_packet
|
||||||
1073741824
|
1048576
|
||||||
'Bug # 34837: Errors are not coming on assigning invalid values to variable';
|
'Bug # 34837: Errors are not coming on assigning invalid values to variable';
|
||||||
SET @@session.max_allowed_packet = test;
|
SET @@session.max_allowed_packet = test;
|
||||||
ERROR 42000: Incorrect argument type to variable 'max_allowed_packet'
|
ERROR 42000: Incorrect argument type to variable 'max_allowed_packet'
|
||||||
SELECT @@session.max_allowed_packet;
|
SELECT @@session.max_allowed_packet;
|
||||||
@@session.max_allowed_packet
|
@@session.max_allowed_packet
|
||||||
1073741824
|
1048576
|
||||||
'#------------------FN_DYNVARS_070_06-----------------------#'
|
'#------------------FN_DYNVARS_070_06-----------------------#'
|
||||||
SELECT @@global.max_allowed_packet = VARIABLE_VALUE
|
SELECT @@global.max_allowed_packet = VARIABLE_VALUE
|
||||||
FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
|
FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
|
||||||
@ -166,6 +162,7 @@ SELECT @@max_allowed_packet = @@global.max_allowed_packet;
|
|||||||
0
|
0
|
||||||
'#---------------------FN_DYNVARS_070_10----------------------#'
|
'#---------------------FN_DYNVARS_070_10----------------------#'
|
||||||
SET @@max_allowed_packet = 100000;
|
SET @@max_allowed_packet = 100000;
|
||||||
|
ERROR HY000: SESSION variable 'max_allowed_packet' is read-only. Use SET GLOBAL to assign the value
|
||||||
SELECT @@max_allowed_packet = @@local.max_allowed_packet;
|
SELECT @@max_allowed_packet = @@local.max_allowed_packet;
|
||||||
@@max_allowed_packet = @@local.max_allowed_packet
|
@@max_allowed_packet = @@local.max_allowed_packet
|
||||||
1
|
1
|
||||||
@ -174,9 +171,10 @@ SELECT @@local.max_allowed_packet = @@session.max_allowed_packet;
|
|||||||
1
|
1
|
||||||
'#---------------------FN_DYNVARS_070_11----------------------#'
|
'#---------------------FN_DYNVARS_070_11----------------------#'
|
||||||
SET max_allowed_packet = 1024;
|
SET max_allowed_packet = 1024;
|
||||||
|
ERROR HY000: SESSION variable 'max_allowed_packet' is read-only. Use SET GLOBAL to assign the value
|
||||||
SELECT @@max_allowed_packet;
|
SELECT @@max_allowed_packet;
|
||||||
@@max_allowed_packet
|
@@max_allowed_packet
|
||||||
1024
|
1048576
|
||||||
SELECT local.max_allowed_packet;
|
SELECT local.max_allowed_packet;
|
||||||
ERROR 42S02: Unknown table 'local' in field list
|
ERROR 42S02: Unknown table 'local' in field list
|
||||||
SELECT session.max_allowed_packet;
|
SELECT session.max_allowed_packet;
|
||||||
@ -187,7 +185,6 @@ SET @@global.max_allowed_packet = @start_global_value;
|
|||||||
SELECT @@global.max_allowed_packet;
|
SELECT @@global.max_allowed_packet;
|
||||||
@@global.max_allowed_packet
|
@@global.max_allowed_packet
|
||||||
1048576
|
1048576
|
||||||
SET @@session.max_allowed_packet = @start_session_value;
|
|
||||||
SELECT @@session.max_allowed_packet;
|
SELECT @@session.max_allowed_packet;
|
||||||
@@session.max_allowed_packet
|
@@session.max_allowed_packet
|
||||||
1048576
|
1048576
|
||||||
|
@ -10,24 +10,15 @@ name BLOB
|
|||||||
'#--------------------FN_DYNVARS_070_01-------------------------#'
|
'#--------------------FN_DYNVARS_070_01-------------------------#'
|
||||||
## Setting value of max_allowed packet and net_buffer_length to 1024 ##
|
## Setting value of max_allowed packet and net_buffer_length to 1024 ##
|
||||||
SET @@session.max_allowed_packet = 1024;
|
SET @@session.max_allowed_packet = 1024;
|
||||||
SET @@session.net_buffer_length = 1024;
|
ERROR HY000: SESSION variable 'max_allowed_packet' is read-only. Use SET GLOBAL to assign the value
|
||||||
SELECT @@session.max_allowed_packet;
|
SELECT @@session.max_allowed_packet;
|
||||||
@@session.max_allowed_packet
|
@@session.max_allowed_packet
|
||||||
1024
|
1048576
|
||||||
|
SET @@session.net_buffer_length = 1024;
|
||||||
|
ERROR HY000: SESSION variable 'net_buffer_length' is read-only. Use SET GLOBAL to assign the value
|
||||||
SELECT @@session.net_buffer_length;
|
SELECT @@session.net_buffer_length;
|
||||||
@@session.net_buffer_length
|
@@session.net_buffer_length
|
||||||
1024
|
16384
|
||||||
## 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;
|
|
||||||
len
|
|
||||||
1470
|
|
||||||
## Verifying record in table t1 ##
|
|
||||||
SELECT * from t1;
|
|
||||||
id name
|
|
||||||
1 aaassssssssddddddddffffffgggggggg, askdlfjalsdkjfalksdjflaksdjfalkjdflaksjdflakjdflajsflajflajdfalsjfdlajfladjslfajdflajdsflajsflakjsdfla;kjflsdjkf;aljfa;lkdsfjla;sjlkajffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllakjsdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa;;;;;;;;;;;;;;;;;;;;;;;;;;;dsklfjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjkljffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdkskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
|
|
||||||
'Bug#35381: Error is not coming on inserting and fetching data of length'
|
|
||||||
'greater than max_allowed_packet size at session level';
|
|
||||||
'#--------------------FN_DYNVARS_070_02-------------------------#'
|
'#--------------------FN_DYNVARS_070_02-------------------------#'
|
||||||
## Setting value of max_allowed packet and net_buffer_length to 1024 ##
|
## Setting value of max_allowed packet and net_buffer_length to 1024 ##
|
||||||
SET @@global.max_allowed_packet = 1024;
|
SET @@global.max_allowed_packet = 1024;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
SET @start_global_value = @@global.net_buffer_length;
|
SET @start_global_value = @@global.net_buffer_length;
|
||||||
SET @start_session_value = @@session.net_buffer_length;
|
SET @@global.net_buffer_length = DEFAULT;
|
||||||
'#--------------------FN_DYNVARS_109_01-------------------------#'
|
'#--------------------FN_DYNVARS_109_01-------------------------#'
|
||||||
SET @@global.net_buffer_length = 10000;
|
SET @@global.net_buffer_length = 10000;
|
||||||
SET @@global.net_buffer_length = DEFAULT;
|
SET @@global.net_buffer_length = DEFAULT;
|
||||||
@ -7,7 +7,9 @@ SELECT @@global.net_buffer_length;
|
|||||||
@@global.net_buffer_length
|
@@global.net_buffer_length
|
||||||
16384
|
16384
|
||||||
SET @@session.net_buffer_length = 20000;
|
SET @@session.net_buffer_length = 20000;
|
||||||
|
ERROR HY000: SESSION variable 'net_buffer_length' is read-only. Use SET GLOBAL to assign the value
|
||||||
SET @@session.net_buffer_length = DEFAULT;
|
SET @@session.net_buffer_length = DEFAULT;
|
||||||
|
ERROR 42000: Variable 'net_buffer_length' doesn't have a default value
|
||||||
SELECT @@session.net_buffer_length;
|
SELECT @@session.net_buffer_length;
|
||||||
@@session.net_buffer_length
|
@@session.net_buffer_length
|
||||||
16384
|
16384
|
||||||
@ -16,10 +18,6 @@ SET @@global.net_buffer_length = DEFAULT;
|
|||||||
SELECT @@global.net_buffer_length = 16384;
|
SELECT @@global.net_buffer_length = 16384;
|
||||||
@@global.net_buffer_length = 16384
|
@@global.net_buffer_length = 16384
|
||||||
1
|
1
|
||||||
SET @@session.net_buffer_length = DEFAULT;
|
|
||||||
SELECT @@session.net_buffer_length = 16384;
|
|
||||||
@@session.net_buffer_length = 16384
|
|
||||||
1
|
|
||||||
'#--------------------FN_DYNVARS_109_03-------------------------#'
|
'#--------------------FN_DYNVARS_109_03-------------------------#'
|
||||||
SET @@global.net_buffer_length = 1024;
|
SET @@global.net_buffer_length = 1024;
|
||||||
SELECT @@global.net_buffer_length;
|
SELECT @@global.net_buffer_length;
|
||||||
@ -43,27 +41,6 @@ SELECT @@global.net_buffer_length;
|
|||||||
64512
|
64512
|
||||||
'Bug# 34877: Invalid Values are coming in variable on assigning valid values';
|
'Bug# 34877: Invalid Values are coming in variable on assigning valid values';
|
||||||
'#--------------------FN_DYNVARS_109_04-------------------------#'
|
'#--------------------FN_DYNVARS_109_04-------------------------#'
|
||||||
SET @@session.net_buffer_length = 1024;
|
|
||||||
SELECT @@session.net_buffer_length;
|
|
||||||
@@session.net_buffer_length
|
|
||||||
1024
|
|
||||||
SET @@session.net_buffer_length = 1025;
|
|
||||||
SELECT @@session.net_buffer_length;
|
|
||||||
@@session.net_buffer_length
|
|
||||||
1024
|
|
||||||
SET @@session.net_buffer_length = 1048576;
|
|
||||||
SELECT @@session.net_buffer_length;
|
|
||||||
@@session.net_buffer_length
|
|
||||||
1048576
|
|
||||||
SET @@session.net_buffer_length = 1048575;
|
|
||||||
SELECT @@session.net_buffer_length;
|
|
||||||
@@session.net_buffer_length
|
|
||||||
1047552
|
|
||||||
SET @@session.net_buffer_length = 65535;
|
|
||||||
SELECT @@session.net_buffer_length;
|
|
||||||
@@session.net_buffer_length
|
|
||||||
64512
|
|
||||||
'Bug# 34877: Invalid Values are coming in variable on assigning valid values';
|
|
||||||
'#------------------FN_DYNVARS_109_05-----------------------#'
|
'#------------------FN_DYNVARS_109_05-----------------------#'
|
||||||
SET @@global.net_buffer_length = 0;
|
SET @@global.net_buffer_length = 0;
|
||||||
Warnings:
|
Warnings:
|
||||||
@ -105,42 +82,12 @@ ERROR 42000: Incorrect argument type to variable 'net_buffer_length'
|
|||||||
SELECT @@global.net_buffer_length;
|
SELECT @@global.net_buffer_length;
|
||||||
@@global.net_buffer_length
|
@@global.net_buffer_length
|
||||||
1048576
|
1048576
|
||||||
SET @@session.net_buffer_length = 0;
|
|
||||||
Warnings:
|
|
||||||
Warning 1292 Truncated incorrect net_buffer_length value: '0'
|
|
||||||
SELECT @@session.net_buffer_length;
|
|
||||||
@@session.net_buffer_length
|
|
||||||
1024
|
|
||||||
SET @@session.net_buffer_length = -2;
|
|
||||||
Warnings:
|
|
||||||
Warning 1292 Truncated incorrect net_buffer_length value: '0'
|
|
||||||
SELECT @@session.net_buffer_length;
|
|
||||||
@@session.net_buffer_length
|
|
||||||
1024
|
|
||||||
SET @@session.net_buffer_length = 1048577;
|
|
||||||
Warnings:
|
|
||||||
Warning 1292 Truncated incorrect net_buffer_length value: '1048577'
|
|
||||||
SELECT @@session.net_buffer_length;
|
|
||||||
@@session.net_buffer_length
|
|
||||||
1048576
|
|
||||||
SET @@session.net_buffer_length = 1048576002;
|
|
||||||
Warnings:
|
|
||||||
Warning 1292 Truncated incorrect net_buffer_length value: '1048576002'
|
|
||||||
SELECT @@session.net_buffer_length;
|
|
||||||
@@session.net_buffer_length
|
|
||||||
1048576
|
|
||||||
SET @@session.net_buffer_length = 65530.34.;
|
|
||||||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '.' at line 1
|
|
||||||
SET @@session.net_buffer_length = 65550;
|
|
||||||
SELECT @@session.net_buffer_length;
|
|
||||||
@@session.net_buffer_length
|
|
||||||
65536
|
|
||||||
'Bug # 34837: Errors are not coming on assigning invalid values to variable';
|
'Bug # 34837: Errors are not coming on assigning invalid values to variable';
|
||||||
SET @@session.net_buffer_length = test;
|
SET @@session.net_buffer_length = test;
|
||||||
ERROR 42000: Incorrect argument type to variable 'net_buffer_length'
|
ERROR 42000: Incorrect argument type to variable 'net_buffer_length'
|
||||||
SELECT @@session.net_buffer_length;
|
SELECT @@session.net_buffer_length;
|
||||||
@@session.net_buffer_length
|
@@session.net_buffer_length
|
||||||
65536
|
16384
|
||||||
'#------------------FN_DYNVARS_109_06-----------------------#'
|
'#------------------FN_DYNVARS_109_06-----------------------#'
|
||||||
SELECT @@global.net_buffer_length = VARIABLE_VALUE
|
SELECT @@global.net_buffer_length = VARIABLE_VALUE
|
||||||
FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
|
FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
|
||||||
@ -172,18 +119,10 @@ SELECT @@net_buffer_length = @@global.net_buffer_length;
|
|||||||
@@net_buffer_length = @@global.net_buffer_length
|
@@net_buffer_length = @@global.net_buffer_length
|
||||||
0
|
0
|
||||||
'#---------------------FN_DYNVARS_109_10----------------------#'
|
'#---------------------FN_DYNVARS_109_10----------------------#'
|
||||||
SET @@net_buffer_length = 100000;
|
|
||||||
SELECT @@net_buffer_length = @@local.net_buffer_length;
|
|
||||||
@@net_buffer_length = @@local.net_buffer_length
|
|
||||||
1
|
|
||||||
SELECT @@local.net_buffer_length = @@session.net_buffer_length;
|
|
||||||
@@local.net_buffer_length = @@session.net_buffer_length
|
|
||||||
1
|
|
||||||
'#---------------------FN_DYNVARS_109_11----------------------#'
|
'#---------------------FN_DYNVARS_109_11----------------------#'
|
||||||
SET net_buffer_length = 1024;
|
|
||||||
SELECT @@net_buffer_length;
|
SELECT @@net_buffer_length;
|
||||||
@@net_buffer_length
|
@@net_buffer_length
|
||||||
1024
|
16384
|
||||||
SELECT local.net_buffer_length;
|
SELECT local.net_buffer_length;
|
||||||
ERROR 42S02: Unknown table 'local' in field list
|
ERROR 42S02: Unknown table 'local' in field list
|
||||||
SELECT session.net_buffer_length;
|
SELECT session.net_buffer_length;
|
||||||
@ -191,4 +130,3 @@ ERROR 42S02: Unknown table 'session' in field list
|
|||||||
SELECT net_buffer_length = @@session.net_buffer_length;
|
SELECT net_buffer_length = @@session.net_buffer_length;
|
||||||
ERROR 42S22: Unknown column 'net_buffer_length' in 'field list'
|
ERROR 42S22: Unknown column 'net_buffer_length' in 'field list'
|
||||||
SET @@global.net_buffer_length = @start_global_value;
|
SET @@global.net_buffer_length = @start_global_value;
|
||||||
SET @@session.net_buffer_length = @start_session_value;
|
|
||||||
|
@ -1,32 +1,22 @@
|
|||||||
set global max_allowed_packet=100;
|
set global max_allowed_packet=100;
|
||||||
Warnings:
|
Warnings:
|
||||||
Warning 1292 Truncated incorrect max_allowed_packet value: '100'
|
Warning 1292 Truncated incorrect max_allowed_packet value: '100'
|
||||||
set max_allowed_packet=100;
|
|
||||||
Warnings:
|
|
||||||
Warning 1292 Truncated incorrect max_allowed_packet value: '100'
|
|
||||||
set global net_buffer_length=100;
|
set global net_buffer_length=100;
|
||||||
Warnings:
|
Warnings:
|
||||||
Warning 1292 Truncated incorrect net_buffer_length value: '100'
|
Warning 1292 Truncated incorrect net_buffer_length value: '100'
|
||||||
set net_buffer_length=100;
|
|
||||||
Warnings:
|
|
||||||
Warning 1292 Truncated incorrect net_buffer_length value: '100'
|
|
||||||
SELECT length("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa") as len;
|
SELECT length("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa") as len;
|
||||||
len
|
len
|
||||||
1024
|
1024
|
||||||
select repeat('a',2000);
|
select repeat('a',2000);
|
||||||
repeat('a',2000)
|
repeat('a',2000)
|
||||||
NULL
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||||
Warnings:
|
|
||||||
Warning 1301 Result of repeat() was larger than max_allowed_packet (1024) - truncated
|
|
||||||
select @@net_buffer_length, @@max_allowed_packet;
|
select @@net_buffer_length, @@max_allowed_packet;
|
||||||
@@net_buffer_length @@max_allowed_packet
|
@@net_buffer_length @@max_allowed_packet
|
||||||
1024 1024
|
1024 1024
|
||||||
SELECT length("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa") as len;
|
SELECT length("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa") as len;
|
||||||
ERROR 08S01: Got a packet bigger than 'max_allowed_packet' bytes
|
ERROR 08S01: Got a packet bigger than 'max_allowed_packet' bytes
|
||||||
set global max_allowed_packet=default;
|
set global max_allowed_packet=default;
|
||||||
set max_allowed_packet=default;
|
|
||||||
set global net_buffer_length=default;
|
set global net_buffer_length=default;
|
||||||
set net_buffer_length=default;
|
|
||||||
SELECT length("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa") as len;
|
SELECT length("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa") as len;
|
||||||
len
|
len
|
||||||
100
|
100
|
||||||
|
@ -1343,10 +1343,10 @@ t3 CREATE TABLE `t3` (
|
|||||||
`left(a,100000000)` longtext
|
`left(a,100000000)` longtext
|
||||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||||
drop tables t1,t2,t3;
|
drop tables t1,t2,t3;
|
||||||
SELECT @tmp_max:= @@max_allowed_packet;
|
SELECT @tmp_max:= @@global.max_allowed_packet;
|
||||||
@tmp_max:= @@max_allowed_packet
|
@tmp_max:= @@global.max_allowed_packet
|
||||||
1048576
|
1048576
|
||||||
SET max_allowed_packet=25000000;
|
SET @@global.max_allowed_packet=25000000;
|
||||||
CREATE TABLE t1 (a mediumtext);
|
CREATE TABLE t1 (a mediumtext);
|
||||||
CREATE TABLE t2 (b varchar(20));
|
CREATE TABLE t2 (b varchar(20));
|
||||||
INSERT INTO t1 VALUES ('a');
|
INSERT INTO t1 VALUES ('a');
|
||||||
@ -1384,7 +1384,7 @@ t3 CREATE TABLE `t3` (
|
|||||||
`a` varbinary(510) DEFAULT NULL
|
`a` varbinary(510) DEFAULT NULL
|
||||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||||
DROP TABLES t1,t2,t3;
|
DROP TABLES t1,t2,t3;
|
||||||
SET max_allowed_packet:= @tmp_max;
|
SET @@global.max_allowed_packet:= @tmp_max;
|
||||||
create table t1 ( id int not null auto_increment, primary key (id), col1 int);
|
create table t1 ( id int not null auto_increment, primary key (id), col1 int);
|
||||||
insert into t1 (col1) values (2),(3),(4),(5),(6);
|
insert into t1 (col1) values (2),(3),(4),(5),(6);
|
||||||
select 99 union all select id from t1 order by 1;
|
select 99 union all select id from t1 order by 1;
|
||||||
|
@ -228,7 +228,6 @@ VARIABLE_NAME VARIABLE_VALUE
|
|||||||
MYISAM_MAX_SORT_FILE_SIZE FILE_SIZE
|
MYISAM_MAX_SORT_FILE_SIZE FILE_SIZE
|
||||||
set global net_retry_count=10, session net_retry_count=10;
|
set global net_retry_count=10, session net_retry_count=10;
|
||||||
set global net_buffer_length=1024, net_write_timeout=200, net_read_timeout=300;
|
set global net_buffer_length=1024, net_write_timeout=200, net_read_timeout=300;
|
||||||
set session net_buffer_length=2048, net_write_timeout=500, net_read_timeout=600;
|
|
||||||
show global variables like 'net_%';
|
show global variables like 'net_%';
|
||||||
Variable_name Value
|
Variable_name Value
|
||||||
net_buffer_length 1024
|
net_buffer_length 1024
|
||||||
@ -243,57 +242,45 @@ NET_RETRY_COUNT 10
|
|||||||
NET_WRITE_TIMEOUT 200
|
NET_WRITE_TIMEOUT 200
|
||||||
show session variables like 'net_%';
|
show session variables like 'net_%';
|
||||||
Variable_name Value
|
Variable_name Value
|
||||||
net_buffer_length 2048
|
net_buffer_length 16384
|
||||||
net_read_timeout 600
|
net_read_timeout 30
|
||||||
net_retry_count 10
|
net_retry_count 10
|
||||||
net_write_timeout 500
|
net_write_timeout 60
|
||||||
select * from information_schema.session_variables where variable_name like 'net_%' order by 1;
|
select * from information_schema.session_variables where variable_name like 'net_%' order by 1;
|
||||||
VARIABLE_NAME VARIABLE_VALUE
|
VARIABLE_NAME VARIABLE_VALUE
|
||||||
NET_BUFFER_LENGTH 2048
|
NET_BUFFER_LENGTH 16384
|
||||||
NET_READ_TIMEOUT 600
|
NET_READ_TIMEOUT 30
|
||||||
NET_RETRY_COUNT 10
|
NET_RETRY_COUNT 10
|
||||||
NET_WRITE_TIMEOUT 500
|
NET_WRITE_TIMEOUT 60
|
||||||
set session net_buffer_length=8000, global net_read_timeout=900, net_write_timeout=1000;
|
set global net_buffer_length=8000, global net_read_timeout=900, net_write_timeout=1000;
|
||||||
show global variables like 'net_%';
|
show global variables like 'net_%';
|
||||||
Variable_name Value
|
Variable_name Value
|
||||||
net_buffer_length 1024
|
net_buffer_length 7168
|
||||||
net_read_timeout 900
|
net_read_timeout 900
|
||||||
net_retry_count 10
|
net_retry_count 10
|
||||||
net_write_timeout 1000
|
net_write_timeout 1000
|
||||||
select * from information_schema.global_variables where variable_name like 'net_%' order by 1;
|
select * from information_schema.global_variables where variable_name like 'net_%' order by 1;
|
||||||
VARIABLE_NAME VARIABLE_VALUE
|
VARIABLE_NAME VARIABLE_VALUE
|
||||||
NET_BUFFER_LENGTH 1024
|
NET_BUFFER_LENGTH 7168
|
||||||
NET_READ_TIMEOUT 900
|
NET_READ_TIMEOUT 900
|
||||||
NET_RETRY_COUNT 10
|
NET_RETRY_COUNT 10
|
||||||
NET_WRITE_TIMEOUT 1000
|
NET_WRITE_TIMEOUT 1000
|
||||||
show session variables like 'net_%';
|
set global net_buffer_length=1;
|
||||||
Variable_name Value
|
|
||||||
net_buffer_length 7168
|
|
||||||
net_read_timeout 600
|
|
||||||
net_retry_count 10
|
|
||||||
net_write_timeout 500
|
|
||||||
select * from information_schema.session_variables where variable_name like 'net_%' order by 1;
|
|
||||||
VARIABLE_NAME VARIABLE_VALUE
|
|
||||||
NET_BUFFER_LENGTH 7168
|
|
||||||
NET_READ_TIMEOUT 600
|
|
||||||
NET_RETRY_COUNT 10
|
|
||||||
NET_WRITE_TIMEOUT 500
|
|
||||||
set net_buffer_length=1;
|
|
||||||
Warnings:
|
Warnings:
|
||||||
Warning 1292 Truncated incorrect net_buffer_length value: '1'
|
Warning 1292 Truncated incorrect net_buffer_length value: '1'
|
||||||
show variables like 'net_buffer_length';
|
show global variables like 'net_buffer_length';
|
||||||
Variable_name Value
|
Variable_name Value
|
||||||
net_buffer_length 1024
|
net_buffer_length 1024
|
||||||
select * from information_schema.session_variables where variable_name like 'net_buffer_length';
|
select * from information_schema.global_variables where variable_name like 'net_buffer_length';
|
||||||
VARIABLE_NAME VARIABLE_VALUE
|
VARIABLE_NAME VARIABLE_VALUE
|
||||||
NET_BUFFER_LENGTH 1024
|
NET_BUFFER_LENGTH 1024
|
||||||
set net_buffer_length=2000000000;
|
set global net_buffer_length=2000000000;
|
||||||
Warnings:
|
Warnings:
|
||||||
Warning 1292 Truncated incorrect net_buffer_length value: '2000000000'
|
Warning 1292 Truncated incorrect net_buffer_length value: '2000000000'
|
||||||
show variables like 'net_buffer_length';
|
show global variables like 'net_buffer_length';
|
||||||
Variable_name Value
|
Variable_name Value
|
||||||
net_buffer_length 1048576
|
net_buffer_length 1048576
|
||||||
select * from information_schema.session_variables where variable_name like 'net_buffer_length';
|
select * from information_schema.global_variables where variable_name like 'net_buffer_length';
|
||||||
VARIABLE_NAME VARIABLE_VALUE
|
VARIABLE_NAME VARIABLE_VALUE
|
||||||
NET_BUFFER_LENGTH 1048576
|
NET_BUFFER_LENGTH 1048576
|
||||||
set character set cp1251_koi8;
|
set character set cp1251_koi8;
|
||||||
@ -461,7 +448,7 @@ select @@long_query_time;
|
|||||||
@@long_query_time
|
@@long_query_time
|
||||||
100.000001
|
100.000001
|
||||||
set low_priority_updates=1;
|
set low_priority_updates=1;
|
||||||
set max_allowed_packet=100;
|
set global max_allowed_packet=100;
|
||||||
Warnings:
|
Warnings:
|
||||||
Warning 1292 Truncated incorrect max_allowed_packet value: '100'
|
Warning 1292 Truncated incorrect max_allowed_packet value: '100'
|
||||||
set global max_binlog_cache_size=100;
|
set global max_binlog_cache_size=100;
|
||||||
@ -485,7 +472,7 @@ select @@max_user_connections;
|
|||||||
100
|
100
|
||||||
set global max_write_lock_count=100;
|
set global max_write_lock_count=100;
|
||||||
set myisam_sort_buffer_size=100;
|
set myisam_sort_buffer_size=100;
|
||||||
set net_buffer_length=100;
|
set global net_buffer_length=100;
|
||||||
Warnings:
|
Warnings:
|
||||||
Warning 1292 Truncated incorrect net_buffer_length value: '100'
|
Warning 1292 Truncated incorrect net_buffer_length value: '100'
|
||||||
set net_read_timeout=100;
|
set net_read_timeout=100;
|
||||||
|
@ -1439,3 +1439,20 @@ select hex(_utf8 X'616263FF');
|
|||||||
select hex(_utf8 B'001111111111');
|
select hex(_utf8 B'001111111111');
|
||||||
--error ER_INVALID_CHARACTER_STRING
|
--error ER_INVALID_CHARACTER_STRING
|
||||||
select (_utf8 X'616263FF');
|
select (_utf8 X'616263FF');
|
||||||
|
|
||||||
|
#
|
||||||
|
# Bug #36772: When using UTF8, CONVERT with GROUP BY returns truncated results
|
||||||
|
#
|
||||||
|
CREATE TABLE t1 (a INT NOT NULL, b INT NOT NULL);
|
||||||
|
INSERT INTO t1 VALUES (70000, 1092), (70001, 1085), (70002, 1065);
|
||||||
|
SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1 GROUP BY b;
|
||||||
|
SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1;
|
||||||
|
ALTER TABLE t1 ADD UNIQUE (b);
|
||||||
|
SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1 GROUP BY b;
|
||||||
|
DROP INDEX b ON t1;
|
||||||
|
SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1 GROUP BY b;
|
||||||
|
ALTER TABLE t1 ADD INDEX (b);
|
||||||
|
SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) from t1 GROUP BY b;
|
||||||
|
DROP TABLE t1;
|
||||||
|
|
||||||
|
--echo End of 5.0 tests
|
||||||
|
@ -43,8 +43,11 @@ drop table t1;
|
|||||||
# note that when LOW_MEMORY is set the "test" below is meaningless
|
# note that when LOW_MEMORY is set the "test" below is meaningless
|
||||||
#
|
#
|
||||||
|
|
||||||
set @@max_allowed_packet=1048576*100;
|
set @@global.max_allowed_packet=1048576*100;
|
||||||
--replace_result "''" XXX "'1'" XXX
|
--replace_result "''" XXX "'1'" XXX
|
||||||
|
|
||||||
|
# reconnect to make the new max packet size take effect
|
||||||
|
--connect (newconn, localhost, root,,)
|
||||||
eval select compress(repeat('aaaaaaaaaa', IF('$LOW_MEMORY', 10, 10000000))) is null;
|
eval select compress(repeat('aaaaaaaaaa', IF('$LOW_MEMORY', 10, 10000000))) is null;
|
||||||
|
|
||||||
#
|
#
|
||||||
|
@ -8,7 +8,9 @@
|
|||||||
-- disable_query_log
|
-- disable_query_log
|
||||||
-- disable_result_log
|
-- disable_result_log
|
||||||
|
|
||||||
SET @@max_allowed_packet=16777216;
|
# set packet size and reconnect
|
||||||
|
SET @@global.max_allowed_packet=16777216;
|
||||||
|
--connect (newconn, localhost, root,,)
|
||||||
|
|
||||||
DROP TABLE IF EXISTS bug34300;
|
DROP TABLE IF EXISTS bug34300;
|
||||||
CREATE TABLE bug34300 (
|
CREATE TABLE bug34300 (
|
||||||
|
@ -36,8 +36,13 @@
|
|||||||
|
|
||||||
SET @start_global_value = @@global.max_allowed_packet;
|
SET @start_global_value = @@global.max_allowed_packet;
|
||||||
SELECT @start_global_value;
|
SELECT @start_global_value;
|
||||||
SET @start_session_value = @@session.max_allowed_packet;
|
|
||||||
SELECT @start_session_value;
|
# give a known value to @@session.max_allowed_packet by assigning to
|
||||||
|
# @@global and setting up a new connection (for deterministic result
|
||||||
|
# file diffing)
|
||||||
|
SET @@global.max_allowed_packet = DEFAULT;
|
||||||
|
connect (conn1, localhost, root,,);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
--echo '#--------------------FN_DYNVARS_070_01-------------------------#'
|
--echo '#--------------------FN_DYNVARS_070_01-------------------------#'
|
||||||
@ -49,7 +54,9 @@ SET @@global.max_allowed_packet = 1000;
|
|||||||
SET @@global.max_allowed_packet = DEFAULT;
|
SET @@global.max_allowed_packet = DEFAULT;
|
||||||
SELECT @@global.max_allowed_packet;
|
SELECT @@global.max_allowed_packet;
|
||||||
|
|
||||||
|
--Error ER_VARIABLE_IS_READONLY
|
||||||
SET @@session.max_allowed_packet = 20000;
|
SET @@session.max_allowed_packet = 20000;
|
||||||
|
--Error ER_NO_DEFAULT
|
||||||
SET @@session.max_allowed_packet = DEFAULT;
|
SET @@session.max_allowed_packet = DEFAULT;
|
||||||
SELECT @@session.max_allowed_packet;
|
SELECT @@session.max_allowed_packet;
|
||||||
|
|
||||||
@ -62,9 +69,6 @@ SELECT @@session.max_allowed_packet;
|
|||||||
SET @@global.max_allowed_packet = DEFAULT;
|
SET @@global.max_allowed_packet = DEFAULT;
|
||||||
SELECT @@global.max_allowed_packet = 1048576;
|
SELECT @@global.max_allowed_packet = 1048576;
|
||||||
|
|
||||||
SET @@session.max_allowed_packet = DEFAULT;
|
|
||||||
SELECT @@session.max_allowed_packet = 1048576;
|
|
||||||
|
|
||||||
|
|
||||||
--echo '#--------------------FN_DYNVARS_070_03-------------------------#'
|
--echo '#--------------------FN_DYNVARS_070_03-------------------------#'
|
||||||
############################################################################
|
############################################################################
|
||||||
@ -86,14 +90,19 @@ SELECT @@global.max_allowed_packet;
|
|||||||
# Change the value of max_allowed_packet to a valid value for SESSION Scope #
|
# Change the value of max_allowed_packet to a valid value for SESSION Scope #
|
||||||
#############################################################################
|
#############################################################################
|
||||||
|
|
||||||
|
--Error ER_VARIABLE_IS_READONLY
|
||||||
SET @@session.max_allowed_packet = 1024;
|
SET @@session.max_allowed_packet = 1024;
|
||||||
SELECT @@session.max_allowed_packet;
|
SELECT @@session.max_allowed_packet;
|
||||||
|
--Error ER_VARIABLE_IS_READONLY
|
||||||
SET @@session.max_allowed_packet = 1025;
|
SET @@session.max_allowed_packet = 1025;
|
||||||
SELECT @@session.max_allowed_packet;
|
SELECT @@session.max_allowed_packet;
|
||||||
|
--Error ER_VARIABLE_IS_READONLY
|
||||||
SET @@session.max_allowed_packet = 65535;
|
SET @@session.max_allowed_packet = 65535;
|
||||||
SELECT @@session.max_allowed_packet;
|
SELECT @@session.max_allowed_packet;
|
||||||
|
--Error ER_VARIABLE_IS_READONLY
|
||||||
SET @@session.max_allowed_packet = 1073741824;
|
SET @@session.max_allowed_packet = 1073741824;
|
||||||
SELECT @@session.max_allowed_packet;
|
SELECT @@session.max_allowed_packet;
|
||||||
|
--Error ER_VARIABLE_IS_READONLY
|
||||||
SET @@session.max_allowed_packet = 1073741823;
|
SET @@session.max_allowed_packet = 1073741823;
|
||||||
SELECT @@session.max_allowed_packet;
|
SELECT @@session.max_allowed_packet;
|
||||||
|
|
||||||
@ -118,14 +127,18 @@ SELECT @@global.max_allowed_packet;
|
|||||||
SET @@global.max_allowed_packet = test;
|
SET @@global.max_allowed_packet = test;
|
||||||
SELECT @@global.max_allowed_packet;
|
SELECT @@global.max_allowed_packet;
|
||||||
|
|
||||||
|
--Error ER_VARIABLE_IS_READONLY
|
||||||
SET @@session.max_allowed_packet = 0;
|
SET @@session.max_allowed_packet = 0;
|
||||||
SELECT @@session.max_allowed_packet;
|
SELECT @@session.max_allowed_packet;
|
||||||
|
--Error ER_VARIABLE_IS_READONLY
|
||||||
SET @@session.max_allowed_packet = 1023;
|
SET @@session.max_allowed_packet = 1023;
|
||||||
SELECT @@session.max_allowed_packet;
|
SELECT @@session.max_allowed_packet;
|
||||||
|
--Error ER_VARIABLE_IS_READONLY
|
||||||
SET @@session.max_allowed_packet = -2;
|
SET @@session.max_allowed_packet = -2;
|
||||||
SELECT @@session.max_allowed_packet;
|
SELECT @@session.max_allowed_packet;
|
||||||
--Error ER_PARSE_ERROR
|
--Error ER_PARSE_ERROR
|
||||||
SET @@session.max_allowed_packet = 65530.34.;
|
SET @@session.max_allowed_packet = 65530.34.;
|
||||||
|
--Error ER_VARIABLE_IS_READONLY
|
||||||
SET @@session.max_allowed_packet = 10737418241;
|
SET @@session.max_allowed_packet = 10737418241;
|
||||||
SELECT @@session.max_allowed_packet;
|
SELECT @@session.max_allowed_packet;
|
||||||
--echo 'Bug # 34837: Errors are not coming on assigning invalid values to variable';
|
--echo 'Bug # 34837: Errors are not coming on assigning invalid values to variable';
|
||||||
@ -180,6 +193,7 @@ SELECT @@max_allowed_packet = @@global.max_allowed_packet;
|
|||||||
# Check if accessing variable with SESSION,LOCAL and without SCOPE points to same session variable #
|
# Check if accessing variable with SESSION,LOCAL and without SCOPE points to same session variable #
|
||||||
########################################################################################################
|
########################################################################################################
|
||||||
|
|
||||||
|
--Error ER_VARIABLE_IS_READONLY
|
||||||
SET @@max_allowed_packet = 100000;
|
SET @@max_allowed_packet = 100000;
|
||||||
SELECT @@max_allowed_packet = @@local.max_allowed_packet;
|
SELECT @@max_allowed_packet = @@local.max_allowed_packet;
|
||||||
SELECT @@local.max_allowed_packet = @@session.max_allowed_packet;
|
SELECT @@local.max_allowed_packet = @@session.max_allowed_packet;
|
||||||
@ -190,6 +204,7 @@ SELECT @@local.max_allowed_packet = @@session.max_allowed_packet;
|
|||||||
# Check if max_allowed_packet can be accessed with and without @@ sign #
|
# Check if max_allowed_packet can be accessed with and without @@ sign #
|
||||||
#############################################################################
|
#############################################################################
|
||||||
|
|
||||||
|
--Error ER_VARIABLE_IS_READONLY
|
||||||
SET max_allowed_packet = 1024;
|
SET max_allowed_packet = 1024;
|
||||||
SELECT @@max_allowed_packet;
|
SELECT @@max_allowed_packet;
|
||||||
--Error ER_UNKNOWN_TABLE
|
--Error ER_UNKNOWN_TABLE
|
||||||
@ -204,9 +219,9 @@ SELECT max_allowed_packet = @@session.max_allowed_packet;
|
|||||||
# Restore initial value #
|
# Restore initial value #
|
||||||
####################################
|
####################################
|
||||||
|
|
||||||
|
connection default;
|
||||||
SET @@global.max_allowed_packet = @start_global_value;
|
SET @@global.max_allowed_packet = @start_global_value;
|
||||||
SELECT @@global.max_allowed_packet;
|
SELECT @@global.max_allowed_packet;
|
||||||
SET @@session.max_allowed_packet = @start_session_value;
|
|
||||||
SELECT @@session.max_allowed_packet;
|
SELECT @@session.max_allowed_packet;
|
||||||
|
|
||||||
|
|
||||||
|
@ -43,26 +43,19 @@ name BLOB
|
|||||||
|
|
||||||
--echo '#--------------------FN_DYNVARS_070_01-------------------------#'
|
--echo '#--------------------FN_DYNVARS_070_01-------------------------#'
|
||||||
###############################################################################
|
###############################################################################
|
||||||
# Setting initial value of max_allowed_packet to 1024 at session level and
|
# Setting initial value of max_allowed_packet to 1024 at session level
|
||||||
# verifying its behavior after inserting data greater than 1024 bytes
|
# should result in an error (session variable is readonly)
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
|
||||||
--echo ## Setting value of max_allowed packet and net_buffer_length to 1024 ##
|
--echo ## Setting value of max_allowed packet and net_buffer_length to 1024 ##
|
||||||
|
--error ER_VARIABLE_IS_READONLY
|
||||||
SET @@session.max_allowed_packet = 1024;
|
SET @@session.max_allowed_packet = 1024;
|
||||||
SET @@session.net_buffer_length = 1024;
|
|
||||||
SELECT @@session.max_allowed_packet;
|
SELECT @@session.max_allowed_packet;
|
||||||
|
|
||||||
|
--error ER_VARIABLE_IS_READONLY
|
||||||
|
SET @@session.net_buffer_length = 1024;
|
||||||
SELECT @@session.net_buffer_length;
|
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-------------------------#'
|
--echo '#--------------------FN_DYNVARS_070_02-------------------------#'
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
@ -38,9 +38,13 @@
|
|||||||
SET @start_global_value = @@global.net_buffer_length;
|
SET @start_global_value = @@global.net_buffer_length;
|
||||||
# Due to differences in results of linux and windows
|
# Due to differences in results of linux and windows
|
||||||
#SELECT @start_global_value;
|
#SELECT @start_global_value;
|
||||||
SET @start_session_value = @@session.net_buffer_length;
|
|
||||||
#SELECT @start_session_value;
|
|
||||||
|
|
||||||
|
# give a known value to @@session.net_buffer_length by assigning to
|
||||||
|
# @@global and setting up a new connection (for deterministic result
|
||||||
|
# file diffing)
|
||||||
|
SET @@global.net_buffer_length = DEFAULT;
|
||||||
|
connect(con1,localhost,root,,);
|
||||||
|
connection con1;
|
||||||
|
|
||||||
--echo '#--------------------FN_DYNVARS_109_01-------------------------#'
|
--echo '#--------------------FN_DYNVARS_109_01-------------------------#'
|
||||||
#################################################################
|
#################################################################
|
||||||
@ -51,7 +55,9 @@ SET @@global.net_buffer_length = 10000;
|
|||||||
SET @@global.net_buffer_length = DEFAULT;
|
SET @@global.net_buffer_length = DEFAULT;
|
||||||
SELECT @@global.net_buffer_length;
|
SELECT @@global.net_buffer_length;
|
||||||
|
|
||||||
|
--Error ER_VARIABLE_IS_READONLY
|
||||||
SET @@session.net_buffer_length = 20000;
|
SET @@session.net_buffer_length = 20000;
|
||||||
|
--Error ER_NO_DEFAULT
|
||||||
SET @@session.net_buffer_length = DEFAULT;
|
SET @@session.net_buffer_length = DEFAULT;
|
||||||
SELECT @@session.net_buffer_length;
|
SELECT @@session.net_buffer_length;
|
||||||
|
|
||||||
@ -64,9 +70,6 @@ SELECT @@session.net_buffer_length;
|
|||||||
SET @@global.net_buffer_length = DEFAULT;
|
SET @@global.net_buffer_length = DEFAULT;
|
||||||
SELECT @@global.net_buffer_length = 16384;
|
SELECT @@global.net_buffer_length = 16384;
|
||||||
|
|
||||||
SET @@session.net_buffer_length = DEFAULT;
|
|
||||||
SELECT @@session.net_buffer_length = 16384;
|
|
||||||
|
|
||||||
|
|
||||||
--echo '#--------------------FN_DYNVARS_109_03-------------------------#'
|
--echo '#--------------------FN_DYNVARS_109_03-------------------------#'
|
||||||
###########################################################################
|
###########################################################################
|
||||||
@ -91,17 +94,7 @@ SELECT @@global.net_buffer_length;
|
|||||||
# Change the value of net_buffer_length to a valid value for SESSION Scope #
|
# Change the value of net_buffer_length to a valid value for SESSION Scope #
|
||||||
############################################################################
|
############################################################################
|
||||||
|
|
||||||
SET @@session.net_buffer_length = 1024;
|
# Bug#22891: SESSION net_buffer_length is now read-only; assignments skipped
|
||||||
SELECT @@session.net_buffer_length;
|
|
||||||
SET @@session.net_buffer_length = 1025;
|
|
||||||
SELECT @@session.net_buffer_length;
|
|
||||||
SET @@session.net_buffer_length = 1048576;
|
|
||||||
SELECT @@session.net_buffer_length;
|
|
||||||
SET @@session.net_buffer_length = 1048575;
|
|
||||||
SELECT @@session.net_buffer_length;
|
|
||||||
SET @@session.net_buffer_length = 65535;
|
|
||||||
SELECT @@session.net_buffer_length;
|
|
||||||
--echo 'Bug# 34877: Invalid Values are coming in variable on assigning valid values';
|
|
||||||
|
|
||||||
|
|
||||||
--echo '#------------------FN_DYNVARS_109_05-----------------------#'
|
--echo '#------------------FN_DYNVARS_109_05-----------------------#'
|
||||||
@ -126,18 +119,8 @@ SELECT @@global.net_buffer_length;
|
|||||||
SET @@global.net_buffer_length = test;
|
SET @@global.net_buffer_length = test;
|
||||||
SELECT @@global.net_buffer_length;
|
SELECT @@global.net_buffer_length;
|
||||||
|
|
||||||
SET @@session.net_buffer_length = 0;
|
# Bug#22891: SESSION net_buffer_length is now read-only; assignments skipped
|
||||||
SELECT @@session.net_buffer_length;
|
|
||||||
SET @@session.net_buffer_length = -2;
|
|
||||||
SELECT @@session.net_buffer_length;
|
|
||||||
SET @@session.net_buffer_length = 1048577;
|
|
||||||
SELECT @@session.net_buffer_length;
|
|
||||||
SET @@session.net_buffer_length = 1048576002;
|
|
||||||
SELECT @@session.net_buffer_length;
|
|
||||||
--Error ER_PARSE_ERROR
|
|
||||||
SET @@session.net_buffer_length = 65530.34.;
|
|
||||||
SET @@session.net_buffer_length = 65550;
|
|
||||||
SELECT @@session.net_buffer_length;
|
|
||||||
--echo 'Bug # 34837: Errors are not coming on assigning invalid values to variable';
|
--echo 'Bug # 34837: Errors are not coming on assigning invalid values to variable';
|
||||||
|
|
||||||
--Error ER_WRONG_TYPE_FOR_VAR
|
--Error ER_WRONG_TYPE_FOR_VAR
|
||||||
@ -190,9 +173,7 @@ SELECT @@net_buffer_length = @@global.net_buffer_length;
|
|||||||
# Check if accessing variable with SESSION,LOCAL and without SCOPE points to same session variable #
|
# Check if accessing variable with SESSION,LOCAL and without SCOPE points to same session variable #
|
||||||
########################################################################################################
|
########################################################################################################
|
||||||
|
|
||||||
SET @@net_buffer_length = 100000;
|
# Bug#22891: SESSION net_buffer_length is now read-only; assignments skipped
|
||||||
SELECT @@net_buffer_length = @@local.net_buffer_length;
|
|
||||||
SELECT @@local.net_buffer_length = @@session.net_buffer_length;
|
|
||||||
|
|
||||||
|
|
||||||
--echo '#---------------------FN_DYNVARS_109_11----------------------#'
|
--echo '#---------------------FN_DYNVARS_109_11----------------------#'
|
||||||
@ -200,7 +181,7 @@ SELECT @@local.net_buffer_length = @@session.net_buffer_length;
|
|||||||
# Check if net_buffer_length can be accessed with and without @@ sign #
|
# Check if net_buffer_length can be accessed with and without @@ sign #
|
||||||
############################################################################
|
############################################################################
|
||||||
|
|
||||||
SET net_buffer_length = 1024;
|
# Bug#22891: SESSION net_buffer_length is now read-only; assignments skipped
|
||||||
SELECT @@net_buffer_length;
|
SELECT @@net_buffer_length;
|
||||||
--Error ER_UNKNOWN_TABLE
|
--Error ER_UNKNOWN_TABLE
|
||||||
SELECT local.net_buffer_length;
|
SELECT local.net_buffer_length;
|
||||||
@ -214,11 +195,11 @@ SELECT net_buffer_length = @@session.net_buffer_length;
|
|||||||
# Restore initial value #
|
# Restore initial value #
|
||||||
####################################
|
####################################
|
||||||
|
|
||||||
|
connection default;
|
||||||
|
|
||||||
SET @@global.net_buffer_length = @start_global_value;
|
SET @@global.net_buffer_length = @start_global_value;
|
||||||
# Due to differences in results of linux and windows
|
# Due to differences in results of linux and windows
|
||||||
#SELECT @@global.net_buffer_length;
|
#SELECT @@global.net_buffer_length;
|
||||||
SET @@session.net_buffer_length = @start_session_value;
|
|
||||||
#SELECT @@session.net_buffer_length;
|
|
||||||
|
|
||||||
|
|
||||||
######################################################
|
######################################################
|
||||||
|
@ -8,30 +8,30 @@
|
|||||||
# Check protocol handling
|
# Check protocol handling
|
||||||
#
|
#
|
||||||
|
|
||||||
connect (con1,localhost,root,,);
|
# setting values below minimum threshold of 1024 will cause truncating
|
||||||
|
|
||||||
connection con1;
|
|
||||||
set global max_allowed_packet=100;
|
set global max_allowed_packet=100;
|
||||||
set max_allowed_packet=100;
|
|
||||||
set global net_buffer_length=100;
|
set global net_buffer_length=100;
|
||||||
set net_buffer_length=100;
|
|
||||||
# Have to be > 1024 as min value of net_buffer_length is 1024
|
# is not yet in effect
|
||||||
SELECT length("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa") as len;
|
SELECT length("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa") as len;
|
||||||
# Should return NULL as 2000 is bigger than max_allowed_packet
|
|
||||||
select repeat('a',2000);
|
select repeat('a',2000);
|
||||||
|
|
||||||
#
|
#
|
||||||
# Connection 2 should get error for too big packets
|
# Connection 1 should get error for too big packets
|
||||||
#
|
#
|
||||||
connect (con2,localhost,root,,);
|
connect (con1,localhost,root,,);
|
||||||
connection con2;
|
connection con1;
|
||||||
select @@net_buffer_length, @@max_allowed_packet;
|
select @@net_buffer_length, @@max_allowed_packet;
|
||||||
--error 1153
|
--error 1153
|
||||||
SELECT length("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa") as len;
|
SELECT length("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa") as len;
|
||||||
|
|
||||||
|
#
|
||||||
|
# Reset to default values and reconnect
|
||||||
|
#
|
||||||
set global max_allowed_packet=default;
|
set global max_allowed_packet=default;
|
||||||
set max_allowed_packet=default;
|
|
||||||
set global net_buffer_length=default;
|
set global net_buffer_length=default;
|
||||||
set net_buffer_length=default;
|
connect (con2,localhost,root,,);
|
||||||
|
connection con2;
|
||||||
SELECT length("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa") as len;
|
SELECT length("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa") as len;
|
||||||
select length(repeat('a',2000));
|
select length(repeat('a',2000));
|
||||||
|
|
||||||
|
@ -861,8 +861,10 @@ drop tables t1,t2,t3;
|
|||||||
# exceeds mediumtext maximum length
|
# exceeds mediumtext maximum length
|
||||||
#
|
#
|
||||||
|
|
||||||
SELECT @tmp_max:= @@max_allowed_packet;
|
SELECT @tmp_max:= @@global.max_allowed_packet;
|
||||||
SET max_allowed_packet=25000000;
|
SET @@global.max_allowed_packet=25000000;
|
||||||
|
# switching connection to allow the new max_allowed_packet take effect
|
||||||
|
--connect (newconn, localhost, root,,)
|
||||||
CREATE TABLE t1 (a mediumtext);
|
CREATE TABLE t1 (a mediumtext);
|
||||||
CREATE TABLE t2 (b varchar(20));
|
CREATE TABLE t2 (b varchar(20));
|
||||||
INSERT INTO t1 VALUES ('a');
|
INSERT INTO t1 VALUES ('a');
|
||||||
@ -884,7 +886,9 @@ INSERT INTO t1 VALUES ('a');
|
|||||||
CREATE TABLE t3 SELECT REPEAT(a,2) AS a FROM t1 UNION SELECT b FROM t2;
|
CREATE TABLE t3 SELECT REPEAT(a,2) AS a FROM t1 UNION SELECT b FROM t2;
|
||||||
SHOW CREATE TABLE t3;
|
SHOW CREATE TABLE t3;
|
||||||
DROP TABLES t1,t2,t3;
|
DROP TABLES t1,t2,t3;
|
||||||
SET max_allowed_packet:= @tmp_max;
|
--connection default
|
||||||
|
SET @@global.max_allowed_packet:= @tmp_max;
|
||||||
|
--disconnect newconn
|
||||||
|
|
||||||
#
|
#
|
||||||
# Bug #10032 Bug in parsing UNION with ORDER BY when one node does not use FROM
|
# Bug #10032 Bug in parsing UNION with ORDER BY when one node does not use FROM
|
||||||
|
@ -146,25 +146,23 @@ show global variables like 'myisam_max_sort_file_size';
|
|||||||
--replace_result 9223372036853727232 FILE_SIZE 2146435072 FILE_SIZE
|
--replace_result 9223372036853727232 FILE_SIZE 2146435072 FILE_SIZE
|
||||||
select * from information_schema.global_variables where variable_name like 'myisam_max_sort_file_size';
|
select * from information_schema.global_variables where variable_name like 'myisam_max_sort_file_size';
|
||||||
|
|
||||||
|
# bug#22891: modified to take read-only SESSION net_buffer_length into account
|
||||||
set global net_retry_count=10, session net_retry_count=10;
|
set global net_retry_count=10, session net_retry_count=10;
|
||||||
set global net_buffer_length=1024, net_write_timeout=200, net_read_timeout=300;
|
set global net_buffer_length=1024, net_write_timeout=200, net_read_timeout=300;
|
||||||
set session net_buffer_length=2048, net_write_timeout=500, net_read_timeout=600;
|
|
||||||
show global variables like 'net_%';
|
show global variables like 'net_%';
|
||||||
select * from information_schema.global_variables where variable_name like 'net_%' order by 1;
|
select * from information_schema.global_variables where variable_name like 'net_%' order by 1;
|
||||||
show session variables like 'net_%';
|
show session variables like 'net_%';
|
||||||
select * from information_schema.session_variables where variable_name like 'net_%' order by 1;
|
select * from information_schema.session_variables where variable_name like 'net_%' order by 1;
|
||||||
set session net_buffer_length=8000, global net_read_timeout=900, net_write_timeout=1000;
|
set global net_buffer_length=8000, global net_read_timeout=900, net_write_timeout=1000;
|
||||||
show global variables like 'net_%';
|
show global variables like 'net_%';
|
||||||
select * from information_schema.global_variables where variable_name like 'net_%' order by 1;
|
select * from information_schema.global_variables where variable_name like 'net_%' order by 1;
|
||||||
show session variables like 'net_%';
|
set global net_buffer_length=1;
|
||||||
select * from information_schema.session_variables where variable_name like 'net_%' order by 1;
|
show global variables like 'net_buffer_length';
|
||||||
set net_buffer_length=1;
|
select * from information_schema.global_variables where variable_name like 'net_buffer_length';
|
||||||
show variables like 'net_buffer_length';
|
|
||||||
select * from information_schema.session_variables where variable_name like 'net_buffer_length';
|
|
||||||
#warning 1292
|
#warning 1292
|
||||||
set net_buffer_length=2000000000;
|
set global net_buffer_length=2000000000;
|
||||||
show variables like 'net_buffer_length';
|
show global variables like 'net_buffer_length';
|
||||||
select * from information_schema.session_variables where variable_name like 'net_buffer_length';
|
select * from information_schema.global_variables where variable_name like 'net_buffer_length';
|
||||||
|
|
||||||
set character set cp1251_koi8;
|
set character set cp1251_koi8;
|
||||||
show variables like "character_set_client";
|
show variables like "character_set_client";
|
||||||
@ -274,7 +272,7 @@ select @@long_query_time;
|
|||||||
set long_query_time=100.000001;
|
set long_query_time=100.000001;
|
||||||
select @@long_query_time;
|
select @@long_query_time;
|
||||||
set low_priority_updates=1;
|
set low_priority_updates=1;
|
||||||
set max_allowed_packet=100;
|
set global max_allowed_packet=100;
|
||||||
set global max_binlog_cache_size=100;
|
set global max_binlog_cache_size=100;
|
||||||
set global max_binlog_size=100;
|
set global max_binlog_size=100;
|
||||||
set global max_connect_errors=100;
|
set global max_connect_errors=100;
|
||||||
@ -288,7 +286,7 @@ set global max_user_connections=100;
|
|||||||
select @@max_user_connections;
|
select @@max_user_connections;
|
||||||
set global max_write_lock_count=100;
|
set global max_write_lock_count=100;
|
||||||
set myisam_sort_buffer_size=100;
|
set myisam_sort_buffer_size=100;
|
||||||
set net_buffer_length=100;
|
set global net_buffer_length=100;
|
||||||
set net_read_timeout=100;
|
set net_read_timeout=100;
|
||||||
set net_write_timeout=100;
|
set net_write_timeout=100;
|
||||||
set global query_cache_limit=100;
|
set global query_cache_limit=100;
|
||||||
|
@ -85,6 +85,8 @@ char *my_tmpdir(MY_TMPDIR *tmpdir)
|
|||||||
void free_tmpdir(MY_TMPDIR *tmpdir)
|
void free_tmpdir(MY_TMPDIR *tmpdir)
|
||||||
{
|
{
|
||||||
uint i;
|
uint i;
|
||||||
|
if (!tmpdir->full_list.elements)
|
||||||
|
return;
|
||||||
for (i=0; i<=tmpdir->max; i++)
|
for (i=0; i<=tmpdir->max; i++)
|
||||||
my_free(tmpdir->list[i], MYF(0));
|
my_free(tmpdir->list[i], MYF(0));
|
||||||
delete_dynamic(&tmpdir->full_list);
|
delete_dynamic(&tmpdir->full_list);
|
||||||
|
@ -397,9 +397,10 @@ invalid value '%s'",
|
|||||||
my_progname, optp->name, optend);
|
my_progname, optp->name, optend);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
get_one_option(optp->id, optp,
|
if (get_one_option(optp->id, optp,
|
||||||
*((my_bool*) value) ?
|
*((my_bool*) value) ?
|
||||||
(char*) "1" : disabled_my_option);
|
(char*) "1" : disabled_my_option))
|
||||||
|
return EXIT_ARGUMENT_INVALID;
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
argument= optend;
|
argument= optend;
|
||||||
@ -457,7 +458,8 @@ invalid value '%s'",
|
|||||||
optp->arg_type == NO_ARG)
|
optp->arg_type == NO_ARG)
|
||||||
{
|
{
|
||||||
*((my_bool*) optp->value)= (my_bool) 1;
|
*((my_bool*) optp->value)= (my_bool) 1;
|
||||||
get_one_option(optp->id, optp, argument);
|
if (get_one_option(optp->id, optp, argument))
|
||||||
|
return EXIT_UNSPECIFIED_ERROR;
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
else if (optp->arg_type == REQUIRED_ARG ||
|
else if (optp->arg_type == REQUIRED_ARG ||
|
||||||
@ -476,7 +478,8 @@ invalid value '%s'",
|
|||||||
{
|
{
|
||||||
if (optp->var_type == GET_BOOL)
|
if (optp->var_type == GET_BOOL)
|
||||||
*((my_bool*) optp->value)= (my_bool) 1;
|
*((my_bool*) optp->value)= (my_bool) 1;
|
||||||
get_one_option(optp->id, optp, argument);
|
if (get_one_option(optp->id, optp, argument))
|
||||||
|
return EXIT_UNSPECIFIED_ERROR;
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
/* Check if there are more arguments after this one */
|
/* Check if there are more arguments after this one */
|
||||||
@ -501,7 +504,8 @@ invalid value '%s'",
|
|||||||
my_progname, argument, optp->name);
|
my_progname, argument, optp->name);
|
||||||
return error;
|
return error;
|
||||||
}
|
}
|
||||||
get_one_option(optp->id, optp, argument);
|
if (get_one_option(optp->id, optp, argument))
|
||||||
|
return EXIT_UNSPECIFIED_ERROR;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -524,7 +528,8 @@ invalid value '%s'",
|
|||||||
my_progname, argument, optp->name);
|
my_progname, argument, optp->name);
|
||||||
return error;
|
return error;
|
||||||
}
|
}
|
||||||
get_one_option(optp->id, optp, argument);
|
if (get_one_option(optp->id, optp, argument))
|
||||||
|
return EXIT_UNSPECIFIED_ERROR;
|
||||||
|
|
||||||
(*argc)--; /* option handled (short or long), decrease argument count */
|
(*argc)--; /* option handled (short or long), decrease argument count */
|
||||||
}
|
}
|
||||||
|
@ -3627,7 +3627,7 @@ int ha_init_key_cache(const char *name, KEY_CACHE *key_cache)
|
|||||||
if (!key_cache->key_cache_inited)
|
if (!key_cache->key_cache_inited)
|
||||||
{
|
{
|
||||||
pthread_mutex_lock(&LOCK_global_system_variables);
|
pthread_mutex_lock(&LOCK_global_system_variables);
|
||||||
ulong tmp_buff_size= (ulong) key_cache->param_buff_size;
|
size_t tmp_buff_size= (size_t) key_cache->param_buff_size;
|
||||||
uint tmp_block_size= (uint) key_cache->param_block_size;
|
uint tmp_block_size= (uint) key_cache->param_block_size;
|
||||||
uint division_limit= key_cache->param_division_limit;
|
uint division_limit= key_cache->param_division_limit;
|
||||||
uint age_threshold= key_cache->param_age_threshold;
|
uint age_threshold= key_cache->param_age_threshold;
|
||||||
@ -3651,7 +3651,7 @@ int ha_resize_key_cache(KEY_CACHE *key_cache)
|
|||||||
if (key_cache->key_cache_inited)
|
if (key_cache->key_cache_inited)
|
||||||
{
|
{
|
||||||
pthread_mutex_lock(&LOCK_global_system_variables);
|
pthread_mutex_lock(&LOCK_global_system_variables);
|
||||||
long tmp_buff_size= (long) key_cache->param_buff_size;
|
size_t tmp_buff_size= (size_t) key_cache->param_buff_size;
|
||||||
long tmp_block_size= (long) key_cache->param_block_size;
|
long tmp_block_size= (long) key_cache->param_block_size;
|
||||||
uint division_limit= key_cache->param_division_limit;
|
uint division_limit= key_cache->param_division_limit;
|
||||||
uint age_threshold= key_cache->param_age_threshold;
|
uint age_threshold= key_cache->param_age_threshold;
|
||||||
|
@ -3810,11 +3810,14 @@ static user_var_entry *get_variable(HASH *hash, LEX_STRING &name,
|
|||||||
|
|
||||||
bool Item_func_set_user_var::set_entry(THD *thd, bool create_if_not_exists)
|
bool Item_func_set_user_var::set_entry(THD *thd, bool create_if_not_exists)
|
||||||
{
|
{
|
||||||
if (thd == entry_thd && entry)
|
if (entry && thd->thread_id == entry_thread_id)
|
||||||
goto end; // update entry->update_query_id for PS
|
goto end; // update entry->update_query_id for PS
|
||||||
entry_thd= thd;
|
|
||||||
if (!(entry= get_variable(&thd->user_vars, name, create_if_not_exists)))
|
if (!(entry= get_variable(&thd->user_vars, name, create_if_not_exists)))
|
||||||
|
{
|
||||||
|
entry_thread_id= 0;
|
||||||
return TRUE;
|
return TRUE;
|
||||||
|
}
|
||||||
|
entry_thread_id= thd->thread_id;
|
||||||
/*
|
/*
|
||||||
Remember the last query which updated it, this way a query can later know
|
Remember the last query which updated it, this way a query can later know
|
||||||
if this variable is a constant item in the query (it is if update_query_id
|
if this variable is a constant item in the query (it is if update_query_id
|
||||||
|
@ -1295,16 +1295,16 @@ class Item_func_set_user_var :public Item_func
|
|||||||
enum Item_result cached_result_type;
|
enum Item_result cached_result_type;
|
||||||
user_var_entry *entry;
|
user_var_entry *entry;
|
||||||
/*
|
/*
|
||||||
The entry_thd variable is used:
|
The entry_thread_id variable is used:
|
||||||
1) to skip unnecessary updates of the entry field (see above);
|
1) to skip unnecessary updates of the entry field (see above);
|
||||||
2) to reset the entry field that was initialized in the other thread
|
2) to reset the entry field that was initialized in the other thread
|
||||||
(for example, an item tree of a trigger that updates user variables
|
(for example, an item tree of a trigger that updates user variables
|
||||||
may be shared between several connections, and the entry_thd field
|
may be shared between several connections, and the entry_thread_id field
|
||||||
prevents updates of one connection user variables from a concurrent
|
prevents updates of one connection user variables from a concurrent
|
||||||
connection calling the same trigger that initially updated some
|
connection calling the same trigger that initially updated some
|
||||||
user variable it the first connection context).
|
user variable it the first connection context).
|
||||||
*/
|
*/
|
||||||
THD *entry_thd;
|
my_thread_id entry_thread_id;
|
||||||
char buffer[MAX_FIELD_WIDTH];
|
char buffer[MAX_FIELD_WIDTH];
|
||||||
String value;
|
String value;
|
||||||
my_decimal decimal_buff;
|
my_decimal decimal_buff;
|
||||||
@ -1321,7 +1321,7 @@ public:
|
|||||||
LEX_STRING name; // keep it public
|
LEX_STRING name; // keep it public
|
||||||
Item_func_set_user_var(LEX_STRING a,Item *b)
|
Item_func_set_user_var(LEX_STRING a,Item *b)
|
||||||
:Item_func(b), cached_result_type(INT_RESULT),
|
:Item_func(b), cached_result_type(INT_RESULT),
|
||||||
entry(NULL), entry_thd(NULL), name(a)
|
entry(NULL), entry_thread_id(0), name(a)
|
||||||
{}
|
{}
|
||||||
enum Functype functype() const { return SUSERVAR_FUNC; }
|
enum Functype functype() const { return SUSERVAR_FUNC; }
|
||||||
double val_real();
|
double val_real();
|
||||||
|
@ -2504,6 +2504,8 @@ void Item_char_typecast::fix_length_and_dec()
|
|||||||
and thus avoid unnecessary character set conversion.
|
and thus avoid unnecessary character set conversion.
|
||||||
- If the argument is not a number, then from_cs is set to
|
- If the argument is not a number, then from_cs is set to
|
||||||
the argument's charset.
|
the argument's charset.
|
||||||
|
|
||||||
|
Note (TODO): we could use repertoire technique here.
|
||||||
*/
|
*/
|
||||||
from_cs= (args[0]->result_type() == INT_RESULT ||
|
from_cs= (args[0]->result_type() == INT_RESULT ||
|
||||||
args[0]->result_type() == DECIMAL_RESULT ||
|
args[0]->result_type() == DECIMAL_RESULT ||
|
||||||
@ -2511,12 +2513,13 @@ void Item_char_typecast::fix_length_and_dec()
|
|||||||
(cast_cs->mbminlen == 1 ? cast_cs : &my_charset_latin1) :
|
(cast_cs->mbminlen == 1 ? cast_cs : &my_charset_latin1) :
|
||||||
args[0]->collation.collation;
|
args[0]->collation.collation;
|
||||||
charset_conversion= (cast_cs->mbmaxlen > 1) ||
|
charset_conversion= (cast_cs->mbmaxlen > 1) ||
|
||||||
!my_charset_same(from_cs, cast_cs) &&
|
(!my_charset_same(from_cs, cast_cs) &&
|
||||||
from_cs != &my_charset_bin &&
|
from_cs != &my_charset_bin &&
|
||||||
cast_cs != &my_charset_bin;
|
cast_cs != &my_charset_bin);
|
||||||
collation.set(cast_cs, DERIVATION_IMPLICIT);
|
collation.set(cast_cs, DERIVATION_IMPLICIT);
|
||||||
char_length= (cast_length >= 0) ? cast_length :
|
char_length= (cast_length >= 0) ?
|
||||||
args[0]->max_length/from_cs->mbmaxlen;
|
cast_length :
|
||||||
|
args[0]->max_length / args[0]->collation.collation->mbmaxlen;
|
||||||
max_length= char_length * cast_cs->mbmaxlen;
|
max_length= char_length * cast_cs->mbmaxlen;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -733,7 +733,7 @@ uint connection_count= 0;
|
|||||||
/* Function declarations */
|
/* Function declarations */
|
||||||
|
|
||||||
pthread_handler_t signal_hand(void *arg);
|
pthread_handler_t signal_hand(void *arg);
|
||||||
static void mysql_init_variables(void);
|
static int mysql_init_variables(void);
|
||||||
static void get_options(int *argc,char **argv);
|
static void get_options(int *argc,char **argv);
|
||||||
extern "C" my_bool mysqld_get_one_option(int, const struct my_option *, char *);
|
extern "C" my_bool mysqld_get_one_option(int, const struct my_option *, char *);
|
||||||
static void set_server_version(void);
|
static void set_server_version(void);
|
||||||
@ -3141,12 +3141,12 @@ static int init_common_variables(const char *conf_file_name, int argc,
|
|||||||
if (!rpl_filter || !binlog_filter)
|
if (!rpl_filter || !binlog_filter)
|
||||||
{
|
{
|
||||||
sql_perror("Could not allocate replication and binlog filters");
|
sql_perror("Could not allocate replication and binlog filters");
|
||||||
exit(1);
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (init_thread_environment())
|
if (init_thread_environment() ||
|
||||||
|
mysql_init_variables())
|
||||||
return 1;
|
return 1;
|
||||||
mysql_init_variables();
|
|
||||||
|
|
||||||
#ifdef HAVE_TZNAME
|
#ifdef HAVE_TZNAME
|
||||||
{
|
{
|
||||||
@ -3745,7 +3745,10 @@ version 5.0 and above. It is replaced by the binary log.");
|
|||||||
{
|
{
|
||||||
/* as opt_bin_log==0, no need to free opt_bin_logname */
|
/* as opt_bin_log==0, no need to free opt_bin_logname */
|
||||||
if (!(opt_bin_logname= my_strdup(opt_update_logname, MYF(MY_WME))))
|
if (!(opt_bin_logname= my_strdup(opt_update_logname, MYF(MY_WME))))
|
||||||
exit(EXIT_OUT_OF_MEMORY);
|
{
|
||||||
|
sql_print_error("Out of memory");
|
||||||
|
return EXIT_OUT_OF_MEMORY;
|
||||||
|
}
|
||||||
sql_print_error("The update log is no longer supported by MySQL in \
|
sql_print_error("The update log is no longer supported by MySQL in \
|
||||||
version 5.0 and above. It is replaced by the binary log. Now starting MySQL \
|
version 5.0 and above. It is replaced by the binary log. Now starting MySQL \
|
||||||
with --log-bin='%s' instead.",opt_bin_logname);
|
with --log-bin='%s' instead.",opt_bin_logname);
|
||||||
@ -7348,6 +7351,7 @@ SHOW_VAR status_vars[]= {
|
|||||||
{NullS, NullS, SHOW_LONG}
|
{NullS, NullS, SHOW_LONG}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
#ifndef EMBEDDED_LIBRARY
|
||||||
static void print_version(void)
|
static void print_version(void)
|
||||||
{
|
{
|
||||||
set_server_version();
|
set_server_version();
|
||||||
@ -7359,7 +7363,6 @@ static void print_version(void)
|
|||||||
server_version,SYSTEM_TYPE,MACHINE_TYPE, MYSQL_COMPILATION_COMMENT);
|
server_version,SYSTEM_TYPE,MACHINE_TYPE, MYSQL_COMPILATION_COMMENT);
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifndef EMBEDDED_LIBRARY
|
|
||||||
static void usage(void)
|
static void usage(void)
|
||||||
{
|
{
|
||||||
if (!(default_charset_info= get_charset_by_csname(default_character_set_name,
|
if (!(default_charset_info= get_charset_by_csname(default_character_set_name,
|
||||||
@ -7424,7 +7427,7 @@ To see what values a running MySQL server is using, type\n\
|
|||||||
as these are initialized by my_getopt.
|
as these are initialized by my_getopt.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
static void mysql_init_variables(void)
|
static int mysql_init_variables(void)
|
||||||
{
|
{
|
||||||
/* Things reset to zero */
|
/* Things reset to zero */
|
||||||
opt_skip_slave_start= opt_reckless_slave = 0;
|
opt_skip_slave_start= opt_reckless_slave = 0;
|
||||||
@ -7505,7 +7508,10 @@ static void mysql_init_variables(void)
|
|||||||
key_caches.empty();
|
key_caches.empty();
|
||||||
if (!(dflt_key_cache= get_or_create_key_cache(default_key_cache_base.str,
|
if (!(dflt_key_cache= get_or_create_key_cache(default_key_cache_base.str,
|
||||||
default_key_cache_base.length)))
|
default_key_cache_base.length)))
|
||||||
exit(1);
|
{
|
||||||
|
sql_print_error("Cannot allocate the keycache");
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
/* set key_cache_hash.default_value = dflt_key_cache */
|
/* set key_cache_hash.default_value = dflt_key_cache */
|
||||||
multi_keycache_init();
|
multi_keycache_init();
|
||||||
|
|
||||||
@ -7648,6 +7654,7 @@ static void mysql_init_variables(void)
|
|||||||
tmpenv = DEFAULT_MYSQL_HOME;
|
tmpenv = DEFAULT_MYSQL_HOME;
|
||||||
(void) strmake(mysql_home, tmpenv, sizeof(mysql_home)-1);
|
(void) strmake(mysql_home, tmpenv, sizeof(mysql_home)-1);
|
||||||
#endif
|
#endif
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -7708,9 +7715,11 @@ mysqld_get_one_option(int optid,
|
|||||||
#endif
|
#endif
|
||||||
break;
|
break;
|
||||||
#include <sslopt-case.h>
|
#include <sslopt-case.h>
|
||||||
|
#ifndef EMBEDDED_LIBRARY
|
||||||
case 'V':
|
case 'V':
|
||||||
print_version();
|
print_version();
|
||||||
exit(0);
|
exit(0);
|
||||||
|
#endif /*EMBEDDED_LIBRARY*/
|
||||||
case 'W':
|
case 'W':
|
||||||
if (!argument)
|
if (!argument)
|
||||||
global_system_variables.log_warnings++;
|
global_system_variables.log_warnings++;
|
||||||
@ -7939,14 +7948,14 @@ mysqld_get_one_option(int optid,
|
|||||||
if (gethostname(myhostname,sizeof(myhostname)) < 0)
|
if (gethostname(myhostname,sizeof(myhostname)) < 0)
|
||||||
{
|
{
|
||||||
sql_perror("Can't start server: cannot get my own hostname!");
|
sql_perror("Can't start server: cannot get my own hostname!");
|
||||||
exit(1);
|
return 1;
|
||||||
}
|
}
|
||||||
ent=gethostbyname(myhostname);
|
ent=gethostbyname(myhostname);
|
||||||
}
|
}
|
||||||
if (!ent)
|
if (!ent)
|
||||||
{
|
{
|
||||||
sql_perror("Can't start server: cannot resolve hostname!");
|
sql_perror("Can't start server: cannot resolve hostname!");
|
||||||
exit(1);
|
return 1;
|
||||||
}
|
}
|
||||||
my_bind_addr = (ulong) ((in_addr*)ent->h_addr_list[0])->s_addr;
|
my_bind_addr = (ulong) ((in_addr*)ent->h_addr_list[0])->s_addr;
|
||||||
}
|
}
|
||||||
@ -8143,8 +8152,8 @@ mysqld_get_one_option(int optid,
|
|||||||
case OPT_FT_BOOLEAN_SYNTAX:
|
case OPT_FT_BOOLEAN_SYNTAX:
|
||||||
if (ft_boolean_check_syntax_string((uchar*) argument))
|
if (ft_boolean_check_syntax_string((uchar*) argument))
|
||||||
{
|
{
|
||||||
fprintf(stderr, "Invalid ft-boolean-syntax string: %s\n", argument);
|
sql_print_error("Invalid ft-boolean-syntax string: %s\n", argument);
|
||||||
exit(1);
|
return 1;
|
||||||
}
|
}
|
||||||
strmake(ft_boolean_syntax, argument, sizeof(ft_boolean_syntax)-1);
|
strmake(ft_boolean_syntax, argument, sizeof(ft_boolean_syntax)-1);
|
||||||
break;
|
break;
|
||||||
|
@ -296,7 +296,7 @@ static sys_var_thd_bool sys_sql_low_priority_updates(&vars, "sql_low_priority_up
|
|||||||
&SV::low_priority_updates,
|
&SV::low_priority_updates,
|
||||||
fix_low_priority_updates);
|
fix_low_priority_updates);
|
||||||
#endif
|
#endif
|
||||||
static sys_var_thd_ulong sys_max_allowed_packet(&vars, "max_allowed_packet",
|
static sys_var_thd_ulong_session_readonly sys_max_allowed_packet(&vars, "max_allowed_packet",
|
||||||
&SV::max_allowed_packet);
|
&SV::max_allowed_packet);
|
||||||
static sys_var_long_ptr sys_max_binlog_cache_size(&vars, "max_binlog_cache_size",
|
static sys_var_long_ptr sys_max_binlog_cache_size(&vars, "max_binlog_cache_size",
|
||||||
&max_binlog_cache_size);
|
&max_binlog_cache_size);
|
||||||
@ -369,7 +369,7 @@ static sys_var_thd_enum sys_myisam_stats_method(&vars, "myisam_stats_met
|
|||||||
&myisam_stats_method_typelib,
|
&myisam_stats_method_typelib,
|
||||||
NULL);
|
NULL);
|
||||||
|
|
||||||
static sys_var_thd_ulong sys_net_buffer_length(&vars, "net_buffer_length",
|
static sys_var_thd_ulong_session_readonly sys_net_buffer_length(&vars, "net_buffer_length",
|
||||||
&SV::net_buffer_length);
|
&SV::net_buffer_length);
|
||||||
static sys_var_thd_ulong sys_net_read_timeout(&vars, "net_read_timeout",
|
static sys_var_thd_ulong sys_net_read_timeout(&vars, "net_read_timeout",
|
||||||
&SV::net_read_timeout,
|
&SV::net_read_timeout,
|
||||||
@ -2734,6 +2734,18 @@ uchar *sys_var_max_user_conn::value_ptr(THD *thd, enum_var_type type,
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
bool sys_var_thd_ulong_session_readonly::check(THD *thd, set_var *var)
|
||||||
|
{
|
||||||
|
if (var->type != OPT_GLOBAL)
|
||||||
|
{
|
||||||
|
my_error(ER_VARIABLE_IS_READONLY, MYF(0), "SESSION", name, "GLOBAL");
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
return sys_var_thd_ulong::check(thd, var);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
bool sys_var_thd_lc_time_names::check(THD *thd, set_var *var)
|
bool sys_var_thd_lc_time_names::check(THD *thd, set_var *var)
|
||||||
{
|
{
|
||||||
MY_LOCALE *locale_match;
|
MY_LOCALE *locale_match;
|
||||||
|
@ -1024,6 +1024,29 @@ public:
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief This is a specialization of sys_var_thd_ulong that implements a
|
||||||
|
read-only session variable. The class overrides check() and check_default()
|
||||||
|
to achieve the read-only property for the session part of the variable.
|
||||||
|
*/
|
||||||
|
class sys_var_thd_ulong_session_readonly : public sys_var_thd_ulong
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
sys_var_thd_ulong_session_readonly(sys_var_chain *chain_arg,
|
||||||
|
const char *name_arg, ulong SV::*offset_arg,
|
||||||
|
sys_check_func c_func= NULL,
|
||||||
|
sys_after_update_func au_func= NULL,
|
||||||
|
Binlog_status_enum bl_status_arg= NOT_IN_BINLOG):
|
||||||
|
sys_var_thd_ulong(chain_arg, name_arg, offset_arg, c_func, au_func, bl_status_arg)
|
||||||
|
{ }
|
||||||
|
bool check(THD *thd, set_var *var);
|
||||||
|
bool check_default(enum_var_type type)
|
||||||
|
{
|
||||||
|
return type != OPT_GLOBAL || !option_limits;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
class sys_var_microseconds :public sys_var_thd
|
class sys_var_microseconds :public sys_var_thd
|
||||||
{
|
{
|
||||||
ulonglong SV::*offset;
|
ulonglong SV::*offset;
|
||||||
|
@ -6151,3 +6151,6 @@ WARN_PLUGIN_DELETE_BUILTIN
|
|||||||
|
|
||||||
WARN_PLUGIN_BUSY
|
WARN_PLUGIN_BUSY
|
||||||
eng "Plugin is busy and will be uninstalled on shutdown"
|
eng "Plugin is busy and will be uninstalled on shutdown"
|
||||||
|
|
||||||
|
ER_VARIABLE_IS_READONLY
|
||||||
|
eng "%s variable '%s' is read-only. Use SET %s to assign the value"
|
||||||
|
Reference in New Issue
Block a user