Re: [pgsql-hackers-win32] What's left? - Mailing list pgsql-hackers

From Bruce Momjian
Subject Re: [pgsql-hackers-win32] What's left?
Date
Msg-id 200401270151.i0R1pCo21623@candle.pha.pa.us
Whole thread Raw
In response to Re: What's left?  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
Tom Lane wrote:
> Bruce Momjian <pgman@candle.pha.pa.us> writes:
> > In this way, no one ever has the rename file open while we are holding
> > the locks, and we can loop without holding an exclusive lock on
> > pg_shadow, and file writes remain in order.
>
> You're doing this where exactly, and are certain that you are holding no
> locks why exactly?  And if you aren't holding a lock, what prevents
> concurrency bugs?

I am looking now at the relcache file, pg_pwd and pg_group.  I am sure I
am holding some locks, but not an exclusive lock on e.g. pg_shadow. I am
working on a patch now.  I don't expect to eliminate the looping for
rename, but to eliminate holding exclusive locks while doing the rename
to a file actively being read.  By using realfile.new, the first rename
is only being done on a file that is never opened, just renamed, which
should be quick.

I can't think of a cleaner solution.

--
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073

pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: What's left?
Next
From: Bruce Momjian
Date:
Subject: Re: What's left?