Re: Cache lookup errors with functions manipulation object addresses
Michael Paquier <michael@paquier.xyz>
From: Michael Paquier <michael@paquier.xyz>
To: Dmitry Dolgov <9erthalion6@gmail.com>
Cc: Alvaro Herrera <alvherre@2ndquadrant.com>, Andrew Dunstan <andrew.dunstan@2ndquadrant.com>, PostgreSQL Developers <pgsql-hackers@lists.postgresql.org>
Date: 2019-09-23T23:58:50Z
Lists: pgsql-hackers
Attachments
- v17-0001-Add-flag-to-format_type_extended-to-enforce-NULL.patch (text/x-diff) patch v17-0001
- v17-0002-Refactor-format-procedure-and-operator-APIs-to-b.patch (text/x-diff) patch v17-0002
- v17-0003-Eliminate-user-visible-cache-lookup-errors-for-o.patch (text/x-diff) patch v17-0003
On Mon, Sep 23, 2019 at 09:15:24PM +0200, Dmitry Dolgov wrote:
> Thanks for the patch! I couldn't check it in action, since looks like it
> doesn't apply anymore [1] (although after a quick check I'm not entirely sure
> why). Nevertheless I have a few short commentaries:
Thanks for the review. There was a small conflict in objectaddress.h
easy enough to solve.
> Here and in format_operator_extened commentary says
>
> * Returns a palloc'd string.
>
> but now it's possible to return NULL, so I guess comments need to be adjusted,
> right?
Right.
> v16-0003-Eliminate-user-visible-cache-lookup-errors-for-o.patch
>
> - appendStringInfo(&buffer, _("operator %s"),
> - format_operator(object->objectId));
> - break;
> + {
> + char *oprname = format_operator_extended(object->objectId,
> + FORMAT_PROC_FORCE_NULL);
>
> Shouldn't it be FORMAT_OPERATOR_FORCE_NULL here?
Indeed, that's the case.
Please feel free to use the updated versions attached. These can
apply on top of HEAD at 30d1379.
--
Michael
Commits
-
Eliminate cache lookup errors in SQL functions for object addresses
- 2a10fdc4307a 14.0 landed
-
Refactor routines for name lookups of procedures and operators
- aa38434824c4 14.0 landed
-
Add new flag to format_type_extended() to get NULL for undefined type
- 1185c782943c 14.0 landed
-
Introduce new extended routines for FDW and foreign server lookups
- 8fb569e978af 12.0 landed
-
Refactor routines for subscription and publication lookups
- 1d6fbc38d9ed 12.0 landed
-
get_relid_attribute_name is dead, long live get_attname
- 8237f27b504f 11.0 landed
-
Tweak parser so that there is a defined representation for datatypes
- a585c20d12d0 7.2.1 cited