Thread: BUG #6005: ALTER ROLE ... VALID UNTIL 'infinity' crashes postmaster on a fresh install

The following bug has been logged online:

Bug reference:      6005
Logged by:          Daniel Grace
Email address:      dgrace@wingsnw.com
PostgreSQL version: 9.1-beta1
Operating system:   Win7 x64 (x86 postgres)
Description:        ALTER ROLE ... VALID UNTIL 'infinity' crashes postmaster
on a fresh install
Details:

While trying to restore a database created under 9.1 alpha (created with
pg_dumpall):

CREATE ROLE postgres;
ALTER ROLE postgres WITH SUPERUSER INHERIT CREATEROLE CREATEDB LOGIN
REPLICATION PASSWORD 'xxxx';
CREATE ROLE foo;
ALTER ROLE foo WITH NOSUPERUSER INHERIT NOCREATEROLE NOCREATEDB NOLOGIN
NOREPLICATION VALID UNTIL 'infinity';

The final statement causes postmaster to crash.  I attempted it again
breaking each part of the ALTER ROLE into individual statements, e.g.
ALTER ROLE foo WITH NOSUPERUSER;
ALTER ROLE foo WITH INHERIT;
...

and it was the ALTER ROLE foo VALID UNTIL 'infinity' line causing the crash.
"Daniel Grace" <dgrace@wingsnw.com> writes:
> Bug reference:      6005
> Logged by:          Daniel Grace
> Email address:      dgrace@wingsnw.com
> PostgreSQL version: 9.1-beta1
> Operating system:   Win7 x64 (x86 postgres)
> Description:        ALTER ROLE ... VALID UNTIL 'infinity' crashes postmaster
> on a fresh install
> Details:

> While trying to restore a database created under 9.1 alpha (created with
> pg_dumpall):

> CREATE ROLE postgres;
> ALTER ROLE postgres WITH SUPERUSER INHERIT CREATEROLE CREATEDB LOGIN
> REPLICATION PASSWORD 'xxxx';
> CREATE ROLE foo;
> ALTER ROLE foo WITH NOSUPERUSER INHERIT NOCREATEROLE NOCREATEDB NOLOGIN
> NOREPLICATION VALID UNTIL 'infinity';

> The final statement causes postmaster to crash.

Hmm, cannot duplicate this here ... can anyone else?  Windows-specific
issue perhaps?

            regards, tom lane
On Wed, May 4, 2011 at 4:39 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> "Daniel Grace" <dgrace@wingsnw.com> writes:
>> Bug reference: =A0 =A0 =A06005
>> Logged by: =A0 =A0 =A0 =A0 =A0Daniel Grace
>> Email address: =A0 =A0 =A0dgrace@wingsnw.com
>> PostgreSQL version: 9.1-beta1
>> Operating system: =A0 Win7 x64 (x86 postgres)
>> Description: =A0 =A0 =A0 =A0ALTER ROLE ... VALID UNTIL 'infinity' crashe=
s postmaster
>> on a fresh install
>> Details:
>
>> While trying to restore a database created under 9.1 alpha (created with
>> pg_dumpall):
>
>> CREATE ROLE postgres;
>> ALTER ROLE postgres WITH SUPERUSER INHERIT CREATEROLE CREATEDB LOGIN
>> REPLICATION PASSWORD 'xxxx';
>> CREATE ROLE foo;
>> ALTER ROLE foo WITH NOSUPERUSER INHERIT NOCREATEROLE NOCREATEDB NOLOGIN
>> NOREPLICATION VALID UNTIL 'infinity';
>
>> The final statement causes postmaster to crash.
>
> Hmm, cannot duplicate this here ... can anyone else? =A0Windows-specific
> issue perhaps?

Will commit 2e82d0b396473b595a30f68b37b8dfd41c37dff8 have possibly fixed th=
is?

--=20
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company
Robert Haas <robertmhaas@gmail.com> writes:
> On Wed, May 4, 2011 at 4:39 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
>> "Daniel Grace" <dgrace@wingsnw.com> writes:
>>> ALTER ROLE foo WITH NOSUPERUSER INHERIT NOCREATEROLE NOCREATEDB NOLOGIN
>>> NOREPLICATION VALID UNTIL 'infinity';

>> Hmm, cannot duplicate this here ... can anyone else?  Windows-specific
>> issue perhaps?

> Will commit 2e82d0b396473b595a30f68b37b8dfd41c37dff8 have possibly fixed this?

It will have stopped the crash, but no more.  See
http://archives.postgresql.org/pgsql-hackers/2011-05/msg00589.php

Working on the rest of the fix now.

            regards, tom lane
Robert Haas <robertmhaas@gmail.com> writes:
> Will commit 2e82d0b396473b595a30f68b37b8dfd41c37dff8 have possibly fixed this?

This should now be fixed as of HEAD, but it wouldn't be a bad idea for
someone to check that it really works on Windows.  Look at whether the
timezone_abbreviations GUC has a sane value and you can use timezone
abbreviations, not just whether 'infinity' crashes.

            regards, tom lane
I don't have the means to easily compile a PG build, but if there's a
place to get nightly builds or such I'd be happy to give it a shot and
report back.

On Wed, May 11, 2011 at 5:02 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> Robert Haas <robertmhaas@gmail.com> writes:
>> Will commit 2e82d0b396473b595a30f68b37b8dfd41c37dff8 have possibly fixed=
 this?
>
> This should now be fixed as of HEAD, but it wouldn't be a bad idea for
> someone to check that it really works on Windows. =A0Look at whether the
> timezone_abbreviations GUC has a sane value and you can use timezone
> abbreviations, not just whether 'infinity' crashes.
>
> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0regards, tom lane
>



--=20
Daniel Grace
AGE, LLC
System Administrator and Software Developer