Re: shared_buffers, wal_buffers, WAL files, data files
От | Guillaume Lelarge |
---|---|
Тема | Re: shared_buffers, wal_buffers, WAL files, data files |
Дата | |
Msg-id | 47595F05.50508@lelarge.info обсуждение исходный текст |
Ответ на | Re: shared_buffers, wal_buffers, WAL files, data files (Alvaro Herrera <alvherre@alvh.no-ip.org>) |
Список | pgsql-hackers |
Alvaro Herrera a écrit : > Guillaume Lelarge wrote: >> Tom Lane a écrit : >>> Guillaume Lelarge <guillaume@lelarge.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 ? > > That's correct. WAL buffers are obviously shared; when one transaction > commits it will flush not only its own entries, but also those that any > other transaction could have written. > OK, thanks. I'll probably have more questions but I need to think a bit more about all your answers. Anyways, thanks. Regards. -- Guillaume.http://www.postgresqlfr.orghttp://dalibo.com
В списке pgsql-hackers по дате отправления: