From: | Guillaume Lelarge <guillaume(at)lelarge(dot)info> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: shared_buffers, wal_buffers, WAL files, data files |
Date: | 2007-12-06 18:43:59 |
Message-ID: | 475842EF.5090901@lelarge.info |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Tom Lane a écrit :
> Guillaume Lelarge <guillaume(at)lelarge(dot)info> writes:
>> I try to answer a simple question : what happens when I do a simple
>> "INSERT" on a just started PostgreSQL server.
>
>> From what I understand with the INSERT statement, here is what happens :
>> * backend loads first (and only) block from footable file into a shared
>> buffer
>> * it modifies this block on the shared buffer, and sets it as dirty
>
> Right, and it also makes a WAL log entry about this action.
>
The WAL log entry is made on the wal buffers (in memory). As soon as
this statement is commited (in my example, it's right now, but in a
BEGIN ... COMMIT statement, at COMMIT time), the wal buffer is flushed
on WAL files. It can be flushed before if wal buffer is not big enough
to contain all the current transactions. Am I right ?
Thanks for your answer, I think I better understand the complete process.
Regards.
--
Guillaume.
http://www.postgresqlfr.org
http://dalibo.com
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2007-12-06 19:29:21 | Re: shared_buffers, wal_buffers, WAL files, data files |
Previous Message | Simon Riggs | 2007-12-06 18:32:18 | Re: pg_dump and BINARY mode COPY |