Hello
First, the proposed changes in this email are to be used at least for
PostgreSQL extensions, maybe for core.
Purpose is to offer better monitoring/tracking of the hot/cold areas (and
read/write paterns) in the tables and indexes, in PostgreSQL those are by default
written in segments of 1GB.
There are some possible usecase already:
* planning of hardware upgrade
* easier configuration setup (both PostgreSQL and linux)
* provide more informations to the planner/executor of PostgreSQL
My ideas so far are to
* improve mincore() in linux and add it information like in freeBSD (at
least adding 'mincore_modified' to track clean vs dirty pages).
* adding fincore() to make the information easier to grab from PostgreSQL (no
mmap)
* maybe some access to those stats in /proc/
It makes years that libprefetch, mincore() and fincore() are discussed on linux
mailling lists. And they got a good feedback... So I hope it is ok to keep on
those and provide updated patches.
Johannes, I add you in CC because you're the last one who proposed something. Should I update your patch ?
--
Cédric Villemain +33 (0)6 20 30 22 52
http://2ndQuadrant.fr/
PostgreSQL: Support 24x7 - Développement, Expertise et Formation