Christopher Kings-Lynne wrote:
> > I'm likely going to make this the default for PostgreSQL on FreeBSD
> > starting with 7.4 (just posted something to -hackers about this)f. If
> > you'd like to do this in your testing, just apply the following patch.
> >
> > Right now PostgreSQL defaults to 8K blocks, but FreeBSD uses 16K
> > blocks which means that currently, reading two blocks of data in PG is
> > two read calls to the OS, one reads 16K of data off disk and returns
> > the 1st page, the 2nd call pulls the 2nd block from the FS cache. In
> > making things 16K, it avoids the need for the 2nd system call which is
> > where the performance difference is coming from, afaikt. -sc
>
> Are you _sure_ this won't cause any atomicity problems? Can FreeBSD write
> 16k as an atomic unit?
We pre-modified page images to WAL before modifying the page. The disks
are only 512-byte blocks, so we don't rely on file system atomicity
anymore anyway.
--
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