Re: AW: AW: AW: AW: WAL-based allocation of XIDs is insecur e - Mailing list pgsql-hackers

From Vadim Mikheev
Subject Re: AW: AW: AW: AW: WAL-based allocation of XIDs is insecur e
Date
Msg-id 04cf01c0a6e6$c46339e0$4879583f@sectorbase.com
Whole thread Raw
In response to AW: AW: AW: AW: AW: WAL-based allocation of XIDs is ins ecur e  (Zeugswetter Andreas SB <ZeugswetterA@wien.spardat.at>)
List pgsql-hackers
> > > Before commit or rollback the xlog is not flushed to disk, thus you can loose
> > > those xlog entries, but the index page might already be on disk because of
> > > LRU buffer reuse, no ?
> > 
> > No. Buffer page is written to disk *only after corresponding records are flushed
> > to log* (WAL means Write-Ahead-Log - write log before modifying data pages).
> 
> You mean, that for each dirty buffer that is reused, the reusing backend fsyncs
> the xlog before writing the buffer to disk ?

In short - yes.
To be accurate - XLogFlush is called to ensure that records reflecting buffer' modifications
are on disk. That's how it works everywhere. And that's why LRU is not good policy for
bufmgr anymore (we discussed this already).

Vadim




pgsql-hackers by date:

Previous
From: "Vadim Mikheev"
Date:
Subject: Re: Proposed WAL changes
Next
From: Zeugswetter Andreas SB
Date:
Subject: AW: How to shoot yourself in the foot: kill -9 postmast er