From b443c0e0566ba1d57e0c1d05c0fc5a6f4bc2357f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vicen=C8=9Biu=20Ciorbaru?= Date: Thu, 23 Nov 2017 19:13:12 +0200 Subject: [PATCH 1/3] Lean down compilation when running travis with rpl Disable tokudb compilation when doing rpl tests. This saves time and allows us to not timeout on travis. --- .travis.compiler.sh | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/.travis.compiler.sh b/.travis.compiler.sh index 13e35fffe87..db5c9ee01ce 100755 --- a/.travis.compiler.sh +++ b/.travis.compiler.sh @@ -14,6 +14,10 @@ if [[ "${TRAVIS_OS_NAME}" == 'linux' ]]; then export CXX CC=${CXX/++/} elif [[ "${CXX}" == 'g++' ]]; then CMAKE_OPT="" + if [[ "${MYSQL_TEST_SUITES}" == 'rpl' ]]; then + CMAKE_OPT="${CMAKE_OPT} -DWITHOUT_TOKUDB_STORAGE_ENGINE=TRUE" + CMAKE_OPT="${CMAKE_OPT} -DWITHOUT_MROONGA_STORAGE_ENGINE=TRUE" + fi export CXX=g++-${GCC_VERSION} export CC=gcc-${GCC_VERSION} fi @@ -33,6 +37,9 @@ else if which ccache ; then CMAKE_OPT="${CMAKE_OPT} -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache" fi + if [[ "${MYSQL_TEST_SUITES}" == 'rpl' ]]; then + CMAKE_OPT="${CMAKE_OPT} -DWITHOUT_TOKUDB_STORAGE_ENGINE=ON" + fi CMAKE_OPT="${CMAKE_OPT} -DWITHOUT_MROONGA_STORAGE_ENGINE=ON" if [[ "${TYPE}" == "Debug" ]]; then CMAKE_OPT="${CMAKE_OPT} -DWITHOUT_TOKUDB_STORAGE_ENGINE=ON" From f9f976b217e6a9ad55d52ac8666d594208d9e3da Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vicen=C8=9Biu=20Ciorbaru?= Date: Thu, 16 Nov 2017 10:33:28 +0200 Subject: [PATCH 2/3] Fix ssl cmake configuration not checking for symbols properly Both libraries and includes are required to check for symbols correctly. In addition, we don't use SHA512_DIGEST_LENGTH symbol so remove the extraneous check. --- cmake/ssl.cmake | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/cmake/ssl.cmake b/cmake/ssl.cmake index 65abb27923b..634ea03c3c2 100644 --- a/cmake/ssl.cmake +++ b/cmake/ssl.cmake @@ -129,10 +129,6 @@ MACRO (MYSQL_CHECK_SSL) IF(OPENSSL_FOUND) SET(OPENSSL_LIBRARY ${OPENSSL_SSL_LIBRARY}) INCLUDE(CheckSymbolExists) - SET(CMAKE_REQUIRED_INCLUDES ${OPENSSL_INCLUDE_DIR}) - CHECK_SYMBOL_EXISTS(SHA512_DIGEST_LENGTH "openssl/sha.h" - HAVE_SHA512_DIGEST_LENGTH) - SET(CMAKE_REQUIRED_INCLUDES) SET(SSL_SOURCES "") SET(SSL_LIBRARIES ${OPENSSL_SSL_LIBRARY} ${OPENSSL_CRYPTO_LIBRARY}) IF(CMAKE_SYSTEM_NAME MATCHES "SunOS") @@ -151,6 +147,7 @@ MACRO (MYSQL_CHECK_SSL) SET(SSL_INTERNAL_INCLUDE_DIRS "") SET(SSL_DEFINES "-DHAVE_OPENSSL") + SET(CMAKE_REQUIRED_INCLUDES ${OPENSSL_INCLUDE_DIR}) SET(CMAKE_REQUIRED_LIBRARIES ${SSL_LIBRARIES}) CHECK_SYMBOL_EXISTS(ERR_remove_thread_state "openssl/err.h" HAVE_ERR_remove_thread_state) @@ -158,6 +155,8 @@ MACRO (MYSQL_CHECK_SSL) HAVE_EncryptAes128Ctr) CHECK_SYMBOL_EXISTS(EVP_aes_128_gcm "openssl/evp.h" HAVE_EncryptAes128Gcm) + SET(CMAKE_REQUIRED_INCLUDES) + SET(CMAKE_REQUIRED_LIBRARIES) ELSE() IF(WITH_SSL STREQUAL "system") MESSAGE(SEND_ERROR "Cannot find appropriate system libraries for SSL. Use WITH_SSL=bundled to enable SSL support") From b2a102fb584e55a5c07c25a1caa9575fe1732c14 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vicen=C8=9Biu=20Ciorbaru?= Date: Thu, 23 Nov 2017 13:03:23 +0200 Subject: [PATCH 3/3] Fix double floating point error in dtoa.c When running an optimized build, compiler optimizations cause loss of precision unless we force the expression to use a double type. --- strings/dtoa.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/strings/dtoa.c b/strings/dtoa.c index 9e0f7f4f43d..eccd05bcf92 100644 --- a/strings/dtoa.c +++ b/strings/dtoa.c @@ -1290,7 +1290,7 @@ static double ratio(Bigint *a, Bigint *b) dval(&db)= b2d(b, &kb); k= ka - kb + 32*(a->wds - b->wds); if (k > 0) - word0(&da)+= k*Exp_msk1; + word0(&da)+= k*Exp_msk1 * 1.0; else { k= -k;