Merge with mysql-maria tree

mysql-test/t/variables.test:
  Reset delay_key_write, otherwise maria.maria test may fail
sql/set_var.cc:
  Reset ha_open_options if one resets the delay_key_write variable.
  Before there was no way to reset it without restarting mysqld, which caused some tests to fail
This commit is contained in:
Michael Widenius 2009-02-19 11:01:25 +02:00
commit 945fa0d913
342 changed files with 4300 additions and 1944 deletions

View File

@ -2052,7 +2052,8 @@ static bool add_line(String &buffer,char *line,char *in_string,
} }
#endif #endif
if (!*ml_comment && inchar == '\\' && if (!*ml_comment && inchar == '\\' &&
!(mysql.server_status & SERVER_STATUS_NO_BACKSLASH_ESCAPES)) !(*in_string &&
(mysql.server_status & SERVER_STATUS_NO_BACKSLASH_ESCAPES)))
{ {
// Found possbile one character command like \c // Found possbile one character command like \c

View File

@ -1504,12 +1504,15 @@ void show_diff(DYNAMIC_STRING* ds,
/* determine if we have diff on Windows /* determine if we have diff on Windows
needs special processing due to return values needs special processing due to return values
on that OS on that OS
This test is only done on Windows since it's only needed there
in order to correctly detect non-availibility of 'diff', and
the way it's implemented does not work with default 'diff' on Solaris.
*/ */
#ifdef __WIN__ #ifdef __WIN__
have_diff = diff_check(); have_diff = diff_check();
#else #else
have_diff = 1; have_diff = 1;
#endif #endif
if (have_diff) if (have_diff)
{ {
@ -4574,7 +4577,7 @@ void select_connection(struct st_command *command)
void do_close_connection(struct st_command *command) void do_close_connection(struct st_command *command)
{ {
DBUG_ENTER("close_connection"); DBUG_ENTER("do_close_connection");
struct st_connection *con; struct st_connection *con;
static DYNAMIC_STRING ds_connection; static DYNAMIC_STRING ds_connection;
@ -4635,7 +4638,7 @@ void do_close_connection(struct st_command *command)
var_set_int("$mysql_get_server_version", 0xFFFFFFFF); var_set_int("$mysql_get_server_version", 0xFFFFFFFF);
var_set_string("$CURRENT_CONNECTION", con->name); var_set_string("$CURRENT_CONNECTION", con->name);
} }
dynstr_free(&ds_connection);
DBUG_VOID_RETURN; DBUG_VOID_RETURN;
} }

View File

@ -5,6 +5,9 @@ dnl you must also create strings/ctype-$charset_name.c
AC_DIVERT_PUSH(0) AC_DIVERT_PUSH(0)
# Any changes to the available character sets must also go into
# include/config-win.h
define(CHARSETS_AVAILABLE0,binary) define(CHARSETS_AVAILABLE0,binary)
define(CHARSETS_AVAILABLE1,armscii8 ascii big5 cp1250 cp1251 cp1256 cp1257) define(CHARSETS_AVAILABLE1,armscii8 ascii big5 cp1250 cp1251 cp1256 cp1257)
define(CHARSETS_AVAILABLE2,cp850 cp852 cp866 cp932 dec8 eucjpms euckr gb2312 gbk geostd8) define(CHARSETS_AVAILABLE2,cp850 cp852 cp866 cp932 dec8 eucjpms euckr gb2312 gbk geostd8)

View File

@ -814,7 +814,7 @@ AC_HEADER_DIRENT
AC_HEADER_STDC AC_HEADER_STDC
AC_HEADER_SYS_WAIT AC_HEADER_SYS_WAIT
AC_CHECK_HEADERS(fcntl.h float.h floatingpoint.h ieeefp.h limits.h \ AC_CHECK_HEADERS(fcntl.h float.h floatingpoint.h ieeefp.h limits.h \
memory.h pwd.h select.h \ memory.h pwd.h select.h fnmatch.h \
stdlib.h stddef.h sys/stat.h \ stdlib.h stddef.h sys/stat.h \
strings.h string.h synch.h sys/mman.h sys/socket.h netinet/in.h arpa/inet.h \ strings.h string.h synch.h sys/mman.h sys/socket.h netinet/in.h arpa/inet.h \
sys/timeb.h sys/types.h sys/un.h sys/vadvise.h sys/wait.h term.h \ sys/timeb.h sys/types.h sys/un.h sys/vadvise.h sys/wait.h term.h \

View File

@ -75,7 +75,7 @@
* (the logic is - think of a call stack as of a path. * (the logic is - think of a call stack as of a path.
* "function" means only this function, "function/" means the hierarchy. * "function" means only this function, "function/" means the hierarchy.
* in the future, filters like function1/function2 could be supported. * in the future, filters like function1/function2 could be supported.
* wildcards are a natural extension too: * and ?) * following this logic glob(7) wildcards are supported.)
* *
*/ */
@ -88,6 +88,13 @@
#include <my_global.h> #include <my_global.h>
#include <m_string.h> #include <m_string.h>
#include <errno.h> #include <errno.h>
#ifdef HAVE_FNMATCH_H
#include <fnmatch.h>
#else
#define fnmatch(A,B,C) strcmp(A,B)
#endif
#if defined(MSDOS) || defined(__WIN__) #if defined(MSDOS) || defined(__WIN__)
#include <process.h> #include <process.h>
#endif #endif
@ -1451,7 +1458,9 @@ next:
{ {
if (!strncmp((*cur)->str, start, len)) if (!strncmp((*cur)->str, start, len))
{ {
if (todo == EXCLUDE) if ((*cur)->flags & todo) /* same action ? */
(*cur)->flags|= subdir; /* just merge the SUBDIR flag */
else if (todo == EXCLUDE)
{ {
struct link *delme=*cur; struct link *delme=*cur;
*cur=(*cur)->next_link; *cur=(*cur)->next_link;
@ -1545,7 +1554,7 @@ static int InList(struct link *linkp, const char *cp)
for (result=MATCHED; linkp != NULL; linkp= linkp->next_link) for (result=MATCHED; linkp != NULL; linkp= linkp->next_link)
{ {
if (!strcmp(linkp->str, cp)) if (!fnmatch(linkp->str, cp, 0))
return linkp->flags; return linkp->flags;
if (!(linkp->flags & EXCLUDE)) if (!(linkp->flags & EXCLUDE))
result=NOT_MATCHED; result=NOT_MATCHED;

View File

@ -483,3 +483,14 @@ func2: info: s=ko
| | <func3 | | <func3
| <func2 | <func2
<main <main
# repeated keyword
% ./tests d:-d,info,info
=> execute
=> evaluate: ON
=> evaluate_if: OFF
main: explain: dbug explained: d:-d,info
% ./tests d:-d,info/,info
=> execute
=> evaluate: ON
=> evaluate_if: OFF
main: explain: dbug explained: d:-d,info/

View File

@ -941,6 +941,9 @@ a complete log file in case of crashes. This mode is implicit in
multi-threaded environment. multi-threaded environment.
.LI d[,keywords] .LI d[,keywords]
Enable output from macros with specified keywords. Enable output from macros with specified keywords.
Every keyword can be a
.I glob(7)
pattern.
An empty list of keywords implies that all keywords are selected. An empty list of keywords implies that all keywords are selected.
.LI D[,time] .LI D[,time]
Delay for specified time after each output line, to let output drain. Delay for specified time after each output line, to let output drain.
@ -948,6 +951,9 @@ Time is given in tenths of a second (value of 10 is one second).
Default is zero. Default is zero.
.LI f[,functions] .LI f[,functions]
Limit debugger actions to the specified list of functions. Limit debugger actions to the specified list of functions.
Every function can be a
.I glob(7)
pattern.
An empty list of functions implies that all functions are selected. An empty list of functions implies that all functions are selected.
Every function in the list may optionally be followed by a '/' - Every function in the list may optionally be followed by a '/' -
this will implicitly select all the functions down the call stack. this will implicitly select all the functions down the call stack.
@ -966,6 +972,9 @@ Mark each debugger output line with the PID (or thread ID) of the
current process. current process.
.LI g,[functions] .LI g,[functions]
Enable profiling for the specified list of functions. Enable profiling for the specified list of functions.
Every function can be a
.I glob(7)
pattern.
An empty list of functions enables profiling for all functions. An empty list of functions enables profiling for all functions.
See See
.B PROFILING\ WITH\ DBUG .B PROFILING\ WITH\ DBUG
@ -984,7 +993,11 @@ Like 'a[,file]' but overwrite old file, do not append.
.LI O[,file] .LI O[,file]
Like 'A[,file]' but overwrite old file, do not append. Like 'A[,file]' but overwrite old file, do not append.
.LI p[,processes] .LI p[,processes]
Limit debugger actions to the specified processes. An empty list Limit debugger actions to the specified processes.
Every name can be a
.I glob(7)
pattern.
An empty list
implies all processes. This is useful for processes which run child implies all processes. This is useful for processes which run child
processes. Note that each debugger output line can be marked with the processes. Note that each debugger output line can be marked with the
name of the current process via the 'P' flag. The process name must name of the current process via the 'P' flag. The process name must

View File

@ -207,11 +207,6 @@ typedef uint rf_SetTimer;
#define SIGNAL_WITH_VIO_CLOSE #define SIGNAL_WITH_VIO_CLOSE
#endif #endif
/* Use all character sets in MySQL */
#define USE_MB 1
#define USE_MB_IDENT 1
#define USE_STRCOLL 1
/* All windows servers should support .sym files */ /* All windows servers should support .sym files */
#undef USE_SYMDIR #undef USE_SYMDIR
#define USE_SYMDIR #define USE_SYMDIR
@ -381,9 +376,6 @@ inline ulonglong double2ulonglong(double d)
#define shared_memory_buffer_length 16000 #define shared_memory_buffer_length 16000
#define default_shared_memory_base_name "MYSQL" #define default_shared_memory_base_name "MYSQL"
#define MYSQL_DEFAULT_CHARSET_NAME "latin1"
#define MYSQL_DEFAULT_COLLATION_NAME "latin1_swedish_ci"
#define HAVE_SPATIAL 1 #define HAVE_SPATIAL 1
#define HAVE_RTREE_KEYS 1 #define HAVE_RTREE_KEYS 1
@ -393,40 +385,54 @@ inline ulonglong double2ulonglong(double d)
#define COMMUNITY_SERVER 1 #define COMMUNITY_SERVER 1
#define ENABLED_PROFILING 1 #define ENABLED_PROFILING 1
/* Define charsets you want */ /*
/* #undef HAVE_CHARSET_armscii8 */ Our Windows binaries include all character sets which MySQL supports.
/* #undef HAVE_CHARSET_ascii */ Any changes to the available character sets must also go into
config/ac-macros/character_sets.m4
*/
#define MYSQL_DEFAULT_CHARSET_NAME "latin1"
#define MYSQL_DEFAULT_COLLATION_NAME "latin1_swedish_ci"
#define USE_MB 1
#define USE_MB_IDENT 1
#define USE_STRCOLL 1
#define HAVE_CHARSET_armscii8
#define HAVE_CHARSET_ascii
#define HAVE_CHARSET_big5 1 #define HAVE_CHARSET_big5 1
#define HAVE_CHARSET_cp1250 1 #define HAVE_CHARSET_cp1250 1
/* #undef HAVE_CHARSET_cp1251 */ #define HAVE_CHARSET_cp1251
/* #undef HAVE_CHARSET_cp1256 */ #define HAVE_CHARSET_cp1256
/* #undef HAVE_CHARSET_cp1257 */ #define HAVE_CHARSET_cp1257
/* #undef HAVE_CHARSET_cp850 */ #define HAVE_CHARSET_cp850
/* #undef HAVE_CHARSET_cp852 */ #define HAVE_CHARSET_cp852
/* #undef HAVE_CHARSET_cp866 */ #define HAVE_CHARSET_cp866
#define HAVE_CHARSET_cp932 1 #define HAVE_CHARSET_cp932 1
/* #undef HAVE_CHARSET_dec8 */ #define HAVE_CHARSET_dec8
#define HAVE_CHARSET_eucjpms 1 #define HAVE_CHARSET_eucjpms 1
#define HAVE_CHARSET_euckr 1 #define HAVE_CHARSET_euckr 1
#define HAVE_CHARSET_gb2312 1 #define HAVE_CHARSET_gb2312 1
#define HAVE_CHARSET_gbk 1 #define HAVE_CHARSET_gbk 1
/* #undef HAVE_CHARSET_greek */ #define HAVE_CHARSET_geostd8
/* #undef HAVE_CHARSET_hebrew */ #define HAVE_CHARSET_greek
/* #undef HAVE_CHARSET_hp8 */ #define HAVE_CHARSET_hebrew
/* #undef HAVE_CHARSET_keybcs2 */ #define HAVE_CHARSET_hp8
/* #undef HAVE_CHARSET_koi8r */ #define HAVE_CHARSET_keybcs2
/* #undef HAVE_CHARSET_koi8u */ #define HAVE_CHARSET_koi8r
#define HAVE_CHARSET_koi8u
#define HAVE_CHARSET_latin1 1 #define HAVE_CHARSET_latin1 1
#define HAVE_CHARSET_latin2 1 #define HAVE_CHARSET_latin2 1
/* #undef HAVE_CHARSET_latin5 */ #define HAVE_CHARSET_latin5
/* #undef HAVE_CHARSET_latin7 */ #define HAVE_CHARSET_latin7
/* #undef HAVE_CHARSET_macce */ #define HAVE_CHARSET_macce
/* #undef HAVE_CHARSET_macroman */ #define HAVE_CHARSET_macroman
#define HAVE_CHARSET_sjis 1 #define HAVE_CHARSET_sjis 1
/* #undef HAVE_CHARSET_swe7 */ #define HAVE_CHARSET_swe7
#define HAVE_CHARSET_tis620 1 #define HAVE_CHARSET_tis620 1
#define HAVE_CHARSET_ucs2 1 #define HAVE_CHARSET_ucs2 1
#define HAVE_CHARSET_ujis 1 #define HAVE_CHARSET_ujis 1
#define HAVE_CHARSET_utf8 1 #define HAVE_CHARSET_utf8 1
#define HAVE_UCA_COLLATIONS 1 #define HAVE_UCA_COLLATIONS 1
#define HAVE_BOOL 1 #define HAVE_BOOL 1

View File

@ -192,7 +192,7 @@ typedef struct st_maria_keydef /* Key definition with open & info */
uint16 maxlength; /* max length of (packed) key (auto) */ uint16 maxlength; /* max length of (packed) key (auto) */
uint32 write_comp_flag; /* compare flag for write key (auto) */ uint32 write_comp_flag; /* compare flag for write key (auto) */
uint32 version; /* For concurrent read/write */ uint32 version; /* For concurrent read/write */
uint32 ftparser_nr; /* distinct ftparser number */ uint32 ftkey_nr; /* full-text index number */
HA_KEYSEG *seg, *end; HA_KEYSEG *seg, *end;
struct st_mysql_ftparser *parser; /* Fulltext [pre]parser */ struct st_mysql_ftparser *parser; /* Fulltext [pre]parser */

View File

@ -671,6 +671,7 @@ extern pthread_mutexattr_t my_errorcheck_mutexattr;
typedef ulong my_thread_id; typedef ulong my_thread_id;
extern void my_threadattr_global_init(void);
extern my_bool my_thread_global_init(void); extern my_bool my_thread_global_init(void);
extern void my_thread_global_end(void); extern void my_thread_global_end(void);
extern my_bool my_thread_init(void); extern my_bool my_thread_init(void);

View File

@ -178,7 +178,7 @@ typedef struct st_mi_keydef /* Key definition with open & info */
uint16 maxlength; /* max length of (packed) key (auto) */ uint16 maxlength; /* max length of (packed) key (auto) */
uint16 block_size_index; /* block_size (auto) */ uint16 block_size_index; /* block_size (auto) */
uint32 version; /* For concurrent read/write */ uint32 version; /* For concurrent read/write */
uint32 ftparser_nr; /* distinct ftparser number */ uint32 ftkey_nr; /* full-text index number */
HA_KEYSEG *seg,*end; HA_KEYSEG *seg,*end;
struct st_mysql_ftparser *parser; /* Fulltext [pre]parser */ struct st_mysql_ftparser *parser; /* Fulltext [pre]parser */

View File

@ -78,6 +78,7 @@ EXTRA_DIST = README \
TEST_DIRS = t r include std_data std_data/parts \ TEST_DIRS = t r include std_data std_data/parts \
std_data/ndb_backup50 std_data/ndb_backup51 \ std_data/ndb_backup50 std_data/ndb_backup51 \
std_data/ndb_backup51_data_be std_data/ndb_backup51_data_le \ std_data/ndb_backup51_data_be std_data/ndb_backup51_data_le \
std_data/funcs_1 \
extra/binlog_tests/ extra/rpl_tests \ extra/binlog_tests/ extra/rpl_tests \
suite/binlog suite/binlog/t suite/binlog/r suite/binlog/std_data \ suite/binlog suite/binlog/t suite/binlog/r suite/binlog/std_data \
suite/bugs/data suite/bugs/t suite/bugs/r \ suite/bugs/data suite/bugs/t suite/bugs/r \
@ -93,7 +94,7 @@ TEST_DIRS = t r include std_data std_data/parts \
suite/manual/t suite/manual/r \ suite/manual/t suite/manual/r \
suite/ndb_team suite/ndb_team/t suite/ndb_team/r \ suite/ndb_team suite/ndb_team/t suite/ndb_team/r \
suite/rpl suite/rpl/data suite/rpl/include suite/rpl/r \ suite/rpl suite/rpl/data suite/rpl/include suite/rpl/r \
suite/rpl/t \ suite/rpl/t suite/maria/t suite/maria/r \
suite/stress/include suite/stress/t suite/stress/r \ suite/stress/include suite/stress/t suite/stress/r \
suite/ndb suite/ndb/t suite/ndb/r \ suite/ndb suite/ndb/t suite/ndb/r \
suite/rpl_ndb suite/rpl_ndb/t suite/rpl_ndb/r \ suite/rpl_ndb suite/rpl_ndb/t suite/rpl_ndb/r \

View File

@ -71,6 +71,7 @@ connection master;
select * from t1 order by 1 asc; select * from t1 order by 1 asc;
sync_slave_with_master; sync_slave_with_master;
#check t1 on slave to ensure whether it's identical with on master #check t1 on slave to ensure whether it's identical with on master
select * from t1 order by 1 asc; select * from t1 order by 1 asc;
flush logs; flush logs;
@ -88,9 +89,11 @@ source include/show_binlog_events.inc;
--replace_column 2 # 5 # --replace_column 2 # 5 #
--replace_regex /\/\* xid=.* \*\//\/* XID *\// /table_id: [0-9]+/table_id: #/ --replace_regex /\/\* xid=.* \*\//\/* XID *\// /table_id: [0-9]+/table_id: #/
show binlog events in 'master-bin.000002'; show binlog events in 'master-bin.000002';
--replace_column 2 #
show binary logs; show binary logs;
sync_slave_with_master; sync_slave_with_master;
--source include/wait_for_slave_to_start.inc --source include/wait_for_slave_to_start.inc
--replace_column 2 #
show binary logs; show binary logs;
--replace_result $MASTER_MYPORT MASTER_PORT $VERSION VERSION --replace_result $MASTER_MYPORT MASTER_PORT $VERSION VERSION
--replace_column 2 # 5 # --replace_column 2 # 5 #

View File

@ -16,6 +16,7 @@ set SQL_LOG_BIN=0;
--error 0,1193 --error 0,1193
set debug=""; set debug="";
use mtr; use mtr;
create temporary table error_log ( create temporary table error_log (

View File

@ -637,8 +637,7 @@ drop table t1;
--echo ** connection default --echo ** connection default
connection default; connection default;
drop table t1; drop table t1;
drop user mysqltest@localhost;
DROP user mysqltest@localhost;
disconnect thread1; disconnect thread1;
disconnect thread2; disconnect thread2;

View File

@ -6,6 +6,10 @@
connection default; connection default;
let $default_db=`select database()`; let $default_db=`select database()`;
let $MYSQLD_DATADIR= `SELECT @@datadir`;
# it will used at end of test for wait_for_status_var.inc primitive
let $status_var= Threads_connected;
let $status_var_value= query_get_value(SHOW STATUS LIKE 'Threads_connected', Value, 1);
connection admin; connection admin;
-- echo * shut down mysqld, removed logs, restarted it -- echo * shut down mysqld, removed logs, restarted it
@ -17,52 +21,53 @@ EOF
if (!$mel_keep_control_file) if (!$mel_keep_control_file)
{ {
remove_file $MYSQLTEST_VARDIR/mysqld.1/data/$MARIA_LOG/maria_log_control; --error 0,1
remove_file $MYSQLD_DATADIR/$MARIA_LOG/maria_log_control;
} }
-- error 0,1 -- error 0,1
remove_file $MYSQLTEST_VARDIR/mysqld.1/data/$MARIA_LOG/maria_log.00000001; remove_file $MYSQLD_DATADIR/$MARIA_LOG/maria_log.00000001;
-- error 0,1 -- error 0,1
remove_file $MYSQLTEST_VARDIR/mysqld.1/data/$MARIA_LOG/maria_log.00000002; remove_file $MYSQLD_DATADIR/$MARIA_LOG/maria_log.00000002;
-- error 0,1 -- error 0,1
remove_file $MYSQLTEST_VARDIR/mysqld.1/data/$MARIA_LOG/maria_log.00000003; remove_file $MYSQLD_DATADIR/$MARIA_LOG/maria_log.00000003;
-- error 0,1 -- error 0,1
remove_file $MYSQLTEST_VARDIR/mysqld.1/data/$MARIA_LOG/maria_log.00000004; remove_file $MYSQLD_DATADIR/$MARIA_LOG/maria_log.00000004;
-- error 0,1 -- error 0,1
remove_file $MYSQLTEST_VARDIR/mysqld.1/data/$MARIA_LOG/maria_log.00000005; remove_file $MYSQLD_DATADIR/$MARIA_LOG/maria_log.00000005;
-- error 0,1 -- error 0,1
remove_file $MYSQLTEST_VARDIR/mysqld.1/data/$MARIA_LOG/maria_log.00000006; remove_file $MYSQLD_DATADIR/$MARIA_LOG/maria_log.00000006;
-- error 0,1 -- error 0,1
remove_file $MYSQLTEST_VARDIR/mysqld.1/data/$MARIA_LOG/maria_log.00000007; remove_file $MYSQLD_DATADIR/$MARIA_LOG/maria_log.00000007;
-- error 0,1 -- error 0,1
remove_file $MYSQLTEST_VARDIR/mysqld.1/data/$MARIA_LOG/maria_log.00000008; remove_file $MYSQLD_DATADIR/$MARIA_LOG/maria_log.00000008;
-- error 0,1 -- error 0,1
remove_file $MYSQLTEST_VARDIR/mysqld.1/data/$MARIA_LOG/maria_log.00000009; remove_file $MYSQLD_DATADIR/$MARIA_LOG/maria_log.00000009;
-- error 0,1 -- error 0,1
remove_file $MYSQLTEST_VARDIR/mysqld.1/data/$MARIA_LOG/maria_log.00000010; remove_file $MYSQLD_DATADIR/$MARIA_LOG/maria_log.00000010;
-- error 0,1 -- error 0,1
remove_file $MYSQLTEST_VARDIR/mysqld.1/data/$MARIA_LOG/maria_log.00000011; remove_file $MYSQLD_DATADIR/$MARIA_LOG/maria_log.00000011;
-- error 0,1 -- error 0,1
remove_file $MYSQLTEST_VARDIR/mysqld.1/data/$MARIA_LOG/maria_log.00000012; remove_file $MYSQLD_DATADIR/$MARIA_LOG/maria_log.00000012;
-- error 0,1 -- error 0,1
remove_file $MYSQLTEST_VARDIR/mysqld.1/data/$MARIA_LOG/maria_log.00000013; remove_file $MYSQLD_DATADIR/$MARIA_LOG/maria_log.00000013;
-- error 0,1 -- error 0,1
remove_file $MYSQLTEST_VARDIR/mysqld.1/data/$MARIA_LOG/maria_log.00000014; remove_file $MYSQLD_DATADIR/$MARIA_LOG/maria_log.00000014;
-- error 0,1 -- error 0,1
remove_file $MYSQLTEST_VARDIR/mysqld.1/data/$MARIA_LOG/maria_log.00000015; remove_file $MYSQLD_DATADIR/$MARIA_LOG/maria_log.00000015;
-- error 0,1 -- error 0,1
remove_file $MYSQLTEST_VARDIR/mysqld.1/data/$MARIA_LOG/maria_log.00000016; remove_file $MYSQLD_DATADIR/$MARIA_LOG/maria_log.00000016;
-- error 0,1 -- error 0,1
remove_file $MYSQLTEST_VARDIR/mysqld.1/data/$MARIA_LOG/maria_log.00000017; remove_file $MYSQLD_DATADIR/$MARIA_LOG/maria_log.00000017;
-- error 0,1 -- error 0,1
remove_file $MYSQLTEST_VARDIR/mysqld.1/data/$MARIA_LOG/maria_log.00000018; remove_file $MYSQLD_DATADIR/$MARIA_LOG/maria_log.00000018;
-- error 0,1 -- error 0,1
remove_file $MYSQLTEST_VARDIR/mysqld.1/data/$MARIA_LOG/maria_log.00000019; remove_file $MYSQLD_DATADIR/$MARIA_LOG/maria_log.00000019;
-- error 0,1 -- error 0,1
remove_file $MYSQLTEST_VARDIR/mysqld.1/data/$MARIA_LOG/maria_log.00000020; remove_file $MYSQLD_DATADIR/$MARIA_LOG/maria_log.00000020;
# hope there are not more than these logs... # hope there are not more than these logs...
-- error 0,1 -- error 0,1
remove_file $MYSQLTEST_VARDIR/mysqld.1/data/maria_recovery.trace; remove_file $MYSQLD_DATADIR/maria_recovery.trace;
append_file $MYSQLTEST_VARDIR/tmp/mysqld.1.expect; append_file $MYSQLTEST_VARDIR/tmp/mysqld.1.expect;
restart-maria_empty_logs.inc restart-maria_empty_logs.inc
@ -71,6 +76,8 @@ EOF
--source include/wait_until_connected_again.inc --source include/wait_until_connected_again.inc
connection default; connection default;
# Make sure that all connections are restored
--source include/wait_for_status_var.inc
# Restore current database as the effect of "use" was lost after restart # Restore current database as the effect of "use" was lost after restart
--disable_query_log --disable_query_log
eval use $default_db; eval use $default_db;

View File

@ -18,21 +18,21 @@
if ($mms_copy) if ($mms_copy)
{ {
--echo * copied $mms_tname$mms_table_to_use for $mms_purpose --echo * copied $mms_tname$mms_table_to_use for $mms_purpose
copy_file $MYSQLTEST_VARDIR/mysqld.1/data/mysqltest/$mms_tname$mms_table_to_use.MAD $MYSQLTEST_VARDIR/mysqld.1/data/mysqltest_for_$mms_purpose/$mms_tname$mms_table_to_use.MAD; copy_file $MYSQLD_DATADIR/mysqltest/$mms_tname$mms_table_to_use.MAD $MYSQLD_DATADIR/mysqltest_for_$mms_purpose/$mms_tname$mms_table_to_use.MAD;
copy_file $MYSQLTEST_VARDIR/mysqld.1/data/mysqltest/$mms_tname$mms_table_to_use.MAI $MYSQLTEST_VARDIR/mysqld.1/data/mysqltest_for_$mms_purpose/$mms_tname$mms_table_to_use.MAI; copy_file $MYSQLD_DATADIR/mysqltest/$mms_tname$mms_table_to_use.MAI $MYSQLD_DATADIR/mysqltest_for_$mms_purpose/$mms_tname$mms_table_to_use.MAI;
copy_file $MYSQLTEST_VARDIR/mysqld.1/data/mysqltest/$mms_tname$mms_table_to_use.frm $MYSQLTEST_VARDIR/mysqld.1/data/mysqltest_for_$mms_purpose/$mms_tname$mms_table_to_use.frm; copy_file $MYSQLD_DATADIR/mysqltest/$mms_tname$mms_table_to_use.frm $MYSQLD_DATADIR/mysqltest_for_$mms_purpose/$mms_tname$mms_table_to_use.frm;
} }
if ($mms_reverse_copy) if ($mms_reverse_copy)
{ {
# do not call this without flushing target table first! # do not call this without flushing target table first!
--echo * copied $mms_tname$mms_table_to_use back for $mms_purpose --echo * copied $mms_tname$mms_table_to_use back for $mms_purpose
-- error 0,1
remove_file $MYSQLTEST_VARDIR/mysqld.1/data/mysqltest/$mms_tname$mms_table_to_use.MAD;
copy_file $MYSQLTEST_VARDIR/mysqld.1/data/mysqltest_for_$mms_purpose/$mms_tname$mms_table_to_use.MAD $MYSQLTEST_VARDIR/mysqld.1/data/mysqltest/$mms_tname$mms_table_to_use.MAD;
-- error 0,1 -- error 0,1
remove_file $MYSQLTEST_VARDIR/mysqld.1/data/mysqltest/$mms_tname$mms_table_to_use.MAI; remove_file $MYSQLD_DATADIR/mysqltest/$mms_tname$mms_table_to_use.MAD;
copy_file $MYSQLTEST_VARDIR/mysqld.1/data/mysqltest_for_$mms_purpose/$mms_tname$mms_table_to_use.MAI $MYSQLTEST_VARDIR/mysqld.1/data/mysqltest/$mms_tname$mms_table_to_use.MAI; copy_file $MYSQLD_DATADIR/mysqltest_for_$mms_purpose/$mms_tname$mms_table_to_use.MAD $MYSQLD_DATADIR/mysqltest/$mms_tname$mms_table_to_use.MAD;
-- error 0,1
remove_file $MYSQLD_DATADIR/mysqltest/$mms_tname$mms_table_to_use.MAI;
copy_file $MYSQLD_DATADIR/mysqltest_for_$mms_purpose/$mms_tname$mms_table_to_use.MAI $MYSQLD_DATADIR/mysqltest/$mms_tname$mms_table_to_use.MAI;
} }
if ($mms_compare_physically) if ($mms_compare_physically)
@ -43,7 +43,7 @@ if ($mms_compare_physically)
# If UNDO phase, we nevertheless compare checksums # If UNDO phase, we nevertheless compare checksums
# (see maria_verify_recovery.inc). # (see maria_verify_recovery.inc).
--echo * compared $mms_tname$mms_table_to_use to old version --echo * compared $mms_tname$mms_table_to_use to old version
diff_files $MYSQLTEST_VARDIR/mysqld.1/data/mysqltest/$mms_tname$mms_table_to_use.MAD $MYSQLTEST_VARDIR/mysqld.1/data/mysqltest_for_$mms_purpose/$mms_tname$mms_table_to_use.MAD; diff_files $MYSQLD_DATADIR/mysqltest/$mms_tname$mms_table_to_use.MAD $MYSQLD_DATADIR/mysqltest_for_$mms_purpose/$mms_tname$mms_table_to_use.MAD;
# index file not yet recovered # index file not yet recovered
# diff_files $MYSQLTEST_VARDIR/mysqld.1/data/mysqltest/$mms_tname$mms_table_to_use.MAI $MYSQLTEST_VARDIR/mysqld.1/data/mysqltest_for_$mms_purpose/$mms_tname$mms_table_to_use.MAI; # diff_files $MYSQLD_DATADIR/mysqltest/$mms_tname$mms_table_to_use.MAI $MYSQLD_DATADIR/mysqltest_for_$mms_purpose/$mms_tname$mms_table_to_use.MAI;
} }

View File

@ -30,8 +30,9 @@ while ($mms_table_to_use)
} }
let $mms_copy=0; let $mms_copy=0;
let $MYSQLD_DATADIR= `SELECT @@datadir`;
-- error 0,1 -- error 0,1
remove_file $MYSQLTEST_VARDIR/tmp/mms_for_$mms_purpose.maria_log_control; remove_file $MYSQLTEST_VARDIR/tmp/mms_for_$mms_purpose.maria_log_control;
copy_file $MYSQLTEST_VARDIR/mysqld.1/data/$MARIA_LOG/maria_log_control $MYSQLTEST_VARDIR/tmp/mms_for_$mms_purpose.maria_log_control; copy_file $MYSQLD_DATADIR/$MARIA_LOG/maria_log_control $MYSQLTEST_VARDIR/tmp/mms_for_$mms_purpose.maria_log_control;
connection default; connection default;

View File

@ -56,8 +56,8 @@ if ($mvr_restore_old_snapshot)
# also copy back control file, to force recovery to start from an early # also copy back control file, to force recovery to start from an early
# point, ignoring further checkpoints. # point, ignoring further checkpoints.
-- error 0,1 -- error 0,1
remove_file $MYSQLTEST_VARDIR/mysqld.1/data/$MARIA_LOG/maria_log_control; remove_file $MYSQLD_DATADIR/$MARIA_LOG/maria_log_control;
copy_file $MYSQLTEST_VARDIR/tmp/mms_for_$mms_purpose.maria_log_control $MYSQLTEST_VARDIR/mysqld.1/data/$MARIA_LOG/maria_log_control; copy_file $MYSQLTEST_VARDIR/tmp/mms_for_$mms_purpose.maria_log_control $MYSQLD_DATADIR/$MARIA_LOG/maria_log_control;
} }
--echo * recovery happens --echo * recovery happens

View File

@ -68,9 +68,8 @@ let $_fake_relay_log_purge= `SELECT @@global.relay_log_purge`;
# Create relay log file. # Create relay log file.
copy_file $fake_relay_log $_fake_relay_log; copy_file $fake_relay_log $_fake_relay_log;
# Create relay log index. # Create relay log index.
eval SELECT '$_fake_relay_log' INTO OUTFILE '$_fake_relay_index'; --exec echo $_fake_relay_log > $_fake_relay_index
# Setup replication from existing relay log. # Setup replication from existing relay log.
eval CHANGE MASTER TO MASTER_HOST='dummy.localdomain', RELAY_LOG_FILE='$_fake_relay_log', RELAY_LOG_POS=4; eval CHANGE MASTER TO MASTER_HOST='dummy.localdomain', RELAY_LOG_FILE='$_fake_relay_log', RELAY_LOG_POS=4;

View File

@ -0,0 +1,68 @@
# ==== Purpose ====
#
# Waits until a variable from SHOW STATUS has returned a specified
# value, or until a timeout is reached.
#
# ==== Usage ====
#
# let $status_var= Threads_connected;
# let $status_var_value= 1;
# --source include/wait_for_status_var.inc
#
# Parameters:
#
# $status_var, $status_var_value
# This macro will wait until the variable of SHOW STATUS
# named $status_var gets the value $status_var_value. See
# the example above.
#
# $status_type= GLOBAL|SESSION
# To specify the type (attribute) of status variable and
# run either SHOW GLOBAL STATUS or SHOW SESSION STATUS.
#
# $status_var_comparsion
# By default, this file waits until $status_var becomes equal to
# $status_var_value. If you want to wait until $status_var
# becomes *unequal* to $status_var_value, set this parameter to the
# string '!=', like this:
# let $status_var_comparsion= !=;
#
# $status_timeout
# The default timeout is 1 minute. You can change the timeout by
# setting $status_timeout. The unit is tenths of seconds.
#
if (`SELECT STRCMP('$status_type', '') * STRCMP(UPPER('$status_type'), 'SESSION') * STRCMP(UPPER('$status_type'), 'GLOBAL')`)
{
--echo **** ERROR: Unknown type of variable status_type: allowed values are: SESSION or GLOBAL ****
exit;
}
let $_status_timeout_counter= $status_timeout;
if (!$_status_timeout_counter)
{
let $_status_timeout_counter= 600;
}
let $_status_var_comparsion= $status_var_comparsion;
if (`SELECT '$_status_var_comparsion' = ''`)
{
let $_status_var_comparsion= =;
}
let $_show_status_value= query_get_value("SHOW $status_type STATUS LIKE '$status_var'", Value, 1);
while (`SELECT NOT('$_show_status_value' $_status_var_comparsion '$status_var_value')`)
{
if (!$_status_timeout_counter)
{
--echo **** ERROR: failed while waiting for $status_type $status_var $_status_var_comparison $status_var_value ****
--echo Note: the following output may have changed since the failure was detected
--echo **** Showing STATUS, PROCESSLIST ****
eval SHOW $status_type STATUS LIKE '$status_var';
SHOW PROCESSLIST;
exit;
}
dec $_status_timeout_counter;
sleep 0.1;
let $_show_status_value= query_get_value("SHOW $status_type STATUS LIKE '$status_var'", Value, 1);
}

View File

@ -8,7 +8,7 @@
--disable_result_log --disable_result_log
--disable_query_log --disable_query_log
let $counter= 5000; let $counter= 5000;
let $mysql_errno= 1; let $mysql_errno= 9999;
while ($mysql_errno) while ($mysql_errno)
{ {
# Strangely enough, the server might return "Too many connections" # Strangely enough, the server might return "Too many connections"

View File

@ -5,11 +5,14 @@
--disable_result_log --disable_result_log
--disable_query_log --disable_query_log
let $counter= 500; let $counter= 600;
let $mysql_errno= 0; let $mysql_errno= 0;
while (!$mysql_errno) while (!$mysql_errno)
{ {
--error 0,2002,2003,2006,1053 # Strangely enough, the server might return "Too many connections"
# while being shutdown, thus 1040 is an "allowed" error.
# See BUG#36228.
--error 0,1040,1053,2002,2003,2006,2013
show status; show status;
dec $counter; dec $counter;
@ -17,7 +20,7 @@ while (!$mysql_errno)
{ {
--die Server failed to dissapear --die Server failed to dissapear
} }
--sleep 0.1 --real_sleep 0.1
} }
--enable_query_log --enable_query_log
--enable_result_log --enable_result_log

View File

@ -93,6 +93,7 @@ sub init_pattern {
sub collect_test_cases ($$) { sub collect_test_cases ($$) {
my $suites= shift; # Semicolon separated list of test suites my $suites= shift; # Semicolon separated list of test suites
my %found_suites;
my $opt_cases= shift; my $opt_cases= shift;
my $cases= []; # Array of hash(one hash for each testcase) my $cases= []; # Array of hash(one hash for each testcase)
@ -102,6 +103,7 @@ sub collect_test_cases ($$) {
foreach my $suite (split(",", $suites)) foreach my $suite (split(",", $suites))
{ {
push(@$cases, collect_one_suite($suite, $opt_cases)); push(@$cases, collect_one_suite($suite, $opt_cases));
$found_suites{$suite}= 1;
} }
if ( @$opt_cases ) if ( @$opt_cases )
@ -113,6 +115,12 @@ sub collect_test_cases ($$) {
{ {
my $found= 0; my $found= 0;
my ($sname, $tname, $extension)= split_testname($test_name_spec); my ($sname, $tname, $extension)= split_testname($test_name_spec);
if (defined($sname) && !defined($found_suites{$sname}))
{
$found_suites{$sname}= 1;
push(@$cases, collect_one_suite($sname));
}
foreach my $test ( @$cases ) foreach my $test ( @$cases )
{ {
# test->{name} is always in suite.name format # test->{name} is always in suite.name format
@ -572,6 +580,36 @@ sub optimize_cases {
if ( $default_engine =~ /^innodb/i ); if ( $default_engine =~ /^innodb/i );
} }
} }
# =======================================================
# Check that engine selected by
# --default-storage-engine=<engine> is supported
# =======================================================
my %builtin_engines = ('myisam' => 1, 'memory' => 1);
foreach my $opt ( @{$tinfo->{master_opt}} ) {
my $default_engine=
mtr_match_prefix($opt, "--default-storage-engine=");
if (defined $default_engine){
my $engine_value= $::mysqld_variables{$default_engine};
if ( ! exists $::mysqld_variables{$default_engine} and
! exists $builtin_engines{$default_engine} )
{
$tinfo->{'skip'}= 1;
$tinfo->{'comment'}=
"'$default_engine' not supported";
}
$tinfo->{'ndb_test'}= 1
if ( $default_engine =~ /^ndb/i );
$tinfo->{'innodb_test'}= 1
if ( $default_engine =~ /^innodb/i );
}
}
} }
} }
@ -644,6 +682,7 @@ sub process_opts_file {
} }
} }
############################################################################## ##############################################################################
# #
# Collect information about a single test case # Collect information about a single test case
@ -838,14 +877,14 @@ sub collect_one_test_case {
if ( $tinfo->{'big_test'} and ! $::opt_big_test ) if ( $tinfo->{'big_test'} and ! $::opt_big_test )
{ {
$tinfo->{'skip'}= 1; $tinfo->{'skip'}= 1;
$tinfo->{'comment'}= "Test need 'big-test' option"; $tinfo->{'comment'}= "Test needs 'big-test' option";
return $tinfo return $tinfo
} }
if ( $tinfo->{'need_debug'} && ! $::debug_compiled_binaries ) if ( $tinfo->{'need_debug'} && ! $::debug_compiled_binaries )
{ {
$tinfo->{'skip'}= 1; $tinfo->{'skip'}= 1;
$tinfo->{'comment'}= "Test need debug binaries"; $tinfo->{'comment'}= "Test needs debug binaries";
return $tinfo return $tinfo
} }
@ -908,7 +947,7 @@ sub collect_one_test_case {
if (grep(/^--skip-log-bin/, @::opt_extra_mysqld_opt) ) if (grep(/^--skip-log-bin/, @::opt_extra_mysqld_opt) )
{ {
$tinfo->{'skip'}= 1; $tinfo->{'skip'}= 1;
$tinfo->{'comment'}= "Test need binlog"; $tinfo->{'comment'}= "Test needs binlog";
return $tinfo; return $tinfo;
} }
} }

View File

@ -165,18 +165,11 @@ sub mtr_report_test ($) {
} }
elsif ( $comment ) elsif ( $comment )
{ {
if ( $tinfo->{skip_detected_by_test} ) mtr_report("[ skipped ] $comment");
{
mtr_report("[ skip ]. $comment");
}
else
{
mtr_report("[ skip ] $comment");
}
} }
else else
{ {
mtr_report("[ skip ]"); mtr_report("[ skipped ]");
} }
} }
elsif ($result eq 'MTR_RES_PASSED') elsif ($result eq 'MTR_RES_PASSED')
@ -266,7 +259,6 @@ sub mtr_report_stats ($) {
} }
print "\n"; print "\n";
# Print a list of check_testcases that failed(if any) # Print a list of check_testcases that failed(if any)
if ( $::opt_check_testcases ) if ( $::opt_check_testcases )
{ {
@ -353,7 +345,7 @@ sub mtr_print_line () {
sub mtr_print_thick_line { sub mtr_print_thick_line {
my $char= shift || '='; my $char= shift || '=';
print $char x 60, "\n"; print $char x 78, "\n";
} }

View File

@ -116,8 +116,12 @@ my $path_config_file; # The generated config file, var/my.cnf
our $opt_vs_config = $ENV{'MTR_VS_CONFIG'}; our $opt_vs_config = $ENV{'MTR_VS_CONFIG'};
my $DEFAULT_SUITES= "binlog,federated,main,maria,ndb,rpl,rpl_ndb"; my $DEFAULT_SUITES= "binlog,federated,main,maria,ndb,rpl,rpl_ndb";
my $opt_suites;
our $opt_usage;
our $opt_list_options;
our $opt_suites;
our $opt_suites_default= "main,backup,backup_engines,binlog,rpl,rpl_ndb,ndb"; # Default suites to run
our $opt_script_debug= 0; # Script debugging, enable with --script-debug
our $opt_verbose= 0; # Verbose output, enable with --verbose our $opt_verbose= 0; # Verbose output, enable with --verbose
our $exe_mysql; our $exe_mysql;
our $exe_mysqladmin; our $exe_mysqladmin;
@ -181,10 +185,10 @@ my $opt_mark_progress;
my $opt_sleep; my $opt_sleep;
my $opt_testcase_timeout= 15; # minutes my $opt_testcase_timeout= 15; # 15 minutes
my $opt_suite_timeout = 300; # minutes my $opt_suite_timeout = 360; # 6 hours
my $opt_shutdown_timeout= 10; # seconds my $opt_shutdown_timeout= 10; # 10 seconds
my $opt_start_timeout = 180; # seconds my $opt_start_timeout = 180; # 180 seconds
sub testcase_timeout { return $opt_testcase_timeout * 60; }; sub testcase_timeout { return $opt_testcase_timeout * 60; };
sub suite_timeout { return $opt_suite_timeout * 60; }; sub suite_timeout { return $opt_suite_timeout * 60; };
@ -207,6 +211,7 @@ my @default_valgrind_args= ("--show-reachable=yes");
my @valgrind_args; my @valgrind_args;
my $opt_valgrind_path; my $opt_valgrind_path;
my $opt_callgrind; my $opt_callgrind;
my $opt_debug_sync_timeout= 300; # Default timeout for WAIT_FOR actions.
our $opt_warnings= 1; our $opt_warnings= 1;
@ -261,6 +266,11 @@ sub main {
"mysql-5.1-telco-6.2-merge" => "ndb_team", "mysql-5.1-telco-6.2-merge" => "ndb_team",
"mysql-5.1-telco-6.3" => "ndb_team", "mysql-5.1-telco-6.3" => "ndb_team",
"mysql-6.0-ndb" => "ndb_team", "mysql-6.0-ndb" => "ndb_team",
"mysql-6.0-falcon" => "falcon_team",
"mysql-6.0-falcon-team" => "falcon_team",
"mysql-6.0-falcon-wlad" => "falcon_team",
"mysql-6.0-falcon-chris" => "falcon_team",
"mysql-6.0-falcon-kevin" => "falcon_team",
); );
foreach my $dir ( reverse splitdir($basedir) ) { foreach my $dir ( reverse splitdir($basedir) ) {
@ -808,8 +818,8 @@ sub command_line_setup {
# Extra options used when starting mysqld # Extra options used when starting mysqld
'mysqld=s' => \@opt_extra_mysqld_opt, 'mysqld=s' => \@opt_extra_mysqld_opt,
# Extra options used when starting mysqld # Extra options used when starting mysqltest
'mysqltest=s' => \@opt_extra_mysqltest_opt, 'mysqltest=s' => \@opt_extra_mysqltest_opt,
# Run test on running server # Run test on running server
'extern=s' => \%opts_extern, # Append to hash 'extern=s' => \%opts_extern, # Append to hash
@ -849,6 +859,7 @@ sub command_line_setup {
'valgrind-option=s' => \@valgrind_args, 'valgrind-option=s' => \@valgrind_args,
'valgrind-path=s' => \$opt_valgrind_path, 'valgrind-path=s' => \$opt_valgrind_path,
'callgrind' => \$opt_callgrind, 'callgrind' => \$opt_callgrind,
'debug-sync-timeout=i' => \$opt_debug_sync_timeout,
# Directories # Directories
'tmpdir=s' => \$opt_tmpdir, 'tmpdir=s' => \$opt_tmpdir,
@ -1073,7 +1084,7 @@ sub command_line_setup {
{ {
$opt_tmpdir= "$opt_vardir/tmp" unless $opt_tmpdir; $opt_tmpdir= "$opt_vardir/tmp" unless $opt_tmpdir;
if (check_socket_path_length("$opt_tmpdir/testsocket.sock")) if (check_socket_path_length("$opt_tmpdir/mysql_testsocket.sock"))
{ {
mtr_report("Too long tmpdir path '$opt_tmpdir'", mtr_report("Too long tmpdir path '$opt_tmpdir'",
" creating a shorter one..."); " creating a shorter one...");
@ -1560,6 +1571,18 @@ sub client_arguments ($) {
} }
sub mysqlbinlog_arguments () {
my $exe= mtr_exe_exists("$path_client_bindir/mysqlbinlog");
my $args;
mtr_init_args(\$args);
mtr_add_arg($args, "--defaults-file=%s", $path_config_file);
mtr_add_arg($args, "--local-load=%s", $opt_tmpdir);
client_debug_arg($args, "mysqlbinlog");
return mtr_args2str($exe, @$args);
}
sub mysqlslap_arguments () { sub mysqlslap_arguments () {
my $exe= mtr_exe_maybe_exists("$path_client_bindir/mysqlslap"); my $exe= mtr_exe_maybe_exists("$path_client_bindir/mysqlslap");
if ( $exe eq "" ) { if ( $exe eq "" ) {
@ -1619,6 +1642,24 @@ sub mysql_client_test_arguments(){
return mtr_args2str($exe, @$args); return mtr_args2str($exe, @$args);
} }
sub tool_arguments ($$) {
my($sedir, $tool_name) = @_;
my $exe= my_find_bin($basedir,
[$sedir, "bin"],
$tool_name);
my $args;
mtr_init_args(\$args);
client_debug_arg($args, $tool_name);
return mtr_args2str($exe, @$args);
}
sub have_maria_support () {
my $maria_var= $mysqld_variables{'maria'};
return defined $maria_var and $maria_var eq 'TRUE';
}
# #
# Set environment to be used by childs of this process for # Set environment to be used by childs of this process for
@ -1804,7 +1845,7 @@ sub environment_setup {
$ENV{'MYSQL_SLAP'}= mysqlslap_arguments(); $ENV{'MYSQL_SLAP'}= mysqlslap_arguments();
$ENV{'MYSQL_IMPORT'}= client_arguments("mysqlimport"); $ENV{'MYSQL_IMPORT'}= client_arguments("mysqlimport");
$ENV{'MYSQL_SHOW'}= client_arguments("mysqlshow"); $ENV{'MYSQL_SHOW'}= client_arguments("mysqlshow");
$ENV{'MYSQL_BINLOG'}= client_arguments("mysqlbinlog"); $ENV{'MYSQL_BINLOG'}= mysqlbinlog_arguments();
$ENV{'MYSQL'}= client_arguments("mysql"); $ENV{'MYSQL'}= client_arguments("mysql");
$ENV{'MYSQL_UPGRADE'}= client_arguments("mysql_upgrade"); $ENV{'MYSQL_UPGRADE'}= client_arguments("mysql_upgrade");
$ENV{'MYSQLADMIN'}= native_path($exe_mysqladmin); $ENV{'MYSQLADMIN'}= native_path($exe_mysqladmin);
@ -1840,36 +1881,21 @@ sub environment_setup {
$ENV{'MYSQL_MY_PRINT_DEFAULTS'}= native_path($exe_my_print_defaults); $ENV{'MYSQL_MY_PRINT_DEFAULTS'}= native_path($exe_my_print_defaults);
# ---------------------------------------------------- # ----------------------------------------------------
# Setup env so childs can execute myisampack and myisamchk # myisam tools
# ---------------------------------------------------- # ----------------------------------------------------
$ENV{'MYISAMCHK'}= native_path(mtr_exe_exists( $ENV{'MYISAMLOG'}= tool_arguments("storage/myisam", "myisamlog", );
vs_config_dirs('storage/myisam', 'myisamchk'), $ENV{'MYISAMCHK'}= tool_arguments("storage/myisam", "myisamchk");
vs_config_dirs('myisam', 'myisamchk'), $ENV{'MYISAMPACK'}= tool_arguments("storage/myisam", "myisampack");
"$path_client_bindir/myisamchk", $ENV{'MYISAM_FTDUMP'}= tool_arguments("storage/myisam", "myisam_ftdump");
"$basedir/storage/myisam/myisamchk",
"$basedir/myisam/myisamchk"));
$ENV{'MYISAMPACK'}= native_path(mtr_exe_exists(
vs_config_dirs('storage/myisam', 'myisampack'),
vs_config_dirs('myisam', 'myisampack'),
"$path_client_bindir/myisampack",
"$basedir/storage/myisam/myisampack",
"$basedir/myisam/myisampack"));
# ---------------------------------------------------- # ----------------------------------------------------
# Setup env so childs can execute maria_pack and maria_chk # maria tools
# ---------------------------------------------------- # ----------------------------------------------------
$ENV{'MARIA_CHK'}= native_path(mtr_exe_maybe_exists( if (have_maria_support())
vs_config_dirs('storage/maria', 'maria_chk'), {
vs_config_dirs('maria', 'maria_chk'), $ENV{'MARIA_CHK'}= tool_arguments("storage/maria", "maria_chk");
"$path_client_bindir/maria_chk", $ENV{'MARIA_PACK'}= tool_arguments("storage/maria", "maria_pack");
"$basedir/storage/maria/maria_chk", }
"$basedir/maria/maria_chk"));
$ENV{'MARIA_PACK'}= native_path(mtr_exe_maybe_exists(
vs_config_dirs('storage/maria', 'maria_pack'),
vs_config_dirs('maria', 'maria_pack'),
"$path_client_bindir/maria_pack",
"$basedir/storage/maria/maria_pack",
"$basedir/maria/maria_pack"));
# ---------------------------------------------------- # ----------------------------------------------------
# perror # perror
@ -2592,7 +2618,6 @@ sub mysql_install_db {
mtr_report("Installing system database..."); mtr_report("Installing system database...");
my $args; my $args;
my $cmd_args;
mtr_init_args(\$args); mtr_init_args(\$args);
mtr_add_arg($args, "--no-defaults"); mtr_add_arg($args, "--no-defaults");
mtr_add_arg($args, "--bootstrap"); mtr_add_arg($args, "--bootstrap");
@ -2604,16 +2629,9 @@ sub mysql_install_db {
mtr_add_arg($args, "--loose-skip-maria"); mtr_add_arg($args, "--loose-skip-maria");
mtr_add_arg($args, "--disable-sync-frm"); mtr_add_arg($args, "--disable-sync-frm");
mtr_add_arg($args, "--loose-disable-debug"); mtr_add_arg($args, "--loose-disable-debug");
mtr_add_arg($args, "--tmpdir=.");
mtr_add_arg($args, "--tmpdir=%s", "$opt_vardir/tmp/"); mtr_add_arg($args, "--tmpdir=%s", "$opt_vardir/tmp/");
mtr_add_arg($args, "--core-file"); mtr_add_arg($args, "--core-file");
#
# Setup args for bootstrap.test
#
mtr_init_args(\$cmd_args);
mtr_add_arg($cmd_args, "--loose-skip-maria");
if ( $opt_debug ) if ( $opt_debug )
{ {
mtr_add_arg($args, "--debug=d:t:i:A,%s/log/bootstrap.trace", mtr_add_arg($args, "--debug=d:t:i:A,%s/log/bootstrap.trace",
@ -2631,11 +2649,16 @@ sub mysql_install_db {
my $exe_mysqld_bootstrap = my $exe_mysqld_bootstrap =
$ENV{'MYSQLD_BOOTSTRAP'} || find_mysqld($install_basedir); $ENV{'MYSQLD_BOOTSTRAP'} || find_mysqld($install_basedir);
# MASV add only to bootstrap.test
# Setup args for bootstrap.test
#
#mtr_init_args(\$cmd_args);
#mtr_add_arg($cmd_args, "--loose-skip-maria")
# ---------------------------------------------------------------------- # ----------------------------------------------------------------------
# export MYSQLD_BOOTSTRAP_CMD variable containing <path>/mysqld <args> # export MYSQLD_BOOTSTRAP_CMD variable containing <path>/mysqld <args>
# ---------------------------------------------------------------------- # ----------------------------------------------------------------------
$ENV{'MYSQLD_BOOTSTRAP_CMD'}= "$exe_mysqld_bootstrap " . join(" ", @$args) . $ENV{'MYSQLD_BOOTSTRAP_CMD'}= "$exe_mysqld_bootstrap " . join(" ", @$args);
" " . join(" ", @$cmd_args);
@ -4015,6 +4038,11 @@ sub mysqld_arguments ($$$) {
mtr_add_arg($args, "%s", "--core-file"); mtr_add_arg($args, "%s", "--core-file");
} }
# Enable the debug sync facility, set default wait timeout.
# Facility stays disabled if timeout value is zero.
mtr_add_arg($args, "--loose-debug-sync-timeout=%s",
$opt_debug_sync_timeout);
return $args; return $args;
} }
@ -4087,7 +4115,17 @@ sub mysqld_start ($$) {
# When both --valgrind and --debug is selected, send # When both --valgrind and --debug is selected, send
# all output to the trace file, making it possible to # all output to the trace file, making it possible to
# see the exact location where valgrind complains # see the exact location where valgrind complains
$output= "$opt_vardir/log/".$mysqld->name().".trace";
# Write a message about this to the normal log file
my $trace_name= "$opt_vardir/log/".$mysqld->name().".trace";
mtr_tofile($output,
"NOTE: When running with --valgrind --debug the output from",
"mysqld(where the valgrind messages shows up) is stored ",
"together with the trace file to make it ",
"easier to find the exact position of valgrind errors.",
"See trace file $trace_name.\n");
$output= $trace_name;
} }
if ( defined $exe ) if ( defined $exe )
@ -4664,6 +4702,11 @@ sub start_mysqltest ($) {
} }
} }
foreach my $arg ( @opt_extra_mysqltest_opt )
{
mtr_add_arg($args, "%s", $arg);
}
# ---------------------------------------------------------------------- # ----------------------------------------------------------------------
# export MYSQL_TEST variable containing <path>/mysqltest <args> # export MYSQL_TEST variable containing <path>/mysqltest <args>
# ---------------------------------------------------------------------- # ----------------------------------------------------------------------
@ -5034,6 +5077,7 @@ Options for test case authoring
Options that pass on options Options that pass on options
mysqld=ARGS Specify additional arguments to "mysqld" mysqld=ARGS Specify additional arguments to "mysqld"
mysqltest=ARGS Specify additional arguments to "mysqltest"
Options to run test on running server Options to run test on running server
@ -5116,12 +5160,15 @@ Misc options
to turn off. to turn off.
sleep=SECONDS Passed to mysqltest, will be used as fixed sleep time sleep=SECONDS Passed to mysqltest, will be used as fixed sleep time
debug-sync-timeout=NUM Set default timeout for WAIT_FOR debug sync
actions. Disable facility with NUM=0.
HERE HERE
exit(1); exit(1);
} }
sub list_options ($) { sub list_options ($) {
my $hash= shift; my $hash= shift;

View File

@ -67,10 +67,10 @@ a
2 2
show status like "Qcache_queries_in_cache"; show status like "Qcache_queries_in_cache";
Variable_name Value Variable_name Value
Qcache_queries_in_cache 3 Qcache_queries_in_cache 6
show status like "Qcache_hits"; show status like "Qcache_hits";
Variable_name Value Variable_name Value
Qcache_hits 3 Qcache_hits 0
insert into t1 values (3); insert into t1 values (3);
insert into t2 values (3); insert into t2 values (3);
insert into t1 values (4); insert into t1 values (4);
@ -91,14 +91,14 @@ a
2 2
show status like "Qcache_queries_in_cache"; show status like "Qcache_queries_in_cache";
Variable_name Value Variable_name Value
Qcache_queries_in_cache 1 Qcache_queries_in_cache 2
show status like "Qcache_hits"; show status like "Qcache_hits";
Variable_name Value Variable_name Value
Qcache_hits 4 Qcache_hits 1
commit; commit;
show status like "Qcache_queries_in_cache"; show status like "Qcache_queries_in_cache";
Variable_name Value Variable_name Value
Qcache_queries_in_cache 1 Qcache_queries_in_cache 2
drop table t3,t2,t1; drop table t3,t2,t1;
CREATE TABLE t1 (id int(11) NOT NULL auto_increment, PRIMARY KEY (id)); CREATE TABLE t1 (id int(11) NOT NULL auto_increment, PRIMARY KEY (id));
select count(*) from t1; select count(*) from t1;
@ -217,6 +217,6 @@ Variable_name Value
Qcache_queries_in_cache 1 Qcache_queries_in_cache 1
show status like "Qcache_hits"; show status like "Qcache_hits";
Variable_name Value Variable_name Value
Qcache_hits 2 Qcache_hits 1
set GLOBAL query_cache_size=1048576; set GLOBAL query_cache_size=1048576;
drop table t2; drop table t2;

View File

@ -50,3 +50,5 @@ IS_FREE_LOCK('bug31418')
SELECT IS_USED_LOCK('bug31418'); SELECT IS_USED_LOCK('bug31418');
IS_USED_LOCK('bug31418') IS_USED_LOCK('bug31418')
NULL NULL
FLUSH STATUS;
Value of com_select did not change

View File

@ -801,4 +801,4 @@ eta tipo c
90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk 90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
** connection default ** connection default
drop table t1; drop table t1;
DROP user mysqltest@localhost; drop user mysqltest@localhost;

View File

@ -797,4 +797,4 @@ eta tipo c
90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk 90 11 kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
** connection default ** connection default
drop table t1; drop table t1;
DROP user mysqltest@localhost; drop user mysqltest@localhost;

View File

@ -21,6 +21,25 @@ select * from t1 where c1='b';
c1 c1
a a
drop table t1; drop table t1;
CREATE TABLE t1 (
col1 varchar(100) character set utf8 collate utf8_test_ci
);
INSERT INTO t1 (col1) VALUES ('abcd'),('efgh'),('ijkl');
ALTER TABLE t1 ADD FULLTEXT INDEX (col1);
SELECT * FROM t1 where match (col1) against ('abcd');
col1
abcd
SELECT * FROM t1 where match (col1) against ('abcd' IN BOOLEAN MODE);
col1
abcd
ALTER TABLE t1 ADD (col2 varchar(100) character set latin1);
UPDATE t1 SET col2=col1;
SELECT * FROM t1 WHERE col1=col2 ORDER BY col1;
col1 col2
abcd abcd
efgh efgh
ijkl ijkl
DROP TABLE t1;
show collation like 'ucs2_vn_ci'; show collation like 'ucs2_vn_ci';
Collation Charset Id Default Compiled Sortlen Collation Charset Id Default Compiled Sortlen
ucs2_vn_ci ucs2 242 8 ucs2_vn_ci ucs2 242 8

View File

@ -240,7 +240,7 @@ select hex(s1) from t1;
hex(s1) hex(s1)
41 41
drop table t1; drop table t1;
create table t1 (a text character set utf8, primary key(a(360))); create table t1 (a text character set utf8, primary key(a(371)));
ERROR 42000: Specified key was too long; max key length is 1000 bytes ERROR 42000: Specified key was too long; max key length is 1000 bytes
CREATE TABLE t1 ( a varchar(10) ) CHARACTER SET utf8; CREATE TABLE t1 ( a varchar(10) ) CHARACTER SET utf8;
INSERT INTO t1 VALUES ( 'test' ); INSERT INTO t1 VALUES ( 'test' );

View File

@ -1,14 +1,20 @@
drop table if exists t1; drop table if exists t1;
SHOW GLOBAL VARIABLES LIKE "%e_format"; SELECT variable_name, variable_value
Variable_name Value FROM information_schema.global_variables
date_format %d.%m.%Y WHERE variable_name IN ('date_format', 'datetime_format', 'time_format')
datetime_format %Y-%m-%d %H:%i:%s ORDER BY variable_name;
time_format %H.%i.%s variable_name variable_value
SHOW SESSION VARIABLES LIKE "%e_format"; DATETIME_FORMAT %Y-%m-%d %H:%i:%s
Variable_name Value DATE_FORMAT %d.%m.%Y
date_format %d.%m.%Y TIME_FORMAT %H.%i.%s
datetime_format %Y-%m-%d %H:%i:%s SELECT variable_name, variable_value
time_format %H.%i.%s FROM information_schema.session_variables
WHERE variable_name IN ('date_format', 'datetime_format', 'time_format')
ORDER BY variable_name;
variable_name variable_value
DATETIME_FORMAT %Y-%m-%d %H:%i:%s
DATE_FORMAT %d.%m.%Y
TIME_FORMAT %H.%i.%s
SET time_format='%H%i%s'; SET time_format='%H%i%s';
SET time_format='%H:%i:%s.%f'; SET time_format='%H:%i:%s.%f';
SET time_format='%h-%i-%s.%f%p'; SET time_format='%h-%i-%s.%f%p';
@ -26,11 +32,14 @@ set datetime_format= '%H:%i:%s %Y-%m-%d';
set datetime_format= '%H:%i:%s.%f %m-%d-%Y'; set datetime_format= '%H:%i:%s.%f %m-%d-%Y';
set datetime_format= '%h:%i:%s %p %Y-%m-%d'; set datetime_format= '%h:%i:%s %p %Y-%m-%d';
set datetime_format= '%h:%i:%s.%f %p %Y-%m-%d'; set datetime_format= '%h:%i:%s.%f %p %Y-%m-%d';
SHOW SESSION VARIABLES LIKE "%e_format"; SELECT variable_name, variable_value
Variable_name Value FROM information_schema.session_variables
date_format %m-%d-%Y WHERE variable_name IN ('date_format', 'datetime_format', 'time_format')
datetime_format %h:%i:%s.%f %p %Y-%m-%d ORDER BY variable_name;
time_format %h:%i:%s%p variable_name variable_value
DATETIME_FORMAT %h:%i:%s.%f %p %Y-%m-%d
DATE_FORMAT %m-%d-%Y
TIME_FORMAT %h:%i:%s%p
SET time_format='%h:%i:%s'; SET time_format='%h:%i:%s';
ERROR 42000: Variable 'time_format' can't be set to the value of '%h:%i:%s' ERROR 42000: Variable 'time_format' can't be set to the value of '%h:%i:%s'
SET time_format='%H %i:%s'; SET time_format='%H %i:%s';

View File

@ -72,6 +72,7 @@ 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
set @@global.max_allowed_packet=default;
create table t1(a blob); create table t1(a blob);
insert into t1 values(NULL), (compress('a')); insert into t1 values(NULL), (compress('a'));
select uncompress(a), uncompressed_length(a) from t1; select uncompress(a), uncompressed_length(a) from t1;

View File

@ -655,3 +655,80 @@ show status like 'Last_query_cost';
Variable_name Value Variable_name Value
Last_query_cost 794.837037 Last_query_cost 794.837037
drop table t1,t2,t3,t4,t5,t6,t7; drop table t1,t2,t3,t4,t5,t6,t7;
CREATE TABLE t1 (a int, b int, d int, i int);
INSERT INTO t1 VALUES (1,1,1,1);
CREATE TABLE t2 (b int, c int, j int);
INSERT INTO t2 VALUES (1,1,1);
CREATE TABLE t2_1 (j int);
INSERT INTO t2_1 VALUES (1);
CREATE TABLE t3 (c int, f int);
INSERT INTO t3 VALUES (1,1);
CREATE TABLE t3_1 (f int);
INSERT INTO t3_1 VALUES (1);
CREATE TABLE t4 (d int, e int, k int);
INSERT INTO t4 VALUES (1,1,1);
CREATE TABLE t4_1 (k int);
INSERT INTO t4_1 VALUES (1);
CREATE TABLE t5 (g int, d int, h int, l int);
INSERT INTO t5 VALUES (1,1,1,1);
CREATE TABLE t5_1 (l int);
INSERT INTO t5_1 VALUES (1);
SET optimizer_search_depth = 3;
SELECT 1
FROM t1
LEFT JOIN (
t2 JOIN t3 ON t3.c = t2.c
) ON t2.b = t1.b
LEFT JOIN (
t4 JOIN t5 ON t5.d = t4.d
) ON t4.d = t1.d
;
1
1
SELECT 1
FROM t1
LEFT JOIN (
t2 LEFT JOIN (t3 JOIN t3_1 ON t3.f = t3_1.f) ON t3.c = t2.c
) ON t2.b = t1.b
LEFT JOIN (
t4 JOIN t5 ON t5.d = t4.d
) ON t4.d = t1.d
;
1
1
SELECT 1
FROM t1
LEFT JOIN (
(t2 JOIN t2_1 ON t2.j = t2_1.j) JOIN t3 ON t3.c = t2.c
) ON t2.b = t1.b
LEFT JOIN (
t4 JOIN t5 ON t5.d = t4.d
) ON t4.d = t1.d
;
1
1
SELECT 1
FROM t1
LEFT JOIN (
t2 JOIN t3 ON t3.c = t2.c
) ON t2.b = t1.b
LEFT JOIN (
(t4 JOIN t4_1 ON t4.k = t4_1.k) LEFT JOIN t5 ON t5.d = t4.d
) ON t4.d = t1.d
;
1
1
SELECT 1
FROM t1
LEFT JOIN (
t2 JOIN t3 ON t3.c = t2.c
) ON t2.b = t1.b
LEFT JOIN (
t4 LEFT JOIN (t5 JOIN t5_1 ON t5.l = t5_1.l) ON t5.d = t4.d
) ON t4.d = t1.d
;
1
1
SET optimizer_search_depth = DEFAULT;
DROP TABLE t1,t2,t2_1,t3,t3_1,t4,t4_1,t5,t5_1;
End of 5.0 tests

View File

@ -424,3 +424,10 @@ select f1 from t1 group by f1 having max(f1)=f1;
f1 f1
set session sql_mode=''; set session sql_mode='';
drop table t1; drop table t1;
CREATE TABLE t1 ( a INT, b INT);
INSERT INTO t1 VALUES (1, 1), (2,2), (3, NULL);
SELECT b, COUNT(DISTINCT a) FROM t1 GROUP BY b HAVING b is NULL;
b COUNT(DISTINCT a)
NULL 1
DROP TABLE t1;
End of 5.0 tests

View File

@ -4,7 +4,6 @@ SELECT * INTO @Y FROM init_file.startup limit 1,1;
SELECT YEAR(@X)-YEAR(@Y); SELECT YEAR(@X)-YEAR(@Y);
YEAR(@X)-YEAR(@Y) YEAR(@X)-YEAR(@Y)
0 0
DROP DATABASE init_file;
ok ok
end of 4.1 tests end of 4.1 tests
select * from t1; select * from t1;
@ -20,4 +19,3 @@ y
3 3
11 11
13 13
drop table t1, t2;

View File

@ -1,6 +1,6 @@
drop table if exists t1; drop table if exists t1;
set binlog_format=mixed; set binlog_format=mixed;
set session transaction isolation level read committed; set session transaction isolation level repeatable read;
create table t1(a int not null) engine=innodb DEFAULT CHARSET=latin1; create table t1(a int not null) engine=innodb DEFAULT CHARSET=latin1;
insert into t1 values (1),(2),(3),(4),(5),(6),(7); insert into t1 values (1),(2),(3),(4),(5),(6),(7);
set autocommit=0; set autocommit=0;
@ -8,11 +8,12 @@ select * from t1 where a=3 lock in share mode;
a a
3 3
set binlog_format=mixed; set binlog_format=mixed;
set session transaction isolation level read committed; set session transaction isolation level repeatable read;
set autocommit=0; set autocommit=0;
update t1 set a=10 where a=5; update t1 set a=10 where a=5;
ERROR HY000: Lock wait timeout exceeded; try restarting transaction ERROR HY000: Lock wait timeout exceeded; try restarting transaction
commit; commit;
set session transaction isolation level read committed;
update t1 set a=10 where a=5; update t1 set a=10 where a=5;
select * from t1 where a=2 for update; select * from t1 where a=2 for update;
ERROR HY000: Lock wait timeout exceeded; try restarting transaction ERROR HY000: Lock wait timeout exceeded; try restarting transaction

View File

@ -1,4 +1,8 @@
SELECT f4, f8 FROM bug34300;
f4 f8 f4 f8
xxx zzz xxx zzz
ALTER TABLE bug34300 ADD COLUMN (f10 INT);
SELECT f4, f8 FROM bug34300;
f4 f8 f4 f8
xxx zzz xxx zzz
DROP TABLE bug34300;

View File

@ -48,4 +48,9 @@ Table Op Msg_type Msg_text
test.t1 optimize error Table 'test.t1' is read only test.t1 optimize error Table 'test.t1' is read only
Warnings: Warnings:
Error 1036 Table 't1' is read only Error 1036 Table 't1' is read only
repair table t1;
Table Op Msg_type Msg_text
test.t1 repair error Table 'test.t1' is read only
Warnings:
Error 1036 Table 't1' is read only
drop table t1; drop table t1;

View File

@ -1,2 +1,3 @@
FLUSH STATUS; select 1;
Value of com_select did not change 1
1

View File

@ -3,8 +3,8 @@ create table t1(f1 int);
insert into t1 values (5); insert into t1 values (5);
grant select on test.* to ssl_user1@localhost require SSL; grant select on test.* to ssl_user1@localhost require SSL;
grant select on test.* to ssl_user2@localhost require cipher "DHE-RSA-AES256-SHA"; grant select on test.* to ssl_user2@localhost require cipher "DHE-RSA-AES256-SHA";
grant select on test.* to ssl_user3@localhost require cipher "DHE-RSA-AES256-SHA" AND SUBJECT "/C=SE/ST=Uppsala/L=Uppsala/O=MySQL AB/emailAddress=abstract.mysql.developer@mysql.com"; grant select on test.* to ssl_user3@localhost require cipher "DHE-RSA-AES256-SHA" AND SUBJECT "/C=SE/ST=Uppsala/O=MySQL AB/emailAddress=abstract.mysql.developer@mysql.com";
grant select on test.* to ssl_user4@localhost require cipher "DHE-RSA-AES256-SHA" AND SUBJECT "/C=SE/ST=Uppsala/L=Uppsala/O=MySQL AB/emailAddress=abstract.mysql.developer@mysql.com" ISSUER "/C=SE/ST=Uppsala/L=Uppsala/O=MySQL AB"; grant select on test.* to ssl_user4@localhost require cipher "DHE-RSA-AES256-SHA" AND SUBJECT "/C=SE/ST=Uppsala/O=MySQL AB/emailAddress=abstract.mysql.developer@mysql.com" ISSUER "/C=SE/ST=Uppsala/L=Uppsala/O=MySQL AB";
grant select on test.* to ssl_user5@localhost require cipher "DHE-RSA-AES256-SHA" AND SUBJECT "xxx"; grant select on test.* to ssl_user5@localhost require cipher "DHE-RSA-AES256-SHA" AND SUBJECT "xxx";
flush privileges; flush privileges;
connect(localhost,ssl_user5,,test,MASTER_PORT,MASTER_SOCKET); connect(localhost,ssl_user5,,test,MASTER_PORT,MASTER_SOCKET);

View File

@ -1,6 +1,6 @@
drop table if exists t1; drop table if exists t1;
set binlog_format=mixed; set binlog_format=mixed;
set session transaction isolation level read committed; set session transaction isolation level repeatable read;
create table t1(a int not null) create table t1(a int not null)
engine=innodb engine=innodb
DEFAULT CHARSET=latin1 DEFAULT CHARSET=latin1
@ -13,11 +13,12 @@ select * from t1 where a=3 lock in share mode;
a a
3 3
set binlog_format=mixed; set binlog_format=mixed;
set session transaction isolation level read committed; set session transaction isolation level repeatable read;
set autocommit=0; set autocommit=0;
update t1 set a=10 where a=5; update t1 set a=10 where a=5;
ERROR HY000: Lock wait timeout exceeded; try restarting transaction ERROR HY000: Lock wait timeout exceeded; try restarting transaction
commit; commit;
set session transaction isolation level read committed;
update t1 set a=10 where a=5; update t1 set a=10 where a=5;
select * from t1 where a=2 for update; select * from t1 where a=2 for update;
ERROR HY000: Lock wait timeout exceeded; try restarting transaction ERROR HY000: Lock wait timeout exceeded; try restarting transaction

View File

@ -1656,6 +1656,57 @@ Qcache_hits 1
DROP TABLE t1; DROP TABLE t1;
SET GLOBAL concurrent_insert= @save_concurrent_insert; SET GLOBAL concurrent_insert= @save_concurrent_insert;
SET GLOBAL query_cache_size= default; SET GLOBAL query_cache_size= default;
DROP TABLE IF EXISTS t1;
FLUSH STATUS;
SET GLOBAL query_cache_size=1048576;
CREATE TABLE t1 (a INT);
INSERT INTO t1 VALUES (1),(2),(3),(4),(5);
SHOW STATUS LIKE 'Qcache_queries_in_cache';
Variable_name Value
Qcache_queries_in_cache 0
SELECT * FROM t1;
a
1
2
3
4
5
BEGIN;
SELECT * FROM t1;
a
1
2
3
4
5
COMMIT;
SHOW STATUS LIKE 'Qcache_queries_in_cache';
Variable_name Value
Qcache_queries_in_cache 2
SHOW STATUS LIKE "Qcache_hits";
Variable_name Value
Qcache_hits 0
SELECT * FROM t1;
a
1
2
3
4
5
BEGIN;
SELECT * FROM t1;
a
1
2
3
4
5
COMMIT;
SHOW STATUS LIKE "Qcache_hits";
Variable_name Value
Qcache_hits 2
DROP TABLE t1;
SET GLOBAL query_cache_size= default;
End of 5.0 tests End of 5.0 tests
CREATE TABLE t1 (a ENUM('rainbow')); CREATE TABLE t1 (a ENUM('rainbow'));
INSERT INTO t1 VALUES (),(),(),(),(); INSERT INTO t1 VALUES (),(),(),(),();

View File

@ -4475,4 +4475,40 @@ WHERE 1 IN (SELECT id FROM t1) WITH CHECK OPTION;
DELETE FROM v3; DELETE FROM v3;
DROP VIEW v1,v2,v3; DROP VIEW v1,v2,v3;
DROP TABLE t1,t2; DROP TABLE t1,t2;
#
# BUG#37822: Correlated subquery with IN and IS UNKNOWN provides wrong result
#
create table t1(id integer primary key, g integer, v integer, s char(1));
create table t2(id integer primary key, g integer, v integer, s char(1));
insert into t1 values
(10, 10, 10, 'l'),
(20, 20, 20, 'l'),
(40, 40, 40, 'l'),
(41, 40, null, 'l'),
(50, 50, 50, 'l'),
(51, 50, null, 'l'),
(60, 60, 60, 'l'),
(61, 60, null, 'l'),
(70, 70, 70, 'l'),
(90, 90, null, 'l');
insert into t2 values
(10, 10, 10, 'r'),
(30, 30, 30, 'r'),
(50, 50, 50, 'r'),
(60, 60, 60, 'r'),
(61, 60, null, 'r'),
(70, 70, 70, 'r'),
(71, 70, null, 'r'),
(80, 80, 80, 'r'),
(81, 80, null, 'r'),
(100,100,null, 'r');
select *
from t1
where v in(select v
from t2
where t1.g=t2.g) is unknown;
id g v s
51 50 NULL l
61 60 NULL l
drop table t1, t2;
End of 5.1 tests. End of 5.1 tests.

View File

@ -795,6 +795,60 @@ WHERE INNR.varchar_key > 'n{'
); );
varchar_nokey varchar_nokey
DROP TABLE t1; DROP TABLE t1;
CREATE TABLE t1 (a INT);
INSERT INTO t1 VALUES (1), (2), (11);
# 2nd and 3rd columns should be same
SELECT a, ROW(11, 12) = (SELECT a, 22), ROW(11, 12) IN (SELECT a, 22) FROM t1 GROUP BY t1.a;
a ROW(11, 12) = (SELECT a, 22) ROW(11, 12) IN (SELECT a, 22)
1 0 0
2 0 0
11 0 0
SELECT a, ROW(11, 12) = (SELECT a, 12), ROW(11, 12) IN (SELECT a, 12) FROM t1 GROUP BY t1.a;
a ROW(11, 12) = (SELECT a, 12) ROW(11, 12) IN (SELECT a, 12)
1 0 0
2 0 0
11 1 1
SELECT a, ROW(11, 12) = (SELECT a, 22), ROW(11, 12) IN (SELECT a, 22) FROM t1;
a ROW(11, 12) = (SELECT a, 22) ROW(11, 12) IN (SELECT a, 22)
1 0 0
2 0 0
11 0 0
SELECT a, ROW(11, 12) = (SELECT a, 12), ROW(11, 12) IN (SELECT a, 12) FROM t1;
a ROW(11, 12) = (SELECT a, 12) ROW(11, 12) IN (SELECT a, 12)
1 0 0
2 0 0
11 1 1
SELECT a AS x, ROW(11, 12) = (SELECT MAX(x), 22), ROW(11, 12) IN (SELECT MAX(x), 22) FROM t1;
x ROW(11, 12) = (SELECT MAX(x), 22) ROW(11, 12) IN (SELECT MAX(x), 22)
1 0 0
2 0 0
11 0 0
# 2nd and 3rd columns should be same for x == 11 only
SELECT a AS x, ROW(11, 12) = (SELECT MAX(x), 12), ROW(11, 12) IN (SELECT MAX(x), 12) FROM t1;
x ROW(11, 12) = (SELECT MAX(x), 12) ROW(11, 12) IN (SELECT MAX(x), 12)
1 0 1
2 0 1
11 1 1
DROP TABLE t1;
# both columns should be same
SELECT ROW(1,2) = (SELECT NULL, NULL), ROW(1,2) IN (SELECT NULL, NULL);
ROW(1,2) = (SELECT NULL, NULL) ROW(1,2) IN (SELECT NULL, NULL)
NULL NULL
SELECT ROW(1,2) = (SELECT 1, NULL), ROW(1,2) IN (SELECT 1, NULL);
ROW(1,2) = (SELECT 1, NULL) ROW(1,2) IN (SELECT 1, NULL)
NULL NULL
SELECT ROW(1,2) = (SELECT NULL, 2), ROW(1,2) IN (SELECT NULL, 2);
ROW(1,2) = (SELECT NULL, 2) ROW(1,2) IN (SELECT NULL, 2)
NULL NULL
SELECT ROW(1,2) = (SELECT NULL, 1), ROW(1,2) IN (SELECT NULL, 1);
ROW(1,2) = (SELECT NULL, 1) ROW(1,2) IN (SELECT NULL, 1)
0 0
SELECT ROW(1,2) = (SELECT 1, 1), ROW(1,2) IN (SELECT 1, 1);
ROW(1,2) = (SELECT 1, 1) ROW(1,2) IN (SELECT 1, 1)
0 0
SELECT ROW(1,2) = (SELECT 1, 2), ROW(1,2) IN (SELECT 1, 2);
ROW(1,2) = (SELECT 1, 2) ROW(1,2) IN (SELECT 1, 2)
1 1
End of 5.0 tests End of 5.0 tests
create table t0 (a int); create table t0 (a int);
insert into t0 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9); insert into t0 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9);

View File

@ -492,6 +492,7 @@ a b c
5 NULL 2001-09-09 04:46:59 5 NULL 2001-09-09 04:46:59
6 NULL 2006-06-06 06:06:06 6 NULL 2006-06-06 06:06:06
drop table t1; drop table t1;
End of 4.1 tests
set time_zone= @@global.time_zone; set time_zone= @@global.time_zone;
CREATE TABLE t1 ( CREATE TABLE t1 (
`id` int(11) NOT NULL auto_increment, `id` int(11) NOT NULL auto_increment,
@ -508,3 +509,21 @@ select is_nullable from INFORMATION_SCHEMA.COLUMNS where TABLE_NAME='t1' and COL
is_nullable is_nullable
NO NO
drop table t1; drop table t1;
CREATE TABLE t1 ( f1 INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
f2 TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
f3 TIMESTAMP);
INSERT INTO t1 (f2,f3) VALUES (NOW(), "0000-00-00 00:00:00");
INSERT INTO t1 (f2,f3) VALUES (NOW(), NULL);
INSERT INTO t1 (f2,f3) VALUES (NOW(), ASCII(NULL));
INSERT INTO t1 (f2,f3) VALUES (NOW(), FROM_UNIXTIME('9999999999'));
INSERT INTO t1 (f2,f3) VALUES (NOW(), TIME(NULL));
UPDATE t1 SET f2=NOW(), f3=FROM_UNIXTIME('9999999999') WHERE f1=1;
SELECT f1,f2-f3 FROM t1;
f1 f2-f3
1 0
2 0
3 0
4 0
5 0
DROP TABLE t1;
End of 5.0 tests

View File

@ -399,4 +399,9 @@ select @lastid != id, @lastid, @lastid := id from t1;
0 3 3 0 3 3
1 3 4 1 3 4
drop table t1; drop table t1;
CREATE TABLE t1 (i INT);
CREATE TRIGGER t_after_insert AFTER INSERT ON t1 FOR EACH ROW SET @bug42188 = 10;
INSERT INTO t1 VALUES (1);
INSERT INTO t1 VALUES (1);
DROP TABLE t1;
End of 5.1 tests End of 5.1 tests

View File

@ -26,6 +26,8 @@ set @my_server_id =@@global.server_id;
set @my_slow_launch_time =@@global.slow_launch_time; set @my_slow_launch_time =@@global.slow_launch_time;
set @my_storage_engine =@@global.storage_engine; set @my_storage_engine =@@global.storage_engine;
set @my_thread_cache_size =@@global.thread_cache_size; set @my_thread_cache_size =@@global.thread_cache_size;
set @my_max_allowed_packet =@@global.max_allowed_packet;
set @my_delay_key_write =@@global.delay_key_write;
set @`test`=1; set @`test`=1;
select @test, @`test`, @TEST, @`TEST`, @"teSt"; select @test, @`test`, @TEST, @`TEST`, @"teSt";
@test @`test` @TEST @`TEST` @"teSt" @test @`test` @TEST @`TEST` @"teSt"
@ -999,6 +1001,7 @@ set global slow_launch_time =@my_slow_launch_time;
set global storage_engine =@my_storage_engine; set global storage_engine =@my_storage_engine;
set global thread_cache_size =@my_thread_cache_size; set global thread_cache_size =@my_thread_cache_size;
set global max_allowed_packet = default; set global max_allowed_packet = default;
set global delay_key_write =@my_delay_key_write;
show global variables where Variable_name='table_definition_cache' or show global variables where Variable_name='table_definition_cache' or
Variable_name='table_lock_wait_timeout'; Variable_name='table_lock_wait_timeout';
Variable_name Value Variable_name Value

View File

@ -1,20 +1,33 @@
select 0; SET @@global.wait_timeout= 2;
0 disconnect default;
0 connection wait_con;
flush status; connection default;
select 1; --disable_reconnect;
SELECT 1;
1 1
1 1
select 2; connection wait_con;
connection default;
SELECT 2;
Got one of the listed errors Got one of the listed errors
select 3; --enable_reconnect;
SELECT 3;
3 3
3 3
select 1; disconnection default;
connection wait_con;
connection con1;
--disable_reconnect;
SELECT 1;
1 1
1 1
select 2; connection wait_con;
connection con1;
SELECT 2;
Got one of the listed errors Got one of the listed errors
select 3; --enable_reconnect;
SELECT 3;
3 3
3 3
SET @@global.wait_timeout= <start_value>;
disconnection con1;

View File

@ -1,17 +1,17 @@
-----BEGIN CERTIFICATE----- -----BEGIN CERTIFICATE-----
MIICrTCCAhagAwIBAgIJAIAO/Ybiptv1MA0GCSqGSIb3DQEBBAUAMEQxCzAJBgNV MIICrTCCAhagAwIBAgIJAJXpePU0UOTVMA0GCSqGSIb3DQEBBQUAMEQxCzAJBgNV
BAYTAlNFMRAwDgYDVQQIEwdVcHBzYWxhMRAwDgYDVQQHEwdVcHBzYWxhMREwDwYD BAYTAlNFMRAwDgYDVQQIEwdVcHBzYWxhMRAwDgYDVQQHEwdVcHBzYWxhMREwDwYD
VQQKEwhNeVNRTCBBQjAeFw0wNjA1MDMwODQ4NTRaFw0wOTAxMjcwODQ4NTRaMEQx VQQKEwhNeVNRTCBBQjAeFw0wOTAxMjgxMDQ5NDZaFw0xNDAxMjcxMDQ5NDZaMEQx
CzAJBgNVBAYTAlNFMRAwDgYDVQQIEwdVcHBzYWxhMRAwDgYDVQQHEwdVcHBzYWxh CzAJBgNVBAYTAlNFMRAwDgYDVQQIEwdVcHBzYWxhMRAwDgYDVQQHEwdVcHBzYWxh
MREwDwYDVQQKEwhNeVNRTCBBQjCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA MREwDwYDVQQKEwhNeVNRTCBBQjCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA
+C46EQl1u7tQ6gb9eqc8V079gr8YmDPCEqtjO8bCIbchpjOpDITx0WZz36Sn9E72 4XQHAe5R1+TXC8noZtWf+d5E0v1C59FWpn9SWEUCBjE5UiIwuJvi4Y+7xWGOXLAI
GPJwNip4FxLaPRIA3xNQHM5cE5U53qznlRx1Fc4O3hcWCvyCqNDl/vzPAh3pI6Bl /JzJx5gNXLBiTsE/zh0uX9fKlajLhxB0GN+QU0ZlpQ1BeYipEcNXeI/7cT499f6v
Ku9hfHXpp93W812smVPe9haShEXGgbEPYGzvOfVdu/MCAwEAAaOBpjCBozAdBgNV XWabnTflivdCgHSWUOQ20/Lzs6kP6/e6OoZd/DPSjPECAwEAAaOBpjCBozAdBgNV
HQ4EFgQUjIy/6OCTmqtPHBFha6/qzVk3yTcwdAYDVR0jBG0wa4AUjIy/6OCTmqtP HQ4EFgQU8uLqVWWkmuKsnZf1RWz294wRrd8wdAYDVR0jBG0wa4AU8uLqVWWkmuKs
HBFha6/qzVk3yTehSKRGMEQxCzAJBgNVBAYTAlNFMRAwDgYDVQQIEwdVcHBzYWxh nZf1RWz294wRrd+hSKRGMEQxCzAJBgNVBAYTAlNFMRAwDgYDVQQIEwdVcHBzYWxh
MRAwDgYDVQQHEwdVcHBzYWxhMREwDwYDVQQKEwhNeVNRTCBBQoIJAIAO/Ybiptv1 MRAwDgYDVQQHEwdVcHBzYWxhMREwDwYDVQQKEwhNeVNRTCBBQoIJAJXpePU0UOTV
MAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEEBQADgYEA8lD9zyB820Oq1aj7ZafX MAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADgYEAMMTE5sDN+Z0ZlV7KvH3g
De/hbdt9RIl2tzgw2K3r1KZGdXJVL0vSt5fZ51Nq9lg7OPJy3iXf+caBJEp0IJpB 6+aKvql8dTpRT3hYukeQlWua0nq74WPGVw0c4e/M/vbiMwmJcCYpB9pd4+dHqzSw
uf4Gfr6zfXw+UlY6ZthRtHQHoXKcbskECjH5/ps/Uaa+dpVQ9O+Ii1rPzmgo6ztM aPyoenjY6UF8n7B4quWy3SIUk2LSHeJLW+kzJn2afN9gvipFhdVh/uU2TIyLGOur
s+xZ46ESBt4WiHXm8kwbU9Y= Z/vmJX2W7hF1uqPnbfa8Lrw=
-----END CERTIFICATE----- -----END CERTIFICATE-----

View File

@ -1,42 +1,55 @@
Certificate: Certificate:
Data: Data:
Version: 1 (0x0) Version: 3 (0x2)
Serial Number: 1 (0x1) Serial Number: 3 (0x3)
Signature Algorithm: md5WithRSAEncryption Signature Algorithm: sha1WithRSAEncryption
Issuer: C=SE, ST=Uppsala, L=Uppsala, O=MySQL AB Issuer: C=SE, ST=Uppsala, L=Uppsala, O=MySQL AB
Validity Validity
Not Before: May 3 08:55:39 2006 GMT Not Before: Jan 28 11:04:39 2009 GMT
Not After : Jan 27 08:55:39 2009 GMT Not After : Jan 28 11:04:39 2010 GMT
Subject: C=SE, ST=Uppsala, L=Uppsala, O=MySQL AB/emailAddress=abstract.mysql.developer@mysql.com Subject: C=SE, ST=Uppsala, O=MySQL AB/emailAddress=abstract.mysql.developer@mysql.com
Subject Public Key Info: Subject Public Key Info:
Public Key Algorithm: rsaEncryption Public Key Algorithm: rsaEncryption
RSA Public Key: (512 bit) RSA Public Key: (512 bit)
Modulus (512 bit): Modulus (512 bit):
00:d8:db:68:28:49:84:4d:d6:0f:5c:bc:3d:9a:ab: 00:e1:52:30:2c:d9:be:64:28:91:5d:7a:fd:d9:e9:
70:d5:3e:f5:b5:17:ba:ef:e1:f8:87:54:30:22:1f: 14:35:7a:d2:94:4e:91:46:e0:db:9f:6b:79:f4:4c:
81:07:bf:f9:24:7f:8a:54:10:e9:5f:e6:99:50:04: ac:6e:07:61:34:86:74:62:a7:a8:44:af:fa:87:87:
d4:3b:55:a9:f1:52:ad:12:2b:5a:da:5c:be:8c:3e: a8:7d:42:61:ff:ab:50:d4:7b:bf:75:fa:d5:d5:b3:
5b:9e:b0:5a:19 74:fb:56:1e:37
Exponent: 65537 (0x10001) Exponent: 65537 (0x10001)
Signature Algorithm: md5WithRSAEncryption X509v3 extensions:
07:57:bf:07:92:c2:8e:86:24:6b:0a:bf:e5:31:21:44:c3:60: X509v3 Basic Constraints:
02:a6:ac:9e:f7:db:7a:6e:fc:4f:d4:7b:54:18:80:47:d2:4a: CA:FALSE
63:0e:e3:f8:af:6e:58:e3:97:5a:2b:82:5d:76:20:d1:33:a0: X509v3 Subject Key Identifier:
f5:43:a1:d1:51:f4:ca:c8:b3:1a:66:4e:0e:55:df:d2:e8:fa: 58:30:B5:9B:2C:05:94:06:BA:3D:3C:F0:B2:CD:1D:67:65:E3:7F:85
83:18:42:f5:ec:66:40:f0:39:e8:f9:d7:cf:f6:dd:e4:7b:69: X509v3 Authority Key Identifier:
dd:0c:92:d8:52:95:43:6f:29:3d:f0:8d:4c:dd:52:ea:6b:a0: keyid:F2:E2:EA:55:65:A4:9A:E2:AC:9D:97:F5:45:6C:F6:F7:8C:11:AD:DF
39:0f:dc:59:a7:5c:37:6b:8b:05:44:b7:69:ea:a3:58:e0:4e: DirName:/C=SE/ST=Uppsala/L=Uppsala/O=MySQL AB
ce:d6 serial:95:E9:78:F5:34:50:E4:D5
Signature Algorithm: sha1WithRSAEncryption
05:19:e3:13:14:fc:c5:28:bf:69:f8:00:b3:25:cb:bd:ca:9f:
2f:4c:b3:a8:04:11:f0:74:27:bd:82:2c:b4:49:9b:a7:59:f0:
f7:87:d1:e0:ba:99:a2:fe:4b:1d:10:6f:e4:a2:b3:cd:7f:8b:
68:31:46:ee:cd:9e:e2:47:e1:4c:fa:74:d1:e2:8b:cc:a0:4b:
a8:24:d1:a4:c3:6b:2a:c6:28:cd:41:e0:06:48:e6:cf:f2:3c:
ca:37:95:d7:29:64:6b:91:91:83:e7:ac:c8:0b:87:bc:da:a6:
aa:f1:44:43:c8:74:7b:15:26:91:2e:03:c4:71:50:6c:f8:68:
dc:8c
-----BEGIN CERTIFICATE----- -----BEGIN CERTIFICATE-----
MIIB5jCCAU8CAQEwDQYJKoZIhvcNAQEEBQAwRDELMAkGA1UEBhMCU0UxEDAOBgNV MIICfzCCAeigAwIBAgIBAzANBgkqhkiG9w0BAQUFADBEMQswCQYDVQQGEwJTRTEQ
BAgTB1VwcHNhbGExEDAOBgNVBAcTB1VwcHNhbGExETAPBgNVBAoTCE15U1FMIEFC MA4GA1UECBMHVXBwc2FsYTEQMA4GA1UEBxMHVXBwc2FsYTERMA8GA1UEChMITXlT
MB4XDTA2MDUwMzA4NTUzOVoXDTA5MDEyNzA4NTUzOVowdzELMAkGA1UEBhMCU0Ux UUwgQUIwHhcNMDkwMTI4MTEwNDM5WhcNMTAwMTI4MTEwNDM5WjBlMQswCQYDVQQG
EDAOBgNVBAgTB1VwcHNhbGExEDAOBgNVBAcTB1VwcHNhbGExETAPBgNVBAoTCE15 EwJTRTEQMA4GA1UECBMHVXBwc2FsYTERMA8GA1UEChMITXlTUUwgQUIxMTAvBgkq
U1FMIEFCMTEwLwYJKoZIhvcNAQkBFiJhYnN0cmFjdC5teXNxbC5kZXZlbG9wZXJA hkiG9w0BCQEWImFic3RyYWN0Lm15c3FsLmRldmVsb3BlckBteXNxbC5jb20wXDAN
bXlzcWwuY29tMFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBANjbaChJhE3WD1y8PZqr BgkqhkiG9w0BAQEFAANLADBIAkEA4VIwLNm+ZCiRXXr92ekUNXrSlE6RRuDbn2t5
cNU+9bUXuu/h+IdUMCIfgQe/+SR/ilQQ6V/mmVAE1DtVqfFSrRIrWtpcvow+W56w 9EysbgdhNIZ0YqeoRK/6h4eofUJh/6tQ1Hu/dfrV1bN0+1YeNwIDAQABo4GjMIGg
WhkCAwEAATANBgkqhkiG9w0BAQQFAAOBgQAHV78HksKOhiRrCr/lMSFEw2ACpqye MAkGA1UdEwQCMAAwHQYDVR0OBBYEFFgwtZssBZQGuj088LLNHWdl43+FMHQGA1Ud
99t6bvxP1HtUGIBH0kpjDuP4r25Y45daK4JddiDRM6D1Q6HRUfTKyLMaZk4OVd/S IwRtMGuAFPLi6lVlpJrirJ2X9UVs9veMEa3foUikRjBEMQswCQYDVQQGEwJTRTEQ
6PqDGEL17GZA8Dno+dfP9t3ke2ndDJLYUpVDbyk98I1M3VLqa6A5D9xZp1w3a4sF MA4GA1UECBMHVXBwc2FsYTEQMA4GA1UEBxMHVXBwc2FsYTERMA8GA1UEChMITXlT
RLdp6qNY4E7O1g== UUwgQUKCCQCV6Xj1NFDk1TANBgkqhkiG9w0BAQUFAAOBgQAFGeMTFPzFKL9p+ACz
Jcu9yp8vTLOoBBHwdCe9giy0SZunWfD3h9Hgupmi/ksdEG/korPNf4toMUbuzZ7i
R+FM+nTR4ovMoEuoJNGkw2sqxijNQeAGSObP8jzKN5XXKWRrkZGD56zIC4e82qaq
8URDyHR7FSaRLgPEcVBs+GjcjA==
-----END CERTIFICATE----- -----END CERTIFICATE-----

View File

@ -1,9 +1,9 @@
-----BEGIN RSA PRIVATE KEY----- -----BEGIN RSA PRIVATE KEY-----
MIIBOgIBAAJBANjbaChJhE3WD1y8PZqrcNU+9bUXuu/h+IdUMCIfgQe/+SR/ilQQ MIIBOQIBAAJBAOFSMCzZvmQokV16/dnpFDV60pROkUbg259refRMrG4HYTSGdGKn
6V/mmVAE1DtVqfFSrRIrWtpcvow+W56wWhkCAwEAAQJAK27WT6tZylUjQomZNQ89 qESv+oeHqH1CYf+rUNR7v3X61dWzdPtWHjcCAwEAAQJAXYooM8ZlcuEgj+VKU1ee
TBiOEbUtBbqWklQ0R8FTkH9uKV+8KYQ+k+tMkoAEGFfChB0YfofNQ2KZYWWw4yOB qyEFIMqJJxqcMk+E/nWCM96WxCP3zHNSrqNfSpI3ld7QzMwhdRz+gFLxT2gGNpIw
WQIhAPXXDQt73aou10s+cmKM3C3WzLmIZtrvm9wNBXWDGxgTAiEA4dG4cXrZfa1M MQIhAPxzM/lDihe67X3ADYtDl9ZjA8Pm430x9sXlcxI17tCZAiEA5H1SyFl4mUee
TTbjzNU1/Jf50/M8SvZDWMPQWxJ8oqMCIH6zBpYUkHlVCsBMvsbrsc4uFfTIx7mu 9VnfSC2XGW7lwz72ZygfVX+b7tLWF08CIEh40gzW5MfXM+KLxdea+fXjyursV5ZT
I7WVQGr/1sbhAiBf4uFirjtztgZUMx5/d3k5DH80lG/hlLf8FQl/4lWx6QIhAPHw R6KcMiKiNQLRAiAcmHqlzFzFgisotai2Fc6VRkXHG7gmzOSvBJt1VjmpDQIge6jf
CXfPUbUFl4r/i9Br5+exGol50qX4F3aP5Sh5EnZT 2N7whTdvC4ferB+zUlgWQdyvx1c3T4gnt6PYdaY=
-----END RSA PRIVATE KEY----- -----END RSA PRIVATE KEY-----

View File

@ -1,16 +0,0 @@
-----BEGIN CERTIFICATE-----
MIICljCCAX4CAQEwDQYJKoZIhvcNAQEEBQAwUTELMAkGA1UEBhMCU0UxEDAOBgNV
BAgTB1VwcHNhbGExETAPBgNVBAoTCE15U1FMIEFCMRAwDgYDVQQLEwdTdXBwb3J0
MQswCQYDVQQDEwJDQTAeFw0wNjA4MjgxMTA4NTlaFw0wOTA1MjQxMTA4NTlaMFUx
CzAJBgNVBAYTAlNFMRAwDgYDVQQIEwdVcHBzYWxhMREwDwYDVQQKEwhNeVNRTCBB
QjEQMA4GA1UECxMHU3VwcG9ydDEPMA0GA1UEAxMGc2VydmVyMIGfMA0GCSqGSIb3
DQEBAQUAA4GNADCBiQKBgQDEiOVZcWYzZe7I8xhhUwCzvmkZifAXeMTH+8XKGLHX
NWF3FLduAmeAad9oOZgBKb+oWTdRDWXqwu6nYYUBfrUpaY27/wLkgWRgewL3LZnw
W2FjhNsjx3gI2NK+Pix47q9d+a+5T4AW5+lK499l0K0k2cvyFdIerhDW8R0t8Uru
twIDAQABMA0GCSqGSIb3DQEBBAUAA4IBAQC2LQcqLg52RbelWrKutlJ5E6rzugnJ
ZAlbN9sM98O2xFiIGDA3tb5j9LAEjE0E+RqdptEYnvy9b3szhLYXtIILZTkClf9r
Uwu1nUYPTyp+9ZYCa4fovOU5h1Ogv+9UZPds/LPDwWEn8K+lvscB4X57wJyuoEck
1Mu41OA6h77181MydSdgZo0oquJDWhdCsYHXVFVs0F6naMm2uPMCTDiQVlhHJuTO
VQMNIwxRFtvsv2tpsXsaP/8sT32d5CFebfxxSVnqQvJ4ZdIrphl6L43XU01rsEcE
K8KYujZQ6SKws+HVcGqsr7TPgJfJE6D+5RazvvIQISPvx4eduebqzqdC
-----END CERTIFICATE-----

View File

@ -1,42 +1,55 @@
Certificate: Certificate:
Data: Data:
Version: 1 (0x0) Version: 3 (0x2)
Serial Number: 1 (0x1) Serial Number: 1 (0x1)
Signature Algorithm: md5WithRSAEncryption Signature Algorithm: sha1WithRSAEncryption
Issuer: C=SE, ST=Uppsala, L=Uppsala, O=MySQL AB Issuer: C=SE, ST=Uppsala, L=Uppsala, O=MySQL AB
Validity Validity
Not Before: May 3 08:54:13 2006 GMT Not Before: Jan 28 10:55:13 2009 GMT
Not After : Jan 27 08:54:13 2009 GMT Not After : Jan 28 10:55:13 2010 GMT
Subject: C=SE, ST=Uppsala, L=Uppsala, O=MySQL AB, CN=localhost/emailAddress=abstract.mysql.developer@mysql.com Subject: C=SE, ST=Uppsala, O=MySQL AB, CN=localhost/emailAddress=abstract.mysql.developer@mysql.com
Subject Public Key Info: Subject Public Key Info:
Public Key Algorithm: rsaEncryption Public Key Algorithm: rsaEncryption
RSA Public Key: (512 bit) RSA Public Key: (512 bit)
Modulus (512 bit): Modulus (512 bit):
00:d9:fd:da:b3:fb:7c:e0:b0:03:be:97:c6:a4:36: 00:b6:8f:e5:b7:b4:86:83:13:8a:f9:bf:63:cb:64:
ac:71:af:bb:2d:e5:84:ed:f3:8f:2b:eb:11:e5:aa: 2d:b9:51:d1:de:ab:7b:45:1f:aa:b5:66:73:13:f9:
66:ed:bf:62:6b:e3:ce:fa:80:ed:90:ff:b9:4a:39: a6:07:d5:ba:7c:fa:92:bd:37:e2:ad:87:db:3e:b6:
20:40:b6:f2:99:bf:2f:33:b5:f2:ec:3a:90:60:1d: 6a:12:64:f8:ee:17:e3:15:06:2f:a8:82:68:bf:57:
9e:94:7e:a4:1b 8d:c3:04:98:27
Exponent: 65537 (0x10001) Exponent: 65537 (0x10001)
Signature Algorithm: md5WithRSAEncryption X509v3 extensions:
de:5e:35:cd:7b:11:e6:7c:c5:7c:d6:27:4e:72:12:49:42:eb: X509v3 Basic Constraints:
6f:2c:96:f3:f4:00:78:a7:4f:9f:2d:7b:d7:30:39:af:49:4d: CA:FALSE
df:b1:55:0d:30:be:23:6f:06:67:fd:dd:ba:98:66:36:c6:32: X509v3 Subject Key Identifier:
b7:ed:63:fc:aa:49:cd:4f:72:98:3b:13:0e:f6:28:d7:d4:eb: D9:9A:B8:5F:22:EA:04:10:C8:25:7D:82:57:E6:2E:FD:19:29:E7:DA
04:6b:dc:e8:c7:04:80:92:e4:04:86:0b:ed:32:25:76:1d:a9: X509v3 Authority Key Identifier:
5c:a9:2c:18:2c:bd:bc:15:ed:e1:76:96:4d:bb:0d:41:44:06: keyid:F2:E2:EA:55:65:A4:9A:E2:AC:9D:97:F5:45:6C:F6:F7:8C:11:AD:DF
2c:ad:45:bb:db:61:ad:17:11:cb:49:70:67:eb:c6:27:d3:91: DirName:/C=SE/ST=Uppsala/L=Uppsala/O=MySQL AB
c8:f2 serial:95:E9:78:F5:34:50:E4:D5
Signature Algorithm: sha1WithRSAEncryption
54:07:2d:21:0b:a5:af:3b:58:23:32:5e:56:7f:ab:58:63:48:
91:aa:38:90:89:16:f9:cc:bf:a4:0e:78:2b:9f:c5:1b:58:a6:
e6:08:8f:2e:ae:97:03:21:9b:f1:cd:c0:26:8f:1d:d7:28:27:
a0:8e:81:09:1b:1c:0f:c9:a5:41:3a:2d:44:3f:9c:fa:87:ff:
c8:4c:2b:44:f7:1b:c1:3e:4f:01:7f:e9:26:cc:9f:1c:06:b5:
0b:27:d1:10:90:be:93:0c:9c:e7:b0:d1:ea:27:99:4e:06:14:
0c:7a:e9:c1:52:c5:33:68:bc:61:0d:db:81:3b:57:48:57:bf:
42:9a
-----BEGIN CERTIFICATE----- -----BEGIN CERTIFICATE-----
MIIB+zCCAWQCAQEwDQYJKoZIhvcNAQEEBQAwRDELMAkGA1UEBhMCU0UxEDAOBgNV MIICkzCCAfygAwIBAgIBATANBgkqhkiG9w0BAQUFADBEMQswCQYDVQQGEwJTRTEQ
BAgTB1VwcHNhbGExEDAOBgNVBAcTB1VwcHNhbGExETAPBgNVBAoTCE15U1FMIEFC MA4GA1UECBMHVXBwc2FsYTEQMA4GA1UEBxMHVXBwc2FsYTERMA8GA1UEChMITXlT
MB4XDTA2MDUwMzA4NTQxM1oXDTA5MDEyNzA4NTQxM1owgYsxCzAJBgNVBAYTAlNF UUwgQUIwHhcNMDkwMTI4MTA1NTEzWhcNMTAwMTI4MTA1NTEzWjB5MQswCQYDVQQG
MRAwDgYDVQQIEwdVcHBzYWxhMRAwDgYDVQQHEwdVcHBzYWxhMREwDwYDVQQKEwhN EwJTRTEQMA4GA1UECBMHVXBwc2FsYTERMA8GA1UEChMITXlTUUwgQUIxEjAQBgNV
eVNRTCBBQjESMBAGA1UEAxMJbG9jYWxob3N0MTEwLwYJKoZIhvcNAQkBFiJhYnN0 BAMTCWxvY2FsaG9zdDExMC8GCSqGSIb3DQEJARYiYWJzdHJhY3QubXlzcWwuZGV2
cmFjdC5teXNxbC5kZXZlbG9wZXJAbXlzcWwuY29tMFwwDQYJKoZIhvcNAQEBBQAD ZWxvcGVyQG15c3FsLmNvbTBcMA0GCSqGSIb3DQEBAQUAA0sAMEgCQQC2j+W3tIaD
SwAwSAJBANn92rP7fOCwA76XxqQ2rHGvuy3lhO3zjyvrEeWqZu2/YmvjzvqA7ZD/ E4r5v2PLZC25UdHeq3tFH6q1ZnMT+aYH1bp8+pK9N+Kth9s+tmoSZPjuF+MVBi+o
uUo5IEC28pm/LzO18uw6kGAdnpR+pBsCAwEAATANBgkqhkiG9w0BAQQFAAOBgQDe gmi/V43DBJgnAgMBAAGjgaMwgaAwCQYDVR0TBAIwADAdBgNVHQ4EFgQU2Zq4XyLq
XjXNexHmfMV81idOchJJQutvLJbz9AB4p0+fLXvXMDmvSU3fsVUNML4jbwZn/d26 BBDIJX2CV+Yu/Rkp59owdAYDVR0jBG0wa4AU8uLqVWWkmuKsnZf1RWz294wRrd+h
mGY2xjK37WP8qknNT3KYOxMO9ijX1OsEa9zoxwSAkuQEhgvtMiV2HalcqSwYLL28 SKRGMEQxCzAJBgNVBAYTAlNFMRAwDgYDVQQIEwdVcHBzYWxhMRAwDgYDVQQHEwdV
Fe3hdpZNuw1BRAYsrUW722GtFxHLSXBn68Yn05HI8g== cHBzYWxhMREwDwYDVQQKEwhNeVNRTCBBQoIJAJXpePU0UOTVMA0GCSqGSIb3DQEB
BQUAA4GBAFQHLSELpa87WCMyXlZ/q1hjSJGqOJCJFvnMv6QOeCufxRtYpuYIjy6u
lwMhm/HNwCaPHdcoJ6COgQkbHA/JpUE6LUQ/nPqH/8hMK0T3G8E+TwF/6SbMnxwG
tQsn0RCQvpMMnOew0eonmU4GFAx66cFSxTNovGEN24E7V0hXv0Ka
-----END CERTIFICATE----- -----END CERTIFICATE-----

View File

@ -1,18 +0,0 @@
-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: DES-EDE3-CBC,D2BE7598C7E3BDA5
1W3qPgw5ut80OhaAGVZZe/tfFiBAlwpX1SohdApWj+QYP+dK/mdEBhgI3BXTFNLW
pJqDTzGlKtft7hHN6QDFEdZMKxej5+2iLu14V62o+5yQgUoqswoXcmmqJCJ7AvyJ
yMBmGAzxRFlQsT8lf6o5TS1/efBvjvWhh3NG2Zq2LpyhWRRqA3kNhzktzt2WjDZe
ZkKmZJJnArr/Aw7jEBC4sH+nmgxoR18GzDddRG12hv1AWyHc3+VisTBpyNzeBy17
rxuQtqLzkAJmId723ddw83RVNSvBUUS3G0rx5O3HPobvZK89UqVxcXtIgc11WTVU
N3DbcJq5it43Loo0W3gAngtESDm2E3rTadrmdUSDGv2wQ5dNFl6cQ1f397Sdd/WC
A0grn1tKjJ6COp80Ymdyvn+stjv/+Rl1/KHSeG0lNeZxqjPPOJ7NHaKv7qjYsJ6W
LT35/Xc3oCo5qk9FOlq/0tGjHxf6RcFr5U7k5ILKZs+RmvJ4Sv/VYShLfLTcfGbJ
wBNfRKvcHZBQJQBb1+s/kRrjFFtvhrUwLz4+c9kskp+t4qRVYywUAnGGGsMs/GPm
wYsLQZO6Bs5/taaVUyaJQW015J7FGGv+/7/A1dIhu73S/Xl/YcFbX/CMEVq2Lxxd
hZdFIuaZ7LE+0MDQWsvYMYPDPLDH11diczb/jeKBdLPOzk/FUqVx3Fin1PpcaBxY
b+7oZJhYdg/rAWDeQ/nji9qnEG8waK6x1hdkYPOrqqWQPfgM/LPsSrgWeuTSdx2B
Ixi01UlBb5UP4K7UrjyddPobmcVjXaQLNe7zaq0+OS3UnIG85GtHrQ==
-----END RSA PRIVATE KEY-----

View File

@ -1,9 +1,9 @@
-----BEGIN RSA PRIVATE KEY----- -----BEGIN RSA PRIVATE KEY-----
MIIBOgIBAAJBANn92rP7fOCwA76XxqQ2rHGvuy3lhO3zjyvrEeWqZu2/YmvjzvqA MIIBOQIBAAJBALaP5be0hoMTivm/Y8tkLblR0d6re0UfqrVmcxP5pgfVunz6kr03
7ZD/uUo5IEC28pm/LzO18uw6kGAdnpR+pBsCAwEAAQJBAMieYdpmRoUaODf9wqh6 4q2H2z62ahJk+O4X4xUGL6iCaL9XjcMEmCcCAwEAAQJASA5VwgNb0CKHiPm0ntOk
ULXH/sG8i1vaXRcUHcJ50oRVfVK8/tGGvUuTDu6MeINTdahNDlYfjwOjKWVXys1w hG+54SRX3DmafEy6gRjZIl/bZ/asSLhXUZ+CeohyrQh7BZgYWvykd8pRISL9eKsU
h6ECIQDs6s7DfczK2bKCLt0zqg24mZL3rOpGmDU+TatwN1yVgwIhAOuMzdVTX39p GQIhAOXkUrOtP/EtjyqNluEqZdG+RZi/7p61JS3Ce13Myu+LAiEAy0uMlV34AJpM
328+5WxJvBOFfxmSmqdDhIFpnRMvgguJAiByvKjT/km+970+1OllyvaIL0AA2OpA b40FPKqlHxw8DD/Dt1iKhNVAg8+LDVUCIFjv7fbJDbW2VG63/Cj8CAwOukoP5rbL
tBgdC0p6tyUMdwIgKuHAWzTJbu28UolVxQgLaFZmVCZ/ZzIAfnrWsLZ2a1kCIBq/ iaicVrHBKrllAiB9+MiaXeopZXNrxDS0jQFYr8Q9yt1aJVFgUkxx4Q9HKQIgZPs0
ywJ2cpyFlgazu8AH6KCQa0ok9s70ElaB6FEC85Al KlF3NNNWw78INaAEkyf0IEssnLMsuoCWw0DIOak=
-----END RSA PRIVATE KEY----- -----END RSA PRIVATE KEY-----

View File

@ -1,51 +1,138 @@
Certificate:
Data:
Version: 3 (0x2)
Serial Number: 4 (0x4)
Signature Algorithm: sha1WithRSAEncryption
Issuer: C=SE, ST=Uppsala, L=Uppsala, O=MySQL AB
Validity
Not Before: Jan 28 11:12:27 2009 GMT
Not After : Jan 28 11:12:27 2010 GMT
Subject: C=SE, ST=Uppsala, O=MySQL AB, CN=server
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
RSA Public Key: (8192 bit)
Modulus (8192 bit):
00:c0:8f:22:03:24:59:67:46:14:d6:8f:60:09:58:
06:07:45:f1:78:71:55:f1:ea:b9:30:8a:cd:c3:3c:
b9:bf:65:6e:18:ed:a0:b8:c9:19:56:6f:c4:90:19:
c8:65:09:db:ff:bf:82:a1:08:ad:01:4f:5a:a3:d4:
3d:78:7e:4b:4a:01:a4:7d:e8:7b:05:3e:7d:d8:b9:
55:58:60:d6:1c:ce:e8:32:62:2c:19:60:f3:ed:05:
99:6d:c9:77:07:2e:11:6d:0b:9a:c7:68:38:46:e8:
fa:31:80:df:e8:79:f0:f1:fd:a9:94:c3:fa:0d:f5:
78:ac:49:7e:d5:17:fd:e1:ee:44:f3:c7:0e:30:32:
5d:a9:19:25:e4:bb:21:1d:fe:3c:84:48:40:f5:58:
f4:bf:13:8c:85:68:bb:ec:f5:dd:c6:38:d1:b0:77:
1f:a6:8e:4f:8d:e2:6f:49:74:f5:3f:90:65:8e:99:
1e:59:9c:1c:b5:26:24:c4:b1:de:1e:fb:96:65:c4:
31:14:1a:53:b8:5e:62:8a:c7:04:f7:b4:36:a4:af:
07:c8:27:06:ed:dd:e6:f4:8c:62:f1:65:40:d0:9f:
9f:a9:14:c8:8e:8b:74:d6:67:5a:d0:c9:4d:35:a1:
d5:7b:39:3a:42:9f:e4:d0:f4:c6:0f:2e:42:30:4b:
56:b2:3d:6d:8e:2d:58:c5:69:99:35:49:95:95:99:
b6:87:29:2b:32:d1:50:08:cd:25:14:48:6d:10:99:
85:61:3c:41:26:21:55:cc:1f:cf:ad:b0:2f:b9:89:
d8:4e:a0:18:ff:75:1d:b6:97:7c:c5:fa:8b:dc:93:
17:86:0a:64:d4:09:35:d5:83:34:6d:5c:6d:c6:8c:
cd:b9:ec:c2:93:c6:c1:b7:cc:04:6f:22:e0:07:bf:
e0:d9:9b:2f:d5:a0:50:cc:f9:f0:95:83:8f:f4:30:
83:72:94:d7:b5:4b:da:cc:9f:54:3b:8d:78:77:0b:
24:6c:0f:c2:96:61:96:2f:b8:5f:b5:7a:ab:7a:5b:
97:7a:a9:ad:40:8b:f2:d6:c6:8d:81:d9:94:61:8f:
9d:03:c5:b9:10:03:68:83:bf:04:81:cc:ac:bd:34:
89:e8:d4:8d:43:20:e2:b6:a4:11:3d:15:2a:82:0c:
d6:3a:6a:8c:62:d4:93:bc:c3:80:bf:1b:b4:2b:0a:
7a:34:f0:cd:1e:82:3f:25:0f:d1:04:a8:0a:05:19:
b0:d6:16:83:39:af:0b:45:7d:cb:14:7e:4d:aa:aa:
c2:39:a8:46:38:ab:bd:ab:2a:bd:34:43:7f:da:25:
de:2b:fb:69:3b:fe:3b:87:fd:98:94:76:4a:bf:04:
a3:31:e3:3a:ff:6f:04:fa:fa:24:e4:2a:89:e9:0e:
bf:44:4c:72:85:82:3c:89:4a:03:63:01:41:92:53:
d0:82:60:6e:d8:ff:8c:a2:b4:1a:3b:20:6d:ae:74:
92:30:4e:48:e3:51:a6:cb:73:97:06:13:03:32:23:
9b:7d:a2:c7:3a:a9:af:97:8c:51:ed:fe:fa:b4:b4:
1a:a3:87:fc:cf:8c:8e:e6:80:15:03:fd:fe:7d:bd:
b1:76:f1:5f:b3:09:2b:4c:4d:a7:7c:b5:72:b1:d6:
db:38:c0:67:a4:54:bc:87:09:a5:39:ba:1a:7e:3f:
74:60:ad:3d:4b:be:94:53:f3:64:16:c7:33:35:ec:
41:00:95:b6:de:99:62:a2:7a:28:9a:45:4d:fa:cd:
a6:77:f6:de:58:72:50:c8:7d:69:38:db:07:04:84:
d8:4d:39:f7:50:13:43:ae:2d:af:45:a4:2a:39:56:
3c:b8:b7:d8:26:a4:36:c9:23:aa:aa:b8:49:0b:21:
ba:9e:7a:2b:7f:4d:29:9f:0e:00:1e:b4:5e:a6:fa:
49:fe:8d:e5:74:57:d8:ba:d9:92:2c:d2:ac:84:1d:
f2:a6:a4:44:1c:bf:88:41:32:7e:d1:c3:2f:6e:bc:
0f:5d:19:a6:8f:74:2b:67:ba:dd:a9:db:68:b5:ce:
9d:25:48:df:54:08:d0:1d:4f:2e:5b:24:bc:05:0f:
fb:58:46:fa:02:ca:53:93:29:cf:10:27:c2:a0:18:
d0:f5:d4:b9:3c:5e:df:8e:6c:f5:7c:b9:b4:54:cc:
39:16:5d:3c:da:96:b3:c3:6c:d4:70:5d:d3:30:a7:
a6:bd:6f:dd:41:bc:a8:de:42:60:59:9a:85:25:0d:
2a:45:c3:05:b4:6e:7a:4a:4d:ca:8c:0a:e5:6c:34:
bc:20:9b:6d:4a:ca:ca:b6:a6:3a:a0:db:c3:0e:20:
1a:12:1b:77:dd:cb:1d:7f:c3:0d:0d:e7:c1:fd:96:
d2:c7:68:80:99:a0:d9:8a:33:21:a3:8b:a2:5a:a7:
7e:27:06:02:7f:ed:60:11:37:34:54:17:7f:4d:90:
14:1e:69:37:0d:ba:f0:2b:f0:a3:2d:62:79:c8:76:
a8:ea:c8:e7:3b:1f:c6:4f:c2:0c:d7:ac:f0:77:53:
5d:f0:50:b4:df:9b:03:ca:4d:41:e1:18:b2:25:30:
86:1d:63:e5:67:b1:53:cd:6b:4e:83:1a:b9:5e:2d:
05:15:6b:d4:8e:b1:97:fc:31:03:57:cb:bf:27:7f:
cd:5f:27:7e:66:e7:3c:17:09:b6:11:2a:4f:33:cd:
eb:1a:d3:6f:d5:15:8b:8b:ce:68:6b:7e:9a:95:e5:
74:7f:17:57:d9
Exponent: 65537 (0x10001)
X509v3 extensions:
X509v3 Basic Constraints:
CA:FALSE
X509v3 Subject Key Identifier:
58:12:24:59:A7:3C:29:15:89:5A:C2:12:DB:E7:A5:42:10:21:B7:BA
X509v3 Authority Key Identifier:
keyid:F2:E2:EA:55:65:A4:9A:E2:AC:9D:97:F5:45:6C:F6:F7:8C:11:AD:DF
DirName:/C=SE/ST=Uppsala/L=Uppsala/O=MySQL AB
serial:95:E9:78:F5:34:50:E4:D5
Signature Algorithm: sha1WithRSAEncryption
cd:cb:5c:83:35:ea:cb:cb:c3:a8:c3:95:e2:e6:6f:4d:d8:e4:
ee:41:dd:3f:35:82:ac:2f:fd:63:89:4f:3a:19:d7:81:75:b3:
a3:fc:36:b2:12:d5:c6:56:bc:13:60:37:33:6e:a0:d8:ae:7c:
88:f9:4b:ee:7b:1f:c8:f0:56:19:07:4d:bb:45:52:1c:78:81:
07:7c:13:86:b8:86:70:85:e4:71:25:58:78:d1:be:de:22:82:
6d:1a:4b:06:ac:f0:e8:50:87:c7:69:64:c2:61:43:cd:96:06:
a6:7e:09:a9:02:01:2a:a2:40:f3:cd:10:80:48:d0:34:55:40:
b9:ce
-----BEGIN CERTIFICATE----- -----BEGIN CERTIFICATE-----
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
-----END CERTIFICATE----- -----END CERTIFICATE-----

View File

@ -1,99 +1,99 @@
-----BEGIN RSA PRIVATE KEY----- -----BEGIN RSA PRIVATE KEY-----
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
-----END RSA PRIVATE KEY----- -----END RSA PRIVATE KEY-----

View File

@ -1,6 +1,7 @@
DROP TABLE IF EXISTS t1; DROP TABLE IF EXISTS t1;
DROP TABLE IF EXISTS t2; DROP TABLE IF EXISTS t2;
SET @old_binlog_format=@@BINLOG_FORMAT; set @saved_global_binlog_format = @@global.binlog_format;
set @saved_local_binlog_format = @@session.binlog_format;
SET GLOBAL BINLOG_FORMAT = STATEMENT; SET GLOBAL BINLOG_FORMAT = STATEMENT;
SET SESSION BINLOG_FORMAT = STATEMENT; SET SESSION BINLOG_FORMAT = STATEMENT;
CREATE TABLE t1 (a INT); CREATE TABLE t1 (a INT);
@ -70,4 +71,5 @@ master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
master-bin.000001 # Query # # use `test`; COMMIT master-bin.000001 # Query # # use `test`; COMMIT
DROP TABLE t1; DROP TABLE t1;
DROP TABLE t2; DROP TABLE t2;
SET GLOBAL BINLOG_FORMAT = @old_binlog_format; SET GLOBAL BINLOG_FORMAT = @saved_global_binlog_format;
SET SESSION BINLOG_FORMAT = @saved_local_binlog_format;

View File

@ -0,0 +1,30 @@
create table foo (a int);
flush logs;
create temporary table tmp1_foo like foo;
create temporary table tmp2_foo (a int);
insert into tmp1_foo values (1), (2), (3), (4);
replace into tmp2_foo values (1), (2), (3), (4);
update tmp1_foo set a=2*a-1;
update tmp2_foo set a=2*a;
delete from tmp1_foo where a < 5;
delete from tmp2_foo where a < 5;
insert into foo select * from tmp1_foo;
insert into foo select * from tmp2_foo;
truncate table tmp1_foo;
truncate table tmp2_foo;
flush logs;
select * from foo;
a
5
7
6
8
drop table foo;
create table foo (a int);
select * from foo;
a
5
7
6
8
drop table foo;

View File

@ -19,7 +19,8 @@ DROP TABLE IF EXISTS t1;
DROP TABLE IF EXISTS t2; DROP TABLE IF EXISTS t2;
--enable_warnings --enable_warnings
SET @old_binlog_format=@@BINLOG_FORMAT; set @saved_global_binlog_format = @@global.binlog_format;
set @saved_local_binlog_format = @@session.binlog_format;
SET GLOBAL BINLOG_FORMAT = STATEMENT; SET GLOBAL BINLOG_FORMAT = STATEMENT;
SET SESSION BINLOG_FORMAT = STATEMENT; SET SESSION BINLOG_FORMAT = STATEMENT;
@ -106,4 +107,5 @@ source include/show_binlog_events.inc;
DROP TABLE t1; DROP TABLE t1;
DROP TABLE t2; DROP TABLE t2;
SET GLOBAL BINLOG_FORMAT = @old_binlog_format; SET GLOBAL BINLOG_FORMAT = @saved_global_binlog_format;
SET SESSION BINLOG_FORMAT = @saved_local_binlog_format;

View File

@ -0,0 +1,83 @@
# ==== Purpose ====
#
# Test if statements used temporary tables are binlogged correctly
#
# ==== Method ====
#
# Use two connections, use temporary tables on both of them, and by
# switching connections between statements, the test can check if the
# statements are logged with the correct thread id.
#
# The statements current tested include:
# CREATE TEMPORARY TABLE
# CREATE TEMPORARY TABLE LIKE
# INSERT
# REPLACE
# UPDATE
# INSERT SELECT
# TRUNCATE
#
# Note: When adding new query statements, please add them between the
# two 'flush logs'. And aslo please make sure the connection is
# switched between each statement.
#
# ==== Related bugs ====
#
# BUG#35583 mysqlbinlog replay fails with ERROR 1146 when temp tables are used
#
source include/have_log_bin.inc;
source include/have_binlog_format_mixed_or_statement.inc;
connect (master,127.0.0.1,root,,test,$MASTER_MYPORT,);
connect (master1,127.0.0.1,root,,test,$MASTER_MYPORT,);
create table foo (a int);
flush logs;
connection master;
create temporary table tmp1_foo like foo;
connection master1;
create temporary table tmp2_foo (a int);
connection master;
insert into tmp1_foo values (1), (2), (3), (4);
connection master1;
replace into tmp2_foo values (1), (2), (3), (4);
connection master;
update tmp1_foo set a=2*a-1;
connection master1;
update tmp2_foo set a=2*a;
connection master;
delete from tmp1_foo where a < 5;
connection master1;
delete from tmp2_foo where a < 5;
connection master;
insert into foo select * from tmp1_foo;
connection master1;
insert into foo select * from tmp2_foo;
connection master;
truncate table tmp1_foo;
connection master1;
truncate table tmp2_foo;
flush logs;
connection default;
select * from foo;
# prepare for the replay
drop table foo;
create table foo (a int);
# replay from binary log
let $MYSQLD_DATADIR= `select @@datadir`;
exec $MYSQL_BINLOG $MYSQLD_DATADIR/master-bin.000002 | $MYSQL;
select * from foo;
# clean up
drop table foo;

View File

@ -0,0 +1,17 @@
stop slave;
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
reset master;
reset slave;
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
start slave;
drop table if exists t1;
Warnings:
Note 1051 Unknown table 't1'
create table t1(id int);
show tables;
Tables_in_test
t1
show master status;
File Position Binlog_Do_DB Binlog_Ignore_DB
master-bin.000001 278
flush logs;

View File

@ -0,0 +1 @@
--sql_mode=NO_BACKSLASH_ESCAPES

View File

@ -0,0 +1,28 @@
#
# BUG#36391 and BUG#38731
#
# The fix for BUG#20103 "Escaping with backslash does not work as expected"
# was implemented too greedy though in that it not only changes the behavior
# of backslashes within strings but in general, so disabling command shortcuts
# like \G or \C (which in turn leads to BUG#36391: "mysqlbinlog creates invalid charset statements".
#
# The test executes simple commands that are stored in the binary log and
# re-execute them through the mysql client which should have to process
# some command shortcuts. The backslashes within strings is disabled in the file
# rpl_bug36391-master.opt by the option --sql_mode=NO_BACKSLASH_ESCAPES.
#
#
--source include/master-slave.inc
drop table if exists t1;
create table t1(id int);
show tables;
show master status;
flush logs;
--exec $MYSQL_BINLOG $MYSQL_TEST_DIR/var/log/master-bin.000001 | $MYSQL test

View File

@ -5,13 +5,7 @@ connect (master,127.0.0.1,root,,test,$MASTER_MYPORT,);
connect (slave,127.0.0.1,root,,test,$SLAVE_MYPORT,); connect (slave,127.0.0.1,root,,test,$SLAVE_MYPORT,);
connection master; connection master;
--disable_warnings
DROP DATABASE IF EXISTS federated;
--enable_warnings
CREATE DATABASE federated; CREATE DATABASE federated;
connection slave; connection slave;
--disable_warnings
DROP DATABASE IF EXISTS federated;
--enable_warnings
CREATE DATABASE federated; CREATE DATABASE federated;

View File

@ -1,6 +1,4 @@
DROP DATABASE IF EXISTS federated;
CREATE DATABASE federated; CREATE DATABASE federated;
DROP DATABASE IF EXISTS federated;
CREATE DATABASE federated; CREATE DATABASE federated;
SET @OLD_MASTER_CONCURRENT_INSERT= @@GLOBAL.CONCURRENT_INSERT; SET @OLD_MASTER_CONCURRENT_INSERT= @@GLOBAL.CONCURRENT_INSERT;
SET @@GLOBAL.CONCURRENT_INSERT= 0; SET @@GLOBAL.CONCURRENT_INSERT= 0;
@ -2139,6 +2137,6 @@ End of 5.1 tests
SET @@GLOBAL.CONCURRENT_INSERT= @OLD_MASTER_CONCURRENT_INSERT; SET @@GLOBAL.CONCURRENT_INSERT= @OLD_MASTER_CONCURRENT_INSERT;
SET @@GLOBAL.CONCURRENT_INSERT= @OLD_SLAVE_CONCURRENT_INSERT; SET @@GLOBAL.CONCURRENT_INSERT= @OLD_SLAVE_CONCURRENT_INSERT;
DROP TABLE IF EXISTS federated.t1; DROP TABLE IF EXISTS federated.t1;
DROP DATABASE IF EXISTS federated; DROP DATABASE federated;
DROP TABLE IF EXISTS federated.t1; DROP TABLE IF EXISTS federated.t1;
DROP DATABASE IF EXISTS federated; DROP DATABASE federated;

View File

@ -1,6 +1,4 @@
DROP DATABASE IF EXISTS federated;
CREATE DATABASE federated; CREATE DATABASE federated;
DROP DATABASE IF EXISTS federated;
CREATE DATABASE federated; CREATE DATABASE federated;
DROP TABLE IF EXISTS federated.archive_table; DROP TABLE IF EXISTS federated.archive_table;
CREATE TABLE federated.archive_table ( CREATE TABLE federated.archive_table (
@ -36,6 +34,6 @@ id name
DROP TABLE federated.t1; DROP TABLE federated.t1;
DROP TABLE federated.archive_table; DROP TABLE federated.archive_table;
DROP TABLE IF EXISTS federated.t1; DROP TABLE IF EXISTS federated.t1;
DROP DATABASE IF EXISTS federated; DROP DATABASE federated;
DROP TABLE IF EXISTS federated.t1; DROP TABLE IF EXISTS federated.t1;
DROP DATABASE IF EXISTS federated; DROP DATABASE federated;

View File

@ -1,6 +1,4 @@
DROP DATABASE IF EXISTS federated;
CREATE DATABASE federated; CREATE DATABASE federated;
DROP DATABASE IF EXISTS federated;
CREATE DATABASE federated; CREATE DATABASE federated;
DROP TABLE IF EXISTS federated.bug_13118_table; DROP TABLE IF EXISTS federated.bug_13118_table;
CREATE TABLE federated.bug_13118_table ( CREATE TABLE federated.bug_13118_table (
@ -27,6 +25,6 @@ foo bar
DROP TABLE federated.t1; DROP TABLE federated.t1;
DROP TABLE federated.bug_13118_table; DROP TABLE federated.bug_13118_table;
DROP TABLE IF EXISTS federated.t1; DROP TABLE IF EXISTS federated.t1;
DROP DATABASE IF EXISTS federated; DROP DATABASE federated;
DROP TABLE IF EXISTS federated.t1; DROP TABLE IF EXISTS federated.t1;
DROP DATABASE IF EXISTS federated; DROP DATABASE federated;

View File

@ -1,6 +1,4 @@
DROP DATABASE IF EXISTS federated;
CREATE DATABASE federated; CREATE DATABASE federated;
DROP DATABASE IF EXISTS federated;
CREATE DATABASE federated; CREATE DATABASE federated;
SET @OLD_MASTER_CONCURRENT_INSERT= @@GLOBAL.CONCURRENT_INSERT; SET @OLD_MASTER_CONCURRENT_INSERT= @@GLOBAL.CONCURRENT_INSERT;
SET @@GLOBAL.CONCURRENT_INSERT= 0; SET @@GLOBAL.CONCURRENT_INSERT= 0;
@ -50,6 +48,6 @@ SET @@GLOBAL.CONCURRENT_INSERT= @OLD_MASTER_CONCURRENT_INSERT;
DROP TABLE federated.t1; DROP TABLE federated.t1;
SET @@GLOBAL.CONCURRENT_INSERT= @OLD_SLAVE_CONCURRENT_INSERT; SET @@GLOBAL.CONCURRENT_INSERT= @OLD_SLAVE_CONCURRENT_INSERT;
DROP TABLE IF EXISTS federated.t1; DROP TABLE IF EXISTS federated.t1;
DROP DATABASE IF EXISTS federated; DROP DATABASE federated;
DROP TABLE IF EXISTS federated.t1; DROP TABLE IF EXISTS federated.t1;
DROP DATABASE IF EXISTS federated; DROP DATABASE federated;

View File

@ -1,11 +1,11 @@
source federated.inc;
# Check that path to the specific test program has been setup # Check that path to the specific test program has been setup
if (`select LENGTH("$MYSQL_BUG25714") = 0`) if (`select LENGTH("$MYSQL_BUG25714") = 0`)
{ {
skip Need bug25714 test program; skip Need bug25714 test program;
} }
source federated.inc;
connection master; connection master;
# Disable concurrent inserts to avoid test failures when reading # Disable concurrent inserts to avoid test failures when reading
# data from concurrent connections (insert might return before # data from concurrent connections (insert might return before

View File

@ -1,9 +1,9 @@
connection master; connection master;
--disable_warnings --disable_warnings
DROP TABLE IF EXISTS federated.t1; DROP TABLE IF EXISTS federated.t1;
DROP DATABASE IF EXISTS federated; DROP DATABASE federated;
connection slave; connection slave;
DROP TABLE IF EXISTS federated.t1; DROP TABLE IF EXISTS federated.t1;
DROP DATABASE IF EXISTS federated; DROP DATABASE federated;
--enable_warnings --enable_warnings

View File

@ -1,6 +1,4 @@
DROP DATABASE IF EXISTS federated;
CREATE DATABASE federated; CREATE DATABASE federated;
DROP DATABASE IF EXISTS federated;
CREATE DATABASE federated; CREATE DATABASE federated;
create table federated.t1 (a int primary key, b varchar(64)) create table federated.t1 (a int primary key, b varchar(64))
engine=myisam; engine=myisam;
@ -22,6 +20,6 @@ a b
drop table federated.t1; drop table federated.t1;
drop table federated.t1; drop table federated.t1;
DROP TABLE IF EXISTS federated.t1; DROP TABLE IF EXISTS federated.t1;
DROP DATABASE IF EXISTS federated; DROP DATABASE federated;
DROP TABLE IF EXISTS federated.t1; DROP TABLE IF EXISTS federated.t1;
DROP DATABASE IF EXISTS federated; DROP DATABASE federated;

View File

@ -1,6 +1,4 @@
DROP DATABASE IF EXISTS federated;
CREATE DATABASE federated; CREATE DATABASE federated;
DROP DATABASE IF EXISTS federated;
CREATE DATABASE federated; CREATE DATABASE federated;
create database first_db; create database first_db;
create database second_db; create database second_db;
@ -277,6 +275,6 @@ call p1();
drop procedure p1; drop procedure p1;
drop server if exists s; drop server if exists s;
DROP TABLE IF EXISTS federated.t1; DROP TABLE IF EXISTS federated.t1;
DROP DATABASE IF EXISTS federated; DROP DATABASE federated;
DROP TABLE IF EXISTS federated.t1; DROP TABLE IF EXISTS federated.t1;
DROP DATABASE IF EXISTS federated; DROP DATABASE federated;

View File

@ -61,6 +61,7 @@ DROP USER dbdict_test@localhost;
CREATE USER dbdict_test@localhost; CREATE USER dbdict_test@localhost;
--echo # Establish connection con (user=dbdict_test) --echo # Establish connection con (user=dbdict_test)
let $MASTER_MYSOCK= query_get_value(SHOW VARIABLES LIKE 'socket', Value, 1);
--replace_result $MASTER_MYPORT MYSQL_PORT $MASTER_MYSOCK MYSQL_SOCK --replace_result $MASTER_MYPORT MYSQL_PORT $MASTER_MYSOCK MYSQL_SOCK
connect (con,localhost,dbdict_test,,); connect (con,localhost,dbdict_test,,);
################################################################################ ################################################################################

View File

@ -126,6 +126,7 @@ ORDER BY constraint_catalog, constraint_schema, constraint_name,
eval $select; eval $select;
--echo # Establish connection testuser1 (user=testuser1) --echo # Establish connection testuser1 (user=testuser1)
let $MASTER_MYSOCK= query_get_value(SHOW VARIABLES LIKE 'socket', Value, 1);
--replace_result $MASTER_MYPORT MYSQL_PORT $MASTER_MYSOCK MYSQL_SOCK --replace_result $MASTER_MYPORT MYSQL_PORT $MASTER_MYSOCK MYSQL_SOCK
connect (testuser1, localhost, testuser1, , db_datadict); connect (testuser1, localhost, testuser1, , db_datadict);
eval $select; eval $select;

View File

@ -179,6 +179,7 @@ GRANT EXECUTE ON db_datadict_2.* TO 'testuser2'@'localhost';
FLUSH PRIVILEGES; FLUSH PRIVILEGES;
--echo # Establish connection testuser1 (user=testuser1) --echo # Establish connection testuser1 (user=testuser1)
let $MASTER_MYSOCK= query_get_value(SHOW VARIABLES LIKE 'socket', Value, 1);
--replace_result $MASTER_MYPORT MYSQL_PORT $MASTER_MYSOCK MYSQL_SOCK --replace_result $MASTER_MYPORT MYSQL_PORT $MASTER_MYSOCK MYSQL_SOCK
connect (testuser1, localhost, testuser1, , db_datadict); connect (testuser1, localhost, testuser1, , db_datadict);
--replace_column 16 "YYYY-MM-DD hh:mm:ss" 17 "YYYY-MM-DD hh:mm:ss" --replace_column 16 "YYYY-MM-DD hh:mm:ss" 17 "YYYY-MM-DD hh:mm:ss"

View File

@ -104,6 +104,7 @@ eval $my_select;
eval $my_show; eval $my_show;
--echo # Establish connection testuser1 (user=testuser1) --echo # Establish connection testuser1 (user=testuser1)
let $MASTER_MYSOCK= query_get_value(SHOW VARIABLES LIKE 'socket', Value, 1);
--replace_result $MASTER_MYPORT MYSQL_PORT $MASTER_MYSOCK MYSQL_SOCK --replace_result $MASTER_MYPORT MYSQL_PORT $MASTER_MYSOCK MYSQL_SOCK
connect (testuser1, localhost, testuser1, , db_datadict_1); connect (testuser1, localhost, testuser1, , db_datadict_1);
# Shows db_datadict_1 # Shows db_datadict_1

View File

@ -130,6 +130,7 @@ WHERE table_schema = 'db_datadict' ORDER BY table_name;
let $my_show = SHOW TABLES FROM db_datadict; let $my_show = SHOW TABLES FROM db_datadict;
--echo # Establish connection testuser1 (user=testuser1) --echo # Establish connection testuser1 (user=testuser1)
let $MASTER_MYSOCK= query_get_value(SHOW VARIABLES LIKE 'socket', Value, 1);
--replace_result $MASTER_MYPORT MYSQL_PORT $MASTER_MYSOCK MYSQL_SOCK --replace_result $MASTER_MYPORT MYSQL_PORT $MASTER_MYSOCK MYSQL_SOCK
connect (testuser1, localhost, testuser1, , db_datadict); connect (testuser1, localhost, testuser1, , db_datadict);
# tb2 is not granted to anyone # tb2 is not granted to anyone

View File

@ -123,6 +123,7 @@ let $my_select = SELECT * FROM information_schema.triggers
WHERE trigger_name = 'trg1'; WHERE trigger_name = 'trg1';
let $my_show = SHOW TRIGGERS FROM db_datadict; let $my_show = SHOW TRIGGERS FROM db_datadict;
--echo # Establish connection testuser1 (user=testuser1) --echo # Establish connection testuser1 (user=testuser1)
let $MASTER_MYSOCK= query_get_value(SHOW VARIABLES LIKE 'socket', Value, 1);
--replace_result $MASTER_MYPORT MYSQL_PORT $MASTER_MYSOCK MYSQL_SOCK --replace_result $MASTER_MYPORT MYSQL_PORT $MASTER_MYSOCK MYSQL_SOCK
connect (testuser1, localhost, testuser1, , db_datadict); connect (testuser1, localhost, testuser1, , db_datadict);
--replace_result $engine_type <engine_type> --replace_result $engine_type <engine_type>

View File

@ -109,6 +109,7 @@ WHERE table_schema = 'db_datadict' ORDER BY table_name;
eval $select; eval $select;
--echo # Establish connection testuser1 (user=testuser1) --echo # Establish connection testuser1 (user=testuser1)
let $MASTER_MYSOCK= query_get_value(SHOW VARIABLES LIKE 'socket', Value, 1);
--replace_result $MASTER_MYPORT MYSQL_PORT $MASTER_MYSOCK MYSQL_SOCK --replace_result $MASTER_MYPORT MYSQL_PORT $MASTER_MYSOCK MYSQL_SOCK
connect (testuser1, localhost, testuser1, , test); connect (testuser1, localhost, testuser1, , test);
eval $select; eval $select;

View File

@ -42,6 +42,7 @@ ORDER BY table_schema, table_name, index_name, seq_in_index, column_name;
eval $my_select; eval $my_select;
--echo # Establish connection testuser1 (user=testuser1) --echo # Establish connection testuser1 (user=testuser1)
let $MASTER_MYSOCK= query_get_value(SHOW VARIABLES LIKE 'socket', Value, 1);
--replace_result $MASTER_MYPORT MYSQL_PORT $MASTER_MYSOCK MYSQL_SOCK --replace_result $MASTER_MYPORT MYSQL_PORT $MASTER_MYSOCK MYSQL_SOCK
connect (testuser1,localhost,testuser1,,db_datadict); connect (testuser1,localhost,testuser1,,db_datadict);
--replace_column 10 #CARD# --replace_column 10 #CARD#

View File

@ -33,6 +33,7 @@ ORDER BY table_schema,table_name,constraint_name;
eval $my_select; eval $my_select;
--echo # Establish connection testuser1 (user=testuser1) --echo # Establish connection testuser1 (user=testuser1)
let $MASTER_MYSOCK= query_get_value(SHOW VARIABLES LIKE 'socket', Value, 1);
--replace_result $MASTER_MYPORT MYSQL_PORT $MASTER_MYSOCK MYSQL_SOCK --replace_result $MASTER_MYPORT MYSQL_PORT $MASTER_MYSOCK MYSQL_SOCK
connect (testuser1,localhost,testuser1,,db_datadict); connect (testuser1,localhost,testuser1,,db_datadict);
eval $my_select; eval $my_select;

View File

@ -37,6 +37,7 @@ CREATE USER testuser1@localhost;
GRANT SELECT ON test1.* TO testuser1@localhost; GRANT SELECT ON test1.* TO testuser1@localhost;
--echo # Establish connection testuser1 (user=testuser1) --echo # Establish connection testuser1 (user=testuser1)
let $MASTER_MYSOCK= query_get_value(SHOW VARIABLES LIKE 'socket', Value, 1);
--replace_result $MASTER_MYPORT MYSQL_PORT $MASTER_MYSOCK MYSQL_SOCK --replace_result $MASTER_MYPORT MYSQL_PORT $MASTER_MYSOCK MYSQL_SOCK
connect (testuser1,localhost,testuser1,,test1); connect (testuser1,localhost,testuser1,,test1);
--source suite/funcs_1/datadict/tables2.inc --source suite/funcs_1/datadict/tables2.inc

View File

@ -27,6 +27,7 @@ CREATE USER testuser1@localhost;
GRANT SELECT ON test1.* TO testuser1@localhost; GRANT SELECT ON test1.* TO testuser1@localhost;
--echo # Establish connection testuser1 (user=testuser1) --echo # Establish connection testuser1 (user=testuser1)
let $MASTER_MYSOCK= query_get_value(SHOW VARIABLES LIKE 'socket', Value, 1);
--replace_result $MASTER_MYPORT MYSQL_PORT $MASTER_MYSOCK MYSQL_SOCK --replace_result $MASTER_MYPORT MYSQL_PORT $MASTER_MYSOCK MYSQL_SOCK
connect (testuser1,localhost,testuser1,,test1); connect (testuser1,localhost,testuser1,,test1);
--source suite/funcs_1/datadict/tables2.inc --source suite/funcs_1/datadict/tables2.inc

View File

@ -66,5 +66,5 @@ f58 numeric (64) not null DEFAULT 99
--replace_result $MYSQLTEST_VARDIR <MYSQLTEST_VARDIR> --replace_result $MYSQLTEST_VARDIR <MYSQLTEST_VARDIR>
eval eval
load data infile '$MYSQLTEST_VARDIR/std_data_ln/funcs_1/innodb_tb1.txt' load data infile '$MYSQLTEST_VARDIR/std_data/funcs_1/innodb_tb1.txt'
into table tb1; into table tb1;

View File

@ -59,5 +59,5 @@ f109 set("1set","2set") not null default "1set"
--replace_result $MYSQLTEST_VARDIR <MYSQLTEST_VARDIR> --replace_result $MYSQLTEST_VARDIR <MYSQLTEST_VARDIR>
eval eval
load data infile '$MYSQLTEST_VARDIR/std_data_ln/funcs_1/innodb_tb2.txt' load data infile '$MYSQLTEST_VARDIR/std_data/funcs_1/innodb_tb2.txt'
into table tb2; into table tb2;

View File

@ -66,5 +66,5 @@ f175 numeric (64)
--replace_result $MYSQLTEST_VARDIR <MYSQLTEST_VARDIR> --replace_result $MYSQLTEST_VARDIR <MYSQLTEST_VARDIR>
eval eval
load data infile '$MYSQLTEST_VARDIR/std_data_ln/funcs_1/innodb_tb3.txt' load data infile '$MYSQLTEST_VARDIR/std_data/funcs_1/innodb_tb3.txt'
into table tb3; into table tb3;

View File

@ -66,5 +66,5 @@ f241 char(100)
--replace_result $MYSQLTEST_VARDIR <MYSQLTEST_VARDIR> --replace_result $MYSQLTEST_VARDIR <MYSQLTEST_VARDIR>
eval eval
load data infile '$MYSQLTEST_VARDIR/std_data_ln/funcs_1/innodb_tb4.txt' load data infile '$MYSQLTEST_VARDIR/std_data/funcs_1/innodb_tb4.txt'
into table tb4; into table tb4;

View File

@ -58,5 +58,5 @@ f58 numeric (64) not null DEFAULT 99
--replace_result $MYSQLTEST_VARDIR <MYSQLTEST_VARDIR> --replace_result $MYSQLTEST_VARDIR <MYSQLTEST_VARDIR>
eval eval
load data infile '$MYSQLTEST_VARDIR/std_data_ln/funcs_1/memory_tb1.txt' load data infile '$MYSQLTEST_VARDIR/std_data/funcs_1/memory_tb1.txt'
into table tb1; into table tb1;

View File

@ -59,5 +59,5 @@ f109 set("1set","2set") not null default "1set"
--replace_result $MYSQLTEST_VARDIR <MYSQLTEST_VARDIR> --replace_result $MYSQLTEST_VARDIR <MYSQLTEST_VARDIR>
eval eval
load data infile '$MYSQLTEST_VARDIR/std_data_ln/funcs_1/memory_tb2.txt' load data infile '$MYSQLTEST_VARDIR/std_data/funcs_1/memory_tb2.txt'
into table tb2 ; into table tb2 ;

View File

@ -60,5 +60,5 @@ f175 numeric (64)
--replace_result $MYSQLTEST_VARDIR <MYSQLTEST_VARDIR> --replace_result $MYSQLTEST_VARDIR <MYSQLTEST_VARDIR>
eval eval
load data infile '$MYSQLTEST_VARDIR/std_data_ln/funcs_1/memory_tb3.txt' load data infile '$MYSQLTEST_VARDIR/std_data/funcs_1/memory_tb3.txt'
into table tb3; into table tb3;

View File

@ -65,5 +65,5 @@ f240 varchar(1200)
--replace_result $MYSQLTEST_VARDIR <MYSQLTEST_VARDIR> --replace_result $MYSQLTEST_VARDIR <MYSQLTEST_VARDIR>
eval eval
load data infile '$MYSQLTEST_VARDIR/std_data_ln/funcs_1/memory_tb4.txt' load data infile '$MYSQLTEST_VARDIR/std_data/funcs_1/memory_tb4.txt'
into table tb4; into table tb4;

View File

@ -66,5 +66,5 @@ f58 numeric (64) not null DEFAULT 99
--replace_result $MYSQLTEST_VARDIR <MYSQLTEST_VARDIR> --replace_result $MYSQLTEST_VARDIR <MYSQLTEST_VARDIR>
eval eval
load data infile '$MYSQLTEST_VARDIR/std_data_ln/funcs_1/myisam_tb1.txt' load data infile '$MYSQLTEST_VARDIR/std_data/funcs_1/myisam_tb1.txt'
into table tb1; into table tb1;

View File

@ -78,5 +78,5 @@ f117 VARBINARY(192) null
--replace_result $MYSQLTEST_VARDIR <MYSQLTEST_VARDIR> --replace_result $MYSQLTEST_VARDIR <MYSQLTEST_VARDIR>
eval eval
load data infile '$MYSQLTEST_VARDIR/std_data_ln/funcs_1/myisam_tb2.txt' load data infile '$MYSQLTEST_VARDIR/std_data/funcs_1/myisam_tb2.txt'
into table tb2; into table tb2;

View File

@ -66,5 +66,5 @@ f175 numeric (64)
--replace_result $MYSQLTEST_VARDIR <MYSQLTEST_VARDIR> --replace_result $MYSQLTEST_VARDIR <MYSQLTEST_VARDIR>
eval eval
load data infile '$MYSQLTEST_VARDIR/std_data_ln/funcs_1/myisam_tb3.txt' load data infile '$MYSQLTEST_VARDIR/std_data/funcs_1/myisam_tb3.txt'
into table tb3; into table tb3;

View File

@ -86,5 +86,5 @@ f242 bit(30)
--replace_result $MYSQLTEST_VARDIR <MYSQLTEST_VARDIR> --replace_result $MYSQLTEST_VARDIR <MYSQLTEST_VARDIR>
eval eval
load data infile '$MYSQLTEST_VARDIR/std_data_ln/funcs_1/myisam_tb4.txt' load data infile '$MYSQLTEST_VARDIR/std_data/funcs_1/myisam_tb4.txt'
into table tb4; into table tb4;

View File

@ -66,5 +66,5 @@ f58 numeric (64) not null DEFAULT 99
--replace_result $MYSQLTEST_VARDIR <MYSQLTEST_VARDIR> --replace_result $MYSQLTEST_VARDIR <MYSQLTEST_VARDIR>
eval eval
load data infile '$MYSQLTEST_VARDIR/std_data_ln/funcs_1/ndb_tb1.txt' load data infile '$MYSQLTEST_VARDIR/std_data/funcs_1/ndb_tb1.txt'
into table tb1 ; into table tb1 ;

View File

@ -59,5 +59,5 @@ f109 set("1set","2set") not null default "1set"
--replace_result $MYSQLTEST_VARDIR <MYSQLTEST_VARDIR> --replace_result $MYSQLTEST_VARDIR <MYSQLTEST_VARDIR>
eval eval
load data infile '$MYSQLTEST_VARDIR/std_data_ln/funcs_1/ndb_tb2.txt' load data infile '$MYSQLTEST_VARDIR/std_data/funcs_1/ndb_tb2.txt'
into table tb2 ; into table tb2 ;

Some files were not shown because too many files have changed in this diff Show More