Fix compile for no O_SYNC, but introduced with O_DIRECT.

This commit is contained in:
Bruce Momjian 2005-07-30 14:15:44 +00:00
parent 90524998c0
commit 5b0bfec414
1 changed files with 9 additions and 8 deletions

View File

@ -7,7 +7,7 @@
* Portions Copyright (c) 1996-2005, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
* $PostgreSQL: pgsql/src/backend/access/transam/xlog.c,v 1.213 2005/07/29 19:29:59 tgl Exp $
* $PostgreSQL: pgsql/src/backend/access/transam/xlog.c,v 1.214 2005/07/30 14:15:44 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@ -69,17 +69,18 @@
* default method. We assume that fsync() is always available, and that
* configure determined whether fdatasync() is.
*/
#if defined(O_SYNC)
#ifdef O_SYNC
#define CMP_OPEN_SYNC_FLAG O_SYNC
#else
#if defined(O_FSYNC)
#elif defined(O_FSYNC)
#define CMP_OPEN_SYNC_FLAG O_FSYNC
#endif
#endif
#ifdef CMP_OPEN_SYNC_FLAG
#define OPEN_SYNC_FLAG (CMP_OPEN_SYNC_FLAG | PG_O_DIRECT)
#endif
#if defined(O_DSYNC)
#if defined(OPEN_SYNC_FLAG)
#ifdef O_DSYNC
#ifdef OPEN_SYNC_FLAG
/* O_DSYNC is distinct? */
#if O_DSYNC != CMP_OPEN_SYNC_FLAG
#define OPEN_DATASYNC_FLAG (O_DSYNC | PG_O_DIRECT)
#endif
@ -114,7 +115,7 @@
#define XLOG_BUFFER_POINTERALIGN(PTR) \
POINTERALIGN((ALIGNOF_XLOG_BUFFER), (PTR))
#if defined(OPEN_DATASYNC_FLAG)
#ifdef OPEN_DATASYNC_FLAG
#define DEFAULT_SYNC_METHOD_STR "open_datasync"
#define DEFAULT_SYNC_METHOD SYNC_METHOD_OPEN
#define DEFAULT_SYNC_FLAGBIT OPEN_DATASYNC_FLAG