mirror of
https://git.postgresql.org/git/postgresql.git
synced 2024-09-13 20:39:40 +02:00
19 lines
823 B
Plaintext
19 lines
823 B
Plaintext
$PostgreSQL: pgsql/src/backend/storage/ipc/README,v 1.5 2008/03/20 17:55:15 momjian Exp $
|
|
|
|
Cache Invalidation Synchronization Routines
|
|
===========================================
|
|
|
|
Mon Jul 18 11:09:22 PDT 1988 W.KLAS
|
|
|
|
The cache synchronization is done using a message queue. Every
|
|
backend can register a message which then has to be read by
|
|
all backends. A message read by all backends is removed from the
|
|
queue automatically. If a message has been lost because the buffer
|
|
was full, all backends that haven't read this message will be
|
|
told that they have to reset their cache state. This is done
|
|
at the time when they try to read the message queue.
|
|
|
|
The message queue is implemented as a shared buffer segment. Actually,
|
|
the queue is a circle to allow fast inserting, reading (invalidate data) and
|
|
maintaining the buffer.
|