Skip to content

Commit a1b13df

Browse files
cpowerscpowers
cpowers
authored and
cpowers
committed
WL#4896 "Performance Schema Net IO"
Merge with mysql-trunk
2 parents fb1f209 + d340ab4 commit a1b13df

File tree

197 files changed

+2890
-2020
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

197 files changed

+2890
-2020
lines changed

client/client_priv.h

+1
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,7 @@ enum options_client
7575
OPT_SLAP_POST_SYSTEM,
7676
OPT_SLAP_COMMIT,
7777
OPT_SLAP_DETACH,
78+
OPT_SLAP_NO_DROP,
7879
OPT_MYSQL_REPLACE_INTO, OPT_BASE64_OUTPUT_MODE, OPT_SERVER_ID,
7980
OPT_FIX_TABLE_NAMES, OPT_FIX_DB_NAMES, OPT_SSL_VERIFY_SERVER_CERT,
8081
OPT_AUTO_VERTICAL_OUTPUT,

client/mysqlslap.c

+8-3
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ const char *delimiter= "\n";
128128

129129
const char *create_schema_string= "mysqlslap";
130130

131-
static my_bool opt_preserve= TRUE;
131+
static my_bool opt_preserve= TRUE, opt_no_drop= FALSE;
132132
static my_bool debug_info_flag= 0, debug_check_flag= 0;
133133
static my_bool opt_only_print= FALSE;
134134
static my_bool opt_compress= FALSE, tty_password= FALSE,
@@ -609,6 +609,8 @@ static struct my_option my_long_options[] =
609609
REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
610610
{"iterations", 'i', "Number of times to run the tests.", &iterations,
611611
&iterations, 0, GET_UINT, REQUIRED_ARG, 1, 0, 0, 0, 0, 0},
612+
{"no-drop", OPT_SLAP_NO_DROP, "Do not drop the schema after the test.",
613+
&opt_no_drop, &opt_no_drop, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0},
612614
{"number-char-cols", 'x',
613615
"Number of VARCHAR columns to create in table if specifying --auto-generate-sql.",
614616
&num_char_cols_opt, &num_char_cols_opt, 0, GET_STR, REQUIRED_ARG,
@@ -1151,8 +1153,11 @@ get_options(int *argc,char ***argv)
11511153
if (!user)
11521154
user= (char *)"root";
11531155

1154-
/* If something is created we clean it up, otherwise we leave schemas alone */
1155-
if (create_string || auto_generate_sql)
1156+
/*
1157+
If something is created and --no-drop is not specified, we drop the
1158+
schema.
1159+
*/
1160+
if (!opt_no_drop && (create_string || auto_generate_sql))
11561161
opt_preserve= FALSE;
11571162

11581163
if (auto_generate_sql && (create_string || user_supplied_query))

cmake/os/WindowsCache.cmake

-3
Original file line numberDiff line numberDiff line change
@@ -77,9 +77,6 @@ SET(HAVE_FTRUNCATE CACHE INTERNAL "")
7777
SET(HAVE_GETADDRINFO 1 CACHE INTERNAL "")
7878
SET(HAVE_GETCWD 1 CACHE INTERNAL "")
7979
SET(HAVE_GETHOSTBYADDR_R CACHE INTERNAL "")
80-
SET(HAVE_GETHOSTBYNAME_R CACHE INTERNAL "")
81-
SET(HAVE_GETHOSTBYNAME_R_GLIBC2_STYLE CACHE INTERNAL "")
82-
SET(HAVE_GETHOSTBYNAME_R_RETURN_INT CACHE INTERNAL "")
8380
SET(HAVE_GETHRTIME CACHE INTERNAL "")
8481
SET(HAVE_GETLINE CACHE INTERNAL "")
8582
SET(HAVE_GETNAMEINFO CACHE INTERNAL "")

cmake/ssl.cmake

+1-9
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Copyright (C) 2009 Sun Microsystems, Inc
1+
# Copyright (c) 2009, 2011, Oracle and/or its affiliates. All rights reserved.
22
#
33
# This program is free software; you can redistribute it and/or modify
44
# it under the terms of the GNU General Public License as published by
@@ -27,16 +27,8 @@ MACRO (MYSQL_USE_BUNDLED_SSL)
2727
SET(SSL_INTERNAL_INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/extra/yassl/taocrypt/mySTL)
2828
SET(SSL_DEFINES "-DHAVE_YASSL -DYASSL_PURE_C -DYASSL_PREFIX -DHAVE_OPENSSL -DYASSL_THREAD_SAFE")
2929
CHANGE_SSL_SETTINGS("bundled")
30-
#Remove -fno-implicit-templates
31-
#(yassl sources cannot be compiled with it)
32-
SET(SAVE_CXX_FLAGS ${CMAKE_CXX_FLAGS})
33-
IF(CMAKE_CXX_FLAGS)
34-
STRING(REPLACE "-fno-implicit-templates" "" CMAKE_CXX_FLAGS
35-
${CMAKE_CXX_FLAGS})
36-
ENDIF()
3730
ADD_SUBDIRECTORY(extra/yassl)
3831
ADD_SUBDIRECTORY(extra/yassl/taocrypt)
39-
SET(CMAKE_CXX_FLAGS ${SAVE_CXX_FLAGS})
4032
GET_TARGET_PROPERTY(src yassl SOURCES)
4133
FOREACH(file ${src})
4234
SET(SSL_SOURCES ${SSL_SOURCES} ${CMAKE_SOURCE_DIR}/extra/yassl/${file})

config.h.cmake

-4
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,6 @@
4040
#cmakedefine HAVE_FNMATCH_H 1
4141
#cmakedefine HAVE_FPU_CONTROL_H 1
4242
#cmakedefine HAVE_GRP_H 1
43-
#cmakedefine HAVE_EXPLICIT_TEMPLATE_INSTANTIATION 1
4443
#cmakedefine HAVE_IA64INTRIN_H 1
4544
#cmakedefine HAVE_IEEEFP_H 1
4645
#cmakedefine HAVE_INTTYPES_H 1
@@ -157,7 +156,6 @@
157156
#cmakedefine HAVE_GETADDRINFO 1
158157
#cmakedefine HAVE_GETCWD 1
159158
#cmakedefine HAVE_GETHOSTBYADDR_R 1
160-
#cmakedefine HAVE_GETHOSTBYNAME_R 1
161159
#cmakedefine HAVE_GETHRTIME 1
162160
#cmakedefine HAVE_GETLINE 1
163161
#cmakedefine HAVE_GETNAMEINFO 1
@@ -448,8 +446,6 @@
448446

449447

450448
#cmakedefine HAVE_SOLARIS_STYLE_GETHOST 1
451-
#cmakedefine HAVE_GETHOSTBYNAME_R_GLIBC2_STYLE 1
452-
#cmakedefine HAVE_GETHOSTBYNAME_R_RETURN_INT 1
453449

454450
#cmakedefine MY_ATOMIC_MODE_DUMMY 1
455451
#cmakedefine MY_ATOMIC_MODE_RWLOCKS 1

configure.cmake

+2-50
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
1-
2-
# Copyright (C) 2009 Sun Microsystems,Inc
1+
# Copyright (c) 2009, 2011, Oracle and/or its affiliates. All rights reserved.
32
#
43
# This program is free software; you can redistribute it and/or modify
54
# it under the terms of the GNU General Public License as published by
@@ -67,15 +66,7 @@ IF(CMAKE_COMPILER_IS_GNUCXX)
6766
# MySQL "canonical" GCC flags. At least -fno-rtti flag affects
6867
# ABI and cannot be simply removed.
6968
SET(CMAKE_CXX_FLAGS
70-
"${CMAKE_CXX_FLAGS} -fno-implicit-templates -fno-exceptions -fno-rtti")
71-
IF(CMAKE_CXX_FLAGS)
72-
STRING(REGEX MATCH "fno-implicit-templates" NO_IMPLICIT_TEMPLATES
73-
${CMAKE_CXX_FLAGS})
74-
IF (NO_IMPLICIT_TEMPLATES)
75-
SET(HAVE_EXPLICIT_TEMPLATE_INSTANTIATION TRUE)
76-
ENDIF()
77-
ENDIF()
78-
69+
"${CMAKE_CXX_FLAGS} -fno-exceptions -fno-rtti")
7970
IF (CMAKE_EXE_LINKER_FLAGS MATCHES " -static "
8071
OR CMAKE_EXE_LINKER_FLAGS MATCHES " -static$")
8172
SET(HAVE_DLOPEN FALSE CACHE "Disable dlopen due to -static flag" FORCE)
@@ -350,7 +341,6 @@ CHECK_FUNCTION_EXISTS (fseeko HAVE_FSEEKO)
350341
CHECK_FUNCTION_EXISTS (fsync HAVE_FSYNC)
351342
CHECK_FUNCTION_EXISTS (getcwd HAVE_GETCWD)
352343
CHECK_FUNCTION_EXISTS (gethostbyaddr_r HAVE_GETHOSTBYADDR_R)
353-
CHECK_FUNCTION_EXISTS (gethostbyname_r HAVE_GETHOSTBYNAME_R)
354344
CHECK_FUNCTION_EXISTS (gethrtime HAVE_GETHRTIME)
355345
CHECK_FUNCTION_EXISTS (getnameinfo HAVE_GETNAMEINFO)
356346
CHECK_FUNCTION_EXISTS (getpass HAVE_GETPASS)
@@ -921,44 +911,6 @@ CHECK_CXX_SOURCE_COMPILES("
921911
"
922912
HAVE_SOLARIS_STYLE_GETHOST)
923913

