Re: EXPLAIN ANALYZE printing logical and hardware I/O per-node
Gokulakannan Somasundaram <gokul007@gmail.com>
From: "Gokulakannan Somasundaram" <gokul007@gmail.com>
To: "Neil Conway" <neilc@samurai.com>
Cc: "Gregory Stark" <stark@enterprisedb.com>, "pgsql-hackers list" <pgsql-hackers@postgresql.org>
Date: 2007-12-15T07:49:52Z
Lists: pgsql-hackers
Hi,
I already made a discussion about it. We can view the Logical I/Os. If
we enable the log_statement_stats in the conf file and apply the following
patch, it is possible. But putting it in Explain analyze makes more sense to
me.
*** postgresql-8.3beta1/src/backend/storage/buffer/bufmgr.c Tue Sep 25
18:11:48 2007
--- postgresql-8.3patch/src/backend/storage/buffer/bufmgr.c Fri Oct 19
23:18:36 2007
***************
*** 1470,1477 ****
localhitrate = (float) LocalBufferHitCount *100.0 /
ReadLocalBufferCount;
appendStringInfo(&str,
! "!\tShared blocks: %10ld read, %10ld written, buffer hit rate =
%.2f%%\n",
! ReadBufferCount - BufferHitCount,
BufferFlushCount, hitrate);
appendStringInfo(&str,
"!\tLocal blocks: %10ld read, %10ld written, buffer hit rate =
%.2f%%\n",
ReadLocalBufferCount -
LocalBufferHitCount,
LocalBufferFlushCount, localhitrate);
--- 1470,1477 ----
localhitrate = (float) LocalBufferHitCount *100.0 /
ReadLocalBufferCount;
appendStringInfo(&str,
! "!\tShared blocks: %10ld Logical Reads, %10ld Physical Reads, %10ld
written, buffer hit rate = %.2f%%\n",
! ReadBufferCount, ReadBufferCount -
BufferHitCount,
BufferFlushCount, hitrate);
appendStringInfo(&str,
"!\tLocal blocks: %10ld read, %10ld written, buffer hit rate =
%.2f%%\n",
ReadLocalBufferCount -
LocalBufferHitCount,
LocalBufferFlushCount, localhitrate);
--
Thanks,
Gokul.
CertoSQL Project,
Allied Solution Group.
(www.alliedgroups.com)