5.0 to 5.1 merge
mysql-test/r/grant.result: Auto merged scripts/mysql_create_system_tables.sh: Auto merged scripts/mysql_fix_privilege_tables.sql: Auto merged sql/Makefile.am: Auto merged sql/log.cc: Auto merged sql/log_event.cc: Auto merged sql/mysql_priv.h: Auto merged sql/mysqld.cc: Auto merged sql/slave.cc: Auto merged sql/slave.h: Auto merged sql/sql_acl.cc: Auto merged sql/sql_class.h: Auto merged sql/sql_parse.cc: Auto merged configure.in: merge of 5.0 to 5.1, version info and NDB_VERSION_() conflicts libmysqld/Makefile.am: merge of Makefile sql_sources list sql/sql_acl.h: merge, no need to hand resolve BitKeeper/etc/logging_ok: Logging to logging@openlogging.org accepted
This commit is contained in:
commit
c0333ecee4
@ -25,6 +25,7 @@ bar@bar.intranet.mysql.r18.ru
|
||||
bar@bar.mysql.r18.ru
|
||||
bar@bar.udmsearch.izhnet.ru
|
||||
bar@deer.(none)
|
||||
bar@eagle.intranet.mysql.r18.ru
|
||||
bar@gw.udmsearch.izhnet.ru
|
||||
bar@mysql.com
|
||||
bar@noter.intranet.mysql.r18.ru
|
||||
@ -48,6 +49,7 @@ dlenev@build.mysql.com
|
||||
dlenev@jabberwock.localdomain
|
||||
dlenev@mysql.com
|
||||
ejonore@mc03.ndb.mysql.com
|
||||
gbichot@production.mysql.com
|
||||
gbichot@quadita2.mysql.com
|
||||
gbichot@quadxeon.mysql.com
|
||||
georg@beethoven.local
|
||||
@ -118,6 +120,7 @@ kostja@oak.local
|
||||
lars@mysql.com
|
||||
lenz@kallisto.mysql.com
|
||||
lenz@mysql.com
|
||||
magnus@msdesk.mysql.com
|
||||
magnus@neptunus.(none)
|
||||
magnus@shellback.(none)
|
||||
marko@hundin.mysql.fi
|
||||
@ -186,6 +189,7 @@ papa@gbichot.local
|
||||
patg@krsna.
|
||||
patg@krsna.patg.net
|
||||
patg@patrick-galbraiths-computer.local
|
||||
patg@patrick.local
|
||||
patg@pc248.lfp.kcls.org
|
||||
paul@central.snake.net
|
||||
paul@frost.snake.net
|
||||
@ -226,6 +230,7 @@ salle@vafla.online.bg
|
||||
sasha@mysql.sashanet.com
|
||||
serg@build.mysql.com
|
||||
serg@build.mysql2.com
|
||||
serg@mysql.com
|
||||
serg@serg.mylan
|
||||
serg@serg.mysql.com
|
||||
serg@sergbook.mylan
|
||||
|
@ -1,5 +1,16 @@
|
||||
#!/bin/sh
|
||||
|
||||
if [ "$BK_USER" = "Administrator" -o "$BK_USER" = "mysqldev" ]
|
||||
then
|
||||
echo "Error: you cannot commit as 'Administrator' or 'mysqldev' user."
|
||||
echo "as a workaround set BK_USER to your nickname"
|
||||
echo "e.g.: export BK_USER='bar'"
|
||||
echo ""
|
||||
echo "Checkin FAILED!"
|
||||
echo "Set BK_USER and retry."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ "$REAL_EMAIL" = "" ]
|
||||
then
|
||||
echo "Error: you must set REAL_EMAIL in your profile"
|
||||
|
@ -240,40 +240,52 @@ if (defined $opt_changelog)
|
||||
# the last tagged ChangeSet (this relies heavily on our current tagging
|
||||
# practice!)
|
||||
#
|
||||
my $revision= "";
|
||||
$opt_changelog=~ s/^=//; # Sometimes, a leading '=' was not stripped.
|
||||
my $log_base= $opt_changelog;
|
||||
my $changelogfile;
|
||||
if ($target_dir =~ m:^/:) # we need an absolute path, as we change directory
|
||||
{
|
||||
$changelogfile= $target_dir. "/ChangeLog";
|
||||
}
|
||||
else
|
||||
{
|
||||
$changelogfile= cwd() . "/" . $target_dir . "/ChangeLog";
|
||||
}
|
||||
|
||||
if ($opt_changelog eq "last")
|
||||
{
|
||||
if (!$opt_revision)
|
||||
{
|
||||
$revision= `bk changes -t -d':REV:::TAG:' -n $REPO | grep mysql-$major.$minor | head -1 | cut -f1 -d ":"`;
|
||||
$log_base= `bk changes -t -d':REV:::TAG:' -n $REPO | grep mysql-$major.$minor | head -1 | cut -f1 -d ":"`;
|
||||
}
|
||||
else
|
||||
{
|
||||
$revision= `bk changes -r..$opt_revision -t -d':REV:' -n $REPO | head -2 | tail -1`;
|
||||
$log_base= `bk changes -r..$opt_revision -t -d':REV:' -n $REPO | head -2 | tail -1`;
|
||||
}
|
||||
chomp($revision);
|
||||
$opt_changelog= $revision;
|
||||
chomp($log_base);
|
||||
}
|
||||
|
||||
$msg= "Adding $target_dir/ChangeLog";
|
||||
$msg.= " (down to revision $opt_changelog)" if $opt_changelog ne "";
|
||||
$msg= "Adding $changelogfile";
|
||||
$msg.= " (down to revision $log_base)" if $log_base ne "";
|
||||
&logger($msg);
|
||||
$command= "bk changes -v";
|
||||
$command.= " -r" if ($opt_changelog ne "" || $opt_revision);
|
||||
$command.= $opt_changelog if $opt_changelog ne "";
|
||||
$command.= ".." if ($opt_changelog ne "" && !$opt_revision);
|
||||
# Due to a BK error, "bk changes" must be run in $REPO !
|
||||
$command= "cd $REPO ; ";
|
||||
$command.= "bk changes -v";
|
||||
$command.= " -r" if ($log_base ne "" || $opt_revision);
|
||||
$command.= $log_base if $log_base ne "";
|
||||
$command.= ".." if ($log_base ne "" && !$opt_revision);
|
||||
$command.= ".." . $opt_revision if $opt_revision;
|
||||
$command.= " " . $REPO . " > $target_dir/ChangeLog";
|
||||
$command.= " > $changelogfile";
|
||||
&logger($command);
|
||||
# We cannot use run_command here because of output redirection
|
||||
unless ($opt_dry_run)
|
||||
{
|
||||
system($command) == 0 or &abort("Could not create $target_dir/ChangeLog!");
|
||||
system($command) == 0 or &abort("Could not create $changelogfile!");
|
||||
}
|
||||
}
|
||||
|
||||
#
|
||||
# Add the latest manual from the mysqldoc tree
|
||||
# Add the latest manual and tool from the mysqldoc tree
|
||||
#
|
||||
unless ($opt_skip_manual)
|
||||
{
|
||||
@ -283,6 +295,8 @@ unless ($opt_skip_manual)
|
||||
system ("bk cat $opt_docdir/Docs/$file.texi > $target_dir/Docs/$file.texi") == 0
|
||||
or &abort("Could not update $file.texi in $target_dir/Docs/!");
|
||||
}
|
||||
&run_command("cp $opt_docdir/Docs/Support/texi2html $target_dir/Docs/Support",
|
||||
"Could not copy $opt_docdir/Docs/Support/texi2html!");
|
||||
|
||||
&run_command("rm -f $target_dir/Docs/Images/Makefile*",
|
||||
"Could not remove Makefiles in $target_dir/Docs/Images/!");
|
||||
|
@ -10,8 +10,8 @@ use Sys::Hostname;
|
||||
$opt_comment=$opt_distribution=$opt_user=$opt_config_env=$opt_config_extra_env="";
|
||||
$opt_dbd_options=$opt_perl_options=$opt_config_options=$opt_make_options=$opt_suffix="";
|
||||
$opt_tmp=$opt_version_suffix="";
|
||||
$opt_bundled_zlib=$opt_help=$opt_delete=$opt_debug=$opt_stage=$opt_no_test=$opt_no_perl=$opt_one_error=$opt_with_low_memory=$opt_fast_benchmark=$opt_static_client=$opt_static_server=$opt_static_perl=$opt_sur=$opt_with_small_disk=$opt_local_perl=$opt_tcpip=$opt_build_thread=$opt_use_old_distribution=$opt_enable_shared=$opt_no_crash_me=$opt_no_strip=$opt_with_archive=$opt_with_cluster=$opt_with_csv=$opt_with_example=$opt_with_debug=$opt_no_benchmark=$opt_no_mysqltest=$opt_without_embedded=$opt_readline=0;
|
||||
$opt_skip_embedded_test=$opt_skip_ps_test=$opt_innodb=$opt_bdb=$opt_raid=$opt_libwrap=$opt_clearlogs=$opt_with_federated=0;
|
||||
$opt_bundled_zlib=$opt_help=$opt_delete=$opt_debug=$opt_stage=$opt_no_test=$opt_no_perl=$opt_one_error=$opt_with_low_memory=$opt_fast_benchmark=$opt_static_client=$opt_static_server=$opt_static_perl=$opt_sur=$opt_with_small_disk=$opt_local_perl=$opt_tcpip=$opt_build_thread=$opt_use_old_distribution=$opt_enable_shared=$opt_no_crash_me=$opt_no_strip=$opt_with_archive=$opt_with_cluster=$opt_with_csv=$opt_with_example=$opt_with_debug=$opt_no_benchmark=$opt_no_mysqltest=$opt_without_embedded=$opt_readline=$opt_with_blackhole=0;
|
||||
$opt_skip_embedded_test=$opt_skip_ps_test=$opt_innodb=$opt_bdb=$opt_raid=$opt_libwrap=$opt_clearlogs=$opt_with_federated=$opt_with_big_tables=0;
|
||||
$global_step="";
|
||||
|
||||
GetOptions(
|
||||
@ -58,11 +58,13 @@ GetOptions(
|
||||
"user=s",
|
||||
"version-suffix=s",
|
||||
"with-archive",
|
||||
"with-big-tables",
|
||||
"with-blackhole",
|
||||
"with-cluster",
|
||||
"with-csv",
|
||||
"with-debug",
|
||||
"with-example",
|
||||
"with-federated",
|
||||
"with-federated",
|
||||
"with-low-memory",
|
||||
"with-other-libc=s",
|
||||
"with-small-disk",
|
||||
@ -275,6 +277,7 @@ if ($opt_stage <= 1)
|
||||
$opt_config_options.= " --without-ndb-debug" if ($opt_with_debug && $opt_with_cluster);
|
||||
$opt_config_options.= " --with-libwrap" if ($opt_libwrap);
|
||||
$opt_config_options.= " --with-low-memory" if ($opt_with_low_memory);
|
||||
$opt_config_options.= " --with-big-tables" if ($opt_with_big_tables);
|
||||
$opt_config_options.= " --with-mysqld-ldflags=-all-static" if ($opt_static_server);
|
||||
$opt_config_options.= " --with-raid" if ($opt_raid);
|
||||
if ($opt_readline)
|
||||
@ -288,6 +291,7 @@ if ($opt_stage <= 1)
|
||||
$opt_config_options.= " --with-embedded-server" unless ($opt_without_embedded);
|
||||
$opt_skip_embedded_test= 1 if ($opt_without_embedded);
|
||||
$opt_config_options.= " --with-archive-storage-engine" if ($opt_with_archive);
|
||||
$opt_config_options.= " --with-blackhole-storage-engine" if ($opt_with_blackhole);
|
||||
$opt_config_options.= " --with-ndbcluster" if ($opt_with_cluster);
|
||||
$opt_config_options.= " --with-csv-storage-engine" if ($opt_with_csv);
|
||||
$opt_config_options.= " --with-example-storage-engine" if ($opt_with_example);
|
||||
|
@ -595,3 +595,5 @@ character-set=latin1
|
||||
"Invalid ON UPDATE clause for '%-.64s' field",
|
||||
#define ER_UNSUPPORTED_PS 1295
|
||||
"This command is not supported in the prepared statement protocol yet",
|
||||
#define ER_CANT_CREATE_USER_WITH_GRANT 1296
|
||||
"You are not allowed to create a user with GRANT"
|
||||
|
@ -47,7 +47,7 @@ BSC32=bscmake.exe
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=xilink6.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wsock32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"LIBCMTD" /out:"Release/mysql-server.exe"
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wsock32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"LIBCMTD" /out:"..\test_libmysqld.exe"
|
||||
# Begin Target
|
||||
|
||||
# Name "test_libmysqld - Win32 Release"
|
||||
@ -71,9 +71,5 @@ SOURCE=..\..\client\readline.cpp
|
||||
SOURCE=..\..\client\sql_string.cpp
|
||||
# End Source File
|
||||
# End Group
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\..\lib_release\libmysqld.lib
|
||||
# End Source File
|
||||
# End Target
|
||||
# End Project
|
||||
|
@ -3,21 +3,6 @@ Microsoft Developer Studio Workspace File, Format Version 6.00
|
||||
|
||||
###############################################################################
|
||||
|
||||
Project: "MySqlManager"=".\mysqlmanager\MySqlManager.dsp" - Package Owner=<4>
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<4>
|
||||
{{{
|
||||
Begin Project Dependency
|
||||
Project_Dep_Name mysqlclient
|
||||
End Project Dependency
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
Project: "bdb"=".\bdb\bdb.dsp" - Package Owner=<4>
|
||||
|
||||
Package=<5>
|
||||
@ -420,9 +405,6 @@ Package=<4>
|
||||
Project_Dep_Name mysqlimport
|
||||
End Project Dependency
|
||||
Begin Project Dependency
|
||||
Project_Dep_Name MySqlManager
|
||||
End Project Dependency
|
||||
Begin Project Dependency
|
||||
Project_Dep_Name mysqlshow
|
||||
End Project Dependency
|
||||
Begin Project Dependency
|
||||
|
@ -508,9 +508,6 @@ Package=<4>
|
||||
Project_Dep_Name mysqlimport
|
||||
End Project Dependency
|
||||
Begin Project Dependency
|
||||
Project_Dep_Name MySqlManager
|
||||
End Project Dependency
|
||||
Begin Project Dependency
|
||||
Project_Dep_Name mysqlshow
|
||||
End Project Dependency
|
||||
Begin Project Dependency
|
||||
|
@ -1,276 +0,0 @@
|
||||
# Microsoft Developer Studio Project File - Name="MySqlManager" - Package Owner=<4>
|
||||
# Microsoft Developer Studio Generated Build File, Format Version 6.00
|
||||
# ** DO NOT EDIT **
|
||||
|
||||
# TARGTYPE "Win32 (x86) Application" 0x0101
|
||||
|
||||
CFG=MYSQLMANAGER - WinIA64 DEBUG
|
||||
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
|
||||
!MESSAGE use the Export Makefile command and run
|
||||
!MESSAGE
|
||||
!MESSAGE NMAKE /f "MySqlManager.mak".
|
||||
!MESSAGE
|
||||
!MESSAGE You can specify a configuration when running NMAKE
|
||||
!MESSAGE by defining the macro CFG on the command line. For example:
|
||||
!MESSAGE
|
||||
!MESSAGE NMAKE /f "MySqlManager.mak" CFG="MYSQLMANAGER - WinIA64 DEBUG"
|
||||
!MESSAGE
|
||||
!MESSAGE Possible choices for configuration are:
|
||||
!MESSAGE
|
||||
!MESSAGE "MySqlManager - WinIA64 Release" (based on "Win32 (x86) Application")
|
||||
!MESSAGE "MySqlManager - WinIA64 Debug" (based on "Win32 (x86) Application")
|
||||
!MESSAGE
|
||||
|
||||
# Begin Project
|
||||
# PROP AllowPerConfigDependencies 0
|
||||
# PROP Scc_ProjName ""
|
||||
# PROP Scc_LocalPath ""
|
||||
CPP=cl.exe
|
||||
MTL=midl.exe
|
||||
RSC=rc.exe
|
||||
|
||||
!IF "$(CFG)" == "MySqlManager - WinIA64 Release"
|
||||
|
||||
# PROP BASE Use_MFC 6
|
||||
# PROP BASE Use_Debug_Libraries 0
|
||||
# PROP BASE Output_Dir "Release"
|
||||
# PROP BASE Intermediate_Dir "Release"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 6
|
||||
# PROP Use_Debug_Libraries 0
|
||||
# PROP Output_Dir "release"
|
||||
# PROP Intermediate_Dir "release"
|
||||
# PROP Ignore_Export_Lib 0
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /MD /W3 /GX /O2 /D "WIN64" /D "NDEBUG" /D "_WINDOWS" /D "_AFXDLL" /Yu"stdafx.h" /FD /c
|
||||
# ADD CPP /nologo /MT /W3 /Zi /O2 /I "../include" /D "NDEBUG" /D "DBUG_OFF" /D "_WINDOWS" /D "_IA64_" /D "WIN64" /D "WIN32" /D "_AFX_NO_DAO_SUPPORT" /FD /G2 /EHsc /Wp64 /Zm600 /c
|
||||
# SUBTRACT CPP /WX /Fr /YX /Yc /Yu
|
||||
# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win64
|
||||
# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win64
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG" /d "_AFXDLL"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG" /d "_AFXDLL"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 /nologo /subsystem:windows /machine:IA64
|
||||
# ADD LINK32 /nologo /subsystem:windows /out:"../client_release/MySqlManager.exe" /machine:IA64
|
||||
# SUBTRACT LINK32 /nodefaultlib
|
||||
|
||||
!ELSEIF "$(CFG)" == "MySqlManager - WinIA64 Debug"
|
||||
|
||||
# PROP BASE Use_MFC 6
|
||||
# PROP BASE Use_Debug_Libraries 1
|
||||
# PROP BASE Output_Dir "Debug"
|
||||
# PROP BASE Intermediate_Dir "Debug"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 6
|
||||
# PROP Use_Debug_Libraries 1
|
||||
# PROP Output_Dir "debug"
|
||||
# PROP Intermediate_Dir "debug"
|
||||
# PROP Ignore_Export_Lib 0
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /MDd /W3 /Gm /GX /Zi /Od /D "WIN64" /D "_DEBUG" /D "_WINDOWS" /D "_AFXDLL" /Yu"stdafx.h" /FD /c
|
||||
# ADD CPP /nologo /MTd /W3 /GR /Zi /Od /I "../include" /D "_DEBUG" /D "_WINDOWS" /D "_IA64_" /D "WIN64" /D "WIN32" /D "_AFX_NO_DAO_SUPPORT" /FD /G2 /EHsc /Wp64 /Zm600 /c
|
||||
# SUBTRACT CPP /Fr /YX /Yc /Yu
|
||||
# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win64
|
||||
# ADD MTL /nologo /D "_DEBUG" /o "NUL" /win64
|
||||
# SUBTRACT MTL /mktyplib203
|
||||
# ADD BASE RSC /l 0x409 /d "_DEBUG" /d "_AFXDLL"
|
||||
# ADD RSC /l 0x409 /d "_DEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 /nologo /subsystem:windows /debug /machine:IA64
|
||||
# ADD LINK32 wsock32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib uuid.lib /nologo /subsystem:windows /incremental:no /debug /out:"../client_debug/MySqlManager.exe" /libpath:"..\lib_debug\\" /machine:IA64
|
||||
|
||||
!ENDIF
|
||||
|
||||
# Begin Target
|
||||
|
||||
# Name "MySqlManager - WinIA64 Release"
|
||||
# Name "MySqlManager - WinIA64 Debug"
|
||||
# Begin Group "Source Files"
|
||||
|
||||
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\ChildFrm.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE="..\strings\ctype-extra.c"
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE="..\strings\ctype-latin1.c"
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE="..\strings\ctype-mb.c"
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\strings\is_prefix.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\MainFrm.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\mysys\my_sleep.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\strings\my_vsnprintf.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\MySqlManager.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\MySqlManager.rc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\MySqlManagerDoc.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\MySqlManagerView.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\RegisterServer.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\StdAfx.cpp
|
||||
# ADD CPP /Yc"stdafx.h"
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\ToolSql.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\ToolSqlQuery.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\ToolSqlResults.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\ToolSqlStatus.cpp
|
||||
# End Source File
|
||||
# End Group
|
||||
# Begin Group "Header Files"
|
||||
|
||||
# PROP Default_Filter "h;hpp;hxx;hm;inl"
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\ChildFrm.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\MainFrm.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\MySqlManager.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\MySqlManagerDoc.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\MySqlManagerView.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\RegisterServer.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Resource.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\StdAfx.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\ToolSqlQuery.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\ToolSqlResults.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\ToolSqlStatus.h
|
||||
# End Source File
|
||||
# End Group
|
||||
# Begin Group "Resource Files"
|
||||
|
||||
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;cnt;rtf;gif;jpg;jpeg;jpe"
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\res\bitmap1.bmp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\res\bitmap3.bmp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\res\bmp00001.bmp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\res\bmp00002.bmp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\res\database.bmp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\res\fontd.bmp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\res\fontu.bmp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\res\MySqlManager.ico
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\res\MySqlManager.rc2
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\res\MySqlManagerDoc.ico
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\res\query_ex.bmp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\res\Toolbar.bmp
|
||||
# End Source File
|
||||
# End Group
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\ReadMe.txt
|
||||
# End Source File
|
||||
# End Target
|
||||
# End Project
|
@ -536,6 +536,10 @@ SOURCE=.\my_wincond.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\my_windac.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\my_winsem.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
@ -489,7 +489,7 @@ __bam_new_file(dbp, txn, fhp, name)
|
||||
goto err;
|
||||
} else {
|
||||
#ifdef DIAGNOSTIC
|
||||
memset(buf, dbp->pgsize, 0);
|
||||
memset(buf, 0, dbp->pgsize);
|
||||
#endif
|
||||
root = (PAGE *)buf;
|
||||
}
|
||||
|
@ -409,7 +409,7 @@ __ham_new_file(dbp, txn, fhp, name)
|
||||
goto err;
|
||||
} else {
|
||||
#ifdef DIAGNOSTIC
|
||||
memset(buf, dbp->pgsize, 0);
|
||||
memset(buf, 0, dbp->pgsize);
|
||||
#endif
|
||||
page = (PAGE *)buf;
|
||||
}
|
||||
|
@ -3090,9 +3090,14 @@ void tee_fprintf(FILE *file, const char *fmt, ...)
|
||||
#ifdef OS2
|
||||
fflush( file);
|
||||
#endif
|
||||
if (opt_outfile)
|
||||
(void) vfprintf(OUTFILE, fmt, args);
|
||||
va_end(args);
|
||||
|
||||
if (opt_outfile)
|
||||
{
|
||||
va_start(args, fmt);
|
||||
(void) vfprintf(OUTFILE, fmt, args);
|
||||
va_end(args);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
@ -33,9 +33,9 @@
|
||||
#undef MYSQL_SERVER
|
||||
#include "client_priv.h"
|
||||
#include <my_time.h>
|
||||
#include "log_event.h"
|
||||
/* That one is necessary for defines of OPTION_NO_FOREIGN_KEY_CHECKS etc */
|
||||
#include "mysql_priv.h"
|
||||
#include "log_event.h"
|
||||
|
||||
#define BIN_LOG_HEADER_SIZE 4
|
||||
#define PROBE_HEADER_LEN (EVENT_LEN_OFFSET+4)
|
||||
|
@ -1093,7 +1093,7 @@ static void print_xml_row(FILE *xml_file, const char *row_name,
|
||||
number of fields in table, 0 if error
|
||||
*/
|
||||
|
||||
static uint getTableStructure(char *table, char* db)
|
||||
static uint getTableStructure(char *table, char *db)
|
||||
{
|
||||
MYSQL_RES *tableRes;
|
||||
MYSQL_ROW row;
|
||||
@ -1396,10 +1396,9 @@ static uint getTableStructure(char *table, char* db)
|
||||
/* Get MySQL specific create options */
|
||||
if (create_options)
|
||||
{
|
||||
char show_name_buff[FN_REFLEN];
|
||||
char show_name_buff[NAME_LEN*2+2+24];
|
||||
|
||||
/* Check memory for quote_for_like() */
|
||||
DBUG_ASSERT(2*sizeof(table) < sizeof(show_name_buff));
|
||||
my_snprintf(buff, sizeof(buff), "show table status like %s",
|
||||
quote_for_like(table, show_name_buff));
|
||||
|
||||
@ -2219,13 +2218,14 @@ static my_bool dump_all_views_in_db(char *database)
|
||||
different case (e.g. T1 vs t1)
|
||||
|
||||
RETURN
|
||||
void
|
||||
int - 0 if a tablename was retrieved. 1 if not
|
||||
*/
|
||||
|
||||
static void get_actual_table_name(const char *old_table_name,
|
||||
static int get_actual_table_name(const char *old_table_name,
|
||||
char *new_table_name,
|
||||
int buf_size)
|
||||
{
|
||||
int retval;
|
||||
MYSQL_RES *tableRes;
|
||||
MYSQL_ROW row;
|
||||
char query[50 + 2*NAME_LEN];
|
||||
@ -2243,9 +2243,19 @@ static void get_actual_table_name(const char *old_table_name,
|
||||
}
|
||||
|
||||
tableRes= mysql_store_result( sock );
|
||||
row= mysql_fetch_row( tableRes );
|
||||
strmake(new_table_name, row[0], buf_size-1);
|
||||
mysql_free_result(tableRes);
|
||||
retval = 1;
|
||||
if (tableRes != NULL)
|
||||
{
|
||||
my_ulonglong numRows = mysql_num_rows(tableRes);
|
||||
if (numRows > 0)
|
||||
{
|
||||
row= mysql_fetch_row( tableRes );
|
||||
strmake(new_table_name, row[0], buf_size-1);
|
||||
retval = 0;
|
||||
}
|
||||
mysql_free_result(tableRes);
|
||||
}
|
||||
return retval;
|
||||
}
|
||||
|
||||
|
||||
@ -2285,11 +2295,13 @@ static int dump_selected_tables(char *db, char **table_names, int tables)
|
||||
char new_table_name[NAME_LEN];
|
||||
|
||||
/* the table name passed on commandline may be wrong case */
|
||||
get_actual_table_name( table_names[i], new_table_name, sizeof(new_table_name) );
|
||||
if (!get_actual_table_name( table_names[i], new_table_name, sizeof(new_table_name) ))
|
||||
{
|
||||
|
||||
numrows = getTableStructure(new_table_name, db);
|
||||
numrows = getTableStructure(new_table_name, db);
|
||||
|
||||
dumpTable(numrows, new_table_name);
|
||||
dumpTable(numrows, new_table_name);
|
||||
}
|
||||
my_free(order_by, MYF(MY_ALLOW_ZERO_PTR));
|
||||
order_by= 0;
|
||||
}
|
||||
|
@ -28,7 +28,8 @@
|
||||
#include <sslopt-vars.h>
|
||||
|
||||
static my_string host=0,opt_password=0,user=0;
|
||||
static my_bool opt_show_keys=0,opt_compress=0,opt_status=0, tty_password=0;
|
||||
static my_bool opt_show_keys= 0, opt_compress= 0, opt_status= 0,
|
||||
tty_password= 0, opt_table_type= 0;
|
||||
static uint opt_verbose=0;
|
||||
static char *default_charset= (char*) MYSQL_DEFAULT_CHARSET_NAME;
|
||||
|
||||
@ -193,6 +194,9 @@ static struct my_option my_long_options[] =
|
||||
"Base name of shared memory.", (gptr*) &shared_memory_base_name, (gptr*) &shared_memory_base_name,
|
||||
0, GET_STR_ALLOC, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
|
||||
#endif
|
||||
{"show-table-type", 't', "Show table type column.",
|
||||
(gptr*) &opt_table_type, (gptr*) &opt_table_type, 0, GET_BOOL,
|
||||
NO_ARG, 0, 0, 0, 0, 0, 0},
|
||||
{"socket", 'S', "Socket file to use for connection.",
|
||||
(gptr*) &opt_mysql_unix_port, (gptr*) &opt_mysql_unix_port, 0, GET_STR,
|
||||
REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
|
||||
@ -418,7 +422,7 @@ list_tables(MYSQL *mysql,const char *db,const char *table)
|
||||
{
|
||||
const char *header;
|
||||
uint head_length, counter = 0;
|
||||
char query[255], rows[64], fields[16];
|
||||
char query[255], rows[NAME_LEN], fields[16];
|
||||
MYSQL_FIELD *field;
|
||||
MYSQL_RES *result;
|
||||
MYSQL_ROW row, rrow;
|
||||
@ -429,7 +433,20 @@ list_tables(MYSQL *mysql,const char *db,const char *table)
|
||||
mysql_error(mysql));
|
||||
return 1;
|
||||
}
|
||||
if (!(result=mysql_list_tables(mysql,table)))
|
||||
if (table)
|
||||
{
|
||||
/*
|
||||
We just hijack the 'rows' variable for a bit to store the escaped
|
||||
table name
|
||||
*/
|
||||
mysql_escape_string(rows, table, sizeof(rows));
|
||||
my_snprintf(query, sizeof(query), "show%s tables like '%s'",
|
||||
opt_table_type ? " full" : "", rows);
|
||||
}
|
||||
else
|
||||
my_snprintf(query, sizeof(query), "show%s tables",
|
||||
opt_table_type ? " full" : "");
|
||||
if (mysql_query(mysql, query) || !(result= mysql_store_result(mysql)))
|
||||
{
|
||||
fprintf(stderr,"%s: Cannot list tables in %s: %s\n",my_progname,db,
|
||||
mysql_error(mysql));
|
||||
@ -446,12 +463,27 @@ list_tables(MYSQL *mysql,const char *db,const char *table)
|
||||
if (head_length < field->max_length)
|
||||
head_length=field->max_length;
|
||||
|
||||
if (!opt_verbose)
|
||||
print_header(header,head_length,NullS);
|
||||
else if (opt_verbose == 1)
|
||||
print_header(header,head_length,"Columns",8,NullS);
|
||||
if (opt_table_type)
|
||||
{
|
||||
if (!opt_verbose)
|
||||
print_header(header,head_length,"table_type",10,NullS);
|
||||
else if (opt_verbose == 1)
|
||||
print_header(header,head_length,"table_type",10,"Columns",8,NullS);
|
||||
else
|
||||
{
|
||||
print_header(header,head_length,"table_type",10,"Columns",8,
|
||||
"Total Rows",10,NullS);
|
||||
}
|
||||
}
|
||||
else
|
||||
print_header(header,head_length,"Columns",8, "Total Rows",10,NullS);
|
||||
{
|
||||
if (!opt_verbose)
|
||||
print_header(header,head_length,NullS);
|
||||
else if (opt_verbose == 1)
|
||||
print_header(header,head_length,"Columns",8,NullS);
|
||||
else
|
||||
print_header(header,head_length,"Columns",8, "Total Rows",10,NullS);
|
||||
}
|
||||
|
||||
while ((row = mysql_fetch_row(result)))
|
||||
{
|
||||
@ -500,17 +532,31 @@ list_tables(MYSQL *mysql,const char *db,const char *table)
|
||||
strmov(rows,"N/A");
|
||||
}
|
||||
}
|
||||
if (!opt_verbose)
|
||||
print_row(row[0],head_length,NullS);
|
||||
else if (opt_verbose == 1)
|
||||
print_row(row[0],head_length, fields,8, NullS);
|
||||
else
|
||||
print_row(row[0],head_length, fields,8, rows,10, NullS);
|
||||
if (opt_table_type)
|
||||
{
|
||||
if (!opt_verbose)
|
||||
print_row(row[0],head_length,row[1],10,NullS);
|
||||
else if (opt_verbose == 1)
|
||||
print_row(row[0],head_length,row[1],10,fields,8,NullS);
|
||||
else
|
||||
print_row(row[0],head_length,row[1],10,fields,8,rows,10,NullS);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!opt_verbose)
|
||||
print_row(row[0],head_length,NullS);
|
||||
else if (opt_verbose == 1)
|
||||
print_row(row[0],head_length, fields,8, NullS);
|
||||
else
|
||||
print_row(row[0],head_length, fields,8, rows,10, NullS);
|
||||
}
|
||||
}
|
||||
|
||||
print_trailer(head_length,
|
||||
(opt_verbose > 0 ? 8 : 0),
|
||||
(opt_verbose > 1 ? 10 :0),
|
||||
(opt_table_type ? 10 : opt_verbose > 0 ? 8 : 0),
|
||||
(opt_table_type ? (opt_verbose > 0 ? 8 : 0)
|
||||
: (opt_verbose > 1 ? 10 :0)),
|
||||
!opt_table_type ? 0 : opt_verbose > 1 ? 10 :0,
|
||||
0);
|
||||
|
||||
if (counter && opt_verbose)
|
||||
|
@ -2746,8 +2746,13 @@ static int run_query_normal(MYSQL* mysql, struct st_query* q, int flags)
|
||||
append_result(ds, res);
|
||||
}
|
||||
|
||||
/* Add all warnings to the result */
|
||||
if (!disable_warnings && mysql_warning_count(mysql))
|
||||
/*
|
||||
Add all warnings to the result. We can't do this if we are in
|
||||
the middle of processing results from multi-statement, because
|
||||
this will break protocol.
|
||||
*/
|
||||
if (!disable_warnings && !mysql_more_results(mysql) &&
|
||||
mysql_warning_count(mysql))
|
||||
{
|
||||
MYSQL_RES *warn_res=0;
|
||||
uint count= mysql_warning_count(mysql);
|
||||
@ -3306,7 +3311,7 @@ static void run_query_display_metadata(MYSQL_FIELD *field, uint num_fields,
|
||||
{
|
||||
MYSQL_FIELD *field_end;
|
||||
dynstr_append(ds,"Catalog\tDatabase\tTable\tTable_alias\tColumn\t"
|
||||
"Column_alias\tName\tType\tLength\tMax length\tIs_null\t"
|
||||
"Column_alias\tType\tLength\tMax length\tIs_null\t"
|
||||
"Flags\tDecimals\tCharsetnr\n");
|
||||
|
||||
for (field_end= field+num_fields ;
|
||||
@ -3363,6 +3368,13 @@ static void run_query_stmt_handle_warnings(MYSQL *mysql, DYNAMIC_STRING *ds)
|
||||
|
||||
if (!disable_warnings && (count= mysql_warning_count(mysql)))
|
||||
{
|
||||
/*
|
||||
If one day we will support execution of multi-statements
|
||||
through PS API we should not issue SHOW WARNINGS until
|
||||
we have not read all results...
|
||||
*/
|
||||
DBUG_ASSERT(!mysql_more_results(mysql));
|
||||
|
||||
if (mysql_real_query(mysql, "SHOW WARNINGS", 13) == 0)
|
||||
{
|
||||
MYSQL_RES *warn_res= mysql_store_result(mysql);
|
||||
|
29
config/ac-macros/ha_blackhole.m4
Normal file
29
config/ac-macros/ha_blackhole.m4
Normal file
@ -0,0 +1,29 @@
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl Macro: MYSQL_CHECK_BLACKHOLEDB
|
||||
dnl Sets HAVE_BLACKHOLE_DB if --with-blackhole-storage-engine is used
|
||||
dnl ---------------------------------------------------------------------------
|
||||
AC_DEFUN([MYSQL_CHECK_BLACKHOLEDB], [
|
||||
AC_ARG_WITH([blackhole-storage-engine],
|
||||
[
|
||||
--with-blackhole-storage-engine
|
||||
Enable the Blackhole Storage Engine],
|
||||
[blackholedb="$withval"],
|
||||
[blackholedb=no])
|
||||
AC_MSG_CHECKING([for blackhole storage engine])
|
||||
|
||||
case "$blackholedb" in
|
||||
yes )
|
||||
AC_DEFINE([HAVE_BLACKHOLE_DB], [1], [Builds Blackhole Storage Engine])
|
||||
AC_MSG_RESULT([yes])
|
||||
[blackholedb=yes]
|
||||
;;
|
||||
* )
|
||||
AC_MSG_RESULT([no])
|
||||
[blackholedb=no]
|
||||
;;
|
||||
esac
|
||||
|
||||
])
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl END OF MYSQL_CHECK_BLACKHOLE SECTION
|
||||
dnl ---------------------------------------------------------------------------
|
@ -636,3 +636,31 @@ fi
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
||||
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl Macro: MYSQL_CHECK_BIG_TABLES
|
||||
dnl Sets BIG_TABLES if --with-big-tables is used
|
||||
dnl ---------------------------------------------------------------------------
|
||||
AC_DEFUN([MYSQL_CHECK_BIG_TABLES], [
|
||||
AC_ARG_WITH([big-tables],
|
||||
[
|
||||
--with-big-tables Support tables with more than 4 G rows even on 32 bit platforms],
|
||||
[bigtables="$withval"],
|
||||
[bigtables=no])
|
||||
AC_MSG_CHECKING([for big tables support])
|
||||
|
||||
case "$bigtables" in
|
||||
yes )
|
||||
AC_DEFINE([BIG_TABLES], [1], [Support big tables])
|
||||
AC_MSG_RESULT([yes])
|
||||
;;
|
||||
* )
|
||||
AC_MSG_RESULT([no])
|
||||
;;
|
||||
esac
|
||||
|
||||
])
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl END OF MYSQL_CHECK_BIG_TABLES SECTION
|
||||
dnl ---------------------------------------------------------------------------
|
||||
|
||||
|
@ -19,7 +19,6 @@ SHARED_LIB_VERSION=14:0:0
|
||||
NDB_VERSION_MAJOR=5
|
||||
NDB_VERSION_MINOR=1
|
||||
NDB_VERSION_BUILD=0
|
||||
NDB_VERSION_STATUS="alpha"
|
||||
|
||||
# Set all version vars based on $VERSION. How do we do this more elegant ?
|
||||
# Remember that regexps needs to quote [ and ] since this is run through m4
|
||||
@ -38,6 +37,7 @@ sinclude(config/ac-macros/character_sets.m4)
|
||||
sinclude(config/ac-macros/compiler_flag.m4)
|
||||
sinclude(config/ac-macros/ha_archive.m4)
|
||||
sinclude(config/ac-macros/ha_berkeley.m4)
|
||||
sinclude(config/ac-macros/ha_blackhole.m4)
|
||||
sinclude(config/ac-macros/ha_example.m4)
|
||||
sinclude(config/ac-macros/ha_federated.m4)
|
||||
sinclude(config/ac-macros/ha_innodb.m4)
|
||||
@ -353,7 +353,8 @@ then
|
||||
then
|
||||
if $CXX -v 2>&1 | grep 'version 3' > /dev/null 2>&1
|
||||
then
|
||||
CXXFLAGS="$CXXFLAGS -DUSE_MYSYS_NEW -DDEFINE_CXA_PURE_VIRTUAL"
|
||||
# Statically link the language support function's found in libsupc++.a
|
||||
LIBS="$LIBS -lsupc++"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
@ -2373,11 +2374,13 @@ AC_SUBST(readline_basedir)
|
||||
AC_SUBST(readline_link)
|
||||
AC_SUBST(readline_h_ln_cmd)
|
||||
|
||||
MYSQL_CHECK_BIG_TABLES
|
||||
MYSQL_CHECK_BDB
|
||||
MYSQL_CHECK_INNODB
|
||||
MYSQL_CHECK_EXAMPLEDB
|
||||
MYSQL_CHECK_ARCHIVEDB
|
||||
MYSQL_CHECK_CSVDB
|
||||
MYSQL_CHECK_BLACKHOLEDB
|
||||
MYSQL_CHECK_NDBCLUSTER
|
||||
MYSQL_CHECK_FEDERATED
|
||||
|
||||
|
@ -80,6 +80,9 @@ extern "C" {
|
||||
/* On NetWare, stack grows towards lower address*/
|
||||
#define STACK_DIRECTION -1
|
||||
|
||||
/* On NetWare, to fix the problem with the deletion of open files */
|
||||
#define CANT_DELETE_OPEN_FILES 1
|
||||
|
||||
/* default directory information */
|
||||
#define DEFAULT_MYSQL_HOME "sys:/mysql"
|
||||
#define PACKAGE "mysql"
|
||||
|
@ -20,47 +20,50 @@
|
||||
typedef enum
|
||||
{TRUNCATE=0, HALF_EVEN, HALF_UP, CEILING, FLOOR}
|
||||
decimal_round_mode;
|
||||
typedef int32 decimal_digit;
|
||||
typedef int32 decimal_digit_t;
|
||||
|
||||
typedef struct st_decimal {
|
||||
typedef struct st_decimal_t {
|
||||
int intg, frac, len;
|
||||
my_bool sign;
|
||||
decimal_digit *buf;
|
||||
} decimal;
|
||||
decimal_digit_t *buf;
|
||||
} decimal_t;
|
||||
|
||||
int internal_str2dec(const char *from, decimal *to, char **end, my_bool fixed);
|
||||
int decimal2string(decimal *from, char *to, int *to_len,
|
||||
int internal_str2dec(const char *from, decimal_t *to, char **end,
|
||||
my_bool fixed);
|
||||
int decimal2string(decimal_t *from, char *to, int *to_len,
|
||||
int fixed_precision, int fixed_decimals,
|
||||
char filler);
|
||||
int decimal2ulonglong(decimal *from, ulonglong *to);
|
||||
int ulonglong2decimal(ulonglong from, decimal *to);
|
||||
int decimal2longlong(decimal *from, longlong *to);
|
||||
int longlong2decimal(longlong from, decimal *to);
|
||||
int decimal2double(decimal *from, double *to);
|
||||
int double2decimal(double from, decimal *to);
|
||||
void decimal_optimize_fraction(decimal *from);
|
||||
int decimal2bin(decimal *from, char *to, int precision, int scale);
|
||||
int bin2decimal(char *from, decimal *to, int precision, int scale);
|
||||
int decimal2ulonglong(decimal_t *from, ulonglong *to);
|
||||
int ulonglong2decimal(ulonglong from, decimal_t *to);
|
||||
int decimal2longlong(decimal_t *from, longlong *to);
|
||||
int longlong2decimal(longlong from, decimal_t *to);
|
||||
int decimal2double(decimal_t *from, double *to);
|
||||
int double2decimal(double from, decimal_t *to);
|
||||
void decimal_optimize_fraction(decimal_t *from);
|
||||
int decimal2bin(decimal_t *from, char *to, int precision, int scale);
|
||||
int bin2decimal(char *from, decimal_t *to, int precision, int scale);
|
||||
|
||||
int decimal_size(int precision, int scale);
|
||||
int decimal_bin_size(int precision, int scale);
|
||||
int decimal_result_size(decimal *from1, decimal *from2, char op, int param);
|
||||
int decimal_result_size(decimal_t *from1, decimal_t *from2, char op,
|
||||
int param);
|
||||
|
||||
int decimal_add(decimal *from1, decimal *from2, decimal *to);
|
||||
int decimal_sub(decimal *from1, decimal *from2, decimal *to);
|
||||
int decimal_cmp(decimal *from1, decimal *from2);
|
||||
int decimal_mul(decimal *from1, decimal *from2, decimal *to);
|
||||
int decimal_div(decimal *from1, decimal *from2, decimal *to, int scale_incr);
|
||||
int decimal_mod(decimal *from1, decimal *from2, decimal *to);
|
||||
int decimal_round(decimal *from, decimal *to, int new_scale,
|
||||
int decimal_add(decimal_t *from1, decimal_t *from2, decimal_t *to);
|
||||
int decimal_sub(decimal_t *from1, decimal_t *from2, decimal_t *to);
|
||||
int decimal_cmp(decimal_t *from1, decimal_t *from2);
|
||||
int decimal_mul(decimal_t *from1, decimal_t *from2, decimal_t *to);
|
||||
int decimal_div(decimal_t *from1, decimal_t *from2, decimal_t *to,
|
||||
int scale_incr);
|
||||
int decimal_mod(decimal_t *from1, decimal_t *from2, decimal_t *to);
|
||||
int decimal_round(decimal_t *from, decimal_t *to, int new_scale,
|
||||
decimal_round_mode mode);
|
||||
int decimal_is_zero(decimal *from);
|
||||
void max_decimal(int precision, int frac, decimal *to);
|
||||
int decimal_is_zero(decimal_t *from);
|
||||
void max_decimal(int precision, int frac, decimal_t *to);
|
||||
|
||||
#define string2decimal(A,B,C) internal_str2dec((A), (B), (C), 0)
|
||||
#define string2decimal_fixed(A,B,C) internal_str2dec((A), (B), (C), 1)
|
||||
|
||||
/* set a decimal to zero */
|
||||
/* set a decimal_t to zero */
|
||||
|
||||
#define decimal_make_zero(dec) do { \
|
||||
(dec)->buf[0]=0; \
|
||||
|
@ -121,19 +121,36 @@
|
||||
#endif
|
||||
|
||||
/*
|
||||
Solaris include file <sys/feature_tests.h> refers to X/Open document
|
||||
Solaris 9 include file <sys/feature_tests.h> refers to X/Open document
|
||||
|
||||
System Interfaces and Headers, Issue 5
|
||||
|
||||
saying we should define _XOPEN_SOURCE=500 to get POSIX.1c prototypes
|
||||
saying we should define _XOPEN_SOURCE=500 to get POSIX.1c prototypes,
|
||||
but apparently other systems (namely FreeBSD) don't agree.
|
||||
Furthermore X/Open has since 2004 "System Interfaces, Issue 6"
|
||||
that dictates _XOPEN_SOURCE=600, but Solaris checks for 500.
|
||||
So, let's define 500 for solaris only.
|
||||
|
||||
On a newer Solaris 10, the above file recognizes also _XOPEN_SOURCE=600.
|
||||
Furthermore, it tests that if a program requires older standard
|
||||
(_XOPEN_SOURCE<600 or _POSIX_C_SOURCE<200112L) it cannot be
|
||||
run on a new compiler (that defines _STDC_C99) and issues an #error.
|
||||
It's also an #error if a program requires new standard (_XOPEN_SOURCE=600
|
||||
or _POSIX_C_SOURCE=200112L) and a compiler does not define _STDC_C99.
|
||||
|
||||
To add more to this mess, Sun Studio C compiler defines _STDC_C99 while
|
||||
C++ compiler does not!
|
||||
|
||||
So, in a desperate attempt to get correct prototypes for both
|
||||
C and C++ code, we define either _XOPEN_SOURCE=600 or _XOPEN_SOURCE=500
|
||||
depending on the compiler's announced C standard support.
|
||||
|
||||
Cleaner solutions are welcome.
|
||||
*/
|
||||
#ifdef __sun
|
||||
#if __STDC_VERSION__ - 0 >= 199901L
|
||||
#define _XOPEN_SOURCE 600
|
||||
#else
|
||||
#define _XOPEN_SOURCE 500
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if defined(THREAD) && !defined(__WIN__) && !defined(OS2)
|
||||
#ifndef _POSIX_PTHREAD_SEMANTICS
|
||||
|
@ -845,7 +845,8 @@ extern char *get_charsets_dir(char *buf);
|
||||
extern my_bool my_charset_same(CHARSET_INFO *cs1, CHARSET_INFO *cs2);
|
||||
extern my_bool init_compiled_charsets(myf flags);
|
||||
extern void add_compiled_collation(CHARSET_INFO *cs);
|
||||
extern ulong escape_string_for_mysql(CHARSET_INFO *charset_info, char *to,
|
||||
extern ulong escape_string_for_mysql(CHARSET_INFO *charset_info,
|
||||
char *to, ulong to_length,
|
||||
const char *from, ulong length);
|
||||
|
||||
extern void thd_increment_bytes_sent(ulong length);
|
||||
@ -854,6 +855,14 @@ extern void thd_increment_net_big_packet_count(ulong length);
|
||||
|
||||
#ifdef __WIN__
|
||||
extern my_bool have_tcpip; /* Is set if tcpip is used */
|
||||
|
||||
/* implemented in my_windac.c */
|
||||
|
||||
int my_security_attr_create(SECURITY_ATTRIBUTES **psa, const char **perror,
|
||||
DWORD owner_rights, DWORD everybody_rights);
|
||||
|
||||
void my_security_attr_free(SECURITY_ATTRIBUTES *sa);
|
||||
|
||||
#endif
|
||||
#ifdef __NETWARE__
|
||||
void netware_reg_user(const char *ip, const char *user,
|
||||
|
@ -144,8 +144,8 @@ int vio_close_shared_memory(Vio * vio);
|
||||
#if !defined(DONT_MAP_VIO)
|
||||
#define vio_delete(vio) (vio)->viodelete(vio)
|
||||
#define vio_errno(vio) (vio)->vioerrno(vio)
|
||||
#define vio_read(vio, buf, size) (vio)->read(vio,buf,size)
|
||||
#define vio_write(vio, buf, size) (vio)->write(vio, buf, size)
|
||||
#define vio_read(vio, buf, size) ((vio)->read)(vio,buf,size)
|
||||
#define vio_write(vio, buf, size) ((vio)->write)(vio, buf, size)
|
||||
#define vio_blocking(vio, set_blocking_mode, old_mode)\
|
||||
(vio)->vioblocking(vio, set_blocking_mode, old_mode)
|
||||
#define vio_is_blocking(vio) (vio)->is_blocking(vio)
|
||||
|
@ -381,6 +381,12 @@ struct trx_struct{
|
||||
in MySQL's binlog write, we will
|
||||
flush the log to disk later in
|
||||
a separate call */
|
||||
ibool must_flush_log_later;/* this flag is set to TRUE in
|
||||
trx_commit_off_kernel() if
|
||||
flush_log_later was TRUE, and there
|
||||
were modifications by the transaction;
|
||||
in that case we must flush the log
|
||||
in trx_commit_complete_for_mysql() */
|
||||
dulint commit_lsn; /* lsn at the time of the commit */
|
||||
ibool dict_operation; /* TRUE if the trx is used to create
|
||||
a table, create an index, or drop a
|
||||
@ -390,8 +396,9 @@ struct trx_struct{
|
||||
dulint table_id; /* table id if the preceding field is
|
||||
TRUE */
|
||||
/*------------------------------*/
|
||||
int active_trans; /* whether a transaction in MySQL
|
||||
is active */
|
||||
int active_trans; /* 1 - if a transaction in MySQL
|
||||
is active. 2 - if prepare_commit_mutex
|
||||
was taken */
|
||||
void* mysql_thd; /* MySQL thread handle corresponding
|
||||
to this trx, or NULL */
|
||||
char** mysql_query_str;/* pointer to the field in mysqld_thd
|
||||
|
@ -99,6 +99,7 @@ trx_create(
|
||||
trx->check_unique_secondary = TRUE;
|
||||
|
||||
trx->flush_log_later = FALSE;
|
||||
trx->must_flush_log_later = FALSE;
|
||||
|
||||
trx->dict_operation = FALSE;
|
||||
|
||||
@ -710,6 +711,8 @@ trx_commit_off_kernel(
|
||||
ut_ad(mutex_own(&kernel_mutex));
|
||||
#endif /* UNIV_SYNC_DEBUG */
|
||||
|
||||
trx->must_flush_log_later = FALSE;
|
||||
|
||||
rseg = trx->rseg;
|
||||
|
||||
if (trx->insert_undo != NULL || trx->update_undo != NULL) {
|
||||
@ -875,6 +878,7 @@ trx_commit_off_kernel(
|
||||
|
||||
if (trx->flush_log_later) {
|
||||
/* Do nothing yet */
|
||||
trx->must_flush_log_later = TRUE;
|
||||
} else if (srv_flush_log_at_trx_commit == 0) {
|
||||
/* Do nothing */
|
||||
} else if (srv_flush_log_at_trx_commit == 1) {
|
||||
@ -1594,7 +1598,9 @@ trx_commit_complete_for_mysql(
|
||||
|
||||
trx->op_info = "flushing log";
|
||||
|
||||
if (srv_flush_log_at_trx_commit == 0) {
|
||||
if (!trx->must_flush_log_later) {
|
||||
/* Do nothing */
|
||||
} else if (srv_flush_log_at_trx_commit == 0) {
|
||||
/* Do nothing */
|
||||
} else if (srv_flush_log_at_trx_commit == 1) {
|
||||
if (srv_unix_file_flush_method == SRV_UNIX_NOSYNC) {
|
||||
@ -1615,6 +1621,8 @@ trx_commit_complete_for_mysql(
|
||||
} else {
|
||||
ut_error;
|
||||
}
|
||||
|
||||
trx->must_flush_log_later = FALSE;
|
||||
|
||||
trx->op_info = "";
|
||||
|
||||
|
@ -96,7 +96,8 @@ clean-local:
|
||||
`echo $(sql_cmn_objects) | sed "s;\.lo;.c;g"` \
|
||||
$(CHARSET_SRCS) $(CHARSET_OBJS) \
|
||||
$(mystringsextra) $(mysysheaders) $(vioheaders)\
|
||||
../linked_client_sources net.c
|
||||
../linked_libmysql_sources ../linked_libmysql_r_sources \
|
||||
net.c
|
||||
|
||||
conf_to_src_SOURCES = conf_to_src.c
|
||||
conf_to_src_LDADD=
|
||||
|
@ -1575,14 +1575,14 @@ mysql_hex_string(char *to, const char *from, ulong length)
|
||||
ulong STDCALL
|
||||
mysql_escape_string(char *to,const char *from,ulong length)
|
||||
{
|
||||
return escape_string_for_mysql(default_charset_info, to, from, length);
|
||||
return escape_string_for_mysql(default_charset_info, to, 0, from, length);
|
||||
}
|
||||
|
||||
ulong STDCALL
|
||||
mysql_real_escape_string(MYSQL *mysql, char *to,const char *from,
|
||||
ulong length)
|
||||
{
|
||||
return escape_string_for_mysql(mysql->charset, to, from, length);
|
||||
return escape_string_for_mysql(mysql->charset, to, 0, from, length);
|
||||
}
|
||||
|
||||
|
||||
@ -2862,6 +2862,17 @@ int STDCALL mysql_stmt_execute(MYSQL_STMT *stmt)
|
||||
mysql->status= MYSQL_STATUS_READY;
|
||||
stmt->read_row_func= stmt_read_row_from_cursor;
|
||||
}
|
||||
else if (stmt->flags & CURSOR_TYPE_READ_ONLY)
|
||||
{
|
||||
/*
|
||||
This is a single-row result set, a result set with no rows, EXPLAIN,
|
||||
SHOW VARIABLES, or some other command which either a) bypasses the
|
||||
cursors framework in the server and writes rows directly to the
|
||||
network or b) is more efficient if all (few) result set rows are
|
||||
precached on client and server's resources are freed.
|
||||
*/
|
||||
DBUG_RETURN(mysql_stmt_store_result(stmt));
|
||||
}
|
||||
else
|
||||
{
|
||||
stmt->mysql->unbuffered_fetch_owner= &stmt->unbuffered_fetch_cancelled;
|
||||
@ -3608,7 +3619,7 @@ static void fetch_long_with_conversion(MYSQL_BIND *param, MYSQL_FIELD *field,
|
||||
if (is_unsigned)
|
||||
data= ulonglong2double(value);
|
||||
else
|
||||
data= value;
|
||||
data= (double)value;
|
||||
doublestore(buffer, data);
|
||||
*param->error= is_unsigned ?
|
||||
((ulonglong) value) != ((ulonglong) (*(double*) buffer)) :
|
||||
|
@ -146,4 +146,6 @@ EXPORTS
|
||||
mysql_rpl_query_type
|
||||
mysql_slave_query
|
||||
mysql_embedded
|
||||
mysql_server_init
|
||||
mysql_server_end
|
||||
get_defaults_files
|
||||
|
@ -62,7 +62,8 @@ sqlsources = derror.cc field.cc field_conv.cc strfunc.cc filesort.cc \
|
||||
unireg.cc uniques.cc stacktrace.c sql_union.cc hash_filo.cc \
|
||||
spatial.cc gstream.cc sql_help.cc tztime.cc protocol_cursor.cc \
|
||||
sp_head.cc sp_pcontext.cc sp.cc sp_cache.cc sp_rcontext.cc \
|
||||
parse_file.cc rpl_filter.cc sql_view.cc sql_trigger.cc my_decimal.cc
|
||||
parse_file.cc rpl_filter.cc sql_view.cc sql_trigger.cc my_decimal.cc \
|
||||
ha_blackhole.cc
|
||||
|
||||
libmysqld_int_a_SOURCES= $(libmysqld_sources) $(libmysqlsources) $(sqlsources) $(sqlexamplessources)
|
||||
libmysqld_a_SOURCES=
|
||||
|
@ -1,6 +1,6 @@
|
||||
LIBRARY LIBMYSQLD
|
||||
DESCRIPTION 'MySQL 4.1 Embedded Server Library'
|
||||
VERSION 4.1
|
||||
DESCRIPTION 'MySQL 5.0 Embedded Server Library'
|
||||
VERSION 5.0
|
||||
EXPORTS
|
||||
_dig_vec_upper
|
||||
_dig_vec_lower
|
||||
@ -158,3 +158,5 @@ EXPORTS
|
||||
mysql_stmt_attr_set
|
||||
mysql_stmt_field_count
|
||||
get_defaults_files
|
||||
my_charset_bin
|
||||
my_charset_same
|
||||
|
@ -1090,10 +1090,10 @@ char *mi_keyseg_read(char *ptr, HA_KEYSEG *keyseg)
|
||||
keyseg->null_pos = mi_uint4korr(ptr); ptr +=4;
|
||||
keyseg->charset=0; /* Will be filled in later */
|
||||
if (keyseg->null_bit)
|
||||
keyseg->bit_pos= keyseg->null_pos + (keyseg->null_bit == 7);
|
||||
keyseg->bit_pos= (uint16)(keyseg->null_pos + (keyseg->null_bit == 7));
|
||||
else
|
||||
{
|
||||
keyseg->bit_pos= keyseg->null_pos;
|
||||
keyseg->bit_pos= (uint16)keyseg->null_pos;
|
||||
keyseg->null_pos= 0;
|
||||
}
|
||||
return ptr;
|
||||
|
@ -1212,7 +1212,7 @@ my_bool _mi_memmap_file(MI_INFO *info)
|
||||
DBUG_RETURN(0);
|
||||
}
|
||||
file_map=(byte*)
|
||||
my_mmap(0,share->state.state.data_file_length+MEMMAP_EXTRA_MARGIN,PROT_READ,
|
||||
my_mmap(0,(size_t)(share->state.state.data_file_length+MEMMAP_EXTRA_MARGIN),PROT_READ,
|
||||
MAP_SHARED | MAP_NORESERVE,info->dfile,0L);
|
||||
if (file_map == (byte*) MAP_FAILED)
|
||||
{
|
||||
|
@ -427,8 +427,8 @@ static void usage(void)
|
||||
can't fix the data file.\n\
|
||||
--character-sets-dir=...\n\
|
||||
Directory where character sets are.\n\
|
||||
--set-character-set=name\n\
|
||||
Change the character set used by the index.\n\
|
||||
--set-collation=name\n\
|
||||
Change the collation used by the index.\n\
|
||||
-q, --quick Faster repair by not modifying the data file.\n\
|
||||
One can give a second '-q' to force myisamchk to\n\
|
||||
modify the original datafile in case of duplicate keys.\n\
|
||||
|
@ -17,7 +17,7 @@ http://dev.mysql.com/doc/mysql/en/MySQL_test_suite.html
|
||||
|
||||
You can create your own test cases. To create a test case:
|
||||
|
||||
xeamacs t/test_case_name.test
|
||||
xemacs t/test_case_name.test
|
||||
|
||||
in the file, put a set of SQL commands that will create some tables,
|
||||
load test data, run some queries to manipulate it.
|
||||
|
4
mysql-test/include/have_blackhole.inc
Normal file
4
mysql-test/include/have_blackhole.inc
Normal file
@ -0,0 +1,4 @@
|
||||
-- require r/have_blackhole.require
|
||||
disable_query_log;
|
||||
show variables like "have_blackhole_engine";
|
||||
enable_query_log;
|
@ -421,6 +421,11 @@ prepare stmt1 from ' select a, ?, b FROM t1 outer_table where
|
||||
b=? and a = (select ? from t1 where b = ? ) ' ;
|
||||
execute stmt1 using @arg00, @arg01, @arg02, @arg03 ;
|
||||
|
||||
# Bug#8807
|
||||
prepare stmt1 from 'select c4 FROM t9 where
|
||||
c13 = (select MAX(b) from t1 where a = ?) and c22 = ? ' ;
|
||||
execute stmt1 using @arg01, @arg02;
|
||||
|
||||
######## correlated subquery
|
||||
# no parameter
|
||||
prepare stmt1 from ' select a, b FROM t1 outer_table where
|
||||
|
@ -16,6 +16,11 @@ CREATE TABLE db (
|
||||
Alter_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
|
||||
Create_tmp_table_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
|
||||
Lock_tables_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
|
||||
Create_view_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
|
||||
Show_view_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
|
||||
Create_routine_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
|
||||
Alter_routine_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
|
||||
Execute_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
|
||||
PRIMARY KEY Host (Host,Db,User),
|
||||
KEY User (User)
|
||||
) engine=MyISAM
|
||||
@ -23,8 +28,8 @@ CHARACTER SET utf8 COLLATE utf8_bin
|
||||
comment='Database privileges';
|
||||
|
||||
|
||||
INSERT INTO db VALUES ('%','test' ,'','Y','Y','Y','Y','Y','Y','N','Y','Y','Y','Y','Y');
|
||||
INSERT INTO db VALUES ('%','test\_%','','Y','Y','Y','Y','Y','Y','N','Y','Y','Y','Y','Y');
|
||||
INSERT INTO db VALUES ('%','test','','Y','Y','Y','Y','Y','Y','N','Y','Y','Y','Y','Y','Y','Y','Y','N','N');
|
||||
INSERT INTO db VALUES ('%','test\_%','','Y','Y','Y','Y','Y','Y','N','Y','Y','Y','Y','Y','Y','Y','Y','N','N');
|
||||
|
||||
|
||||
CREATE TABLE host (
|
||||
@ -42,6 +47,8 @@ CREATE TABLE host (
|
||||
Alter_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
|
||||
Create_tmp_table_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
|
||||
Lock_tables_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
|
||||
Create_view_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
|
||||
Show_view_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
|
||||
PRIMARY KEY Host (Host,Db)
|
||||
) engine=MyISAM
|
||||
CHARACTER SET utf8 COLLATE utf8_bin
|
||||
@ -73,6 +80,11 @@ CREATE TABLE user (
|
||||
Execute_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
|
||||
Repl_slave_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
|
||||
Repl_client_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
|
||||
Create_view_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
|
||||
Show_view_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
|
||||
Create_routine_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
|
||||
Alter_routine_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
|
||||
Create_user_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
|
||||
ssl_type enum('','ANY','X509', 'SPECIFIED') COLLATE utf8_general_ci DEFAULT '' NOT NULL,
|
||||
ssl_cipher BLOB NOT NULL,
|
||||
x509_issuer BLOB NOT NULL,
|
||||
@ -80,15 +92,16 @@ CREATE TABLE user (
|
||||
max_questions int(11) unsigned DEFAULT 0 NOT NULL,
|
||||
max_updates int(11) unsigned DEFAULT 0 NOT NULL,
|
||||
max_connections int(11) unsigned DEFAULT 0 NOT NULL,
|
||||
max_user_connections int(11) unsigned DEFAULT 0 NOT NULL,
|
||||
PRIMARY KEY Host (Host,User)
|
||||
) engine=MyISAM
|
||||
CHARACTER SET utf8 COLLATE utf8_bin
|
||||
comment='Users and global privileges';
|
||||
|
||||
|
||||
INSERT INTO user VALUES ('localhost' ,'root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0);
|
||||
INSERT INTO user VALUES ('@HOSTNAME@%','root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0);
|
||||
REPLACE INTO user VALUES ('127.0.0.1' ,'root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0);
|
||||
INSERT INTO user VALUES ('localhost' ,'root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0);
|
||||
INSERT INTO user VALUES ('@HOSTNAME@%' ,'root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0);
|
||||
REPLACE INTO user VALUES ('127.0.0.1' ,'root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0);
|
||||
INSERT INTO user (host,user) VALUES ('localhost','');
|
||||
INSERT INTO user (host,user) VALUES ('@HOSTNAME@%','');
|
||||
|
||||
@ -135,11 +148,11 @@ comment='Column privileges';
|
||||
|
||||
CREATE TABLE help_topic (
|
||||
help_topic_id int unsigned not null,
|
||||
name varchar(64) not null,
|
||||
name char(64) not null,
|
||||
help_category_id smallint unsigned not null,
|
||||
description text not null,
|
||||
example text not null,
|
||||
url varchar(128) not null,
|
||||
url char(128) not null,
|
||||
primary key (help_topic_id),
|
||||
unique index (name)
|
||||
) engine=MyISAM
|
||||
@ -149,9 +162,9 @@ comment='help topics';
|
||||
|
||||
CREATE TABLE help_category (
|
||||
help_category_id smallint unsigned not null,
|
||||
name varchar(64) not null,
|
||||
name char(64) not null,
|
||||
parent_category_id smallint unsigned null,
|
||||
url varchar(128) not null,
|
||||
url char(128) not null,
|
||||
primary key (help_category_id),unique index (name)
|
||||
) engine=MyISAM
|
||||
CHARACTER SET utf8
|
||||
@ -160,7 +173,7 @@ comment='help categories';
|
||||
|
||||
CREATE TABLE help_keyword (
|
||||
help_keyword_id int unsigned not null,
|
||||
name varchar(64) not null,
|
||||
name char(64) not null,
|
||||
primary key (help_keyword_id),unique index (name)
|
||||
) engine=MyISAM
|
||||
CHARACTER SET utf8
|
||||
@ -468,3 +481,74 @@ INSERT INTO time_zone_leap_second (
|
||||
,(662688015, 16) ,(709948816, 17) ,(741484817, 18)
|
||||
,(773020818, 19) ,(820454419, 20) ,(867715220, 21)
|
||||
,(915148821, 22);
|
||||
|
||||
|
||||
CREATE TABLE procs_priv (
|
||||
Host char(60) binary DEFAULT '' NOT NULL,
|
||||
Db char(64) binary DEFAULT '' NOT NULL,
|
||||
User char(16) binary DEFAULT '' NOT NULL,
|
||||
Routine_name char(64) binary DEFAULT '' NOT NULL,
|
||||
Grantor char(77) DEFAULT '' NOT NULL,
|
||||
Timestamp timestamp(14),
|
||||
Proc_priv set('Execute','Alter Routine','Grant') COLLATE utf8_general_ci DEFAULT '' NOT NULL,
|
||||
PRIMARY KEY (Host,Db,User,Routine_name),
|
||||
KEY Grantor (Grantor)
|
||||
) engine=MyISAM
|
||||
CHARACTER SET utf8 COLLATE utf8_bin
|
||||
comment='Procedure privileges';
|
||||
|
||||
|
||||
CREATE TABLE proc (
|
||||
db char(64) binary DEFAULT '' NOT NULL,
|
||||
name char(64) DEFAULT '' NOT NULL,
|
||||
type enum('FUNCTION','PROCEDURE') NOT NULL,
|
||||
specific_name char(64) DEFAULT '' NOT NULL,
|
||||
language enum('SQL') DEFAULT 'SQL' NOT NULL,
|
||||
sql_data_access enum('CONTAINS_SQL',
|
||||
'NO_SQL',
|
||||
'READS_SQL_DATA',
|
||||
'MODIFIES_SQL_DATA'
|
||||
) DEFAULT 'CONTAINS_SQL' NOT NULL,
|
||||
is_deterministic enum('YES','NO') DEFAULT 'NO' NOT NULL,
|
||||
security_type enum('INVOKER','DEFINER') DEFAULT 'DEFINER' NOT NULL,
|
||||
param_list blob DEFAULT '' NOT NULL,
|
||||
returns char(64) DEFAULT '' NOT NULL,
|
||||
body blob DEFAULT '' NOT NULL,
|
||||
definer char(77) binary DEFAULT '' NOT NULL,
|
||||
created timestamp,
|
||||
modified timestamp,
|
||||
sql_mode set(
|
||||
'REAL_AS_FLOAT',
|
||||
'PIPES_AS_CONCAT',
|
||||
'ANSI_QUOTES',
|
||||
'IGNORE_SPACE',
|
||||
'NOT_USED',
|
||||
'ONLY_FULL_GROUP_BY',
|
||||
'NO_UNSIGNED_SUBTRACTION',
|
||||
'NO_DIR_IN_CREATE',
|
||||
'POSTGRESQL',
|
||||
'ORACLE',
|
||||
'MSSQL',
|
||||
'DB2',
|
||||
'MAXDB',
|
||||
'NO_KEY_OPTIONS',
|
||||
'NO_TABLE_OPTIONS',
|
||||
'NO_FIELD_OPTIONS',
|
||||
'MYSQL323',
|
||||
'MYSQL40',
|
||||
'ANSI',
|
||||
'NO_AUTO_VALUE_ON_ZERO',
|
||||
'NO_BACKSLASH_ESCAPES',
|
||||
'STRICT_TRANS_TABLES',
|
||||
'STRICT_ALL_TABLES',
|
||||
'NO_ZERO_IN_DATE',
|
||||
'NO_ZERO_DATE',
|
||||
'INVALID_DATES',
|
||||
'ERROR_FOR_DIVISION_BY_ZERO',
|
||||
'TRADITIONAL',
|
||||
'NO_AUTO_CREATE_USER',
|
||||
'HIGH_NOT_PRECEDENCE'
|
||||
) DEFAULT 0 NOT NULL,
|
||||
comment char(64) binary DEFAULT '' NOT NULL,
|
||||
PRIMARY KEY (db,name,type)
|
||||
) comment='Stored Procedures';
|
||||
|
@ -63,21 +63,24 @@ sub collect_test_cases ($) {
|
||||
# To speed things up, we sort first in if the test require a restart
|
||||
# or not, second in alphanumeric order.
|
||||
|
||||
# @$cases = sort {
|
||||
# if ( $a->{'master_restart'} and $b->{'master_restart'} or
|
||||
# ! $a->{'master_restart'} and ! $b->{'master_restart'} )
|
||||
# {
|
||||
# return $a->{'name'} cmp $b->{'name'};
|
||||
# }
|
||||
# if ( $a->{'master_restart'} )
|
||||
# {
|
||||
# return 1; # Is greater
|
||||
# }
|
||||
# else
|
||||
# {
|
||||
# return -1; # Is less
|
||||
# }
|
||||
# } @$cases;
|
||||
if ( $::opt_reorder )
|
||||
{
|
||||
@$cases = sort {
|
||||
if ( $a->{'master_restart'} and $b->{'master_restart'} or
|
||||
! $a->{'master_restart'} and ! $b->{'master_restart'} )
|
||||
{
|
||||
return $a->{'name'} cmp $b->{'name'};
|
||||
}
|
||||
if ( $a->{'master_restart'} )
|
||||
{
|
||||
return 1; # Is greater
|
||||
}
|
||||
else
|
||||
{
|
||||
return -1; # Is less
|
||||
}
|
||||
} @$cases;
|
||||
}
|
||||
|
||||
return $cases;
|
||||
}
|
||||
|
283
mysql-test/lib/mtr_diff.pl
Normal file
283
mysql-test/lib/mtr_diff.pl
Normal file
@ -0,0 +1,283 @@
|
||||
# -*- cperl -*-
|
||||
|
||||
# This is a library file used by the Perl version of mysql-test-run,
|
||||
# and is part of the translation of the Bourne shell script with the
|
||||
# same name.
|
||||
|
||||
#use Data::Dumper;
|
||||
use strict;
|
||||
|
||||
# $Data::Dumper::Indent= 1;
|
||||
|
||||
sub mtr_diff($$);
|
||||
|
||||
##############################################################################
|
||||
#
|
||||
# This is a simplified unified diff, with some special handling
|
||||
# of unsorted result sets
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
# FIXME replace die with mtr_error
|
||||
|
||||
#require "mtr_report.pl";
|
||||
#mtr_diff("a.txt","b.txt");
|
||||
|
||||
sub mtr_diff ($$) {
|
||||
my $file1 = shift;
|
||||
my $file2 = shift;
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# We read in all of the files at once
|
||||
# ----------------------------------------------------------------------
|
||||
|
||||
unless ( open(FILE1, $file1) )
|
||||
{
|
||||
mtr_warning("can't open \"$file1\": $!");
|
||||
return;
|
||||
}
|
||||
|
||||
unless ( open(FILE2, $file2) )
|
||||
{
|
||||
mtr_warning("can't open \"$file2\": $!");
|
||||
return;
|
||||
}
|
||||
|
||||
my $lines1= collect_lines(<FILE1>);
|
||||
my $lines2= collect_lines(<FILE2>);
|
||||
close FILE1;
|
||||
close FILE2;
|
||||
|
||||
# print Dumper($lines1);
|
||||
# print Dumper($lines2);
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# We compare line by line, but don't shift off elements until we know
|
||||
# what to do. This way we use the "restart" method, do simple change
|
||||
# and restart by entering the diff loop from the beginning again.
|
||||
# ----------------------------------------------------------------------
|
||||
|
||||
my @context;
|
||||
my @info; # Collect information, and output later
|
||||
my $lno1= 1;
|
||||
my $lno2= 1;
|
||||
|
||||
while ( @$lines1 or @$lines2 )
|
||||
{
|
||||
unless ( @$lines1 )
|
||||
{
|
||||
push(@info, map {['+',$lno1,$lno2++,$_]} @$lines2);
|
||||
last;
|
||||
}
|
||||
unless ( @$lines2 )
|
||||
{
|
||||
push(@info, map {['-',$lno1++,$lno2,$_]} @$lines1);
|
||||
last;
|
||||
}
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# We know both have lines
|
||||
# ----------------------------------------------------------------------
|
||||
|
||||
if ( $lines1->[0] eq $lines2->[0] )
|
||||
{
|
||||
# Simple case, first line match and all is well
|
||||
push(@info, ['',$lno1++,$lno2++,$lines1->[0]]);
|
||||
shift @$lines1;
|
||||
shift @$lines2;
|
||||
next;
|
||||
}
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# Now, we know they differ
|
||||
# ----------------------------------------------------------------------
|
||||
|
||||
# How far in the other one, is there a match?
|
||||
|
||||
my $idx2= find_next_match($lines1->[0], $lines2);
|
||||
my $idx1= find_next_match($lines2->[0], $lines1);
|
||||
|
||||
# Here we could test "if ( !defined $idx2 or !defined $idx1 )" and
|
||||
# use a more complicated diff algorithm in the case both contains
|
||||
# each others lines, just dislocated. But for this application, there
|
||||
# should be no need.
|
||||
|
||||
if ( !defined $idx2 )
|
||||
{
|
||||
push(@info, ['-',$lno1++,$lno2,$lines1->[0]]);
|
||||
shift @$lines1;
|
||||
}
|
||||
else
|
||||
{
|
||||
push(@info, ['+',$lno1,$lno2++,$lines2->[0]]);
|
||||
shift @$lines2;
|
||||
}
|
||||
}
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# Try to output nicely
|
||||
# ----------------------------------------------------------------------
|
||||
|
||||
# print Dumper(\@info);
|
||||
|
||||
# We divide into "chunks" to output
|
||||
# We want at least three lines of context
|
||||
|
||||
my @chunks;
|
||||
my @chunk;
|
||||
my $state= 'pre'; # 'pre', 'in' and 'post' difference
|
||||
my $post_count= 0;
|
||||
|
||||
foreach my $info ( @info )
|
||||
{
|
||||
if ( $info->[0] eq '' and $state eq 'pre' )
|
||||
{
|
||||
# Collect no more than three lines of context before diff
|
||||
push(@chunk, $info);
|
||||
shift(@chunk) if @chunk > 3;
|
||||
next;
|
||||
}
|
||||
|
||||
if ( $info->[0] =~ /(\+|\-)/ and $state =~ /(pre|in)/ )
|
||||
{
|
||||
# Start/continue collecting diff
|
||||
$state= 'in';
|
||||
push(@chunk, $info);
|
||||
next;
|
||||
}
|
||||
|
||||
if ( $info->[0] eq '' and $state eq 'in' )
|
||||
{
|
||||
# Stop collecting diff, and collect context after diff
|
||||
$state= 'post';
|
||||
$post_count= 1;
|
||||
push(@chunk, $info);
|
||||
next;
|
||||
}
|
||||
|
||||
if ( $info->[0] eq '' and $state eq 'post' and $post_count < 6 )
|
||||
{
|
||||
# We might find a new diff sequence soon, continue to collect
|
||||
# non diffs but five up on 6.
|
||||
$post_count++;
|
||||
push(@chunk, $info);
|
||||
next;
|
||||
}
|
||||
|
||||
if ( $info->[0] eq '' and $state eq 'post' )
|
||||
{
|
||||
# We put an end to this, giving three non diff lines to
|
||||
# the old chunk, and three to the new one.
|
||||
my @left= splice(@chunk, -3, 3);
|
||||
push(@chunks, [@chunk]);
|
||||
$state= 'pre';
|
||||
$post_count= 0;
|
||||
@chunk= @left;
|
||||
next;
|
||||
}
|
||||
|
||||
if ( $info->[0] =~ /(\+|\-)/ and $state eq 'post' )
|
||||
{
|
||||
# We didn't split, continue collect diff
|
||||
$state= 'in';
|
||||
push(@chunk, $info);
|
||||
next;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if ( $post_count > 3 )
|
||||
{
|
||||
$post_count -= 3;
|
||||
splice(@chunk, -$post_count, $post_count);
|
||||
}
|
||||
push(@chunks, [@chunk]) if @chunk and $state ne 'pre';
|
||||
|
||||
foreach my $chunk ( @chunks )
|
||||
{
|
||||
my $from_file_start= $chunk->[0]->[1];
|
||||
my $to_file_start= $chunk->[0]->[2];
|
||||
my $from_file_offset= $chunk->[$#$chunk]->[1] - $from_file_start;
|
||||
my $to_file_offset= $chunk->[$#$chunk]->[2] - $to_file_start;
|
||||
print "\@\@ -$from_file_start,$from_file_offset ",
|
||||
"+$to_file_start,$to_file_offset \@\@\n";
|
||||
|
||||
foreach my $info ( @$chunk )
|
||||
{
|
||||
if ( $info->[0] eq '' )
|
||||
{
|
||||
print " $info->[3]\n";
|
||||
}
|
||||
elsif ( $info->[0] eq '-' )
|
||||
{
|
||||
print "- $info->[3]\n";
|
||||
}
|
||||
elsif ( $info->[0] eq '+' )
|
||||
{
|
||||
print "+ $info->[3]\n";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
# print Dumper(\@chunks);
|
||||
|
||||
}
|
||||
|
||||
|
||||
##############################################################################
|
||||
# Find if the string is found in the array, return the index if found,
|
||||
# if not found, return "undef"
|
||||
##############################################################################
|
||||
|
||||
sub find_next_match {
|
||||
my $line= shift;
|
||||
my $lines= shift;
|
||||
|
||||
for ( my $idx= 0; $idx < @$lines; $idx++ )
|
||||
{
|
||||
return $idx if $lines->[$idx] eq $line;
|
||||
}
|
||||
|
||||
return undef; # No match found
|
||||
}
|
||||
|
||||
|
||||
##############################################################################
|
||||
# Just read the lines, but handle "sets" of lines that are unordered
|
||||
##############################################################################
|
||||
|
||||
sub collect_lines {
|
||||
|
||||
my @recordset;
|
||||
my @lines;
|
||||
|
||||
while (@_)
|
||||
{
|
||||
my $line= shift @_;
|
||||
chomp($line);
|
||||
|
||||
if ( $line =~ /^\Q%unordered%\E\t/ )
|
||||
{
|
||||
push(@recordset, $line);
|
||||
}
|
||||
elsif ( @recordset )
|
||||
{
|
||||
push(@lines, sort @recordset);
|
||||
@recordset= (); # Clear it
|
||||
}
|
||||
else
|
||||
{
|
||||
push(@lines, $line);
|
||||
}
|
||||
}
|
||||
|
||||
if ( @recordset )
|
||||
{
|
||||
push(@lines, sort @recordset);
|
||||
@recordset= (); # Clear it
|
||||
}
|
||||
|
||||
return \@lines;
|
||||
}
|
||||
|
||||
1;
|
@ -89,12 +89,11 @@ sub mtr_report_test_passed ($) {
|
||||
my $tinfo= shift;
|
||||
|
||||
my $timer= "";
|
||||
# FIXME
|
||||
# if ( $::opt_timer and -f "$::glob_mysql_test_dir/var/log/timer" )
|
||||
# {
|
||||
# $timer= `cat var/log/timer`;
|
||||
# $timer= sprintf "%13s", $timer;
|
||||
# }
|
||||
if ( $::opt_timer and -f "$::glob_mysql_test_dir/var/log/timer" )
|
||||
{
|
||||
$timer= mtr_fromfile("$::glob_mysql_test_dir/var/log/timer");
|
||||
$timer= sprintf "%12s", $timer;
|
||||
}
|
||||
$tinfo->{'result'}= 'MTR_RES_PASSED';
|
||||
print "[ pass ] $timer\n";
|
||||
}
|
||||
|
@ -94,6 +94,7 @@ require "lib/mtr_io.pl";
|
||||
require "lib/mtr_gcov.pl";
|
||||
require "lib/mtr_gprof.pl";
|
||||
require "lib/mtr_report.pl";
|
||||
require "lib/mtr_diff.pl";
|
||||
require "lib/mtr_match.pl";
|
||||
require "lib/mtr_misc.pl";
|
||||
|
||||
@ -214,6 +215,7 @@ our $opt_embedded_server;
|
||||
our $opt_extern;
|
||||
our $opt_fast;
|
||||
our $opt_force;
|
||||
our $opt_reorder;
|
||||
|
||||
our $opt_gcov;
|
||||
our $opt_gcov_err;
|
||||
@ -525,6 +527,7 @@ sub command_line_setup () {
|
||||
'local-master' => \$opt_local_master,
|
||||
'netware' => \$opt_netware,
|
||||
'old-master' => \$opt_old_master,
|
||||
'reorder' => \$opt_reorder,
|
||||
'script-debug' => \$opt_script_debug,
|
||||
'sleep=i' => \$opt_sleep,
|
||||
'socket=s' => \$opt_socket,
|
||||
@ -576,7 +579,7 @@ sub command_line_setup () {
|
||||
$slave->[0]->{'path_mypid'}= "$glob_mysql_test_dir/var/run/slave.pid";
|
||||
$slave->[0]->{'path_mysock'}= "$opt_tmpdir/slave.sock";
|
||||
$slave->[0]->{'path_myport'}= $opt_slave_myport;
|
||||
$slave->[0]->{'start_timeout'}= 400;
|
||||
$slave->[0]->{'start_timeout'}= 400;
|
||||
|
||||
$slave->[1]->{'path_myddir'}= "$glob_mysql_test_dir/var/slave1-data";
|
||||
$slave->[1]->{'path_myerr'}= "$glob_mysql_test_dir/var/log/slave1.err";
|
||||
@ -584,7 +587,7 @@ sub command_line_setup () {
|
||||
$slave->[1]->{'path_mypid'}= "$glob_mysql_test_dir/var/run/slave1.pid";
|
||||
$slave->[1]->{'path_mysock'}= "$opt_tmpdir/slave1.sock";
|
||||
$slave->[1]->{'path_myport'}= $opt_slave_myport + 1;
|
||||
$slave->[1]->{'start_timeout'}= 30;
|
||||
$slave->[1]->{'start_timeout'}= 300;
|
||||
|
||||
$slave->[2]->{'path_myddir'}= "$glob_mysql_test_dir/var/slave2-data";
|
||||
$slave->[2]->{'path_myerr'}= "$glob_mysql_test_dir/var/log/slave2.err";
|
||||
@ -592,7 +595,7 @@ sub command_line_setup () {
|
||||
$slave->[2]->{'path_mypid'}= "$glob_mysql_test_dir/var/run/slave2.pid";
|
||||
$slave->[2]->{'path_mysock'}= "$opt_tmpdir/slave2.sock";
|
||||
$slave->[2]->{'path_myport'}= $opt_slave_myport + 2;
|
||||
$slave->[2]->{'start_timeout'}= 30;
|
||||
$slave->[2]->{'start_timeout'}= 300;
|
||||
|
||||
# Do sanity checks of command line arguments
|
||||
|
||||
@ -1365,7 +1368,10 @@ sub run_testcase ($) {
|
||||
mtr_report_test_name($tinfo);
|
||||
|
||||
mtr_tofile($master->[0]->{'path_myerr'},"CURRENT_TEST: $tname\n");
|
||||
do_before_start_master($tname,$tinfo->{'master_sh'});
|
||||
|
||||
# FIXME test cases that depend on each other, prevent this from
|
||||
# being at this location.
|
||||
# do_before_start_master($tname,$tinfo->{'master_sh'});
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# If any mysqld servers running died, we have to know
|
||||
@ -1397,6 +1403,8 @@ sub run_testcase ($) {
|
||||
}
|
||||
if ( ! $master->[0]->{'pid'} )
|
||||
{
|
||||
# FIXME not correct location for do_before_start_master()
|
||||
do_before_start_master($tname,$tinfo->{'master_sh'});
|
||||
$master->[0]->{'pid'}=
|
||||
mysqld_start('master',0,$tinfo->{'master_opt'},[]);
|
||||
if ( ! $master->[0]->{'pid'} )
|
||||
@ -1532,9 +1540,10 @@ sub do_before_start_master ($$) {
|
||||
$tname ne "rpl_crash_binlog_ib_3b")
|
||||
{
|
||||
# FIXME we really want separate dir for binlogs
|
||||
# FIXME replace 'rm' in backticks with portable Perl function
|
||||
`rm -f $glob_mysql_test_dir/var/log/master-bin*`;
|
||||
# unlink("$glob_mysql_test_dir/var/log/master-bin*");
|
||||
foreach my $bin ( glob("$glob_mysql_test_dir/var/log/master*-bin.*") )
|
||||
{
|
||||
unlink($bin);
|
||||
}
|
||||
}
|
||||
|
||||
# Remove old master.info and relay-log.info files
|
||||
@ -1568,9 +1577,10 @@ sub do_before_start_slave ($$) {
|
||||
$tname ne "rpl_crash_binlog_ib_3b" )
|
||||
{
|
||||
# FIXME we really want separate dir for binlogs
|
||||
# FIXME replace 'rm' in backticks with portable Perl function
|
||||
`rm -fr $glob_mysql_test_dir/var/log/slave*-bin.*`;
|
||||
# unlink("$glob_mysql_test_dir/var/log/slave*-bin.*"); # FIXME idx???
|
||||
foreach my $bin ( glob("$glob_mysql_test_dir/var/log/slave*-bin.*") )
|
||||
{
|
||||
unlink($bin);
|
||||
}
|
||||
# FIXME really master?!
|
||||
unlink("$glob_mysql_test_dir/var/slave-data/master.info");
|
||||
unlink("$glob_mysql_test_dir/var/slave-data/relay-log.info");
|
||||
@ -1656,13 +1666,15 @@ sub mysqld_arguments ($$$$$) {
|
||||
|
||||
mtr_add_arg($args, "%s--datadir=%s", $prefix,
|
||||
$slave->[$idx]->{'path_myddir'});
|
||||
# FIXME slave get this option twice?!
|
||||
mtr_add_arg($args, "%s--exit-info=256", $prefix);
|
||||
mtr_add_arg($args, "%s--init-rpl-role=slave", $prefix);
|
||||
mtr_add_arg($args, "%s--log-bin=%s/var/log/slave%s-bin", $prefix,
|
||||
$glob_mysql_test_dir, $sidx); # FIXME use own dir for binlogs
|
||||
mtr_add_arg($args, "%s--log-slave-updates", $prefix);
|
||||
# FIXME option duplicated for slave
|
||||
mtr_add_arg($args, "%s--log=%s", $prefix,
|
||||
$slave->[$idx]->{'path_myerr'});
|
||||
$slave->[$idx]->{'path_mylog'});
|
||||
mtr_add_arg($args, "%s--master-retry-count=10", $prefix);
|
||||
mtr_add_arg($args, "%s--pid-file=%s", $prefix,
|
||||
$slave->[$idx]->{'path_mypid'});
|
||||
@ -2043,7 +2055,7 @@ sub run_mysqltest ($$) {
|
||||
|
||||
if ( $opt_timer )
|
||||
{
|
||||
mtr_add_arg($args, "--timer-file=var/log/timer");
|
||||
mtr_add_arg($args, "--timer-file=%s/var/log/timer", $glob_mysql_test_dir);
|
||||
}
|
||||
|
||||
if ( $opt_big_test )
|
||||
@ -2172,6 +2184,7 @@ Misc options
|
||||
timer Show test case execution time
|
||||
start-and-exit Only initiate and start the "mysqld" servers
|
||||
fast Don't try to cleanup from earlier runs
|
||||
reorder Reorder tests to get less server restarts
|
||||
help Get this help text
|
||||
unified-diff | udiff When presenting differences, use unified diff
|
||||
|
||||
|
@ -222,6 +222,7 @@ FAILED_CASES=
|
||||
EXTRA_MASTER_OPT=""
|
||||
EXTRA_MYSQL_TEST_OPT=""
|
||||
EXTRA_MYSQLDUMP_OPT=""
|
||||
EXTRA_MYSQLSHOW_OPT=""
|
||||
EXTRA_MYSQLBINLOG_OPT=""
|
||||
USE_RUNNING_SERVER=0
|
||||
USE_NDBCLUSTER=@USE_NDBCLUSTER@
|
||||
@ -238,7 +239,7 @@ SLEEP_TIME_FOR_DELETE=10
|
||||
SLEEP_TIME_FOR_FIRST_MASTER=400 # Enough time to create innodb tables
|
||||
SLEEP_TIME_FOR_SECOND_MASTER=400
|
||||
SLEEP_TIME_FOR_FIRST_SLAVE=400
|
||||
SLEEP_TIME_FOR_SECOND_SLAVE=30
|
||||
SLEEP_TIME_FOR_SECOND_SLAVE=300
|
||||
CHARACTER_SET=latin1
|
||||
DBUSER=""
|
||||
START_WAIT_TIMEOUT=10
|
||||
@ -453,6 +454,8 @@ while test $# -gt 0; do
|
||||
--debug=d:t:A,$MYSQL_TEST_DIR/var/log/mysqltest.trace"
|
||||
EXTRA_MYSQLDUMP_OPT="$EXTRA_MYSQLDUMP_OPT \
|
||||
--debug=d:t:A,$MYSQL_TEST_DIR/var/log/mysqldump.trace"
|
||||
EXTRA_MYSQLSHOW_OPT="$EXTRA_MYSQLSHOW_OPT \
|
||||
--debug=d:t:A,$MYSQL_TEST_DIR/var/log/mysqlshow.trace"
|
||||
EXTRA_MYSQLBINLOG_OPT="$EXTRA_MYSQLBINLOG_OPT \
|
||||
--debug=d:t:A,$MYSQL_TEST_DIR/var/log/mysqlbinlog.trace"
|
||||
EXTRA_MYSQL_CLIENT_TEST_OPT="--debug=d:t:A,$MYSQL_TEST_DIR/var/log/mysql_client_test.trace"
|
||||
@ -556,6 +559,11 @@ if [ x$SOURCE_DIST = x1 ] ; then
|
||||
else
|
||||
MYSQL_DUMP="$BASEDIR/client/mysqldump"
|
||||
fi
|
||||
if [ -f "$BASEDIR/client/.libs/mysqlshow" ] ; then
|
||||
MYSQL_SHOW="$BASEDIR/client/.libs/mysqlshow"
|
||||
else
|
||||
MYSQL_SHOW="$BASEDIR/client/mysqlshow"
|
||||
fi
|
||||
if [ -f "$BASEDIR/client/.libs/mysqlbinlog" ] ; then
|
||||
MYSQL_BINLOG="$BASEDIR/client/.libs/mysqlbinlog"
|
||||
else
|
||||
@ -627,6 +635,7 @@ else
|
||||
fi
|
||||
MYSQL_TEST="$CLIENT_BINDIR/mysqltest"
|
||||
MYSQL_DUMP="$CLIENT_BINDIR/mysqldump"
|
||||
MYSQL_SHOW="$CLIENT_BINDIR/mysqlshow"
|
||||
MYSQL_BINLOG="$CLIENT_BINDIR/mysqlbinlog"
|
||||
MYSQLADMIN="$CLIENT_BINDIR/mysqladmin"
|
||||
WAIT_PID="$CLIENT_BINDIR/mysql_waitpid"
|
||||
@ -697,10 +706,11 @@ fi
|
||||
|
||||
MYSQL_CLIENT_TEST="$MYSQL_CLIENT_TEST --no-defaults --testcase --user=root --socket=$MASTER_MYSOCK --port=$MYSQL_TCP_PORT --silent $EXTRA_MYSQL_CLIENT_TEST_OPT"
|
||||
MYSQL_DUMP="$MYSQL_DUMP --no-defaults -uroot --socket=$MASTER_MYSOCK --password=$DBPASSWD $EXTRA_MYSQLDUMP_OPT"
|
||||
MYSQL_SHOW="$MYSQL_SHOW -uroot --socket=$MASTER_MYSOCK --password=$DBPASSWD $EXTRA_MYSQLSHOW_OPT"
|
||||
MYSQL_BINLOG="$MYSQL_BINLOG --no-defaults --local-load=$MYSQL_TMP_DIR --character-sets-dir=$CHARSETSDIR $EXTRA_MYSQLBINLOG_OPT"
|
||||
MYSQL_FIX_SYSTEM_TABLES="$MYSQL_FIX_SYSTEM_TABLES --no-defaults --host=localhost --port=$MASTER_MYPORT --socket=$MASTER_MYSOCK --user=root --password=$DBPASSWD --basedir=$BASEDIR --bindir=$CLIENT_BINDIR --verbose"
|
||||
MYSQL="$MYSQL --host=localhost --port=$MASTER_MYPORT --socket=$MASTER_MYSOCK --user=root --password=$DBPASSWD"
|
||||
export MYSQL MYSQL_DUMP MYSQL_BINLOG MYSQL_FIX_SYSTEM_TABLES
|
||||
export MYSQL MYSQL_DUMP MYSQL_SHOW MYSQL_BINLOG MYSQL_FIX_SYSTEM_TABLES
|
||||
export CLIENT_BINDIR MYSQL_CLIENT_TEST CHARSETSDIR
|
||||
export NDB_TOOLS_DIR
|
||||
export NDB_MGM
|
||||
@ -731,7 +741,7 @@ if [ -n "$DO_CLIENT_GDB" -o -n "$DO_GDB" ] ; then
|
||||
XTERM=`which xterm`
|
||||
fi
|
||||
|
||||
export MYSQL MYSQL_DUMP MYSQL_BINLOG MYSQL_FIX_SYSTEM_TABLES CLIENT_BINDIR MASTER_MYSOCK
|
||||
export MYSQL MYSQL_DUMP MYSQL_SHOW MYSQL_BINLOG MYSQL_FIX_SYSTEM_TABLES CLIENT_BINDIR MASTER_MYSOCK
|
||||
|
||||
#++
|
||||
# Function Definitions
|
||||
|
86
mysql-test/r/blackhole.result
Normal file
86
mysql-test/r/blackhole.result
Normal file
@ -0,0 +1,86 @@
|
||||
drop table if exists t1,t2;
|
||||
CREATE TABLE t1 (
|
||||
Period smallint(4) unsigned zerofill DEFAULT '0000' NOT NULL,
|
||||
Varor_period smallint(4) unsigned DEFAULT '0' NOT NULL
|
||||
) ENGINE=blackhole;
|
||||
INSERT INTO t1 VALUES (9410,9412);
|
||||
select period from t1;
|
||||
period
|
||||
select * from t1;
|
||||
Period Varor_period
|
||||
select t1.* from t1;
|
||||
Period Varor_period
|
||||
CREATE TABLE t2 (
|
||||
auto int NOT NULL auto_increment,
|
||||
fld1 int(6) unsigned zerofill DEFAULT '000000' NOT NULL,
|
||||
companynr tinyint(2) unsigned zerofill DEFAULT '00' NOT NULL,
|
||||
fld3 char(30) DEFAULT '' NOT NULL,
|
||||
fld4 char(35) DEFAULT '' NOT NULL,
|
||||
fld5 char(35) DEFAULT '' NOT NULL,
|
||||
fld6 char(4) DEFAULT '' NOT NULL,
|
||||
primary key (auto)
|
||||
) ENGINE=blackhole;
|
||||
INSERT INTO t2 VALUES (1192,068305,00,'Colombo','hardware','colicky','');
|
||||
INSERT INTO t2 VALUES (1193,000000,00,'nondecreasing','implant','thrillingly','');
|
||||
select t2.fld3 from t2 where companynr = 58 and fld3 like "%imaginable%";
|
||||
fld3
|
||||
select fld3 from t2 where fld3 like "%cultivation" ;
|
||||
fld3
|
||||
select t2.fld3,companynr from t2 where companynr = 57+1 order by fld3;
|
||||
fld3 companynr
|
||||
select fld3,companynr from t2 where companynr = 58 order by fld3;
|
||||
fld3 companynr
|
||||
select fld3 from t2 order by fld3 desc limit 10;
|
||||
fld3
|
||||
select fld3 from t2 order by fld3 desc limit 5;
|
||||
fld3
|
||||
select fld3 from t2 order by fld3 desc limit 5,5;
|
||||
fld3
|
||||
select t2.fld3 from t2 where fld3 = 'honeysuckle';
|
||||
fld3
|
||||
select t2.fld3 from t2 where fld3 LIKE 'honeysuckl_';
|
||||
fld3
|
||||
select t2.fld3 from t2 where fld3 LIKE 'hon_ysuckl_';
|
||||
fld3
|
||||
select t2.fld3 from t2 where fld3 LIKE 'honeysuckle%';
|
||||
fld3
|
||||
select t2.fld3 from t2 where fld3 LIKE 'h%le';
|
||||
fld3
|
||||
select t2.fld3 from t2 where fld3 LIKE 'honeysuckle_';
|
||||
fld3
|
||||
select t2.fld3 from t2 where fld3 LIKE 'don_t_find_me_please%';
|
||||
fld3
|
||||
select t2.fld3 from t2 where fld3 >= 'honeysuckle' and fld3 <= 'honoring' order by fld3;
|
||||
fld3
|
||||
select fld1,fld3 from t2 where fld3="Colombo" or fld3 = "nondecreasing" order by fld3;
|
||||
fld1 fld3
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE t1 (a VARCHAR(200), b TEXT, FULLTEXT (a,b));
|
||||
INSERT INTO t1 VALUES('MySQL has now support', 'for full-text search'),
|
||||
('Full-text indexes', 'are called collections'),
|
||||
('Only MyISAM tables','support collections'),
|
||||
('Function MATCH ... AGAINST()','is used to do a search'),
|
||||
('Full-text search in MySQL', 'implements vector space model');
|
||||
SHOW INDEX FROM t1;
|
||||
Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
|
||||
t1 1 a 1 a NULL NULL NULL NULL YES FULLTEXT
|
||||
t1 1 a 2 b NULL NULL NULL NULL YES FULLTEXT
|
||||
select * from t1 where MATCH(a,b) AGAINST ("collections");
|
||||
a b
|
||||
Only MyISAM tables support collections
|
||||
Full-text indexes are called collections
|
||||
explain extended select * from t1 where MATCH(a,b) AGAINST ("collections");
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 fulltext a a 0 1 Using where
|
||||
Warnings:
|
||||
Note 1003 select `test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b` from `test`.`t1` where (match `test`.`t1`.`a`,`test`.`t1`.`b` against (_latin1'collections'))
|
||||
select * from t1 where MATCH(a,b) AGAINST ("indexes");
|
||||
a b
|
||||
Full-text indexes are called collections
|
||||
select * from t1 where MATCH(a,b) AGAINST ("indexes collections");
|
||||
a b
|
||||
Full-text indexes are called collections
|
||||
Only MyISAM tables support collections
|
||||
select * from t1 where MATCH(a,b) AGAINST ("only");
|
||||
a b
|
||||
drop table if exists t1,t2;
|
@ -77,3 +77,10 @@ big5_bin 6109
|
||||
big5_bin 61
|
||||
big5_bin 6120
|
||||
drop table t1;
|
||||
SET NAMES big5;
|
||||
CREATE TABLE t1 (a text) character set big5;
|
||||
INSERT INTO t1 VALUES ('ùØ');
|
||||
SELECT * FROM t1;
|
||||
a
|
||||
ùØ
|
||||
DROP TABLE t1;
|
||||
|
@ -1,6 +1,6 @@
|
||||
drop table if exists t1;
|
||||
SET NAMES cp1251;
|
||||
create table t1 (a varchar(10) not null);
|
||||
create table t1 (a varchar(10) not null) character set cp1251;
|
||||
insert into t1 values ("a"),("ab"),("abc");
|
||||
select * from t1;
|
||||
a
|
||||
@ -23,7 +23,7 @@ a
|
||||
b
|
||||
c
|
||||
drop table t1;
|
||||
create table t1 (a char(15) binary, b binary(15));
|
||||
create table t1 (a char(15) binary, b binary(15)) character set cp1251;
|
||||
insert into t1 values ('aaa','bbb'),('AAA','BBB');
|
||||
select upper(a),upper(b) from t1;
|
||||
upper(a) upper(b)
|
||||
|
@ -642,3 +642,11 @@ Warnings:
|
||||
Warning 1264 Out of range value adjusted for column 'Field1' at row 1
|
||||
DROP TABLE t1;
|
||||
SET NAMES latin1;
|
||||
CREATE TABLE t1 (a varchar(64) character set ucs2, b decimal(10,3));
|
||||
INSERT INTO t1 VALUES ("1.1", 0), ("2.1", 0);
|
||||
update t1 set b=a;
|
||||
SELECT * FROM t1;
|
||||
a b
|
||||
1.1 1.100
|
||||
2.1 2.100
|
||||
DROP TABLE t1;
|
||||
|
@ -871,3 +871,17 @@ drop table t1;
|
||||
select convert(_koi8r'É' using utf8) < convert(_koi8r'Ê' using utf8);
|
||||
convert(_koi8r'É' using utf8) < convert(_koi8r'Ê' using utf8)
|
||||
1
|
||||
set names latin1;
|
||||
create table t1 (a varchar(10)) character set utf8;
|
||||
insert into t1 values ('test');
|
||||
select ifnull(a,'') from t1;
|
||||
ifnull(a,'')
|
||||
test
|
||||
drop table t1;
|
||||
select repeat(_utf8'+',3) as h union select NULL;
|
||||
h
|
||||
+++
|
||||
NULL
|
||||
select ifnull(NULL, _utf8'string');
|
||||
ifnull(NULL, _utf8'string')
|
||||
string
|
||||
|
@ -79,6 +79,11 @@ concat('%d-%m-%Y',' ','%H:%i:%s.%f'));
|
||||
str_to_date(concat('15-01-2001',' 2:59:58.999'),
|
||||
concat('%d-%m-%Y',' ','%H:%i:%s.%f'))
|
||||
2001-01-15 02:59:58.999000
|
||||
select STR_TO_DATE('2004.12.12 22.30.61','%Y.%m.%d %T');
|
||||
STR_TO_DATE('2004.12.12 22.30.61','%Y.%m.%d %T')
|
||||
NULL
|
||||
Warnings:
|
||||
Error 1411 Incorrect time value: '22.30.61' for function str_to_time
|
||||
create table t1 (date char(30), format char(30) not null);
|
||||
insert into t1 values
|
||||
('2003-01-02 10:11:12', '%Y-%m-%d %H:%i:%S'),
|
||||
@ -335,6 +340,22 @@ Tuesday 52 2001 %W %V %Y NULL
|
||||
Tuesday 52 2001 %W %u %x NULL
|
||||
7 53 1998 %w %u %Y NULL
|
||||
NULL %m.%d.%Y NULL
|
||||
Warnings:
|
||||
Error 1411 Incorrect datetime value: '2003-01-02 10:11:12 PM' for function str_to_time
|
||||
Error 1411 Incorrect datetime value: '2003-01-02 10:11:12.123456' for function str_to_time
|
||||
Error 1411 Incorrect datetime value: '2003-01-02 10:11:12AM' for function str_to_time
|
||||
Error 1411 Incorrect datetime value: '2003-01-02 10:11:12AN' for function str_to_time
|
||||
Error 1411 Incorrect datetime value: '2003-01-02 10:11:12 PM' for function str_to_time
|
||||
Error 1411 Incorrect datetime value: '10:20:10AM' for function str_to_time
|
||||
Error 1411 Incorrect datetime value: '15 Septembei 2001' for function str_to_time
|
||||
Error 1411 Incorrect datetime value: '15 Ju 2001' for function str_to_time
|
||||
Error 1411 Incorrect datetime value: 'Sund 15 MA' for function str_to_time
|
||||
Error 1411 Incorrect datetime value: 'Thursdai 12 1998' for function str_to_time
|
||||
Error 1411 Incorrect datetime value: 'Sunday 01 2001' for function str_to_time
|
||||
Error 1411 Incorrect datetime value: 'Tuesday 52 2001' for function str_to_time
|
||||
Error 1411 Incorrect datetime value: 'Tuesday 52 2001' for function str_to_time
|
||||
Error 1411 Incorrect datetime value: 'Tuesday 52 2001' for function str_to_time
|
||||
Error 1411 Incorrect datetime value: '7 53 1998' for function str_to_time
|
||||
select date,format,concat(str_to_date(date, format),'') as con from t1;
|
||||
date format con
|
||||
2003-01-02 10:11:12 PM %Y-%m-%d %H:%i:%S %p NULL
|
||||
@ -353,6 +374,22 @@ Tuesday 52 2001 %W %V %Y NULL
|
||||
Tuesday 52 2001 %W %u %x NULL
|
||||
7 53 1998 %w %u %Y NULL
|
||||
NULL %m.%d.%Y NULL
|
||||
Warnings:
|
||||
Error 1411 Incorrect datetime value: '2003-01-02 10:11:12 PM' for function str_to_time
|
||||
Error 1411 Incorrect datetime value: '2003-01-02 10:11:12.123456' for function str_to_time
|
||||
Error 1411 Incorrect datetime value: '2003-01-02 10:11:12AM' for function str_to_time
|
||||
Error 1411 Incorrect datetime value: '2003-01-02 10:11:12AN' for function str_to_time
|
||||
Error 1411 Incorrect datetime value: '2003-01-02 10:11:12 PM' for function str_to_time
|
||||
Error 1411 Incorrect datetime value: '10:20:10AM' for function str_to_time
|
||||
Error 1411 Incorrect datetime value: '15 Septembei 2001' for function str_to_time
|
||||
Error 1411 Incorrect datetime value: '15 Ju 2001' for function str_to_time
|
||||
Error 1411 Incorrect datetime value: 'Sund 15 MA' for function str_to_time
|
||||
Error 1411 Incorrect datetime value: 'Thursdai 12 1998' for function str_to_time
|
||||
Error 1411 Incorrect datetime value: 'Sunday 01 2001' for function str_to_time
|
||||
Error 1411 Incorrect datetime value: 'Tuesday 52 2001' for function str_to_time
|
||||
Error 1411 Incorrect datetime value: 'Tuesday 52 2001' for function str_to_time
|
||||
Error 1411 Incorrect datetime value: 'Tuesday 52 2001' for function str_to_time
|
||||
Error 1411 Incorrect datetime value: '7 53 1998' for function str_to_time
|
||||
truncate table t1;
|
||||
insert into t1 values
|
||||
('10:20:10AM', '%h:%i:%s'),
|
||||
@ -391,6 +428,8 @@ NULL
|
||||
select str_to_date('15-01-2001 12:59:59', GET_FORMAT(DATE,'USA'));
|
||||
str_to_date('15-01-2001 12:59:59', GET_FORMAT(DATE,'USA'))
|
||||
NULL
|
||||
Warnings:
|
||||
Error 1411 Incorrect datetime value: '15-01-2001 12:59:59' for function str_to_time
|
||||
explain extended select makedate(1997,1), addtime("31.12.97 11.59.59.999999 PM", "1 1.1.1.000002"),subtime("31.12.97 11.59.59.999999 PM", "1 1.1.1.000002"),timediff("01.01.97 11:59:59.000001 PM","31.12.95 11:59:59.000002 PM"),cast(str_to_date("15-01-2001 12:59:59", "%d-%m-%Y %H:%i:%S") as TIME), maketime(23,11,12),microsecond("1997-12-31 23:59:59.000001");
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
|
||||
|
@ -106,7 +106,7 @@ CREATE TABLE federated.`t1%` (
|
||||
`name` varchar(32) NOT NULL default ''
|
||||
)
|
||||
ENGINE="FEDERATED" DEFAULT CHARSET=latin1
|
||||
COMMENT='mysql://root@127.0.0.1:9308/federated/t1%';
|
||||
COMMENT='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1%';
|
||||
INSERT INTO federated.`t1%` (id, name) VALUES (1, 'foo');
|
||||
INSERT INTO federated.`t1%` (id, name) VALUES (2, 'fee');
|
||||
SELECT * FROM federated.`t1%`;
|
||||
|
@ -783,7 +783,7 @@ insert into t1 values (now());
|
||||
create table t2 select f2 from (select max(now()) f2 from t1) a;
|
||||
show columns from t2;
|
||||
Field Type Null Key Default Extra
|
||||
f2 datetime NO 0000-00-00 00:00:00
|
||||
f2 datetime YES NULL
|
||||
drop table t2;
|
||||
create table t2 select f2 from (select now() f2 from t1) a;
|
||||
show columns from t2;
|
||||
|
@ -639,6 +639,26 @@ drop table t1;
|
||||
select charset(null), collation(null), coercibility(null);
|
||||
charset(null) collation(null) coercibility(null)
|
||||
binary binary 5
|
||||
CREATE TABLE t1 (a int, b int);
|
||||
CREATE TABLE t2 (a int, b int);
|
||||
INSERT INTO t1 VALUES (1,1),(2,2);
|
||||
INSERT INTO t2 VALUES (2,2),(3,3);
|
||||
select t1.*,t2.* from t1 left join t2 on (t1.b=t2.b)
|
||||
where collation(t2.a) = _utf8'binary' order by t1.a,t2.a;
|
||||
a b a b
|
||||
1 1 NULL NULL
|
||||
2 2 2 2
|
||||
select t1.*,t2.* from t1 left join t2 on (t1.b=t2.b)
|
||||
where charset(t2.a) = _utf8'binary' order by t1.a,t2.a;
|
||||
a b a b
|
||||
1 1 NULL NULL
|
||||
2 2 2 2
|
||||
select t1.*,t2.* from t1 left join t2 on (t1.b=t2.b)
|
||||
where coercibility(t2.a) = 2 order by t1.a,t2.a;
|
||||
a b a b
|
||||
1 1 NULL NULL
|
||||
2 2 2 2
|
||||
DROP TABLE t1, t2;
|
||||
select SUBSTR('abcdefg',3,2);
|
||||
SUBSTR('abcdefg',3,2)
|
||||
cd
|
||||
|
@ -75,4 +75,8 @@ select * from t1 where a=database();
|
||||
a
|
||||
select * from t1 where a=user();
|
||||
a
|
||||
insert into t1 values ('a');
|
||||
select left(concat(a,version()),1) from t1;
|
||||
left(concat(a,version()),1)
|
||||
a
|
||||
drop table t1;
|
||||
|
@ -10,8 +10,8 @@ GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' REQUIRE CIPHER 'EDH-RSA-DES-CBC3
|
||||
GRANT SELECT ON `mysqltest`.* TO 'mysqltest_1'@'localhost'
|
||||
grant delete on mysqltest.* to mysqltest_1@localhost;
|
||||
select * from mysql.user where user="mysqltest_1";
|
||||
Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections
|
||||
localhost mysqltest_1 N N N N N N N N N N N N N N N N N N N N N N N N N SPECIFIED EDH-RSA-DES-CBC3-SHA 0 0 0 0
|
||||
Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections
|
||||
localhost mysqltest_1 N N N N N N N N N N N N N N N N N N N N N N N N N N SPECIFIED EDH-RSA-DES-CBC3-SHA 0 0 0 0
|
||||
show grants for mysqltest_1@localhost;
|
||||
Grants for mysqltest_1@localhost
|
||||
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' REQUIRE CIPHER 'EDH-RSA-DES-CBC3-SHA'
|
||||
@ -41,15 +41,15 @@ delete from mysql.user where user='mysqltest_1';
|
||||
flush privileges;
|
||||
grant usage on *.* to mysqltest_1@localhost with max_queries_per_hour 10;
|
||||
select * from mysql.user where user="mysqltest_1";
|
||||
Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections
|
||||
localhost mysqltest_1 N N N N N N N N N N N N N N N N N N N N N N N N N 10 0 0 0
|
||||
Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections
|
||||
localhost mysqltest_1 N N N N N N N N N N N N N N N N N N N N N N N N N N 10 0 0 0
|
||||
show grants for mysqltest_1@localhost;
|
||||
Grants for mysqltest_1@localhost
|
||||
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' WITH MAX_QUERIES_PER_HOUR 10
|
||||
grant usage on *.* to mysqltest_1@localhost with max_updates_per_hour 20 max_connections_per_hour 30;
|
||||
select * from mysql.user where user="mysqltest_1";
|
||||
Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections
|
||||
localhost mysqltest_1 N N N N N N N N N N N N N N N N N N N N N N N N N 10 20 30 0
|
||||
Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections
|
||||
localhost mysqltest_1 N N N N N N N N N N N N N N N N N N N N N N N N N N 10 20 30 0
|
||||
show grants for mysqltest_1@localhost;
|
||||
Grants for mysqltest_1@localhost
|
||||
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' WITH MAX_QUERIES_PER_HOUR 10 MAX_UPDATES_PER_HOUR 20 MAX_CONNECTIONS_PER_HOUR 30
|
||||
@ -440,6 +440,7 @@ Create Databases,Tables,Indexes To create new databases and tables
|
||||
Create routine Functions,Procedures To use CREATE FUNCTION/PROCEDURE
|
||||
Create temporary tables Databases To use CREATE TEMPORARY TABLE
|
||||
Create view Tables To create new views
|
||||
Create user Server Admin To create new users
|
||||
Delete Tables To delete existing rows
|
||||
Drop Databases,Tables To drop databases, tables, and views
|
||||
Execute Functions,Procedures To execute stored routines
|
||||
|
@ -1,11 +1,13 @@
|
||||
SET NAMES binary;
|
||||
drop database if exists mysqltest;
|
||||
drop database if exists mysqltest_1;
|
||||
delete from mysql.user where user like 'mysqltest\_%';
|
||||
delete from mysql.db where user like 'mysqltest\_%';
|
||||
delete from mysql.tables_priv where user like 'mysqltest\_%';
|
||||
delete from mysql.columns_priv where user like 'mysqltest\_%';
|
||||
flush privileges;
|
||||
grant all privileges on `my\_1`.* to mysqltest_1@localhost with grant option;
|
||||
grant create user on *.* to mysqltest_1@localhost;
|
||||
create user mysqltest_2@localhost;
|
||||
grant select on `my\_1`.* to mysqltest_2@localhost;
|
||||
grant select on `my\_1`.* to mysqltest_2@localhost identified by 'pass';
|
||||
@ -13,7 +15,6 @@ ERROR 42000: You must have privileges to update tables in the mysql database to
|
||||
grant update on mysql.* to mysqltest_1@localhost;
|
||||
grant select on `my\_1`.* to mysqltest_2@localhost identified by 'pass';
|
||||
grant select on `my\_1`.* to mysqltest_3@localhost;
|
||||
ERROR 42000: 'mysqltest_1'@'localhost' is not allowed to create new users
|
||||
grant insert on mysql.* to mysqltest_1@localhost;
|
||||
grant select on `my\_1`.* to mysqltest_3@localhost;
|
||||
grant select on `my\_1`.* to mysqltest_4@localhost identified by 'pass';
|
||||
@ -23,14 +24,11 @@ delete from mysql.tables_priv where user like 'mysqltest\_%';
|
||||
delete from mysql.columns_priv where user like 'mysqltest\_%';
|
||||
flush privileges;
|
||||
grant all privileges on `my\_%`.* to mysqltest_1@localhost with grant option;
|
||||
grant create user on *.* to mysqltest_1@localhost;
|
||||
select current_user();
|
||||
current_user()
|
||||
mysqltest_1@localhost
|
||||
select current_user;
|
||||
current_user
|
||||
mysqltest_1@localhost
|
||||
grant all privileges on `my\_1`.* to mysqltest_2@localhost with grant option;
|
||||
ERROR 42000: 'mysqltest_1'@'localhost' is not allowed to create new users
|
||||
grant all privileges on `my_%`.* to mysqltest_3@localhost with grant option;
|
||||
ERROR 42000: Access denied for user 'mysqltest_1'@'localhost' to database 'my_%'
|
||||
set @@sql_mode='NO_AUTO_CREATE_USER';
|
||||
@ -38,21 +36,42 @@ select @@sql_mode;
|
||||
@@sql_mode
|
||||
NO_AUTO_CREATE_USER
|
||||
grant select on `my\_1`.* to mysqltest_4@localhost with grant option;
|
||||
ERROR 42000: 'mysqltest_1'@'localhost' is not allowed to create new users
|
||||
ERROR 42000: Can't find any matching row in the user table
|
||||
grant select on `my\_1`.* to mysqltest_4@localhost identified by 'mypass'
|
||||
with grant option;
|
||||
ERROR 42000: 'mysqltest_1'@'localhost' is not allowed to create new users
|
||||
show grants for mysqltest_1@localhost;
|
||||
Grants for mysqltest_1@localhost
|
||||
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
|
||||
GRANT CREATE USER ON *.* TO 'mysqltest_1'@'localhost'
|
||||
GRANT ALL PRIVILEGES ON `my\_%`.* TO 'mysqltest_1'@'localhost' WITH GRANT OPTION
|
||||
show grants for mysqltest_2@localhost;
|
||||
ERROR 42000: There is no such grant defined for user 'mysqltest_2' on host 'localhost'
|
||||
Grants for mysqltest_2@localhost
|
||||
GRANT USAGE ON *.* TO 'mysqltest_2'@'localhost'
|
||||
GRANT ALL PRIVILEGES ON `my\_1`.* TO 'mysqltest_2'@'localhost' WITH GRANT OPTION
|
||||
show grants for mysqltest_3@localhost;
|
||||
ERROR 42000: There is no such grant defined for user 'mysqltest_3' on host 'localhost'
|
||||
delete from mysql.user where user like 'mysqltest\_%';
|
||||
delete from mysql.db where user like 'mysqltest\_%';
|
||||
flush privileges;
|
||||
create database mysqltest_1;
|
||||
grant all privileges on `mysqltest\_1`.* to mysqltest_1@localhost with grant option;
|
||||
select current_user();
|
||||
current_user()
|
||||
mysqltest_1@localhost
|
||||
show databases;
|
||||
Database
|
||||
information_schema
|
||||
mysqltest_1
|
||||
test
|
||||
grant all privileges on `mysqltest_1`.* to mysqltest_1@localhost with grant option;
|
||||
ERROR 42000: Access denied for user 'mysqltest_1'@'localhost' to database 'mysqltest_1'
|
||||
show grants for mysqltest_1@localhost;
|
||||
Grants for mysqltest_1@localhost
|
||||
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
|
||||
GRANT ALL PRIVILEGES ON `mysqltest\_1`.* TO 'mysqltest_1'@'localhost' WITH GRANT OPTION
|
||||
delete from mysql.user where user like 'mysqltest\_%';
|
||||
delete from mysql.db where user like 'mysqltest\_%';
|
||||
drop database mysqltest_1;
|
||||
flush privileges;
|
||||
create database mysqltest;
|
||||
grant INSERT, SELECT on mysqltest.* to mysqltest_1@localhost;
|
||||
flush privileges;
|
||||
@ -77,9 +96,9 @@ flush privileges;
|
||||
create table t1 (a int, b int);
|
||||
grant select (a) on t1 to mysqltest_1@localhost with grant option;
|
||||
grant select (a,b) on t1 to mysqltest_2@localhost;
|
||||
ERROR 42000: 'mysqltest_1'@'localhost' is not allowed to create new users
|
||||
ERROR 42000: SELECT command denied to user 'mysqltest_1'@'localhost' for column 'b' in table 't1'
|
||||
grant select on t1 to mysqltest_3@localhost;
|
||||
ERROR 42000: 'mysqltest_1'@'localhost' is not allowed to create new users
|
||||
ERROR 42000: SELECT command denied to user 'mysqltest_1'@'localhost' for table 't1'
|
||||
drop table t1;
|
||||
delete from mysql.user where user like 'mysqltest\_%';
|
||||
delete from mysql.db where user like 'mysqltest\_%';
|
||||
@ -164,8 +183,6 @@ GRANT INSERT ON "test".* TO 'mysqltest_1'@'%'
|
||||
GRANT UPDATE (c2) ON "test"."t2" TO 'mysqltest_1'@'%'
|
||||
GRANT UPDATE ON "test"."t1" TO 'mysqltest_1'@'%'
|
||||
drop user 'mysqltest_1', 'mysqltest_3';
|
||||
grant all on test.t1 to 'mysqltest_1';
|
||||
ERROR 42000: 'root'@'localhost' is not allowed to create new users
|
||||
drop user 'mysqltest_1';
|
||||
ERROR HY000: Operation DROP USER failed for 'mysqltest_1'@'%'
|
||||
drop table t1, t2;
|
||||
@ -228,7 +245,7 @@ GRANT USAGE ON *.* TO '%@a'@'a'
|
||||
GRANT SELECT ON "mysql".* TO '%@a'@'a'
|
||||
drop user '%@a'@'a';
|
||||
create user mysqltest_2@localhost;
|
||||
grant usage on *.* to mysqltest_2@localhost with grant option;
|
||||
grant create user on *.* to mysqltest_2@localhost;
|
||||
select host,user,password from mysql.user where user like 'mysqltest_%' order by host,user,password;
|
||||
ERROR 42000: SELECT command denied to user 'mysqltest_2'@'localhost' for table 'user'
|
||||
create user mysqltest_A@'%';
|
||||
@ -236,19 +253,17 @@ rename user mysqltest_A@'%' to mysqltest_B@'%';
|
||||
drop user mysqltest_B@'%';
|
||||
drop user mysqltest_2@localhost;
|
||||
create user mysqltest_3@localhost;
|
||||
grant all privileges on mysql.* to mysqltest_3@localhost;
|
||||
grant INSERT,DELETE,UPDATE on mysql.* to mysqltest_3@localhost;
|
||||
show grants;
|
||||
Grants for mysqltest_3@localhost
|
||||
GRANT USAGE ON *.* TO 'mysqltest_3'@'localhost'
|
||||
GRANT INSERT, UPDATE, DELETE ON `mysql`.* TO 'mysqltest_3'@'localhost'
|
||||
select host,user,password from mysql.user where user like 'mysqltest_%' order by host,user,password;
|
||||
host user password
|
||||
% mysqltest_2 *BD447CBA355AF58578D3AE33BA2E2CD388BA08D1
|
||||
localhost mysqltest_3
|
||||
ERROR 42000: SELECT command denied to user 'mysqltest_3'@'localhost' for table 'user'
|
||||
insert into mysql.user set host='%', user='mysqltest_B';
|
||||
create user mysqltest_A@'%';
|
||||
ERROR 42000: Access denied for user 'mysqltest_3'@'localhost' to database 'mysql'
|
||||
rename user mysqltest_B@'%' to mysqltest_C@'%';
|
||||
ERROR 42000: Access denied for user 'mysqltest_3'@'localhost' to database 'mysql'
|
||||
drop user mysqltest_B@'%';
|
||||
ERROR 42000: Access denied for user 'mysqltest_3'@'localhost' to database 'mysql'
|
||||
drop user mysqltest_B@'%';
|
||||
drop user mysqltest_C@'%';
|
||||
drop user mysqltest_3@localhost;
|
||||
set @@sql_mode='';
|
||||
create database mysqltest_1;
|
||||
|
18
mysql-test/r/grant3.result
Normal file
18
mysql-test/r/grant3.result
Normal file
@ -0,0 +1,18 @@
|
||||
SET NAMES binary;
|
||||
drop table if exists t1;
|
||||
delete from mysql.user where user like 'mysqltest\_%';
|
||||
delete from mysql.db where user like 'mysqltest\_%';
|
||||
delete from mysql.tables_priv where user like 'mysqltest\_%';
|
||||
delete from mysql.columns_priv where user like 'mysqltest\_%';
|
||||
flush privileges;
|
||||
create user mysqltest_1@localhost;
|
||||
grant create user on *.* to mysqltest_1@localhost;
|
||||
grant select on `my\_1`.* to mysqltest_1@localhost with grant option;
|
||||
grant select on `my\_1`.* to mysqltest_2@localhost;
|
||||
ERROR 42000: You are not allowed to create a user with GRANT
|
||||
create user mysqltest_2@localhost;
|
||||
delete from mysql.user where user like 'mysqltest\_%';
|
||||
delete from mysql.db where user like 'mysqltest\_%';
|
||||
delete from mysql.tables_priv where user like 'mysqltest\_%';
|
||||
delete from mysql.columns_priv where user like 'mysqltest\_%';
|
||||
flush privileges;
|
@ -677,3 +677,28 @@ select sum(a)*sum(b) as d from t1 where a=1 group by c having d > 0;
|
||||
d
|
||||
10
|
||||
drop table t1;
|
||||
create table t1(a int);
|
||||
insert into t1 values (0),(1),(2),(3),(4),(5),(6),(8),(9);
|
||||
create table t2 (
|
||||
a int,
|
||||
b varchar(200) NOT NULL,
|
||||
c varchar(50) NOT NULL,
|
||||
d varchar(100) NOT NULL,
|
||||
primary key (a,b(132),c,d),
|
||||
key a (a,b)
|
||||
) charset=utf8;
|
||||
insert into t2 select
|
||||
x3.a, -- 3
|
||||
concat('val-', x3.a + 3*x4.a), -- 12
|
||||
concat('val-', @a:=x3.a + 3*x4.a + 12*C.a), -- 120
|
||||
concat('val-', @a + 120*D.a)
|
||||
from t1 x3, t1 x4, t1 C, t1 D where x3.a < 3 and x4.a < 4 and D.a < 4;
|
||||
delete from t2 where a = 2 and b = 'val-2' order by a,b,c,d limit 30;
|
||||
explain select c from t2 where a = 2 and b = 'val-2' group by c;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t2 ref PRIMARY,a PRIMARY 402 const,const 6 Using where
|
||||
select c from t2 where a = 2 and b = 'val-2' group by c;
|
||||
c
|
||||
val-74
|
||||
val-98
|
||||
drop table t1,t2;
|
||||
|
2
mysql-test/r/have_blackhole.require
Normal file
2
mysql-test/r/have_blackhole.require
Normal file
@ -0,0 +1,2 @@
|
||||
Variable_name Value
|
||||
have_blackhole_engine YES
|
@ -118,8 +118,8 @@ t2
|
||||
t3
|
||||
show table status;
|
||||
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
|
||||
t2 MyISAM 9 Fixed 0 0 0 # 1024 0 NULL # # NULL latin1_swedish_ci NULL
|
||||
t3 MyISAM 9 Fixed 0 0 0 # 1024 0 NULL # # NULL latin1_swedish_ci NULL
|
||||
t2 MyISAM 10 Fixed 0 0 0 # 1024 0 NULL # # NULL latin1_swedish_ci NULL
|
||||
t3 MyISAM 10 Fixed 0 0 0 # 1024 0 NULL # # NULL latin1_swedish_ci NULL
|
||||
v1 NULL NULL NULL NULL NULL NULL # NULL NULL NULL # # NULL NULL NULL NULL view
|
||||
show full columns from t3 like "a%";
|
||||
Field Type Collation Null Key Default Extra Privileges Comment
|
||||
@ -432,7 +432,6 @@ information_schema.tables) union select version from
|
||||
information_schema.tables;
|
||||
s1
|
||||
0
|
||||
9
|
||||
10
|
||||
drop table t1;
|
||||
SHOW CREATE TABLE INFORMATION_SCHEMA.character_sets;
|
||||
@ -442,7 +441,7 @@ character_sets CREATE TEMPORARY TABLE `character_sets` (
|
||||
`DEFAULT_COLLATE_NAME` varchar(64) NOT NULL default '',
|
||||
`DESCRIPTION` varchar(60) NOT NULL default '',
|
||||
`MAXLEN` bigint(3) NOT NULL default '0'
|
||||
) ENGINE=MEMORY DEFAULT CHARSET=utf8 MAX_ROWS=1818
|
||||
) ENGINE=MEMORY DEFAULT CHARSET=utf8
|
||||
set names latin2;
|
||||
SHOW CREATE TABLE INFORMATION_SCHEMA.character_sets;
|
||||
Table Create Table
|
||||
@ -451,7 +450,7 @@ character_sets CREATE TEMPORARY TABLE `character_sets` (
|
||||
`DEFAULT_COLLATE_NAME` varchar(64) NOT NULL default '',
|
||||
`DESCRIPTION` varchar(60) NOT NULL default '',
|
||||
`MAXLEN` bigint(3) NOT NULL default '0'
|
||||
) ENGINE=MEMORY DEFAULT CHARSET=utf8 MAX_ROWS=1818
|
||||
) ENGINE=MEMORY DEFAULT CHARSET=utf8
|
||||
set names latin1;
|
||||
create table t1 select * from information_schema.CHARACTER_SETS
|
||||
where CHARACTER_SET_NAME like "latin1";
|
||||
@ -652,6 +651,8 @@ drop table t1, t2;
|
||||
CREATE TABLE t_crashme ( f1 BIGINT);
|
||||
CREATE VIEW a1 (t_CRASHME) AS SELECT f1 FROM t_crashme GROUP BY f1;
|
||||
CREATE VIEW a2 AS SELECT t_CRASHME FROM a1;
|
||||
count(*)
|
||||
100
|
||||
drop view a2, a1;
|
||||
drop table t_crashme;
|
||||
select table_schema,table_name, column_name from
|
||||
|
@ -5,6 +5,12 @@ select ((@id := kill_id) - kill_id) from t1;
|
||||
((@id := kill_id) - kill_id)
|
||||
0
|
||||
kill @id;
|
||||
select ((@id := kill_id) - kill_id) from t1;
|
||||
((@id := kill_id) - kill_id)
|
||||
0
|
||||
select @id != connection_id();
|
||||
@id != connection_id()
|
||||
1
|
||||
select 4;
|
||||
4
|
||||
4
|
||||
|
@ -1,6 +1,6 @@
|
||||
drop table if exists t1,t2;
|
||||
select 1, 1.0, -1, "hello", NULL;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def 1 8 1 1 N 32897 0 63
|
||||
def 1.0 246 4 3 N 161 1 63
|
||||
def -1 8 2 2 N 32897 0 63
|
||||
@ -10,7 +10,7 @@ def NULL 6 0 0 Y 32896 0 63
|
||||
1 1.0 -1 hello NULL
|
||||
create table t1 (a tinyint, b smallint, c mediumint, d int, e bigint, f float(3,2), g double(4,3), h decimal(5,4), i year, j date, k timestamp, l datetime, m enum('a','b'), n set('a','b'), o char(10));
|
||||
select * from t1;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t1 t1 a a 1 4 0 Y 32768 0 63
|
||||
def test t1 t1 b b 2 6 0 Y 32768 0 63
|
||||
def test t1 t1 c c 9 9 0 Y 32768 0 63
|
||||
@ -28,7 +28,7 @@ def test t1 t1 n n 254 3 0 Y 2048 0 8
|
||||
def test t1 t1 o o 254 10 0 Y 0 0 8
|
||||
a b c d e f g h i j k l m n o
|
||||
select a b, b c from t1 as t2;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t1 t2 a b 1 4 0 Y 32768 0 63
|
||||
def test t1 t2 b c 2 6 0 Y 32768 0 63
|
||||
b c
|
||||
@ -38,7 +38,7 @@ INSERT INTO t1 VALUES (1,'male'),(2,'female');
|
||||
CREATE TABLE t2 (id tinyint(3) unsigned default NULL, data char(3) default '0');
|
||||
INSERT INTO t2 VALUES (1,'yes'),(2,'no');
|
||||
select t1.id, t1.data, t2.data from t1, t2 where t1.id = t2.id;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t1 t1 id id 1 3 1 Y 32768 0 63
|
||||
def test t1 t1 data data 253 255 6 Y 0 0 8
|
||||
def test t2 t2 data data 254 3 3 Y 0 0 8
|
||||
@ -46,7 +46,7 @@ id data data
|
||||
1 male yes
|
||||
2 female no
|
||||
select t1.id, t1.data, t2.data from t1, t2 where t1.id = t2.id order by t1.id;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t1 t1 id id 1 3 1 Y 32768 0 63
|
||||
def test t1 t1 data data 253 255 6 Y 0 0 8
|
||||
def test t2 t2 data data 254 3 3 Y 0 0 8
|
||||
@ -54,9 +54,34 @@ id data data
|
||||
1 male yes
|
||||
2 female no
|
||||
select t1.id from t1 union select t2.id from t2;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t1 t1 id id 1 3 1 Y 32768 0 63
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def id id 1 4 1 Y 32768 0 63
|
||||
id
|
||||
1
|
||||
2
|
||||
drop table t1,t2;
|
||||
create table t1 ( a int, b varchar(30), primary key(a));
|
||||
insert into t1 values (1,'one');
|
||||
insert into t1 values (2,'two');
|
||||
set @arg00=1 ;
|
||||
select @arg00 FROM t1 where a=1 union distinct select 1 FROM t1 where a=1;
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg00 @arg00 8 20 1 Y 32768 0 63
|
||||
@arg00
|
||||
1
|
||||
select * from (select @arg00) aaa;
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def aaa @arg00 @arg00 8 20 1 Y 32768 0 63
|
||||
@arg00
|
||||
1
|
||||
select 1 union select 1;
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def 1 1 8 20 1 N 32769 0 63
|
||||
1
|
||||
1
|
||||
select * from (select 1 union select 1) aaa;
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def aaa 1 1 8 20 1 N 32769 0 63
|
||||
1
|
||||
1
|
||||
drop table t1;
|
||||
|
@ -9,9 +9,9 @@ commit;
|
||||
show binlog events from 98;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 98 Query 1 # use `test`; BEGIN
|
||||
master-bin.000001 167 Query 1 # use `test`; insert into t1 values(1)
|
||||
master-bin.000001 255 Query 1 # use `test`; insert into t2 select * from t1
|
||||
master-bin.000001 350 Xid 1 # COMMIT /* xid=7 */
|
||||
master-bin.000001 166 Query 1 # use `test`; insert into t1 values(1)
|
||||
master-bin.000001 253 Query 1 # use `test`; insert into t2 select * from t1
|
||||
master-bin.000001 347 Xid 1 # COMMIT /* xid=7 */
|
||||
delete from t1;
|
||||
delete from t2;
|
||||
reset master;
|
||||
@ -24,9 +24,9 @@ Warning 1196 Some non-transactional changed tables couldn't be rolled back
|
||||
show binlog events from 98;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 98 Query 1 # use `test`; BEGIN
|
||||
master-bin.000001 167 Query 1 # use `test`; insert into t1 values(2)
|
||||
master-bin.000001 255 Query 1 # use `test`; insert into t2 select * from t1
|
||||
master-bin.000001 350 Query 1 # use `test`; ROLLBACK
|
||||
master-bin.000001 166 Query 1 # use `test`; insert into t1 values(2)
|
||||
master-bin.000001 253 Query 1 # use `test`; insert into t2 select * from t1
|
||||
master-bin.000001 347 Query 1 # use `test`; ROLLBACK
|
||||
delete from t1;
|
||||
delete from t2;
|
||||
reset master;
|
||||
@ -42,12 +42,12 @@ commit;
|
||||
show binlog events from 98;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 98 Query 1 # use `test`; BEGIN
|
||||
master-bin.000001 167 Query 1 # use `test`; insert into t1 values(3)
|
||||
master-bin.000001 255 Query 1 # use `test`; savepoint my_savepoint
|
||||
master-bin.000001 341 Query 1 # use `test`; insert into t1 values(4)
|
||||
master-bin.000001 429 Query 1 # use `test`; insert into t2 select * from t1
|
||||
master-bin.000001 524 Query 1 # use `test`; rollback to savepoint my_savepoint
|
||||
master-bin.000001 622 Xid 1 # COMMIT /* xid=24 */
|
||||
master-bin.000001 166 Query 1 # use `test`; insert into t1 values(3)
|
||||
master-bin.000001 253 Query 1 # use `test`; savepoint my_savepoint
|
||||
master-bin.000001 338 Query 1 # use `test`; insert into t1 values(4)
|
||||
master-bin.000001 425 Query 1 # use `test`; insert into t2 select * from t1
|
||||
master-bin.000001 519 Query 1 # use `test`; rollback to savepoint my_savepoint
|
||||
master-bin.000001 616 Xid 1 # COMMIT /* xid=24 */
|
||||
delete from t1;
|
||||
delete from t2;
|
||||
reset master;
|
||||
@ -68,13 +68,13 @@ a
|
||||
show binlog events from 98;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 98 Query 1 # use `test`; BEGIN
|
||||
master-bin.000001 167 Query 1 # use `test`; insert into t1 values(5)
|
||||
master-bin.000001 255 Query 1 # use `test`; savepoint my_savepoint
|
||||
master-bin.000001 341 Query 1 # use `test`; insert into t1 values(6)
|
||||
master-bin.000001 429 Query 1 # use `test`; insert into t2 select * from t1
|
||||
master-bin.000001 524 Query 1 # use `test`; rollback to savepoint my_savepoint
|
||||
master-bin.000001 622 Query 1 # use `test`; insert into t1 values(7)
|
||||
master-bin.000001 710 Xid 1 # COMMIT /* xid=36 */
|
||||
master-bin.000001 166 Query 1 # use `test`; insert into t1 values(5)
|
||||
master-bin.000001 253 Query 1 # use `test`; savepoint my_savepoint
|
||||
master-bin.000001 338 Query 1 # use `test`; insert into t1 values(6)
|
||||
master-bin.000001 425 Query 1 # use `test`; insert into t2 select * from t1
|
||||
master-bin.000001 519 Query 1 # use `test`; rollback to savepoint my_savepoint
|
||||
master-bin.000001 616 Query 1 # use `test`; insert into t1 values(7)
|
||||
master-bin.000001 703 Xid 1 # COMMIT /* xid=36 */
|
||||
delete from t1;
|
||||
delete from t2;
|
||||
reset master;
|
||||
@ -90,9 +90,9 @@ get_lock("a",10)
|
||||
show binlog events from 98;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 98 Query 1 # use `test`; BEGIN
|
||||
master-bin.000001 167 Query 1 # use `test`; insert into t1 values(8)
|
||||
master-bin.000001 255 Query 1 # use `test`; insert into t2 select * from t1
|
||||
master-bin.000001 350 Query 1 # use `test`; ROLLBACK
|
||||
master-bin.000001 166 Query 1 # use `test`; insert into t1 values(8)
|
||||
master-bin.000001 253 Query 1 # use `test`; insert into t2 select * from t1
|
||||
master-bin.000001 347 Query 1 # use `test`; ROLLBACK
|
||||
delete from t1;
|
||||
delete from t2;
|
||||
reset master;
|
||||
@ -101,8 +101,8 @@ insert into t2 select * from t1;
|
||||
show binlog events from 98;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 98 Query 1 # use `test`; insert into t1 values(9)
|
||||
master-bin.000001 186 Xid 1 # COMMIT /* xid=59 */
|
||||
master-bin.000001 213 Query 1 # use `test`; insert into t2 select * from t1
|
||||
master-bin.000001 185 Xid 1 # COMMIT /* xid=59 */
|
||||
master-bin.000001 212 Query 1 # use `test`; insert into t2 select * from t1
|
||||
delete from t1;
|
||||
delete from t2;
|
||||
reset master;
|
||||
@ -112,18 +112,18 @@ insert into t2 select * from t1;
|
||||
show binlog events from 98;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 98 Query 1 # use `test`; insert into t1 values(10)
|
||||
master-bin.000001 187 Xid 1 # COMMIT /* xid=65 */
|
||||
master-bin.000001 214 Query 1 # use `test`; insert into t2 select * from t1
|
||||
master-bin.000001 186 Xid 1 # COMMIT /* xid=65 */
|
||||
master-bin.000001 213 Query 1 # use `test`; insert into t2 select * from t1
|
||||
insert into t1 values(11);
|
||||
commit;
|
||||
show binlog events from 98;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 98 Query 1 # use `test`; insert into t1 values(10)
|
||||
master-bin.000001 187 Xid 1 # COMMIT /* xid=65 */
|
||||
master-bin.000001 214 Query 1 # use `test`; insert into t2 select * from t1
|
||||
master-bin.000001 309 Query 1 # use `test`; BEGIN
|
||||
master-bin.000001 378 Query 1 # use `test`; insert into t1 values(11)
|
||||
master-bin.000001 467 Xid 1 # COMMIT /* xid=67 */
|
||||
master-bin.000001 186 Xid 1 # COMMIT /* xid=65 */
|
||||
master-bin.000001 213 Query 1 # use `test`; insert into t2 select * from t1
|
||||
master-bin.000001 307 Query 1 # use `test`; BEGIN
|
||||
master-bin.000001 375 Query 1 # use `test`; insert into t1 values(11)
|
||||
master-bin.000001 463 Xid 1 # COMMIT /* xid=67 */
|
||||
alter table t2 engine=INNODB;
|
||||
delete from t1;
|
||||
delete from t2;
|
||||
@ -135,9 +135,9 @@ commit;
|
||||
show binlog events from 98;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 98 Query 1 # use `test`; BEGIN
|
||||
master-bin.000001 167 Query 1 # use `test`; insert into t1 values(12)
|
||||
master-bin.000001 256 Query 1 # use `test`; insert into t2 select * from t1
|
||||
master-bin.000001 351 Xid 1 # COMMIT /* xid=77 */
|
||||
master-bin.000001 166 Query 1 # use `test`; insert into t1 values(12)
|
||||
master-bin.000001 254 Query 1 # use `test`; insert into t2 select * from t1
|
||||
master-bin.000001 348 Xid 1 # COMMIT /* xid=77 */
|
||||
delete from t1;
|
||||
delete from t2;
|
||||
reset master;
|
||||
@ -160,8 +160,8 @@ commit;
|
||||
show binlog events from 98;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 98 Query 1 # use `test`; BEGIN
|
||||
master-bin.000001 167 Query 1 # use `test`; insert into t1 values(14)
|
||||
master-bin.000001 256 Xid 1 # COMMIT /* xid=93 */
|
||||
master-bin.000001 166 Query 1 # use `test`; insert into t1 values(14)
|
||||
master-bin.000001 254 Xid 1 # COMMIT /* xid=93 */
|
||||
delete from t1;
|
||||
delete from t2;
|
||||
reset master;
|
||||
@ -180,9 +180,9 @@ a
|
||||
show binlog events from 98;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 98 Query 1 # use `test`; BEGIN
|
||||
master-bin.000001 167 Query 1 # use `test`; insert into t1 values(16)
|
||||
master-bin.000001 256 Query 1 # use `test`; insert into t1 values(18)
|
||||
master-bin.000001 345 Xid 1 # COMMIT /* xid=104 */
|
||||
master-bin.000001 166 Query 1 # use `test`; insert into t1 values(16)
|
||||
master-bin.000001 254 Query 1 # use `test`; insert into t1 values(18)
|
||||
master-bin.000001 342 Xid 1 # COMMIT /* xid=104 */
|
||||
delete from t1;
|
||||
delete from t2;
|
||||
alter table t2 type=MyISAM;
|
||||
|
76
mysql-test/r/mysqlshow.result
Normal file
76
mysql-test/r/mysqlshow.result
Normal file
@ -0,0 +1,76 @@
|
||||
CREATE TABLE t1 (a int);
|
||||
INSERT INTO t1 VALUES (1),(2),(3);
|
||||
CREATE TABLE t2 (a int, b int);
|
||||
show tables;
|
||||
Tables_in_test
|
||||
t1
|
||||
t2
|
||||
select "--------------------" as "";
|
||||
|
||||
--------------------
|
||||
Database: test
|
||||
+--------+
|
||||
| Tables |
|
||||
+--------+
|
||||
| t1 |
|
||||
| t2 |
|
||||
+--------+
|
||||
select "---- -v ------------" as "";
|
||||
|
||||
---- -v ------------
|
||||
Database: test
|
||||
+--------+----------+
|
||||
| Tables | Columns |
|
||||
+--------+----------+
|
||||
| t1 | 1 |
|
||||
| t2 | 2 |
|
||||
+--------+----------+
|
||||
2 rows in set.
|
||||
|
||||
select "---- -v -v ---------" as "";
|
||||
|
||||
---- -v -v ---------
|
||||
Database: test
|
||||
+--------+----------+------------+
|
||||
| Tables | Columns | Total Rows |
|
||||
+--------+----------+------------+
|
||||
| t1 | 1 | 3 |
|
||||
| t2 | 2 | 0 |
|
||||
+--------+----------+------------+
|
||||
2 rows in set.
|
||||
|
||||
select "----- -t -----------" as "";
|
||||
|
||||
----- -t -----------
|
||||
Database: test
|
||||
+--------+------------+
|
||||
| Tables | table_type |
|
||||
+--------+------------+
|
||||
| t1 | BASE TABLE |
|
||||
| t2 | BASE TABLE |
|
||||
+--------+------------+
|
||||
select "---- -v -t ---------" as "";
|
||||
|
||||
---- -v -t ---------
|
||||
Database: test
|
||||
+--------+------------+----------+
|
||||
| Tables | table_type | Columns |
|
||||
+--------+------------+----------+
|
||||
| t1 | BASE TABLE | 1 |
|
||||
| t2 | BASE TABLE | 2 |
|
||||
+--------+------------+----------+
|
||||
2 rows in set.
|
||||
|
||||
select "---- -v -v -t ------" as "";
|
||||
|
||||
---- -v -v -t ------
|
||||
Database: test
|
||||
+--------+------------+----------+------------+
|
||||
| Tables | table_type | Columns | Total Rows |
|
||||
+--------+------------+----------+------------+
|
||||
| t1 | BASE TABLE | 1 | 3 |
|
||||
| t2 | BASE TABLE | 2 | 0 |
|
||||
+--------+------------+----------+------------+
|
||||
2 rows in set.
|
||||
|
||||
DROP TABLE t1, t2;
|
@ -144,8 +144,8 @@ Handler_discover 1
|
||||
flush tables;
|
||||
show table status;
|
||||
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
|
||||
t6 MyISAM 9 Fixed 1 260 # # # 0 NULL # # NULL # NULL #
|
||||
t7 ndbcluster 9 Fixed 1 276 # # # 0 NULL # # NULL # NULL #
|
||||
t6 MyISAM 10 Fixed 1 260 # # # 0 NULL # # NULL # NULL #
|
||||
t7 ndbcluster 10 Fixed 1 276 # # # 0 NULL # # NULL # NULL #
|
||||
show status like 'handler_discover%';
|
||||
Variable_name Value
|
||||
Handler_discover 2
|
||||
|
@ -378,6 +378,51 @@ a sum(b)
|
||||
2 6
|
||||
4 4
|
||||
NULL 14
|
||||
SELECT b, a, sum(b) FROM t1 GROUP BY a,b WITH ROLLUP;
|
||||
b a sum(b)
|
||||
4 1 4
|
||||
NULL 1 4
|
||||
1 2 2
|
||||
2 2 4
|
||||
NULL 2 6
|
||||
1 4 4
|
||||
NULL 4 4
|
||||
NULL NULL 14
|
||||
SELECT DISTINCT b,a, sum(b) FROM t1 GROUP BY a,b WITH ROLLUP;
|
||||
b a sum(b)
|
||||
4 1 4
|
||||
NULL 1 4
|
||||
1 2 2
|
||||
2 2 4
|
||||
NULL 2 6
|
||||
1 4 4
|
||||
NULL 4 4
|
||||
NULL NULL 14
|
||||
ALTER TABLE t1 ADD COLUMN c INT;
|
||||
SELECT a,b,sum(c) FROM t1 GROUP BY a,b,c WITH ROLLUP;
|
||||
a b sum(c)
|
||||
1 4 NULL
|
||||
1 4 NULL
|
||||
1 NULL NULL
|
||||
2 1 NULL
|
||||
2 1 NULL
|
||||
2 2 NULL
|
||||
2 2 NULL
|
||||
2 NULL NULL
|
||||
4 1 NULL
|
||||
4 1 NULL
|
||||
4 NULL NULL
|
||||
NULL NULL NULL
|
||||
SELECT distinct a,b,sum(c) FROM t1 GROUP BY a,b,c WITH ROLLUP;
|
||||
a b sum(c)
|
||||
1 4 NULL
|
||||
1 NULL NULL
|
||||
2 1 NULL
|
||||
2 2 NULL
|
||||
2 NULL NULL
|
||||
4 1 NULL
|
||||
4 NULL NULL
|
||||
NULL NULL NULL
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE t1 (a int, b int);
|
||||
INSERT INTO t1 VALUES
|
||||
|
@ -10,22 +10,22 @@ select * from t1;
|
||||
f1
|
||||
5
|
||||
delete from t1;
|
||||
ERROR 42000: Access denied for user 'ssl_user1'@'localhost' to database 'test'
|
||||
ERROR 42000: DELETE command denied to user 'ssl_user1'@'localhost' for table 't1'
|
||||
select * from t1;
|
||||
f1
|
||||
5
|
||||
delete from t1;
|
||||
ERROR 42000: Access denied for user 'ssl_user2'@'localhost' to database 'test'
|
||||
ERROR 42000: DELETE command denied to user 'ssl_user2'@'localhost' for table 't1'
|
||||
select * from t1;
|
||||
f1
|
||||
5
|
||||
delete from t1;
|
||||
ERROR 42000: Access denied for user 'ssl_user3'@'localhost' to database 'test'
|
||||
ERROR 42000: DELETE command denied to user 'ssl_user3'@'localhost' for table 't1'
|
||||
select * from t1;
|
||||
f1
|
||||
5
|
||||
delete from t1;
|
||||
ERROR 42000: Access denied for user 'ssl_user4'@'localhost' to database 'test'
|
||||
ERROR 42000: DELETE command denied to user 'ssl_user4'@'localhost' for table 't1'
|
||||
delete from mysql.user where user='ssl_user%';
|
||||
delete from mysql.db where user='ssl_user%';
|
||||
flush privileges;
|
||||
|
@ -290,7 +290,7 @@ t2 1 t2_idx 1 b A NULL NULL NULL YES BTREE
|
||||
prepare stmt4 from ' show table status from test like ''t2%'' ';
|
||||
execute stmt4;
|
||||
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
|
||||
t2 MyISAM 9 Fixed 0 0 0 64424509439 1024 0 NULL # # # latin1_swedish_ci NULL
|
||||
t2 MyISAM 10 Fixed 0 0 0 64424509439 1024 0 NULL # # # latin1_swedish_ci NULL
|
||||
prepare stmt4 from ' show table status from test like ''t9%'' ';
|
||||
execute stmt4;
|
||||
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
|
||||
@ -342,6 +342,7 @@ EXAMPLE YES/NO Example storage engine
|
||||
ARCHIVE YES/NO Archive storage engine
|
||||
CSV YES/NO CSV storage engine
|
||||
FEDERATED YES/NO Federated MySQL storage engine
|
||||
BLACKHOLE YES/NO /dev/null storage engine (anything you write to it disappears)
|
||||
drop table if exists t5;
|
||||
prepare stmt1 from ' drop table if exists t5 ' ;
|
||||
execute stmt1 ;
|
||||
@ -483,7 +484,7 @@ prepare stmt1 from ' KILL 0 ';
|
||||
ERROR HY000: This command is not supported in the prepared statement protocol yet
|
||||
prepare stmt1 from ' explain select a from t1 order by b ';
|
||||
execute stmt1;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def id 8 3 1 N 32929 0 63
|
||||
def select_type 253 19 6 N 1 31 8
|
||||
def table 253 64 2 N 1 31 8
|
||||
@ -499,7 +500,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
SET @arg00=1 ;
|
||||
prepare stmt1 from ' explain select a from t1 where a > ? order by b ';
|
||||
execute stmt1 using @arg00;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def id 8 3 1 N 32929 0 63
|
||||
def select_type 253 19 6 N 1 31 8
|
||||
def table 253 64 2 N 1 31 8
|
||||
|
@ -48,7 +48,7 @@ test_sequence
|
||||
------ simple select tests ------
|
||||
prepare stmt1 from ' select * from t9 order by c1 ' ;
|
||||
execute stmt1;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t9 t9 c1 c1 1 4 1 N 49155 0 63
|
||||
def test t9 t9 c2 c2 2 6 1 Y 32768 0 63
|
||||
def test t9 t9 c3 c3 9 9 1 Y 32768 0 63
|
||||
@ -768,6 +768,10 @@ prepare stmt1 from ' select a, ?, b FROM t1 outer_table where
|
||||
execute stmt1 using @arg00, @arg01, @arg02, @arg03 ;
|
||||
a ? b
|
||||
2 1 two
|
||||
prepare stmt1 from 'select c4 FROM t9 where
|
||||
c13 = (select MAX(b) from t1 where a = ?) and c22 = ? ' ;
|
||||
execute stmt1 using @arg01, @arg02;
|
||||
c4
|
||||
prepare stmt1 from ' select a, b FROM t1 outer_table where
|
||||
a = (select a from t1 where b = outer_table.b ) order by a ';
|
||||
execute stmt1 ;
|
||||
@ -1144,7 +1148,7 @@ test_sequence
|
||||
------ explain select tests ------
|
||||
prepare stmt1 from ' explain select * from t9 ' ;
|
||||
execute stmt1;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def id 8 3 1 N 32929 0 63
|
||||
def select_type 253 19 6 N 1 31 8
|
||||
def table 253 64 2 N 1 31 8
|
||||
@ -1799,7 +1803,7 @@ t5 CREATE TABLE `t5` (
|
||||
`param15` longblob
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
select * from t5 ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t5 t5 const01 const01 8 1 1 N 32769 0 63
|
||||
def test t5 t5 param01 param01 8 20 1 Y 32768 0 63
|
||||
def test t5 t5 const02 const02 246 3 3 N 1 1 63
|
||||
@ -1911,7 +1915,7 @@ from t9 where c1= 1 ;
|
||||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
@ -1958,7 +1962,7 @@ from t9 where c1= 0 ;
|
||||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
@ -2008,7 +2012,7 @@ execute stmt1 using @my_key ;
|
||||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
@ -2048,7 +2052,7 @@ execute stmt1 using @my_key ;
|
||||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
@ -2096,7 +2100,7 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
|
||||
@arg25, @arg26, @arg27, @arg28, @arg29, @arg30, @arg31, @arg32
|
||||
from t9 where c1= 1 ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
@ -2140,7 +2144,7 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
|
||||
@arg25, @arg26, @arg27, @arg28, @arg29, @arg30, @arg31, @arg32
|
||||
from t9 where c1= 0 ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
@ -2186,7 +2190,7 @@ from t9 where c1= ?" ;
|
||||
set @my_key= 1 ;
|
||||
execute stmt1 using @my_key ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
@ -2224,7 +2228,7 @@ def @arg32 253 8192 6 Y 0 31 8
|
||||
set @my_key= 0 ;
|
||||
execute stmt1 using @my_key ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
|
@ -48,7 +48,7 @@ test_sequence
|
||||
------ simple select tests ------
|
||||
prepare stmt1 from ' select * from t9 order by c1 ' ;
|
||||
execute stmt1;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t9 t9 c1 c1 1 4 1 N 49155 0 63
|
||||
def test t9 t9 c2 c2 2 6 1 Y 32768 0 63
|
||||
def test t9 t9 c3 c3 9 9 1 Y 32768 0 63
|
||||
@ -768,6 +768,10 @@ prepare stmt1 from ' select a, ?, b FROM t1 outer_table where
|
||||
execute stmt1 using @arg00, @arg01, @arg02, @arg03 ;
|
||||
a ? b
|
||||
2 1 two
|
||||
prepare stmt1 from 'select c4 FROM t9 where
|
||||
c13 = (select MAX(b) from t1 where a = ?) and c22 = ? ' ;
|
||||
execute stmt1 using @arg01, @arg02;
|
||||
c4
|
||||
prepare stmt1 from ' select a, b FROM t1 outer_table where
|
||||
a = (select a from t1 where b = outer_table.b ) order by a ';
|
||||
execute stmt1 ;
|
||||
@ -1144,7 +1148,7 @@ test_sequence
|
||||
------ explain select tests ------
|
||||
prepare stmt1 from ' explain select * from t9 ' ;
|
||||
execute stmt1;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def id 8 3 1 N 32929 0 63
|
||||
def select_type 253 19 6 N 1 31 8
|
||||
def table 253 64 2 N 1 31 8
|
||||
@ -1782,7 +1786,7 @@ t5 CREATE TABLE `t5` (
|
||||
`param15` longblob
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
select * from t5 ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t5 t5 const01 const01 8 1 1 N 32769 0 63
|
||||
def test t5 t5 param01 param01 8 20 1 Y 32768 0 63
|
||||
def test t5 t5 const02 const02 246 3 3 N 1 1 63
|
||||
@ -1894,7 +1898,7 @@ from t9 where c1= 1 ;
|
||||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
@ -1941,7 +1945,7 @@ from t9 where c1= 0 ;
|
||||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
@ -1991,7 +1995,7 @@ execute stmt1 using @my_key ;
|
||||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
@ -2031,7 +2035,7 @@ execute stmt1 using @my_key ;
|
||||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
@ -2079,7 +2083,7 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
|
||||
@arg25, @arg26, @arg27, @arg28, @arg29, @arg30, @arg31, @arg32
|
||||
from t9 where c1= 1 ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
@ -2123,7 +2127,7 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
|
||||
@arg25, @arg26, @arg27, @arg28, @arg29, @arg30, @arg31, @arg32
|
||||
from t9 where c1= 0 ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
@ -2169,7 +2173,7 @@ from t9 where c1= ?" ;
|
||||
set @my_key= 1 ;
|
||||
execute stmt1 using @my_key ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
@ -2207,7 +2211,7 @@ def @arg32 253 8192 6 Y 0 31 8
|
||||
set @my_key= 0 ;
|
||||
execute stmt1 using @my_key ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
|
@ -49,7 +49,7 @@ test_sequence
|
||||
------ simple select tests ------
|
||||
prepare stmt1 from ' select * from t9 order by c1 ' ;
|
||||
execute stmt1;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t9 t9 c1 c1 1 4 1 N 49155 0 63
|
||||
def test t9 t9 c2 c2 2 6 1 Y 32768 0 63
|
||||
def test t9 t9 c3 c3 9 9 1 Y 32768 0 63
|
||||
@ -769,6 +769,10 @@ prepare stmt1 from ' select a, ?, b FROM t1 outer_table where
|
||||
execute stmt1 using @arg00, @arg01, @arg02, @arg03 ;
|
||||
a ? b
|
||||
2 1 two
|
||||
prepare stmt1 from 'select c4 FROM t9 where
|
||||
c13 = (select MAX(b) from t1 where a = ?) and c22 = ? ' ;
|
||||
execute stmt1 using @arg01, @arg02;
|
||||
c4
|
||||
prepare stmt1 from ' select a, b FROM t1 outer_table where
|
||||
a = (select a from t1 where b = outer_table.b ) order by a ';
|
||||
execute stmt1 ;
|
||||
@ -1145,7 +1149,7 @@ test_sequence
|
||||
------ explain select tests ------
|
||||
prepare stmt1 from ' explain select * from t9 ' ;
|
||||
execute stmt1;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def id 8 3 1 N 32929 0 63
|
||||
def select_type 253 19 6 N 1 31 8
|
||||
def table 253 64 2 N 1 31 8
|
||||
@ -1783,7 +1787,7 @@ t5 CREATE TABLE `t5` (
|
||||
`param15` longblob
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
select * from t5 ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t5 t5 const01 const01 8 1 1 N 32769 0 63
|
||||
def test t5 t5 param01 param01 8 20 1 Y 32768 0 63
|
||||
def test t5 t5 const02 const02 246 3 3 N 1 1 63
|
||||
@ -1895,7 +1899,7 @@ from t9 where c1= 1 ;
|
||||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
@ -1942,7 +1946,7 @@ from t9 where c1= 0 ;
|
||||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
@ -1992,7 +1996,7 @@ execute stmt1 using @my_key ;
|
||||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
@ -2032,7 +2036,7 @@ execute stmt1 using @my_key ;
|
||||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
@ -2080,7 +2084,7 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
|
||||
@arg25, @arg26, @arg27, @arg28, @arg29, @arg30, @arg31, @arg32
|
||||
from t9 where c1= 1 ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
@ -2124,7 +2128,7 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
|
||||
@arg25, @arg26, @arg27, @arg28, @arg29, @arg30, @arg31, @arg32
|
||||
from t9 where c1= 0 ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
@ -2170,7 +2174,7 @@ from t9 where c1= ?" ;
|
||||
set @my_key= 1 ;
|
||||
execute stmt1 using @my_key ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
@ -2208,7 +2212,7 @@ def @arg32 253 8192 6 Y 0 31 8
|
||||
set @my_key= 0 ;
|
||||
execute stmt1 using @my_key ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
|
@ -91,7 +91,7 @@ test_sequence
|
||||
------ simple select tests ------
|
||||
prepare stmt1 from ' select * from t9 order by c1 ' ;
|
||||
execute stmt1;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t9 t9 c1 c1 1 4 1 N 49155 0 63
|
||||
def test t9 t9 c2 c2 2 6 1 Y 32768 0 63
|
||||
def test t9 t9 c3 c3 9 9 1 Y 32768 0 63
|
||||
@ -811,6 +811,10 @@ prepare stmt1 from ' select a, ?, b FROM t1 outer_table where
|
||||
execute stmt1 using @arg00, @arg01, @arg02, @arg03 ;
|
||||
a ? b
|
||||
2 1 two
|
||||
prepare stmt1 from 'select c4 FROM t9 where
|
||||
c13 = (select MAX(b) from t1 where a = ?) and c22 = ? ' ;
|
||||
execute stmt1 using @arg01, @arg02;
|
||||
c4
|
||||
prepare stmt1 from ' select a, b FROM t1 outer_table where
|
||||
a = (select a from t1 where b = outer_table.b ) order by a ';
|
||||
execute stmt1 ;
|
||||
@ -1187,7 +1191,7 @@ test_sequence
|
||||
------ explain select tests ------
|
||||
prepare stmt1 from ' explain select * from t9 ' ;
|
||||
execute stmt1;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def id 8 3 1 N 32929 0 63
|
||||
def select_type 253 19 6 N 1 31 8
|
||||
def table 253 64 2 N 1 31 8
|
||||
@ -1719,7 +1723,7 @@ t5 CREATE TABLE `t5` (
|
||||
`param15` longblob
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
select * from t5 ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t5 t5 const01 const01 8 1 1 N 32769 0 63
|
||||
def test t5 t5 param01 param01 8 20 1 Y 32768 0 63
|
||||
def test t5 t5 const02 const02 246 3 3 N 1 1 63
|
||||
@ -1831,7 +1835,7 @@ from t9 where c1= 1 ;
|
||||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
@ -1878,7 +1882,7 @@ from t9 where c1= 0 ;
|
||||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
@ -1928,7 +1932,7 @@ execute stmt1 using @my_key ;
|
||||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
@ -1968,7 +1972,7 @@ execute stmt1 using @my_key ;
|
||||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
@ -2016,7 +2020,7 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
|
||||
@arg25, @arg26, @arg27, @arg28, @arg29, @arg30, @arg31, @arg32
|
||||
from t9 where c1= 1 ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
@ -2060,7 +2064,7 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
|
||||
@arg25, @arg26, @arg27, @arg28, @arg29, @arg30, @arg31, @arg32
|
||||
from t9 where c1= 0 ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
@ -2106,7 +2110,7 @@ from t9 where c1= ?" ;
|
||||
set @my_key= 1 ;
|
||||
execute stmt1 using @my_key ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
@ -2144,7 +2148,7 @@ def @arg32 253 8192 6 Y 0 31 8
|
||||
set @my_key= 0 ;
|
||||
execute stmt1 using @my_key ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
@ -3100,7 +3104,7 @@ test_sequence
|
||||
------ simple select tests ------
|
||||
prepare stmt1 from ' select * from t9 order by c1 ' ;
|
||||
execute stmt1;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t9 t9 c1 c1 1 4 1 N 49155 0 63
|
||||
def test t9 t9 c2 c2 2 6 1 Y 32768 0 63
|
||||
def test t9 t9 c3 c3 9 9 1 Y 32768 0 63
|
||||
@ -3820,6 +3824,10 @@ prepare stmt1 from ' select a, ?, b FROM t1 outer_table where
|
||||
execute stmt1 using @arg00, @arg01, @arg02, @arg03 ;
|
||||
a ? b
|
||||
2 1 two
|
||||
prepare stmt1 from 'select c4 FROM t9 where
|
||||
c13 = (select MAX(b) from t1 where a = ?) and c22 = ? ' ;
|
||||
execute stmt1 using @arg01, @arg02;
|
||||
c4
|
||||
prepare stmt1 from ' select a, b FROM t1 outer_table where
|
||||
a = (select a from t1 where b = outer_table.b ) order by a ';
|
||||
execute stmt1 ;
|
||||
@ -4196,7 +4204,7 @@ test_sequence
|
||||
------ explain select tests ------
|
||||
prepare stmt1 from ' explain select * from t9 ' ;
|
||||
execute stmt1;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def id 8 3 1 N 32929 0 63
|
||||
def select_type 253 19 6 N 1 31 8
|
||||
def table 253 64 2 N 1 31 8
|
||||
@ -4728,7 +4736,7 @@ t5 CREATE TABLE `t5` (
|
||||
`param15` longblob
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
select * from t5 ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t5 t5 const01 const01 8 1 1 N 32769 0 63
|
||||
def test t5 t5 param01 param01 8 20 1 Y 32768 0 63
|
||||
def test t5 t5 const02 const02 246 3 3 N 1 1 63
|
||||
@ -4840,7 +4848,7 @@ from t9 where c1= 1 ;
|
||||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
@ -4887,7 +4895,7 @@ from t9 where c1= 0 ;
|
||||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
@ -4937,7 +4945,7 @@ execute stmt1 using @my_key ;
|
||||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
@ -4977,7 +4985,7 @@ execute stmt1 using @my_key ;
|
||||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
@ -5025,7 +5033,7 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
|
||||
@arg25, @arg26, @arg27, @arg28, @arg29, @arg30, @arg31, @arg32
|
||||
from t9 where c1= 1 ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
@ -5069,7 +5077,7 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
|
||||
@arg25, @arg26, @arg27, @arg28, @arg29, @arg30, @arg31, @arg32
|
||||
from t9 where c1= 0 ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
@ -5115,7 +5123,7 @@ from t9 where c1= ?" ;
|
||||
set @my_key= 1 ;
|
||||
execute stmt1 using @my_key ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
@ -5153,7 +5161,7 @@ def @arg32 253 8192 6 Y 0 31 8
|
||||
set @my_key= 0 ;
|
||||
execute stmt1 using @my_key ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
|
@ -48,7 +48,7 @@ test_sequence
|
||||
------ simple select tests ------
|
||||
prepare stmt1 from ' select * from t9 order by c1 ' ;
|
||||
execute stmt1;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t9 t9 c1 c1 1 4 1 N 49155 0 63
|
||||
def test t9 t9 c2 c2 2 6 1 Y 32768 0 63
|
||||
def test t9 t9 c3 c3 9 9 1 Y 32768 0 63
|
||||
@ -768,6 +768,10 @@ prepare stmt1 from ' select a, ?, b FROM t1 outer_table where
|
||||
execute stmt1 using @arg00, @arg01, @arg02, @arg03 ;
|
||||
a ? b
|
||||
2 1 two
|
||||
prepare stmt1 from 'select c4 FROM t9 where
|
||||
c13 = (select MAX(b) from t1 where a = ?) and c22 = ? ' ;
|
||||
execute stmt1 using @arg01, @arg02;
|
||||
c4
|
||||
prepare stmt1 from ' select a, b FROM t1 outer_table where
|
||||
a = (select a from t1 where b = outer_table.b ) order by a ';
|
||||
execute stmt1 ;
|
||||
@ -1144,7 +1148,7 @@ test_sequence
|
||||
------ explain select tests ------
|
||||
prepare stmt1 from ' explain select * from t9 ' ;
|
||||
execute stmt1;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def id 8 3 1 N 32929 0 63
|
||||
def select_type 253 19 6 N 1 31 8
|
||||
def table 253 64 2 N 1 31 8
|
||||
@ -1782,7 +1786,7 @@ t5 CREATE TABLE `t5` (
|
||||
`param15` longblob
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
select * from t5 ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t5 t5 const01 const01 8 1 1 N 32769 0 63
|
||||
def test t5 t5 param01 param01 8 20 1 Y 32768 0 63
|
||||
def test t5 t5 const02 const02 246 3 3 N 1 1 63
|
||||
@ -1894,7 +1898,7 @@ from t9 where c1= 1 ;
|
||||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
@ -1941,7 +1945,7 @@ from t9 where c1= 0 ;
|
||||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
@ -1991,7 +1995,7 @@ execute stmt1 using @my_key ;
|
||||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
@ -2031,7 +2035,7 @@ execute stmt1 using @my_key ;
|
||||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
@ -2079,7 +2083,7 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
|
||||
@arg25, @arg26, @arg27, @arg28, @arg29, @arg30, @arg31, @arg32
|
||||
from t9 where c1= 1 ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
@ -2123,7 +2127,7 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
|
||||
@arg25, @arg26, @arg27, @arg28, @arg29, @arg30, @arg31, @arg32
|
||||
from t9 where c1= 0 ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
@ -2169,7 +2173,7 @@ from t9 where c1= ?" ;
|
||||
set @my_key= 1 ;
|
||||
execute stmt1 using @my_key ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
@ -2207,7 +2211,7 @@ def @arg32 253 8192 6 Y 0 31 8
|
||||
set @my_key= 0 ;
|
||||
execute stmt1 using @my_key ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
|
@ -48,7 +48,7 @@ test_sequence
|
||||
------ simple select tests ------
|
||||
prepare stmt1 from ' select * from t9 order by c1 ' ;
|
||||
execute stmt1;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t9 t9 c1 c1 1 4 1 N 49155 0 63
|
||||
def test t9 t9 c2 c2 2 6 1 Y 32768 0 63
|
||||
def test t9 t9 c3 c3 9 9 1 Y 32768 0 63
|
||||
@ -768,6 +768,10 @@ prepare stmt1 from ' select a, ?, b FROM t1 outer_table where
|
||||
execute stmt1 using @arg00, @arg01, @arg02, @arg03 ;
|
||||
a ? b
|
||||
2 1 two
|
||||
prepare stmt1 from 'select c4 FROM t9 where
|
||||
c13 = (select MAX(b) from t1 where a = ?) and c22 = ? ' ;
|
||||
execute stmt1 using @arg01, @arg02;
|
||||
c4
|
||||
prepare stmt1 from ' select a, b FROM t1 outer_table where
|
||||
a = (select a from t1 where b = outer_table.b ) order by a ';
|
||||
execute stmt1 ;
|
||||
@ -1144,7 +1148,7 @@ test_sequence
|
||||
------ explain select tests ------
|
||||
prepare stmt1 from ' explain select * from t9 ' ;
|
||||
execute stmt1;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def id 8 3 1 N 32929 0 63
|
||||
def select_type 253 19 6 N 1 31 8
|
||||
def table 253 64 2 N 1 31 8
|
||||
@ -1782,7 +1786,7 @@ t5 CREATE TABLE `t5` (
|
||||
`param15` longblob
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
select * from t5 ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t5 t5 const01 const01 8 1 1 N 32769 0 63
|
||||
def test t5 t5 param01 param01 8 20 1 Y 32768 0 63
|
||||
def test t5 t5 const02 const02 246 3 3 N 1 1 63
|
||||
@ -1894,7 +1898,7 @@ from t9 where c1= 1 ;
|
||||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
@ -1941,7 +1945,7 @@ from t9 where c1= 0 ;
|
||||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
@ -1991,7 +1995,7 @@ execute stmt1 using @my_key ;
|
||||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
@ -2031,7 +2035,7 @@ execute stmt1 using @my_key ;
|
||||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
@ -2079,7 +2083,7 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
|
||||
@arg25, @arg26, @arg27, @arg28, @arg29, @arg30, @arg31, @arg32
|
||||
from t9 where c1= 1 ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
@ -2123,7 +2127,7 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
|
||||
@arg25, @arg26, @arg27, @arg28, @arg29, @arg30, @arg31, @arg32
|
||||
from t9 where c1= 0 ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
@ -2169,7 +2173,7 @@ from t9 where c1= ?" ;
|
||||
set @my_key= 1 ;
|
||||
execute stmt1 using @my_key ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
@ -2207,7 +2211,7 @@ def @arg32 253 8192 6 Y 0 31 8
|
||||
set @my_key= 0 ;
|
||||
execute stmt1 using @my_key ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
|
@ -13,11 +13,11 @@ insert into t1 values(2);
|
||||
stop slave;
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 360 # # master-bin.000001 No No 0 0 184 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 357 # # master-bin.000001 No No 0 0 183 # None 0 No #
|
||||
change master to master_user='root';
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 184 # # master-bin.000001 No No 0 0 184 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 183 # # master-bin.000001 No No 0 0 183 # None 0 No #
|
||||
start slave;
|
||||
select * from t1;
|
||||
n
|
||||
|
@ -8,6 +8,9 @@ create table t1 (a int not null, key(a)) engine=innodb;
|
||||
create table t2 (a int not null, key(a)) engine=innodb;
|
||||
create table t3 (a int) engine=innodb;
|
||||
create table t4 (a int) engine=innodb;
|
||||
show variables like 'slave_transaction_retries';
|
||||
Variable_name Value
|
||||
slave_transaction_retries 10
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
@ -20,6 +23,9 @@ t2 CREATE TABLE `t2` (
|
||||
`a` int(11) NOT NULL,
|
||||
KEY `a` (`a`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1
|
||||
show variables like 'slave_transaction_retries';
|
||||
Variable_name Value
|
||||
slave_transaction_retries 2
|
||||
stop slave;
|
||||
begin;
|
||||
insert into t3 select * from t2 for update;
|
||||
@ -39,9 +45,9 @@ a
|
||||
22
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 19118 # # master-bin.000001 Yes Yes 0 0 19118 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 18911 # # master-bin.000001 Yes Yes 0 0 18911 # None 0 No #
|
||||
stop slave;
|
||||
change master to master_log_pos=536;
|
||||
change master to master_log_pos=532;
|
||||
begin;
|
||||
select * from t2 for update;
|
||||
a
|
||||
@ -57,10 +63,10 @@ a
|
||||
22
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 19118 # # master-bin.000001 Yes Yes 0 0 19118 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 18911 # # master-bin.000001 Yes Yes 0 0 18911 # None 0 No #
|
||||
set global max_relay_log_size=0;
|
||||
stop slave;
|
||||
change master to master_log_pos=536;
|
||||
change master to master_log_pos=532;
|
||||
begin;
|
||||
select * from t2 for update;
|
||||
a
|
||||
@ -77,5 +83,5 @@ a
|
||||
22
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 19118 # # master-bin.000001 Yes Yes 0 0 19118 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 18911 # # master-bin.000001 Yes Yes 0 0 18911 # None 0 No #
|
||||
drop table t1,t2;
|
||||
|
@ -10,3 +10,4 @@ create temporary table mysqltest.t2 (n int);
|
||||
show status like 'Slave_open_temp_tables';
|
||||
Variable_name Value
|
||||
Slave_open_temp_tables 0
|
||||
drop database mysqltest;
|
||||
|
@ -9,7 +9,7 @@ insert into t1 values (1),(1);
|
||||
ERROR 23000: Duplicate entry '1' for key 1
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 290 # # master-bin.000001 Yes Yes test.t3,test.t1,test.t2 0 0 290 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 288 # # master-bin.000001 Yes Yes test.t3,test.t1,test.t2 0 0 288 # None 0 No #
|
||||
show tables like 't1';
|
||||
Tables_in_test (t1)
|
||||
drop table t1;
|
||||
|
@ -14,4 +14,4 @@ start slave;
|
||||
flush logs;
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root SLAVE_PORT 60 slave-bin.000001 209 # # slave-bin.000001 Yes Yes 0 0 209 # None 0 No #
|
||||
# 127.0.0.1 root SLAVE_PORT 60 slave-bin.000001 208 # # slave-bin.000001 Yes Yes 0 0 208 # None 0 No #
|
||||
|
@ -22,7 +22,7 @@ day id category name
|
||||
2003-03-22 2416 a bbbbb
|
||||
show master status;
|
||||
File Position Binlog_Do_DB Binlog_Ignore_DB
|
||||
slave-bin.000001 1292
|
||||
slave-bin.000001 1286
|
||||
drop table t1;
|
||||
drop table t2;
|
||||
drop table t3;
|
||||
@ -33,7 +33,7 @@ set global sql_slave_skip_counter=1;
|
||||
start slave;
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 1800 # # master-bin.000001 Yes Yes 0 0 1800 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 1789 # # master-bin.000001 Yes Yes 0 0 1789 # None 0 No #
|
||||
set sql_log_bin=0;
|
||||
delete from t1;
|
||||
set sql_log_bin=1;
|
||||
@ -43,7 +43,7 @@ change master to master_user='test';
|
||||
change master to master_user='root';
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 1835 # # master-bin.000001 No No 0 0 1835 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 1824 # # master-bin.000001 No No 0 0 1824 # None 0 No #
|
||||
set global sql_slave_skip_counter=1;
|
||||
start slave;
|
||||
set sql_log_bin=0;
|
||||
@ -57,12 +57,25 @@ Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File
|
||||
# 127.0.0.1 root MASTER_PORT 1 4 # # No No 0 0 0 # None 0 No #
|
||||
reset master;
|
||||
create table t2 (day date,id int(9),category enum('a','b','c'),name varchar(60),
|
||||
unique(day));
|
||||
unique(day)) engine=MyISAM;
|
||||
load data infile '../../std_data/rpl_loaddata2.dat' into table t2 fields
|
||||
terminated by ',' optionally enclosed by '%' escaped by '@' lines terminated by
|
||||
'\n##\n' starting by '>' ignore 1 lines;
|
||||
ERROR 23000: Duplicate entry '2003-03-22' for key 1
|
||||
select * from t2;
|
||||
day id category name
|
||||
2003-02-22 2461 b a a a @ % ' " a
|
||||
2003-03-22 2161 c asdf
|
||||
start slave;
|
||||
select * from t2;
|
||||
day id category name
|
||||
2003-02-22 2461 b a a a @ % ' " a
|
||||
2003-03-22 2161 c asdf
|
||||
alter table t2 drop key day;
|
||||
delete from t2;
|
||||
load data infile '../../std_data/rpl_loaddata2.dat' into table t2 fields
|
||||
terminated by ',' optionally enclosed by '%' escaped by '@' lines terminated by
|
||||
'\n##\n' starting by '>' ignore 1 lines;
|
||||
ERROR 23000: Duplicate entry '2003-03-22' for key 1
|
||||
show master status;
|
||||
File Position Binlog_Do_DB Binlog_Ignore_DB
|
||||
master-bin.000001 441
|
||||
drop table t2;
|
||||
drop table t2;
|
||||
|
@ -20,24 +20,24 @@ drop table t1;
|
||||
show binlog events;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 4 Format_desc 1 98 Server ver: VERSION, Binlog ver: 4
|
||||
master-bin.000001 98 Query 1 220 use `test`; create table t1(n int not null auto_increment primary key)
|
||||
master-bin.000001 220 Intvar 1 248 INSERT_ID=1
|
||||
master-bin.000001 248 Query 1 340 use `test`; insert into t1 values (NULL)
|
||||
master-bin.000001 340 Query 1 417 use `test`; drop table t1
|
||||
master-bin.000001 417 Query 1 521 use `test`; create table t1 (word char(20) not null)
|
||||
master-bin.000001 521 Begin_load_query 1 1125 ;file_id=1;block_len=581
|
||||
master-bin.000001 1125 Execute_load_query 1 1274 use `test`; load data infile '../../std_data/words.dat' into table t1 ignore 1 lines ;file_id=1
|
||||
master-bin.000001 1274 Query 1 1351 use `test`; drop table t1
|
||||
master-bin.000001 98 Query 1 219 use `test`; create table t1(n int not null auto_increment primary key)
|
||||
master-bin.000001 219 Intvar 1 247 INSERT_ID=1
|
||||
master-bin.000001 247 Query 1 338 use `test`; insert into t1 values (NULL)
|
||||
master-bin.000001 338 Query 1 414 use `test`; drop table t1
|
||||
master-bin.000001 414 Query 1 517 use `test`; create table t1 (word char(20) not null)
|
||||
master-bin.000001 517 Begin_load_query 1 1121 ;file_id=1;block_len=581
|
||||
master-bin.000001 1121 Execute_load_query 1 1269 use `test`; load data infile '../../std_data/words.dat' into table t1 ignore 1 lines ;file_id=1
|
||||
master-bin.000001 1269 Query 1 1345 use `test`; drop table t1
|
||||
show binlog events from 98 limit 1;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 98 Query 1 220 use `test`; create table t1(n int not null auto_increment primary key)
|
||||
master-bin.000001 98 Query 1 219 use `test`; create table t1(n int not null auto_increment primary key)
|
||||
show binlog events from 98 limit 2;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 98 Query 1 220 use `test`; create table t1(n int not null auto_increment primary key)
|
||||
master-bin.000001 220 Intvar 1 248 INSERT_ID=1
|
||||
master-bin.000001 98 Query 1 219 use `test`; create table t1(n int not null auto_increment primary key)
|
||||
master-bin.000001 219 Intvar 1 247 INSERT_ID=1
|
||||
show binlog events from 98 limit 2,1;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 248 Query 1 340 use `test`; insert into t1 values (NULL)
|
||||
master-bin.000001 247 Query 1 338 use `test`; insert into t1 values (NULL)
|
||||
flush logs;
|
||||
create table t5 (a int);
|
||||
drop table t5;
|
||||
@ -50,23 +50,23 @@ drop table t1;
|
||||
show binlog events;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 4 Format_desc 1 98 Server ver: VERSION, Binlog ver: 4
|
||||
master-bin.000001 98 Query 1 220 use `test`; create table t1(n int not null auto_increment primary key)
|
||||
master-bin.000001 220 Intvar 1 248 INSERT_ID=1
|
||||
master-bin.000001 248 Query 1 340 use `test`; insert into t1 values (NULL)
|
||||
master-bin.000001 340 Query 1 417 use `test`; drop table t1
|
||||
master-bin.000001 417 Query 1 521 use `test`; create table t1 (word char(20) not null)
|
||||
master-bin.000001 521 Begin_load_query 1 1125 ;file_id=1;block_len=581
|
||||
master-bin.000001 1125 Execute_load_query 1 1274 use `test`; load data infile '../../std_data/words.dat' into table t1 ignore 1 lines ;file_id=1
|
||||
master-bin.000001 1274 Query 1 1351 use `test`; drop table t1
|
||||
master-bin.000001 1351 Rotate 1 1395 master-bin.000002;pos=4
|
||||
master-bin.000001 98 Query 1 219 use `test`; create table t1(n int not null auto_increment primary key)
|
||||
master-bin.000001 219 Intvar 1 247 INSERT_ID=1
|
||||
master-bin.000001 247 Query 1 338 use `test`; insert into t1 values (NULL)
|
||||
master-bin.000001 338 Query 1 414 use `test`; drop table t1
|
||||
master-bin.000001 414 Query 1 517 use `test`; create table t1 (word char(20) not null)
|
||||
master-bin.000001 517 Begin_load_query 1 1121 ;file_id=1;block_len=581
|
||||
master-bin.000001 1121 Execute_load_query 1 1269 use `test`; load data infile '../../std_data/words.dat' into table t1 ignore 1 lines ;file_id=1
|
||||
master-bin.000001 1269 Query 1 1345 use `test`; drop table t1
|
||||
master-bin.000001 1345 Rotate 1 1389 master-bin.000002;pos=4
|
||||
show binlog events in 'master-bin.000002';
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000002 4 Format_desc 1 98 Server ver: VERSION, Binlog ver: 4
|
||||
master-bin.000002 98 Query 1 185 use `test`; create table t5 (a int)
|
||||
master-bin.000002 185 Query 1 262 use `test`; drop table t5
|
||||
master-bin.000002 262 Query 1 349 use `test`; create table t1 (n int)
|
||||
master-bin.000002 349 Query 1 438 use `test`; insert into t1 values (1)
|
||||
master-bin.000002 438 Query 1 515 use `test`; drop table t1
|
||||
master-bin.000002 98 Query 1 184 use `test`; create table t5 (a int)
|
||||
master-bin.000002 184 Query 1 260 use `test`; drop table t5
|
||||
master-bin.000002 260 Query 1 346 use `test`; create table t1 (n int)
|
||||
master-bin.000002 346 Query 1 434 use `test`; insert into t1 values (1)
|
||||
master-bin.000002 434 Query 1 510 use `test`; drop table t1
|
||||
show binary logs;
|
||||
Log_name
|
||||
master-bin.000001
|
||||
@ -79,25 +79,25 @@ slave-bin.000002
|
||||
show binlog events in 'slave-bin.000001' from 4;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
slave-bin.000001 4 Format_desc 2 98 Server ver: VERSION, Binlog ver: 4
|
||||
slave-bin.000001 98 Query 1 220 use `test`; create table t1(n int not null auto_increment primary key)
|
||||
slave-bin.000001 220 Intvar 1 248 INSERT_ID=1
|
||||
slave-bin.000001 248 Query 1 340 use `test`; insert into t1 values (NULL)
|
||||
slave-bin.000001 340 Query 1 417 use `test`; drop table t1
|
||||
slave-bin.000001 417 Query 1 521 use `test`; create table t1 (word char(20) not null)
|
||||
slave-bin.000001 521 Begin_load_query 1 1125 ;file_id=1;block_len=581
|
||||
slave-bin.000001 1125 Execute_load_query 1 1283 use `test`; load data INFILE '../../var/tmp/SQL_LOAD-2-1-1.data' INTO table t1 ignore 1 lines ;file_id=1
|
||||
slave-bin.000001 1283 Query 1 1360 use `test`; drop table t1
|
||||
slave-bin.000001 1360 Query 1 1447 use `test`; create table t5 (a int)
|
||||
slave-bin.000001 1447 Query 1 1524 use `test`; drop table t5
|
||||
slave-bin.000001 1524 Rotate 2 1567 slave-bin.000002;pos=4
|
||||
slave-bin.000001 98 Query 1 219 use `test`; create table t1(n int not null auto_increment primary key)
|
||||
slave-bin.000001 219 Intvar 1 247 INSERT_ID=1
|
||||
slave-bin.000001 247 Query 1 338 use `test`; insert into t1 values (NULL)
|
||||
slave-bin.000001 338 Query 1 414 use `test`; drop table t1
|
||||
slave-bin.000001 414 Query 1 517 use `test`; create table t1 (word char(20) not null)
|
||||
slave-bin.000001 517 Begin_load_query 1 1121 ;file_id=1;block_len=581
|
||||
slave-bin.000001 1121 Execute_load_query 1 1278 use `test`; load data INFILE '../../var/tmp/SQL_LOAD-2-1-1.data' INTO table t1 ignore 1 lines ;file_id=1
|
||||
slave-bin.000001 1278 Query 1 1354 use `test`; drop table t1
|
||||
slave-bin.000001 1354 Query 1 1440 use `test`; create table t5 (a int)
|
||||
slave-bin.000001 1440 Query 1 1516 use `test`; drop table t5
|
||||
slave-bin.000001 1516 Rotate 2 1559 slave-bin.000002;pos=4
|
||||
show binlog events in 'slave-bin.000002' from 4;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
slave-bin.000002 4 Format_desc 2 98 Server ver: VERSION, Binlog ver: 4
|
||||
slave-bin.000002 98 Query 1 185 use `test`; create table t1 (n int)
|
||||
slave-bin.000002 185 Query 1 274 use `test`; insert into t1 values (1)
|
||||
slave-bin.000002 274 Query 1 351 use `test`; drop table t1
|
||||
slave-bin.000002 98 Query 1 184 use `test`; create table t1 (n int)
|
||||
slave-bin.000002 184 Query 1 272 use `test`; insert into t1 values (1)
|
||||
slave-bin.000002 272 Query 1 348 use `test`; drop table t1
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000002 515 # # master-bin.000002 Yes Yes 0 0 515 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000002 510 # # master-bin.000002 Yes Yes 0 0 510 # None 0 No #
|
||||
show binlog events in 'slave-bin.000005' from 4;
|
||||
ERROR HY000: Error when executing command SHOW BINLOG EVENTS: Could not find target log
|
||||
|
@ -16,7 +16,7 @@ select @@global.max_relay_log_size;
|
||||
start slave;
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 73754 # # master-bin.000001 Yes Yes 0 0 73754 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 72952 # # master-bin.000001 Yes Yes 0 0 72952 # None 0 No #
|
||||
stop slave;
|
||||
reset slave;
|
||||
set global max_relay_log_size=(5*4096);
|
||||
@ -26,7 +26,7 @@ select @@global.max_relay_log_size;
|
||||
start slave;
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 73754 # # master-bin.000001 Yes Yes 0 0 73754 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 72952 # # master-bin.000001 Yes Yes 0 0 72952 # None 0 No #
|
||||
stop slave;
|
||||
reset slave;
|
||||
set global max_relay_log_size=0;
|
||||
@ -36,7 +36,7 @@ select @@global.max_relay_log_size;
|
||||
start slave;
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 73754 # # master-bin.000001 Yes Yes 0 0 73754 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 72952 # # master-bin.000001 Yes Yes 0 0 72952 # None 0 No #
|
||||
stop slave;
|
||||
reset slave;
|
||||
flush logs;
|
||||
@ -49,12 +49,12 @@ flush logs;
|
||||
create table t1 (a int);
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 73841 # # master-bin.000001 Yes Yes 0 0 73841 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 73038 # # master-bin.000001 Yes Yes 0 0 73038 # None 0 No #
|
||||
flush logs;
|
||||
drop table t1;
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 73918 # # master-bin.000001 Yes Yes 0 0 73918 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 73114 # # master-bin.000001 Yes Yes 0 0 73114 # None 0 No #
|
||||
flush logs;
|
||||
show master status;
|
||||
File Position Binlog_Do_DB Binlog_Ignore_DB
|
||||
|
@ -20,11 +20,11 @@ t
|
||||
1
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 replssl MASTER_MYPORT 1 master-bin.000001 289 slave-relay-bin.000001 108 master-bin.000001 Yes Yes 0 0 289 108 None 0 Yes MYSQL_TEST_DIR/std_data/cacert.pem MYSQL_TEST_DIR/std_data/client-cert.pem MYSQL_TEST_DIR/std_data/client-key.pem #
|
||||
# 127.0.0.1 replssl MASTER_MYPORT 1 master-bin.000001 392 # # master-bin.000001 Yes Yes 0 0 392 # None 0 Yes MYSQL_TEST_DIR/std_data/cacert.pem MYSQL_TEST_DIR/std_data/client-cert.pem MYSQL_TEST_DIR/std_data/client-key.pem #
|
||||
stop slave;
|
||||
change master to master_user='root',master_password='', master_ssl=0;
|
||||
start slave;
|
||||
drop table t1;
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 337 slave-relay-bin.000001 96 master-bin.000001 Yes Yes 0 0 337 96 None 0 No MYSQL_TEST_DIR/std_data/cacert.pem MYSQL_TEST_DIR/std_data/client-cert.pem MYSQL_TEST_DIR/std_data/client-key.pem #
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 468 # # master-bin.000001 Yes Yes 0 0 468 # None 0 No MYSQL_TEST_DIR/std_data/cacert.pem MYSQL_TEST_DIR/std_data/client-cert.pem MYSQL_TEST_DIR/std_data/client-key.pem #
|
||||
|
@ -18,5 +18,5 @@ max(a)
|
||||
8000
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 743188 # # master-bin.000001 Yes Yes 0 0 743188 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 735186 # # master-bin.000001 Yes Yes 0 0 735186 # None 0 No #
|
||||
drop table t1;
|
||||
|
@ -28,4 +28,4 @@ ERROR 42S02: Table 'test.t11' doesn't exist
|
||||
drop table if exists t1,t2,t11;
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 1668 # # master-bin.000001 Yes Yes test.t1 0 0 1668 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 1658 # # master-bin.000001 Yes Yes test.t1 0 0 1658 # None 0 No #
|
||||
|
@ -16,7 +16,7 @@ create table t1 (s text);
|
||||
insert into t1 values('Could not break slave'),('Tried hard');
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_PORT 60 master-bin.000001 552 # # master-bin.000001 Yes Yes 0 0 552 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_PORT 60 master-bin.000001 548 # # master-bin.000001 Yes Yes 0 0 548 # None 0 No #
|
||||
select * from t1;
|
||||
s
|
||||
Could not break slave
|
||||
@ -57,7 +57,7 @@ master-bin.000003
|
||||
insert into t2 values (65);
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_PORT 60 master-bin.000003 500 # # master-bin.000003 Yes Yes 0 0 500 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_PORT 60 master-bin.000003 496 # # master-bin.000003 Yes Yes 0 0 496 # None 0 No #
|
||||
select * from t2;
|
||||
m
|
||||
34
|
||||
@ -79,13 +79,13 @@ master-bin.000004
|
||||
master-bin.000005
|
||||
show master status;
|
||||
File Position Binlog_Do_DB Binlog_Ignore_DB
|
||||
master-bin.000005 2146
|
||||
master-bin.000005 2032
|
||||
select * from t4;
|
||||
a
|
||||
testing temporary tables part 2
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_PORT 60 master-bin.000005 2146 # # master-bin.000005 Yes Yes 0 0 2146 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_PORT 60 master-bin.000005 2032 # # master-bin.000005 Yes Yes 0 0 2032 # None 0 No #
|
||||
lock tables t3 read;
|
||||
select count(*) from t3 where n >= 4;
|
||||
count(*)
|
||||
|
@ -7,12 +7,12 @@ start slave;
|
||||
reset master;
|
||||
SET @save_select_limit=@@session.sql_select_limit;
|
||||
SET @@session.sql_select_limit=10, @@session.pseudo_thread_id=100;
|
||||
ERROR HY000: Access denied; you need the SUPER privilege for this operation
|
||||
ERROR 42000: Access denied; you need the SUPER privilege for this operation
|
||||
SELECT @@session.sql_select_limit = @save_select_limit;
|
||||
@@session.sql_select_limit = @save_select_limit
|
||||
1
|
||||
SET @@session.sql_select_limit=10, @@session.sql_log_bin=0;
|
||||
ERROR HY000: Access denied; you need the SUPER privilege for this operation
|
||||
ERROR 42000: Access denied; you need the SUPER privilege for this operation
|
||||
SELECT @@session.sql_select_limit = @save_select_limit;
|
||||
@@session.sql_select_limit = @save_select_limit
|
||||
1
|
||||
|
@ -4,21 +4,31 @@ reset master;
|
||||
reset slave;
|
||||
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
|
||||
start slave;
|
||||
set timestamp=100000000;
|
||||
create table t1 (t timestamp);
|
||||
create table t2 (t char(32));
|
||||
select @@time_zone;
|
||||
@@time_zone
|
||||
Japan
|
||||
select @@time_zone;
|
||||
@@time_zone
|
||||
Europe/Moscow
|
||||
insert into t1 values ('20050101000000'), ('20050611093902');
|
||||
set time_zone='UTC';
|
||||
insert into t1 values ('20040101000000'), ('20040611093902');
|
||||
select * from t1;
|
||||
t
|
||||
2004-12-31 21:00:00
|
||||
2005-06-11 05:39:02
|
||||
2004-01-01 00:00:00
|
||||
2004-06-11 09:39:02
|
||||
set time_zone='UTC';
|
||||
select * from t1;
|
||||
t
|
||||
2004-01-01 03:00:00
|
||||
2004-06-11 13:39:02
|
||||
2004-12-31 21:00:00
|
||||
2005-06-11 05:39:02
|
||||
2004-01-01 00:00:00
|
||||
2004-06-11 09:39:02
|
||||
delete from t1;
|
||||
set time_zone='Europe/Moscow';
|
||||
insert into t1 values ('20040101000000'), ('20040611093902');
|
||||
@ -26,19 +36,51 @@ select * from t1;
|
||||
t
|
||||
2004-01-01 00:00:00
|
||||
2004-06-11 09:39:02
|
||||
set time_zone='Europe/Moscow';
|
||||
select * from t1;
|
||||
t
|
||||
2004-01-01 00:00:00
|
||||
2004-06-11 09:39:02
|
||||
show binlog events;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 # Format_desc 1 # Server ver: VERSION, Binlog ver: 4
|
||||
master-bin.000001 # Query 1 # use `test`; create table t1 (t timestamp)
|
||||
master-bin.000001 # Query 1 # use `test`; create table t2 (t char(32))
|
||||
master-bin.000001 # Query 1 # use `test`; SET ONE_SHOT TIME_ZONE='UTC'
|
||||
master-bin.000001 # Query 1 # use `test`; insert into t1 values ('20040101000000'), ('20040611093902')
|
||||
master-bin.000001 # Query 1 # use `test`; delete from t1
|
||||
master-bin.000001 # Query 1 # use `test`; insert into t1 values ('20040101000000'), ('20040611093902')
|
||||
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||
/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
|
||||
ROLLBACK;
|
||||
use test;
|
||||
SET TIMESTAMP=100000000;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8;
|
||||
create table t1 (t timestamp);
|
||||
SET TIMESTAMP=100000000;
|
||||
create table t2 (t char(32));
|
||||
SET TIMESTAMP=100000000;
|
||||
SET @@session.time_zone='Europe/Moscow';
|
||||
insert into t1 values ('20050101000000'), ('20050611093902');
|
||||
SET TIMESTAMP=100000000;
|
||||
SET @@session.time_zone='UTC';
|
||||
insert into t1 values ('20040101000000'), ('20040611093902');
|
||||
SET TIMESTAMP=100000000;
|
||||
delete from t1;
|
||||
SET TIMESTAMP=100000000;
|
||||
SET @@session.time_zone='Europe/Moscow';
|
||||
insert into t1 values ('20040101000000'), ('20040611093902');
|
||||
ROLLBACK;
|
||||
/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
|
||||
delete from t1;
|
||||
set time_zone='UTC';
|
||||
load data infile '../../std_data/rpl_timezone.dat' into table t1;
|
||||
select * from t1;
|
||||
t
|
||||
2004-01-01 00:00:00
|
||||
2004-06-11 09:39:02
|
||||
set time_zone='UTC';
|
||||
select * from t1;
|
||||
t
|
||||
2004-01-01 00:00:00
|
||||
2004-06-11 09:39:02
|
||||
set time_zone='Europe/Moscow';
|
||||
set time_zone='Europe/Moscow';
|
||||
delete from t1;
|
||||
insert into t1 values ('20040101000000'), ('20040611093902');
|
||||
set time_zone='MET';
|
||||
insert into t2 (select t from t1);
|
||||
select * from t1;
|
||||
@ -52,10 +94,6 @@ t
|
||||
delete from t2;
|
||||
set timestamp=1000072000;
|
||||
insert into t2 values (current_timestamp), (current_date), (current_time);
|
||||
set timestamp=1000072000;
|
||||
select current_timestamp, current_date, current_time;
|
||||
current_timestamp current_date current_time
|
||||
2001-09-10 01:46:40 2001-09-10 01:46:40
|
||||
select * from t2;
|
||||
t
|
||||
2001-09-09 23:46:40
|
||||
@ -73,5 +111,16 @@ t
|
||||
2001-09-09 03:46:40
|
||||
1000000000
|
||||
set global time_zone='MET';
|
||||
ERROR HY000: Binary logging and replication forbid changing the global server time zone
|
||||
delete from t2;
|
||||
set time_zone='UTC';
|
||||
insert into t2 values(convert_tz('2004-01-01 00:00:00','MET',@@time_zone));
|
||||
insert into t2 values(convert_tz('2005-01-01 00:00:00','MET','Japan'));
|
||||
select * from t2;
|
||||
t
|
||||
2003-12-31 23:00:00
|
||||
2005-01-01 08:00:00
|
||||
select * from t2;
|
||||
t
|
||||
2003-12-31 23:00:00
|
||||
2005-01-01 08:00:00
|
||||
drop table t1, t2;
|
||||
|
@ -15,14 +15,14 @@ drop table t2;
|
||||
show binlog events;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 4 Format_desc 1 98 Server ver: VERSION, Binlog ver: 4
|
||||
master-bin.000001 98 Query 1 220 use `test`; create table t1(n int not null auto_increment primary key)
|
||||
master-bin.000001 220 Query 1 321 use `test`; insert into t1 values (1),(2),(3),(4)
|
||||
master-bin.000001 321 Query 1 398 use `test`; drop table t1
|
||||
master-bin.000001 398 Query 1 520 use `test`; create table t2(n int not null auto_increment primary key)
|
||||
master-bin.000001 520 Query 1 613 use `test`; insert into t2 values (1),(2)
|
||||
master-bin.000001 613 Query 1 706 use `test`; insert into t2 values (3),(4)
|
||||
master-bin.000001 706 Query 1 783 use `test`; drop table t2
|
||||
start slave until master_log_file='master-bin.000001', master_log_pos=321;
|
||||
master-bin.000001 98 Query 1 219 use `test`; create table t1(n int not null auto_increment primary key)
|
||||
master-bin.000001 219 Query 1 319 use `test`; insert into t1 values (1),(2),(3),(4)
|
||||
master-bin.000001 319 Query 1 395 use `test`; drop table t1
|
||||
master-bin.000001 395 Query 1 516 use `test`; create table t2(n int not null auto_increment primary key)
|
||||
master-bin.000001 516 Query 1 608 use `test`; insert into t2 values (1),(2)
|
||||
master-bin.000001 608 Query 1 700 use `test`; insert into t2 values (3),(4)
|
||||
master-bin.000001 700 Query 1 776 use `test`; drop table t2
|
||||
start slave until master_log_file='master-bin.000001', master_log_pos=319;
|
||||
select * from t1;
|
||||
n
|
||||
1
|
||||
@ -31,7 +31,7 @@ n
|
||||
4
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 783 slave-relay-bin.000004 # master-bin.000001 Yes No 0 0 321 # Master master-bin.000001 321 No #
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 776 slave-relay-bin.000004 # master-bin.000001 Yes No 0 0 319 # Master master-bin.000001 319 No #
|
||||
start slave until master_log_file='master-no-such-bin.000001', master_log_pos=291;
|
||||
select * from t1;
|
||||
n
|
||||
@ -41,21 +41,21 @@ n
|
||||
4
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 783 slave-relay-bin.000004 # master-bin.000001 Yes No 0 0 321 # Master master-no-such-bin.000001 291 No #
|
||||
start slave until relay_log_file='slave-relay-bin.000004', relay_log_pos=751;
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 776 slave-relay-bin.000004 # master-bin.000001 Yes No 0 0 319 # Master master-no-such-bin.000001 291 No #
|
||||
start slave until relay_log_file='slave-relay-bin.000004', relay_log_pos=746;
|
||||
select * from t2;
|
||||
n
|
||||
1
|
||||
2
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 783 slave-relay-bin.000004 # master-bin.000001 Yes No 0 0 613 # Relay slave-relay-bin.000004 751 No #
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 776 slave-relay-bin.000004 # master-bin.000001 Yes No 0 0 608 # Relay slave-relay-bin.000004 746 No #
|
||||
start slave;
|
||||
stop slave;
|
||||
start slave until master_log_file='master-bin.000001', master_log_pos=783;
|
||||
start slave until master_log_file='master-bin.000001', master_log_pos=776;
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 783 slave-relay-bin.000004 # master-bin.000001 Yes No 0 0 783 # Master master-bin.000001 783 No #
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 776 slave-relay-bin.000004 # master-bin.000001 Yes No 0 0 776 # Master master-bin.000001 776 No #
|
||||
start slave until master_log_file='master-bin', master_log_pos=561;
|
||||
ERROR HY000: Incorrect parameter or combination of parameters for START SLAVE UNTIL
|
||||
start slave until master_log_file='master-bin.000001', master_log_pos=561, relay_log_pos=12;
|
||||
@ -67,6 +67,6 @@ ERROR HY000: Incorrect parameter or combination of parameters for START SLAVE UN
|
||||
start slave until relay_log_file='slave-relay-bin.000002', master_log_pos=561;
|
||||
ERROR HY000: Incorrect parameter or combination of parameters for START SLAVE UNTIL
|
||||
start slave sql_thread;
|
||||
start slave until master_log_file='master-bin.000001', master_log_pos=783;
|
||||
start slave until master_log_file='master-bin.000001', master_log_pos=776;
|
||||
Warnings:
|
||||
Note 1254 Slave is already running
|
||||
|
@ -315,57 +315,57 @@ insert into t2 values (1),(2);
|
||||
insert into t3 values (1,1),(2,2);
|
||||
show table status;
|
||||
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
|
||||
t1 MEMORY 9 Fixed 2 # # # # 0 NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t2 MEMORY 9 Fixed 2 # # # # 0 NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t3 MEMORY 9 Fixed 2 # # # # 0 NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t1 MEMORY 10 Fixed 2 # # # # 0 NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t2 MEMORY 10 Fixed 2 # # # # 0 NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t3 MEMORY 10 Fixed 2 # # # # 0 NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
insert into t1 values (3),(4);
|
||||
insert into t2 values (3),(4);
|
||||
insert into t3 values (3,3),(4,4);
|
||||
show table status;
|
||||
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
|
||||
t1 MEMORY 9 Fixed 4 # # # # 0 NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t2 MEMORY 9 Fixed 4 # # # # 0 NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t3 MEMORY 9 Fixed 4 # # # # 0 NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t1 MEMORY 10 Fixed 4 # # # # 0 NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t2 MEMORY 10 Fixed 4 # # # # 0 NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t3 MEMORY 10 Fixed 4 # # # # 0 NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
insert into t1 values (5);
|
||||
insert into t2 values (5);
|
||||
insert into t3 values (5,5);
|
||||
show table status;
|
||||
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
|
||||
t1 MEMORY 9 Fixed 5 # # # # 0 NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t2 MEMORY 9 Fixed 5 # # # # 0 NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t3 MEMORY 9 Fixed 5 # # # # 0 NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t1 MEMORY 10 Fixed 5 # # # # 0 NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t2 MEMORY 10 Fixed 5 # # # # 0 NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t3 MEMORY 10 Fixed 5 # # # # 0 NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
delete from t1 where a=3;
|
||||
delete from t2 where b=3;
|
||||
delete from t3 where a=3;
|
||||
show table status;
|
||||
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
|
||||
t1 MEMORY 9 Fixed 4 # # # # # NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t2 MEMORY 9 Fixed 4 # # # # # NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t3 MEMORY 9 Fixed 4 # # # # # NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t1 MEMORY 10 Fixed 4 # # # # # NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t2 MEMORY 10 Fixed 4 # # # # # NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t3 MEMORY 10 Fixed 4 # # # # # NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
delete from t1;
|
||||
delete from t2;
|
||||
delete from t3;
|
||||
show table status;
|
||||
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
|
||||
t1 MEMORY 9 Fixed 0 # # # # 0 NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t2 MEMORY 9 Fixed 0 # # # # 0 NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t3 MEMORY 9 Fixed 0 # # # # 0 NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t1 MEMORY 10 Fixed 0 # # # # 0 NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t2 MEMORY 10 Fixed 0 # # # # 0 NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t3 MEMORY 10 Fixed 0 # # # # 0 NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
insert into t1 values (5);
|
||||
insert into t2 values (5);
|
||||
insert into t3 values (5,5);
|
||||
show table status;
|
||||
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
|
||||
t1 MEMORY 9 Fixed 1 # # # # 0 NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t2 MEMORY 9 Fixed 1 # # # # 0 NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t3 MEMORY 9 Fixed 1 # # # # 0 NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t1 MEMORY 10 Fixed 1 # # # # 0 NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t2 MEMORY 10 Fixed 1 # # # # 0 NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t3 MEMORY 10 Fixed 1 # # # # 0 NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
delete from t1 where a=5;
|
||||
delete from t2 where b=5;
|
||||
delete from t3 where a=5;
|
||||
show table status;
|
||||
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
|
||||
t1 MEMORY 9 Fixed 0 # # # # # NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t2 MEMORY 9 Fixed 0 # # # # # NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t3 MEMORY 9 Fixed 0 # # # # # NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t1 MEMORY 10 Fixed 0 # # # # # NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t2 MEMORY 10 Fixed 0 # # # # # NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t3 MEMORY 10 Fixed 0 # # # # # NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
drop table t1, t2, t3;
|
||||
create database mysqltest;
|
||||
show create database mysqltest;
|
||||
|
@ -494,4 +494,13 @@ declare continue handler for sqlstate '42x00' begin end;
|
||||
begin end;
|
||||
end|
|
||||
ERROR 42000: Bad SQLSTATE: '42x00'
|
||||
create procedure bug6600()
|
||||
check table t1|
|
||||
ERROR 0A000: CHECK is not allowed in stored procedures
|
||||
create procedure bug6600()
|
||||
lock table t1 read|
|
||||
ERROR 0A000: LOCK is not allowed in stored procedures
|
||||
create procedure bug6600()
|
||||
unlock table t1|
|
||||
ERROR 0A000: UNLOCK is not allowed in stored procedures
|
||||
drop table t1|
|
||||
|
@ -2185,6 +2185,7 @@ Create Databases,Tables,Indexes To create new databases and tables
|
||||
Create routine Functions,Procedures To use CREATE FUNCTION/PROCEDURE
|
||||
Create temporary tables Databases To use CREATE TEMPORARY TABLE
|
||||
Create view Tables To create new views
|
||||
Create user Server Admin To create new users
|
||||
Delete Tables To delete existing rows
|
||||
Drop Databases,Tables To drop databases, tables, and views
|
||||
Execute Functions,Procedures To execute stored routines
|
||||
@ -2238,6 +2239,7 @@ Create Databases,Tables,Indexes To create new databases and tables
|
||||
Create routine Functions,Procedures To use CREATE FUNCTION/PROCEDURE
|
||||
Create temporary tables Databases To use CREATE TEMPORARY TABLE
|
||||
Create view Tables To create new views
|
||||
Create user Server Admin To create new users
|
||||
Delete Tables To delete existing rows
|
||||
Drop Databases,Tables To drop databases, tables, and views
|
||||
Execute Functions,Procedures To execute stored routines
|
||||
@ -2777,23 +2779,4 @@ a
|
||||
3.2000
|
||||
drop procedure bug8937|
|
||||
delete from t1|
|
||||
drop procedure if exists bug6600|
|
||||
drop table if exists t3|
|
||||
drop view if exists v1|
|
||||
create table t3 (s1 decimal(31,30))|
|
||||
create view v1 as select * from t3|
|
||||
create procedure bug6600()
|
||||
check table v1|
|
||||
call bug6600()|
|
||||
Table Op Msg_type Msg_text
|
||||
test.v1 check status OK
|
||||
call bug6600()|
|
||||
Table Op Msg_type Msg_text
|
||||
test.v1 check status OK
|
||||
call bug6600()|
|
||||
Table Op Msg_type Msg_text
|
||||
test.v1 check status OK
|
||||
drop procedure bug6600|
|
||||
drop view v1|
|
||||
drop table t3|
|
||||
drop table t1,t2;
|
||||
|
@ -1,3 +1,4 @@
|
||||
set @org_mode=@@sql_mode;
|
||||
set @@sql_mode='ansi,traditional';
|
||||
select @@sql_mode;
|
||||
@@sql_mode
|
||||
@ -209,8 +210,12 @@ INSERT INTO t1 (col1) VALUES(STR_TO_DATE('0.10.2004 15.30','%d.%m.%Y %H.%i'));
|
||||
ERROR 22007: Incorrect date value: '2004-10-00 15:30:00' for column 'col1' at row 1
|
||||
INSERT INTO t1 (col1) VALUES(STR_TO_DATE('31.9.2004 15.30','%d.%m.%Y %H.%i'));
|
||||
ERROR 22007: Incorrect date value: '2004-09-31 15:30:00' for column 'col1' at row 1
|
||||
INSERT INTO t1 (col1) VALUES(STR_TO_DATE('32.10.2004 15.30','%d.%m.%Y %H.%i'));
|
||||
ERROR HY000: Incorrect datetime value: '32.10.2004 15.30' for function str_to_time
|
||||
INSERT INTO t1 (col1) VALUES(STR_TO_DATE('29.02.2003 15.30','%d.%m.%Y %H.%i'));
|
||||
ERROR 22007: Incorrect date value: '2003-02-29 15:30:00' for column 'col1' at row 1
|
||||
INSERT INTO t1 (col1) VALUES(STR_TO_DATE('15.13.2004 15.30','%d.%m.%Y %H.%i'));
|
||||
ERROR HY000: Incorrect datetime value: '15.13.2004 15.30' for function str_to_time
|
||||
INSERT INTO t1 (col1) VALUES(STR_TO_DATE('00.00.0000','%d.%m.%Y'));
|
||||
ERROR 22007: Incorrect date value: '0000-00-00' for column 'col1' at row 1
|
||||
INSERT INTO t1 (col2) VALUES(STR_TO_DATE('31.10.0000 15.30','%d.%m.%Y %H.%i'));
|
||||
@ -220,8 +225,14 @@ INSERT INTO t1 (col2) VALUES(STR_TO_DATE('0.10.2004 15.30','%d.%m.%Y %H.%i'));
|
||||
ERROR 22007: Incorrect datetime value: '2004-10-00 15:30:00' for column 'col2' at row 1
|
||||
INSERT INTO t1 (col2) VALUES(STR_TO_DATE('31.9.2004 15.30','%d.%m.%Y %H.%i'));
|
||||
ERROR 22007: Incorrect datetime value: '2004-09-31 15:30:00' for column 'col2' at row 1
|
||||
INSERT INTO t1 (col2) VALUES(STR_TO_DATE('32.10.2004 15.30','%d.%m.%Y %H.%i'));
|
||||
ERROR HY000: Incorrect datetime value: '32.10.2004 15.30' for function str_to_time
|
||||
INSERT INTO t1 (col2) VALUES(STR_TO_DATE('29.02.2003 15.30','%d.%m.%Y %H.%i'));
|
||||
ERROR 22007: Incorrect datetime value: '2003-02-29 15:30:00' for column 'col2' at row 1
|
||||
INSERT INTO t1 (col2) VALUES(STR_TO_DATE('15.13.2004 15.30','%d.%m.%Y %H.%i'));
|
||||
ERROR HY000: Incorrect datetime value: '15.13.2004 15.30' for function str_to_time
|
||||
INSERT INTO t1 (col2) VALUES(STR_TO_DATE('00.00.0000','%d.%m.%Y'));
|
||||
ERROR 22007: Incorrect datetime value: '0000-00-00' for column 'col2' at row 1
|
||||
INSERT INTO t1 (col3) VALUES(STR_TO_DATE('31.10.0000 15.30','%d.%m.%Y %H.%i'));
|
||||
ERROR 22007: Incorrect datetime value: '0000-10-31 15:30:00' for column 'col3' at row 1
|
||||
INSERT INTO t1 (col3) VALUES(STR_TO_DATE('31.0.2004 15.30','%d.%m.%Y %H.%i'));
|
||||
@ -230,8 +241,12 @@ INSERT INTO t1 (col3) VALUES(STR_TO_DATE('0.10.2004 15.30','%d.%m.%Y %H.%i'));
|
||||
ERROR 22007: Incorrect datetime value: '2004-10-00 15:30:00' for column 'col3' at row 1
|
||||
INSERT INTO t1 (col3) VALUES(STR_TO_DATE('31.9.2004 15.30','%d.%m.%Y %H.%i'));
|
||||
ERROR 22007: Incorrect datetime value: '2004-09-31 15:30:00' for column 'col3' at row 1
|
||||
INSERT INTO t1 (col3) VALUES(STR_TO_DATE('32.10.2004 15.30','%d.%m.%Y %H.%i'));
|
||||
ERROR HY000: Incorrect datetime value: '32.10.2004 15.30' for function str_to_time
|
||||
INSERT INTO t1 (col3) VALUES(STR_TO_DATE('29.02.2003 15.30','%d.%m.%Y %H.%i'));
|
||||
ERROR 22007: Incorrect datetime value: '2003-02-29 15:30:00' for column 'col3' at row 1
|
||||
INSERT INTO t1 (col3) VALUES(STR_TO_DATE('15.13.2004 15.30','%d.%m.%Y %H.%i'));
|
||||
ERROR HY000: Incorrect datetime value: '15.13.2004 15.30' for function str_to_time
|
||||
INSERT INTO t1 (col3) VALUES(STR_TO_DATE('00.00.0000','%d.%m.%Y'));
|
||||
ERROR 22007: Incorrect datetime value: '0000-00-00' for column 'col3' at row 1
|
||||
drop table t1;
|
||||
@ -1030,3 +1045,48 @@ ERROR 22001: Data too long for column 'tinyblobcol' at row 1
|
||||
select * from t1;
|
||||
charcol varcharcol binarycol varbinarycol tinytextcol tinyblobcol
|
||||
drop table t1;
|
||||
set sql_mode='traditional';
|
||||
create table t1 (col1 datetime);
|
||||
insert into t1 values(STR_TO_DATE('31.10.2004 15.30 abc','%d.%m.%Y %H.%i'));
|
||||
ERROR 22007: Truncated incorrect datetime value: '31.10.2004 15.30 abc'
|
||||
insert into t1 values(STR_TO_DATE('32.10.2004 15.30','%d.%m.%Y %H.%i'));
|
||||
ERROR HY000: Incorrect datetime value: '32.10.2004 15.30' for function str_to_time
|
||||
insert into t1 values(STR_TO_DATE('2004.12.12 22:22:33 AM','%Y.%m.%d %r'));
|
||||
ERROR HY000: Incorrect time value: '22:22:33 AM' for function str_to_time
|
||||
insert into t1 values(STR_TO_DATE('2004.12.12 abc','%Y.%m.%d %T'));
|
||||
ERROR HY000: Incorrect time value: 'abc' for function str_to_time
|
||||
set sql_mode='';
|
||||
insert into t1 values(STR_TO_DATE('31.10.2004 15.30 abc','%d.%m.%Y %H.%i'));
|
||||
Warnings:
|
||||
Warning 1292 Truncated incorrect datetime value: '31.10.2004 15.30 abc'
|
||||
insert into t1 values(STR_TO_DATE('32.10.2004 15.30','%d.%m.%Y %H.%i'));
|
||||
Warnings:
|
||||
Error 1411 Incorrect datetime value: '32.10.2004 15.30' for function str_to_time
|
||||
insert into t1 values(STR_TO_DATE('2004.12.12 22:22:33 AM','%Y.%m.%d %r'));
|
||||
Warnings:
|
||||
Error 1411 Incorrect time value: '22:22:33 AM' for function str_to_time
|
||||
insert into t1 values(STR_TO_DATE('2004.12.12 abc','%Y.%m.%d %T'));
|
||||
Warnings:
|
||||
Error 1411 Incorrect time value: 'abc' for function str_to_time
|
||||
insert into t1 values(STR_TO_DATE('31.10.2004 15.30','%d.%m.%Y %H.%i'));
|
||||
insert into t1 values(STR_TO_DATE('2004.12.12 11:22:33 AM','%Y.%m.%d %r'));
|
||||
insert into t1 values(STR_TO_DATE('2004.12.12 10:22:59','%Y.%m.%d %T'));
|
||||
select * from t1;
|
||||
col1
|
||||
2004-10-31 15:30:00
|
||||
NULL
|
||||
NULL
|
||||
NULL
|
||||
2004-10-31 15:30:00
|
||||
2004-12-12 11:22:33
|
||||
2004-12-12 10:22:59
|
||||
set sql_mode='traditional';
|
||||
select count(*) from t1 where STR_TO_DATE('2004.12.12 10:22:61','%Y.%m.%d %T') IS NULL;
|
||||
count(*)
|
||||
7
|
||||
Warnings:
|
||||
Error 1411 Incorrect datetime value: '2004.12.12 10:22:61' for function str_to_time
|
||||
Error 1411 Incorrect datetime value: '2004.12.12 10:22:61' for function str_to_time
|
||||
Error 1411 Incorrect datetime value: '2004.12.12 10:22:61' for function str_to_time
|
||||
drop table t1;
|
||||
set sql_mode=@org_mode;
|
||||
|
@ -1883,6 +1883,380 @@ SELECT a FROM t1 WHERE a <> ALL ( SELECT a FROM t1 WHERE b = 2 );
|
||||
a
|
||||
1
|
||||
3
|
||||
SELECT a FROM t1 WHERE a > ANY (SELECT a FROM t1 HAVING a = 2);
|
||||
a
|
||||
3
|
||||
SELECT a FROM t1 WHERE a < ANY (SELECT a FROM t1 HAVING a = 2);
|
||||
a
|
||||
1
|
||||
SELECT a FROM t1 WHERE a = ANY (SELECT a FROM t1 HAVING a = 2);
|
||||
a
|
||||
2
|
||||
SELECT a FROM t1 WHERE a >= ANY (SELECT a FROM t1 HAVING a = 2);
|
||||
a
|
||||
2
|
||||
3
|
||||
SELECT a FROM t1 WHERE a <= ANY (SELECT a FROM t1 HAVING a = 2);
|
||||
a
|
||||
1
|
||||
2
|
||||
SELECT a FROM t1 WHERE a <> ANY (SELECT a FROM t1 HAVING a = 2);
|
||||
a
|
||||
1
|
||||
3
|
||||
SELECT a FROM t1 WHERE a > ALL (SELECT a FROM t1 HAVING a = 2);
|
||||
a
|
||||
3
|
||||
SELECT a FROM t1 WHERE a < ALL (SELECT a FROM t1 HAVING a = 2);
|
||||
a
|
||||
1
|
||||
SELECT a FROM t1 WHERE a = ALL (SELECT a FROM t1 HAVING a = 2);
|
||||
a
|
||||
2
|
||||
SELECT a FROM t1 WHERE a >= ALL (SELECT a FROM t1 HAVING a = 2);
|
||||
a
|
||||
2
|
||||
3
|
||||
SELECT a FROM t1 WHERE a <= ALL (SELECT a FROM t1 HAVING a = 2);
|
||||
a
|
||||
1
|
||||
2
|
||||
SELECT a FROM t1 WHERE a <> ALL (SELECT a FROM t1 HAVING a = 2);
|
||||
a
|
||||
1
|
||||
3
|
||||
SELECT a FROM t1 WHERE a > ANY (SELECT a FROM t1 WHERE b = 2 UNION SELECT a FROM t1 WHERE b = 2);
|
||||
a
|
||||
3
|
||||
SELECT a FROM t1 WHERE a < ANY (SELECT a FROM t1 WHERE b = 2 UNION SELECT a FROM t1 WHERE b = 2);
|
||||
a
|
||||
1
|
||||
SELECT a FROM t1 WHERE a = ANY (SELECT a FROM t1 WHERE b = 2 UNION SELECT a FROM t1 WHERE b = 2);
|
||||
a
|
||||
2
|
||||
SELECT a FROM t1 WHERE a >= ANY (SELECT a FROM t1 WHERE b = 2 UNION SELECT a FROM t1 WHERE b = 2);
|
||||
a
|
||||
2
|
||||
3
|
||||
SELECT a FROM t1 WHERE a <= ANY (SELECT a FROM t1 WHERE b = 2 UNION SELECT a FROM t1 WHERE b = 2);
|
||||
a
|
||||
1
|
||||
2
|
||||
SELECT a FROM t1 WHERE a <> ANY (SELECT a FROM t1 WHERE b = 2 UNION SELECT a FROM t1 WHERE b = 2);
|
||||
a
|
||||
1
|
||||
3
|
||||
SELECT a FROM t1 WHERE a > ALL (SELECT a FROM t1 WHERE b = 2 UNION SELECT a FROM t1 WHERE b = 2);
|
||||
a
|
||||
3
|
||||
SELECT a FROM t1 WHERE a < ALL (SELECT a FROM t1 WHERE b = 2 UNION SELECT a FROM t1 WHERE b = 2);
|
||||
a
|
||||
1
|
||||
SELECT a FROM t1 WHERE a = ALL (SELECT a FROM t1 WHERE b = 2 UNION SELECT a FROM t1 WHERE b = 2);
|
||||
a
|
||||
2
|
||||
SELECT a FROM t1 WHERE a >= ALL (SELECT a FROM t1 WHERE b = 2 UNION SELECT a FROM t1 WHERE b = 2);
|
||||
a
|
||||
2
|
||||
3
|
||||
SELECT a FROM t1 WHERE a <= ALL (SELECT a FROM t1 WHERE b = 2 UNION SELECT a FROM t1 WHERE b = 2);
|
||||
a
|
||||
1
|
||||
2
|
||||
SELECT a FROM t1 WHERE a <> ALL (SELECT a FROM t1 WHERE b = 2 UNION SELECT a FROM t1 WHERE b = 2);
|
||||
a
|
||||
1
|
||||
3
|
||||
SELECT a FROM t1 WHERE a > ANY (SELECT a FROM t1 HAVING a = 2 UNION SELECT a FROM t1 HAVING a = 2);
|
||||
a
|
||||
3
|
||||
SELECT a FROM t1 WHERE a < ANY (SELECT a FROM t1 HAVING a = 2 UNION SELECT a FROM t1 HAVING a = 2);
|
||||
a
|
||||
1
|
||||
SELECT a FROM t1 WHERE a = ANY (SELECT a FROM t1 HAVING a = 2 UNION SELECT a FROM t1 HAVING a = 2);
|
||||
a
|
||||
2
|
||||
SELECT a FROM t1 WHERE a >= ANY (SELECT a FROM t1 HAVING a = 2 UNION SELECT a FROM t1 HAVING a = 2);
|
||||
a
|
||||
2
|
||||
3
|
||||
SELECT a FROM t1 WHERE a <= ANY (SELECT a FROM t1 HAVING a = 2 UNION SELECT a FROM t1 HAVING a = 2);
|
||||
a
|
||||
1
|
||||
2
|
||||
SELECT a FROM t1 WHERE a <> ANY (SELECT a FROM t1 HAVING a = 2 UNION SELECT a FROM t1 HAVING a = 2);
|
||||
a
|
||||
1
|
||||
3
|
||||
SELECT a FROM t1 WHERE a > ALL (SELECT a FROM t1 HAVING a = 2 UNION SELECT a FROM t1 HAVING a = 2);
|
||||
a
|
||||
3
|
||||
SELECT a FROM t1 WHERE a < ALL (SELECT a FROM t1 HAVING a = 2 UNION SELECT a FROM t1 HAVING a = 2);
|
||||
a
|
||||
1
|
||||
SELECT a FROM t1 WHERE a = ALL (SELECT a FROM t1 HAVING a = 2 UNION SELECT a FROM t1 HAVING a = 2);
|
||||
a
|
||||
2
|
||||
SELECT a FROM t1 WHERE a >= ALL (SELECT a FROM t1 HAVING a = 2 UNION SELECT a FROM t1 HAVING a = 2);
|
||||
a
|
||||
2
|
||||
3
|
||||
SELECT a FROM t1 WHERE a <= ALL (SELECT a FROM t1 HAVING a = 2 UNION SELECT a FROM t1 HAVING a = 2);
|
||||
a
|
||||
1
|
||||
2
|
||||
SELECT a FROM t1 WHERE a <> ALL (SELECT a FROM t1 HAVING a = 2 UNION SELECT a FROM t1 HAVING a = 2);
|
||||
a
|
||||
1
|
||||
3
|
||||
SELECT a FROM t1 WHERE (1,2) > ANY (SELECT a FROM t1 WHERE b = 2);
|
||||
ERROR 21000: Operand should contain 1 column(s)
|
||||
SELECT a FROM t1 WHERE a > ANY (SELECT a,2 FROM t1 WHERE b = 2);
|
||||
ERROR 21000: Operand should contain 1 column(s)
|
||||
SELECT a FROM t1 WHERE (1,2) > ANY (SELECT a,2 FROM t1 WHERE b = 2);
|
||||
ERROR 21000: Operand should contain 1 column(s)
|
||||
SELECT a FROM t1 WHERE (1,2) > ALL (SELECT a FROM t1 WHERE b = 2);
|
||||
ERROR 21000: Operand should contain 1 column(s)
|
||||
SELECT a FROM t1 WHERE a > ALL (SELECT a,2 FROM t1 WHERE b = 2);
|
||||
ERROR 21000: Operand should contain 1 column(s)
|
||||
SELECT a FROM t1 WHERE (1,2) > ALL (SELECT a,2 FROM t1 WHERE b = 2);
|
||||
ERROR 21000: Operand should contain 1 column(s)
|
||||
SELECT a FROM t1 WHERE (1,2) = ALL (SELECT a,2 FROM t1 WHERE b = 2);
|
||||
ERROR 21000: Operand should contain 1 column(s)
|
||||
SELECT a FROM t1 WHERE (1,2) <> ANY (SELECT a,2 FROM t1 WHERE b = 2);
|
||||
ERROR 21000: Operand should contain 1 column(s)
|
||||
SELECT a FROM t1 WHERE (1,2) = ANY (SELECT a FROM t1 WHERE b = 2);
|
||||
ERROR 21000: Operand should contain 2 column(s)
|
||||
SELECT a FROM t1 WHERE a = ANY (SELECT a,2 FROM t1 WHERE b = 2);
|
||||
ERROR 21000: Operand should contain 1 column(s)
|
||||
SELECT a FROM t1 WHERE (1,2) = ANY (SELECT a,2 FROM t1 WHERE b = 2);
|
||||
a
|
||||
SELECT a FROM t1 WHERE (1,2) <> ALL (SELECT a FROM t1 WHERE b = 2);
|
||||
ERROR 21000: Operand should contain 2 column(s)
|
||||
SELECT a FROM t1 WHERE a <> ALL (SELECT a,2 FROM t1 WHERE b = 2);
|
||||
ERROR 21000: Operand should contain 1 column(s)
|
||||
SELECT a FROM t1 WHERE (1,2) <> ALL (SELECT a,2 FROM t1 WHERE b = 2);
|
||||
a
|
||||
1
|
||||
2
|
||||
3
|
||||
SELECT a FROM t1 WHERE (a,1) = ANY (SELECT a,1 FROM t1 WHERE b = 2);
|
||||
a
|
||||
2
|
||||
SELECT a FROM t1 WHERE (a,1) <> ALL (SELECT a,1 FROM t1 WHERE b = 2);
|
||||
a
|
||||
1
|
||||
3
|
||||
SELECT a FROM t1 WHERE (a,1) = ANY (SELECT a,1 FROM t1 HAVING a = 2);
|
||||
a
|
||||
2
|
||||
SELECT a FROM t1 WHERE (a,1) <> ALL (SELECT a,1 FROM t1 HAVING a = 2);
|
||||
a
|
||||
1
|
||||
3
|
||||
SELECT a FROM t1 WHERE (a,1) = ANY (SELECT a,1 FROM t1 WHERE b = 2 UNION SELECT a,1 FROM t1 WHERE b = 2);
|
||||
a
|
||||
2
|
||||
SELECT a FROM t1 WHERE (a,1) <> ALL (SELECT a,1 FROM t1 WHERE b = 2 UNION SELECT a,1 FROM t1 WHERE b = 2);
|
||||
a
|
||||
1
|
||||
3
|
||||
SELECT a FROM t1 WHERE (a,1) = ANY (SELECT a,1 FROM t1 HAVING a = 2 UNION SELECT a,1 FROM t1 HAVING a = 2);
|
||||
a
|
||||
2
|
||||
SELECT a FROM t1 WHERE (a,1) <> ALL (SELECT a,1 FROM t1 HAVING a = 2 UNION SELECT a,1 FROM t1 HAVING a = 2);
|
||||
a
|
||||
1
|
||||
3
|
||||
SELECT a FROM t1 WHERE a > ANY (SELECT a FROM t1 WHERE b = 2 group by a);
|
||||
a
|
||||
3
|
||||
SELECT a FROM t1 WHERE a < ANY (SELECT a FROM t1 WHERE b = 2 group by a);
|
||||
a
|
||||
1
|
||||
SELECT a FROM t1 WHERE a = ANY (SELECT a FROM t1 WHERE b = 2 group by a);
|
||||
a
|
||||
2
|
||||
SELECT a FROM t1 WHERE a >= ANY (SELECT a FROM t1 WHERE b = 2 group by a);
|
||||
a
|
||||
2
|
||||
3
|
||||
SELECT a FROM t1 WHERE a <= ANY (SELECT a FROM t1 WHERE b = 2 group by a);
|
||||
a
|
||||
1
|
||||
2
|
||||
SELECT a FROM t1 WHERE a <> ANY (SELECT a FROM t1 WHERE b = 2 group by a);
|
||||
a
|
||||
1
|
||||
3
|
||||
SELECT a FROM t1 WHERE a > ALL (SELECT a FROM t1 WHERE b = 2 group by a);
|
||||
a
|
||||
3
|
||||
SELECT a FROM t1 WHERE a < ALL (SELECT a FROM t1 WHERE b = 2 group by a);
|
||||
a
|
||||
1
|
||||
SELECT a FROM t1 WHERE a = ALL (SELECT a FROM t1 WHERE b = 2 group by a);
|
||||
a
|
||||
2
|
||||
SELECT a FROM t1 WHERE a >= ALL (SELECT a FROM t1 WHERE b = 2 group by a);
|
||||
a
|
||||
2
|
||||
3
|
||||
SELECT a FROM t1 WHERE a <= ALL (SELECT a FROM t1 WHERE b = 2 group by a);
|
||||
a
|
||||
1
|
||||
2
|
||||
SELECT a FROM t1 WHERE a <> ALL (SELECT a FROM t1 WHERE b = 2 group by a);
|
||||
a
|
||||
1
|
||||
3
|
||||
SELECT a FROM t1 WHERE a > ANY (SELECT a FROM t1 group by a HAVING a = 2);
|
||||
a
|
||||
3
|
||||
SELECT a FROM t1 WHERE a < ANY (SELECT a FROM t1 group by a HAVING a = 2);
|
||||
a
|
||||
1
|
||||
SELECT a FROM t1 WHERE a = ANY (SELECT a FROM t1 group by a HAVING a = 2);
|
||||
a
|
||||
2
|
||||
SELECT a FROM t1 WHERE a >= ANY (SELECT a FROM t1 group by a HAVING a = 2);
|
||||
a
|
||||
2
|
||||
3
|
||||
SELECT a FROM t1 WHERE a <= ANY (SELECT a FROM t1 group by a HAVING a = 2);
|
||||
a
|
||||
1
|
||||
2
|
||||
SELECT a FROM t1 WHERE a <> ANY (SELECT a FROM t1 group by a HAVING a = 2);
|
||||
a
|
||||
1
|
||||
3
|
||||
SELECT a FROM t1 WHERE a > ALL (SELECT a FROM t1 group by a HAVING a = 2);
|
||||
a
|
||||
3
|
||||
SELECT a FROM t1 WHERE a < ALL (SELECT a FROM t1 group by a HAVING a = 2);
|
||||
a
|
||||
1
|
||||
SELECT a FROM t1 WHERE a = ALL (SELECT a FROM t1 group by a HAVING a = 2);
|
||||
a
|
||||
2
|
||||
SELECT a FROM t1 WHERE a >= ALL (SELECT a FROM t1 group by a HAVING a = 2);
|
||||
a
|
||||
2
|
||||
3
|
||||
SELECT a FROM t1 WHERE a <= ALL (SELECT a FROM t1 group by a HAVING a = 2);
|
||||
a
|
||||
1
|
||||
2
|
||||
SELECT a FROM t1 WHERE a <> ALL (SELECT a FROM t1 group by a HAVING a = 2);
|
||||
a
|
||||
1
|
||||
3
|
||||
SELECT concat(EXISTS(SELECT a FROM t1 WHERE b = 2 and a.a > t1.a), '-') from t1 a;
|
||||
concat(EXISTS(SELECT a FROM t1 WHERE b = 2 and a.a > t1.a), '-')
|
||||
0-
|
||||
0-
|
||||
1-
|
||||
SELECT concat(EXISTS(SELECT a FROM t1 WHERE b = 2 and a.a < t1.a), '-') from t1 a;
|
||||
concat(EXISTS(SELECT a FROM t1 WHERE b = 2 and a.a < t1.a), '-')
|
||||
1-
|
||||
0-
|
||||
0-
|
||||
SELECT concat(EXISTS(SELECT a FROM t1 WHERE b = 2 and a.a = t1.a), '-') from t1 a;
|
||||
concat(EXISTS(SELECT a FROM t1 WHERE b = 2 and a.a = t1.a), '-')
|
||||
0-
|
||||
1-
|
||||
0-
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE t1 ( a double, b double );
|
||||
INSERT INTO t1 VALUES (1,1),(2,2),(3,3);
|
||||
SELECT a FROM t1 WHERE a > ANY (SELECT a FROM t1 WHERE b = 2e0);
|
||||
a
|
||||
3
|
||||
SELECT a FROM t1 WHERE a < ANY (SELECT a FROM t1 WHERE b = 2e0);
|
||||
a
|
||||
1
|
||||
SELECT a FROM t1 WHERE a = ANY (SELECT a FROM t1 WHERE b = 2e0);
|
||||
a
|
||||
2
|
||||
SELECT a FROM t1 WHERE a >= ANY (SELECT a FROM t1 WHERE b = 2e0);
|
||||
a
|
||||
2
|
||||
3
|
||||
SELECT a FROM t1 WHERE a <= ANY (SELECT a FROM t1 WHERE b = 2e0);
|
||||
a
|
||||
1
|
||||
2
|
||||
SELECT a FROM t1 WHERE a <> ANY (SELECT a FROM t1 WHERE b = 2e0);
|
||||
a
|
||||
1
|
||||
3
|
||||
SELECT a FROM t1 WHERE a > ALL (SELECT a FROM t1 WHERE b = 2e0);
|
||||
a
|
||||
3
|
||||
SELECT a FROM t1 WHERE a < ALL (SELECT a FROM t1 WHERE b = 2e0);
|
||||
a
|
||||
1
|
||||
SELECT a FROM t1 WHERE a = ALL (SELECT a FROM t1 WHERE b = 2e0);
|
||||
a
|
||||
2
|
||||
SELECT a FROM t1 WHERE a >= ALL (SELECT a FROM t1 WHERE b = 2e0);
|
||||
a
|
||||
2
|
||||
3
|
||||
SELECT a FROM t1 WHERE a <= ALL (SELECT a FROM t1 WHERE b = 2e0);
|
||||
a
|
||||
1
|
||||
2
|
||||
SELECT a FROM t1 WHERE a <> ALL (SELECT a FROM t1 WHERE b = 2e0);
|
||||
a
|
||||
1
|
||||
3
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE t1 ( a char(1), b char(1));
|
||||
INSERT INTO t1 VALUES ('1','1'),('2','2'),('3','3');
|
||||
SELECT a FROM t1 WHERE a > ANY (SELECT a FROM t1 WHERE b = '2');
|
||||
a
|
||||
3
|
||||
SELECT a FROM t1 WHERE a < ANY (SELECT a FROM t1 WHERE b = '2');
|
||||
a
|
||||
1
|
||||
SELECT a FROM t1 WHERE a = ANY (SELECT a FROM t1 WHERE b = '2');
|
||||
a
|
||||
2
|
||||
SELECT a FROM t1 WHERE a >= ANY (SELECT a FROM t1 WHERE b = '2');
|
||||
a
|
||||
2
|
||||
3
|
||||
SELECT a FROM t1 WHERE a <= ANY (SELECT a FROM t1 WHERE b = '2');
|
||||
a
|
||||
1
|
||||
2
|
||||
SELECT a FROM t1 WHERE a <> ANY (SELECT a FROM t1 WHERE b = '2');
|
||||
a
|
||||
1
|
||||
3
|
||||
SELECT a FROM t1 WHERE a > ALL (SELECT a FROM t1 WHERE b = '2');
|
||||
a
|
||||
3
|
||||
SELECT a FROM t1 WHERE a < ALL (SELECT a FROM t1 WHERE b = '2');
|
||||
a
|
||||
1
|
||||
SELECT a FROM t1 WHERE a = ALL (SELECT a FROM t1 WHERE b = '2');
|
||||
a
|
||||
2
|
||||
SELECT a FROM t1 WHERE a >= ALL (SELECT a FROM t1 WHERE b = '2');
|
||||
a
|
||||
2
|
||||
3
|
||||
SELECT a FROM t1 WHERE a <= ALL (SELECT a FROM t1 WHERE b = '2');
|
||||
a
|
||||
1
|
||||
2
|
||||
SELECT a FROM t1 WHERE a <> ALL (SELECT a FROM t1 WHERE b = '2');
|
||||
a
|
||||
1
|
||||
3
|
||||
DROP TABLE t1;
|
||||
create table t1 (a int, b int);
|
||||
insert into t1 values (1,2),(3,4);
|
||||
@ -2138,7 +2512,7 @@ drop table t1;
|
||||
create table t1 (a1 int);
|
||||
create table t2 (b1 int);
|
||||
select * from t1 where a2 > any(select b1 from t2);
|
||||
ERROR 42S22: Unknown column 'a2' in 'scalar IN/ALL/ANY subquery'
|
||||
ERROR 42S22: Unknown column 'a2' in 'IN/ALL/ANY subquery'
|
||||
select * from t1 where a1 > any(select b1 from t2);
|
||||
a1
|
||||
drop table t1,t2;
|
||||
@ -2277,7 +2651,63 @@ pass userid parentid parentgroup childid groupname grouptypeid crse categoryid c
|
||||
1 5141 12 group2 12 group2 5 1 1 87 Oct04
|
||||
1 5141 12 group2 12 group2 5 1 2 88 Oct04
|
||||
1 5141 12 group2 12 group2 5 1 2 89 Oct04
|
||||
drop table if exists t1, t2, t3, t4, t5;
|
||||
drop table t1, t2, t3, t4, t5;
|
||||
create table t1 (a int);
|
||||
insert into t1 values (1), (2), (3);
|
||||
SELECT 1 FROM t1 WHERE (SELECT 1) in (SELECT 1);
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
drop table t1;
|
||||
create table t1 (a int);
|
||||
create table t2 (a int);
|
||||
insert into t1 values (1),(2);
|
||||
insert into t2 values (0),(1),(2),(3);
|
||||
select a from t2 where a in (select a from t1);
|
||||
a
|
||||
1
|
||||
2
|
||||
select a from t2 having a in (select a from t1);
|
||||
a
|
||||
1
|
||||
2
|
||||
prepare stmt1 from "select a from t2 where a in (select a from t1)";
|
||||
execute stmt1;
|
||||
a
|
||||
1
|
||||
2
|
||||
execute stmt1;
|
||||
a
|
||||
1
|
||||
2
|
||||
deallocate prepare stmt1;
|
||||
prepare stmt1 from "select a from t2 having a in (select a from t1)";
|
||||
execute stmt1;
|
||||
a
|
||||
1
|
||||
2
|
||||
execute stmt1;
|
||||
a
|
||||
1
|
||||
2
|
||||
deallocate prepare stmt1;
|
||||
drop table t1, t2;
|
||||
create table t1 (a int, b int);
|
||||
insert into t1 values (1,2);
|
||||
select 1 = (select * from t1);
|
||||
ERROR 21000: Operand should contain 1 column(s)
|
||||
select (select * from t1) = 1;
|
||||
ERROR 21000: Operand should contain 2 column(s)
|
||||
select (1,2) = (select a from t1);
|
||||
ERROR 21000: Operand should contain 2 column(s)
|
||||
select (select a from t1) = (1,2);
|
||||
ERROR 21000: Operand should contain 1 column(s)
|
||||
select (1,2,3) = (select * from t1);
|
||||
ERROR 21000: Operand should contain 3 column(s)
|
||||
select (select * from t1) = (1,2,3);
|
||||
ERROR 21000: Operand should contain 2 column(s)
|
||||
drop table t1;
|
||||
create table t1 (df decimal(5,1));
|
||||
insert into t1 values(1.1);
|
||||
insert into t1 values(2.2);
|
||||
|
@ -96,6 +96,7 @@ user CREATE TABLE `user` (
|
||||
`Show_view_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
|
||||
`Create_routine_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
|
||||
`Alter_routine_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
|
||||
`Create_user_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
|
||||
`ssl_type` enum('','ANY','X509','SPECIFIED') character set utf8 NOT NULL default '',
|
||||
`ssl_cipher` blob NOT NULL,
|
||||
`x509_issuer` blob NOT NULL,
|
||||
|
@ -36,7 +36,7 @@ select 0 + b'1000000000000001';
|
||||
32769
|
||||
drop table if exists t1;
|
||||
create table t1 (a bit(65));
|
||||
ERROR 42000: Column length too big for column 'a' (max = 64); use BLOB instead
|
||||
ERROR 42000: Column length too big for column 'a' (max = 64); use BLOB or TEXT instead
|
||||
create table t1 (a bit(0));
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
|
@ -33,11 +33,11 @@ t4 CREATE TABLE `t4` (
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
drop table t1,t2,t3,t4;
|
||||
CREATE TABLE t1 (a char(257) default "hello");
|
||||
ERROR 42000: Column length too big for column 'a' (max = 255); use BLOB instead
|
||||
ERROR 42000: Column length too big for column 'a' (max = 255); use BLOB or TEXT instead
|
||||
CREATE TABLE t2 (a char(256));
|
||||
ERROR 42000: Column length too big for column 'a' (max = 255); use BLOB instead
|
||||
ERROR 42000: Column length too big for column 'a' (max = 255); use BLOB or TEXT instead
|
||||
CREATE TABLE t1 (a varchar(70000) default "hello");
|
||||
ERROR 42000: Column length too big for column 'a' (max = 65535); use BLOB instead
|
||||
ERROR 42000: Column length too big for column 'a' (max = 65535); use BLOB or TEXT instead
|
||||
CREATE TABLE t2 (a blob default "hello");
|
||||
ERROR 42000: BLOB/TEXT column 'a' can't have a default value
|
||||
drop table if exists t1,t2;
|
||||
|
@ -693,3 +693,58 @@ SELECT EMPNUM FROM t1 WHERE HOURS IN (SELECT HOURS FROM t1);
|
||||
EMPNUM
|
||||
E1
|
||||
DROP TABLE t1,t2;
|
||||
create table t1 (d decimal(64,0));
|
||||
insert into t1 values (1);
|
||||
select * from t1;
|
||||
d
|
||||
1
|
||||
drop table t1;
|
||||
create table t1 (d decimal(64,99));
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`d` decimal(64,30) default NULL
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
insert into t1 values (1);
|
||||
select * from t1;
|
||||
d
|
||||
1.000000000000000000000000000000
|
||||
drop table t1;
|
||||
create table t1 (d decimal(10,12));
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`d` decimal(13,12) default NULL
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
drop table t1;
|
||||
create table t1 (d decimal(5));
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`d` decimal(5,0) default NULL
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
drop table t1;
|
||||
create table t1 (d decimal);
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`d` decimal(10,0) default NULL
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
drop table t1;
|
||||
create table t1 (d decimal(65,0));
|
||||
ERROR 42000: Incorrect column specifier for column 'd'
|
||||
CREATE TABLE t1 (i INT, d1 DECIMAL(9,2), d2 DECIMAL(9,2));
|
||||
INSERT INTO t1 VALUES (1, 101.40, 21.40), (1, -80.00, 0.00),
|
||||
(2, 0.00, 0.00), (2, -13.20, 0.00), (2, 59.60, 46.40),
|
||||
(2, 30.40, 30.40), (3, 37.00, 7.40), (3, -29.60, 0.00),
|
||||
(4, 60.00, 15.40), (4, -10.60, 0.00), (4, -34.00, 0.00),
|
||||
(5, 33.00, 0.00), (5, -25.80, 0.00), (5, 0.00, 7.20),
|
||||
(6, 0.00, 0.00), (6, -51.40, 0.00);
|
||||
SELECT i, SUM(d1) AS a, SUM(d2) AS b FROM t1 GROUP BY i HAVING a <> b;
|
||||
i a b
|
||||
6 -51.40 0.00
|
||||
SELECT i, ROUND(SUM(d1), 2) AS a, ROUND(SUM(d2), 2) AS b FROM t1 GROUP BY i
|
||||
HAVING a <> b;
|
||||
i a b
|
||||
6 -51.40 0.00
|
||||
drop table t1;
|
||||
|
@ -1730,7 +1730,7 @@ insert into t1 values ('Y');
|
||||
alter table t1 add b set ('Y','N') CHARACTER SET utf8 COLLATE utf8_bin;
|
||||
alter table t1 add c enum ('Y','N') CHARACTER SET utf8 COLLATE utf8_bin;
|
||||
select * from t1;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t1 t1 a a 254 1 1 Y 384 0 8
|
||||
def test t1 t1 b b 254 3 0 Y 2176 0 8
|
||||
def test t1 t1 c c 254 1 0 Y 384 0 8
|
||||
|
@ -180,14 +180,6 @@ t1 CREATE TABLE `t1` (
|
||||
`-(-1.1)` decimal(7,1) NOT NULL default '0.0'
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
drop table t1;
|
||||
CREATE TABLE t1 (a varchar(64) character set ucs2, b decimal(10,3));
|
||||
INSERT INTO t1 VALUES ("1.1", 0), ("2.1", 0);
|
||||
update t1 set b=a;
|
||||
SELECT * FROM t1;
|
||||
a b
|
||||
1.1 1.100
|
||||
2.1 2.100
|
||||
DROP TABLE t1;
|
||||
set session sql_mode='traditional';
|
||||
select 1e10/0e0;
|
||||
1e10/0e0
|
||||
@ -847,3 +839,6 @@ Error 1365 Division by 0
|
||||
INSERT INTO Sow6_2f VALUES ('a59b');
|
||||
ERROR HY000: Incorrect decimal value: 'a59b' for column 'col1' at row 1
|
||||
drop table Sow6_2f;
|
||||
select 10.3330000000000/12.34500000;
|
||||
10.3330000000000/12.34500000
|
||||
0.8370190360469825840421223160000
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user