pgsql: Add test for MAINTAIN permission with pg_restore_extended_stats(

From: Michael Paquier <michael(at)paquier(dot)xyz>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Add test for MAINTAIN permission with pg_restore_extended_stats(
Date: 2026-01-26 07:33:16
Message-ID: E1vkH64-002hsd-0u@gemulon.postgresql.org
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Add test for MAINTAIN permission with pg_restore_extended_stats()

Like its cousin functions for the restore of relation and attribute
stats, pg_restore_extended_stats() needs to be run by a user that is the
database owner or has MAINTAIN privileges on the table whose stats are
restored. This commit adds a regression test ensuring that MAINTAIN is
required when calling the function. This test also checks that a
ShareUpdateExclusive lock is taken on the table whose stats are
restored.

This has been split from the commit that has introduced
pg_restore_extended_stats(), for clarity.

Author: Corey Huinker <corey(dot)huinker(at)gmail(dot)com>
Reviewed-by: Chao Li <li(dot)evan(dot)chao(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/d9abd9e1050db4c2fcdce6fcd8dc0ede6769db16

Modified Files
--------------
src/test/regress/expected/stats_import.out | 42 ++++++++++++++++++++++++++++++
src/test/regress/sql/stats_import.sql | 32 +++++++++++++++++++++++
2 files changed, 74 insertions(+)

Browse pgsql-committers by date

  From Date Subject
Next Message Peter Eisentraut 2026-01-26 09:30:31 pgsql: Disable extended alignment uses on older g++
Previous Message Michael Paquier 2026-01-26 07:14:40 pgsql: Fix missing initialization in pg_restore_extended_stats()