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

Re: Buffer Management

From: "Mario Weilguni" <mario(dot)weilguni(at)icomedias(dot)com>
To: "Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us>, "Curt Sampson" <cjs(at)cynic(dot)net>
Cc: "J(dot) R(dot) Nield" <jrnield(at)usol(dot)com>,"Bruce Momjian" <pgman(at)candle(dot)pha(dot)pa(dot)us>,"PostgreSQL Hacker" <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Buffer Management
Date: 2002-06-25 14:45:54
Message-ID: (view raw, whole thread or download thread mbox)
Lists: pgsql-hackers
Isn't that what msync() is for? Or is this not portable?

-----Urspr√ľngliche Nachricht-----
Von: Tom Lane [mailto:tgl(at)sss(dot)pgh(dot)pa(dot)us]
Gesendet: Dienstag, 25. Juni 2002 16:30
An: Curt Sampson
Cc: J. R. Nield; Bruce Momjian; PostgreSQL Hacker
Betreff: Re: [HACKERS] Buffer Management 

Curt Sampson <cjs(at)cynic(dot)net> writes:
> On Tue, 25 Jun 2002, Tom Lane wrote:
>> The other discussion seemed to be considering how to mmap individual
>> data files right into backends' address space.  I do not believe this
>> can possibly work, because of loss of control over visibility of data
>> changes to other backends, timing of write-backs, etc.

> I don't understand why there would be any loss of visibility of changes.
> If two backends mmap the same block of a file, and it's shared, that's
> the same block of physical memory that they're accessing.

Is it?  You have a mighty narrow conception of the range of
implementations that's possible for mmap.

But the main problem is that mmap doesn't let us control when changes to
the memory buffer will get reflected back to disk --- AFAICT, the OS is
free to do the write-back at any instant after you dirty the page, and
that completely breaks the WAL algorithm.  (WAL = write AHEAD log;
the log entry describing a change must hit disk before the data page
change itself does.)

			regards, tom lane

---------------------------(end of broadcast)---------------------------
TIP 6: Have you searched our list archives?


pgsql-hackers by date

Next:From: Tom LaneDate: 2002-06-25 14:52:52
Subject: Re: Buffer Management
Previous:From: Tom LaneDate: 2002-06-25 14:32:10
Subject: Re: Buffer Management

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