From: | Jeff Janes <jeff(dot)janes(at)gmail(dot)com> |
---|---|
To: | Mitsuru IWASAKI <iwasaki(at)jp(dot)freebsd(dot)org> |
Cc: | pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: patch for new feature: Buffer Cache Hibernation |
Date: | 2011-05-04 16:55:39 |
Message-ID: | BANLkTinbVQ4er5XE33_EmUyPYWDqhoep2Q@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Wed, May 4, 2011 at 7:10 AM, Mitsuru IWASAKI <iwasaki(at)jp(dot)freebsd(dot)org> wrote:
> Hi,
>
> I am working on new feature `Buffer Cache Hibernation' which enables
> postgres to keep higher cache hit ratio even just started.
>
> Postgres usually starts with ZERO buffer cache. By saving the buffer
> cache data structure into hibernation files just before shutdown, and
> loading them at startup, postgres can start operations with the saved
> buffer cache as the same condition as just before the last shutdown.
>
> Here is the patch for 9.0.3 (also tested on 8.4.7)
> http://people.freebsd.org/~iwasaki/postgres/buffer-cache-hibernation-postgresql-9.0.3.patch
>
> The patch includes the following.
> - At shutdown, buffer cache data structure (such as BufferDescriptors,
> BufferBlocks and StrategyControl) is saved into hibernation files.
> - At startup, buffer cache data structure is loaded from hibernation
> files and buffer lookup hashtable is setup based on buffer descriptors.
> - Above functions are enabled by specifying `enable_buffer_cache_hibernation=on'
> in postgresql.conf.
>
> Any comments are welcome and I would very much appreciate merging the
> patch in source tree.
>
> Have fun and thanks!
It applies and builds against head with offsets and some fuzz. It
fails make check, but apparently only because
src/test/regress/expected/rangefuncs.out needs to be updated to
include the new setting. (Although all the other "enable%" settings
are for the planner, so making a new setting with that prefix that
does something else might be undesirable)
I think that PgFincore (http://pgfoundry.org/projects/pgfincore/)
provides similar functionality. Are you familiar with that? If so,
could you contrast your approach with that one?
Cheers,
Jeff
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2011-05-04 16:58:13 | VARIANT / ANYTYPE datatype |
Previous Message | Greg Smith | 2011-05-04 16:46:36 | Re: patch for new feature: Buffer Cache Hibernation |