BRIN de-summarization
When the BRIN summary tuple for a page range becomes too "wide" for the
values actually stored in the table (because the tuples that were
present originally are no longer present due to updates or deletes), it
can be useful to remove the outdated summary tuple, so that a future
summarization can install a tighter summary.
This commit introduces a SQL-callable interface to do so.
Author: Álvaro Herrera
Reviewed-by: Eiji Seki
Discussion: https://postgr.es/m/20170228045643.n2ri74ara4fhhfxf@alvherre.pgsql
Branch
------
master
Details
-------
http://git.postgresql.org/pg/commitdiff/c655899ba9ae2a0d24e99c797167c33e0cfa0820
Modified Files
--------------
doc/src/sgml/brin.sgml | 4 +
doc/src/sgml/func.sgml | 15 ++++
src/backend/access/brin/brin.c | 74 +++++++++++++++++
src/backend/access/brin/brin_revmap.c | 140 ++++++++++++++++++++++++++++++++-
src/backend/access/brin/brin_xlog.c | 43 ++++++++++
src/backend/access/rmgrdesc/brindesc.c | 10 +++
src/include/access/brin_revmap.h | 1 +
src/include/access/brin_xlog.h | 20 ++++-
src/include/catalog/catversion.h | 2 +-
src/include/catalog/pg_proc.h | 2 +
src/test/regress/expected/brin.out | 27 +++++++
src/test/regress/sql/brin.sql | 7 ++
12 files changed, 340 insertions(+), 5 deletions(-)