From: | Evgeny Gridasov <eugrid(at)fpm(dot)kubsu(dot)ru> |
---|---|
To: | Alvaro Herrera <alvherre(at)commandprompt(dot)com> |
Cc: | pgsql-general(at)postgresql(dot)org |
Subject: | Re: WAL question |
Date: | 2007-01-12 15:45:06 |
Message-ID: | 20070112184506.77374765.eugrid@fpm.kubsu.ru |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Hello.
So, what happens if I set checkpoint_segments and checkpoint_timeout very high,
and, shared_buffers to a very low value?
Will PostgreSQL force a checkpoint when it has not enough memory in shared_buffers for some new "un-checkpointed" data ?
On Fri, 12 Jan 2007 10:49:04 -0300
Alvaro Herrera <alvherre(at)commandprompt(dot)com> wrote:
> Evgeny Gridasov wrote:
> > Hello.
> >
> > Lets's imagine a sequence in time:
> > (1) Some transactions commit data (simple table inserts/updates).
> > (2) I get data from a table using select.
> > (3) A CHECKPOINT occurs, data from pg_xlog is copied to actual table data files.
> >
> > Questions:
> >
> > Where does PostgreSQL read data during (2) process?
>
> Shared buffers, which means that data that's not in memory is read from
> disk, and data that is in memory is read from there. A checkpoint
> evicts stuff from shared buffers to disk.
>
> > Would it scan both pg_xlog(for committed data that dind't pass
> > CHECKPOINT) and table data files?
>
> pg_xlog is not read except in crash recovery.
>
> > What happens if an index could be used?
>
> Same thing.
>
> --
> Alvaro Herrera http://www.CommandPrompt.com/
> The PostgreSQL Company - Command Prompt, Inc.
>
From | Date | Subject | |
---|---|---|---|
Next Message | Jeanna Geier | 2007-01-12 15:45:27 | Re: RESTORE Error |
Previous Message | Tom Lane | 2007-01-12 15:21:09 | Re: [HACKERS] Checkpoint request failed on version 8.2.1. |