Re: WAL and O_DIRECT

From: Ravi Krishna <s(dot)ravikrishna(at)aim(dot)com>
To: tgl(at)sss(dot)pgh(dot)pa(dot)us
Cc: pgsql-admin(at)postgresql(dot)org
Subject: Re: WAL and O_DIRECT
Date: 2015-05-14 15:32:12
Message-ID: 14d530df35f-2108-30ce7@webstg-m03.mail.aol.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-admin

Aha that pretty much explains it. Yes we are using streaming replication.

However our DB2 folks are raising a concern that PG WAL writes may not be crash safe, unless we are using write back technology in SAN or SSD , which we are using.

-----Original Message-----
From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Ravi Krishna <s(dot)ravikrishna(at)aim(dot)com>
Cc: pgsql-admin <pgsql-admin(at)postgresql(dot)org>
Sent: Thu, May 14, 2015 11:11 am
Subject: Re: [ADMIN] WAL and O_DIRECT

Ravi Krishna <s(dot)ravikrishna(at)aim(dot)com> writes:
> Why is O_DIRECT not used,
despite the documentation mentioning otherwise?

You've not shown us all your
settings, but this comment in xlog.c might
explain it:

* Optimize
writes by bypassing kernel cache with O_DIRECT when using
* O_SYNC/O_FSYNC
and O_DSYNC. But only if archiving and streaming are
* disabled,
otherwise the archive command or walsender process will read
* the WAL
soon after writing it, which is guaranteed to cause a physical
* read if
we bypassed the kernel cache. We also skip the
*
posix_fadvise(POSIX_FADV_DONTNEED) call in XLogFileClose() for the same
*
reason.

regards, tom lane


In response to

Responses

Browse pgsql-admin by date

  From Date Subject
Next Message Bruce Momjian 2015-05-14 15:53:38 Re: WAL and O_DIRECT
Previous Message Tom Lane 2015-05-14 15:11:32 Re: WAL and O_DIRECT