Attached patch implements WHERE clauses for pg_dump.
This is useful for producing data samples of a database
e.g. pg_dump -w "ctid < '(1000,1)' or random() < 0.1"
and can also be used for taking incremental backups, if data columns
exist to make a partial dump sensible.
e.g. pg_dump -w "last_update_timestamp > ...."
Columns such as this are very common because of optimistic locking
techniques in many databases.
This is designed to be used in conjunction with the TOM utility, and the
forthcoming patch to implement stats hooks. Taken together these
features will allow the ability to take a cut-down database environment
for testing, yet with statistics matching the main production database.
It was easier to write it and then discuss, since I needed to check the
feasibility of the idea before presenting it.
--
Simon Riggs www.2ndQuadrant.com
PostgreSQL Training, Services and Support