postgresql/src/include/storage
Heikki Linnakangas 3f0e808c4a Introduce the concept of relation forks. An smgr relation can now consist
of multiple forks, and each fork can be created and grown separately.

The bulk of this patch is about changing the smgr API to include an extra
ForkNumber argument in every smgr function. Also, smgrscheduleunlink and
smgrdounlink no longer implicitly call smgrclose, because other forks might
still exist after unlinking one. The callers of those functions have been
modified to call smgrclose instead.

This patch in itself doesn't have any user-visible effect, but provides the
infrastructure needed for upcoming patches. The additional forks envisioned
are a rewritten FSM implementation that doesn't rely on a fixed-size shared
memory block, and a visibility map to allow skipping portions of a table in
VACUUM that have no dead tuples.
2008-08-11 11:05:11 +00:00
..
backendid.h Update copyrights in source tree to 2008. 2008-01-01 19:46:01 +00:00
block.h Update copyrights in source tree to 2008. 2008-01-01 19:46:01 +00:00
buf.h Update copyrights in source tree to 2008. 2008-01-01 19:46:01 +00:00
buf_internals.h Introduce the concept of relation forks. An smgr relation can now consist 2008-08-11 11:05:11 +00:00
buffile.h Provide a build-time option to store large relations as single files, rather 2008-03-10 20:06:27 +00:00
bufmgr.h Introduce the concept of relation forks. An smgr relation can now consist 2008-08-11 11:05:11 +00:00
bufpage.h Clean up buildfarm failures arising from the seemingly straightforward page 2008-07-14 03:22:32 +00:00
fd.h Provide a build-time option to store large relations as single files, rather 2008-03-10 20:06:27 +00:00
freespace.h Reduce memory consumption during VACUUM of large relations, by using 2008-03-10 02:04:10 +00:00
ipc.h Repair two places where SIGTERM exit could leave shared memory state 2008-04-16 23:59:40 +00:00
item.h Update copyrights in source tree to 2008. 2008-01-01 19:46:01 +00:00
itemid.h Update copyrights in source tree to 2008. 2008-01-01 19:46:01 +00:00
itempos.h Update copyrights in source tree to 2008. 2008-01-01 19:46:01 +00:00
itemptr.h Update copyrights in source tree to 2008. 2008-01-01 19:46:01 +00:00
large_object.h Separate snapshot management code from tuple visibility code, create a 2008-03-26 16:20:48 +00:00
lmgr.h Restructure some header files a bit, in particular heapam.h, by removing some 2008-05-12 00:00:54 +00:00
lock.h Restructure some header files a bit, in particular heapam.h, by removing some 2008-05-12 00:00:54 +00:00
lwlock.h Rewrite the sinval messaging mechanism to reduce contention and avoid 2008-06-19 21:32:56 +00:00
off.h Update copyrights in source tree to 2008. 2008-01-01 19:46:01 +00:00
pg_sema.h Update copyrights in source tree to 2008. 2008-01-01 19:46:01 +00:00
pg_shmem.h Update copyrights in source tree to 2008. 2008-01-01 19:46:01 +00:00
pmsignal.h Rewrite the sinval messaging mechanism to reduce contention and avoid 2008-06-19 21:32:56 +00:00
pos.h Update copyrights in source tree to 2008. 2008-01-01 19:46:01 +00:00
proc.h Revert addition of pg_terminate_backend() because of race conditions. 2008-04-15 20:28:47 +00:00
procarray.h Improve CREATE/DROP/RENAME DATABASE so that when failing because the source 2008-08-04 18:03:46 +00:00
relfilenode.h Introduce the concept of relation forks. An smgr relation can now consist 2008-08-11 11:05:11 +00:00
s_lock.h Update copyrights in source tree to 2008. 2008-01-01 19:46:01 +00:00
shmem.h Update copyrights in source tree to 2008. 2008-01-01 19:46:01 +00:00
sinval.h Rewrite the sinval messaging mechanism to reduce contention and avoid 2008-06-19 21:32:56 +00:00
sinvaladt.h Teach autovacuum how to determine whether a temp table belongs to a crashed 2008-07-01 02:09:34 +00:00
smgr.h Introduce the concept of relation forks. An smgr relation can now consist 2008-08-11 11:05:11 +00:00
spin.h Update copyrights in source tree to 2008. 2008-01-01 19:46:01 +00:00