Re: What is WAL used for?

From: Thierry Missimilly <THIERRY(dot)MISSIMILLY(at)BULL(dot)NET>
To: Jonathan Bartlett <johnnyb(at)eskimo(dot)com>
Cc: Relaxin <noname(at)spam(dot)com>, pgsql-general(at)postgresql(dot)org
Subject: Re: What is WAL used for?
Date: 2003-11-27 08:05:38
Message-ID: 3FC5B052.4058F3F6@BULL.NET
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Jonathan,

Could you tell me what is the real impact of "fsync=false" on the WAL and on the
database in the same catastrophic scenario ?

Thierry Missimilly

Jonathan Bartlett wrote:

> WAL is write-ahead logging. Basically, before the database actually
> performs an operation, it writes in a log what it's about to do. Then, it
> goes and does it. This ensures data consistency. Let's say that the
> computer was powered off suddenly. There are several points that could
> happen:
>
> 1) before a write - in this case the database would be fine with or
> without write-ahead logging.
>
> 2) during a write - without write-ahead logging, if the machine is powered
> off during a write, the database has no way of knowing what remained to be
> written, or what was being written. WIth Postgres, this is furthere
> broken down into two possibilities:
>
> * The power-off occurred while it was writing to the log - in this
> case, the log is rolled back. The database is unaffected because the data
> was never written to the database proper.
>
> * The power-off occurred after writing to the log, while writing to
> disk - in this case, Postgres can simply read from the log what was
> supposed to be written, and complete the write.
>
> 3) after a write - again, this does not affect Postgres either with or
> without WAL.
>
> In addition, WAL increases PostgreSQL's efficiency, because it can delay
> random-access writes to disk, and just do sequential writes to the log for
> a long time. This reduces the amount of head-seek the dissk are doing.
> If you store your WAL files on a different disk, you get even more speed
> advantages.
>
> Jon
>
> On Tue, 25 Nov 2003, Relaxin wrote:
>
> > I'm just trying to figure out the terminology that is used on this board and
> > wanted to know what is WAL and what roll does it play in Postgresql?
> >
> > Thanks
> >
> >
> >
> > ---------------------------(end of broadcast)---------------------------
> > TIP 7: don't forget to increase your free space map settings
> >
>
> ---------------------------(end of broadcast)---------------------------
> TIP 9: the planner will ignore your desire to choose an index scan if your
> joining column's datatypes do not match

Attachment Content-Type Size
THIERRY.MISSIMILLY.vcf text/x-vcard 327 bytes

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Chris Travers 2003-11-27 08:08:14 Re: PostgreSQL, MySQL, etc., was Re: PostgreSQL is much faster than MySQL, only when...
Previous Message Randolf Richardson 2003-11-27 07:09:23 Re: PostgreSQL, MySQL, etc., was Re: PostgreSQL is much faster than MySQL, only when...