postgresql/src
Tom Lane 1a5c450f30 When truncating a relation in-place (eg during VACUUM), do not try to unlink
any no-longer-needed segments; just truncate them to zero bytes and leave
the files in place for possible future re-use.  This avoids problems when
the segments are re-used due to relation growth shortly after truncation.
Before, the bgwriter, and possibly other backends, could still be holding
open file references to the old segment files, and would write dirty blocks
into those files where they'd disappear from the view of other processes.

Back-patch as far as 8.0.  I believe the 7.x branches are not vulnerable,
because they had no bgwriter, and "blind" writes by other backends would
always be done via freshly-opened file references.
2006-11-20 01:07:56 +00:00
..
backend When truncating a relation in-place (eg during VACUUM), do not try to unlink 2006-11-20 01:07:56 +00:00
bin Fix a memory leak in psql: we'd leak a few PGresult handles if 2006-11-08 01:22:55 +00:00
include Repair two related errors in heap_lock_tuple: it was failing to recognize 2006-11-17 18:00:15 +00:00
interfaces Applied patch by Peter Harris to free auto_mem structure on connect 2006-11-08 10:46:47 +00:00
makefiles Fix shared library creation to work properly on AIX. Albe Laurenz 2006-09-19 15:36:08 +00:00
pl Force plperl and plperlu to run in separate interpreters. Create an error 2006-11-13 17:13:57 +00:00
port Change Windows rename and unlink substitutes so that they time out after 2006-11-08 20:12:05 +00:00
template Remove extra 'else' in solaris compiler code. 2006-04-28 04:32:10 +00:00
test Fix up some problems in handling of zic-style time zone names in datetime 2006-10-17 21:03:21 +00:00
timezone Update zic database to tzdata2006n. 2006-11-01 05:20:38 +00:00
tools Various MSVC build fixes from Magnus; also remove stray Windows 2006-10-22 17:17:09 +00:00
tutorial Fix some misuses of strncat(). 2006-09-27 16:19:42 +00:00
bcc32.mak Fix bcc32.mak to create and remove pg_config_os.h properly. Apparently 2006-10-06 18:53:53 +00:00
DEVELOPERS Testing commit stuff 2006-07-10 15:50:02 +00:00
Makefile Remove dllinit.c; it was only needed for long-obsolete Cygwin versions, 2006-06-22 23:50:35 +00:00
Makefile.global.in On Windows, we know the backend stack size limit because we have to 2006-10-08 17:15:34 +00:00
Makefile.shlib Fix shared library creation to work properly on AIX. Albe Laurenz 2006-09-19 15:36:08 +00: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 Fix win32.mak for config cleanup. 2006-08-08 22:44:05 +00:00