#At file:///Users/shulga/projects/mysql/5.1-bugteam-bug57386/ based on revid:anitha.gopi@stripped
3548 Dmitry Shulga 2010-10-29
Fixed Bug#57386 - main.execution_constants segfault on MIPS64EL.
@ sql/item_func.cc
Item_func::fix_fields modified: increased minimal required stack
size in call to check_stack_overrun().
modified:
sql/item_func.cc
=== modified file 'sql/item_func.cc'
--- a/sql/item_func.cc 2010-10-05 08:11:56 +0000
+++ b/sql/item_func.cc 2010-10-29 03:08:46 +0000
@@ -157,7 +157,14 @@ Item_func::fix_fields(THD *thd, Item **r
used_tables_cache= not_null_tables_cache= 0;
const_item_cache=1;
- if (check_stack_overrun(thd, STACK_MIN_SIZE, buff))
+ /*
+ Increase stack limit to STACK_MIN_SIZE * 2 since
+ on some platforms recursive call to fix_fields
+ required more than STACK_MIN_SIZE bytes (e.g. for
+ MIPS, where needs about 22kB for one recursive
+ call to Item_func::fix_fields)
+ */
+ if (check_stack_overrun(thd, STACK_MIN_SIZE * 2, buff))
return TRUE; // Fatal error if flag is set!
if (arg_count)
{ // Print purify happy
Attachment: [text/bzr-bundle] bzr/dmitry.shulga@oracle.com-20101029030846-k5ndh8ifz4f01dvw.bundle