Excerpts from rsmogura's message of vie mar 18 11:57:48 -0300 2011:
> Actually idea of this patch was like this:
> Some operations requires many buffers, PG uses "clock sweep" to get
> next free buffer, so it may overwrite index buffer. From point of view
> of good database design We should use indices, so purging out index from
> cache will affect performance.
The BufferAccessStrategy stuff was written to solve this problem.
> As the side effect I saw that this 2nd level keeps pg_* indices in
> memory too, so I think to include 3rd level cache for some pg_* tables.
Keep in mind that there's already another layer of caching (see
syscache.c) for system catalogs on top of the buffer cache.
--
Álvaro Herrera <alvherre@commandprompt.com>
The PostgreSQL Company - Command Prompt, Inc.
PostgreSQL Replication, Consulting, Custom Development, 24x7 support