Re: postgresql shared buffers

From: Heikki Linnakangas <heikki(at)enterprisedb(dot)com>
To: Praveen Kumar N <praveen_n(at)students(dot)iiit(dot)net>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: postgresql shared buffers
Date: 2006-09-08 13:30:01
Message-ID: 45017059.1040405@enterprisedb.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Praveen Kumar N wrote:
> I have installed postgresql from sourcecode.I would like to know
> how pages are replaced in the bufferpool when we join two relations.I
> tried to trace it by editing files
> pgsql/src/backend/storage/buffer/(bufmgr.c,freelist.c).But i feel still I
> am missing some information after observing extracted information abt
> buffer replacement.My input datasize is 10times more than main
> memory/RAM size.When I joined two relations,postgresql accessed both
> relations sequentially one by one and that too only once.Then how is
> it joining two relations by accessing only once? Is it storing that
> accessed relations some where other than main memory/bufferpool(Becos
> they cant fit into main memory).

What kind of a join is it? If it's a merge join, using indexes, it would
only have to visit each heap page once.

> So can anybdy tell me is there is ne thing I am missing? Is there any
> concept like postgresql cache similar to kernel cache otherthan
> sharedbuffers.If so how can we figure it out.

No. All access to relations (except temporary relations) go through
bufmgr and the shared memory buffer cache.

> Is there any way by which postgresql is accessing database relations
> through,other than rotines in bufmgr.c nd freelist.c(I mean any other
> routines like ReadBuffer,StrategyGet etc.)

No.

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

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Gregory Stark 2006-09-08 13:32:21 Re: postgresql shared buffers
Previous Message mark 2006-09-08 13:28:21 Re: Fixed length data types issue