Re: WAL and O_DIRECT - Mailing list pgsql-admin

From Ravi Krishna
Subject Re: WAL and O_DIRECT
Date
Msg-id 14d530df35f-2108-30ce7@webstg-m03.mail.aol.com
Whole thread Raw
In response to Re: WAL and O_DIRECT  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: WAL and O_DIRECT  (Bruce Momjian <bruce@momjian.us>)
Re: WAL and O_DIRECT  (Tom Lane <tgl@sss.pgh.pa.us>)
List 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@sss.pgh.pa.us>
To: Ravi Krishna <s.ravikrishna@aim.com>
Cc: pgsql-admin <pgsql-admin@postgresql.org>
Sent: Thu, May 14, 2015 11:11 am
Subject: Re: [ADMIN] WAL and O_DIRECT

Ravi Krishna <s.ravikrishna@aim.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

pgsql-admin by date:

Previous
From: Tom Lane
Date:
Subject: Re: WAL and O_DIRECT
Next
From: Bruce Momjian
Date:
Subject: Re: WAL and O_DIRECT