pgsql: Add support for "dependencies" in pg_restore_extended_stats()

From: Michael Paquier <michael(at)paquier(dot)xyz>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Add support for "dependencies" in pg_restore_extended_stats()
Date: 2026-01-26 23:21:11
Message-ID: E1vkVtO-002r8r-1a@gemulon.postgresql.org
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Add support for "dependencies" in pg_restore_extended_stats()

This commit adds support for the restore of extended statistics of the
kind "dependencies", for the following input data:
[{"attributes": [2], "dependency": 3, "degree": 1.000000},
{"attributes": [3], "dependency": 2, "degree": 1.000000}]

This relies on the existing routines of "dependencies" to cross-check
the input data with the definition of the extended statistics objects
for the attribute numbers. An input argument of type "pg_dependencies"
is required for this new option.

Thanks to the work done in 0e80f3f88dea for the restore function and
e1405aa5e3ac for the input handling of data type pg_dependencies, this
addition is straight-forward. This will be used so as it is possible to
transfer these statistics across dumps and upgrades, removing the need
for a post-operation ANALYZE for these kinds of statistics.

Author: Corey Huinker <corey(dot)huinker(at)gmail(dot)com>
Reviewed-by: Michael Paquier <michael(at)paquier(dot)xyz>
Discussion: https://postgr.es/m/CADkLM=dpz3KFnqP-dgJ-zvRvtjsa8UZv8wDAQdqho=qN3kX0Zg@mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/302879bd68d1156fa27c38d29763ca9e4a1649c4

Modified Files
--------------
doc/src/sgml/func/func-admin.sgml | 8 ++---
src/backend/statistics/extended_stats_funcs.c | 38 ++++++++++++++++++++++
src/test/regress/expected/stats_import.out | 45 +++++++++++++++++++++++++++
src/test/regress/sql/stats_import.sql | 29 +++++++++++++++++
4 files changed, 116 insertions(+), 4 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Tomas Vondra 2026-01-26 23:22:18 pgsql: Handle ENOENT status when querying NUMA node
Previous Message Melanie Plageman 2026-01-26 22:15:14 pgsql: Refactor lazy_scan_prune() VM clear logic into helper