postgres.git / summary / log / commit / refs

commit    ae8c4bd558c5d55c5a357e910d496eea8ff33647
Author:   Fujii Masao <fujii@postgresql.org>
Date:     Wed Jul 15 12:22:38 2026 +0000
First released in: 18.6

    Fix argument names in pg_clear_attribute_stats() errors
    
    pg_clear_attribute_stats() checks its required arguments manually
    because the function is not strict. Previously, when schemaname or
    relname was passed as NULL, the error incorrectly reported the
    argument name as "relation" in both cases:
    
        ERROR:  argument "relation" must not be null
    
    This was misleading, especially for schemaname, and inconsistent with
    the function's SQL-visible argument names.
    
    The cause is that cleararginfo[] in attribute_stats.c used
    "relation" for both the schema-name and relation-name arguments.
    
    This commit fixes the issue by using "schemaname" and "relname" instead,
    matching the function's declared argument names so that the error reports
    the correct argument name.
    
    Backpatch to v18, where pg_clear_attribute_stats() was introduced.
    
    Author: Ilia Evdokimov <ilya.evdokimov@tantorlabs.com>
    Reviewed-by: Fujii Masao <masao.fujii@gmail.com>
    Discussion: https://postgr.es/m/4bf66c5e-8dd7-4ef3-8691-db67ecff6f16@tantorlabs.com
    Backpatch-through: 18


src/backend/statistics/attribute_stats.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/backend/statistics/attribute_stats.c b/src/backend/statistics/attribute_stats.c index 5c1c5749ad4..357466456ff 100644 --- a/src/backend/statistics/attribute_stats.c +++ b/src/backend/statistics/attribute_stats.c @@ -93,8 +93,8 @@ enum clear_attribute_stats_argnum static struct StatsArgInfo cleararginfo[] = { - [C_ATTRELSCHEMA_ARG] = {"relation", TEXTOID}, - [C_ATTRELNAME_ARG] = {"relation", TEXTOID}, + [C_ATTRELSCHEMA_ARG] = {"schemaname", TEXTOID}, + [C_ATTRELNAME_ARG] = {"relname", TEXTOID}, [C_ATTNAME_ARG] = {"attname", TEXTOID}, [C_INHERITED_ARG] = {"inherited", BOOLOID}, [C_NUM_ATTRIBUTE_STATS_ARGS] = {0} [parent: 36c6b4997618]