pgsql/src/backend/commands (rename.c vacuum.c)

Поиск
Список
Период
Сортировка
От Tom Lane
Тема pgsql/src/backend/commands (rename.c vacuum.c)
Дата
Msg-id 200005190322.XAA99938@hub.org
обсуждение исходный текст
Список pgsql-committers
  Date: Thursday, May 18, 2000 @ 23:22:29
Author: tgl

Update of /home/projects/pgsql/cvsroot/pgsql/src/backend/commands
     from hub.org:/home/projects/pgsql/tmp/cvs-serv99896/backend/commands

Modified Files:
    rename.c vacuum.c

-----------------------------  Log Message  -----------------------------

Revise FlushRelationBuffers/ReleaseRelationBuffers per discussion with
Hiroshi.  ReleaseRelationBuffers now removes rel's buffers from pool,
instead of merely marking them nondirty.  The old code would leave valid
buffers for a deleted relation, which didn't cause any known problems
but can't possibly be a good idea.  There were several places which called
ReleaseRelationBuffers *and* FlushRelationBuffers, which is now
unnecessary; but there were others that did not.  FlushRelationBuffers
no longer emits a warning notice if it finds dirty buffers to flush,
because with the current bufmgr behavior that's not an unexpected
condition.  Also, FlushRelationBuffers will flush out all dirty buffers
for the relation regardless of block number.  This ensures that
pg_upgrade's expectations are met about tuple on-row status bits being
up-to-date on disk.  Lastly, tweak BufTableDelete() to clear the
buffer's tag so that no one can mistake it for being a still-valid
buffer for the page it once held.  Formerly, the buffer would not be
found by buffer hashtable searches after BufTableDelete(), but it would
still be thought to belong to its old relation by the routines that
sequentially scan the shared-buffer array.  Again I know of no bugs
caused by that, but it still can't be a good idea.

В списке pgsql-committers по дате отправления:

Предыдущее
От: Tom Lane
Дата:
Сообщение: pgsql/src/backend/catalog (heap.c index.c)
Следующее
От: Tom Lane
Дата:
Сообщение: pgsql/src/backend/storage/buffer (buf_table.c bufmgr.c)