agora inbox for pgsql-committers@postgresql.org
help / color / mirror / Atom feedFrom: Etsuro Fujita <efujita@postgresql.org>
To: pgsql-committers@lists.postgresql.org
Subject: pgsql: Add support for importing statistics from remote servers.
Date: Wed, 08 Apr 2026 10:16:19 +0000
Message-ID: <E1wAPxK-003Xbn-0l@gemulon.postgresql.org> (raw)
Add support for importing statistics from remote servers.
Add a new FDW callback routine that allows importing remote statistics
for a foreign table directly to the local server, instead of collecting
statistics locally. The new callback routine is called at the beginning
of the ANALYZE operation on the table, and if the FDW failed to import
the statistics, the existing callback routine is called on the table to
collect statistics locally.
Also implement this for postgres_fdw. It is enabled by "restore_stats"
option both at the server and table level. Currently, it is the user's
responsibility to ensure remote statistics to import are up-to-date, so
the default is false.
Author: Corey Huinker <corey.huinker@gmail.com>
Co-authored-by: Etsuro Fujita <etsuro.fujita@gmail.com>
Reviewed-by: Ashutosh Bapat <ashutosh.bapat.oss@gmail.com>
Reviewed-by: Matheus Alcantara <matheusssilv97@gmail.com>
Reviewed-by: Chao Li <li.evan.chao@gmail.com>
Reviewed-by: Michael Paquier <michael@paquier.xyz>
Reviewed-by: Etsuro Fujita <etsuro.fujita@gmail.com>
Discussion: https://postgr.es/m/CADkLM%3DchrYAx%3DX2KUcDRST4RLaRLivYDohZrkW4LLBa0iBhb5w%40mail.gmail.com
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/28972b6fc3dcd1296e844246b635eddfa29c38e1
Modified Files
--------------
contrib/postgres_fdw/deparse.c | 6 +-
contrib/postgres_fdw/expected/postgres_fdw.out | 60 ++
contrib/postgres_fdw/option.c | 6 +-
contrib/postgres_fdw/postgres_fdw.c | 934 ++++++++++++++++++++++++-
contrib/postgres_fdw/sql/postgres_fdw.sql | 64 ++
doc/src/sgml/fdwhandler.sgml | 39 ++
doc/src/sgml/postgres-fdw.sgml | 29 +-
src/backend/commands/analyze.c | 200 ++++--
src/backend/statistics/extended_stats.c | 34 +
src/include/commands/vacuum.h | 2 +
src/include/foreign/fdwapi.h | 5 +
src/include/statistics/statistics.h | 1 +
src/tools/pgindent/typedefs.list | 3 +
13 files changed, 1303 insertions(+), 80 deletions(-)
Message-ID: <E1wAPxK-003Xbn-0l@gemulon.postgresql.org>
Permalink: ../E1wAPxK-003Xbn-0l@gemulon.postgresql.org/
Also on: postgresql.org/message-id/E1wAPxK-003Xbn-0l@gemulon.postgresql.org
reply
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-committers@postgresql.org
Cc: efujita@postgresql.org, pgsql-committers@lists.postgresql.org
Subject: Re: pgsql: Add support for importing statistics from remote servers.
In-Reply-To: <E1wAPxK-003Xbn-0l@gemulon.postgresql.org>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox