Re: BUG #18923: pg_dump 18beta1 fails to process complex table names - Mailing list pgsql-bugs

From jian he
Subject Re: BUG #18923: pg_dump 18beta1 fails to process complex table names
Date
Msg-id CACJufxF-dNsCSP-GXXZkKdKebwNKk3+3+RiQ94ir-RSn-331ug@mail.gmail.com
Whole thread Raw
In response to Re: BUG #18923: pg_dump 18beta1 fails to process complex table names  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-bugs
On Fri, May 16, 2025 at 3:03 AM Tom Lane <tgl@sss.pgh.pa.us> wrote:
>
> Yeah, I think so.  I was confused for a bit because the one extant
> user of appendPGArray is getNamespaces which does an additional layer
> of quote-doubling via quoteAclUserName.  However, that seems to be because
> it's trying to build aclitem[] arrays whose elements will be read by
> aclitemin, and that de-dups double quotes.
>

getNamespaces use appendPGArray for object's initial ACL string

getNamespaces
``
nsinfo[i].dacl.initprivs = pstrdup(aclarray->data);
``

and we seems *only* use it dumpACL->buildACLCommands
``
    if (!parsePGArray(baseacls, &baseitems, &nbaseitems))
    {
        free(aclitems);
        free(baseitems);
        return false;
    }
``
parsePGArray didn't handle single-quotes.

I think the above is the reason single-quotes within array elements didn't cause
trouble.



pgsql-bugs by date:

Previous
From: Dilip Kumar
Date:
Subject: Re: Re: BUG #18927: Poor query plan - HashAggregate is more than twice as fast but at a higher cost
Next
From: Manav Kumar
Date:
Subject: Understanding JDBC Behaviour