Re: Dump public schema ownership & seclabels

Noah Misch <noah@leadboat.com>

From: Noah Misch <noah@leadboat.com>
To: Asif Rehman <asifr.rehman@gmail.com>, Zhihong Yu <zyu@yugabyte.com>
Cc: PostgreSQL Developers <pgsql-hackers@lists.postgresql.org>
Date: 2021-05-03T05:57:47Z
Lists: pgsql-hackers

Attachments

On Sat, May 01, 2021 at 09:43:36AM -0700, Zhihong Yu wrote:
> On Sat, May 1, 2021 at 8:16 AM Asif Rehman <asifr.rehman@gmail.com> wrote:
> > The following review has been posted through the commitfest application:
> > make installcheck-world:  tested, passed
> > Implements feature:       tested, passed
> > Spec compliant:           tested, passed
> > Documentation:            not tested
> >
> > Hi,
> >
> > I have tested this patch. This patch still applies and it works well.
> >
> > Regards,
> > Asif
> >
> > The new status of this patch is: Ready for Committer

Thanks.  Later, I saw that "pg_dump --schema=public" traditionally has yielded
"CREATE SCHEMA public" and "COMMENT ON SCHEMA public".  I've updated the
patches to preserve that behavior.

I'll push this when v15 branches.  I do think it's a bug fix and could argue
for including it in v14.  On the other hand, I mailed three total patch
versions now known to be wrong, so it would be imprudent to count on no
surprises remaining.

> For public-schema-comment-dump-v2.patch :
> 
> +       if (ncomments == 0)
> +       {
> +           comments = &empty_comment;
> +           ncomments = 1;
> +       }
> +       else if (strcmp(comments->descr, (fout->remoteVersion >= 80300 ?
> +                                         "standard public schema" :
> +                                         "Standard public schema")) == 0)
> +       {
> +           ncomments = 0;
> 
> Is it possible that, in the case ncomments > 0, there are more than one
> comment ?

Yes, I think that's normal when the search terms include an objsubid (subid !=
InvalidOid).

Commits

  1. Remove literal backslash from Perl \Q ... \E.

  2. Dump COMMENT ON SCHEMA public.

  3. Dump public schema ownership and security labels.