PgFincore 1.0 released : move cache state to PostgreSQL Standbys

From: Cédric Villemain <cedric(dot)villemain(dot)debian(at)gmail(dot)com>
To: PostgreSQL Announce <pgsql-announce(at)postgresql(dot)org>
Subject: PgFincore 1.0 released : move cache state to PostgreSQL Standbys
Date: 2011-07-28 13:49:16
Message-ID: CAF6yO=3qmnPTZJ+bKkupMhm5WFipZZHokocnhkmjEL5UPzVu+Q@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-announce

New version of PgFincore is out!

Dowload the 1.0 here:
http://pgfoundry.org/frs/download.php/3103/pgfincore-v1.0.tar.gz
Homepage: http://villemain.org/projects/pgfincore

Thanks to everybody who helped review and improve this new version.

__________________________

With PostgreSQL, each Table or Index is splitted in segments of
(usually) 1GB, and each segment is splitted in pages in memory then in
blocks for the filesystem.

Those functions let you know which and how many disk block from a
relation are in the page cache of the operating system.
It can provide the result as a VarBit and can be stored in a table.
Then using this table, it is possible to restore the page cache state
for each block of the relation, even in another node, thanks to
Streaming Replication.

Other functions are used to set a POSIX_FADVISE flag on the entire
relation (each segment). The more usefull are probably WILLNEED and
DONTNEED which push and pop blocks of each segments of a relation from
page cache, respectively.
__________________________

Major changes:

* New API
* Snapshot are not stored in plain file anymore (thus they can be
stored in a table now)
* Usage on temp table is no longer prohibited
* Fine grain control of the file map (pages to load/unload)
* 9.1 Extension support

Changements :
- Output varbit containing vector information with pgfincore*()
- Add Debian packaging (Dimitri Fontaine)
- Update to work with PostgreSQL >= 9.1 (Jeff Janes)
- Add total number of pages of memory with pgsysconf()
- Add function pgsysconf_pretty()
- Major rewrite of the functions
- pgfadvise*() to handle simple posix_fadvise call
- pgfadvise_loader() to restore file status (pages in/out cache)
- pgfincore*() to handle mincore usage
- pgsysconf*() to handle sysconf information
- Use get_call_result_type() to build the tuple descriptor (suggested
by RhodiumToad on IRC)
- Remove limitation of usage on temp tables
- Improve 9.1 installation (Extension)

--
Cédric Villemain +33 (0)6 20 30 22 52
http://2ndQuadrant.fr/
PostgreSQL: Support 24x7 - Développement, Expertise et Formation

Browse pgsql-announce by date

  From Date Subject
Next Message Steve Singer 2011-07-29 13:51:55 Slony-I 2.0.7 released
Previous Message Nucleon Software 2011-07-28 11:30:33 Database Master 4 with PostgreSQL and LINQ Released