924-
CHECK_CXX_SOURCE_COMPILES("
925-
#undef inline
926-
#if !defined(SCO) && !defined(__osf__) && !defined(_REENTRANT)
927-
#define _REENTRANT
928-
#endif
929-
#include <pthread.h>
930-
#include <sys/types.h>
931-
#include <sys/socket.h>
932-
#include <netinet/in.h>
933-
#include <arpa/inet.h>
934-
#include <netdb.h>
935-
int main()
936-
{
937-
int ret = gethostbyname_r((const char *) 0,
938-
(struct hostent*) 0, (char*) 0, 0, (struct hostent **) 0, (int *) 0);
939-
return 0;
940-
}"
941-
HAVE_GETHOSTBYNAME_R_GLIBC2_STYLE)
942-
943-
CHECK_CXX_SOURCE_COMPILES("
944-
#undef inline
945-
#if !defined(SCO) && !defined(__osf__) && !defined(_REENTRANT)
946-
#define _REENTRANT
947-
#endif
948-
#include <pthread.h>
949-
#include <sys/types.h>
950-
#include <sys/socket.h>
951-
#include <netinet/in.h>
952-
#include <arpa/inet.h>
953-
#include <netdb.h>
954-
int main()
955-
{
956-
int ret = gethostbyname_r((const char *) 0, (struct hostent*) 0, (struct hostent_data*) 0);
957-
return 0;
958-
}"
959-
HAVE_GETHOSTBYNAME_R_RETURN_INT)
960-
961-
962914
# Use of ALARMs to wakeup on timeout on sockets
963915
#
964916
# This feature makes use of a mutex and is a scalability hog we

