> > I have just realized that getrlimit(RLIMIT_STACK) is a 
> pretty widely 
> > available syscall --- it's specified by the Single Unix 
> Spec and the 
> > man pages claim it works on all the platforms I have handy to check.
> > I propose that we make use of this call where available to prevent 
> > people from setting max_stack_depth larger than, say, the current 
> > stack rlimit less half a megabyte.
> 
> I've committed changes along this line, and am now wondering 
> whether there isn't some equivalent to 
> getrlimit(RLIMIT_STACK) on Windows (I somehow doubt that the 
> syscall exists as such ;-)).  If someone can provide a patch 
> to postgres.c's new get_stack_depth_rlimit() function, please do.

It doesn't. It doesn't have the concept of RLIMIT, really. 
In "the old days", there was on way to limit how much memory a process
uses. In Windows 2000, "Job Objects" were added, which can limit them.
But they make no difference between stack and non-stack memory.

For win32, we set the stacksize in src/backend/Makefile with
"-Wl,--stack=4194304". So we know at build time what it is, if that
helps you...

//Magnus

---------------------------(end of broadcast)---------------------------
TIP 9: In versions below 8.0, the planner will ignore your desire to
       choose an index scan if your joining column's datatypes do not
       match

Reply via email to