Update of /cvsroot/monetdb/pathfinder/runtime
In directory 23jxhf1.ch3.sourceforge.com:/tmp/cvs-serv15255/runtime

Modified Files:
        pathfinder.mx 
Log Message:
propagated changes of Friday Apr 17 2009
from the Feb2009 branch to the development trunk

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2009/04/17 - sjoerd: runtime/pathfinder.mx,1.450.2.11
On Windows, the application stack (i.e. the stack of the main thread)
is 1 MB.  On 64 bit Windows, our thread stack (THREAD_STACK_SIZE) is 2
MB, and the above calculation can overflow due to the location of the
application stack.  This is why we do the calculation again for a 1 MB
stack.

Did somebody say HACK?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


U pathfinder.mx
Index: pathfinder.mx
===================================================================
RCS file: /cvsroot/monetdb/pathfinder/runtime/pathfinder.mx,v
retrieving revision 1.456
retrieving revision 1.457
diff -u -d -r1.456 -r1.457
--- pathfinder.mx       9 Apr 2009 18:49:07 -0000       1.456
+++ pathfinder.mx       17 Apr 2009 14:24:43 -0000      1.457
@@ -4649,6 +4649,17 @@
                and to have some slack after last test, then subtract
                stack size to find top */
             PFmaxstack = ((char*) &xquery) + sizeof(size_t)*2048 - 
THREAD_STACK_SIZE;
+#if defined(_MSC_VER) && SIZEOF_SIZE_T == 8
+            /* On Windows, the application stack (i.e. the stack of
+               the main thread) is 1 MB.  On 64 bit Windows, our
+               thread stack (THREAD_STACK_SIZE) is 2 MB, and the above
+               calculation can overflow due to the location of the
+               application stack.  This is why we do the calculation
+               again for a 1 MB stack.
+               Did somebody say HACK? */
+            if (PFmaxstack > (char*) &xquery)
+                    PFmaxstack = ((char*) &xquery) + sizeof(size_t)*2048 - 
1024*1024;
+#endif
             PFerrbuf = ctx->errbuf;
             PFerrbuf[0] = 0;
             err = PFcompile_MonetDB(xquery, url, prologue, &del, epilogue, 
options,


------------------------------------------------------------------------------
Stay on top of everything new and different, both inside and 
around Java (TM) technology - register by April 22, and save
$200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco.
300 plus technical and hands-on sessions. Register today. 
Use priority code J9JMT32. http://p.sf.net/sfu/p
_______________________________________________
Monetdb-pf-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-pf-checkins

Reply via email to