extra/yassl/CMakeLists.txt

+2-11
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.
1+
# Copyright (c) 2006, 2011, Oracle and/or its affiliates. All rights reserved.
22
#
33
# This program is free software; you can redistribute it and/or modify
44
# it under the terms of the GNU General Public License as published by
@@ -20,20 +20,11 @@ INCLUDE_DIRECTORIES(
2020
${CMAKE_SOURCE_DIR}/extra/yassl/taocrypt/mySTL)
2121

2222
ADD_DEFINITIONS(${SSL_DEFINES})
23-
IF(CMAKE_COMPILER_IS_GNUXX)
24-
#Remove -fno-implicit-templates
25-
#(yassl sources cannot be compiled with it)
26-
STRING(REPLACE "-fno-implicit-templates" "" CMAKE_CXX_FLAGS
27-
${CMAKE_CXX_FLAGS})
28-
ENDIF()
23+
2924
SET(YASSL_SOURCES src/buffer.cpp src/cert_wrapper.cpp src/crypto_wrapper.cpp src/handshake.cpp src/lock.cpp
3025
src/log.cpp src/socket_wrapper.cpp src/ssl.cpp src/timer.cpp src/yassl_error.cpp
3126
src/yassl_imp.cpp src/yassl_int.cpp)
3227

33-
IF(HAVE_EXPLICIT_TEMPLATE_INSTANTIATION)
34-
SET(YASSL_SOURCES ${YASSL_SOURCES} src/template_instnt.cpp)
35-
ENDIF()
36-
3728
ADD_CONVENIENCE_LIBRARY(yassl ${YASSL_SOURCES})
3829
RESTRICT_SYMBOL_EXPORTS(yassl)
3930

extra/yassl/src/crypto_wrapper.cpp

+3-26
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
1-
/*
2-
Copyright (C) 2000-2007 MySQL AB
1+
/* Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
32
43
This program is free software; you can redistribute it and/or modify
54
it under the terms of the GNU General Public License as published by
@@ -11,10 +10,8 @@
1110
GNU General Public License for more details.
1211
1312
You should have received a copy of the GNU General Public License
14-
along with this program; see the file COPYING. If not, write to the
15-
Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
16-
MA 02110-1301 USA.
17-
*/
13+
along with this program; if not, write to the Free Software
14+
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
1815

