Skip site navigation (1) Skip section navigation (2)

Re: Shared buffers, db transactions commited, and write IO on Solaris

From: Erik Jones <erik(at)myemma(dot)com>
To: Dimitri <dimitrik(dot)fr(at)gmail(dot)com>
Cc: "Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us>, "PostgreSQL Performance" <pgsql-performance(at)postgresql(dot)org>
Subject: Re: Shared buffers, db transactions commited, and write IO on Solaris
Date: 2007-03-30 14:14:11
Message-ID: F007D213-08DB-4B1D-A9BD-4925CAD11334@myemma.com (view raw or flat)
Thread:
Lists: pgsql-performance
On Mar 30, 2007, at 8:14 AM, Dimitri wrote:

>>
>> You are right in that the page size constraint is lifted in that
>> directio cuts out the VM filesystem cache.  However, the Solaris
>> kernel still issues io ops in terms of its logical block size (which
>> we have at the default 8K).  It can issue io ops for fragments as
>> small as 1/8th of the block size, but Postgres issues its io requests
>> in terms of the block size which means that io ops from Postgres will
>> be in 8K chunks which is exactly what we see when we look at our
>> system io stats.  In fact, if any io request is made that isn't a
>> multiple of 512 bytes (the disk sector size), the file system
>> switches back to the buffered io.
>
> Oh, yes, of course! yes, you still need to respect multiple of 512
> bytes block size on read and write - sorry, I was tired :)
>
> Then it's seems to be true - default XLOG block size is 8K, means for
> every even small auto-committed transaction we should write 8K?... Is
> there any reason to use so big default block size?...
>
> Probably it may be a good idea to put it as 'initdb' parameter? and
> have such value per database server?

I believe it's because that is a pretty normal Unix kernal block size  
and you want the two to match.

erik jones <erik(at)myemma(dot)com>
software developer
615-296-0838
emma(r)



In response to

Responses

pgsql-performance by date

Next:From: DimitriDate: 2007-03-30 14:25:16
Subject: Re: Shared buffers, db transactions commited, and write IO on Solaris
Previous:From: Matteo BeccatiDate: 2007-03-30 13:36:26
Subject: Re: Wrong plan sequential scan instead of an index one

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group