postgresql/src
Heikki Linnakangas ddeac5dec1 Do stack-depth checking in all postmaster children.
We used to only initialize the stack base pointer when starting up a regular
backend, not in other processes. In particular, autovacuum workers can run
arbitrary user code, and without stack-depth checking, infinite recursion
in e.g an index expression will bring down the whole cluster.

The comment about PL/Java using set_stack_base() is not yet true. As the
code stands, PL/java still modifies the stack_base_ptr variable directly.
However, it's been discussed in the PL/Java mailing list that it should be
changed to use the function, because PL/Java is currently oblivious to the
register stack used on Itanium. There's another issues with PL/Java, namely
that the stack base pointer it sets is not really the base of the stack, it
could be something close to the bottom of the stack. That's a separate issue
that might need some further changes to this code, but that's a different
story.

Backpatch to all supported releases.
2012-04-08 19:09:37 +03:00
..
backend Do stack-depth checking in all postmaster children. 2012-04-08 19:09:37 +03:00
bin Fix O(N^2) behavior in pg_dump when many objects are in dependency loops. 2012-03-31 15:51:27 -04:00
include Do stack-depth checking in all postmaster children. 2012-04-08 19:09:37 +03:00
interfaces Stamp 8.3.18. 2012-02-23 18:01:58 -05:00
makefiles Fix assorted issues with build and install paths containing spaces. 2011-06-14 16:24:45 -04:00
pl Fix GET DIAGNOSTICS for case of assignment to function's first variable. 2012-03-22 14:14:20 -04:00
port Stamp 8.3.18. 2012-02-23 18:01:58 -05:00
template Use SYSV semaphores rather than POSIX on Darwin >= 6.0 (i.e., OS X 10.2 2007-09-26 00:32:46 +00:00
test Honor inputdir and outputdir when converting regression files. 2012-03-17 17:24:14 -04:00
timezone Update time zone data files to tzdata release 2011n. 2011-11-30 11:49:11 -05:00
tools Backpatch "Use the preferred version of xsubpp." 2011-11-28 07:46:15 -05:00
tutorial Update copyrights in source tree to 2008. 2008-01-01 19:46:01 +00:00
.gitignore Convert cvsignore to gitignore, and add .gitignore for build targets. 2010-09-22 12:57:12 +02:00
bcc32.mak Remove old-style win32 client-only visual c++ build infrastructure for everything except 2007-03-05 14:18:38 +00:00
DEVELOPERS Testing commit stuff 2006-07-10 15:50:02 +00:00
Makefile Tsearch2 functionality migrates to core. The bulk of this work is by 2007-08-21 01:11:32 +00:00
Makefile.global.in Back-patch creation of tar.bz2 tarball during "make dist". 2011-07-03 16:40:34 -04:00
Makefile.shlib Fix assorted issues with build and install paths containing spaces. 2011-06-14 16:24:45 -04:00
nls-global.mk When merging PO files, take into consideration translations in other PO 2006-04-05 13:40:15 +00:00
win32.mak Update supported standalone VC++ version to 7.1+ only, and fix 2007-08-03 10:47:11 +00:00