Sigh ... this code is even more fragile than it appears. Try setting

STACK_MIN_SIZE to 24K, not either 16K nor 32K, each of which fail for
    different reasons.
This commit is contained in:
Tom Lane 2008-01-08 05:41:31 +00:00 committed by Michal Schorm
parent bd5697ac43
commit 533c5cc42c
2 changed files with 5 additions and 3 deletions

View File

@ -2,7 +2,9 @@ Talk about silly byte-shaving ... the "stock" value does not work on s390x,
and probably not on some other platforms either. Knock it up to twice the and probably not on some other platforms either. Knock it up to twice the
pre-5.0.33 value to have some margin for future changes in compiler, glibc, pre-5.0.33 value to have some margin for future changes in compiler, glibc,
etc. Suspect this number if "execution_constants" regression test fails. etc. Suspect this number if "execution_constants" regression test fails.
As of 5.0.45 and F9, it seems 16384 isn't enough either.
As of 5.0.45 and F9, it seems 16384 isn't enough anymore (ppc fails);
while 32768 is too much as it makes other regression tests fail.
diff -Naur mysql-5.0.38.orig/sql/mysql_priv.h mysql-5.0.38/sql/mysql_priv.h diff -Naur mysql-5.0.38.orig/sql/mysql_priv.h mysql-5.0.38/sql/mysql_priv.h
@ -13,7 +15,7 @@ diff -Naur mysql-5.0.38.orig/sql/mysql_priv.h mysql-5.0.38/sql/mysql_priv.h
"execution_constants" test to pass. "execution_constants" test to pass.
*/ */
-#define STACK_MIN_SIZE 12000 // Abort if less stack during eval. -#define STACK_MIN_SIZE 12000 // Abort if less stack during eval.
+#define STACK_MIN_SIZE 32768 // Abort if less stack during eval. +#define STACK_MIN_SIZE 24576 // Abort if less stack during eval.
#define STACK_MIN_SIZE_FOR_OPEN 1024*80 #define STACK_MIN_SIZE_FOR_OPEN 1024*80
#define STACK_BUFF_ALLOC 256 // For stack overrun checks #define STACK_BUFF_ALLOC 256 // For stack overrun checks

View File

@ -482,7 +482,7 @@ fi
%{_mandir}/man1/mysql_client_test.1* %{_mandir}/man1/mysql_client_test.1*
%changelog %changelog
* Mon Jan 7 2008 Tom Lane <tgl@redhat.com> 5.0.45-7 * Tue Jan 8 2008 Tom Lane <tgl@redhat.com> 5.0.45-7
- Unbelievable ... upstream still thinks that it's a good idea to have a - Unbelievable ... upstream still thinks that it's a good idea to have a
regression test that is guaranteed to begin failing come January 1. regression test that is guaranteed to begin failing come January 1.
- ... and it seems we need to raise STACK_MIN_SIZE again too. - ... and it seems we need to raise STACK_MIN_SIZE again too.