Merge of mysql-trunk-merge into mysql-trunk-bugfixing.

This commit is contained in:
Davi Arnaut 2010-07-16 17:02:40 -03:00
commit 4d532f6ea6
199 changed files with 2968 additions and 927 deletions

View File

@ -90,22 +90,19 @@ SSL_LIBRARY=--with-ssl
if [ "x$warning_mode" != "xpedantic" ]; then
# Both C and C++ warnings
warnings="-Wimplicit -Wreturn-type -Wswitch -Wtrigraphs -Wcomment -W"
warnings="$warnings -Wchar-subscripts -Wformat -Wparentheses -Wsign-compare"
warnings="$warnings -Wwrite-strings -Wunused-function -Wunused-label -Wunused-value -Wunused-variable"
warnings="-Wall -Wextra -Wunused -Wwrite-strings"
# For more warnings, uncomment the following line
# warnings="$global_warnings -Wshadow"
# warnings="$warnings -Wshadow"
# C warnings
c_warnings="$warnings -Wunused-parameter"
c_warnings="$warnings"
# C++ warnings
cxx_warnings="$warnings"
cxx_warnings="$warnings -Wno-unused-parameter"
# cxx_warnings="$cxx_warnings -Woverloaded-virtual -Wsign-promo"
cxx_warnings="$cxx_warnings -Wreorder"
cxx_warnings="$cxx_warnings -Wctor-dtor-privacy -Wnon-virtual-dtor"
# Added unless --with-debug=full
debug_extra_cflags="-O0 -g3 -gdwarf-2" #1 -Wuninitialized"
debug_extra_cflags="-O0 -g3 -gdwarf-2"
else
warnings="-W -Wall -ansi -pedantic -Wno-long-long -Wno-unused -D_POSIX_SOURCE"
c_warnings="$warnings"

View File

@ -187,69 +187,76 @@ check_cpu () {
cc=$CC
fi
if test "x$compiler" = "x" ; then
cc_ver=`$cc --version | sed 1q`
cc_verno=`echo $cc_ver | sed -e 's/^.*(GCC)//g; s/[^0-9. ]//g; s/^ *//g; s/ .*//g'`
if test "x$core2" = "xyes" ; then
cpu_arg="core2"
fi
if test "x$compiler" != "x" ; then
return 0
fi
# check if compiler is gcc and dump its version
cc_verno=`$cc -dumpversion 2>/dev/null`
if test "x$?" = "x0" ; then
set -- `echo $cc_verno | tr '.' ' '`
cc_ver="GCC"
cc_major=$1
cc_minor=$2
cc_patch=$3
cc_comp=`expr $cc_major '*' 100 '+' $cc_minor`
case "$cc_ver--$cc_verno" in
*GCC*)
# different gcc backends (and versions) have different CPU flags
case `gcc -dumpmachine` in
i?86-* | x86_64-*)
if test "$cc_comp" -lt 304 ; then
check_cpu_cflags="-mcpu=${cpu_arg}"
elif test "$cc_comp" -ge 402 ; then
check_cpu_cflags="-mtune=native"
else
check_cpu_cflags="-mtune=${cpu_arg}"
fi
;;
ppc-*)
check_cpu_cflags="-mcpu=${cpu_arg} -mtune=${cpu_arg}"
;;
*)
check_cpu_cflags=""
return
;;
esac
;;
2.95.*)
# GCC 2.95 doesn't expose its name in --version output
check_cpu_cflags="-m${cpu_arg}"
;;
*)
check_cpu_cflags=""
return
;;
esac
# now we check whether the compiler really understands the cpu type
touch __test.c
fi
while [ "$cpu_arg" ] ; do
printf "testing $cpu_arg ... " >&2
# compile check
eval "$cc -c $check_cpu_cflags __test.c" 2>/dev/null
if test "x$?" = "x0" ; then
echo ok >&2
break;
fi
echo failed >&2
case "$cc_ver--$cc_verno" in
*GCC*)
# different gcc backends (and versions) have different CPU flags
case `gcc -dumpmachine` in
i?86-* | x86_64-*)
if test "$cc_comp" -lt 304 ; then
check_cpu_cflags="-mcpu=${cpu_arg}"
elif test "$cc_comp" -ge 402 ; then
check_cpu_cflags="-mtune=native"
else
check_cpu_cflags="-mtune=${cpu_arg}"
fi
;;
ppc-*)
check_cpu_cflags="-mcpu=${cpu_arg} -mtune=${cpu_arg}"
;;
*)
check_cpu_cflags=""
return
;;
esac
;;
2.95.*)
# GCC 2.95 doesn't expose its name in --version output
check_cpu_cflags="-m${cpu_arg}"
;;
*)
check_cpu_cflags=""
return
;;
esac
# now we check whether the compiler really understands the cpu type
touch __test.c
while [ "$cpu_arg" ] ; do
printf "testing $cpu_arg ... " >&2
# compile check
eval "$cc -c $check_cpu_cflags __test.c" 2>/dev/null
if test "x$?" = "x0" ; then
echo ok >&2
break;
done
rm __test.*
fi
if test "x$core2" = "xyes" ; then
cpu_arg="core2"
fi
fi
echo failed >&2
check_cpu_cflags=""
break;
done
rm __test.*
return 0
}
check_cpu

34
CMakeLists.txt Executable file → Normal file
View File

@ -104,6 +104,27 @@ IF(DEFINED ENV{CPPFLAGS})
ADD_DEFINITIONS($ENV{CPPFLAGS})
ENDIF()
#
# Control aspects of the development environment which are
# specific to MySQL maintainers and developers.
#
OPTION(MYSQL_MAINTAINER_MODE "MySQL maintainer-specific development environment" OFF)
# Whether the maintainer mode should be enabled.
IF(MYSQL_MAINTAINER_MODE)
IF(CMAKE_COMPILER_IS_GNUCC)
SET(MY_MAINTAINER_C_WARNINGS "-Wall -Wextra -Wunused -Wwrite-strings -Werror"
CACHE STRING "C warning options used in maintainer builds.")
ENDIF()
IF(CMAKE_COMPILER_IS_GNUCXX)
SET(MY_MAINTAINER_CXX_WARNINGS "${MY_MAINTAINER_C_WARNINGS} -Wno-unused-parameter"
CACHE STRING "C++ warning options used in maintainer builds.")
ENDIF()
# Do not make warnings in checks into errors.
IF(CMAKE_COMPILER_IS_GNUCC AND CMAKE_COMPILER_IS_GNUCXX)
SET(CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS} -Wno-error")
ENDIF()
ENDIF()
# Add macros
INCLUDE(character_sets)
INCLUDE(zlib)
@ -226,6 +247,19 @@ MYSQL_CHECK_SSL()
# Add readline or libedit.
MYSQL_CHECK_READLINE()
#
# Setup maintainer mode options by the end. Platform checks are
# not run with the warning options as to not perturb fragile checks
# (i.e. do not make warnings into errors).
#
IF(MYSQL_MAINTAINER_MODE)
# Set compiler flags required under maintainer mode.
MESSAGE(STATUS "C warning options: ${MY_MAINTAINER_C_WARNINGS}")
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${MY_MAINTAINER_C_WARNINGS}")
MESSAGE(STATUS "C++ warning options: ${MY_MAINTAINER_CXX_WARNINGS}")
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${MY_MAINTAINER_CXX_WARNINGS}")
ENDIF()
IF(NOT WITHOUT_SERVER)
SET (MYSQLD_STATIC_PLUGIN_LIBS "" CACHE INTERNAL "")
# Add storage engines and plugins.

0
client/CMakeLists.txt Executable file → Normal file
View File

View File

@ -88,7 +88,6 @@ extern "C" {
#endif
#endif
#undef bcmp // Fix problem with new readline
#if defined(__WIN__)
#include <conio.h>
#else

View File

@ -436,7 +436,7 @@ Exit_status Load_log_processor::process_first_event(const char *bname,
ptr= fname + target_dir_name_len;
memcpy(ptr,bname,blen);
ptr+= blen;
ptr+= my_sprintf(ptr, (ptr, "-%x", file_id));
ptr+= sprintf(ptr, "-%x", file_id);
if ((file= create_unique_file(fname,ptr)) < 0)
{

View File

@ -696,8 +696,7 @@ static int handle_request_for_tables(char *tables, uint length)
if (opt_all_in_1)
{
/* No backticks here as we added them before */
query_length= my_sprintf(query,
(query, "%s TABLE %s %s", op, tables, options));
query_length= sprintf(query, "%s TABLE %s %s", op, tables, options);
}
else
{

View File

@ -657,8 +657,7 @@ list_fields(MYSQL *mysql,const char *db,const char *table,
char query[1024],*end;
MYSQL_RES *result;
MYSQL_ROW row;
ulong rows;
LINT_INIT(rows);
ulong UNINIT_VAR(rows);
if (mysql_select_db(mysql,db))
{

View File

@ -5827,7 +5827,7 @@ int read_command(struct st_command** command_ptr)
(struct st_command*) my_malloc(sizeof(*command),
MYF(MY_WME|MY_ZEROFILL))) ||
insert_dynamic(&q_lines, (uchar*) &command))
die(NullS);
die("Out of memory");
command->type= Q_UNKNOWN;
read_command_buf[0]= 0;
@ -6314,7 +6314,7 @@ void init_win_path_patterns()
}
if (insert_dynamic(&patterns, (uchar*) &p))
die(NullS);
die("Out of memory");
DBUG_PRINT("info", ("p: %s", p));
while (*p)
@ -9406,8 +9406,7 @@ REPLACE *init_replace(char * *from, char * *to,uint count,
for (i=1 ; i <= found_sets ; i++)
{
pos=from[found_set[i-1].table_offset];
rep_str[i].found= !bcmp((const uchar*) pos,
(const uchar*) "\\^", 3) ? 2 : 1;
rep_str[i].found= !memcmp(pos, "\\^", 3) ? 2 : 1;
rep_str[i].replace_string=to_array[found_set[i-1].table_offset];
rep_str[i].to_offset=found_set[i-1].found_offset-start_at_word(pos);
rep_str[i].from_offset=found_set[i-1].found_offset-replace_len(pos)+
@ -9535,8 +9534,8 @@ void copy_bits(REP_SET *to,REP_SET *from)
int cmp_bits(REP_SET *set1,REP_SET *set2)
{
return bcmp((uchar*) set1->bits,(uchar*) set2->bits,
sizeof(uint) * set1->size_of_bits);
return memcmp(set1->bits, set2->bits,
sizeof(uint) * set1->size_of_bits);
}
@ -9605,17 +9604,15 @@ int find_found(FOUND_SET *found_set,uint table_offset, int found_offset)
uint start_at_word(char * pos)
{
return (((!bcmp((const uchar*) pos, (const uchar*) "\\b",2) && pos[2]) ||
!bcmp((const uchar*) pos, (const uchar*) "\\^", 2)) ? 1 : 0);
return (((!memcmp(pos, "\\b",2) && pos[2]) ||
!memcmp(pos, "\\^", 2)) ? 1 : 0);
}
uint end_of_word(char * pos)
{
char * end=strend(pos);
return ((end > pos+2 && !bcmp((const uchar*) end-2,
(const uchar*) "\\b", 2)) ||
(end >= pos+2 && !bcmp((const uchar*) end-2,
(const uchar*) "\\$",2))) ? 1 : 0;
return ((end > pos+2 && !memcmp(end-2, "\\b", 2)) ||
(end >= pos+2 && !memcmp(end-2, "\\$",2))) ? 1 : 0;
}
/****************************************************************************

View File

@ -184,6 +184,12 @@ foreach my $option (@ARGV)
$cmakeargs = $cmakeargs." -DWITH_DEBUG_FULL=1";
next;
}
if ($option =~ /mysql-maintainer-mode/)
{
$cmakeargs = $cmakeargs." -DMYSQL_MAINTAINER_MODE=" .
($option =~ /enable/ ? "1" : "0");
next;
}
$option = uc($option);
$option =~ s/-/_/g;

0
cmake/install_layout.cmake Executable file → Normal file
View File

View File

@ -30,7 +30,6 @@ SET(HAVE_ASM_MSR_H CACHE INTERNAL "")
SET(HAVE_BACKTRACE CACHE INTERNAL "")
SET(HAVE_BACKTRACE_SYMBOLS CACHE INTERNAL "")
SET(HAVE_BACKTRACE_SYMBOLS_FD CACHE INTERNAL "")
SET(HAVE_BCMP CACHE INTERNAL "")
SET(HAVE_BFILL CACHE INTERNAL "")
SET(HAVE_BMOVE CACHE INTERNAL "")
SET(HAVE_BSD_SIGNALS CACHE INTERNAL "")

View File

@ -31,4 +31,4 @@ noinst_HEADERS = readline.h chardefs.h keymaps.h \
EXTRA_DIST= emacs_keymap.c vi_keymap.c CMakeLists.txt
DEFS = -DMYSQL_CLIENT_NO_THREADS -DHAVE_CONFIG_H -DNO_KILL_INTR
DEFS = -DMYSQL_CLIENT_NO_THREADS -DHAVE_CONFIG_H -DNO_KILL_INTR -D_GNU_SOURCE=1

View File

@ -125,7 +125,6 @@
#cmakedefine HAVE_AIOWAIT 1
#cmakedefine HAVE_ALARM 1
#cmakedefine HAVE_ALLOCA 1
#cmakedefine HAVE_BCMP 1
#cmakedefine HAVE_BFILL 1
#cmakedefine HAVE_BMOVE 1
#cmakedefine HAVE_BZERO 1

View File

@ -0,0 +1,64 @@
#
# Control aspects of the development environment which are
# specific to MySQL maintainers and developers.
#
AC_DEFUN([MY_MAINTAINER_MODE], [
AC_MSG_CHECKING([whether to enable the maintainer-specific development environment])
AC_ARG_ENABLE([mysql-maintainer-mode],
[AS_HELP_STRING([--enable-mysql-maintainer-mode],
[Enable a MySQL maintainer-specific development environment])],
[USE_MYSQL_MAINTAINER_MODE=$enableval],
[USE_MYSQL_MAINTAINER_MODE=no])
AC_MSG_RESULT([$USE_MYSQL_MAINTAINER_MODE])
])
# Set warning options required under maintainer mode.
AC_DEFUN([MY_MAINTAINER_MODE_WARNINGS], [
# Setup GCC warning options.
AS_IF([test "$GCC" = "yes"], [
C_WARNINGS="-Wall -Wextra -Wunused -Wwrite-strings -Werror"
CXX_WARNINGS="${C_WARNINGS} -Wno-unused-parameter"
])
# Test whether the warning options work.
# Test C options
AS_IF([test -n "$C_WARNINGS"], [
save_CFLAGS="$CFLAGS"
AC_MSG_CHECKING([whether to use C warning options ${C_WARNINGS}])
AC_LANG_PUSH(C)
CFLAGS="$CFLAGS ${C_WARNINGS}"
AC_COMPILE_IFELSE([AC_LANG_PROGRAM()], [myac_c_warning_flags=yes],
[myac_c_warning_flags=no])
AC_LANG_POP()
AC_MSG_RESULT([$myac_c_warning_flags])
CFLAGS="$save_CFLAGS"
])
# Test C++ options
AS_IF([test -n "$CXX_WARNINGS"], [
save_CXXFLAGS="$CXXFLAGS"
AC_MSG_CHECKING([whether to use C++ warning options ${CXX_WARNINGS}])
AC_LANG_PUSH(C++)
CXXFLAGS="$CXXFLAGS ${CXX_WARNINGS}"
AC_COMPILE_IFELSE([AC_LANG_PROGRAM()], [myac_cxx_warning_flags=yes],
[myac_cxx_warning_flags=no])
AC_LANG_POP()
AC_MSG_RESULT([$myac_cxx_warning_flags])
CXXFLAGS="$save_CXXFLAGS"
])
# Set compile flag variables.
AS_IF([test "$myac_c_warning_flags" = "yes"], [
AM_CFLAGS="${AM_CFLAGS} ${C_WARNINGS}"
AC_SUBST([AM_CFLAGS])])
AS_IF([test "$myac_cxx_warning_flags" = "yes"], [
AM_CXXFLAGS="${AM_CXXFLAGS} ${CXX_WARNINGS}"
AC_SUBST([AM_CXXFLAGS])])
])
# Set compiler flags required under maintainer mode.
AC_DEFUN([MY_MAINTAINER_MODE_SETUP], [
AS_IF([test "$USE_MYSQL_MAINTAINER_MODE" = "yes"],
[MY_MAINTAINER_MODE_WARNINGS])
])

View File

@ -273,7 +273,6 @@ CHECK_FUNCTION_EXISTS (backtrace HAVE_BACKTRACE)
CHECK_FUNCTION_EXISTS (backtrace_symbols HAVE_BACKTRACE_SYMBOLS)
CHECK_FUNCTION_EXISTS (backtrace_symbols_fd HAVE_BACKTRACE_SYMBOLS_FD)
CHECK_FUNCTION_EXISTS (printstack HAVE_PRINTSTACK)
CHECK_FUNCTION_EXISTS (bcmp HAVE_BCMP)
CHECK_FUNCTION_EXISTS (bfill HAVE_BFILL)
CHECK_FUNCTION_EXISTS (bmove HAVE_BMOVE)
CHECK_FUNCTION_EXISTS (bsearch HAVE_BSEARCH)

View File

@ -80,6 +80,7 @@ MYSQL_TCP_PORT_DEFAULT=3306
MYSQL_UNIX_ADDR_DEFAULT="/tmp/mysql.sock"
dnl Include m4
sinclude(config/ac-macros/maintainer.m4)
sinclude(config/ac-macros/alloca.m4)
sinclude(config/ac-macros/check_cpu.m4)
sinclude(config/ac-macros/character_sets.m4)
@ -118,6 +119,8 @@ AC_SUBST(SHARED_LIB_MAJOR_VERSION)
AC_SUBST(SHARED_LIB_VERSION)
AC_SUBST(AVAILABLE_LANGUAGES)
# Whether the maintainer mode should be enabled.
MY_MAINTAINER_MODE
# Canonicalize the configuration name.
@ -284,40 +287,6 @@ AC_CHECK_PROGS(YACC, ['bison -y -p MYSQL'])
AC_CHECK_PROG(PDFMANUAL, pdftex, manual.pdf)
AC_CHECK_PROG(DVIS, tex, manual.dvi)
#check the return type of sprintf
AC_MSG_CHECKING("return type of sprintf")
AC_TRY_RUN([
int main()
{
char* s = "hello";
char buf[6];
if((int)sprintf(buf, s) == strlen(s))
return 0;
return -1;
}
],
[AC_DEFINE(SPRINTF_RETURNS_INT, [1], [POSIX sprintf])
AC_MSG_RESULT("int")],
[AC_TRY_RUN([
int main()
{
char* s = "hello";
char buf[6];
if((char*)sprintf(buf,s) == buf + strlen(s))
return 0;
return -1;
} ],
[AC_DEFINE(SPRINTF_RETURNS_PTR, [1], [Broken sprintf])
AC_MSG_RESULT("ptr")],
[AC_DEFINE(SPRINTF_RETURNS_GARBAGE, [1], [Broken sprintf])
AC_MSG_RESULT("garbage")]
)],
# Cross compile, assume POSIX
[AC_DEFINE(SPRINTF_RETURNS_INT, [1], [POSIX sprintf])
AC_MSG_RESULT("int (we assume)")]
)
AC_PATH_PROG(uname_prog, uname, no)
# We should go through this and put all the explictly system dependent
@ -494,7 +463,16 @@ if test "$GCC" != "yes" || expr "$CC" : ".*icc.*"
then
ABI_CHECK=""
else
ABI_CHECK="abi_check"
# Workaround GCC >= 4.5 - See Bug#52514
case `$CC -dumpversion` in
[[4-9]].[[5-9]]*)
AC_MSG_WARN([ABI check disabled (GCC >= 4.5)])
ABI_CHECK=""
;;
*)
ABI_CHECK="abi_check"
;;
esac
fi
AC_SUBST(ABI_CHECK)
@ -2212,7 +2190,7 @@ MYSQL_TYPE_QSORT
AC_FUNC_UTIME_NULL
AC_FUNC_VPRINTF
AC_CHECK_FUNCS(alarm bcmp bfill bmove bsearch bzero \
AC_CHECK_FUNCS(alarm bfill bmove bsearch bzero \
chsize cuserid fchmod fcntl \
fdatasync fesetround finite fpresetsticky fpsetmask fsync ftruncate \
getcwd gethostbyaddr_r gethostbyname_r getpass getpassphrase getpwnam \
@ -2995,6 +2973,12 @@ do
done
AC_SUBST(sql_union_dirs)
#
# Setup maintainer mode options by the end to not disturb
# system and other checks.
#
MY_MAINTAINER_MODE_SETUP
# Some usefull subst
AC_SUBST(CC)
AC_SUBST(GXX)

0
dbug/CMakeLists.txt Executable file → Normal file
View File

0
extra/CMakeLists.txt Executable file → Normal file
View File

View File

@ -665,9 +665,9 @@ static struct message *find_message(struct errors *err, const char *lang,
static ha_checksum checksum_format_specifier(const char* msg)
{
ha_checksum chksum= 0;
const char* p= msg;
const char* start= 0;
int num_format_specifiers= 0;
const uchar* p= (const uchar*) msg;
const uchar* start= NULL;
uint32 num_format_specifiers= 0;
while (*p)
{

View File

@ -648,7 +648,7 @@ static REPLACE *init_replace(char * *from, char * *to,uint count,
for (i=1 ; i <= found_sets ; i++)
{
pos=from[found_set[i-1].table_offset];
rep_str[i].found= (my_bool) (!bcmp(pos,"\\^",3) ? 2 : 1);
rep_str[i].found= (my_bool) (!memcmp(pos,"\\^",3) ? 2 : 1);
rep_str[i].replace_string=to_array[found_set[i-1].table_offset];
rep_str[i].to_offset=found_set[i-1].found_offset-start_at_word(pos);
rep_str[i].from_offset=found_set[i-1].found_offset-replace_len(pos)+
@ -776,8 +776,8 @@ static void copy_bits(REP_SET *to,REP_SET *from)
static int cmp_bits(REP_SET *set1,REP_SET *set2)
{
return bcmp((uchar*) set1->bits,(uchar*) set2->bits,
sizeof(uint) * set1->size_of_bits);
return memcmp(set1->bits, set2->bits,
sizeof(uint) * set1->size_of_bits);
}
@ -849,14 +849,14 @@ static short find_found(FOUND_SET *found_set,uint table_offset,
static uint start_at_word(char * pos)
{
return (((!bcmp(pos,"\\b",2) && pos[2]) || !bcmp(pos,"\\^",2)) ? 1 : 0);
return (((!memcmp(pos,"\\b",2) && pos[2]) || !memcmp(pos,"\\^",2)) ? 1 : 0);
}
static uint end_of_word(char * pos)
{
char * end=strend(pos);
return ((end > pos+2 && !bcmp(end-2,"\\b",2)) ||
(end >= pos+2 && !bcmp(end-2,"\\$",2))) ?
return ((end > pos+2 && !memcmp(end-2,"\\b",2)) ||
(end >= pos+2 && !memcmp(end-2,"\\$",2))) ?
1 : 0;
}

0
extra/yassl/CMakeLists.txt Executable file → Normal file
View File

View File

@ -953,8 +953,9 @@ x509* PemToDer(FILE* file, CertType type, EncryptedInfo* info)
info->set = true;
}
}
fgets(line,sizeof(line), file); // get blank line
begin = ftell(file);
// get blank line
if (fgets(line, sizeof(line), file))
begin = ftell(file);
}
}

0
extra/yassl/taocrypt/CMakeLists.txt Executable file → Normal file
View File

View File

@ -51,7 +51,7 @@ public:
enum { BLOCK_SIZE = BLOWFISH_BLOCK_SIZE, ROUNDS = 16 };
Blowfish(CipherDir DIR, Mode MODE)
: Mode_BASE(BLOCK_SIZE, DIR, MODE) {}
: Mode_BASE(BLOCK_SIZE, DIR, MODE), sbox_(pbox_ + ROUNDS + 2) {}
#ifdef DO_BLOWFISH_ASM
void Process(byte*, const byte*, word32);
@ -62,8 +62,8 @@ private:
static const word32 p_init_[ROUNDS + 2];
static const word32 s_init_[4 * 256];
word32 pbox_[ROUNDS + 2];
word32 sbox_[4 * 256];
word32 pbox_[ROUNDS + 2 + 4 * 256];
word32* sbox_;
void crypt_block(const word32 in[2], word32 out[2]) const;
void AsmProcess(const byte* in, byte* out) const;

View File

@ -35,10 +35,7 @@
// Handler for pure virtual functions
namespace __Crun {
static void pure_error(void)
{
assert("Pure virtual method called." == "Aborted");
}
void pure_error(void);
} // namespace __Crun
#endif // __sun
@ -54,16 +51,7 @@ extern "C" {
#else
#include "kernelc.hpp"
#endif
/* Disallow inline __cxa_pure_virtual() */
static int __cxa_pure_virtual() __attribute__((noinline, used));
static int __cxa_pure_virtual()
{
// oops, pure virtual called!
assert(!"Pure virtual method called. Aborted");
return 0;
}
int __cxa_pure_virtual () __attribute__ ((weak));
} // extern "C"
#endif // __GNUC__ > 2

View File

@ -51,7 +51,7 @@ void AES::Process(byte* out, const byte* in, word32 sz)
out += BLOCK_SIZE;
in += BLOCK_SIZE;
}
else if (mode_ == CBC)
else if (mode_ == CBC) {
if (dir_ == ENCRYPTION)
while (blocks--) {
r_[0] ^= *(word32*)in;
@ -78,6 +78,7 @@ void AES::Process(byte* out, const byte* in, word32 sz)
out += BLOCK_SIZE;
in += BLOCK_SIZE;
}
}
}
#endif // DO_AES_ASM

View File

@ -186,10 +186,10 @@ Integer AbstractGroup::CascadeScalarMultiply(const Element &x,
struct WindowSlider
{
WindowSlider(const Integer &exp, bool fastNegate,
WindowSlider(const Integer &expIn, bool fastNegateIn,
unsigned int windowSizeIn=0)
: exp(exp), windowModulus(Integer::One()), windowSize(windowSizeIn),
windowBegin(0), fastNegate(fastNegate), firstTime(true),
: exp(expIn), windowModulus(Integer::One()), windowSize(windowSizeIn),
windowBegin(0), fastNegate(fastNegateIn), firstTime(true),
finished(false)
{
if (windowSize == 0)

View File

@ -53,7 +53,7 @@ void Blowfish::Process(byte* out, const byte* in, word32 sz)
out += BLOCK_SIZE;
in += BLOCK_SIZE;
}
else if (mode_ == CBC)
else if (mode_ == CBC) {
if (dir_ == ENCRYPTION)
while (blocks--) {
r_[0] ^= *(word32*)in;
@ -78,6 +78,7 @@ void Blowfish::Process(byte* out, const byte* in, word32 sz)
out += BLOCK_SIZE;
in += BLOCK_SIZE;
}
}
}
#endif // DO_BLOWFISH_ASM

View File

@ -283,21 +283,23 @@ DWord() {}
word GetHighHalfAsBorrow() const {return 0-halfs_.high;}
private:
struct dword_struct
{
#ifdef LITTLE_ENDIAN_ORDER
word low;
word high;
#else
word high;
word low;
#endif
};
union
{
#ifdef TAOCRYPT_NATIVE_DWORD_AVAILABLE
dword whole_;
#endif
struct
{
#ifdef LITTLE_ENDIAN_ORDER
word low;
word high;
#else
word high;
word low;
#endif
} halfs_;
struct dword_struct halfs_;
};
};
@ -1214,20 +1216,24 @@ public:
#define AS1(x) #x ";"
#define AS2(x, y) #x ", " #y ";"
#define AddPrologue \
word res; \
__asm__ __volatile__ \
( \
"push %%ebx;" /* save this manually, in case of -fPIC */ \
"mov %2, %%ebx;" \
"mov %3, %%ebx;" \
".intel_syntax noprefix;" \
"push ebp;"
#define AddEpilogue \
"pop ebp;" \
".att_syntax prefix;" \
"pop %%ebx;" \
: \
"mov %%eax, %0;" \
: "=g" (res) \
: "c" (C), "d" (A), "m" (B), "S" (N) \
: "%edi", "memory", "cc" \
);
); \
return res;
#define MulPrologue \
__asm__ __volatile__ \
( \

View File

@ -84,12 +84,23 @@ namespace STL = STL_NAMESPACE;
}
#if defined(__ICC) || defined(__INTEL_COMPILER)
#ifdef __sun
// Handler for pure virtual functions
namespace __Crun {
void pure_error() {
assert(!"Aborted: pure virtual method called.");
}
}
#endif
#if defined(__ICC) || defined(__INTEL_COMPILER) || (__GNUC__ > 2)
extern "C" {
int __cxa_pure_virtual() {
assert("Pure virtual method called." == "Aborted");
assert(!"Aborted: pure virtual method called.");
return 0;
}
@ -166,14 +177,6 @@ word Crop(word value, unsigned int size)
#ifdef TAOCRYPT_X86ASM_AVAILABLE
#ifndef _MSC_VER
static jmp_buf s_env;
static void SigIllHandler(int)
{
longjmp(s_env, 1);
}
#endif
bool HaveCpuId()
{

View File

@ -54,7 +54,7 @@ void Twofish::Process(byte* out, const byte* in, word32 sz)
out += BLOCK_SIZE;
in += BLOCK_SIZE;
}
else if (mode_ == CBC)
else if (mode_ == CBC) {
if (dir_ == ENCRYPTION)
while (blocks--) {
r_[0] ^= *(word32*)in;
@ -82,6 +82,7 @@ void Twofish::Process(byte* out, const byte* in, word32 sz)
out += BLOCK_SIZE;
in += BLOCK_SIZE;
}
}
}
#endif // DO_TWOFISH_ASM

View File

@ -155,6 +155,11 @@ inline void err_sys(const char* msg)
}
extern "C" {
static int PasswordCallBack(char*, int, int, void*);
}
static int PasswordCallBack(char* passwd, int sz, int rw, void* userdata)
{
strncpy(passwd, "12345678", sz);

View File

@ -45,7 +45,7 @@ noinst_HEADERS = config-win.h lf.h my_bit.h \
my_vle.h my_user.h my_atomic.h atomic/nolock.h \
atomic/rwlock.h atomic/x86-gcc.h atomic/generic-msvc.h \
atomic/gcc_builtins.h my_libwrap.h my_stacktrace.h \
atomic/solaris.h mysql/innodb_priv.h
atomic/solaris.h mysql/innodb_priv.h my_compiler.h
pkgpsiinclude_HEADERS = mysql/psi/psi.h mysql/psi/mysql_thread.h \
mysql/psi/mysql_file.h

View File

@ -36,10 +36,6 @@
/* need by my_vsnprintf */
#include <stdarg.h>
#ifdef _AIX
#undef HAVE_BCMP
#endif
/* This is needed for the definitions of bzero... on solaris */
#if defined(HAVE_STRINGS_H)
#include <strings.h>
@ -63,14 +59,10 @@
/* Unixware 7 */
#if !defined(HAVE_BFILL)
# define bfill(A,B,C) memset((A),(C),(B))
# define bmove_align(A,B,C) memcpy((A),(B),(C))
#endif
#if !defined(HAVE_BCMP)
# define bcopy(s, d, n) memcpy((d), (s), (n))
# define bcmp(A,B,C) memcmp((A),(B),(C))
# define bzero(A,B) memset((A),0,(B))
# define bmove_align(A,B,C) memcpy((A),(B),(C))
#if !defined(bzero) && !defined(HAVE_BZERO)
# define bzero(A,B) memset((A),0,(B))
#endif
#if defined(__cplusplus)
@ -116,19 +108,6 @@ extern char _dig_vec_lower[];
extern void bfill(uchar *dst,size_t len,pchar fill);
#endif
#if !defined(bzero) && !defined(HAVE_BZERO)
extern void bzero(uchar * dst,size_t len);
#endif
#if !defined(bcmp) && !defined(HAVE_BCMP)
extern size_t bcmp(const uchar *s1,const uchar *s2,size_t len);
#endif
#ifdef HAVE_purify
extern size_t my_bcmp(const uchar *s1,const uchar *s2,size_t len);
#undef bcmp
#define bcmp(A,B,C) my_bcmp((A),(B),(C))
#endif /* HAVE_purify */
#ifndef bmove512
extern void bmove512(uchar *dst,const uchar *src,size_t len);
#endif

View File

@ -36,14 +36,14 @@ extern ulong my_time_to_wait_for_lock;
#define ALARM_END (void) signal(SIGALRM,alarm_signal); \
(void) alarm(alarm_old);
#define ALARM_TEST my_have_got_alarm
#ifdef DONT_REMEMBER_SIGNAL
#ifdef SIGNAL_HANDLER_RESET_ON_DELIVERY
#define ALARM_REINIT (void) alarm(MY_HOW_OFTEN_TO_ALARM); \
(void) signal(SIGALRM,my_set_alarm_variable);\
my_have_got_alarm=0;
#else
#define ALARM_REINIT (void) alarm((uint) MY_HOW_OFTEN_TO_ALARM); \
my_have_got_alarm=0;
#endif /* DONT_REMEMBER_SIGNAL */
#endif /* SIGNAL_HANDLER_RESET_ON_DELIVERY */
#else
#define ALARM_VARIABLES long alarm_pos=0,alarm_end_pos=MY_HOW_OFTEN_TO_WRITE-1
#define ALARM_INIT

View File

@ -159,22 +159,6 @@ static inline my_bool bitmap_cmp(const MY_BITMAP *map1, const MY_BITMAP *map2)
#define bitmap_set_all(MAP) \
(memset((MAP)->bitmap, 0xFF, 4*no_words_in_map((MAP))))
/**
check, set and clear a bit of interest of an integer.
If the bit is out of range @retval -1. Otherwise
bit_is_set @return 0 or 1 reflecting the bit is set or not;
bit_do_set @return 1 (bit is set 1)
bit_do_clear @return 0 (bit is cleared to 0)
*/
#define bit_is_set(I,B) (sizeof(I) * CHAR_BIT > (B) ? \
(((I) & (ULL(1) << (B))) == 0 ? 0 : 1) : -1)
#define bit_do_set(I,B) (sizeof(I) * CHAR_BIT > (B) ? \
((I) |= (ULL(1) << (B)), 1) : -1)
#define bit_do_clear(I,B) (sizeof(I) * CHAR_BIT > (B) ? \
((I) &= ~(ULL(1) << (B)), 0) : -1)
#ifdef __cplusplus
}
#endif

