mirror of
https://github.com/MariaDB/server.git
synced 2025-01-29 02:05:57 +01:00
Merge main 5.0 branch -> 5.0-build (team tree).
This commit is contained in:
commit
73fe3c3f78
28 changed files with 258 additions and 915 deletions
|
@ -1,4 +1,4 @@
|
|||
[MYSQL]
|
||||
post_commit_to = "commits@lists.mysql.com"
|
||||
post_push_to = "commits@lists.mysql.com"
|
||||
tree_name = "mysql-5.0"
|
||||
tree_name = "mysql-5.1-bugteam"
|
||||
|
|
|
@ -82,18 +82,18 @@ SET(CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} -DDBUG_OFF")
|
|||
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /wd4800 /wd4805")
|
||||
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /wd4800 /wd4805")
|
||||
|
||||
IF(CMAKE_GENERATOR MATCHES "Visual Studio 8")
|
||||
# Disable warnings in Visual Studio 8 and above
|
||||
IF(MSVC AND NOT CMAKE_GENERATOR MATCHES "Visual Studio 7")
|
||||
SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /wd4996")
|
||||
SET(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /wd4996")
|
||||
SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /wd4996")
|
||||
SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} /wd4996")
|
||||
SET(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} /wd4996")
|
||||
SET(CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} /wd4996")
|
||||
ENDIF(CMAKE_GENERATOR MATCHES "Visual Studio 8")
|
||||
|
||||
IF(CMAKE_GENERATOR MATCHES "Visual Studio 7" OR
|
||||
CMAKE_GENERATOR MATCHES "Visual Studio 8")
|
||||
ENDIF(MSVC AND NOT CMAKE_GENERATOR MATCHES "Visual Studio 7")
|
||||
|
||||
# Settings for Visual Studio 7 and above.
|
||||
IF(MSVC)
|
||||
# replace /MDd with /MTd
|
||||
STRING(REPLACE "/MD" "/MT" CMAKE_C_FLAGS_RELEASE ${CMAKE_C_FLAGS_RELEASE})
|
||||
STRING(REPLACE "/MD" "/MT" CMAKE_C_FLAGS_RELWITHDEBINFO ${CMAKE_C_FLAGS_RELWITHDEBINFO})
|
||||
|
@ -123,9 +123,7 @@ IF(CMAKE_GENERATOR MATCHES "Visual Studio 7" OR
|
|||
IF(NOT tmp_manifest)
|
||||
SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /MANIFEST:NO")
|
||||
ENDIF(NOT tmp_manifest)
|
||||
|
||||
ENDIF(CMAKE_GENERATOR MATCHES "Visual Studio 7" OR
|
||||
CMAKE_GENERATOR MATCHES "Visual Studio 8")
|
||||
ENDIF(MSVC)
|
||||
|
||||
ADD_DEFINITIONS("-D_WINDOWS -D__WIN__ -D_CRT_SECURE_NO_DEPRECATE")
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@ AC_INIT(sql/mysqld.cc)
|
|||
AC_CANONICAL_SYSTEM
|
||||
# The Docs Makefile.am parses this line!
|
||||
# remember to also change ndb version below and update version.c in ndb
|
||||
AM_INIT_AUTOMAKE(mysql, 5.0.70)
|
||||
AM_INIT_AUTOMAKE(mysql, 5.0.72)
|
||||
AM_CONFIG_HEADER([include/config.h:config.h.in])
|
||||
|
||||
PROTOCOL_VERSION=10
|
||||
|
@ -23,7 +23,7 @@ NDB_SHARED_LIB_VERSION=$NDB_SHARED_LIB_MAJOR_VERSION:0:0
|
|||
# ndb version
|
||||
NDB_VERSION_MAJOR=5
|
||||
NDB_VERSION_MINOR=0
|
||||
NDB_VERSION_BUILD=70
|
||||
NDB_VERSION_BUILD=72
|
||||
NDB_VERSION_STATUS=""
|
||||
|
||||
# Set all version vars based on $VERSION. How do we do this more elegant ?
|
||||
|
|
|
@ -1,268 +0,0 @@
|
|||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<VisualStudioProject
|
||||
ProjectType="Visual C++"
|
||||
Version="7.10"
|
||||
Name="taocrypt"
|
||||
SccProjectName=""
|
||||
SccLocalPath="">
|
||||
<Platforms>
|
||||
<Platform
|
||||
Name="Win32"/>
|
||||
</Platforms>
|
||||
<Configurations>
|
||||
<Configuration
|
||||
Name="Debug|Win32"
|
||||
OutputDirectory=".\debug_obj"
|
||||
IntermediateDirectory=".\debug_obj"
|
||||
ConfigurationType="4"
|
||||
UseOfMFC="0"
|
||||
ATLMinimizesCRunTimeLibraryUsage="FALSE"
|
||||
CharacterSet="2">
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
Optimization="0"
|
||||
OptimizeForProcessor="2"
|
||||
AdditionalIncludeDirectories="include,mySTL"
|
||||
PreprocessorDefinitions="WIN32;_DEBUG;_LIB"
|
||||
ExceptionHandling="FALSE"
|
||||
BasicRuntimeChecks="3"
|
||||
RuntimeLibrary="1"
|
||||
UsePrecompiledHeader="2"
|
||||
PrecompiledHeaderFile=".\debug_obj/taocrypt.pch"
|
||||
AssemblerListingLocation=".\debug_obj/"
|
||||
ObjectFile=".\debug_obj/"
|
||||
ProgramDataBaseFileName=".\debug_obj/"
|
||||
BrowseInformation="1"
|
||||
WarningLevel="3"
|
||||
SuppressStartupBanner="TRUE"
|
||||
DebugInformationFormat="4"
|
||||
CompileAs="0"/>
|
||||
<Tool
|
||||
Name="VCCustomBuildTool"/>
|
||||
<Tool
|
||||
Name="VCLibrarianTool"
|
||||
OutputFile=".\debug_obj\taocrypt.lib"
|
||||
SuppressStartupBanner="TRUE"/>
|
||||
<Tool
|
||||
Name="VCMIDLTool"/>
|
||||
<Tool
|
||||
Name="VCPostBuildEventTool"/>
|
||||
<Tool
|
||||
Name="VCPreBuildEventTool"/>
|
||||
<Tool
|
||||
Name="VCPreLinkEventTool"/>
|
||||
<Tool
|
||||
Name="VCResourceCompilerTool"
|
||||
PreprocessorDefinitions="_DEBUG"
|
||||
Culture="1033"/>
|
||||
<Tool
|
||||
Name="VCWebServiceProxyGeneratorTool"/>
|
||||
<Tool
|
||||
Name="VCXMLDataGeneratorTool"/>
|
||||
<Tool
|
||||
Name="VCManagedWrapperGeneratorTool"/>
|
||||
<Tool
|
||||
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
|
||||
</Configuration>
|
||||
<Configuration
|
||||
Name="Release|Win32"
|
||||
OutputDirectory=".\release_obj"
|
||||
IntermediateDirectory=".\release_obj"
|
||||
ConfigurationType="4"
|
||||
UseOfMFC="0"
|
||||
ATLMinimizesCRunTimeLibraryUsage="FALSE"
|
||||
CharacterSet="2">
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
Optimization="2"
|
||||
InlineFunctionExpansion="1"
|
||||
OptimizeForProcessor="2"
|
||||
AdditionalIncludeDirectories="include,mySTL"
|
||||
PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
|
||||
StringPooling="TRUE"
|
||||
ExceptionHandling="FALSE"
|
||||
RuntimeLibrary="0"
|
||||
EnableFunctionLevelLinking="TRUE"
|
||||
UsePrecompiledHeader="2"
|
||||
PrecompiledHeaderFile=".\release_obj/taocrypt.pch"
|
||||
AssemblerListingLocation=".\release_obj/"
|
||||
ObjectFile=".\release_obj/"
|
||||
ProgramDataBaseFileName=".\release_obj/"
|
||||
WarningLevel="3"
|
||||
SuppressStartupBanner="TRUE"
|
||||
CompileAs="0"/>
|
||||
<Tool
|
||||
Name="VCCustomBuildTool"/>
|
||||
<Tool
|
||||
Name="VCLibrarianTool"
|
||||
OutputFile=".\release_obj\taocrypt.lib"
|
||||
SuppressStartupBanner="TRUE"/>
|
||||
<Tool
|
||||
Name="VCMIDLTool"/>
|
||||
<Tool
|
||||
Name="VCPostBuildEventTool"/>
|
||||
<Tool
|
||||
Name="VCPreBuildEventTool"/>
|
||||
<Tool
|
||||
Name="VCPreLinkEventTool"/>
|
||||
<Tool
|
||||
Name="VCResourceCompilerTool"
|
||||
PreprocessorDefinitions="NDEBUG"
|
||||
Culture="1033"/>
|
||||
<Tool
|
||||
Name="VCWebServiceProxyGeneratorTool"/>
|
||||
<Tool
|
||||
Name="VCXMLDataGeneratorTool"/>
|
||||
<Tool
|
||||
Name="VCManagedWrapperGeneratorTool"/>
|
||||
<Tool
|
||||
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
|
||||
</Configuration>
|
||||
</Configurations>
|
||||
<References>
|
||||
</References>
|
||||
<Files>
|
||||
<Filter
|
||||
Name="Source Files"
|
||||
Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat">
|
||||
<File
|
||||
RelativePath="src\aes.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="src\aestables.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="src\algebra.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="src\arc4.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="src\asn.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="src\coding.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="src\des.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="src\dh.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="src\dsa.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="src\file.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="src\hash.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="src\integer.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="src\md2.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="src\md4.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="src\md5.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="src\misc.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="src\random.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="src\ripemd.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="src\rsa.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="src\sha.cpp">
|
||||
</File>
|
||||
</Filter>
|
||||
<Filter
|
||||
Name="Header Files"
|
||||
Filter="h;hpp;hxx;hm;inl">
|
||||
<File
|
||||
RelativePath="include\aes.hpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="include\algebra.hpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="include\arc4.hpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="include\asn.hpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="include\block.hpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="include\coding.hpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="include\des.hpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="include\dh.hpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="include\dsa.hpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="include\error.hpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="include\file.hpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="include\hash.hpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="include\hmac.hpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="include\integer.hpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="include\md2.hpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="include\md4.hpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="include\md5.hpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="include\misc.hpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="include\modarith.hpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="include\modes.hpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="include\random.hpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="include\ripemd.hpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="include\rsa.hpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="include\sha.hpp">
|
||||
</File>
|
||||
</Filter>
|
||||
</Files>
|
||||
<Globals>
|
||||
</Globals>
|
||||
</VisualStudioProject>
|
|
@ -1,211 +0,0 @@
|
|||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<VisualStudioProject
|
||||
ProjectType="Visual C++"
|
||||
Version="7.10"
|
||||
Name="yassl"
|
||||
SccProjectName=""
|
||||
SccLocalPath="">
|
||||
<Platforms>
|
||||
<Platform
|
||||
Name="Win32"/>
|
||||
</Platforms>
|
||||
<Configurations>
|
||||
<Configuration
|
||||
Name="Debug|Win32"
|
||||
OutputDirectory=".\debug_obj"
|
||||
IntermediateDirectory=".\debug_obj"
|
||||
ConfigurationType="4"
|
||||
UseOfMFC="0"
|
||||
ATLMinimizesCRunTimeLibraryUsage="FALSE"
|
||||
CharacterSet="2">
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
Optimization="0"
|
||||
OptimizeForProcessor="2"
|
||||
AdditionalIncludeDirectories="include,taocrypt\include,taocrypt\mySTL"
|
||||
PreprocessorDefinitions="WIN32;_DEBUG;_LIB;YASSL_PREFIX"
|
||||
ExceptionHandling="FALSE"
|
||||
BasicRuntimeChecks="3"
|
||||
RuntimeLibrary="1"
|
||||
UsePrecompiledHeader="2"
|
||||
PrecompiledHeaderFile=".\debug_obj/yassl.pch"
|
||||
AssemblerListingLocation=".\debug_obj/"
|
||||
ObjectFile=".\debug_obj/"
|
||||
ProgramDataBaseFileName=".\debug_obj/"
|
||||
BrowseInformation="1"
|
||||
WarningLevel="3"
|
||||
SuppressStartupBanner="TRUE"
|
||||
DebugInformationFormat="4"
|
||||
CompileAs="0"/>
|
||||
<Tool
|
||||
Name="VCCustomBuildTool"/>
|
||||
<Tool
|
||||
Name="VCLibrarianTool"
|
||||
OutputFile=".\debug_obj\yassl.lib"
|
||||
SuppressStartupBanner="TRUE"/>
|
||||
<Tool
|
||||
Name="VCMIDLTool"/>
|
||||
<Tool
|
||||
Name="VCPostBuildEventTool"/>
|
||||
<Tool
|
||||
Name="VCPreBuildEventTool"/>
|
||||
<Tool
|
||||
Name="VCPreLinkEventTool"/>
|
||||
<Tool
|
||||
Name="VCResourceCompilerTool"
|
||||
PreprocessorDefinitions="_DEBUG"
|
||||
Culture="1033"/>
|
||||
<Tool
|
||||
Name="VCWebServiceProxyGeneratorTool"/>
|
||||
<Tool
|
||||
Name="VCXMLDataGeneratorTool"/>
|
||||
<Tool
|
||||
Name="VCManagedWrapperGeneratorTool"/>
|
||||
<Tool
|
||||
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
|
||||
</Configuration>
|
||||
<Configuration
|
||||
Name="Release|Win32"
|
||||
OutputDirectory=".\release_obj"
|
||||
IntermediateDirectory=".\release_obj"
|
||||
ConfigurationType="4"
|
||||
UseOfMFC="0"
|
||||
ATLMinimizesCRunTimeLibraryUsage="FALSE"
|
||||
CharacterSet="2">
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
Optimization="2"
|
||||
InlineFunctionExpansion="1"
|
||||
OptimizeForProcessor="2"
|
||||
AdditionalIncludeDirectories="include,taocrypt\include,taocrypt\mySTL"
|
||||
PreprocessorDefinitions="WIN32;NDEBUG;_LIB;YASSL_PREFIX"
|
||||
StringPooling="TRUE"
|
||||
ExceptionHandling="FALSE"
|
||||
RuntimeLibrary="0"
|
||||
EnableFunctionLevelLinking="TRUE"
|
||||
UsePrecompiledHeader="2"
|
||||
PrecompiledHeaderFile=".\release_obj/yassl.pch"
|
||||
AssemblerListingLocation=".\release_obj/"
|
||||
ObjectFile=".\release_obj/"
|
||||
ProgramDataBaseFileName=".\release_obj/"
|
||||
WarningLevel="3"
|
||||
SuppressStartupBanner="TRUE"
|
||||
CompileAs="0"/>
|
||||
<Tool
|
||||
Name="VCCustomBuildTool"/>
|
||||
<Tool
|
||||
Name="VCLibrarianTool"
|
||||
OutputFile=".\release_obj\yassl.lib"
|
||||
SuppressStartupBanner="TRUE"/>
|
||||
<Tool
|
||||
Name="VCMIDLTool"/>
|
||||
<Tool
|
||||
Name="VCPostBuildEventTool"/>
|
||||
<Tool
|
||||
Name="VCPreBuildEventTool"/>
|
||||
<Tool
|
||||
Name="VCPreLinkEventTool"/>
|
||||
<Tool
|
||||
Name="VCResourceCompilerTool"
|
||||
PreprocessorDefinitions="NDEBUG"
|
||||
Culture="1033"/>
|
||||
<Tool
|
||||
Name="VCWebServiceProxyGeneratorTool"/>
|
||||
<Tool
|
||||
Name="VCXMLDataGeneratorTool"/>
|
||||
<Tool
|
||||
Name="VCManagedWrapperGeneratorTool"/>
|
||||
<Tool
|
||||
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
|
||||
</Configuration>
|
||||
</Configurations>
|
||||
<References>
|
||||
</References>
|
||||
<Files>
|
||||
<Filter
|
||||
Name="Source Files"
|
||||
Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat">
|
||||
<File
|
||||
RelativePath="src\buffer.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="src\cert_wrapper.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="src\crypto_wrapper.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="src\handshake.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="src\lock.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="src\log.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="src\socket_wrapper.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="src\ssl.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="src\timer.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="src\yassl_error.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="src\yassl_imp.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="src\yassl_int.cpp">
|
||||
</File>
|
||||
</Filter>
|
||||
<Filter
|
||||
Name="Header Files"
|
||||
Filter="h;hpp;hxx;hm;inl">
|
||||
<File
|
||||
RelativePath="include\buffer.hpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="include\cert_wrapper.hpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="include\crypto_wrapper.hpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="include\factory.hpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="include\handshake.hpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="include\lock.hpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="include\log.hpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="include\socket_wrapper.hpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="include\timer.hpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="include\yassl_error.hpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="include\yassl_imp.hpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="include\yassl_int.hpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="include\yassl_types.hpp">
|
||||
</File>
|
||||
</Filter>
|
||||
</Files>
|
||||
<Globals>
|
||||
</Globals>
|
||||
</VisualStudioProject>
|
|
@ -89,9 +89,20 @@ BOOL APIENTRY LibMain(HANDLE hInst,DWORD ul_reason_being_called,
|
|||
UNREFERENCED_PARAMETER(lpReserved);
|
||||
} /* LibMain */
|
||||
|
||||
|
||||
static BOOL do_libmain;
|
||||
int __stdcall DllMain(HANDLE hInst,DWORD ul_reason_being_called,LPVOID lpReserved)
|
||||
{
|
||||
return LibMain(hInst,ul_reason_being_called,lpReserved);
|
||||
/*
|
||||
Unless environment variable LIBMYSQL_DLLINIT is set, do nothing.
|
||||
The environment variable is checked once, during the first call to DllMain()
|
||||
(in DLL_PROCESS_ATTACH hook).
|
||||
*/
|
||||
if (ul_reason_being_called == DLL_PROCESS_ATTACH)
|
||||
do_libmain = (getenv("LIBMYSQL_DLLINIT") != NULL);
|
||||
if (do_libmain)
|
||||
return LibMain(hInst,ul_reason_being_called,lpReserved);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
#elif defined(WINDOWS)
|
||||
|
|
|
@ -1546,4 +1546,15 @@ 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 c1 1 c1 A NULL NULL NULL YES BTREE
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE t1 (a INTEGER AUTO_INCREMENT PRIMARY KEY, b INTEGER NOT NULL);
|
||||
INSERT IGNORE INTO t1 (b) VALUES (5);
|
||||
CREATE TABLE IF NOT EXISTS t2 (a INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY)
|
||||
SELECT a FROM t1;
|
||||
CREATE TABLE IF NOT EXISTS t2 (a INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY)
|
||||
SELECT a FROM t1;
|
||||
ERROR 23000: Duplicate entry '1' for key 1
|
||||
CREATE TABLE IF NOT EXISTS t2 (a INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY)
|
||||
SELECT a FROM t1;
|
||||
ERROR 23000: Duplicate entry '1' for key 1
|
||||
DROP TABLE t1, t2;
|
||||
End of 5.0 tests
|
||||
|
|
|
@ -205,4 +205,19 @@ Warnings:
|
|||
Warning 1364 Field 'id' doesn't have a default value
|
||||
drop view v1;
|
||||
drop table t1;
|
||||
create table t1 (a int unique);
|
||||
create table t2 (b int default 10);
|
||||
insert into t1 (a) values (1);
|
||||
insert into t2 (b) values (1);
|
||||
insert into t1 (a) select b from t2 on duplicate key update a=default;
|
||||
select * from t1;
|
||||
a
|
||||
NULL
|
||||
insert into t1 (a) values (1);
|
||||
insert into t1 (a) select b from t2 on duplicate key update a=default(b);
|
||||
select * from t1;
|
||||
a
|
||||
NULL
|
||||
10
|
||||
drop table t1, t2;
|
||||
End of 5.0 tests.
|
||||
|
|
|
@ -114,4 +114,16 @@ End of 4.1 tests
|
|||
SELECT 1 REGEXP NULL;
|
||||
1 REGEXP NULL
|
||||
NULL
|
||||
SELECT '' REGEXP BINARY NULL;
|
||||
'' REGEXP BINARY NULL
|
||||
NULL
|
||||
SELECT NULL REGEXP BINARY NULL;
|
||||
NULL REGEXP BINARY NULL
|
||||
NULL
|
||||
SELECT 'A' REGEXP BINARY NULL;
|
||||
'A' REGEXP BINARY NULL
|
||||
NULL
|
||||
SELECT "ABC" REGEXP BINARY NULL;
|
||||
"ABC" REGEXP BINARY NULL
|
||||
NULL
|
||||
End of 5.0 tests
|
||||
|
|
|
@ -7,7 +7,7 @@ start slave;
|
|||
stop slave;
|
||||
reset master;
|
||||
reset slave;
|
||||
reset master;
|
||||
start slave;
|
||||
create table t1(n int not null auto_increment primary key);
|
||||
insert into t1 values (NULL);
|
||||
drop table t1;
|
||||
|
@ -25,8 +25,8 @@ 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_ln/words.dat' into table t1 ignore 1 lines ;file_id=1
|
||||
master-bin.000001 517 Begin_load_query 1 1121 ;file_id=#;block_len=#
|
||||
master-bin.000001 1121 Execute_load_query 1 1269 use `test`; load data infile 'words.dat' into table t1 ignore 1 lines ;file_id=#
|
||||
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
|
||||
|
@ -41,7 +41,6 @@ master-bin.000001 247 Query 1 338 use `test`; insert into t1 values (NULL)
|
|||
flush logs;
|
||||
create table t5 (a int);
|
||||
drop table t5;
|
||||
start slave;
|
||||
flush logs;
|
||||
stop slave;
|
||||
create table t1 (n int);
|
||||
|
@ -55,8 +54,8 @@ 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_ln/words.dat' into table t1 ignore 1 lines ;file_id=1
|
||||
master-bin.000001 517 Begin_load_query 1 1121 ;file_id=#;block_len=#
|
||||
master-bin.000001 1121 Execute_load_query 1 1269 use `test`; load data infile 'words.dat' into table t1 ignore 1 lines ;file_id=#
|
||||
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';
|
||||
|
@ -84,8 +83,8 @@ 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 1271 use `test`; load data INFILE '../tmp/SQL_LOAD-2-1-1.data' INTO table t1 ignore 1 lines ;file_id=1
|
||||
slave-bin.000001 517 Begin_load_query 1 1121 ;file_id=#;block_len=#
|
||||
slave-bin.000001 1121 Execute_load_query 1 1271 use `test`; load data INFILE 'words.dat' INTO table t1 ignore 1 lines ;file_id=#
|
||||
slave-bin.000001 1271 Query 1 1347 use `test`; drop table t1
|
||||
slave-bin.000001 1347 Query 1 1433 use `test`; create table t5 (a int)
|
||||
slave-bin.000001 1433 Query 1 1509 use `test`; drop table t5
|
||||
|
|
|
@ -560,4 +560,27 @@ select * from t2
|
|||
where id in (select id from t2 as x1 where (t2.cur_date is null));
|
||||
id cur_date
|
||||
drop table t1,t2;
|
||||
SELECT
|
||||
CAST('NULL' AS DATE) <=> CAST('2008-01-01' AS DATE) n1,
|
||||
CAST('2008-01-01' AS DATE) <=> CAST('NULL' AS DATE) n2,
|
||||
CAST('NULL' AS DATE) <=> CAST('NULL' AS DATE) n3,
|
||||
CAST('NULL' AS DATE) <> CAST('2008-01-01' AS DATE) n4,
|
||||
CAST('2008-01-01' AS DATE) <> CAST('NULL' AS DATE) n5,
|
||||
CAST('NULL' AS DATE) <> CAST('NULL' AS DATE) n6,
|
||||
CAST('NULL' AS DATE) < CAST('2008-01-01' AS DATE) n7,
|
||||
CAST('2008-01-01' AS DATE) < CAST('NULL' AS DATE) n8,
|
||||
CAST('NULL' AS DATE) < CAST('NULL' AS DATE) n9;
|
||||
n1 n2 n3 n4 n5 n6 n7 n8 n9
|
||||
0 0 1 NULL NULL NULL NULL NULL NULL
|
||||
Warnings:
|
||||
Warning 1292 Truncated incorrect datetime value: 'NULL'
|
||||
Warning 1292 Truncated incorrect datetime value: 'NULL'
|
||||
Warning 1292 Truncated incorrect datetime value: 'NULL'
|
||||
Warning 1292 Truncated incorrect datetime value: 'NULL'
|
||||
Warning 1292 Truncated incorrect datetime value: 'NULL'
|
||||
Warning 1292 Truncated incorrect datetime value: 'NULL'
|
||||
Warning 1292 Truncated incorrect datetime value: 'NULL'
|
||||
Warning 1292 Truncated incorrect datetime value: 'NULL'
|
||||
Warning 1292 Truncated incorrect datetime value: 'NULL'
|
||||
Warning 1292 Truncated incorrect datetime value: 'NULL'
|
||||
End of 5.0 tests
|
||||
|
|
|
@ -1172,4 +1172,22 @@ SHOW INDEX FROM t1;
|
|||
DROP TABLE t1;
|
||||
|
||||
|
||||
#
|
||||
# Bug#38821: Assert table->auto_increment_field_not_null failed in open_table()
|
||||
#
|
||||
CREATE TABLE t1 (a INTEGER AUTO_INCREMENT PRIMARY KEY, b INTEGER NOT NULL);
|
||||
INSERT IGNORE INTO t1 (b) VALUES (5);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS t2 (a INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY)
|
||||
SELECT a FROM t1;
|
||||
--error 1062
|
||||
CREATE TABLE IF NOT EXISTS t2 (a INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY)
|
||||
SELECT a FROM t1;
|
||||
--error 1062
|
||||
CREATE TABLE IF NOT EXISTS t2 (a INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY)
|
||||
SELECT a FROM t1;
|
||||
|
||||
DROP TABLE t1, t2;
|
||||
|
||||
|
||||
--echo End of 5.0 tests
|
||||
|
|
|
@ -145,5 +145,24 @@ insert into t1 values(default);
|
|||
drop view v1;
|
||||
drop table t1;
|
||||
|
||||
#
|
||||
# Bug #39002: crash with
|
||||
# INSERT ... SELECT ... ON DUPLICATE KEY UPDATE col=DEFAULT
|
||||
#
|
||||
|
||||
create table t1 (a int unique);
|
||||
create table t2 (b int default 10);
|
||||
insert into t1 (a) values (1);
|
||||
insert into t2 (b) values (1);
|
||||
|
||||
insert into t1 (a) select b from t2 on duplicate key update a=default;
|
||||
select * from t1;
|
||||
|
||||
insert into t1 (a) values (1);
|
||||
insert into t1 (a) select b from t2 on duplicate key update a=default(b);
|
||||
select * from t1;
|
||||
|
||||
drop table t1, t2;
|
||||
|
||||
--echo End of 5.0 tests.
|
||||
|
||||
|
|
|
@ -17,8 +17,6 @@ im_options_set : Bug#20294: Instance manager tests fail randomly
|
|||
im_options_unset : Bug#20294: Instance manager tests fail randomly
|
||||
im_utils : Bug#20294: Instance manager tests fail randomly
|
||||
grant_cache : Bug#32651: grant_cache.test fails
|
||||
rpl_log : Bug#32653: rpl_log.test fails randomly
|
||||
rpl_view : Bug#32654: rpl_view.test fails randomly
|
||||
ndb_backup_print : Bug#32357: ndb_backup_print test fails sometimes in pushbuild
|
||||
rpl_log_pos : Bug#8693 Test 'rpl_log_pos' fails sometimes
|
||||
kill : Bug#29149 Test "kill" fails on Windows
|
||||
|
|
|
@ -64,4 +64,14 @@ drop table t1;
|
|||
|
||||
SELECT 1 REGEXP NULL;
|
||||
|
||||
|
||||
#
|
||||
# Bug #39021: SELECT REGEXP BINARY NULL never returns
|
||||
#
|
||||
|
||||
SELECT '' REGEXP BINARY NULL;
|
||||
SELECT NULL REGEXP BINARY NULL;
|
||||
SELECT 'A' REGEXP BINARY NULL;
|
||||
SELECT "ABC" REGEXP BINARY NULL;
|
||||
|
||||
--echo End of 5.0 tests
|
||||
|
|
|
@ -55,6 +55,18 @@ DROP DATABASE IF EXISTS mysqltest3;
|
|||
CREATE DATABASE mysqltest1;
|
||||
CREATE DATABASE mysqltest2;
|
||||
CREATE TABLE mysqltest1.t1 (f1 BIGINT) ENGINE= "InnoDB";
|
||||
# Prevent Bug#26687 rpl_ddl test fails if run with --innodb option
|
||||
# The current testscripts + the expected result need that the slave uses MyISAM
|
||||
# for the table mysqltest.t1.
|
||||
sync_slave_with_master;
|
||||
connection slave;
|
||||
if (`SELECT COUNT(*) FROM INFORMATION_SCHEMA.TABLES
|
||||
WHERE TABLE_SCHEMA = 'mysqltest1' AND TABLE_NAME = 't1'
|
||||
AND ENGINE <> 'MyISAM'`)
|
||||
{
|
||||
skip This test needs on slave side: InnoDB disabled, default engine: MyISAM;
|
||||
}
|
||||
connection master;
|
||||
INSERT INTO mysqltest1.t1 SET f1= 0;
|
||||
CREATE TABLE mysqltest1.t2 (f1 BIGINT) ENGINE= "InnoDB";
|
||||
CREATE TABLE mysqltest1.t3 (f1 BIGINT) ENGINE= "InnoDB";
|
||||
|
|
|
@ -1 +1 @@
|
|||
|
||||
--log-slave-updates
|
||||
|
|
|
@ -13,22 +13,15 @@ save_master_pos;
|
|||
connection slave;
|
||||
sync_with_master;
|
||||
stop slave;
|
||||
--source include/wait_for_slave_to_stop.inc
|
||||
reset master;
|
||||
reset slave;
|
||||
# We are going to read the slave's binlog which contains file_id (for some LOAD
|
||||
# DATA INFILE); to make it repeatable (not influenced by other tests), we need
|
||||
# to stop and start the slave, to be sure file_id will start from 1.
|
||||
# This can be done with 'server_stop slave', but
|
||||
# this would require the manager, so most of the time the test will be skipped
|
||||
# :(
|
||||
# To workaround this, I (Guilhem) add a (empty) rpl_log-slave.opt (because when
|
||||
# mysql-test-run finds such a file it restarts the slave before doing the
|
||||
# test). That's not very elegant but I could find no better way, sorry.
|
||||
start slave;
|
||||
--source include/wait_for_slave_to_start.inc
|
||||
|
||||
let $VERSION=`select version()`;
|
||||
|
||||
connection master;
|
||||
reset master;
|
||||
create table t1(n int not null auto_increment primary key);
|
||||
insert into t1 values (NULL);
|
||||
drop table t1;
|
||||
|
@ -37,6 +30,7 @@ load data infile '../std_data_ln/words.dat' into table t1 ignore 1 lines;
|
|||
select count(*) from t1;
|
||||
drop table t1;
|
||||
--replace_result $VERSION VERSION
|
||||
--replace_regex /file_id=[0-9]+/file_id=#/ /block_len=[0-9]+/block_len=#/ /infile '.+'/infile 'words.dat'/
|
||||
show binlog events;
|
||||
show binlog events from 98 limit 1;
|
||||
show binlog events from 98 limit 2;
|
||||
|
@ -69,10 +63,10 @@ connection slave;
|
|||
# Note that the above 'slave start' will cause a 3rd rotate event (a fake one)
|
||||
# to go into the relay log (the master always sends a fake one when replication
|
||||
# starts).
|
||||
start slave;
|
||||
sync_with_master;
|
||||
flush logs;
|
||||
stop slave;
|
||||
--source include/wait_for_slave_to_stop.inc
|
||||
connection master;
|
||||
|
||||
# Create some entries for second log
|
||||
|
@ -81,6 +75,7 @@ create table t1 (n int);
|
|||
insert into t1 values (1);
|
||||
drop table t1;
|
||||
--replace_result $VERSION VERSION
|
||||
--replace_regex /file_id=[0-9]+/file_id=#/ /block_len=[0-9]+/block_len=#/ /infile '.+'/infile 'words.dat'/
|
||||
show binlog events;
|
||||
--replace_result $VERSION VERSION
|
||||
show binlog events in 'master-bin.000002';
|
||||
|
@ -88,9 +83,11 @@ show binary logs;
|
|||
save_master_pos;
|
||||
connection slave;
|
||||
start slave;
|
||||
--source include/wait_for_slave_to_start.inc
|
||||
sync_with_master;
|
||||
show binary logs;
|
||||
--replace_result $MASTER_MYPORT MASTER_PORT $VERSION VERSION
|
||||
--replace_regex /file_id=[0-9]+/file_id=#/ /block_len=[0-9]+/block_len=#/ /INFILE '.+'/INFILE 'words.dat'/
|
||||
show binlog events in 'slave-bin.000001' from 4;
|
||||
--replace_result $MASTER_MYPORT MASTER_PORT $VERSION VERSION
|
||||
show binlog events in 'slave-bin.000002' from 4;
|
||||
|
|
|
@ -1 +0,0 @@
|
|||
--replicate-ignore-table=test.foo
|
|
@ -388,4 +388,20 @@ where id in (select id from t2 as x1 where (t2.cur_date is null));
|
|||
|
||||
drop table t1,t2;
|
||||
|
||||
|
||||
#
|
||||
# Bug #37526: asymertic operator <=> in trigger
|
||||
#
|
||||
SELECT
|
||||
CAST('NULL' AS DATE) <=> CAST('2008-01-01' AS DATE) n1,
|
||||
CAST('2008-01-01' AS DATE) <=> CAST('NULL' AS DATE) n2,
|
||||
CAST('NULL' AS DATE) <=> CAST('NULL' AS DATE) n3,
|
||||
CAST('NULL' AS DATE) <> CAST('2008-01-01' AS DATE) n4,
|
||||
CAST('2008-01-01' AS DATE) <> CAST('NULL' AS DATE) n5,
|
||||
CAST('NULL' AS DATE) <> CAST('NULL' AS DATE) n6,
|
||||
CAST('NULL' AS DATE) < CAST('2008-01-01' AS DATE) n7,
|
||||
CAST('2008-01-01' AS DATE) < CAST('NULL' AS DATE) n8,
|
||||
CAST('NULL' AS DATE) < CAST('NULL' AS DATE) n9;
|
||||
|
||||
|
||||
--echo End of 5.0 tests
|
||||
|
|
|
@ -1,382 +0,0 @@
|
|||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<VisualStudioProject
|
||||
ProjectType="Visual C++"
|
||||
Version="7.10"
|
||||
Name="mysqlmanager"
|
||||
ProjectGUID="{6D524B3E-210A-4FCD-8D41-FEC0D21E83AC}"
|
||||
Keyword="Win32Proj">
|
||||
<Platforms>
|
||||
<Platform
|
||||
Name="Win32"/>
|
||||
</Platforms>
|
||||
<Configurations>
|
||||
<Configuration
|
||||
Name="Debug|Win32"
|
||||
OutputDirectory=".\debug_obj"
|
||||
IntermediateDirectory=".\debug_obj"
|
||||
ConfigurationType="1"
|
||||
CharacterSet="2">
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
Optimization="0"
|
||||
OptimizeForProcessor="2"
|
||||
AdditionalIncludeDirectories="..\..\include,../../extra/yassl/include"
|
||||
PreprocessorDefinitions="MYSQL_INSTANCE_MANAGER;MYSQL_SERVER;_DEBUG;SAFEMALLOC;SAFE_MUTEX;_WINDOWS;CONSOLE"
|
||||
MinimalRebuild="TRUE"
|
||||
ExceptionHandling="FALSE"
|
||||
BasicRuntimeChecks="3"
|
||||
RuntimeLibrary="1"
|
||||
UsePrecompiledHeader="0"
|
||||
WarningLevel="3"
|
||||
Detect64BitPortabilityProblems="TRUE"
|
||||
DebugInformationFormat="4"/>
|
||||
<Tool
|
||||
Name="VCCustomBuildTool"/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="wsock32.lib"
|
||||
OutputFile=".\debug/mysqlmanager.exe"
|
||||
LinkIncremental="1"
|
||||
GenerateDebugInformation="TRUE"
|
||||
ProgramDatabaseFile=".\debug/mysqlmanager.pdb"
|
||||
GenerateMapFile="TRUE"
|
||||
MapFileName=".\debug/mysqlmanager.map"
|
||||
SubSystem="1"
|
||||
TargetMachine="1"/>
|
||||
<Tool
|
||||
Name="VCMIDLTool"/>
|
||||
<Tool
|
||||
Name="VCPostBuildEventTool"/>
|
||||
<Tool
|
||||
Name="VCPreBuildEventTool"/>
|
||||
<Tool
|
||||
Name="VCPreLinkEventTool"/>
|
||||
<Tool
|
||||
Name="VCResourceCompilerTool"/>
|
||||
<Tool
|
||||
Name="VCWebServiceProxyGeneratorTool"/>
|
||||
<Tool
|
||||
Name="VCXMLDataGeneratorTool"/>
|
||||
<Tool
|
||||
Name="VCWebDeploymentTool"/>
|
||||
<Tool
|
||||
Name="VCManagedWrapperGeneratorTool"/>
|
||||
<Tool
|
||||
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
|
||||
</Configuration>
|
||||
<Configuration
|
||||
Name="Release|Win32"
|
||||
OutputDirectory=".\release_obj"
|
||||
IntermediateDirectory=".\release_obj"
|
||||
ConfigurationType="1"
|
||||
CharacterSet="2">
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
Optimization="2"
|
||||
InlineFunctionExpansion="1"
|
||||
OptimizeForProcessor="2"
|
||||
AdditionalIncludeDirectories="..\..\include,../../extra/yassl/include"
|
||||
PreprocessorDefinitions="MYSQL_INSTANCE_MANAGER;MYSQL_SERVER;_WINDOWS;CONSOLE"
|
||||
ExceptionHandling="FALSE"
|
||||
RuntimeLibrary="0"
|
||||
UsePrecompiledHeader="0"
|
||||
WarningLevel="3"
|
||||
Detect64BitPortabilityProblems="TRUE"
|
||||
DebugInformationFormat="3"/>
|
||||
<Tool
|
||||
Name="VCCustomBuildTool"/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="wsock32.lib"
|
||||
OutputFile=".\release/mysqlmanager.exe"
|
||||
LinkIncremental="1"
|
||||
GenerateDebugInformation="TRUE"
|
||||
ProgramDatabaseFile=".\release/mysqlmanager.pdb"
|
||||
GenerateMapFile="TRUE"
|
||||
MapFileName=".\release/mysqlmanager.map"
|
||||
SubSystem="1"
|
||||
OptimizeReferences="2"
|
||||
EnableCOMDATFolding="2"
|
||||
TargetMachine="1"/>
|
||||
<Tool
|
||||
Name="VCMIDLTool"/>
|
||||
<Tool
|
||||
Name="VCPostBuildEventTool"/>
|
||||
<Tool
|
||||
Name="VCPreBuildEventTool"/>
|
||||
<Tool
|
||||
Name="VCPreLinkEventTool"/>
|
||||
<Tool
|
||||
Name="VCResourceCompilerTool"/>
|
||||
<Tool
|
||||
Name="VCWebServiceProxyGeneratorTool"/>
|
||||
<Tool
|
||||
Name="VCXMLDataGeneratorTool"/>
|
||||
<Tool
|
||||
Name="VCWebDeploymentTool"/>
|
||||
<Tool
|
||||
Name="VCManagedWrapperGeneratorTool"/>
|
||||
<Tool
|
||||
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
|
||||
</Configuration>
|
||||
</Configurations>
|
||||
<References>
|
||||
</References>
|
||||
<Files>
|
||||
<Filter
|
||||
Name="Source Files"
|
||||
Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
|
||||
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
|
||||
<File
|
||||
RelativePath=".\buffer.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\sql\client.c">
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32">
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
|
||||
</FileConfiguration>
|
||||
<FileConfiguration
|
||||
Name="Release|Win32">
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\command.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\commands.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\libmysql\get_password.c">
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32">
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
|
||||
</FileConfiguration>
|
||||
<FileConfiguration
|
||||
Name="Release|Win32">
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\guardian.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\IMService.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\instance.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\instance_map.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\instance_options.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\listener.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\log.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\manager.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\messages.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\sql\mini_client_errors.c">
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32">
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
|
||||
</FileConfiguration>
|
||||
<FileConfiguration
|
||||
Name="Release|Win32">
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\mysql_connection.cpp">
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32">
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
|
||||
</FileConfiguration>
|
||||
<FileConfiguration
|
||||
Name="Release|Win32">
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\mysqlmanager.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\sql\net_serv.cpp">
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32">
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
|
||||
</FileConfiguration>
|
||||
<FileConfiguration
|
||||
Name="Release|Win32">
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\options.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\sql\pack.c">
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32">
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
|
||||
</FileConfiguration>
|
||||
<FileConfiguration
|
||||
Name="Release|Win32">
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\parse.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\parse_output.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\sql\password.c">
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32">
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
|
||||
</FileConfiguration>
|
||||
<FileConfiguration
|
||||
Name="Release|Win32">
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\priv.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\protocol.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\sql\sql_state.c">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\thread_registry.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\user_map.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\WindowsService.cpp">
|
||||
</File>
|
||||
</Filter>
|
||||
<Filter
|
||||
Name="Header Files"
|
||||
Filter="h;hpp;hxx;hm;inl;inc;xsd"
|
||||
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}">
|
||||
<File
|
||||
RelativePath=".\buffer.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\command.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\commands.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\factory.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\guardian.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\IMService.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\instance.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\instance_map.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\instance_options.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\listener.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\log.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\manager.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\messages.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\mysql_connection.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\mysql_manager_error.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\options.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\parse.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\parse_output.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\portability.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\priv.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\protocol.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\thread_registry.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\user_map.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\WindowsService.h">
|
||||
</File>
|
||||
</Filter>
|
||||
</Files>
|
||||
<Globals>
|
||||
</Globals>
|
||||
</VisualStudioProject>
|
|
@ -6046,6 +6046,13 @@ Item *Item_default_value::transform(Item_transformer transformer, byte *args)
|
|||
{
|
||||
DBUG_ASSERT(!current_thd->is_stmt_prepare());
|
||||
|
||||
/*
|
||||
If the value of arg is NULL, then this object represents a constant,
|
||||
so further transformation is unnecessary (and impossible).
|
||||
*/
|
||||
if (!arg)
|
||||
return 0;
|
||||
|
||||
Item *new_item= arg->transform(transformer, args);
|
||||
if (!new_item)
|
||||
return 0;
|
||||
|
|
|
@ -966,19 +966,24 @@ get_datetime_value(THD *thd, Item ***item_arg, Item **cache_arg,
|
|||
1 if items are equal or both are null
|
||||
0 otherwise
|
||||
If is_nulls_eq is FALSE:
|
||||
-1 a < b or one of items is null
|
||||
-1 a < b or at least one item is null
|
||||
0 a == b
|
||||
1 a > b
|
||||
See the table:
|
||||
is_nulls_eq | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 |
|
||||
a_is_null | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 |
|
||||
b_is_null | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 0 |
|
||||
result | 1 | 0 | 0 |0/1|-1 |-1 |-1 |-1/0/1|
|
||||
*/
|
||||
|
||||
int Arg_comparator::compare_datetime()
|
||||
{
|
||||
bool is_null= FALSE;
|
||||
bool a_is_null, b_is_null;
|
||||
ulonglong a_value, b_value;
|
||||
|
||||
/* Get DATE/DATETIME/TIME value of the 'a' item. */
|
||||
a_value= (*get_value_func)(thd, &a, &a_cache, *b, &is_null);
|
||||
if (!is_nulls_eq && is_null)
|
||||
a_value= (*get_value_func)(thd, &a, &a_cache, *b, &a_is_null);
|
||||
if (!is_nulls_eq && a_is_null)
|
||||
{
|
||||
if (owner)
|
||||
owner->null_value= 1;
|
||||
|
@ -986,14 +991,15 @@ int Arg_comparator::compare_datetime()
|
|||
}
|
||||
|
||||
/* Get DATE/DATETIME/TIME value of the 'b' item. */
|
||||
b_value= (*get_value_func)(thd, &b, &b_cache, *a, &is_null);
|
||||
if (is_null)
|
||||
b_value= (*get_value_func)(thd, &b, &b_cache, *a, &b_is_null);
|
||||
if (a_is_null || b_is_null)
|
||||
{
|
||||
if (owner)
|
||||
owner->null_value= is_nulls_eq ? 0 : 1;
|
||||
return is_nulls_eq ? 1 : -1;
|
||||
return is_nulls_eq ? (a_is_null == b_is_null) : -1;
|
||||
}
|
||||
|
||||
/* Here we have two not-NULL values. */
|
||||
if (owner)
|
||||
owner->null_value= 0;
|
||||
|
||||
|
@ -4341,8 +4347,20 @@ void Item_func_like::cleanup()
|
|||
|
||||
#ifdef USE_REGEX
|
||||
|
||||
bool
|
||||
Item_func_regex::regcomp(bool send_error)
|
||||
/**
|
||||
@brief Compile regular expression.
|
||||
|
||||
@param[in] send_error send error message if any.
|
||||
|
||||
@details Make necessary character set conversion then
|
||||
compile regular expression passed in the args[1].
|
||||
|
||||
@retval 0 success.
|
||||
@retval 1 error occurred.
|
||||
@retval -1 given null regular expression.
|
||||
*/
|
||||
|
||||
int Item_func_regex::regcomp(bool send_error)
|
||||
{
|
||||
char buff[MAX_FIELD_WIDTH];
|
||||
String tmp(buff,sizeof(buff),&my_charset_bin);
|
||||
|
@ -4350,12 +4368,12 @@ Item_func_regex::regcomp(bool send_error)
|
|||
int error;
|
||||
|
||||
if (args[1]->null_value)
|
||||
return TRUE;
|
||||
return -1;
|
||||
|
||||
if (regex_compiled)
|
||||
{
|
||||
if (!stringcmp(res, &prev_regexp))
|
||||
return FALSE;
|
||||
return 0;
|
||||
prev_regexp.copy(*res);
|
||||
my_regfree(&preg);
|
||||
regex_compiled= 0;
|
||||
|
@ -4367,7 +4385,7 @@ Item_func_regex::regcomp(bool send_error)
|
|||
uint dummy_errors;
|
||||
if (conv.copy(res->ptr(), res->length(), res->charset(),
|
||||
regex_lib_charset, &dummy_errors))
|
||||
return TRUE;
|
||||
return 1;
|
||||
res= &conv;
|
||||
}
|
||||
|
||||
|
@ -4379,10 +4397,10 @@ Item_func_regex::regcomp(bool send_error)
|
|||
(void) my_regerror(error, &preg, buff, sizeof(buff));
|
||||
my_error(ER_REGEXP_ERROR, MYF(0), buff);
|
||||
}
|
||||
return TRUE;
|
||||
return 1;
|
||||
}
|
||||
regex_compiled= 1;
|
||||
return FALSE;
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
|
@ -4420,13 +4438,14 @@ Item_func_regex::fix_fields(THD *thd, Item **ref)
|
|||
const_item_cache=args[0]->const_item() && args[1]->const_item();
|
||||
if (!regex_compiled && args[1]->const_item())
|
||||
{
|
||||
if (args[1]->null_value)
|
||||
int comp_res= regcomp(TRUE);
|
||||
if (comp_res == -1)
|
||||
{ // Will always return NULL
|
||||
maybe_null=1;
|
||||
fixed= 1;
|
||||
return FALSE;
|
||||
}
|
||||
if (regcomp(TRUE))
|
||||
else if (comp_res)
|
||||
return TRUE;
|
||||
regex_is_const= 1;
|
||||
maybe_null= args[0]->maybe_null;
|
||||
|
|
|
@ -1323,7 +1323,7 @@ class Item_func_regex :public Item_bool_func
|
|||
CHARSET_INFO *regex_lib_charset;
|
||||
int regex_lib_flags;
|
||||
String conv;
|
||||
bool regcomp(bool send_error);
|
||||
int regcomp(bool send_error);
|
||||
public:
|
||||
Item_func_regex(Item *a,Item *b) :Item_bool_func(a,b),
|
||||
regex_compiled(0),regex_is_const(0) {}
|
||||
|
|
|
@ -2897,7 +2897,11 @@ bool select_insert::send_data(List<Item> &values)
|
|||
DBUG_RETURN(1);
|
||||
}
|
||||
}
|
||||
if (!(error= write_record(thd, table, &info)))
|
||||
|
||||
error= write_record(thd, table, &info);
|
||||
table->auto_increment_field_not_null= FALSE;
|
||||
|
||||
if (!error)
|
||||
{
|
||||
if (table->triggers || info.handle_duplicates == DUP_UPDATE)
|
||||
{
|
||||
|
|
18
win/build-vs9.bat
Normal file
18
win/build-vs9.bat
Normal file
|
@ -0,0 +1,18 @@
|
|||
@echo off
|
||||
|
||||
REM Copyright (C) 2006 MySQL AB
|
||||
REM
|
||||
REM This program is free software; you can redistribute it and/or modify
|
||||
REM it under the terms of the GNU General Public License as published by
|
||||
REM the Free Software Foundation; version 2 of the License.
|
||||
REM
|
||||
REM This program is distributed in the hope that it will be useful,
|
||||
REM but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
REM MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
REM GNU General Public License for more details.
|
||||
REM
|
||||
REM You should have received a copy of the GNU General Public License
|
||||
REM along with this program; if not, write to the Free Software
|
||||
REM Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
cmake -G "Visual Studio 9 2008"
|
||||
|
18
win/build-vs9_x64.bat
Normal file
18
win/build-vs9_x64.bat
Normal file
|
@ -0,0 +1,18 @@
|
|||
@echo off
|
||||
|
||||
REM Copyright (C) 2006 MySQL AB
|
||||
REM
|
||||
REM This program is free software; you can redistribute it and/or modify
|
||||
REM it under the terms of the GNU General Public License as published by
|
||||
REM the Free Software Foundation; version 2 of the License.
|
||||
REM
|
||||
REM This program is distributed in the hope that it will be useful,
|
||||
REM but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
REM MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
REM GNU General Public License for more details.
|
||||
REM
|
||||
REM You should have received a copy of the GNU General Public License
|
||||
REM along with this program; if not, write to the Free Software
|
||||
REM Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
cmake -G "Visual Studio 9 2008 Win64"
|
||||
|
|
@ -194,7 +194,7 @@ extern const char * const z_errmsg[10]; /* indexed by 2-zlib_error */
|
|||
# ifdef __TURBOC__
|
||||
# define NO_vsnprintf
|
||||
# endif
|
||||
# ifdef WIN32
|
||||
# if defined(WIN32) && (!defined(_MSC_VER) || _MSC_VER < 1500)
|
||||
/* In Win32, vsnprintf is available as the "non-ANSI" _vsnprintf. */
|
||||
# if !defined(vsnprintf) && !defined(NO_vsnprintf)
|
||||
# define vsnprintf _vsnprintf
|
||||
|
|
Loading…
Add table
Reference in a new issue