Re: updates for handling optional argument in system functions - Mailing list pgsql-hackers

From Chao Li
Subject Re: updates for handling optional argument in system functions
Date
Msg-id 990C3A75-D4CE-49E1-AC30-E746EF39DBB8@gmail.com
Whole thread Raw
In response to Re: updates for handling optional argument in system functions  ("David G. Johnston" <david.g.johnston@gmail.com>)
List pgsql-hackers

> On Apr 8, 2026, at 09:46, David G. Johnston <david.g.johnston@gmail.com> wrote:
>
> On Tuesday, April 7, 2026, Chao Li <li.evan.chao@gmail.com> wrote:
>
> We can clearly see ":expr {FUNCEXPR :funcid 1573 “.
>
> With this patch, will that view break? How would users find all such broken views? Maybe PostgreSQL already has some
recommendedway to handle this kind of situation that I am not aware of? 
>
> pg_dump resolves oid=1573 and produces a textual SQL representation, which is then executed during pg_restore.  This
happensmanually, and also automatically by pg_upgrade.  Since the text form hasn’t changed the view is still valid in
v19. You would see the new oid if inspecting the rule after the upgrade. 
>
> So yes, the public serialization format being SQL and thus mandatory new object creation during upgrade is the way
PostgreSQLhandles implementation detail isolation. 
>
> David J.
>

Hi David, thanks for the explanation, I really didn’t know that.

Then, the patch looks good to me. GET_PRETTY_FLAGS(false) returns PRETTYFLAG_INDENT, so no behavior change either.

Best regards,
--
Chao Li (Evan)
HighGo Software Co., Ltd.
https://www.highgo.com/







pgsql-hackers by date:

Previous
From: "Zhijie Hou (Fujitsu)"
Date:
Subject: RE: synchronized_standby_slots behavior inconsistent with quorum-based synchronous replication
Next
From: John Naylor
Date:
Subject: Re: Reduce build times of pg_trgm GIN indexes