From: | Stefan Kaltenbrunner <stefan(at)kaltenbrunner(dot)cc> |
---|---|
To: | Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com> |
Cc: | flyusa2010 fly <flyusa2010(at)gmail(dot)com>, pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: disk caching for writing log |
Date: | 2010-12-03 18:14:20 |
Message-ID: | 4CF9337C.2030502@kaltenbrunner.cc |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On 12/03/2010 06:43 PM, Heikki Linnakangas wrote:
> On 03.12.2010 13:49, flyusa2010 fly wrote:
>> When writing log, dbms should synchronously flush log to disk. I'm
>> wondering, if it is possible that the logs are in disk cache, while the
>> control is returned to dbms again, so dbms thinks logs are persistent on
>> disk. In this case, if the disk fails, then there's incorrectness for
>> dbms
>> log writing, because the log is not persistent, but dbms considers it is
>> persistent!
>
> I have no idea what you mean. The method we use to flush the WAL to disk
> should not be fallible to such failures, we wait for fsync() or
> fdatasync() to return before we assume the logs are safely on disk. If
> you can elaborate what you mean by "control is returned to dbms", maybe
> someone can explain why in more detail.
I think he is refering to the plain old "the disk/os is lying about
whether the data really made it to stable storage" issue(especially with
the huge local caches on modern disks) - if you have such a disk and/or
an OS with broken barrier support you are doomed.
Stefan
From | Date | Subject | |
---|---|---|---|
Next Message | David E. Wheeler | 2010-12-03 18:18:59 | Re: Extensions |
Previous Message | Heikki Linnakangas | 2010-12-03 17:43:13 | Re: disk caching for writing log |