Commit 04879e40 authored by Vladislav Vaintroub's avatar Vladislav Vaintroub

Fix remaining 5.2 buildbot problems:

- Cherrypick MBUG#688404  (PBXT crashes in debug/x64)
- Fix unixism (rm -rf) in the test suite_timeout
- Avoid plugin tests on Windows/embedded, plugins do not and will not work here
parent 38e3787a
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
# i.e it will support dlopen # i.e it will support dlopen
# #
--source include/have_dynamic_loading.inc --source include/have_dynamic_loading.inc
--source include/not_windows_embedded.inc
# #
# Check if the variable HA_EXAMPLE_SO is set # Check if the variable HA_EXAMPLE_SO is set
# #
......
...@@ -320,9 +320,10 @@ sub main { ...@@ -320,9 +320,10 @@ sub main {
gcov_prepare($basedir . "/" . $opt_gcov_src_dir); gcov_prepare($basedir . "/" . $opt_gcov_src_dir);
} }
if (!$opt_suites) { if (!$opt_suites) {
$opt_suites= $DEFAULT_SUITES; $opt_suites= $DEFAULT_SUITES;
# Check for any extra suites to enable based on the path name # Check for any extra suites to enable based on the path name
my %extra_suites= my %extra_suites=
( (
...@@ -2376,7 +2377,7 @@ sub setup_vardir() { ...@@ -2376,7 +2377,7 @@ sub setup_vardir() {
$plugindir="$opt_vardir/plugins"; $plugindir="$opt_vardir/plugins";
unshift (@opt_extra_mysqld_opt, "--plugin-dir=$plugindir"); unshift (@opt_extra_mysqld_opt, "--plugin-dir=$plugindir");
mkpath($plugindir); mkpath($plugindir);
if (IS_WINDOWS) if (IS_WINDOWS && !$opt_embedded_server)
{ {
for (<../storage/*$opt_vs_config/*.dll>, for (<../storage/*$opt_vs_config/*.dll>,
<../plugin/*$opt_vs_config/*.dll>, <../plugin/*$opt_vs_config/*.dll>,
......
...@@ -66,10 +66,10 @@ if ($found_garbage) ...@@ -66,10 +66,10 @@ if ($found_garbage)
} }
# Do a manual cleanup, because the following tests should not suffer from # Do a manual cleanup, because the following tests should not suffer from
# remaining files # remaining files
--exec rm -f $MYSQLD_DATADIR/test/t1* || true --exec perl -e "unlink(<$MYSQLD_DATADIR/test/t1*>)"
if ($with_directories) if ($with_directories)
{ {
--exec rm -f $MYSQLTEST_VARDIR/tmp/t1* || true --exec perl -e "unlink(<$MYSQLD_DATADIR/test/tmp/t1*>)"
} }
} }
--enable_query_log --enable_query_log
...@@ -29,8 +29,21 @@ ...@@ -29,8 +29,21 @@
struct XTThread; struct XTThread;
#ifdef DEBUG #if (defined DEBUG)
#define DEBUG_MEMORY /*
Disable PBXT debug malloc on Windows, as it is not properly aligned.
malloc() alignment requiremebt on x64 is documented as 16 bytes. PBXT debug
malloc is only 8 bytes aligned. Improper alignment will lead to a crash if
e.g SSE instructions access heap memory.
This might be general problem , however crashes were seen so far only
on Windows (crash during setjmp() on memory allocated with pbxt debug malloc).
Besides, on Windows there is already a debug malloc by C runtime.
*/
#ifndef _WIN32
#define DEBUG_MEMORY
#endif
#endif #endif
#ifdef DEBUG_MEMORY #ifdef DEBUG_MEMORY
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment