Re: EXPLAIN ANALYZE printing logical and hardware I/O per-node

Heikki Linnakangas <heikki@enterprisedb.com>

From: Heikki Linnakangas <heikki@enterprisedb.com>
To: Gokulakannan Somasundaram <gokul007@gmail.com>
Cc: Gregory Stark <stark@enterprisedb.com>, Neil Conway <neilc@samurai.com>, pgsql-hackers list <pgsql-hackers@postgresql.org>
Date: 2007-12-15T19:33:00Z
Lists: pgsql-hackers
Gokulakannan Somasundaram wrote:
> I was going to say that I'm really only interested in physical I/O. Logical
>> I/O which is satisfied by the kernel cache is only marginally interesting
>> and
>> buffer fetches from Postgres's shared buffer is entirely uninteresting
>> from
>> the point of view of trying to figure out what is slowing down a query.
> 
> Ok the Physical I/Os are already visible, if you enable log_statement_stats.

I think you missed the point. What log_statement_stats shows are not 
physical I/Os, they're read() system calls. Unfortunately there's no 
direct way to tell if a read() is satisfied from OS cache or not. Greg's 
suggestion was about how to do that.

-- 
   Heikki Linnakangas
   EnterpriseDB   http://www.enterprisedb.com