pgsql: Add new flag to format_type_extended() to get NULL for undefined - Mailing list pgsql-committers

From Michael Paquier
Subject pgsql: Add new flag to format_type_extended() to get NULL for undefined
Date
Msg-id E1jsHYY-0007Or-2F@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Add new flag to format_type_extended() to get NULL for undefined type

If a type scanned is undefined, type format routines have two behaviors
depending on if FORMAT_TYPE_ALLOW_INVALID is used by the caller or not:
- Issue a cache lookup error
- Return an undefined type name "???", "???[]" or "-"

The current interface is not really helpful for callers willing to
format properly a type name, but still make sure that the type is
defined as there could be types matching the strings generated when
looking for an undefined type, even if that should not be a problem in
practice.  In order to counter that, add a new flag called
FORMAT_TYPE_INVALID_AS_NULL that returns a NULL result instead of "???
or "-" which does not generate an error.  This flag will be used in a
follow-up patch improving the set of SQL functions showing information
for object addresses when it comes to undefined objects.

Author: Michael Paquier
Reviewed-by: Aleksander Alekseev, Dmitry Dolgov, Daniel Gustafsson,
Álvaro Herrera
Discussion: https://postgr.es/m/CAB7nPqSZxrSmdHK-rny7z8mi=EAFXJ5J-0RbzDw6aus=wB5azQ@mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/1185c782943c6d36835db481b199dce8e6f30246

Modified Files
--------------
src/backend/utils/adt/format_type.c | 22 +++++++++++++++++-----
src/include/utils/builtins.h        |  1 +
2 files changed, 18 insertions(+), 5 deletions(-)


pgsql-committers by date:

Previous
From: Amit Kapila
Date:
Subject: pgsql: Remove unused function parameter in end_parallel_vacuum.
Next
From: Amit Kapila
Date:
Subject: pgsql: Remove extra whitespace in comments atop ReorderBufferCheckMemor