Re: pg_group_name_index corrupt?

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: The Hermit Hacker <scrappy(at)hub(dot)org>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: pg_group_name_index corrupt?
Date: 2000-05-04 18:16:05
Message-ID: 24309.957464165@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

I wrote:
> It occurred to me that this would be the likely symptom if a CREATE
> GROUP or ALTER GROUP command had neglected to update the indexes on
> pg_group. However, I can't spot any such problem in the code nor
> cause it to happen by hand. Anyone else have an idea?

After further looking, I notice that users.c is one of the few places
that will drop AccessExclusiveLock at heap_close time rather than
holding it till xact commit. I wonder whether this is a bug...
it could allow another backend to get in and start vacuuming the file
before our updates have committed. I am not sure that vacuum would do
the wrong thing in that case, but maybe so. Comments anyone (Vadim?)

I also notice that there definitely is a glaring bug there:
write_password_file() leaks one kernel file descriptor each time it runs
(note the creat() call). Alter enough pg_shadow entries in one session
and your backend stops working. I think this is a "must fix" problem
--- any objections?

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message The Hermit Hacker 2000-05-04 19:39:35 Re: pg_group_name_index corrupt?
Previous Message Mitch Vincent 2000-05-04 17:58:09 Re: system usage stats (Was: Re: Why Not MySQL? )