]> granicus.if.org Git - postgresql/commit
Buffer manager modifications to keep a local buffer-dirtied bit as well
authorTom Lane <tgl@sss.pgh.pa.us>
Sun, 9 Apr 2000 04:43:20 +0000 (04:43 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Sun, 9 Apr 2000 04:43:20 +0000 (04:43 +0000)
commit1f6d8b90b83e02af8e73adcb167581bb10d6be22
tree951f6bcc75fc6e42e23b1e695d259bc18a71b193
parent9c38a8d29684e9b9822ff7ca7f84c22ecab9cf1e
Buffer manager modifications to keep a local buffer-dirtied bit as well
as a shared dirtybit for each shared buffer.  The shared dirtybit still
controls writing the buffer, but the local bit controls whether we need
to fsync the buffer's file.  This arrangement fixes a bug that allowed
some required fsyncs to be missed, and should improve performance as well.
For more info see my post of same date on pghackers.
13 files changed:
src/backend/access/transam/xact.c
src/backend/catalog/catalog.c
src/backend/storage/buffer/buf_init.c
src/backend/storage/buffer/bufmgr.c
src/backend/storage/buffer/freelist.c
src/backend/storage/file/fd.c
src/backend/storage/smgr/md.c
src/backend/storage/smgr/smgr.c
src/include/catalog/catalog.h
src/include/storage/buf_internals.h
src/include/storage/bufmgr.h
src/include/storage/fd.h
src/include/storage/smgr.h