1916
/* The crypto wrapper source implements the policies for the cipher
2017
* components used by SSL.
@@ -991,24 +988,4 @@ x509* PemToDer(FILE* file, CertType type, EncryptedInfo* info)
991988
} // namespace
992989

993990

994-
#ifdef HAVE_EXPLICIT_TEMPLATE_INSTANTIATION
995-
namespace yaSSL {
996-
template void ysDelete<DiffieHellman::DHImpl>(DiffieHellman::DHImpl*);
997-
template void ysDelete<Integer::IntegerImpl>(Integer::IntegerImpl*);
998-
template void ysDelete<RSA::RSAImpl>(RSA::RSAImpl*);
999-
template void ysDelete<DSS::DSSImpl>(DSS::DSSImpl*);
1000-
template void ysDelete<RandomPool::RandomImpl>(RandomPool::RandomImpl*);
1001-
template void ysDelete<AES::AESImpl>(AES::AESImpl*);
1002-
template void ysDelete<RC4::RC4Impl>(RC4::RC4Impl*);
1003-
template void ysDelete<DES_EDE::DES_EDEImpl>(DES_EDE::DES_EDEImpl*);
1004-
template void ysDelete<DES::DESImpl>(DES::DESImpl*);
1005-
template void ysDelete<HMAC_RMD::HMAC_RMDImpl>(HMAC_RMD::HMAC_RMDImpl*);
1006-
template void ysDelete<HMAC_SHA::HMAC_SHAImpl>(HMAC_SHA::HMAC_SHAImpl*);
1007-
template void ysDelete<HMAC_MD5::HMAC_MD5Impl>(HMAC_MD5::HMAC_MD5Impl*);
1008-
template void ysDelete<RMD::RMDImpl>(RMD::RMDImpl*);
1009-
template void ysDelete<SHA::SHAImpl>(SHA::SHAImpl*);
1010-
template void ysDelete<MD5::MD5Impl>(MD5::MD5Impl*);
1011-
}
1012-
#endif // HAVE_EXPLICIT_TEMPLATE_INSTANTIATION
1013-
1014991
#endif // !USE_CRYPTOPP_LIB

extra/yassl/src/template_instnt.cpp

-110
This file was deleted.

extra/yassl/src/yassl_int.cpp

+3-18
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
1-
/*
2-
Copyright 2000-2008 MySQL AB, 2008 Sun Microsystems, Inc.
1+
/* Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
32
43
This program is free software; you can redistribute it and/or modify
54
it under the terms of the GNU General Public License as published by
@@ -11,11 +10,8 @@
1110
GNU General Public License for more details.
1211
1312
You should have received a copy of the GNU General Public License
14-
along with this program; see the file COPYING. If not, write to the
15-
Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
16-
MA 02110-1301 USA.
17-
*/
18-
13+
along with this program; if not, write to the Free Software
14+
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
1915

2016
/* yaSSL internal source implements SSL supporting types not specified in the
2117
* draft along with type conversion functions.
@@ -2568,14 +2564,3 @@ extern "C" void yaSSL_CleanUp()
25682564
yaSSL::sessionsInstance = 0;
25692565
yaSSL::errorsInstance = 0;
25702566
}
2571-
2572-
2573-
#ifdef HAVE_EXPLICIT_TEMPLATE_INSTANTIATION
2574-
namespace mySTL {
2575-
template yaSSL::yassl_int_cpp_local1::SumData for_each<mySTL::list<yaSSL::input_buffer*>::iterator, yaSSL::yassl_int_cpp_local1::SumData>(mySTL::list<yaSSL::input_buffer*>::iterator, mySTL::list<yaSSL::input_buffer*>::iterator, yaSSL::yassl_int_cpp_local1::SumData);
2576-
template yaSSL::yassl_int_cpp_local1::SumBuffer for_each<mySTL::list<yaSSL::output_buffer*>::iterator, yaSSL::yassl_int_cpp_local1::SumBuffer>(mySTL::list<yaSSL::output_buffer*>::iterator, mySTL::list<yaSSL::output_buffer*>::iterator, yaSSL::yassl_int_cpp_local1::SumBuffer);
2577-
template mySTL::list<yaSSL::SSL_SESSION*>::iterator find_if<mySTL::list<yaSSL::SSL_SESSION*>::iterator, yaSSL::yassl_int_cpp_local2::sess_match>(mySTL::list<yaSSL::SSL_SESSION*>::iterator, mySTL::list<yaSSL::SSL_SESSION*>::iterator, yaSSL::yassl_int_cpp_local2::sess_match);
2578-
template mySTL::list<yaSSL::ThreadError>::iterator find_if<mySTL::list<yaSSL::ThreadError>::iterator, yaSSL::yassl_int_cpp_local2::thr_match>(mySTL::list<yaSSL::ThreadError>::iterator, mySTL::list<yaSSL::ThreadError>::iterator, yaSSL::yassl_int_cpp_local2::thr_match);
2579-
}
2580-
#endif
2581-

0 commit comments

Comments
 (0)