Re: pg_dumpall -r -c try to drop user postgres

From: Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>
To: Michael Paquier <michael(dot)paquier(at)gmail(dot)com>
Cc: PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: pg_dumpall -r -c try to drop user postgres
Date: 2017-12-05 17:03:48
Message-ID: CAFj8pRBZV7HFk-UEXTkKE1AAoqZZ1B0BmNGmPRbdAjuCwu8-bw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

2017-12-03 23:48 GMT+01:00 Michael Paquier <michael(dot)paquier(at)gmail(dot)com>:

> On Sun, Dec 3, 2017 at 3:21 PM, Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>
> wrote:
> > I am not sure if user postgres should be removed, so it is probably bug
> >
> > pg_dumpall -r -c | grep postgres
> >
> > DROP ROLE postgres;
> > CREATE ROLE postgres;
>
> You are looking for this bit of code:
> /*
> * If asked to --clean, do that first. We can avoid
> detailed
> * dependency analysis because databases never depend
> on each other,
> * and tablespaces never depend on each other. Roles
> could have
> * grants to each other, but DROP ROLE will clean
> those up silently.
> */
> if (output_clean)
> {
> if (!globals_only && !roles_only &&
> !tablespaces_only)
> dropDBs(conn);
>
> if (!roles_only && !no_tablespaces)
> dropTablespaces(conn);
>
> if (!tablespaces_only)
> dropRoles(conn);
> }
> Could you clarify what you think is wrong here?
>

I am not sure, if issue is in this code. But I am sure, so DROP ROLE
postgres is just nonsense

This command should to fail every time, and then should not be generated.

Regards

Pavel

> --
> Michael
>

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Peter Geoghegan 2017-12-05 17:09:05 Re: Add PGDLLIMPORT lines to some variables
Previous Message Bossart, Nathan 2017-12-05 16:52:40 Re: BUG #14941: Vacuum crashes