> Bruce Momjian <pgman@candle.pha.pa.us> writes:
> > I am suggesting opening and marking a file descriptor as needing fsync
> > even if I only dirty the buffer and not write it. I understand another
> > backend may write my buffer and remove it before I commit my
> > transaction. However, I will be the one to fsync it. I am also
> > suggesting that such file descriptors never get recycled until
> > transaction commit.
>
> > Is that wrong?
>
> I see where you're going, and you could possibly make it work, but
> there are a bunch of problems. One objection is that kernel FDs
> are a very finite resource on a lot of platforms --- you don't really
> want to tie up one FD for every dirty buffer, and you *certainly*
> don't want to get into a situation where you can't release kernel
> FDs until end of xact. You might be able to get around that by
> associating the fsync-needed bit with VFDs instead of FDs.
OK, at least I was thinking correctly. Yes, there are serious drawbacks
that make this pretty hard to implement. Unless Vadim revives this, we
can drop it.
-- Bruce Momjian | http://www.op.net/~candle pgman@candle.pha.pa.us | (610)
853-3000+ If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill,
Pennsylvania19026