Commit 94eb56fb authored by Marko Mäkelä's avatar Marko Mäkelä

Give ASAN some more stack

When compiling CMAKE_BUILD_TYPE=Debug WITH_ASAN using clang-7 -O2
the following tests could fail due to insufficient stack size:
main.signal_demo3 sys_vars.max_sp_recursion_depth_func
parent 136d21c8
/* Copyright (c) 2000, 2014, Oracle and/or its affiliates. /* Copyright (c) 2000, 2014, Oracle and/or its affiliates.
Copyright (c) 2009, 2017, MariaDB Corporation. Copyright (c) 2009, 2019, MariaDB Corporation.
This program is free software; you can redistribute it and/or modify This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
...@@ -692,9 +692,9 @@ extern void my_mutex_end(void); ...@@ -692,9 +692,9 @@ extern void my_mutex_end(void);
with the current number of keys and key parts. with the current number of keys and key parts.
*/ */
#ifdef __SANITIZE_ADDRESS__ #ifdef __SANITIZE_ADDRESS__
#define DEFAULT_THREAD_STACK (364*1024L) #define DEFAULT_THREAD_STACK (383*1024L) /* 392192 */
#else #else
#define DEFAULT_THREAD_STACK (292*1024L) #define DEFAULT_THREAD_STACK (292*1024L) /* 299008 */
#endif #endif
#endif #endif
......
...@@ -57,7 +57,7 @@ perl; ...@@ -57,7 +57,7 @@ perl;
# fixes for 32-bit # fixes for 32-bit
s/\b4294967295\b/18446744073709551615/; s/\b4294967295\b/18446744073709551615/;
s/\b2146435072\b/9223372036853727232/; s/\b2146435072\b/9223372036853727232/;
s/\b372736\b/299008/; s/\b392192\b/299008/;
s/\b4294963200\b/18446744073709547520/; s/\b4294963200\b/18446744073709547520/;
foreach $var (@env) { s/\Q$ENV{$var}\E/$var/ } foreach $var (@env) { s/\Q$ENV{$var}\E/$var/ }
next if /use --skip-(use-)?symbolic-links to disable/; # for valgrind, again next if /use --skip-(use-)?symbolic-links to disable/; # for valgrind, again
......
...@@ -13,7 +13,7 @@ set sql_mode=ansi_quotes; ...@@ -13,7 +13,7 @@ set sql_mode=ansi_quotes;
set global div_precision_increment=5; set global div_precision_increment=5;
--replace_regex /^\/\S+/PATH/ --replace_regex /^\/\S+/PATH/
--replace_result $MASTER_MYPORT MASTER_MYPORT 372736 299008 --replace_result $MASTER_MYPORT MASTER_MYPORT 392192 299008
select * from information_schema.system_variables select * from information_schema.system_variables
where variable_name not like 'aria%' and where variable_name not like 'aria%' and
variable_name not like 'debug%' and variable_name not like 'debug%' and
......
# #
# only global # only global
# #
--replace_result 372736 299008 --replace_result 392192 299008
select @@global.thread_stack; select @@global.thread_stack;
--error ER_INCORRECT_GLOBAL_LOCAL_VAR --error ER_INCORRECT_GLOBAL_LOCAL_VAR
select @@session.thread_stack; select @@session.thread_stack;
--replace_result 372736 299008 --replace_result 392192 299008
show global variables like 'thread_stack'; show global variables like 'thread_stack';
--replace_result 372736 299008 --replace_result 392192 299008
show session variables like 'thread_stack'; show session variables like 'thread_stack';
--replace_result 372736 299008 --replace_result 392192 299008
select * from information_schema.global_variables where variable_name='thread_stack'; select * from information_schema.global_variables where variable_name='thread_stack';
--replace_result 372736 299008 --replace_result 392192 299008
select * from information_schema.session_variables where variable_name='thread_stack'; select * from information_schema.session_variables where variable_name='thread_stack';
# #
......
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