129
include/my_compiler.h Normal file
View File

@ -0,0 +1,129 @@
#ifndef MY_COMPILER_INCLUDED
#define MY_COMPILER_INCLUDED
/* Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; version 2 of the License.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */
/**
Header for compiler-dependent features.
Intended to contain a set of reusable wrappers for preprocessor
macros, attributes, pragmas, and any other features that are
specific to a target compiler.
*/
#include <my_global.h> /* stddef.h offsetof */
/**
Compiler-dependent internal convenience macros.
*/
/* GNU C/C++ */
#if defined __GNUC__
/* Any after 2.95... */
# define MY_ALIGN_EXT
/* Microsoft Visual C++ */
#elif defined _MSC_VER
# define MY_ALIGNOF(type) __alignof(type)
# define MY_ALIGNED(n) __declspec(align(n))
/* Oracle Solaris Studio */
#elif defined(__SUNPRO_C) || defined(__SUNPRO_CC)
# if __SUNPRO_C >= 0x590
# define MY_ALIGN_EXT
# endif
/* IBM XL C/C++ */
#elif defined __xlC__
# if __xlC__ >= 0x0600
# define MY_ALIGN_EXT
# endif
/* HP aCC */
#elif defined(__HP_aCC) || defined(__HP_cc)
# if (__HP_aCC >= 60000) || (__HP_cc >= 60000)
# define MY_ALIGN_EXT
# endif
#endif
#ifdef MY_ALIGN_EXT
/** Specifies the minimum alignment of a type. */
# define MY_ALIGNOF(type) __alignof__(type)
/** Determine the alignment requirement of a type. */
# define MY_ALIGNED(n) __attribute__((__aligned__((n))))
#endif
/**
Generic compiler-dependent features.
*/
#ifndef MY_ALIGNOF
# ifdef __cplusplus
template<typename type> struct my_alignof_helper { char m1; type m2; };
/* Invalid for non-POD types, but most compilers give the right answer. */
# define MY_ALIGNOF(type) offsetof(my_alignof_helper<type>, m2)
# else
# define MY_ALIGNOF(type) offsetof(struct { char m1; type m2; }, m2)
# endif
#endif
/**
C++ Type Traits
*/
#ifdef __cplusplus
/**
Opaque storage with a particular alignment.
*/
# if defined(MY_ALIGNED)
/* Partial specialization used due to MSVC++. */
template<size_t alignment> struct my_alignment_imp;
template<> struct MY_ALIGNED(1) my_alignment_imp<1> {};
template<> struct MY_ALIGNED(2) my_alignment_imp<2> {};
template<> struct MY_ALIGNED(4) my_alignment_imp<4> {};
template<> struct MY_ALIGNED(8) my_alignment_imp<8> {};
template<> struct MY_ALIGNED(16) my_alignment_imp<16> {};
/* ... expand as necessary. */
# else
template<size_t alignment>
struct my_alignment_imp { double m1; };
# endif
/**
A POD type with a given size and alignment.
@remark If the compiler does not support a alignment attribute
(MY_ALIGN macro), the default alignment of a double is
used instead.
@tparam size The minimum size.
@tparam alignment The desired alignment: 1, 2, 4, 8 or 16.
*/
template <size_t size, size_t alignment>
struct my_aligned_storage
{
union
{
char data[size];
my_alignment_imp<alignment> align;
};
};
#endif /* __cplusplus */
#include <my_attribute.h>
#endif /* MY_COMPILER_INCLUDED */

View File

@ -577,26 +577,34 @@ extern "C" int madvise(void *addr, size_t len, int behav);
#endif
/* Does the system remember a signal handler after a signal ? */
#ifndef HAVE_BSD_SIGNALS
#define DONT_REMEMBER_SIGNAL
#if !defined(HAVE_BSD_SIGNALS) && !defined(HAVE_SIGACTION)
#define SIGNAL_HANDLER_RESET_ON_DELIVERY
#endif
#if defined(_lint) || defined(FORCE_INIT_OF_VARS)
#define LINT_INIT(var) var=0 /* No uninitialize-warning */
/*
Deprecated workaround for false-positive uninitialized variables
warnings. Those should be silenced using tool-specific heuristics.
Enabled by default for g++ due to the bug referenced below.
*/
#if defined(_lint) || defined(FORCE_INIT_OF_VARS) || \
(defined(__GNUC__) && defined(__cplusplus))
#define LINT_INIT(var) var= 0
#else
#define LINT_INIT(var)
#endif
/*
/*
Suppress uninitialized variable warning without generating code.
The _cplusplus is a temporary workaround for C++ code pending a fix
for a g++ bug (http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34772).
for a g++ bug (http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34772).
*/
#if defined(_lint) || defined(FORCE_INIT_OF_VARS) || defined(__cplusplus) || \
!defined(__GNUC__)
#if defined(_lint) || defined(FORCE_INIT_OF_VARS) || \
defined(__cplusplus) || !defined(__GNUC__)
#define UNINIT_VAR(x) x= 0
#else
/* GCC specific self-initialization which inhibits the warning. */
#define UNINIT_VAR(x) x= x
#endif
@ -620,7 +628,6 @@ typedef unsigned short ushort;
#define set_if_bigger(a,b) do { if ((a) < (b)) (a)=(b); } while(0)
#define set_if_smaller(a,b) do { if ((a) > (b)) (a)=(b); } while(0)
#define test_all_bits(a,b) (((a) & (b)) == (b))
#define set_bits(type, bit_count) (sizeof(type)*8 <= (bit_count) ? ~(type) 0 : ((((type) 1) << (bit_count)) - (type) 1))
#define array_elements(A) ((uint) (sizeof(A)/sizeof(A[0])))
/* Define some general constants */
@ -641,7 +648,7 @@ typedef unsigned short ushort;
#define my_const_cast(A) (A)
#endif
#include <my_attribute.h>
#include <my_compiler.h>
/*
Wen using the embedded library, users might run into link problems,
@ -1012,20 +1019,6 @@ typedef long long my_ptrdiff_t;
#define ADD_TO_PTR(ptr,size,type) (type) ((uchar*) (ptr)+size)
#define PTR_BYTE_DIFF(A,B) (my_ptrdiff_t) ((uchar*) (A) - (uchar*) (B))
#define MY_DIV_UP(A, B) (((A) + (B) - 1) / (B))
#define MY_ALIGNED_BYTE_ARRAY(N, S, T) T N[MY_DIV_UP(S, sizeof(T))]
#ifdef __cplusplus
template <size_t sz> struct Aligned_char_array
{
union {
void *v; // Ensures alignment.
char arr[sz]; // The actual buffer.
} u;
void* arr() { return &u.arr[0]; }
};
#endif /* __cplusplus */
/*
Custom version of standard offsetof() macro which can be used to get
offsets of members in class for non-POD types (according to the current
@ -1553,17 +1546,6 @@ do { doubleget_union _tmp; \
#endif /* WORDS_BIGENDIAN */
/* sprintf does not always return the number of bytes :- */
#ifdef SPRINTF_RETURNS_INT
#define my_sprintf(buff,args) sprintf args
#else
#ifdef SPRINTF_RETURNS_PTR
#define my_sprintf(buff,args) ((int)(sprintf args - buff))
#else
#define my_sprintf(buff,args) ((ulong) sprintf args, (ulong) strlen(buff))
#endif
#endif
#ifndef THREAD
#define thread_safe_increment(V,L) (V)++
#define thread_safe_decrement(V,L) (V)--

View File

@ -55,8 +55,6 @@ extern "C" {
#define MI_MAX_MSG_BUF 1024 /* used in CHECK TABLE, REPAIR TABLE */
#define MI_NAME_IEXT ".MYI"
#define MI_NAME_DEXT ".MYD"
/* Max extra space to use when sorting keys */
#define MI_MAX_TEMP_LENGTH 2*1024L*1024L*1024L
/* Possible values for myisam_block_size (must be power of 2) */
#define MI_KEY_BLOCK_LENGTH 1024 /* default key block length */

0
libmysql/CMakeLists.txt Executable file → Normal file
View File

View File

@ -38,7 +38,7 @@ mystringsobjects = strmov.lo strxmov.lo strxnmov.lo strnmov.lo \
strmake.lo strend.lo \
strnlen.lo strfill.lo is_prefix.lo \
int2str.lo str2int.lo strinstr.lo strcont.lo \
strcend.lo bcmp.lo ctype-latin1.lo \
strcend.lo ctype-latin1.lo \
bchange.lo bmove.lo bmove_upp.lo longlong2str.lo \
strtoull.lo strtoll.lo llstr.lo my_vsnprintf.lo \
ctype.lo ctype-simple.lo ctype-bin.lo ctype-mb.lo \

View File

@ -316,7 +316,7 @@ sig_handler
my_pipe_sig_handler(int sig __attribute__((unused)))
{
DBUG_PRINT("info",("Hit by signal %d",sig));
#ifdef DONT_REMEMBER_SIGNAL
#ifdef SIGNAL_HANDLER_RESET_ON_DELIVERY
(void) signal(SIGPIPE, my_pipe_sig_handler);
#endif
}
@ -2117,7 +2117,12 @@ static my_bool execute(MYSQL_STMT *stmt, char *packet, ulong length)
stmt->insert_id= mysql->insert_id;
if (res)
{
set_stmt_errmsg(stmt, net);
/*
Don't set stmt error if stmt->mysql is NULL, as the error in this case
has already been set by mysql_prune_stmt_list().
*/
if (stmt->mysql)
set_stmt_errmsg(stmt, net);
DBUG_RETURN(1);
}
DBUG_RETURN(0);
@ -2328,7 +2333,12 @@ stmt_read_row_from_cursor(MYSQL_STMT *stmt, unsigned char **row)
buff, sizeof(buff), (uchar*) 0, 0,
1, stmt))
{
set_stmt_errmsg(stmt, net);
/*
Don't set stmt error if stmt->mysql is NULL, as the error in this case
has already been set by mysql_prune_stmt_list().
*/
if (stmt->mysql)
set_stmt_errmsg(stmt, net);
return 1;
}
if ((*mysql->methods->read_rows_from_cursor)(stmt))
@ -3015,7 +3025,12 @@ mysql_stmt_send_long_data(MYSQL_STMT *stmt, uint param_number,
buff, sizeof(buff), (uchar*) data,
length, 1, stmt))
{
set_stmt_errmsg(stmt, &mysql->net);
/*
Don't set stmt error if stmt->mysql is NULL, as the error in this case
has already been set by mysql_prune_stmt_list().
*/
if (stmt->mysql)
set_stmt_errmsg(stmt, &mysql->net);
DBUG_RETURN(1);
}
}
@ -4017,6 +4032,7 @@ static my_bool setup_one_fetch_function(MYSQL_BIND *param, MYSQL_FIELD *field)
case MYSQL_TYPE_TIME:
field->max_length= 15; /* 19:23:48.123456 */
param->skip_result= skip_result_with_length;
break;
case MYSQL_TYPE_DATE:
field->max_length= 10; /* 2003-11-11 */
param->skip_result= skip_result_with_length;
@ -4430,7 +4446,12 @@ int STDCALL mysql_stmt_store_result(MYSQL_STMT *stmt)
if (cli_advanced_command(mysql, COM_STMT_FETCH, buff, sizeof(buff),
(uchar*) 0, 0, 1, stmt))
{
set_stmt_errmsg(stmt, net);
/*
Don't set stmt error if stmt->mysql is NULL, as the error in this case
has already been set by mysql_prune_stmt_list().
*/
if (stmt->mysql)
set_stmt_errmsg(stmt, net);
DBUG_RETURN(1);
}
}

View File

@ -157,6 +157,22 @@ if DARWIN_MWCC
mwld -lib -o $@ libmysqld_int.a `echo $(INC_LIB) | sort -u` $(storageobjects)
else
-rm -f libmysqld.a
current_dir=`pwd`; \
rm -rf tmp; mkdir tmp; \
(for arc in $(INC_LIB) ./libmysqld_int.a; do \
arpath=`echo $$arc|sed 's|[^/]*$$||'|sed 's|\.libs/$$||'`; \
artmp=`echo $$arc|sed 's|^.*/|tmp/lib-|'`; \
for F in `$(AR) t $$arc | grep -v SYMDEF`; do \
if test -e "$$arpath/$$F" ; then echo "$$arpath/$$F"; else \
mkdir $$artmp; cd $$artmp > /dev/null; \
$(AR) x ../../$$arc; \
cd $$current_dir > /dev/null; \
ls $$artmp/* | grep -v SYMDEF; \
continue 2; fi; done; \
done; echo $(libmysqld_a_DEPENDENCIES) ) | sort -u | xargs $(AR) cq libmysqld.a; \
$(AR) r libmysqld.a $(storageobjects); \
$(RANLIB) libmysqld.a ; \
rm -rf tmp
endif
## XXX: any time the client interface changes, we'll need to bump

View File

@ -42,7 +42,8 @@ LDADD = @CLIENT_EXTRA_LDFLAGS@ ../libmysqld.a @LIBDL@ $(CXXLDFLAGS) \
mysqltest_embedded_LINK = $(CXXLINK)
nodist_mysqltest_embedded_SOURCES = mysqltest.cc
mysqltest_embedded_LDADD = $(LDADD) $(top_builddir)/regex/libregex.a
mysqltest_embedded_LDADD = $(LDADD) $(top_builddir)/regex/libregex.a \
@MYSQLD_EXTRA_LDFLAGS@
nodist_mysql_SOURCES = mysql.cc readline.cc completion_hash.cc \
my_readline.h sql_string.h completion_hash.h

View File

@ -65,17 +65,13 @@ let $_diff_table=$diff_table_2;
let $_diff_i=2;
while ($_diff_i) {
# Parse out any leading "master:" or "slave:" from the table
# specification and connect the appropriate server.
let $_diff_conn_master=`SELECT SUBSTR('$_diff_table', 1, 7) = 'master:'`;
if ($_diff_conn_master) {
let $_diff_table=`SELECT SUBSTR('$_diff_table', 8)`;
connection master;
}
let $_diff_conn_slave=`SELECT SUBSTR('$_diff_table', 1, 6) = 'slave:'`;
if ($_diff_conn_slave) {
let $_diff_table=`SELECT SUBSTR('$_diff_table', 7)`;
connection slave;
# Parse out any leading "master:" or "slave:" from the table specification
# and connect the appropriate server.
let $_pos= `SELECT LOCATE(':', '$_diff_table')`;
let $_diff_conn=`SELECT SUBSTR('$_diff_table', 1, $_pos-1)`;
if (`SELECT 'XX$_diff_conn' <> 'XX'`) {
let $_diff_table=`SELECT SUBSTR('$_diff_table', $_pos+1)`;
connection $_diff_conn;
}
# Sanity-check the input.

0
mysql-test/include/parser_bug21114.inc Executable file → Normal file
View File

View File

@ -0,0 +1,35 @@
# #############################################################################
# Check whether the given table is consistent between different master and
# slaves
#
# Usage:
# --let $diff_table= test.t1
# --let $diff_server_list= master, slave, slave2
# --source include/rpl_diff_tables.inc
# #############################################################################
if (`SELECT "XX$diff_table" = "XX"`)
{
--die diff_table is null.
}
--let $_servers= master, slave
if (`SELECT "XX$diff_server_list" <> "XX"`)
{
--let $_servers= $diff_server_list
}
--let $_master= `SELECT SUBSTRING_INDEX('$_servers', ',', 1)`
--let $_servers= `SELECT LTRIM(SUBSTRING('$_servers', LENGTH('$_master') + 2))`
connection $_master;
while (`SELECT "XX$_servers" <> "XX"`)
{
--let $_slave= `SELECT SUBSTRING_INDEX('$_servers', ',', 1)`
--let $_servers= `SELECT LTRIM(SUBSTRING('$_servers', LENGTH('$_slave') + 2))`
--sync_slave_with_master $_slave
--let $diff_table_1= $_master:$diff_table
--let $diff_table_2= $_slave:$diff_table
--source include/diff_tables.inc
connection $_slave;
}

0
mysql-test/include/show_msg.inc Executable file → Normal file
View File

0
mysql-test/include/show_msg80.inc Executable file → Normal file
View File

0
mysql-test/lib/My/Handles.pm Executable file → Normal file
View File

0
mysql-test/lib/My/SafeProcess/safe_kill_win.cc Executable file → Normal file
View File

View File

@ -159,7 +159,7 @@ int main(int argc, char* const argv[] )
signal(SIGCHLD, handle_signal);
signal(SIGABRT, handle_abort);
sprintf(safe_process_name, "safe_process[%d]", own_pid);
sprintf(safe_process_name, "safe_process[%ld]", (long) own_pid);
message("Started");

0
mysql-test/lib/My/SafeProcess/safe_process_win.cc Executable file → Normal file
View File

0
mysql-test/r/bug46080.result Executable file → Normal file
View File

0
mysql-test/r/ctype_eucjpms.result Executable file → Normal file
View File

View File

@ -48,5 +48,40 @@ Got one of the listed errors
SET SESSION debug=DEFAULT;
DROP TABLE t1;
#
# Bug#41660: Sort-index_merge for non-first join table may require
# O(#scans) memory
#
CREATE TABLE t1 (a INT);
INSERT INTO t1 VALUES (0), (1), (2), (3), (4), (5), (6), (7), (8), (9);
CREATE TABLE t2 (a INT, b INT, filler CHAR(100), KEY(a), KEY(b));
INSERT INTO t2 SELECT 1000, 1000, 'filler' FROM t1 A, t1 B, t1 C;
INSERT INTO t2 VALUES (1, 1, 'data');
# the example query uses LEFT JOIN only for the sake of being able to
# demonstrate the issue with a very small dataset. (left outer join
# disables the use of join buffering, so we get the second table
# re-scanned for every record in the outer table. if we used inner join,
# we would need to have thousands of records and/or more columns in both
# tables so that the join buffer is filled and re-scans are triggered).
SET SESSION debug = '+d,only_one_Unique_may_be_created';
EXPLAIN
SELECT * FROM t1 LEFT JOIN t2 ON ( t2.a < 10 OR t2.b < 10 );
id select_type table type possible_keys key key_len ref rows Extra
x x x x x x x x x
x x x x x x x x x Using sort_union(a,b); Using where
SELECT * FROM t1 LEFT JOIN t2 ON ( t2.a < 10 OR t2.b < 10 );
a a b filler
0 1 1 data
1 1 1 data
2 1 1 data
3 1 1 data
4 1 1 data
5 1 1 data
6 1 1 data
7 1 1 data
8 1 1 data
9 1 1 data
SET SESSION debug = DEFAULT;
DROP TABLE t1, t2;
#
# End of 5.1 tests
#

View File

@ -750,4 +750,24 @@ id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
DROP TABLE t1;
#
# Bug#54477: Crash on IN / CASE with NULL arguments
#
CREATE TABLE t1 (a INT);
INSERT INTO t1 VALUES (1), (2);
SELECT 1 IN (NULL, a) FROM t1;
1 IN (NULL, a)
1
NULL
SELECT a IN (a, a) FROM t1 GROUP BY a WITH ROLLUP;
a IN (a, a)
1
1
NULL
SELECT CASE a WHEN a THEN a END FROM t1 GROUP BY a WITH ROLLUP;
CASE a WHEN a THEN a END
1
2
NULL
DROP TABLE t1;
#
End of 5.1 tests

View File

@ -169,3 +169,17 @@ select 'andre%' like 'andre
select _cp1251'andre%' like convert('andreÊ%' using cp1251) escape 'Ê';
_cp1251'andre%' like convert('andreÊ%' using cp1251) escape 'Ê'
1
End of 4.1 tests
#
# Bug #54575: crash when joining tables with unique set column
#
CREATE TABLE t1(a SET('a') NOT NULL, UNIQUE KEY(a));
CREATE TABLE t2(b INT PRIMARY KEY);
INSERT INTO t1 VALUES ();
Warnings:
Warning 1364 Field 'a' doesn't have a default value
INSERT INTO t2 VALUES (1), (2), (3);
SELECT 1 FROM t2 JOIN t1 ON 1 LIKE a GROUP BY a;
1
DROP TABLE t1, t2;
End of 5.1 tests

View File

@ -532,3 +532,19 @@ Warnings:
Warning 1292 Truncated incorrect INTEGER value: 'd'
DROP TABLE t1,t2;
End of 5.0 tests
#
# Bug#54416 MAX from JOIN with HAVING returning NULL with 5.1 and Empty set
#
CREATE TABLE t1 (f1 INT(11), f2 VARCHAR(1), PRIMARY KEY (f1));
INSERT INTO t1 VALUES (1,'f');
CREATE TABLE t2 (f1 INT(11), f2 VARCHAR(1));
INSERT INTO t2 VALUES (2,'m');
INSERT INTO t2 VALUES (3,'m');
INSERT INTO t2 VALUES (11,NULL);
INSERT INTO t2 VALUES (12,'k');
SELECT MAX(t1.f1) field1
FROM t1 JOIN t2 ON t2.f2 LIKE 'x'
HAVING field1 < 7;
field1
DROP TABLE t1,t2;
End of 5.1 tests

View File

@ -1681,6 +1681,33 @@ COUNT(*)
DROP USER nonpriv;
DROP TABLE db1.t1;
DROP DATABASE db1;
Bug#54422 query with = 'variables'
CREATE TABLE variables(f1 INT);
SELECT COLUMN_DEFAULT, TABLE_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE INFORMATION_SCHEMA.COLUMNS.TABLE_NAME = 'variables';
COLUMN_DEFAULT TABLE_NAME
NULL variables
DROP TABLE variables;
#
# Bug #53814: NUMERIC_PRECISION for unsigned bigint field is 19,
# should be 20
#
CREATE TABLE ubig (a BIGINT, b BIGINT UNSIGNED);
SELECT TABLE_NAME, COLUMN_NAME, NUMERIC_PRECISION
FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME='ubig';
TABLE_NAME COLUMN_NAME NUMERIC_PRECISION
ubig a 19
ubig b 20
INSERT INTO ubig VALUES (0xFFFFFFFFFFFFFFFF,0xFFFFFFFFFFFFFFFF);
Warnings:
Warning 1264 Out of range value for column 'a' at row 1
SELECT length(CAST(b AS CHAR)) FROM ubig;
length(CAST(b AS CHAR))
20
DROP TABLE ubig;
End of 5.1 tests.
#
# Additional test for WL#3726 "DDL locking for all metadata objects"

View File

@ -25,7 +25,7 @@ WHERE table_schema = 'information_schema'
ORDER BY ordinal_position;
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME parameters
TABLE_NAME PARAMETERS
COLUMN_NAME SPECIFIC_CATALOG
ORDINAL_POSITION 1
COLUMN_DEFAULT
@ -44,7 +44,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME parameters
TABLE_NAME PARAMETERS
COLUMN_NAME SPECIFIC_SCHEMA
ORDINAL_POSITION 2
COLUMN_DEFAULT
@ -63,7 +63,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME parameters
TABLE_NAME PARAMETERS
COLUMN_NAME SPECIFIC_NAME
ORDINAL_POSITION 3
COLUMN_DEFAULT
@ -82,7 +82,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME parameters
TABLE_NAME PARAMETERS
COLUMN_NAME ORDINAL_POSITION
ORDINAL_POSITION 4
COLUMN_DEFAULT 0
@ -101,7 +101,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME parameters
TABLE_NAME PARAMETERS
COLUMN_NAME PARAMETER_MODE
ORDINAL_POSITION 5
COLUMN_DEFAULT NULL
@ -120,7 +120,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME parameters
TABLE_NAME PARAMETERS
COLUMN_NAME PARAMETER_NAME
ORDINAL_POSITION 6
COLUMN_DEFAULT NULL
@ -139,7 +139,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME parameters
TABLE_NAME PARAMETERS
COLUMN_NAME DATA_TYPE
ORDINAL_POSITION 7
COLUMN_DEFAULT
@ -158,7 +158,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME parameters
TABLE_NAME PARAMETERS
COLUMN_NAME CHARACTER_MAXIMUM_LENGTH
ORDINAL_POSITION 8
COLUMN_DEFAULT NULL
@ -177,7 +177,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME parameters
TABLE_NAME PARAMETERS
COLUMN_NAME CHARACTER_OCTET_LENGTH
ORDINAL_POSITION 9
COLUMN_DEFAULT NULL
@ -196,7 +196,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME parameters
TABLE_NAME PARAMETERS
COLUMN_NAME NUMERIC_PRECISION
ORDINAL_POSITION 10
COLUMN_DEFAULT NULL
@ -215,7 +215,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME parameters
TABLE_NAME PARAMETERS
COLUMN_NAME NUMERIC_SCALE
ORDINAL_POSITION 11
COLUMN_DEFAULT NULL
@ -234,7 +234,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME parameters
TABLE_NAME PARAMETERS
COLUMN_NAME CHARACTER_SET_NAME
ORDINAL_POSITION 12
COLUMN_DEFAULT NULL
@ -253,7 +253,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME parameters
TABLE_NAME PARAMETERS
COLUMN_NAME COLLATION_NAME
ORDINAL_POSITION 13
COLUMN_DEFAULT NULL
@ -272,7 +272,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME parameters
TABLE_NAME PARAMETERS
COLUMN_NAME DTD_IDENTIFIER
ORDINAL_POSITION 14
COLUMN_DEFAULT NULL
@ -291,7 +291,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME parameters
TABLE_NAME PARAMETERS
COLUMN_NAME ROUTINE_TYPE
ORDINAL_POSITION 15
COLUMN_DEFAULT

View File

@ -40,7 +40,7 @@ WHERE table_schema = 'information_schema'
ORDER BY ordinal_position;
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME routines
TABLE_NAME ROUTINES
COLUMN_NAME SPECIFIC_NAME
ORDINAL_POSITION 1
COLUMN_DEFAULT
@ -59,7 +59,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME routines
TABLE_NAME ROUTINES
COLUMN_NAME ROUTINE_CATALOG
ORDINAL_POSITION 2
COLUMN_DEFAULT
@ -78,7 +78,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME routines
TABLE_NAME ROUTINES
COLUMN_NAME ROUTINE_SCHEMA
ORDINAL_POSITION 3
COLUMN_DEFAULT
@ -97,7 +97,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME routines
TABLE_NAME ROUTINES
COLUMN_NAME ROUTINE_NAME
ORDINAL_POSITION 4
COLUMN_DEFAULT
@ -116,7 +116,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME routines
TABLE_NAME ROUTINES
COLUMN_NAME ROUTINE_TYPE
ORDINAL_POSITION 5
COLUMN_DEFAULT
@ -135,7 +135,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME routines
TABLE_NAME ROUTINES
COLUMN_NAME DATA_TYPE
ORDINAL_POSITION 6
COLUMN_DEFAULT
@ -154,7 +154,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME routines
TABLE_NAME ROUTINES
COLUMN_NAME CHARACTER_MAXIMUM_LENGTH
ORDINAL_POSITION 7
COLUMN_DEFAULT NULL
@ -173,7 +173,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME routines
TABLE_NAME ROUTINES
COLUMN_NAME CHARACTER_OCTET_LENGTH
ORDINAL_POSITION 8
COLUMN_DEFAULT NULL
@ -192,7 +192,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME routines
TABLE_NAME ROUTINES
COLUMN_NAME NUMERIC_PRECISION
ORDINAL_POSITION 9
COLUMN_DEFAULT NULL
@ -211,7 +211,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME routines
TABLE_NAME ROUTINES
COLUMN_NAME NUMERIC_SCALE
ORDINAL_POSITION 10
COLUMN_DEFAULT NULL
@ -230,7 +230,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME routines
TABLE_NAME ROUTINES
COLUMN_NAME CHARACTER_SET_NAME
ORDINAL_POSITION 11
COLUMN_DEFAULT NULL
@ -249,7 +249,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME routines
TABLE_NAME ROUTINES
COLUMN_NAME COLLATION_NAME
ORDINAL_POSITION 12
COLUMN_DEFAULT NULL
@ -268,7 +268,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME routines
TABLE_NAME ROUTINES
COLUMN_NAME DTD_IDENTIFIER
ORDINAL_POSITION 13
COLUMN_DEFAULT NULL
@ -287,7 +287,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME routines
TABLE_NAME ROUTINES
COLUMN_NAME ROUTINE_BODY
ORDINAL_POSITION 14
COLUMN_DEFAULT
@ -306,7 +306,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME routines
TABLE_NAME ROUTINES
COLUMN_NAME ROUTINE_DEFINITION
ORDINAL_POSITION 15
COLUMN_DEFAULT NULL
@ -325,7 +325,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME routines
TABLE_NAME ROUTINES
COLUMN_NAME EXTERNAL_NAME
ORDINAL_POSITION 16
COLUMN_DEFAULT NULL
@ -344,7 +344,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME routines
TABLE_NAME ROUTINES
COLUMN_NAME EXTERNAL_LANGUAGE
ORDINAL_POSITION 17
COLUMN_DEFAULT NULL
@ -363,7 +363,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME routines
TABLE_NAME ROUTINES
COLUMN_NAME PARAMETER_STYLE
ORDINAL_POSITION 18
COLUMN_DEFAULT
@ -382,7 +382,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME routines
TABLE_NAME ROUTINES
COLUMN_NAME IS_DETERMINISTIC
ORDINAL_POSITION 19
COLUMN_DEFAULT
@ -401,7 +401,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME routines
TABLE_NAME ROUTINES
COLUMN_NAME SQL_DATA_ACCESS
ORDINAL_POSITION 20
COLUMN_DEFAULT
@ -420,7 +420,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME routines
TABLE_NAME ROUTINES
COLUMN_NAME SQL_PATH
ORDINAL_POSITION 21
COLUMN_DEFAULT NULL
@ -439,7 +439,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME routines
TABLE_NAME ROUTINES
COLUMN_NAME SECURITY_TYPE
ORDINAL_POSITION 22
COLUMN_DEFAULT
@ -458,7 +458,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME routines
TABLE_NAME ROUTINES
COLUMN_NAME CREATED
ORDINAL_POSITION 23
COLUMN_DEFAULT 0000-00-00 00:00:00
@ -477,7 +477,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME routines
TABLE_NAME ROUTINES
COLUMN_NAME LAST_ALTERED
ORDINAL_POSITION 24
COLUMN_DEFAULT 0000-00-00 00:00:00
@ -496,7 +496,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME routines
TABLE_NAME ROUTINES
COLUMN_NAME SQL_MODE
ORDINAL_POSITION 25
COLUMN_DEFAULT
@ -515,7 +515,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME routines
TABLE_NAME ROUTINES
COLUMN_NAME ROUTINE_COMMENT
ORDINAL_POSITION 26
COLUMN_DEFAULT NULL
@ -534,7 +534,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME routines
TABLE_NAME ROUTINES
COLUMN_NAME DEFINER
ORDINAL_POSITION 27
COLUMN_DEFAULT
@ -553,7 +553,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME routines
TABLE_NAME ROUTINES
COLUMN_NAME CHARACTER_SET_CLIENT
ORDINAL_POSITION 28
COLUMN_DEFAULT
@ -572,7 +572,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME routines
TABLE_NAME ROUTINES
COLUMN_NAME COLLATION_CONNECTION
ORDINAL_POSITION 29
COLUMN_DEFAULT
@ -591,7 +591,7 @@ PRIVILEGES #
COLUMN_COMMENT
TABLE_CATALOG def
TABLE_SCHEMA information_schema
TABLE_NAME routines
TABLE_NAME ROUTINES
COLUMN_NAME DATABASE_COLLATION
ORDINAL_POSITION 30
COLUMN_DEFAULT

View File

@ -503,4 +503,33 @@ DROP TABLE t1;
CREATE TABLE t1 (id INT NOT NULL);
LOAD DATA LOCAL INFILE 'tb.txt' INTO TABLE t1;
DROP TABLE t1;
#
# Bug #51876 : crash/memory underrun when loading data with ucs2
# and reverse() function
#
# Problem # 1 (original report): wrong parsing of ucs2 data
SELECT '00' UNION SELECT '10' INTO OUTFILE 'tmpp.txt';
CREATE TABLE t1(a INT);
LOAD DATA INFILE 'tmpp.txt' INTO TABLE t1 CHARACTER SET ucs2
(@b) SET a=REVERSE(@b);
Warnings:
Warning 1366 Incorrect integer value: '?' for column 'a' at row 1
Warning 1366 Incorrect integer value: '?' for column 'a' at row 2
# should return 2 zeroes (as the value is truncated)
SELECT * FROM t1;
a
0
0
DROP TABLE t1;
# Problem # 2 : if you write and read ucs2 data to a file they're lost
SELECT '00' UNION SELECT '10' INTO OUTFILE 'tmpp2.txt' CHARACTER SET ucs2;
CREATE TABLE t1(a INT);
LOAD DATA INFILE 'tmpp2.txt' INTO TABLE t1 CHARACTER SET ucs2
(@b) SET a=REVERSE(@b);
# should return 0 and 1 (10 reversed)
SELECT * FROM t1;
a
0
1
DROP TABLE t1;
End of 5.1 tests

0
mysql-test/r/lowercase_mixed_tmpdir_innodb.result Executable file → Normal file
View File

View File

@ -148,3 +148,20 @@ a
DROP VIEW v1;
DROP TABLE t1;
End of 5.0 tests.
#
# Bug #53095: SELECT column_name FROM INFORMATION_SCHEMA.STATISTICS
# returns nothing
#
CREATE TABLE `ttt` (
`f1` char(3) NOT NULL,
PRIMARY KEY (`f1`)
) ENGINE=myisam DEFAULT CHARSET=latin1;
SELECT count(COLUMN_NAME) FROM INFORMATION_SCHEMA.STATISTICS WHERE TABLE_NAME =
'TTT';
count(COLUMN_NAME)
1
SELECT count(*) FROM INFORMATION_SCHEMA.STATISTICS WHERE TABLE_NAME = 'TTT';
count(*)
1
DROP TABLE `ttt`;
End of 5.0 tests.

View File

@ -169,4 +169,46 @@ DROP PROCEDURE testproc;
WARNING: NULL values of the 'character_set_client' column ('mysql.proc' table) have been updated with a default value (latin1). Please verify if necessary.
WARNING: NULL values of the 'collation_connection' column ('mysql.proc' table) have been updated with a default value (latin1_swedish_ci). Please verify if necessary.
WARNING: NULL values of the 'db_collation' column ('mysql.proc' table) have been updated with default values. Please verify if necessary.
#
# Bug #53613: mysql_upgrade incorrectly revokes
# TRIGGER privilege on given table
#
GRANT USAGE ON *.* TO 'user3'@'%';
GRANT ALL PRIVILEGES ON `roelt`.`test2` TO 'user3'@'%';
Run mysql_upgrade with all privileges on a user
mtr.global_suppressions OK
mtr.test_suppressions OK
mysql.columns_priv OK
mysql.db OK
mysql.event OK
mysql.func OK
mysql.general_log
Error : You can't use locks with log tables.
status : OK
mysql.help_category OK
mysql.help_keyword OK
mysql.help_relation OK
mysql.help_topic OK
mysql.host OK
mysql.ndb_binlog_index OK
mysql.plugin OK
mysql.proc OK
mysql.procs_priv OK
mysql.servers OK
mysql.slow_log
Error : You can't use locks with log tables.
status : OK
mysql.tables_priv OK
mysql.time_zone OK
mysql.time_zone_leap_second OK
mysql.time_zone_name OK
mysql.time_zone_transition OK
mysql.time_zone_transition_type OK
mysql.user OK
SHOW GRANTS FOR 'user3'@'%';
Grants for user3@%
GRANT USAGE ON *.* TO 'user3'@'%'
GRANT ALL PRIVILEGES ON `roelt`.`test2` TO 'user3'@'%'
DROP USER 'user3'@'%';
End of 5.1 tests
The --upgrade-system-tables option was used, databases won't be touched.

View File

@ -4856,6 +4856,21 @@ a b c
SELECT * FROM t1 WHERE 102 < c;
a b c
DROP TABLE t1;
#
# Bug #54459: Assertion failed: param.sort_length,
# file .\filesort.cc, line 149 (part II)
#
CREATE TABLE t1(a ENUM('') NOT NULL);
INSERT INTO t1 VALUES (), (), ();
EXPLAIN SELECT 1 FROM t1 ORDER BY a COLLATE latin1_german2_ci;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL NULL NULL NULL NULL 3
SELECT 1 FROM t1 ORDER BY a COLLATE latin1_german2_ci;
1
1
1
1
DROP TABLE t1;
End of 5.1 tests
#
# Bug#54515: Crash in opt_range.cc::get_best_group_min_max on

View File

@ -4988,3 +4988,20 @@ t1_id total_amount
DROP TABLE t3;
DROP TABLE t2;
DROP TABLE t1;
#
# Bug #52711: Segfault when doing EXPLAIN SELECT with
# union...order by (select... where...)
#
CREATE TABLE t1 (a VARCHAR(10), FULLTEXT KEY a (a));
INSERT INTO t1 VALUES (1),(2);
CREATE TABLE t2 (b INT);
INSERT INTO t2 VALUES (1),(2);
# Should not crash
EXPLAIN
SELECT * FROM t2 UNION SELECT * FROM t2
ORDER BY (SELECT * FROM t1 WHERE MATCH(a) AGAINST ('+abc' IN BOOLEAN MODE));
# Should not crash
SELECT * FROM t2 UNION SELECT * FROM t2
ORDER BY (SELECT * FROM t1 WHERE MATCH(a) AGAINST ('+abc' IN BOOLEAN MODE));
DROP TABLE t1,t2;
End of 5.1 tests

View File

@ -0,0 +1,441 @@
3304605 1221256 0 0 abcdefghijklmnopwrst
3304606 1221259 0 0 abcdefghijklmnopwrst
3304607 1221260 0 0 asdfghjklzxcvbnm
3304629 1221273 0 0 asdfghjklzxcvbnm
3304630 1221273 0 0 asdfghjklzxcvbnm
3304634 1221259 0 0 asdfghjklzxcvbnm
3304644 1221278 0 0 abcdefghijklmnopwrst
3304648 1221278 0 0 abcdefghijklmnopwrst
3304649 1221278 0 1 asdfghjklzxcvbnm
3304650 1221278 0 0 asdfghjklzxcvbnm
3304651 1221282 0 0 abcdefghijklmnopwrst
3304660 1221287 0 0 asdfghjklzxcvbnm
3304662 1221288 0 0 abcdefghijklmnopwrst
3304663 1221288 0 0 abcdefghijklmnopwrst
3304664 1221290 0 0 abcdefghijklmnopwrst
3304670 1221290 0 0 asdfghjklzxcvbnm
3304671 1221292 0 0 abcdefghijklmnopwrst
3304672 1221287 0 0 asdfghjklzxcvbnm
3304673 1221294 0 0 asdfghjklzxcvbnm
3304674 1221287 0 0 asdfghjklzxcvbnm
3304676 1221296 0 0 abcdefghijklmnopwrst
3304677 1221287 0 0 abcdefghijklmnopwrst
3304678 1221287 0 0 abcdefghijklmnopwrst
3304679 1221297 0 0 asdfghjklzxcvbnm
3304680 1221290 0 0 abcdefghijklmnopwrst
3304681 1221290 0 0 abcdefghijklmnopwrst
3304685 1221300 0 0 asdfghjklzxcvbnm
3304687 1221302 0 0 abcdefghijklmnopwrst
3304688 1221296 1221298 0 abcdefghijklmnopwrst
3304692 1221309 0 0 asdfghjklzxcvbnm
3304694 1221309 0 0 asdfghjklzxcvbnm
3304695 1221290 0 0 abcdefghijklmnopwrst
3304696 1221313 0 0 asdfghjklzxcvbnm
3304701 1221314 0 0 asdfghjklzxcvbnm
3304703 1221313 0 0 abcdefghijklmnopwrst
3304707 1221313 0 0 asdfghjklzxcvbnm
3304709 1221313 0 0 abcdefghijklmnopwrst
3304713 1221314 0 0 abcdefghijklmnopwrst
3304715 1221317 0 0 abcdefghijklmnopwrst
3304717 1221319 0 0 asdfghjklzxcvbnm
3304718 1221320 0 0 abcdefghijklmnopwrst
3304723 1221314 0 0 abcdefghijklmnopwrst
3304724 1221314 0 0 asdfghjklzxcvbnm
3304725 1221300 0 0 asdfghjklzxcvbnm
3304726 1221314 0 0 asdfghjklzxcvbnm
3304730 1221326 0 0 asdfghjklzxcvbnm
3304732 1221328 0 0 asdfghjklzxcvbnm
3304733 1221329 0 0 asdfghjklzxcvbnm
3304745 1221331 0 0 abcdefghijklmnopwrst
3304747 1221300 0 0 abcdefghijklmnopwrst
3304752 1221332 0 0 asdfghjklzxcvbnm
3304756 1221333 0 0 asdfghjklzxcvbnm
3304765 1221336 0 0 asdfghjklzxcvbnm
3304767 1221338 0 0 abcdefghijklmnopwrst
3304769 1221340 0 0 asdfghjklzxcvbnm
3304770 1221328 0 0 asdfghjklzxcvbnm
3304771 1221328 0 0 abcdefghijklmnopwrst
3304773 1221340 0 0 asdfghjklzxcvbnm
3304774 1221340 0 0 abcdefghijklmnopwrst
3304775 1221338 1221342 1 asdfghjklzxcvbnm
3304778 1221345 0 0 asdfghjklzxcvbnm
3304786 1221332 0 0 asdfghjklzxcvbnm
3304787 1221347 0 0 abcdefghijklmnopwrst
3304789 1221347 0 0 asdfghjklzxcvbnm
3304793 1221349 0 0 abcdefghijklmnopwrst
3304794 1221350 0 0 asdfghjklzxcvbnm
3304800 1221290 0 0 asdfghjklzxcvbnm
3304802 1221290 0 0 asdfghjklzxcvbnm
3304803 1221290 0 0 asdfghjklzxcvbnm
3304810 1221356 0 0 asdfghjklzxcvbnm
3304811 1221356 0 0 asdfghjklzxcvbnm
3304821 1221364 0 0 asdfghjklzxcvbnm
3304823 1221365 0 0 asdfghjklzxcvbnm
3304824 1221366 0 0 abcdefghijklmnopwrst
3304825 1221365 0 0 asdfghjklzxcvbnm
3304826 1221367 0 0 asdfghjklzxcvbnm
3304828 1221369 0 0 abcdefghijklmnopwrst
3304829 1221366 1221368 0 asdfghjklzxcvbnm
3304831 1221372 0 0 abcdefghijklmnopwrst
3304832 1221364 1221373 0 abcdefghijklmnopwrst
3304833 1221364 1221371 0 asdfghjklzxcvbnm
3304834 1221364 0 0 abcdefghijklmnopwrst
3304836 1221375 0 0 abcdefghijklmnopwrst
3304837 1221364 0 0 abcdefghijklmnopwrst
3304838 1221364 1221376 0 asdfghjklzxcvbnm
3304840 1221372 0 0 asdfghjklzxcvbnm
3304842 1221372 0 1 abcdefghijklmnopwrst
3304844 1221372 0 0 asdfghjklzxcvbnm
3304845 1221372 0 0 abcdefghijklmnopwrst
3304847 1221382 0 0 abcdefghijklmnopwrst
3304848 1221372 0 0 abcdefghijklmnopwrst
3304849 1221372 0 0 asdfghjklzxcvbnm
3304852 1221364 1221378 0 asdfghjklzxcvbnm
3304853 1221383 0 0 abcdefghijklmnopwrst
3304854 1221384 0 0 asdfghjklzxcvbnm
3304855 1221347 0 0 asdfghjklzxcvbnm
3304858 1221383 0 0 abcdefghijklmnopwrst
3304862 1221386 0 0 abcdefghijklmnopwrst
3304864 1221387 0 0 abcdefghijklmnopwrst
3304867 1221389 0 0 abcdefghijklmnopwrst
3304868 1221390 0 0 asdfghjklzxcvbnm
3304869 1221391 0 0 asdfghjklzxcvbnm
3304871 1221393 0 0 asdfghjklzxcvbnm
3304874 1221395 0 0 abcdefghijklmnopwrst
3304877 1221396 0 0 abcdefghijklmnopwrst
3304879 1221396 0 0 asdfghjklzxcvbnm
3304882 1221398 0 0 abcdefghijklmnopwrst
3304883 1221399 0 0 abcdefghijklmnopwrst
3304884 1221400 0 0 abcdefghijklmnopwrst
3304889 1221405 0 0 abcdefghijklmnopwrst
3304895 1221409 0 0 asdfghjklzxcvbnm
3304899 1221395 0 0 asdfghjklzxcvbnm
3304900 1221395 0 0 asdfghjklzxcvbnm
3304902 1221395 0 0 abcdefghijklmnopwrst
3304903 1221395 0 0 asdfghjklzxcvbnm
3304924 1221414 0 0 abcdefghijklmnopwrst
3304925 1221415 0 0 asdfghjklzxcvbnm
3304935 1221416 0 0 asdfghjklzxcvbnm
3304936 1221418 0 0 asdfghjklzxcvbnm
3304944 1221419 0 0 abcdefghijklmnopwrst
3304959 1221427 0 0 asdfghjklzxcvbnm
3304963 1221415 0 0 asdfghjklzxcvbnm
3304964 1221428 0 0 asdfghjklzxcvbnm
3304965 1221429 0 0 abcdefghijklmnopwrst
3304978 1221433 0 0 abcdefghijklmnopwrst
3304986 1221437 0 0 asdfghjklzxcvbnm
3304988 1221439 0 0 asdfghjklzxcvbnm
3304994 1221441 0 0 asdfghjklzxcvbnm
3304996 1221442 0 0 asdfghjklzxcvbnm
3304998 1221443 0 0 asdfghjklzxcvbnm
3305003 1221446 0 0 abcdefghijklmnopwrst
3305008 1221433 0 0 abcdefghijklmnopwrst
3305009 1221447 0 0 asdfghjklzxcvbnm
3305012 1221447 0 0 asdfghjklzxcvbnm
3305013 1221449 0 0 abcdefghijklmnopwrst
3305015 1221451 0 0 asdfghjklzxcvbnm
3305019 1221453 0 0 asdfghjklzxcvbnm
3305023 1221449 0 0 asdfghjklzxcvbnm
3305026 1221456 0 0 abcdefghijklmnopwrst
3305028 1221457 0 0 asdfghjklzxcvbnm
3305032 1221449 0 0 asdfghjklzxcvbnm
3305037 1221453 0 0 asdfghjklzxcvbnm
3305040 1221451 0 0 asdfghjklzxcvbnm
3305061 1221446 0 0 abcdefghijklmnopwrst
3305175 1221457 0 0 abcdefghijklmnopwrst
3305304 1221453 0 0 abcdefghijklmnopwrst
3305308 1221453 0 1 abcdefghijklmnopwrst
3305333 1221457 1221577 0 asdfghjklzxcvbnm
3305335 1221453 0 0 asdfghjklzxcvbnm
3305354 1221457 0 1 asdfghjklzxcvbnm
3306089 1221442 0 0 abcdefghijklmnopwrst
3306090 1221442 0 0 abcdefghijklmnopwrst
3306092 1221442 0 0 asdfghjklzxcvbnm
3306345 1221366 0 0 asdfghjklzxcvbnm
3306349 1221366 0 0 asdfghjklzxcvbnm
3306419 1221364 1221371 0 asdfghjklzxcvbnm
3307390 1221453 0 0 abcdefghijklmnopwrst
3308002 1221416 1221417 0 abcdefghijklmnopwrst
3308331 1221366 1222821 0 abcdefghijklmnopwrst
3309991 1221347 0 0 asdfghjklzxcvbnm
3311917 1221287 0 0 abcdefghijklmnopwrst
3311937 1221287 0 0 abcdefghijklmnopwrst
3311945 1221287 0 0 asdfghjklzxcvbnm
3311955 1221287 0 0 abcdefghijklmnopwrst
3311961 1221287 0 0 asdfghjklzxcvbnm
3311963 1221287 0 1 asdfghjklzxcvbnm
3311968 1221287 0 0 asdfghjklzxcvbnm
3311974 1221287 0 1 abcdefghijklmnopwrst
3311976 1221287 0 1 abcdefghijklmnopwrst
3311981 1221287 0 1 abcdefghijklmnopwrst
3311985 1221287 0 1 asdfghjklzxcvbnm
3312014 1221287 0 0 abcdefghijklmnopwrst
3312018 1221287 0 1 abcdefghijklmnopwrst
3312025 1221287 0 0 abcdefghijklmnopwrst
3312027 1221287 0 0 abcdefghijklmnopwrst
3312030 1221287 0 0 abcdefghijklmnopwrst
3313755 1221288 0 0 abcdefghijklmnopwrst
3313767 1221288 0 0 asdfghjklzxcvbnm
3314668 1221290 0 0 asdfghjklzxcvbnm
3314670 1221290 0 0 abcdefghijklmnopwrst
3323440 1221338 0 0 abcdefghijklmnopwrst
3323736 1221338 0 0 asdfghjklzxcvbnm
3323739 1221338 0 0 asdfghjklzxcvbnm
3324077 1221290 0 0 asdfghjklzxcvbnm
3324081 1221290 0 0 abcdefghijklmnopwrst
3324082 1221290 0 0 abcdefghijklmnopwrst
3324639 1221457 1221563 1 asdfghjklzxcvbnm
3326180 1221287 0 0 abcdefghijklmnopwrst
3326204 1221287 0 0 asdfghjklzxcvbnm
3326945 1221457 1221563 1 asdfghjklzxcvbnm
3328393 1221364 1221373 0 asdfghjklzxcvbnm
3328966 1221287 0 0 abcdefghijklmnopwrst
3329875 1221457 1382427 0 abcdefghijklmnopwrst
3333449 1221278 1231113 0 abcdefghijklmnopwrst
3336022 1221457 0 0 abcdefghijklmnopwrst
3340069 1221364 1221373 0 abcdefghijklmnopwrst
3340073 1221364 1221373 0 abcdefghijklmnopwrst
3340563 1221290 0 0 asdfghjklzxcvbnm
3341553 1221453 0 0 abcdefghijklmnopwrst
3345868 1221287 0 0 asdfghjklzxcvbnm
3345873 1221287 0 0 abcdefghijklmnopwrst
3345879 1221287 0 0 asdfghjklzxcvbnm
3346860 1221457 0 0 abcdefghijklmnopwrst
3347053 1221287 0 0 asdfghjklzxcvbnm
3347109 1221287 0 1 abcdefghijklmnopwrst
3350589 1221372 1236415 0 abcdefghijklmnopwrst
3350594 1221372 1236415 1 asdfghjklzxcvbnm
3353871 1221457 0 0 asdfghjklzxcvbnm
3354727 1221364 1221373 0 abcdefghijklmnopwrst
3355270 1221393 0 1 abcdefghijklmnopwrst
3357638 1221287 0 0 asdfghjklzxcvbnm
3357644 1221287 0 0 abcdefghijklmnopwrst
3357648 1221287 0 0 abcdefghijklmnopwrst
3357651 1221287 0 0 asdfghjklzxcvbnm
3357661 1221287 0 0 abcdefghijklmnopwrst
3357678 1221287 0 0 abcdefghijklmnopwrst
3357697 1221287 0 0 asdfghjklzxcvbnm
3357737 1221287 0 0 asdfghjklzxcvbnm
3357744 1221287 0 0 abcdefghijklmnopwrst
3357754 1221287 0 1 asdfghjklzxcvbnm
3357760 1221287 0 1 abcdefghijklmnopwrst
3357774 1221287 0 1 abcdefghijklmnopwrst
3357779 1221287 0 0 abcdefghijklmnopwrst
3357796 1221287 0 0 asdfghjklzxcvbnm
3357814 1221287 0 0 asdfghjklzxcvbnm
3357833 1221287 0 1 asdfghjklzxcvbnm
3357835 1221287 0 0 abcdefghijklmnopwrst
3357840 1221287 0 1 asdfghjklzxcvbnm
3357842 1221287 0 0 abcdefghijklmnopwrst
3357845 1221287 0 1 abcdefghijklmnopwrst
3357849 1221287 0 1 abcdefghijklmnopwrst
3357852 1221287 0 0 abcdefghijklmnopwrst
3358935 1221443 0 1 abcdefghijklmnopwrst
3358967 1221443 0 1 abcdefghijklmnopwrst
3359181 1221256 0 0 abcdefghijklmnopwrst
3360512 1221319 0 0 asdfghjklzxcvbnm
3362004 1221287 0 0 abcdefghijklmnopwrst
3362009 1221287 0 1 abcdefghijklmnopwrst
3362358 1221287 0 0 asdfghjklzxcvbnm
3363214 1221287 0 0 abcdefghijklmnopwrst
3363238 1221287 0 1 asdfghjklzxcvbnm
3363616 1221287 0 1 asdfghjklzxcvbnm
3363631 1221287 0 0 asdfghjklzxcvbnm
3364281 1221287 0 0 abcdefghijklmnopwrst
3365900 1221347 0 0 asdfghjklzxcvbnm
3365901 1221347 0 0 asdfghjklzxcvbnm
3365906 1221347 0 0 asdfghjklzxcvbnm
3365907 1221347 0 0 asdfghjklzxcvbnm
3365910 1221347 0 0 abcdefghijklmnopwrst
3365936 1221347 0 0 abcdefghijklmnopwrst
3367846 1221287 0 0 abcdefghijklmnopwrst
3368011 1221428 0 0 abcdefghijklmnopwrst
3369882 1221300 0 0 asdfghjklzxcvbnm
3370856 1221443 0 0 asdfghjklzxcvbnm
3370861 1221443 1221445 0 abcdefghijklmnopwrst
3375327 1221443 0 0 abcdefghijklmnopwrst
3375333 1221443 1221445 0 abcdefghijklmnopwrst
3376219 1221453 0 1 abcdefghijklmnopwrst
3376228 1221453 0 0 abcdefghijklmnopwrst
3376238 1221453 0 0 asdfghjklzxcvbnm
3376243 1221453 0 0 abcdefghijklmnopwrst
3376248 1221453 0 1 abcdefghijklmnopwrst
3376254 1221453 0 0 abcdefghijklmnopwrst
3376263 1221453 0 0 abcdefghijklmnopwrst
3376272 1221453 0 1 asdfghjklzxcvbnm
3376281 1221453 0 0 asdfghjklzxcvbnm
3376290 1221453 0 0 abcdefghijklmnopwrst
3376296 1221453 0 1 abcdefghijklmnopwrst
3376301 1221453 0 0 asdfghjklzxcvbnm
3376350 1221453 0 0 asdfghjklzxcvbnm
3379002 1221453 0 0 abcdefghijklmnopwrst
3379015 1221453 0 0 asdfghjklzxcvbnm
3379025 1221453 0 0 abcdefghijklmnopwrst
3379032 1221453 0 0 asdfghjklzxcvbnm
3380181 1221372 1245650 0 asdfghjklzxcvbnm
3380186 1221372 1245650 0 abcdefghijklmnopwrst
3380190 1221372 1245650 0 asdfghjklzxcvbnm
3380195 1221372 1245650 0 abcdefghijklmnopwrst
3380202 1221372 1245650 0 asdfghjklzxcvbnm
3380683 1221287 0 0 asdfghjklzxcvbnm
3382317 1221453 0 0 abcdefghijklmnopwrst
3382417 1221287 0 0 asdfghjklzxcvbnm
3383523 1221338 0 1 abcdefghijklmnopwrst
3387213 1221287 0 0 abcdefghijklmnopwrst
3388139 1221453 0 0 asdfghjklzxcvbnm
3398039 1221443 1251164 0 abcdefghijklmnopwrst
3401835 1221453 0 0 asdfghjklzxcvbnm
3412582 1221443 1255886 0 asdfghjklzxcvbnm
3412583 1221443 1255886 0 asdfghjklzxcvbnm
3413795 1221443 1255886 0 asdfghjklzxcvbnm
3413813 1221443 1256258 0 asdfghjklzxcvbnm
3420306 1221453 0 0 asdfghjklzxcvbnm
3420354 1221453 0 0 asdfghjklzxcvbnm
3425653 1221443 0 0 abcdefghijklmnopwrst
3425658 1221443 0 0 asdfghjklzxcvbnm
3431409 1221453 0 0 asdfghjklzxcvbnm
3432510 1221443 1262320 0 asdfghjklzxcvbnm
3432513 1221443 1262320 0 asdfghjklzxcvbnm
3444444 1221443 1262320 0 abcdefghijklmnopwrst
3445447 1221287 0 1 asdfghjklzxcvbnm
3448662 1221338 0 0 asdfghjklzxcvbnm
3450032 1221347 0 0 abcdefghijklmnopwrst
3450259 1221453 0 0 abcdefghijklmnopwrst
3452176 1221453 0 0 asdfghjklzxcvbnm
3459239 1221347 0 0 asdfghjklzxcvbnm
3463196 1221347 0 0 abcdefghijklmnopwrst
3468759 1221453 0 0 abcdefghijklmnopwrst
3470988 1221457 0 0 asdfghjklzxcvbnm
3477116 1221287 0 0 asdfghjklzxcvbnm
3477639 1221372 1277136 0 abcdefghijklmnopwrst
3477656 1221372 1277136 0 asdfghjklzxcvbnm
3488071 1221256 1238964 0 abcdefghijklmnopwrst
3488079 1221256 0 0 asdfghjklzxcvbnm
3488108 1221256 0 1 asdfghjklzxcvbnm
3507126 1221287 0 1 asdfghjklzxcvbnm
3511898 1221347 0 0 asdfghjklzxcvbnm
3521780 1221453 0 0 abcdefghijklmnopwrst
3536908 1221287 0 0 abcdefghijklmnopwrst
3544231 1221329 0 1 asdfghjklzxcvbnm
3545379 1221329 1298955 0 abcdefghijklmnopwrst
3545384 1221329 1298955 0 abcdefghijklmnopwrst
3545387 1221329 1298955 0 abcdefghijklmnopwrst
3545389 1221329 1298955 1 abcdefghijklmnopwrst
3545398 1221329 1298955 1 abcdefghijklmnopwrst
3555715 1221287 0 0 asdfghjklzxcvbnm
3563557 1221329 1298955 0 abcdefghijklmnopwrst
3564322 1221338 0 0 asdfghjklzxcvbnm
3565475 1221453 0 0 abcdefghijklmnopwrst
3577588 1221287 0 0 asdfghjklzxcvbnm
3600047 1221453 0 0 abcdefghijklmnopwrst
3600062 1221453 0 0 asdfghjklzxcvbnm
3600071 1221453 0 0 abcdefghijklmnopwrst
3600080 1221453 0 1 abcdefghijklmnopwrst
3600086 1221453 0 0 asdfghjklzxcvbnm
3600091 1221453 0 1 abcdefghijklmnopwrst
3600097 1221453 0 0 asdfghjklzxcvbnm
3600103 1221453 0 0 asdfghjklzxcvbnm
3600106 1221453 0 0 abcdefghijklmnopwrst
3600113 1221453 0 0 abcdefghijklmnopwrst
3600119 1221453 0 0 asdfghjklzxcvbnm
3600124 1221453 0 0 abcdefghijklmnopwrst
3600144 1221453 0 0 asdfghjklzxcvbnm
3600152 1221453 0 0 asdfghjklzxcvbnm
3600165 1221453 0 0 asdfghjklzxcvbnm
3610561 1221287 0 0 abcdefghijklmnopwrst
3617030 1221329 0 0 asdfghjklzxcvbnm
3628347 1221443 1327098 0 abcdefghijklmnopwrst
3628348 1221443 1327098 0 abcdefghijklmnopwrst
3628646 1221443 0 0 asdfghjklzxcvbnm
3633673 1221372 1328838 0 abcdefghijklmnopwrst
3648489 1221443 0 0 asdfghjklzxcvbnm
3648490 1221443 0 0 asdfghjklzxcvbnm
3648534 1221443 1333827 0 asdfghjklzxcvbnm
3653046 1221329 1298955 0 asdfghjklzxcvbnm
3662680 1221287 0 0 asdfghjklzxcvbnm
3699529 1221288 0 0 asdfghjklzxcvbnm
3706659 1221453 0 0 asdfghjklzxcvbnm
3723399 1221287 0 1 asdfghjklzxcvbnm
3749934 1221278 0 0 abcdefghijklmnopwrst
3761370 1221443 1371176 0 asdfghjklzxcvbnm
3765884 1221443 1333827 0 abcdefghijklmnopwrst
3772880 1221457 0 0 abcdefghijklmnopwrst
3779574 1221457 1372998 1 abcdefghijklmnopwrst
3784656 1221457 1372998 1 abcdefghijklmnopwrst
3784700 1221457 1372998 1 abcdefghijklmnopwrst
3784744 1221457 1382427 0 abcdefghijklmnopwrst
3796187 1221457 1382427 1 abcdefghijklmnopwrst
3796193 1221457 0 0 abcdefghijklmnopwrst
3817277 1221457 1382427 0 asdfghjklzxcvbnm
3828282 1221457 0 0 abcdefghijklmnopwrst
3828297 1221457 0 0 abcdefghijklmnopwrst
3828300 1221457 0 0 abcdefghijklmnopwrst
3833022 1221287 0 0 asdfghjklzxcvbnm
3856380 1221457 1395359 0 asdfghjklzxcvbnm
3856391 1221457 0 0 asdfghjklzxcvbnm
3861413 1221256 0 0 abcdefghijklmnopwrst
3864734 1221393 0 1 abcdefghijklmnopwrst
3868051 1221329 0 0 abcdefghijklmnopwrst
3868059 1221329 0 0 abcdefghijklmnopwrst
3869088 1221329 0 0 abcdefghijklmnopwrst
3878669 1221329 1298955 0 asdfghjklzxcvbnm
3878684 1221329 1298955 0 asdfghjklzxcvbnm
3881785 1221287 0 0 abcdefghijklmnopwrst
3882333 1221287 0 0 asdfghjklzxcvbnm
3882389 1221287 0 0 abcdefghijklmnopwrst
3908680 1221372 1245650 0 asdfghjklzxcvbnm
3908690 1221372 1245650 0 asdfghjklzxcvbnm
3908697 1221372 1245650 0 abcdefghijklmnopwrst
3911434 1221453 0 0 abcdefghijklmnopwrst
3911446 1221453 0 0 asdfghjklzxcvbnm
3911448 1221453 0 0 abcdefghijklmnopwrst
3911489 1221453 0 0 abcdefghijklmnopwrst
3917384 1221453 0 0 abcdefghijklmnopwrst
3939602 1221457 0 1 asdfghjklzxcvbnm
3962210 1221453 0 0 asdfghjklzxcvbnm
3963734 1221457 0 0 asdfghjklzxcvbnm
3977364 1221287 0 0 asdfghjklzxcvbnm
3981725 1221453 0 0 abcdefghijklmnopwrst
4042952 1221453 0 0 abcdefghijklmnopwrst
4042953 1221453 0 0 abcdefghijklmnopwrst
4042958 1221453 0 0 abcdefghijklmnopwrst
4042960 1221453 0 1 abcdefghijklmnopwrst
4042965 1221453 0 0 asdfghjklzxcvbnm
4066893 1221453 0 1 abcdefghijklmnopwrst
4066896 1221453 0 0 abcdefghijklmnopwrst
4066900 1221453 0 0 abcdefghijklmnopwrst
4066908 1221453 0 0 abcdefghijklmnopwrst
4066912 1221453 0 0 asdfghjklzxcvbnm
4066915 1221453 0 0 asdfghjklzxcvbnm
4066919 1221453 0 0 abcdefghijklmnopwrst
4066924 1221453 0 0 asdfghjklzxcvbnm
4066929 1221453 0 0 abcdefghijklmnopwrst
4066934 1221453 0 0 asdfghjklzxcvbnm
4066941 1221453 0 0 abcdefghijklmnopwrst
4066946 1221453 0 0 asdfghjklzxcvbnm
4066955 1221453 0 0 abcdefghijklmnopwrst
4116291 1221433 1487238 0 asdfghjklzxcvbnm
4116295 1221433 1487238 0 abcdefghijklmnopwrst
4116450 1221433 1487238 0 abcdefghijklmnopwrst
4121149 1221287 0 0 asdfghjklzxcvbnm
4137325 1221453 0 0 abcdefghijklmnopwrst
4149051 1221287 0 0 abcdefghijklmnopwrst
4162347 1221287 0 0 abcdefghijklmnopwrst
4164485 1221457 0 1 asdfghjklzxcvbnm
4174706 1221457 0 0 abcdefghijklmnopwrst
4178645 1221457 0 0 abcdefghijklmnopwrst
4180122 1221457 1382427 0 asdfghjklzxcvbnm
4180925 1221457 1382427 0 asdfghjklzxcvbnm
4186417 1221457 0 0 abcdefghijklmnopwrst
4189624 1221457 0 1 asdfghjklzxcvbnm
4203132 1221453 0 0 asdfghjklzxcvbnm
4228206 1221457 0 0 abcdefghijklmnopwrst
4278829 1221453 0 0 abcdefghijklmnopwrst
4326422 1221453 0 0 abcdefghijklmnopwrst
4337061 1221287 0 0 abcdefghijklmnopwrst
4379354 1221287 0 0 abcdefghijklmnopwrst
4404901 1221457 0 0 abcdefghijklmnopwrst
4494153 1221457 0 0 abcdefghijklmnopwrst
4535721 1221287 0 0 asdfghjklzxcvbnm
4559596 1221457 0 0 abcdefghijklmnopwrst
4617751 1221393 0 0 abcdefghijklmnopwrst
1 3304605 1221256 0 0 abcdefghijklmnopwrst
2 3304606 1221259 0 0 abcdefghijklmnopwrst
3 3304607 1221260 0 0 asdfghjklzxcvbnm
4 3304629 1221273 0 0 asdfghjklzxcvbnm
5 3304630 1221273 0 0 asdfghjklzxcvbnm
6 3304634 1221259 0 0 asdfghjklzxcvbnm
7 3304644 1221278 0 0 abcdefghijklmnopwrst
8 3304648 1221278 0 0 abcdefghijklmnopwrst
9 3304649 1221278 0 1 asdfghjklzxcvbnm
10 3304650 1221278 0 0 asdfghjklzxcvbnm
11 3304651 1221282 0 0 abcdefghijklmnopwrst
12 3304660 1221287 0 0 asdfghjklzxcvbnm
13 3304662 1221288 0 0 abcdefghijklmnopwrst
14 3304663 1221288 0 0 abcdefghijklmnopwrst
15 3304664 1221290 0 0 abcdefghijklmnopwrst
16 3304670 1221290 0 0 asdfghjklzxcvbnm
17 3304671 1221292 0 0 abcdefghijklmnopwrst
18 3304672 1221287 0 0 asdfghjklzxcvbnm
19 3304673 1221294 0 0 asdfghjklzxcvbnm
20 3304674 1221287 0 0 asdfghjklzxcvbnm
21 3304676 1221296 0 0 abcdefghijklmnopwrst
22 3304677 1221287 0 0 abcdefghijklmnopwrst
23 3304678 1221287 0 0 abcdefghijklmnopwrst
24 3304679 1221297 0 0 asdfghjklzxcvbnm
25 3304680 1221290 0 0 abcdefghijklmnopwrst
26 3304681 1221290 0 0 abcdefghijklmnopwrst
27 3304685 1221300 0 0 asdfghjklzxcvbnm
28 3304687 1221302 0 0 abcdefghijklmnopwrst
29 3304688 1221296 1221298 0 abcdefghijklmnopwrst
30 3304692 1221309 0 0 asdfghjklzxcvbnm
31 3304694 1221309 0 0 asdfghjklzxcvbnm
32 3304695 1221290 0 0 abcdefghijklmnopwrst
33 3304696 1221313 0 0 asdfghjklzxcvbnm
34 3304701 1221314 0 0 asdfghjklzxcvbnm
35 3304703 1221313 0 0 abcdefghijklmnopwrst
36 3304707 1221313 0 0 asdfghjklzxcvbnm
37 3304709 1221313 0 0 abcdefghijklmnopwrst
38 3304713 1221314 0 0 abcdefghijklmnopwrst
39 3304715 1221317 0 0 abcdefghijklmnopwrst
40 3304717 1221319 0 0 asdfghjklzxcvbnm
41 3304718 1221320 0 0 abcdefghijklmnopwrst
42 3304723 1221314 0 0 abcdefghijklmnopwrst
43 3304724 1221314 0 0 asdfghjklzxcvbnm
44 3304725 1221300 0 0 asdfghjklzxcvbnm
45 3304726 1221314 0 0 asdfghjklzxcvbnm
46 3304730 1221326 0 0 asdfghjklzxcvbnm
47 3304732 1221328 0 0 asdfghjklzxcvbnm
48 3304733 1221329 0 0 asdfghjklzxcvbnm
49 3304745 1221331 0 0 abcdefghijklmnopwrst
50 3304747 1221300 0 0 abcdefghijklmnopwrst
51 3304752 1221332 0 0 asdfghjklzxcvbnm
52 3304756 1221333 0 0 asdfghjklzxcvbnm
53 3304765 1221336 0 0 asdfghjklzxcvbnm
54 3304767 1221338 0 0 abcdefghijklmnopwrst
55 3304769 1221340 0 0 asdfghjklzxcvbnm
56 3304770 1221328 0 0 asdfghjklzxcvbnm
57 3304771 1221328 0 0 abcdefghijklmnopwrst
58 3304773 1221340 0 0 asdfghjklzxcvbnm
59 3304774 1221340 0 0 abcdefghijklmnopwrst
60 3304775 1221338 1221342 1 asdfghjklzxcvbnm
61 3304778 1221345 0 0 asdfghjklzxcvbnm
62 3304786 1221332 0 0 asdfghjklzxcvbnm
63 3304787 1221347 0 0 abcdefghijklmnopwrst
64 3304789 1221347 0 0 asdfghjklzxcvbnm
65 3304793 1221349 0 0 abcdefghijklmnopwrst
66 3304794 1221350 0 0 asdfghjklzxcvbnm
67 3304800 1221290 0 0 asdfghjklzxcvbnm
68 3304802 1221290 0 0 asdfghjklzxcvbnm
69 3304803 1221290 0 0 asdfghjklzxcvbnm
70 3304810 1221356 0 0 asdfghjklzxcvbnm
71 3304811 1221356 0 0 asdfghjklzxcvbnm
72 3304821 1221364 0 0 asdfghjklzxcvbnm
73 3304823 1221365 0 0 asdfghjklzxcvbnm
74 3304824 1221366 0 0 abcdefghijklmnopwrst
75 3304825 1221365 0 0 asdfghjklzxcvbnm
76 3304826 1221367 0 0 asdfghjklzxcvbnm
77 3304828 1221369 0 0 abcdefghijklmnopwrst
78 3304829 1221366 1221368 0 asdfghjklzxcvbnm
79 3304831 1221372 0 0 abcdefghijklmnopwrst
80 3304832 1221364 1221373 0 abcdefghijklmnopwrst
81 3304833 1221364 1221371 0 asdfghjklzxcvbnm
82 3304834 1221364 0 0 abcdefghijklmnopwrst
83 3304836 1221375 0 0 abcdefghijklmnopwrst
84 3304837 1221364 0 0 abcdefghijklmnopwrst
85 3304838 1221364 1221376 0 asdfghjklzxcvbnm
86 3304840 1221372 0 0 asdfghjklzxcvbnm
87 3304842 1221372 0 1 abcdefghijklmnopwrst
88 3304844 1221372 0 0 asdfghjklzxcvbnm
89 3304845 1221372 0 0 abcdefghijklmnopwrst
90 3304847 1221382 0 0 abcdefghijklmnopwrst
91 3304848 1221372 0 0 abcdefghijklmnopwrst
92 3304849 1221372 0 0 asdfghjklzxcvbnm
93 3304852 1221364 1221378 0 asdfghjklzxcvbnm
94 3304853 1221383 0 0 abcdefghijklmnopwrst
95 3304854 1221384 0 0 asdfghjklzxcvbnm
96 3304855 1221347 0 0 asdfghjklzxcvbnm
97 3304858 1221383 0 0 abcdefghijklmnopwrst
98 3304862 1221386 0 0 abcdefghijklmnopwrst
99 3304864 1221387 0 0 abcdefghijklmnopwrst
100 3304867 1221389 0 0 abcdefghijklmnopwrst
101 3304868 1221390 0 0 asdfghjklzxcvbnm
102 3304869 1221391 0 0 asdfghjklzxcvbnm
103 3304871 1221393 0 0 asdfghjklzxcvbnm
104 3304874 1221395 0 0 abcdefghijklmnopwrst
105 3304877 1221396 0 0 abcdefghijklmnopwrst
106 3304879 1221396 0 0 asdfghjklzxcvbnm
107 3304882 1221398 0 0 abcdefghijklmnopwrst
108 3304883 1221399 0 0 abcdefghijklmnopwrst
109 3304884 1221400 0 0 abcdefghijklmnopwrst
110 3304889 1221405 0 0 abcdefghijklmnopwrst
111 3304895 1221409 0 0 asdfghjklzxcvbnm
112 3304899 1221395 0 0 asdfghjklzxcvbnm
113 3304900 1221395 0 0 asdfghjklzxcvbnm
114 3304902 1221395 0 0 abcdefghijklmnopwrst
115 3304903 1221395 0 0 asdfghjklzxcvbnm
116 3304924 1221414 0 0 abcdefghijklmnopwrst
117 3304925 1221415 0 0 asdfghjklzxcvbnm
118 3304935 1221416 0 0 asdfghjklzxcvbnm
119 3304936 1221418 0 0 asdfghjklzxcvbnm
120 3304944 1221419 0 0 abcdefghijklmnopwrst
121 3304959 1221427 0 0 asdfghjklzxcvbnm
122 3304963 1221415 0 0 asdfghjklzxcvbnm
123 3304964 1221428 0 0 asdfghjklzxcvbnm
124 3304965 1221429 0 0 abcdefghijklmnopwrst
125 3304978 1221433 0 0 abcdefghijklmnopwrst
126 3304986 1221437 0 0 asdfghjklzxcvbnm
127 3304988 1221439 0 0 asdfghjklzxcvbnm
128 3304994 1221441 0 0 asdfghjklzxcvbnm
129 3304996 1221442 0 0 asdfghjklzxcvbnm
130 3304998 1221443 0 0 asdfghjklzxcvbnm
131 3305003 1221446 0 0 abcdefghijklmnopwrst
132 3305008 1221433 0 0 abcdefghijklmnopwrst
133 3305009 1221447 0 0 asdfghjklzxcvbnm
134 3305012 1221447 0 0 asdfghjklzxcvbnm
135 3305013 1221449 0 0 abcdefghijklmnopwrst
136 3305015 1221451 0 0 asdfghjklzxcvbnm
137 3305019 1221453 0 0 asdfghjklzxcvbnm
138 3305023 1221449 0 0 asdfghjklzxcvbnm
139 3305026 1221456 0 0 abcdefghijklmnopwrst
140 3305028 1221457 0 0 asdfghjklzxcvbnm
141 3305032 1221449 0 0 asdfghjklzxcvbnm
142 3305037 1221453 0 0 asdfghjklzxcvbnm
143 3305040 1221451 0 0 asdfghjklzxcvbnm
144 3305061 1221446 0 0 abcdefghijklmnopwrst
145 3305175 1221457 0 0 abcdefghijklmnopwrst
146 3305304 1221453 0 0 abcdefghijklmnopwrst
147 3305308 1221453 0 1 abcdefghijklmnopwrst
148 3305333 1221457 1221577 0 asdfghjklzxcvbnm
149 3305335 1221453 0 0 asdfghjklzxcvbnm
150 3305354 1221457 0 1 asdfghjklzxcvbnm
151 3306089 1221442 0 0 abcdefghijklmnopwrst
152 3306090 1221442 0 0 abcdefghijklmnopwrst
153 3306092 1221442 0 0 asdfghjklzxcvbnm
154 3306345 1221366 0 0 asdfghjklzxcvbnm
155 3306349 1221366 0 0 asdfghjklzxcvbnm
156 3306419 1221364 1221371 0 asdfghjklzxcvbnm
157 3307390 1221453 0 0 abcdefghijklmnopwrst
158 3308002 1221416 1221417 0 abcdefghijklmnopwrst
159 3308331 1221366 1222821 0 abcdefghijklmnopwrst
160 3309991 1221347 0 0 asdfghjklzxcvbnm
161 3311917 1221287 0 0 abcdefghijklmnopwrst
162 3311937 1221287 0 0 abcdefghijklmnopwrst
163 3311945 1221287 0 0 asdfghjklzxcvbnm
164 3311955 1221287 0 0 abcdefghijklmnopwrst
165 3311961 1221287 0 0 asdfghjklzxcvbnm
166 3311963 1221287 0 1 asdfghjklzxcvbnm
167 3311968 1221287 0 0 asdfghjklzxcvbnm
168 3311974 1221287 0 1 abcdefghijklmnopwrst
169 3311976 1221287 0 1 abcdefghijklmnopwrst
170 3311981 1221287 0 1 abcdefghijklmnopwrst
171 3311985 1221287 0 1 asdfghjklzxcvbnm
172 3312014 1221287 0 0 abcdefghijklmnopwrst
173 3312018 1221287 0 1 abcdefghijklmnopwrst
174 3312025 1221287 0 0 abcdefghijklmnopwrst
175 3312027 1221287 0 0 abcdefghijklmnopwrst
176 3312030 1221287 0 0 abcdefghijklmnopwrst
177 3313755 1221288 0 0 abcdefghijklmnopwrst
178 3313767 1221288 0 0 asdfghjklzxcvbnm
179 3314668 1221290 0 0 asdfghjklzxcvbnm
180 3314670 1221290 0 0 abcdefghijklmnopwrst
181 3323440 1221338 0 0 abcdefghijklmnopwrst
182 3323736 1221338 0 0 asdfghjklzxcvbnm
183 3323739 1221338 0 0 asdfghjklzxcvbnm
184 3324077 1221290 0 0 asdfghjklzxcvbnm
185 3324081 1221290 0 0 abcdefghijklmnopwrst
186 3324082 1221290 0 0 abcdefghijklmnopwrst
187 3324639 1221457 1221563 1 asdfghjklzxcvbnm
188 3326180 1221287 0 0 abcdefghijklmnopwrst
189 3326204 1221287 0 0 asdfghjklzxcvbnm
190 3326945 1221457 1221563 1 asdfghjklzxcvbnm
191 3328393 1221364 1221373 0 asdfghjklzxcvbnm
192 3328966 1221287 0 0 abcdefghijklmnopwrst
193 3329875 1221457 1382427 0 abcdefghijklmnopwrst
194 3333449 1221278 1231113 0 abcdefghijklmnopwrst
195 3336022 1221457 0 0 abcdefghijklmnopwrst
196 3340069 1221364 1221373 0 abcdefghijklmnopwrst
197 3340073 1221364 1221373 0 abcdefghijklmnopwrst
198 3340563 1221290 0 0 asdfghjklzxcvbnm
199 3341553 1221453 0 0 abcdefghijklmnopwrst
200 3345868 1221287 0 0 asdfghjklzxcvbnm
201 3345873 1221287 0 0 abcdefghijklmnopwrst
202 3345879 1221287 0 0 asdfghjklzxcvbnm
203 3346860 1221457 0 0 abcdefghijklmnopwrst
204 3347053 1221287 0 0 asdfghjklzxcvbnm
205 3347109 1221287 0 1 abcdefghijklmnopwrst
206 3350589 1221372 1236415 0 abcdefghijklmnopwrst
207 3350594 1221372 1236415 1 asdfghjklzxcvbnm
208 3353871 1221457 0 0 asdfghjklzxcvbnm
209 3354727 1221364 1221373 0 abcdefghijklmnopwrst
210 3355270 1221393 0 1 abcdefghijklmnopwrst
211 3357638 1221287 0 0 asdfghjklzxcvbnm
212 3357644 1221287 0 0 abcdefghijklmnopwrst
213 3357648 1221287 0 0 abcdefghijklmnopwrst
214 3357651 1221287 0 0 asdfghjklzxcvbnm
215 3357661 1221287 0 0 abcdefghijklmnopwrst
216 3357678 1221287 0 0 abcdefghijklmnopwrst
217 3357697 1221287 0 0 asdfghjklzxcvbnm
218 3357737 1221287 0 0 asdfghjklzxcvbnm
219 3357744 1221287 0 0 abcdefghijklmnopwrst
220 3357754 1221287 0 1 asdfghjklzxcvbnm
221 3357760 1221287 0 1 abcdefghijklmnopwrst
222 3357774 1221287 0 1 abcdefghijklmnopwrst
223 3357779 1221287 0 0 abcdefghijklmnopwrst
224 3357796 1221287 0 0 asdfghjklzxcvbnm
225 3357814 1221287 0 0 asdfghjklzxcvbnm
226 3357833 1221287 0 1 asdfghjklzxcvbnm
227 3357835 1221287 0 0 abcdefghijklmnopwrst
228 3357840 1221287 0 1 asdfghjklzxcvbnm
229 3357842 1221287 0 0 abcdefghijklmnopwrst
230 3357845 1221287 0 1 abcdefghijklmnopwrst
231 3357849 1221287 0 1 abcdefghijklmnopwrst
232 3357852 1221287 0 0 abcdefghijklmnopwrst
233 3358935 1221443 0 1 abcdefghijklmnopwrst
234 3358967 1221443 0 1 abcdefghijklmnopwrst
235 3359181 1221256 0 0 abcdefghijklmnopwrst
236 3360512 1221319 0 0 asdfghjklzxcvbnm
237 3362004 1221287 0 0 abcdefghijklmnopwrst
238 3362009 1221287 0 1 abcdefghijklmnopwrst
239 3362358 1221287 0 0 asdfghjklzxcvbnm
240 3363214 1221287 0 0 abcdefghijklmnopwrst
241 3363238 1221287 0 1 asdfghjklzxcvbnm
242 3363616 1221287 0 1 asdfghjklzxcvbnm
243 3363631 1221287 0 0 asdfghjklzxcvbnm
244 3364281 1221287 0 0 abcdefghijklmnopwrst
245 3365900 1221347 0 0 asdfghjklzxcvbnm
246 3365901 1221347 0 0 asdfghjklzxcvbnm
247 3365906 1221347 0 0 asdfghjklzxcvbnm
248 3365907 1221347 0 0 asdfghjklzxcvbnm
249 3365910 1221347 0 0 abcdefghijklmnopwrst
250 3365936 1221347 0 0 abcdefghijklmnopwrst
251 3367846 1221287 0 0 abcdefghijklmnopwrst
252 3368011 1221428 0 0 abcdefghijklmnopwrst
253 3369882 1221300 0 0 asdfghjklzxcvbnm
254 3370856 1221443 0 0 asdfghjklzxcvbnm
255 3370861 1221443 1221445 0 abcdefghijklmnopwrst
256 3375327 1221443 0 0 abcdefghijklmnopwrst
257 3375333 1221443 1221445 0 abcdefghijklmnopwrst
258 3376219 1221453 0 1 abcdefghijklmnopwrst
259 3376228 1221453 0 0 abcdefghijklmnopwrst
260 3376238 1221453 0 0 asdfghjklzxcvbnm
261 3376243 1221453 0 0 abcdefghijklmnopwrst
262 3376248 1221453 0 1 abcdefghijklmnopwrst
263 3376254 1221453 0 0 abcdefghijklmnopwrst
264 3376263 1221453 0 0 abcdefghijklmnopwrst
265 3376272 1221453 0 1 asdfghjklzxcvbnm
266 3376281 1221453 0 0 asdfghjklzxcvbnm
267 3376290 1221453 0 0 abcdefghijklmnopwrst
268 3376296 1221453 0 1 abcdefghijklmnopwrst
269 3376301 1221453 0 0 asdfghjklzxcvbnm
270 3376350 1221453 0 0 asdfghjklzxcvbnm
271 3379002 1221453 0 0 abcdefghijklmnopwrst
272 3379015 1221453 0 0 asdfghjklzxcvbnm
273 3379025 1221453 0 0 abcdefghijklmnopwrst
274 3379032 1221453 0 0 asdfghjklzxcvbnm
275 3380181 1221372 1245650 0 asdfghjklzxcvbnm
276 3380186 1221372 1245650 0 abcdefghijklmnopwrst
277 3380190 1221372 1245650 0 asdfghjklzxcvbnm
278 3380195 1221372 1245650 0 abcdefghijklmnopwrst
279 3380202 1221372 1245650 0 asdfghjklzxcvbnm
280 3380683 1221287 0 0 asdfghjklzxcvbnm
281 3382317 1221453 0 0 abcdefghijklmnopwrst
282 3382417 1221287 0 0 asdfghjklzxcvbnm
283 3383523 1221338 0 1 abcdefghijklmnopwrst
284 3387213 1221287 0 0 abcdefghijklmnopwrst
285 3388139 1221453 0 0 asdfghjklzxcvbnm
286 3398039 1221443 1251164 0 abcdefghijklmnopwrst
287 3401835 1221453 0 0 asdfghjklzxcvbnm
288 3412582 1221443 1255886 0 asdfghjklzxcvbnm
289 3412583 1221443 1255886 0 asdfghjklzxcvbnm
290 3413795 1221443 1255886 0 asdfghjklzxcvbnm
291 3413813 1221443 1256258 0 asdfghjklzxcvbnm
292 3420306 1221453 0 0 asdfghjklzxcvbnm
293 3420354 1221453 0 0 asdfghjklzxcvbnm
294 3425653 1221443 0 0 abcdefghijklmnopwrst
295 3425658 1221443 0 0 asdfghjklzxcvbnm
296 3431409 1221453 0 0 asdfghjklzxcvbnm
297 3432510 1221443 1262320 0 asdfghjklzxcvbnm
298 3432513 1221443 1262320 0 asdfghjklzxcvbnm
299 3444444 1221443 1262320 0 abcdefghijklmnopwrst
300 3445447 1221287 0 1 asdfghjklzxcvbnm
301 3448662 1221338 0 0 asdfghjklzxcvbnm
302 3450032 1221347 0 0 abcdefghijklmnopwrst
303 3450259 1221453 0 0 abcdefghijklmnopwrst
304 3452176 1221453 0 0 asdfghjklzxcvbnm
305 3459239 1221347 0 0 asdfghjklzxcvbnm
306 3463196 1221347 0 0 abcdefghijklmnopwrst
307 3468759 1221453 0 0 abcdefghijklmnopwrst
308 3470988 1221457 0 0 asdfghjklzxcvbnm
309 3477116 1221287 0 0 asdfghjklzxcvbnm
310 3477639 1221372 1277136 0 abcdefghijklmnopwrst
311 3477656 1221372 1277136 0 asdfghjklzxcvbnm
312 3488071 1221256 1238964 0 abcdefghijklmnopwrst
313 3488079 1221256 0 0 asdfghjklzxcvbnm
314 3488108 1221256 0 1 asdfghjklzxcvbnm
315 3507126 1221287 0 1 asdfghjklzxcvbnm
316 3511898 1221347 0 0 asdfghjklzxcvbnm
317 3521780 1221453 0 0 abcdefghijklmnopwrst
318 3536908 1221287 0 0 abcdefghijklmnopwrst
319 3544231 1221329 0 1 asdfghjklzxcvbnm
320 3545379 1221329 1298955 0 abcdefghijklmnopwrst
321 3545384 1221329 1298955 0 abcdefghijklmnopwrst
322 3545387 1221329 1298955 0 abcdefghijklmnopwrst
323 3545389 1221329 1298955 1 abcdefghijklmnopwrst
324 3545398 1221329 1298955 1 abcdefghijklmnopwrst
325 3555715 1221287 0 0 asdfghjklzxcvbnm
326 3563557 1221329 1298955 0 abcdefghijklmnopwrst
327 3564322 1221338 0 0 asdfghjklzxcvbnm
328 3565475 1221453 0 0 abcdefghijklmnopwrst
329 3577588 1221287 0 0 asdfghjklzxcvbnm
330 3600047 1221453 0 0 abcdefghijklmnopwrst
331 3600062 1221453 0 0 asdfghjklzxcvbnm
332 3600071 1221453 0 0 abcdefghijklmnopwrst
333 3600080 1221453 0 1 abcdefghijklmnopwrst
334 3600086 1221453 0 0 asdfghjklzxcvbnm
335 3600091 1221453 0 1 abcdefghijklmnopwrst
336 3600097 1221453 0 0 asdfghjklzxcvbnm
337 3600103 1221453 0 0 asdfghjklzxcvbnm
338 3600106 1221453 0 0 abcdefghijklmnopwrst
339 3600113 1221453 0 0 abcdefghijklmnopwrst
340 3600119 1221453 0 0 asdfghjklzxcvbnm
341 3600124 1221453 0 0 abcdefghijklmnopwrst
342 3600144 1221453 0 0 asdfghjklzxcvbnm
343 3600152 1221453 0 0 asdfghjklzxcvbnm
344 3600165 1221453 0 0 asdfghjklzxcvbnm
345 3610561 1221287 0 0 abcdefghijklmnopwrst
346 3617030 1221329 0 0 asdfghjklzxcvbnm
347 3628347 1221443 1327098 0 abcdefghijklmnopwrst
348 3628348 1221443 1327098 0 abcdefghijklmnopwrst
349 3628646 1221443 0 0 asdfghjklzxcvbnm
350 3633673 1221372 1328838 0 abcdefghijklmnopwrst
351 3648489 1221443 0 0 asdfghjklzxcvbnm
352 3648490 1221443 0 0 asdfghjklzxcvbnm
353 3648534 1221443 1333827 0 asdfghjklzxcvbnm
354 3653046 1221329 1298955 0 asdfghjklzxcvbnm
355 3662680 1221287 0 0 asdfghjklzxcvbnm
356 3699529 1221288 0 0 asdfghjklzxcvbnm
357 3706659 1221453 0 0 asdfghjklzxcvbnm
358 3723399 1221287 0 1 asdfghjklzxcvbnm
359 3749934 1221278 0 0 abcdefghijklmnopwrst
360 3761370 1221443 1371176 0 asdfghjklzxcvbnm
361 3765884 1221443 1333827 0 abcdefghijklmnopwrst
362 3772880 1221457 0 0 abcdefghijklmnopwrst
363 3779574 1221457 1372998 1 abcdefghijklmnopwrst
364 3784656 1221457 1372998 1 abcdefghijklmnopwrst
365 3784700 1221457 1372998 1 abcdefghijklmnopwrst
366 3784744 1221457 1382427 0 abcdefghijklmnopwrst
367 3796187 1221457 1382427 1 abcdefghijklmnopwrst
368 3796193 1221457 0 0 abcdefghijklmnopwrst
369 3817277 1221457 1382427 0 asdfghjklzxcvbnm
370 3828282 1221457 0 0 abcdefghijklmnopwrst
371 3828297 1221457 0 0 abcdefghijklmnopwrst
372 3828300 1221457 0 0 abcdefghijklmnopwrst
373 3833022 1221287 0 0 asdfghjklzxcvbnm
374 3856380 1221457 1395359 0 asdfghjklzxcvbnm
375 3856391 1221457 0 0 asdfghjklzxcvbnm
376 3861413 1221256 0 0 abcdefghijklmnopwrst
377 3864734 1221393 0 1 abcdefghijklmnopwrst
378 3868051 1221329 0 0 abcdefghijklmnopwrst
379 3868059 1221329 0 0 abcdefghijklmnopwrst
380 3869088 1221329 0 0 abcdefghijklmnopwrst
381 3878669 1221329 1298955 0 asdfghjklzxcvbnm
382 3878684 1221329 1298955 0 asdfghjklzxcvbnm
383 3881785 1221287 0 0 abcdefghijklmnopwrst
384 3882333 1221287 0 0 asdfghjklzxcvbnm
385 3882389 1221287 0 0 abcdefghijklmnopwrst
386 3908680 1221372 1245650 0 asdfghjklzxcvbnm
387 3908690 1221372 1245650 0 asdfghjklzxcvbnm
388 3908697 1221372 1245650 0 abcdefghijklmnopwrst
389 3911434 1221453 0 0 abcdefghijklmnopwrst
390 3911446 1221453 0 0 asdfghjklzxcvbnm
391 3911448 1221453 0 0 abcdefghijklmnopwrst
392 3911489 1221453 0 0 abcdefghijklmnopwrst
393 3917384 1221453 0 0 abcdefghijklmnopwrst
394 3939602 1221457 0 1 asdfghjklzxcvbnm
395 3962210 1221453 0 0 asdfghjklzxcvbnm
396 3963734 1221457 0 0 asdfghjklzxcvbnm
397 3977364 1221287 0 0 asdfghjklzxcvbnm
398 3981725 1221453 0 0 abcdefghijklmnopwrst
399 4042952 1221453 0 0 abcdefghijklmnopwrst
400 4042953 1221453 0 0 abcdefghijklmnopwrst
401 4042958 1221453 0 0 abcdefghijklmnopwrst
402 4042960 1221453 0 1 abcdefghijklmnopwrst
403 4042965 1221453 0 0 asdfghjklzxcvbnm
404 4066893 1221453 0 1 abcdefghijklmnopwrst
405 4066896 1221453 0 0 abcdefghijklmnopwrst
406 4066900 1221453 0 0 abcdefghijklmnopwrst
407 4066908 1221453 0 0 abcdefghijklmnopwrst
408 4066912 1221453 0 0 asdfghjklzxcvbnm
409 4066915 1221453 0 0 asdfghjklzxcvbnm
410 4066919 1221453 0 0 abcdefghijklmnopwrst
411 4066924 1221453 0 0 asdfghjklzxcvbnm
412 4066929 1221453 0 0 abcdefghijklmnopwrst
413 4066934 1221453 0 0 asdfghjklzxcvbnm
414 4066941 1221453 0 0 abcdefghijklmnopwrst
415 4066946 1221453 0 0 asdfghjklzxcvbnm
416 4066955 1221453 0 0 abcdefghijklmnopwrst
417 4116291 1221433 1487238 0 asdfghjklzxcvbnm
418 4116295 1221433 1487238 0 abcdefghijklmnopwrst
419 4116450 1221433 1487238 0 abcdefghijklmnopwrst
420 4121149 1221287 0 0 asdfghjklzxcvbnm
421 4137325 1221453 0 0 abcdefghijklmnopwrst
422 4149051 1221287 0 0 abcdefghijklmnopwrst
423 4162347 1221287 0 0 abcdefghijklmnopwrst
424 4164485 1221457 0 1 asdfghjklzxcvbnm
425 4174706 1221457 0 0 abcdefghijklmnopwrst
426 4178645 1221457 0 0 abcdefghijklmnopwrst
427 4180122 1221457 1382427 0 asdfghjklzxcvbnm
428 4180925 1221457 1382427 0 asdfghjklzxcvbnm
429 4186417 1221457 0 0 abcdefghijklmnopwrst
430 4189624 1221457 0 1 asdfghjklzxcvbnm
431 4203132 1221453 0 0 asdfghjklzxcvbnm
432 4228206 1221457 0 0 abcdefghijklmnopwrst
433 4278829 1221453 0 0 abcdefghijklmnopwrst
434 4326422 1221453 0 0 abcdefghijklmnopwrst
435 4337061 1221287 0 0 abcdefghijklmnopwrst
436 4379354 1221287 0 0 abcdefghijklmnopwrst
437 4404901 1221457 0 0 abcdefghijklmnopwrst
438 4494153 1221457 0 0 abcdefghijklmnopwrst
439 4535721 1221287 0 0 asdfghjklzxcvbnm
440 4559596 1221457 0 0 abcdefghijklmnopwrst
441 4617751 1221393 0 0 abcdefghijklmnopwrst

View File

@ -91,3 +91,14 @@ iONkSBcBAAAAKwAAAMQBAAAQABAAAAAAAAEAA//4AQAAAAMAMTIzAQAAAA==
';
ERROR HY000: master may suffer from http://bugs.mysql.com/bug.php?id=37426 so slave stops; check error log on slave for more info
drop table t1, char63_utf8, char128_utf8;
#
# Bug #54393: crash and/or valgrind errors in
# mysql_client_binlog_statement
#
BINLOG '';
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use
BINLOG '123';
BINLOG '-2079193929';
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use
BINLOG 'xç↓%~∙D╒ƒ╡';
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use

View File

View File

@ -150,3 +150,16 @@ iONkSBcBAAAAKwAAAMQBAAAQABAAAAAAAAEAA//4AQAAAAMAMTIzAQAAAA==
';
drop table t1, char63_utf8, char128_utf8;
--echo #
--echo # Bug #54393: crash and/or valgrind errors in
--echo # mysql_client_binlog_statement
--echo #
--error ER_SYNTAX_ERROR
BINLOG '';
BINLOG '123';
--error ER_SYNTAX_ERROR
BINLOG '-2079193929';
--error ER_SYNTAX_ERROR
BINLOG 'xç↓%~∙D╒ƒ╡';

View File

@ -328,7 +328,7 @@ ERROR 42000: Access denied for user 'root'@'localhost' to database 'information_
SELECT table_schema,table_name FROM information_schema.tables
WHERE table_schema = 'information_schema' AND table_name = 'tables';
table_schema table_name
information_schema tables
information_schema TABLES
SELECT * FROM information_schema.table_privileges
WHERE table_schema = 'information_schema';
GRANTEE TABLE_CATALOG TABLE_SCHEMA TABLE_NAME PRIVILEGE_TYPE IS_GRANTABLE

View File

@ -450,9 +450,9 @@ def test tb1 f27 27 NULL YES int NULL NULL 10 0 NULL NULL int(10) unsigned zerof
def test tb1 f28 28 NULL YES int NULL NULL 10 0 NULL NULL int(10) unsigned zerofill select,insert,update,references
def test tb1 f29 29 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(20) select,insert,update,references
def test tb1 f3 3 NULL YES char 0 0 NULL NULL latin1 latin1_swedish_ci char(0) select,insert,update,references
def test tb1 f30 30 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(20) unsigned select,insert,update,references
def test tb1 f31 31 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(20) unsigned zerofill select,insert,update,references
def test tb1 f32 32 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(20) unsigned zerofill select,insert,update,references
def test tb1 f30 30 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(20) unsigned select,insert,update,references
def test tb1 f31 31 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(20) unsigned zerofill select,insert,update,references
def test tb1 f32 32 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(20) unsigned zerofill select,insert,update,references
def test tb1 f33 33 NULL YES decimal NULL NULL 10 0 NULL NULL decimal(10,0) select,insert,update,references
def test tb1 f34 34 NULL YES decimal NULL NULL 10 0 NULL NULL decimal(10,0) unsigned select,insert,update,references
def test tb1 f35 35 NULL YES decimal NULL NULL 10 0 NULL NULL decimal(10,0) unsigned zerofill select,insert,update,references
@ -565,9 +565,9 @@ def test tb3 f143 26 99999 NO int NULL NULL 10 0 NULL NULL int(10) unsigned se
def test tb3 f144 27 0000099999 NO int NULL NULL 10 0 NULL NULL int(10) unsigned zerofill select,insert,update,references
def test tb3 f145 28 0000099999 NO int NULL NULL 10 0 NULL NULL int(10) unsigned zerofill select,insert,update,references
def test tb3 f146 29 999999 NO bigint NULL NULL 19 0 NULL NULL bigint(20) select,insert,update,references
def test tb3 f147 30 999999 NO bigint NULL NULL 19 0 NULL NULL bigint(20) unsigned select,insert,update,references
def test tb3 f148 31 00000000000000999999 NO bigint NULL NULL 19 0 NULL NULL bigint(20) unsigned zerofill select,insert,update,references
def test tb3 f149 32 00000000000000999999 NO bigint NULL NULL 19 0 NULL NULL bigint(20) unsigned zerofill select,insert,update,references
def test tb3 f147 30 999999 NO bigint NULL NULL 20 0 NULL NULL bigint(20) unsigned select,insert,update,references
def test tb3 f148 31 00000000000000999999 NO bigint NULL NULL 20 0 NULL NULL bigint(20) unsigned zerofill select,insert,update,references
def test tb3 f149 32 00000000000000999999 NO bigint NULL NULL 20 0 NULL NULL bigint(20) unsigned zerofill select,insert,update,references
def test tb3 f150 33 1000 NO decimal NULL NULL 10 0 NULL NULL decimal(10,0) select,insert,update,references
def test tb3 f151 34 999 NO decimal NULL NULL 10 0 NULL NULL decimal(10,0) unsigned select,insert,update,references
def test tb3 f152 35 0000001000 NO decimal NULL NULL 10 0 NULL NULL decimal(10,0) unsigned zerofill select,insert,update,references

View File

@ -15,8 +15,8 @@ def information_schema COLLATIONS IS_DEFAULT 4 NO varchar 3 9 NULL NULL utf8 ut
def information_schema COLLATIONS SORTLEN 6 0 NO bigint NULL NULL 19 0 NULL NULL bigint(3) select
def information_schema COLLATION_CHARACTER_SET_APPLICABILITY CHARACTER_SET_NAME 2 NO varchar 32 96 NULL NULL utf8 utf8_general_ci varchar(32) select
def information_schema COLLATION_CHARACTER_SET_APPLICABILITY COLLATION_NAME 1 NO varchar 32 96 NULL NULL utf8 utf8_general_ci varchar(32) select
def information_schema COLUMNS CHARACTER_MAXIMUM_LENGTH 9 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema COLUMNS CHARACTER_OCTET_LENGTH 10 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema COLUMNS CHARACTER_MAXIMUM_LENGTH 9 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema COLUMNS CHARACTER_OCTET_LENGTH 10 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema COLUMNS CHARACTER_SET_NAME 13 NULL YES varchar 32 96 NULL NULL utf8 utf8_general_ci varchar(32) select
def information_schema COLUMNS COLLATION_NAME 14 NULL YES varchar 32 96 NULL NULL utf8 utf8_general_ci varchar(32) select
def information_schema COLUMNS COLUMN_COMMENT 19 NO varchar 1024 3072 NULL NULL utf8 utf8_general_ci varchar(1024) select
@ -27,9 +27,9 @@ def information_schema COLUMNS COLUMN_TYPE 15 NULL NO longtext 4294967295 429496
def information_schema COLUMNS DATA_TYPE 8 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
def information_schema COLUMNS EXTRA 17 NO varchar 27 81 NULL NULL utf8 utf8_general_ci varchar(27) select
def information_schema COLUMNS IS_NULLABLE 7 NO varchar 3 9 NULL NULL utf8 utf8_general_ci varchar(3) select
def information_schema COLUMNS NUMERIC_PRECISION 11 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema COLUMNS NUMERIC_SCALE 12 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema COLUMNS ORDINAL_POSITION 5 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema COLUMNS NUMERIC_PRECISION 11 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema COLUMNS NUMERIC_SCALE 12 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema COLUMNS ORDINAL_POSITION 5 0 NO bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema COLUMNS PRIVILEGES 18 NO varchar 80 240 NULL NULL utf8 utf8_general_ci varchar(80) select
def information_schema COLUMNS TABLE_CATALOG 1 NO varchar 512 1536 NULL NULL utf8 utf8_general_ci varchar(512) select
def information_schema COLUMNS TABLE_NAME 3 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
@ -71,14 +71,14 @@ def information_schema EVENTS SQL_MODE 12 NO varchar 8192 24576 NULL NULL utf8
def information_schema EVENTS STARTS 13 NULL YES datetime NULL NULL NULL NULL NULL NULL datetime select
def information_schema EVENTS STATUS 15 NO varchar 18 54 NULL NULL utf8 utf8_general_ci varchar(18) select
def information_schema EVENTS TIME_ZONE 5 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
def information_schema FILES AUTOEXTEND_SIZE 19 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema FILES AVG_ROW_LENGTH 28 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema FILES CHECKSUM 36 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema FILES AUTOEXTEND_SIZE 19 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema FILES AVG_ROW_LENGTH 28 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema FILES CHECKSUM 36 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema FILES CHECK_TIME 35 NULL YES datetime NULL NULL NULL NULL NULL NULL datetime select
def information_schema FILES CREATE_TIME 33 NULL YES datetime NULL NULL NULL NULL NULL NULL datetime select
def information_schema FILES CREATION_TIME 20 NULL YES datetime NULL NULL NULL NULL NULL NULL datetime select
def information_schema FILES DATA_FREE 32 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema FILES DATA_LENGTH 29 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema FILES DATA_FREE 32 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema FILES DATA_LENGTH 29 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema FILES DELETED_ROWS 12 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(4) select
def information_schema FILES ENGINE 10 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
def information_schema FILES EXTENT_SIZE 16 0 NO bigint NULL NULL 19 0 NULL NULL bigint(4) select
@ -88,27 +88,27 @@ def information_schema FILES FILE_NAME 2 NULL YES varchar 64 192 NULL NULL utf8
def information_schema FILES FILE_TYPE 3 NO varchar 20 60 NULL NULL utf8 utf8_general_ci varchar(20) select
def information_schema FILES FREE_EXTENTS 14 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(4) select
def information_schema FILES FULLTEXT_KEYS 11 NULL YES varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
def information_schema FILES INDEX_LENGTH 31 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema FILES INITIAL_SIZE 17 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema FILES INDEX_LENGTH 31 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema FILES INITIAL_SIZE 17 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema FILES LAST_ACCESS_TIME 22 NULL YES datetime NULL NULL NULL NULL NULL NULL datetime select
def information_schema FILES LAST_UPDATE_TIME 21 NULL YES datetime NULL NULL NULL NULL NULL NULL datetime select
def information_schema FILES LOGFILE_GROUP_NAME 8 NULL YES varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
def information_schema FILES LOGFILE_GROUP_NUMBER 9 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(4) select
def information_schema FILES MAXIMUM_SIZE 18 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema FILES MAX_DATA_LENGTH 30 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema FILES MAXIMUM_SIZE 18 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema FILES MAX_DATA_LENGTH 30 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema FILES RECOVER_TIME 23 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(4) select
def information_schema FILES ROW_FORMAT 26 NULL YES varchar 10 30 NULL NULL utf8 utf8_general_ci varchar(10) select
def information_schema FILES STATUS 37 NO varchar 20 60 NULL NULL utf8 utf8_general_ci varchar(20) select
def information_schema FILES TABLESPACE_NAME 4 NULL YES varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
def information_schema FILES TABLE_CATALOG 5 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
def information_schema FILES TABLE_NAME 7 NULL YES varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
def information_schema FILES TABLE_ROWS 27 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema FILES TABLE_ROWS 27 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema FILES TABLE_SCHEMA 6 NULL YES varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
def information_schema FILES TOTAL_EXTENTS 15 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(4) select
def information_schema FILES TRANSACTION_COUNTER 24 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(4) select
def information_schema FILES UPDATE_COUNT 13 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(4) select
def information_schema FILES UPDATE_TIME 34 NULL YES datetime NULL NULL NULL NULL NULL NULL datetime select
def information_schema FILES VERSION 25 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema FILES VERSION 25 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema GLOBAL_STATUS VARIABLE_NAME 1 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
def information_schema GLOBAL_STATUS VARIABLE_VALUE 2 NULL YES varchar 1024 3072 NULL NULL utf8 utf8_general_ci varchar(1024) select
def information_schema GLOBAL_VARIABLES VARIABLE_NAME 1 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
@ -140,29 +140,29 @@ def information_schema PARAMETERS ROUTINE_TYPE 15 NO varchar 9 27 NULL NULL utf
def information_schema PARAMETERS SPECIFIC_CATALOG 1 NO varchar 512 1536 NULL NULL utf8 utf8_general_ci varchar(512) select
def information_schema PARAMETERS SPECIFIC_NAME 3 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
def information_schema PARAMETERS SPECIFIC_SCHEMA 2 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
def information_schema PARTITIONS AVG_ROW_LENGTH 14 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema PARTITIONS CHECKSUM 22 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema PARTITIONS AVG_ROW_LENGTH 14 0 NO bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema PARTITIONS CHECKSUM 22 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema PARTITIONS CHECK_TIME 21 NULL YES datetime NULL NULL NULL NULL NULL NULL datetime select
def information_schema PARTITIONS CREATE_TIME 19 NULL YES datetime NULL NULL NULL NULL NULL NULL datetime select
def information_schema PARTITIONS DATA_FREE 18 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema PARTITIONS DATA_LENGTH 15 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema PARTITIONS INDEX_LENGTH 17 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema PARTITIONS MAX_DATA_LENGTH 16 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema PARTITIONS DATA_FREE 18 0 NO bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema PARTITIONS DATA_LENGTH 15 0 NO bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema PARTITIONS INDEX_LENGTH 17 0 NO bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema PARTITIONS MAX_DATA_LENGTH 16 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema PARTITIONS NODEGROUP 24 NO varchar 12 36 NULL NULL utf8 utf8_general_ci varchar(12) select
def information_schema PARTITIONS PARTITION_COMMENT 23 NO varchar 80 240 NULL NULL utf8 utf8_general_ci varchar(80) select
def information_schema PARTITIONS PARTITION_DESCRIPTION 12 NULL YES longtext 4294967295 4294967295 NULL NULL utf8 utf8_general_ci longtext select
def information_schema PARTITIONS PARTITION_EXPRESSION 10 NULL YES longtext 4294967295 4294967295 NULL NULL utf8 utf8_general_ci longtext select
def information_schema PARTITIONS PARTITION_METHOD 8 NULL YES varchar 18 54 NULL NULL utf8 utf8_general_ci varchar(18) select
def information_schema PARTITIONS PARTITION_NAME 4 NULL YES varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
def information_schema PARTITIONS PARTITION_ORDINAL_POSITION 6 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema PARTITIONS PARTITION_ORDINAL_POSITION 6 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema PARTITIONS SUBPARTITION_EXPRESSION 11 NULL YES longtext 4294967295 4294967295 NULL NULL utf8 utf8_general_ci longtext select
def information_schema PARTITIONS SUBPARTITION_METHOD 9 NULL YES varchar 12 36 NULL NULL utf8 utf8_general_ci varchar(12) select
def information_schema PARTITIONS SUBPARTITION_NAME 5 NULL YES varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
def information_schema PARTITIONS SUBPARTITION_ORDINAL_POSITION 7 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema PARTITIONS SUBPARTITION_ORDINAL_POSITION 7 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema PARTITIONS TABLESPACE_NAME 25 NULL YES varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
def information_schema PARTITIONS TABLE_CATALOG 1 NO varchar 512 1536 NULL NULL utf8 utf8_general_ci varchar(512) select
def information_schema PARTITIONS TABLE_NAME 3 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
def information_schema PARTITIONS TABLE_ROWS 13 0 NO bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema PARTITIONS TABLE_ROWS 13 0 NO bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema PARTITIONS TABLE_SCHEMA 2 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
def information_schema PARTITIONS UPDATE_TIME 20 NULL YES datetime NULL NULL NULL NULL NULL NULL datetime select
def information_schema PLUGINS PLUGIN_AUTHOR 8 NULL YES varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
@ -254,33 +254,33 @@ def information_schema STATISTICS SUB_PART 11 NULL YES bigint NULL NULL 19 0 NUL
def information_schema STATISTICS TABLE_CATALOG 1 NO varchar 512 1536 NULL NULL utf8 utf8_general_ci varchar(512) select
def information_schema STATISTICS TABLE_NAME 3 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
def information_schema STATISTICS TABLE_SCHEMA 2 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
def information_schema TABLES AUTO_INCREMENT 14 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema TABLES AVG_ROW_LENGTH 9 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema TABLES CHECKSUM 19 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema TABLES AUTO_INCREMENT 14 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema TABLES AVG_ROW_LENGTH 9 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema TABLES CHECKSUM 19 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema TABLES CHECK_TIME 17 NULL YES datetime NULL NULL NULL NULL NULL NULL datetime select
def information_schema TABLES CREATE_OPTIONS 20 NULL YES varchar 255 765 NULL NULL utf8 utf8_general_ci varchar(255) select
def information_schema TABLES CREATE_TIME 15 NULL YES datetime NULL NULL NULL NULL NULL NULL datetime select
def information_schema TABLES DATA_FREE 13 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema TABLES DATA_LENGTH 10 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema TABLES DATA_FREE 13 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema TABLES DATA_LENGTH 10 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema TABLES ENGINE 5 NULL YES varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
def information_schema TABLES INDEX_LENGTH 12 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema TABLES MAX_DATA_LENGTH 11 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema TABLES INDEX_LENGTH 12 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema TABLES MAX_DATA_LENGTH 11 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema TABLES ROW_FORMAT 7 NULL YES varchar 10 30 NULL NULL utf8 utf8_general_ci varchar(10) select
def information_schema TABLES TABLE_CATALOG 1 NO varchar 512 1536 NULL NULL utf8 utf8_general_ci varchar(512) select
def information_schema TABLES TABLE_COLLATION 18 NULL YES varchar 32 96 NULL NULL utf8 utf8_general_ci varchar(32) select
def information_schema TABLES TABLE_COMMENT 21 NO varchar 2048 6144 NULL NULL utf8 utf8_general_ci varchar(2048) select
def information_schema TABLES TABLE_NAME 3 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
def information_schema TABLES TABLE_ROWS 8 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema TABLES TABLE_ROWS 8 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema TABLES TABLE_SCHEMA 2 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
def information_schema TABLES TABLE_TYPE 4 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
def information_schema TABLES UPDATE_TIME 16 NULL YES datetime NULL NULL NULL NULL NULL NULL datetime select
def information_schema TABLES VERSION 6 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema TABLESPACES AUTOEXTEND_SIZE 6 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema TABLES VERSION 6 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema TABLESPACES AUTOEXTEND_SIZE 6 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema TABLESPACES ENGINE 2 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
def information_schema TABLESPACES EXTENT_SIZE 5 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema TABLESPACES EXTENT_SIZE 5 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema TABLESPACES LOGFILE_GROUP_NAME 4 NULL YES varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
def information_schema TABLESPACES MAXIMUM_SIZE 7 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema TABLESPACES NODEGROUP_ID 8 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema TABLESPACES MAXIMUM_SIZE 7 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema TABLESPACES NODEGROUP_ID 8 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(21) unsigned select
def information_schema TABLESPACES TABLESPACE_COMMENT 9 NULL YES varchar 2048 6144 NULL NULL utf8 utf8_general_ci varchar(2048) select
def information_schema TABLESPACES TABLESPACE_NAME 1 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
def information_schema TABLESPACES TABLESPACE_TYPE 3 NULL YES varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select

View File

@ -437,9 +437,9 @@ def test tb1 f27 19 NULL YES int NULL NULL 10 0 NULL NULL int(10) unsigned zerof
def test tb1 f28 20 NULL YES int NULL NULL 10 0 NULL NULL int(10) unsigned zerofill select,insert,update,references
def test tb1 f29 21 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(20) select,insert,update,references
def test tb1 f3 3 NULL YES char 1 1 NULL NULL latin1 latin1_swedish_ci char(1) select,insert,update,references
def test tb1 f30 22 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(20) unsigned select,insert,update,references
def test tb1 f31 23 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(20) unsigned zerofill select,insert,update,references
def test tb1 f32 24 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(20) unsigned zerofill select,insert,update,references
def test tb1 f30 22 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(20) unsigned select,insert,update,references
def test tb1 f31 23 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(20) unsigned zerofill select,insert,update,references
def test tb1 f32 24 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(20) unsigned zerofill select,insert,update,references
def test tb1 f33 25 10 NO decimal NULL NULL 10 0 NULL NULL decimal(10,0) select,insert,update,references
def test tb1 f34 26 10 NO decimal NULL NULL 10 0 NULL NULL decimal(10,0) unsigned select,insert,update,references
def test tb1 f35 27 0000000010 NO decimal NULL NULL 10 0 NULL NULL decimal(10,0) unsigned zerofill select,insert,update,references
@ -540,9 +540,9 @@ def test tb3 f143 20 99999 NO int NULL NULL 10 0 NULL NULL int(10) unsigned se
def test tb3 f144 21 0000099999 NO int NULL NULL 10 0 NULL NULL int(10) unsigned zerofill select,insert,update,references
def test tb3 f145 22 0000099999 NO int NULL NULL 10 0 NULL NULL int(10) unsigned zerofill select,insert,update,references
def test tb3 f146 23 999999 NO bigint NULL NULL 19 0 NULL NULL bigint(20) select,insert,update,references
def test tb3 f147 24 999999 NO bigint NULL NULL 19 0 NULL NULL bigint(20) unsigned select,insert,update,references
def test tb3 f148 25 00000000000000999999 NO bigint NULL NULL 19 0 NULL NULL bigint(20) unsigned zerofill select,insert,update,references
def test tb3 f149 26 00000000000000999999 NO bigint NULL NULL 19 0 NULL NULL bigint(20) unsigned zerofill select,insert,update,references
def test tb3 f147 24 999999 NO bigint NULL NULL 20 0 NULL NULL bigint(20) unsigned select,insert,update,references
def test tb3 f148 25 00000000000000999999 NO bigint NULL NULL 20 0 NULL NULL bigint(20) unsigned zerofill select,insert,update,references
def test tb3 f149 26 00000000000000999999 NO bigint NULL NULL 20 0 NULL NULL bigint(20) unsigned zerofill select,insert,update,references
def test tb3 f150 27 1000 NO decimal NULL NULL 10 0 NULL NULL decimal(10,0) select,insert,update,references
def test tb3 f151 28 999 NO decimal NULL NULL 10 0 NULL NULL decimal(10,0) unsigned select,insert,update,references
def test tb3 f152 29 0000001000 NO decimal NULL NULL 10 0 NULL NULL decimal(10,0) unsigned zerofill select,insert,update,references

View File

@ -479,9 +479,9 @@ def test tb1 f27 27 NULL YES int NULL NULL 10 0 NULL NULL int(10) unsigned zerof
def test tb1 f28 28 NULL YES int NULL NULL 10 0 NULL NULL int(10) unsigned zerofill select,insert,update,references
def test tb1 f29 29 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(20) select,insert,update,references
def test tb1 f3 3 NULL YES char 1 1 NULL NULL latin1 latin1_swedish_ci char(1) select,insert,update,references
def test tb1 f30 30 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(20) unsigned select,insert,update,references
def test tb1 f31 31 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(20) unsigned zerofill select,insert,update,references
def test tb1 f32 32 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(20) unsigned zerofill select,insert,update,references
def test tb1 f30 30 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(20) unsigned select,insert,update,references
def test tb1 f31 31 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(20) unsigned zerofill select,insert,update,references
def test tb1 f32 32 NULL YES bigint NULL NULL 20 0 NULL NULL bigint(20) unsigned zerofill select,insert,update,references
def test tb1 f33 33 10 NO decimal NULL NULL 10 0 NULL NULL decimal(10,0) select,insert,update,references
def test tb1 f34 34 10 NO decimal NULL NULL 10 0 NULL NULL decimal(10,0) unsigned select,insert,update,references
def test tb1 f35 35 0000000010 NO decimal NULL NULL 10 0 NULL NULL decimal(10,0) unsigned zerofill select,insert,update,references
@ -602,9 +602,9 @@ def test tb3 f143 26 99999 NO int NULL NULL 10 0 NULL NULL int(10) unsigned se
def test tb3 f144 27 0000099999 NO int NULL NULL 10 0 NULL NULL int(10) unsigned zerofill select,insert,update,references
def test tb3 f145 28 0000099999 NO int NULL NULL 10 0 NULL NULL int(10) unsigned zerofill select,insert,update,references
def test tb3 f146 29 999999 NO bigint NULL NULL 19 0 NULL NULL bigint(20) select,insert,update,references
def test tb3 f147 30 999999 NO bigint NULL NULL 19 0 NULL NULL bigint(20) unsigned select,insert,update,references
def test tb3 f148 31 00000000000000999999 NO bigint NULL NULL 19 0 NULL NULL bigint(20) unsigned zerofill select,insert,update,references
def test tb3 f149 32 00000000000000999999 NO bigint NULL NULL 19 0 NULL NULL bigint(20) unsigned zerofill select,insert,update,references
def test tb3 f147 30 999999 NO bigint NULL NULL 20 0 NULL NULL bigint(20) unsigned select,insert,update,references
def test tb3 f148 31 00000000000000999999 NO bigint NULL NULL 20 0 NULL NULL bigint(20) unsigned zerofill select,insert,update,references
def test tb3 f149 32 00000000000000999999 NO bigint NULL NULL 20 0 NULL NULL bigint(20) unsigned zerofill select,insert,update,references
def test tb3 f150 33 1000 NO decimal NULL NULL 10 0 NULL NULL decimal(10,0) select,insert,update,references
def test tb3 f151 34 999 NO decimal NULL NULL 10 0 NULL NULL decimal(10,0) unsigned select,insert,update,references
def test tb3 f152 35 0000001000 NO decimal NULL NULL 10 0 NULL NULL decimal(10,0) unsigned zerofill select,insert,update,references

View File

@ -97,13 +97,13 @@ def mysql host Select_priv 3 N NO enum 1 3 NULL NULL utf8 utf8_general_ci enum('
def mysql host Show_view_priv 16 N NO enum 1 3 NULL NULL utf8 utf8_general_ci enum('N','Y') select,insert,update,references
def mysql host Trigger_priv 20 N NO enum 1 3 NULL NULL utf8 utf8_general_ci enum('N','Y') select,insert,update,references
def mysql host Update_priv 5 N NO enum 1 3 NULL NULL utf8 utf8_general_ci enum('N','Y') select,insert,update,references
def mysql ndb_binlog_index deletes 6 NULL NO bigint NULL NULL 19 0 NULL NULL bigint(20) unsigned select,insert,update,references
def mysql ndb_binlog_index epoch 3 NULL NO bigint NULL NULL 19 0 NULL NULL bigint(20) unsigned PRI select,insert,update,references
def mysql ndb_binlog_index deletes 6 NULL NO bigint NULL NULL 20 0 NULL NULL bigint(20) unsigned select,insert,update,references
def mysql ndb_binlog_index epoch 3 NULL NO bigint NULL NULL 20 0 NULL NULL bigint(20) unsigned PRI select,insert,update,references
def mysql ndb_binlog_index File 2 NULL NO varchar 255 255 NULL NULL latin1 latin1_swedish_ci varchar(255) select,insert,update,references
def mysql ndb_binlog_index inserts 4 NULL NO bigint NULL NULL 19 0 NULL NULL bigint(20) unsigned select,insert,update,references
def mysql ndb_binlog_index Position 1 NULL NO bigint NULL NULL 19 0 NULL NULL bigint(20) unsigned select,insert,update,references
def mysql ndb_binlog_index schemaops 7 NULL NO bigint NULL NULL 19 0 NULL NULL bigint(20) unsigned select,insert,update,references
def mysql ndb_binlog_index updates 5 NULL NO bigint NULL NULL 19 0 NULL NULL bigint(20) unsigned select,insert,update,references
def mysql ndb_binlog_index inserts 4 NULL NO bigint NULL NULL 20 0 NULL NULL bigint(20) unsigned select,insert,update,references
def mysql ndb_binlog_index Position 1 NULL NO bigint NULL NULL 20 0 NULL NULL bigint(20) unsigned select,insert,update,references
def mysql ndb_binlog_index schemaops 7 NULL NO bigint NULL NULL 20 0 NULL NULL bigint(20) unsigned select,insert,update,references
def mysql ndb_binlog_index updates 5 NULL NO bigint NULL NULL 20 0 NULL NULL bigint(20) unsigned select,insert,update,references
def mysql plugin dl 2 NO varchar 128 384 NULL NULL utf8 utf8_general_ci varchar(128) select,insert,update,references
def mysql plugin name 1 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) PRI select,insert,update,references
def mysql proc body 11 NULL NO longblob 4294967295 4294967295 NULL NULL NULL NULL longblob select,insert,update,references

0
mysql-test/suite/ibmdb2i/include/have_i54.inc Executable file → Normal file
View File

0
mysql-test/suite/ibmdb2i/r/ibmdb2i_bug_44232.result Executable file → Normal file
View File

0
mysql-test/suite/ibmdb2i/r/ibmdb2i_bug_44610.result Executable file → Normal file
View File

0
mysql-test/suite/ibmdb2i/t/ibmdb2i_bug_44232.test Executable file → Normal file
View File

0
mysql-test/suite/ibmdb2i/t/ibmdb2i_bug_44610.test Executable file → Normal file
View File

View File

@ -2468,6 +2468,76 @@ ENGINE=InnoDB;
INSERT INTO t1 VALUES (0, 77, 1, 3);
UPDATE t1 SET d = 0 WHERE b = 77 AND c = 25;
DROP TABLE t1;
#
# Bug#50389 Using intersect does not return all rows
#
CREATE TABLE t1 (
f1 INT(10) NOT NULL,
f2 INT(10),
f3 INT(10),
f4 TINYINT(4),
f5 VARCHAR(50),
PRIMARY KEY (f1),
KEY idx1 (f2,f5,f4),
KEY idx2 (f2,f4)
) ENGINE=InnoDB;
LOAD DATA INFILE '../../std_data/intersect-bug50389.tsv' INTO TABLE t1;
SELECT * FROM t1 WHERE f1 IN
(3305028,3353871,3772880,3346860,4228206,3336022,
3470988,3305175,3329875,3817277,3856380,3796193,
3784744,4180925,4559596,3963734,3856391,4494153)
AND f5 = 'abcdefghijklmnopwrst' AND f2 = 1221457 AND f4 = 0 ;
f1 f2 f3 f4 f5
3305175 1221457 0 0 abcdefghijklmnopwrst
3329875 1221457 1382427 0 abcdefghijklmnopwrst
3336022 1221457 0 0 abcdefghijklmnopwrst
3346860 1221457 0 0 abcdefghijklmnopwrst
3772880 1221457 0 0 abcdefghijklmnopwrst
3784744 1221457 1382427 0 abcdefghijklmnopwrst
3796193 1221457 0 0 abcdefghijklmnopwrst
4228206 1221457 0 0 abcdefghijklmnopwrst
4494153 1221457 0 0 abcdefghijklmnopwrst
4559596 1221457 0 0 abcdefghijklmnopwrst
EXPLAIN SELECT * FROM t1 WHERE f1 IN
(3305028,3353871,3772880,3346860,4228206,3336022,
3470988,3305175,3329875,3817277,3856380,3796193,
3784744,4180925,4559596,3963734,3856391,4494153)
AND f5 = 'abcdefghijklmnopwrst' AND f2 = 1221457 AND f4 = 0 ;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 index_merge PRIMARY,idx1,idx2 idx2,idx1,PRIMARY 7,60,4 NULL 1 Using intersect(idx2,idx1,PRIMARY); Using where
DROP TABLE t1;
#
# Bug#51431 Wrong sort order after import of dump file
#
CREATE TABLE t1 (
f1 INT(11) NOT NULL,
f2 int(11) NOT NULL,
f3 int(11) NOT NULL,
f4 tinyint(1) NOT NULL,
PRIMARY KEY (f1),
UNIQUE KEY (f2, f3),
KEY (f4)
) ENGINE=InnoDB;
INSERT INTO t1 VALUES
(1,1,991,1), (2,1,992,1), (3,1,993,1), (4,1,994,1), (5,1,995,1),
(6,1,996,1), (7,1,997,1), (8,1,998,1), (10,1,999,1), (11,1,9910,1),
(16,1,9911,1), (17,1,9912,1), (18,1,9913,1), (19,1,9914,1), (20,1,9915,1),
(21,1,9916,1), (22,1,9917,1), (23,1,9918,1), (24,1,9919,1), (25,1,9920,1),
(26,1,9921,1), (27,1,9922,1);
FLUSH TABLES;
SELECT * FROM t1 WHERE f2 = 1 AND f4 = TRUE
ORDER BY f1 DESC LIMIT 5;
f1 f2 f3 f4
27 1 9922 1
26 1 9921 1
25 1 9920 1
24 1 9919 1
23 1 9918 1
EXPLAIN SELECT * FROM t1 WHERE f2 = 1 AND f4 = TRUE
ORDER BY f1 DESC LIMIT 5;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 range f2,f4 f4 1 NULL 11 Using where
DROP TABLE t1;
End of 5.1 tests
#
# Test for bug #39932 "create table fails if column for FK is in different

View File

@ -676,6 +676,67 @@ UPDATE t1 SET d = 0 WHERE b = 77 AND c = 25;
DROP TABLE t1;
--echo #
--echo # Bug#50389 Using intersect does not return all rows
--echo #
CREATE TABLE t1 (
f1 INT(10) NOT NULL,
f2 INT(10),
f3 INT(10),
f4 TINYINT(4),
f5 VARCHAR(50),
PRIMARY KEY (f1),
KEY idx1 (f2,f5,f4),
KEY idx2 (f2,f4)
) ENGINE=InnoDB;
LOAD DATA INFILE '../../std_data/intersect-bug50389.tsv' INTO TABLE t1;
SELECT * FROM t1 WHERE f1 IN
(3305028,3353871,3772880,3346860,4228206,3336022,
3470988,3305175,3329875,3817277,3856380,3796193,
3784744,4180925,4559596,3963734,3856391,4494153)
AND f5 = 'abcdefghijklmnopwrst' AND f2 = 1221457 AND f4 = 0 ;
EXPLAIN SELECT * FROM t1 WHERE f1 IN
(3305028,3353871,3772880,3346860,4228206,3336022,
3470988,3305175,3329875,3817277,3856380,3796193,
3784744,4180925,4559596,3963734,3856391,4494153)
AND f5 = 'abcdefghijklmnopwrst' AND f2 = 1221457 AND f4 = 0 ;
DROP TABLE t1;
--echo #
--echo # Bug#51431 Wrong sort order after import of dump file
--echo #
CREATE TABLE t1 (
f1 INT(11) NOT NULL,
f2 int(11) NOT NULL,
f3 int(11) NOT NULL,
f4 tinyint(1) NOT NULL,
PRIMARY KEY (f1),
UNIQUE KEY (f2, f3),
KEY (f4)
) ENGINE=InnoDB;
INSERT INTO t1 VALUES
(1,1,991,1), (2,1,992,1), (3,1,993,1), (4,1,994,1), (5,1,995,1),
(6,1,996,1), (7,1,997,1), (8,1,998,1), (10,1,999,1), (11,1,9910,1),
(16,1,9911,1), (17,1,9912,1), (18,1,9913,1), (19,1,9914,1), (20,1,9915,1),
(21,1,9916,1), (22,1,9917,1), (23,1,9918,1), (24,1,9919,1), (25,1,9920,1),
(26,1,9921,1), (27,1,9922,1);
FLUSH TABLES;
SELECT * FROM t1 WHERE f2 = 1 AND f4 = TRUE
ORDER BY f1 DESC LIMIT 5;
EXPLAIN SELECT * FROM t1 WHERE f2 = 1 AND f4 = TRUE
ORDER BY f1 DESC LIMIT 5;
DROP TABLE t1;
--echo End of 5.1 tests

View File

@ -26,7 +26,7 @@ ERROR 1050 (42S01) at line 445: Table 'SETUP_CONSUMERS' already exists
ERROR 1050 (42S01) at line 462: Table 'SETUP_INSTRUMENTS' already exists
ERROR 1050 (42S01) at line 482: Table 'SETUP_OBJECTS' already exists
ERROR 1050 (42S01) at line 498: Table 'SETUP_TIMERS' already exists
ERROR 1644 (HY000) at line 1140: Unexpected content found in the performance_schema database.
ERROR 1644 (HY000) at line 1138: Unexpected content found in the performance_schema database.
FATAL ERROR: Upgrade failed
show tables like "user_table";
Tables_in_performance_schema (user_table)
@ -57,7 +57,7 @@ ERROR 1050 (42S01) at line 445: Table 'SETUP_CONSUMERS' already exists
ERROR 1050 (42S01) at line 462: Table 'SETUP_INSTRUMENTS' already exists
ERROR 1050 (42S01) at line 482: Table 'SETUP_OBJECTS' already exists
ERROR 1050 (42S01) at line 498: Table 'SETUP_TIMERS' already exists
ERROR 1644 (HY000) at line 1140: Unexpected content found in the performance_schema database.
ERROR 1644 (HY000) at line 1138: Unexpected content found in the performance_schema database.
FATAL ERROR: Upgrade failed
show tables like "user_view";
Tables_in_performance_schema (user_view)
@ -86,7 +86,7 @@ ERROR 1050 (42S01) at line 445: Table 'SETUP_CONSUMERS' already exists
ERROR 1050 (42S01) at line 462: Table 'SETUP_INSTRUMENTS' already exists
ERROR 1050 (42S01) at line 482: Table 'SETUP_OBJECTS' already exists
ERROR 1050 (42S01) at line 498: Table 'SETUP_TIMERS' already exists
ERROR 1644 (HY000) at line 1140: Unexpected content found in the performance_schema database.
ERROR 1644 (HY000) at line 1138: Unexpected content found in the performance_schema database.
FATAL ERROR: Upgrade failed
select name from mysql.proc where db='performance_schema';
name
@ -115,7 +115,7 @@ ERROR 1050 (42S01) at line 445: Table 'SETUP_CONSUMERS' already exists
ERROR 1050 (42S01) at line 462: Table 'SETUP_INSTRUMENTS' already exists
ERROR 1050 (42S01) at line 482: Table 'SETUP_OBJECTS' already exists
ERROR 1050 (42S01) at line 498: Table 'SETUP_TIMERS' already exists
ERROR 1644 (HY000) at line 1140: Unexpected content found in the performance_schema database.
ERROR 1644 (HY000) at line 1138: Unexpected content found in the performance_schema database.
FATAL ERROR: Upgrade failed
select name from mysql.proc where db='performance_schema';
name
@ -144,7 +144,7 @@ ERROR 1050 (42S01) at line 445: Table 'SETUP_CONSUMERS' already exists
ERROR 1050 (42S01) at line 462: Table 'SETUP_INSTRUMENTS' already exists
ERROR 1050 (42S01) at line 482: Table 'SETUP_OBJECTS' already exists
ERROR 1050 (42S01) at line 498: Table 'SETUP_TIMERS' already exists
ERROR 1644 (HY000) at line 1140: Unexpected content found in the performance_schema database.
ERROR 1644 (HY000) at line 1138: Unexpected content found in the performance_schema database.
FATAL ERROR: Upgrade failed
select name from mysql.event where db='performance_schema';
name

View File

@ -0,0 +1,205 @@
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;
call mtr.add_suppression("Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT.*");
# On slave2
# Connect slave2 to slave
CHANGE MASTER TO MASTER_HOST='127.0.0.1', MASTER_PORT=SLAVE_MYPORT;,
MASTER_LOG_FILE='slave-bin.000001', MASTER_USER='root';
START SLAVE;
# [On master]
DROP VIEW IF EXISTS v_user;
DROP VIEW IF EXISTS v_tables_priv;
DROP VIEW IF EXISTS v_procs_priv;
DROP PROCEDURE IF EXISTS p1;
DROP PROCEDURE IF EXISTS my_grant;
DROP PROCEDURE IF EXISTS my_revoke;
DROP FUNCTION IF EXISTS my_user;
DROP EVENT IF EXISTS e1;
CREATE TABLE t1(c1 char(100));
CREATE VIEW test.v_user AS SELECT * FROM mysql.user WHERE User LIKE 'bug48321%';
CREATE VIEW test.v_tables_priv AS SELECT * FROM mysql.tables_priv WHERE User LIKE 'bug48321%';
CREATE VIEW test.v_procs_priv AS SELECT * FROM mysql.procs_priv WHERE User LIKE 'bug48321%';
CREATE VIEW test.v_event AS SELECT definer FROM mysql.event WHERE name = 'e1';
CREATE PROCEDURE p1() SELECT 1;
# bug48321_1-01234 has the max length(16) of user.
GRANT ALL PRIVILEGES ON *.* TO 'bug48321_1-01234'@'localhost' WITH GRANT OPTION;
# Make sure the max lengths of user and host
# the user name is too lengh
GRANT CREATE USER ON *.* TO '01234567890123456'@'fakehost';
ERROR HY000: String '01234567890123456' is too long for user name (should be no longer than 16)
# the host name is too lengh
GRANT CREATE USER ON *.* TO 'fakename'@'0123456789012345678901234567890123456789012345678901234567890';
ERROR HY000: String '0123456789012345678901234567890123456789012345678901234567890' is too long for host name (should be no longer than 60)
# User 'bug48321_1-01234' connects to master by conn1
# [On conn1]
# Verify 'REVOKE ALL' statement
REVOKE ALL PRIVILEGES, GRANT OPTION FROM CURRENT_USER();
Comparing tables master:test.v_user and slave:test.v_user
Comparing tables master:test.v_user and slave2:test.v_user
# Verify 'GRANT ... ON TABLE ...' statement
GRANT CREATE, INSERT, SELECT ON TABLE test.t1 TO CURRENT_USER();
Comparing tables master:test.v_tables_priv and slave:test.v_tables_priv
Comparing tables master:test.v_tables_priv and slave2:test.v_tables_priv
# Verify 'GRANT ... ON PROCEDURE...' statement
GRANT ALTER ROUTINE, EXECUTE ON PROCEDURE p1 TO CURRENT_USER();
Comparing tables master:test.v_procs_priv and slave:test.v_procs_priv
Comparing tables master:test.v_procs_priv and slave2:test.v_procs_priv
# Verify 'GRANT ... ON *.* ...' statement
GRANT ALL PRIVILEGES ON *.* TO CURRENT_USER() WITH GRANT OPTION;
Comparing tables master:test.v_procs_priv and slave:test.v_procs_priv
Comparing tables master:test.v_procs_priv and slave2:test.v_procs_priv
# Verify 'REVOKE ... ON TABLE ...' statement
REVOKE CREATE, INSERT, SELECT ON TABLE t1 FROM CURRENT_USER();
Comparing tables master:test.v_tables_priv and slave:test.v_tables_priv
Comparing tables master:test.v_tables_priv and slave2:test.v_tables_priv
# Verify 'REVOKE ... ON PROCEDURE...' statement
REVOKE ALTER ROUTINE, EXECUTE ON PROCEDURE p1 FROM CURRENT_USER();
Comparing tables master:test.v_procs_priv and slave:test.v_procs_priv
Comparing tables master:test.v_procs_priv and slave2:test.v_procs_priv
# Verify 'REVOKE ... ON *.* ...' statement
REVOKE ALL PRIVILEGES ON *.* FROM CURRENT_USER();
Comparing tables master:test.v_user and slave:test.v_user
Comparing tables master:test.v_user and slave2:test.v_user
# Verify 'GRANT ...' statement in the procedure
CREATE PROCEDURE my_grant()
GRANT CREATE, INSERT, SELECT ON TABLE test.t1 TO CURRENT_USER();
call my_grant;
Comparing tables master:test.v_tables_priv and slave:test.v_tables_priv
Comparing tables master:test.v_tables_priv and slave2:test.v_tables_priv
# Verify 'REVOKE ... ON TABLE ...' statement in the procedure
CREATE PROCEDURE my_revoke()
REVOKE CREATE, INSERT, SELECT ON TABLE t1 FROM CURRENT_USER();
call my_revoke;
Comparing tables master:test.v_tables_priv and slave:test.v_tables_priv
Comparing tables master:test.v_tables_priv and slave2:test.v_tables_priv
# Verify 'RENAME USER ...' statement
RENAME USER CURRENT_USER TO 'bug48321_2'@'localhost';
Comparing tables master:test.v_user and slave:test.v_user
Comparing tables master:test.v_user and slave2:test.v_user
# Verify 'DROP USER ...' statement
GRANT CREATE USER ON *.* TO 'bug48321_2'@'localhost';
DROP USER CURRENT_USER();
Comparing tables master:test.v_user and slave:test.v_user
Comparing tables master:test.v_user and slave2:test.v_user
# Verify 'ALTER EVENT...' statement
CREATE EVENT e1 ON SCHEDULE EVERY 1 DAY DO SELECT * FROM t1;
# Explicitly assign CURRENT_USER() to definer
ALTER DEFINER=CURRENT_USER() EVENT e1 ENABLE;
Comparing tables master:test.v_event and slave:test.v_event
Comparing tables master:test.v_event and slave2:test.v_event
# Session user will be set as definer, if the statement does not assign
# a definer
ALTER EVENT e1 ENABLE;
Comparing tables master:test.v_event and slave:test.v_event
Comparing tables master:test.v_event and slave2:test.v_event
# Verify that this patch does not affect the calling of CURRENT_USER()
# in the other statements
# [On master]
INSERT INTO t1 VALUES(CURRENT_USER()), ('1234');
Warnings:
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it uses a system function that may return a different value on the slave.
SELECT * FROM t1;
c1
root@localhost
1234
# [On slave]
SELECT * FROM t1;
c1
@
1234
# [On slave2]
SELECT * FROM t1;
c1
@
1234
# [On master]
UPDATE t1 SET c1=CURRENT_USER() WHERE c1='1234';
Warnings:
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it uses a system function that may return a different value on the slave.
SELECT * FROM t1;
c1
root@localhost
root@localhost
# [On slave]
SELECT * FROM t1;
c1
@
@
# [On slave2]
SELECT * FROM t1;
c1
@
@
# [On master]
DELETE FROM t1 WHERE c1=CURRENT_USER();
Warnings:
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it uses a system function that may return a different value on the slave.
SELECT * FROM t1;
c1
# [On slave]
SELECT * FROM t1;
c1
# [On slave2]
SELECT * FROM t1;
c1
# [On master]
CREATE TABLE t2(c1 char(100));
CREATE FUNCTION my_user() RETURNS VARCHAR(64)
SQL SECURITY INVOKER
BEGIN
INSERT INTO t2 VALUES(CURRENT_USER());
RETURN CURRENT_USER();
END |
INSERT INTO t1 VALUES(my_user());
Warnings:
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it uses a system function that may return a different value on the slave.
SELECT * FROM t1;
c1
root@localhost
SELECT * FROM t2;
c1
root@localhost
# [On slave]
SELECT * FROM t1;
c1
@
SELECT * FROM t2;
c1
@
# [On slave2]
SELECT * FROM t1;
c1
@
SELECT * FROM t2;
c1
@
# END
DROP TABLE t1, t2;
DROP VIEW v_user, v_tables_priv, v_procs_priv, v_event;
DROP PROCEDURE p1;
DROP PROCEDURE my_grant;
DROP PROCEDURE my_revoke;
DROP FUNCTION my_user;
DROP EVENT e1;

View File

@ -750,7 +750,7 @@ test_rpl e2 root@localhost SYSTEM RECURRING NULL 1 # # NULL ENABLED 1 latin1 lat
USE test_rpl;
SHOW EVENTS;
Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation
test_rpl e2 @ SYSTEM RECURRING NULL 1 # # NULL SLAVESIDE_DISABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
test_rpl e2 root@localhost SYSTEM RECURRING NULL 1 # # NULL SLAVESIDE_DISABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci
==========MASTER==========
SELECT COUNT(*) FROM t1;
COUNT(*)

View File

@ -0,0 +1,9 @@
!include ../my.cnf
[mysqld.3]
server-id=3
log-bin=slave-bin
[ENV]
SLAVE_MYPORT1= @mysqld.3.port
SLAVE_MYSOCK1= @mysqld.3.socket

View File

@ -0,0 +1,239 @@
##############################################################################
# BUG#48321 CURRENT_USER() incorrectly replicated for DROP/RENAME USER,
# REVOKE, GRANT, ALTER EVENT
#
# Calling CURRENT_USER() results into inconsistency between slave and master,
# as the slave SQL thread has different user with common users.
#
# After the patch for bug#48321, session's user will be written into query log
# event if CURRENT_USER() is called in 'DROP/RENAME USER', 'REVOKE', 'GRANT',
# 'ALTER EVENT'.
#
##############################################################################
source include/master-slave.inc;
source include/have_binlog_format_statement.inc;
call mtr.add_suppression("Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT.*");
--echo
--echo # On slave2
connect (slave2,127.0.0.1,root,,test,$SLAVE_MYPORT1,);
connection slave2;
--echo # Connect slave2 to slave
--replace_result $SLAVE_MYPORT SLAVE_MYPORT;
eval CHANGE MASTER TO MASTER_HOST='127.0.0.1', MASTER_PORT=$SLAVE_MYPORT,
MASTER_LOG_FILE='slave-bin.000001', MASTER_USER='root';
START SLAVE;
source include/wait_for_slave_to_start.inc;
--echo
--echo # [On master]
connection master;
--disable_warnings
DROP VIEW IF EXISTS v_user;
DROP VIEW IF EXISTS v_tables_priv;
DROP VIEW IF EXISTS v_procs_priv;
DROP PROCEDURE IF EXISTS p1;
DROP PROCEDURE IF EXISTS my_grant;
DROP PROCEDURE IF EXISTS my_revoke;
DROP FUNCTION IF EXISTS my_user;
DROP EVENT IF EXISTS e1;
--enable_warnings
CREATE TABLE t1(c1 char(100));
CREATE VIEW test.v_user AS SELECT * FROM mysql.user WHERE User LIKE 'bug48321%';
CREATE VIEW test.v_tables_priv AS SELECT * FROM mysql.tables_priv WHERE User LIKE 'bug48321%';
CREATE VIEW test.v_procs_priv AS SELECT * FROM mysql.procs_priv WHERE User LIKE 'bug48321%';
CREATE VIEW test.v_event AS SELECT definer FROM mysql.event WHERE name = 'e1';
CREATE PROCEDURE p1() SELECT 1;
--echo # bug48321_1-01234 has the max length(16) of user.
GRANT ALL PRIVILEGES ON *.* TO 'bug48321_1-01234'@'localhost' WITH GRANT OPTION;
--echo
--echo # Make sure the max lengths of user and host
--echo # the user name is too lengh
--error 1470
GRANT CREATE USER ON *.* TO '01234567890123456'@'fakehost';
--echo # the host name is too lengh
--error 1470
GRANT CREATE USER ON *.* TO 'fakename'@'0123456789012345678901234567890123456789012345678901234567890';
--echo
--echo # User 'bug48321_1-01234' connects to master by conn1
connect (conn1, 127.0.0.1, 'bug48321_1-01234'@'localhost',,);
connection conn1;
--echo # [On conn1]
--echo # Verify 'REVOKE ALL' statement
REVOKE ALL PRIVILEGES, GRANT OPTION FROM CURRENT_USER();
let $diff_table= test.v_user;
let $diff_server_list= master, slave, slave2;
source include/rpl_diff_tables.inc;
--echo
--echo # Verify 'GRANT ... ON TABLE ...' statement
connection conn1;
GRANT CREATE, INSERT, SELECT ON TABLE test.t1 TO CURRENT_USER();
let $diff_table= test.v_tables_priv;
source include/rpl_diff_tables.inc;
--echo
--echo # Verify 'GRANT ... ON PROCEDURE...' statement
connection conn1;
GRANT ALTER ROUTINE, EXECUTE ON PROCEDURE p1 TO CURRENT_USER();
let $diff_table= test.v_procs_priv;
source include/rpl_diff_tables.inc;
--echo
--echo # Verify 'GRANT ... ON *.* ...' statement
connection conn1;
GRANT ALL PRIVILEGES ON *.* TO CURRENT_USER() WITH GRANT OPTION;
source include/rpl_diff_tables.inc;
--echo
--echo # Verify 'REVOKE ... ON TABLE ...' statement
connection conn1;
REVOKE CREATE, INSERT, SELECT ON TABLE t1 FROM CURRENT_USER();
let $diff_table= test.v_tables_priv;
source include/rpl_diff_tables.inc;
--echo
--echo # Verify 'REVOKE ... ON PROCEDURE...' statement
connection conn1;
REVOKE ALTER ROUTINE, EXECUTE ON PROCEDURE p1 FROM CURRENT_USER();
let $diff_table= test.v_procs_priv;
source include/rpl_diff_tables.inc;
--echo
--echo # Verify 'REVOKE ... ON *.* ...' statement
connection conn1;
REVOKE ALL PRIVILEGES ON *.* FROM CURRENT_USER();
let $diff_table= test.v_user;
source include/rpl_diff_tables.inc;
--echo
--echo # Verify 'GRANT ...' statement in the procedure
connection conn1;
CREATE PROCEDURE my_grant()
GRANT CREATE, INSERT, SELECT ON TABLE test.t1 TO CURRENT_USER();
call my_grant;
let $diff_table= test.v_tables_priv;
source include/rpl_diff_tables.inc;
--echo
--echo # Verify 'REVOKE ... ON TABLE ...' statement in the procedure
connection conn1;
CREATE PROCEDURE my_revoke()
REVOKE CREATE, INSERT, SELECT ON TABLE t1 FROM CURRENT_USER();
call my_revoke;
let $diff_table= test.v_tables_priv;
source include/rpl_diff_tables.inc;
--echo
--echo # Verify 'RENAME USER ...' statement
connection conn1;
RENAME USER CURRENT_USER TO 'bug48321_2'@'localhost';
let $diff_table= test.v_user;
source include/rpl_diff_tables.inc;
disconnect conn1;
--echo
--echo # Verify 'DROP USER ...' statement
connection master;
GRANT CREATE USER ON *.* TO 'bug48321_2'@'localhost';
connect (conn1, 127.0.0.1, 'bug48321_2'@'localhost',,);
connection conn1;
DROP USER CURRENT_USER();
source include/rpl_diff_tables.inc;
--echo
--echo # Verify 'ALTER EVENT...' statement
connection master;
CREATE EVENT e1 ON SCHEDULE EVERY 1 DAY DO SELECT * FROM t1;
--echo # Explicitly assign CURRENT_USER() to definer
ALTER DEFINER=CURRENT_USER() EVENT e1 ENABLE;
let $diff_table= test.v_event;
source include/rpl_diff_tables.inc;
connection master;
--echo
--echo # Session user will be set as definer, if the statement does not assign
--echo # a definer
ALTER EVENT e1 ENABLE;
sync_slave_with_master;
source include/rpl_diff_tables.inc;
--echo
--echo # Verify that this patch does not affect the calling of CURRENT_USER()
--echo # in the other statements
connection master;
--echo # [On master]
INSERT INTO t1 VALUES(CURRENT_USER()), ('1234');
SELECT * FROM t1;
sync_slave_with_master;
--echo # [On slave]
SELECT * FROM t1;
--echo # [On slave2]
sync_slave_with_master slave2;
SELECT * FROM t1;
connection master;
--echo # [On master]
UPDATE t1 SET c1=CURRENT_USER() WHERE c1='1234';
SELECT * FROM t1;
sync_slave_with_master;
--echo # [On slave]
SELECT * FROM t1;
sync_slave_with_master slave2;
--echo # [On slave2]
SELECT * FROM t1;
connection master;
--echo # [On master]
DELETE FROM t1 WHERE c1=CURRENT_USER();
SELECT * FROM t1;
sync_slave_with_master;
--echo # [On slave]
SELECT * FROM t1;
sync_slave_with_master slave2;
--echo # [On slave2]
SELECT * FROM t1;
connection master;
--echo # [On master]
CREATE TABLE t2(c1 char(100));
DELIMITER |;
CREATE FUNCTION my_user() RETURNS VARCHAR(64)
SQL SECURITY INVOKER
BEGIN
INSERT INTO t2 VALUES(CURRENT_USER());
RETURN CURRENT_USER();
END |
DELIMITER ;|
INSERT INTO t1 VALUES(my_user());
SELECT * FROM t1;
SELECT * FROM t2;
sync_slave_with_master;
--echo # [On slave]
SELECT * FROM t1;
SELECT * FROM t2;
sync_slave_with_master slave2;
--echo # [On slave2]
SELECT * FROM t1;
SELECT * FROM t2;
--echo
--echo # END
connection master;
DROP TABLE t1, t2;
DROP VIEW v_user, v_tables_priv, v_procs_priv, v_event;
DROP PROCEDURE p1;
DROP PROCEDURE my_grant;
DROP PROCEDURE my_revoke;
DROP FUNCTION my_user;
DROP EVENT e1;
sync_slave_with_master;
sync_slave_with_master slave2;
source include/master-slave-end.inc;

View File

@ -45,7 +45,6 @@ SHOW CREATE TABLE t1;
SELECT * FROM t1;
DROP TABLE t1;
--echo #
--echo # Bug#42064: low memory crash when importing hex strings, in Item_hex_string::Item_hex_string
--echo #
@ -60,6 +59,36 @@ SET SESSION debug=DEFAULT;
DROP TABLE t1;
-- echo #
-- echo # Bug#41660: Sort-index_merge for non-first join table may require
-- echo # O(#scans) memory
-- echo #
CREATE TABLE t1 (a INT);
INSERT INTO t1 VALUES (0), (1), (2), (3), (4), (5), (6), (7), (8), (9);
CREATE TABLE t2 (a INT, b INT, filler CHAR(100), KEY(a), KEY(b));
INSERT INTO t2 SELECT 1000, 1000, 'filler' FROM t1 A, t1 B, t1 C;
INSERT INTO t2 VALUES (1, 1, 'data');
--echo # the example query uses LEFT JOIN only for the sake of being able to
--echo # demonstrate the issue with a very small dataset. (left outer join
--echo # disables the use of join buffering, so we get the second table
--echo # re-scanned for every record in the outer table. if we used inner join,
--echo # we would need to have thousands of records and/or more columns in both
--echo # tables so that the join buffer is filled and re-scans are triggered).
SET SESSION debug = '+d,only_one_Unique_may_be_created';
--replace_column 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8 x 9 x
EXPLAIN
SELECT * FROM t1 LEFT JOIN t2 ON ( t2.a < 10 OR t2.b < 10 );
SELECT * FROM t1 LEFT JOIN t2 ON ( t2.a < 10 OR t2.b < 10 );
SET SESSION debug = DEFAULT;
DROP TABLE t1, t2;
--echo #
--echo # End of 5.1 tests
--echo #

View File

@ -539,6 +539,21 @@ EXPLAIN SELECT * FROM t1 WHERE c_char IN (NULL, NULL);
DROP TABLE t1;
--echo #
--echo # Bug#54477: Crash on IN / CASE with NULL arguments
--echo #
CREATE TABLE t1 (a INT);
INSERT INTO t1 VALUES (1), (2);
SELECT 1 IN (NULL, a) FROM t1;
SELECT a IN (a, a) FROM t1 GROUP BY a WITH ROLLUP;
SELECT CASE a WHEN a THEN a END FROM t1 GROUP BY a WITH ROLLUP;
DROP TABLE t1;
--echo #
--echo End of 5.1 tests

View File

@ -112,5 +112,19 @@ select 'andre%' like 'andre
#
select _cp1251'andre%' like convert('andreÊ%' using cp1251) escape 'Ê';
#
# End of 4.1 tests
--echo End of 4.1 tests
--echo #
--echo # Bug #54575: crash when joining tables with unique set column
--echo #
CREATE TABLE t1(a SET('a') NOT NULL, UNIQUE KEY(a));
CREATE TABLE t2(b INT PRIMARY KEY);
INSERT INTO t1 VALUES ();
INSERT INTO t2 VALUES (1), (2), (3);
SELECT 1 FROM t2 JOIN t1 ON 1 LIKE a GROUP BY a;
DROP TABLE t1, t2;
--echo End of 5.1 tests

View File

@ -544,3 +544,24 @@ ORDER BY t1.f2;
DROP TABLE t1,t2;
--echo End of 5.0 tests
--echo #
--echo # Bug#54416 MAX from JOIN with HAVING returning NULL with 5.1 and Empty set
--echo #
CREATE TABLE t1 (f1 INT(11), f2 VARCHAR(1), PRIMARY KEY (f1));
INSERT INTO t1 VALUES (1,'f');
CREATE TABLE t2 (f1 INT(11), f2 VARCHAR(1));
INSERT INTO t2 VALUES (2,'m');
INSERT INTO t2 VALUES (3,'m');
INSERT INTO t2 VALUES (11,NULL);
INSERT INTO t2 VALUES (12,'k');
SELECT MAX(t1.f1) field1
FROM t1 JOIN t2 ON t2.f2 LIKE 'x'
HAVING field1 < 7;
DROP TABLE t1,t2;
--echo End of 5.1 tests

View File

@ -1416,6 +1416,31 @@ DROP USER nonpriv;
DROP TABLE db1.t1;
DROP DATABASE db1;
--echo
--echo Bug#54422 query with = 'variables'
--echo
CREATE TABLE variables(f1 INT);
SELECT COLUMN_DEFAULT, TABLE_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE INFORMATION_SCHEMA.COLUMNS.TABLE_NAME = 'variables';
DROP TABLE variables;
--echo #
--echo # Bug #53814: NUMERIC_PRECISION for unsigned bigint field is 19,
--echo # should be 20
--echo #
CREATE TABLE ubig (a BIGINT, b BIGINT UNSIGNED);
SELECT TABLE_NAME, COLUMN_NAME, NUMERIC_PRECISION
FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME='ubig';
INSERT INTO ubig VALUES (0xFFFFFFFFFFFFFFFF,0xFFFFFFFFFFFFFFFF);
SELECT length(CAST(b AS CHAR)) FROM ubig;
DROP TABLE ubig;
--echo End of 5.1 tests.

View File

@ -570,4 +570,36 @@ DROP TABLE t1;
connection default;
disconnect con1;
--echo #
--echo # Bug #51876 : crash/memory underrun when loading data with ucs2
--echo # and reverse() function
--echo #
--echo # Problem # 1 (original report): wrong parsing of ucs2 data
SELECT '00' UNION SELECT '10' INTO OUTFILE 'tmpp.txt';
CREATE TABLE t1(a INT);
LOAD DATA INFILE 'tmpp.txt' INTO TABLE t1 CHARACTER SET ucs2
(@b) SET a=REVERSE(@b);
--echo # should return 2 zeroes (as the value is truncated)
SELECT * FROM t1;
DROP TABLE t1;
let $MYSQLD_DATADIR= `select @@datadir`;
remove_file $MYSQLD_DATADIR/test/tmpp.txt;
--echo # Problem # 2 : if you write and read ucs2 data to a file they're lost
SELECT '00' UNION SELECT '10' INTO OUTFILE 'tmpp2.txt' CHARACTER SET ucs2;
CREATE TABLE t1(a INT);
LOAD DATA INFILE 'tmpp2.txt' INTO TABLE t1 CHARACTER SET ucs2
(@b) SET a=REVERSE(@b);
--echo # should return 0 and 1 (10 reversed)
SELECT * FROM t1;
DROP TABLE t1;
let $MYSQLD_DATADIR= `select @@datadir`;
remove_file $MYSQLD_DATADIR/test/tmpp2.txt;
--echo End of 5.1 tests

View File

@ -160,4 +160,26 @@ SELECT * FROM v1;
DROP VIEW v1;
DROP TABLE t1;
--echo End of 5.0 tests.
--echo #
--echo # Bug #53095: SELECT column_name FROM INFORMATION_SCHEMA.STATISTICS
--echo # returns nothing
--echo #
CREATE TABLE `ttt` (
`f1` char(3) NOT NULL,
PRIMARY KEY (`f1`)
) ENGINE=myisam DEFAULT CHARSET=latin1;
SELECT count(COLUMN_NAME) FROM INFORMATION_SCHEMA.STATISTICS WHERE TABLE_NAME =
'TTT';
SELECT count(*) FROM INFORMATION_SCHEMA.STATISTICS WHERE TABLE_NAME = 'TTT';
DROP TABLE `ttt`;
--echo End of 5.0 tests.

0
mysql-test/t/mysql_delimiter_19799.sql Executable file → Normal file
View File

View File

@ -108,6 +108,23 @@ DROP PROCEDURE testproc;
--cat_file $MYSQLTEST_VARDIR/tmp/41569.txt
--remove_file $MYSQLTEST_VARDIR/tmp/41569.txt
--echo #
--echo # Bug #53613: mysql_upgrade incorrectly revokes
--echo # TRIGGER privilege on given table
--echo #
GRANT USAGE ON *.* TO 'user3'@'%';
GRANT ALL PRIVILEGES ON `roelt`.`test2` TO 'user3'@'%';
--echo Run mysql_upgrade with all privileges on a user
--exec $MYSQL_UPGRADE --skip-verbose --force 2>&1
SHOW GRANTS FOR 'user3'@'%';
DROP USER 'user3'@'%';
--echo End of 5.1 tests
#
# Test the --upgrade-system-tables option
#

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