agora inbox for pgsql-committers@postgresql.org  
help / color / mirror / Atom feed
pgsql: Fix inconsistencies with pg_restore --statistics[-only]
2+ messages / 1 participants
[nested] [flat]

* pgsql: Fix inconsistencies with pg_restore --statistics[-only]
@ 2026-06-15 23:23  Michael Paquier <michael@paquier.xyz>
  0 siblings, 0 replies; 2+ messages in thread

From: Michael Paquier @ 2026-06-15 23:23 UTC (permalink / raw)
  To: pgsql-committers@lists.postgresql.org

Fix inconsistencies with pg_restore --statistics[-only]

Attempting to restore a schema, a table or an index with
--only-statistics skipped all the statistics of the objects wanted.
Like for pg_dump, statistics should be included, so this created an
assymetry between dump and restore.

A second set of problems existed for --table and --index, where the
presence of --statistics skipped the restore of the stats of the
object(s) targetted.

This issue has been reported originally as related to an inconsistency
with the way extended stats restore is handled in Postgres v19, but the
issue is related to the restore of relation and attribute statistics in
v18.  Some TAP tests are added to cover all these cases.

Reported-by: Chao Li <li.evan.chao@gmail.com>
Author: Chao Li <li.evan.chao@gmail.com>
Author: Michael Paquier <michael@paquier.xyz>
Reviewed-by: Corey Huinker <corey.huinker@gmail.com>
Discussion: https://postgr.es/m/66E80CAB-527C-42B1-BB65-3F82CF4AD998@gmail.com
Backpatch-through: 18

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/0dd93de69e80ce98eb23f86d163bea8b0787643e

Modified Files
--------------
src/bin/pg_dump/pg_backup_archiver.c | 36 ++++++++++++++++------
src/bin/pg_dump/t/002_pg_dump.pl     | 60 ++++++++++++++++++++++++++++++++++++
2 files changed, 87 insertions(+), 9 deletions(-)



^ permalink  raw  reply  [nested|flat] 2+ messages in thread

* pgsql: Fix inconsistencies with pg_restore --statistics[-only]
@ 2026-06-15 23:23  Michael Paquier <michael@paquier.xyz>
  0 siblings, 0 replies; 2+ messages in thread

From: Michael Paquier @ 2026-06-15 23:23 UTC (permalink / raw)
  To: pgsql-committers@lists.postgresql.org

Fix inconsistencies with pg_restore --statistics[-only]

Attempting to restore a schema, a table or an index with
--only-statistics skipped all the statistics of the objects wanted.
Like for pg_dump, statistics should be included, so this created an
assymetry between dump and restore.

A second set of problems existed for --table and --index, where the
presence of --statistics skipped the restore of the stats of the
object(s) targetted.

This issue has been reported originally as related to an inconsistency
with the way extended stats restore is handled in Postgres v19, but the
issue is related to the restore of relation and attribute statistics in
v18.  Some TAP tests are added to cover all these cases.

Reported-by: Chao Li <li.evan.chao@gmail.com>
Author: Chao Li <li.evan.chao@gmail.com>
Author: Michael Paquier <michael@paquier.xyz>
Reviewed-by: Corey Huinker <corey.huinker@gmail.com>
Discussion: https://postgr.es/m/66E80CAB-527C-42B1-BB65-3F82CF4AD998@gmail.com
Backpatch-through: 18

Branch
------
REL_18_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/42ffdedcf743c23ba346eba8e3afce9da5e8f618

Modified Files
--------------
src/bin/pg_dump/pg_backup_archiver.c | 36 ++++++++++++++++------
src/bin/pg_dump/t/002_pg_dump.pl     | 59 ++++++++++++++++++++++++++++++++++++
2 files changed, 86 insertions(+), 9 deletions(-)



^ permalink  raw  reply  [nested|flat] 2+ messages in thread


end of thread, other threads:[~2026-06-15 23:23 UTC | newest]

Thread overview: 2+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
2026-06-15 23:23 pgsql: Fix inconsistencies with pg_restore --statistics[-only] Michael Paquier <michael@paquier.xyz>
2026-06-15 23:23 pgsql: Fix inconsistencies with pg_restore --statistics[-only] Michael Paquier <michael@paquier.xyz>

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox