From: Bruce Momjian Date: Sat, 23 Jul 2005 15:29:47 +0000 (+0000) Subject: Macro alignment cleanup. X-Git-Url: http://waps.l3s.uni-hannover.de/gitweb/?a=commitdiff_plain;h=654057019ffef65c63f5960b2b6c268eac50385a;p=users%2Fbernd%2Fpostgres.git Macro alignment cleanup. --- diff --git a/src/backend/access/transam/xlog.c b/src/backend/access/transam/xlog.c index 0d67c2eb3d..af91883e76 100644 --- a/src/backend/access/transam/xlog.c +++ b/src/backend/access/transam/xlog.c @@ -47,6 +47,15 @@ #include "utils/relcache.h" +/* + * Becauase O_DIRECT bypasses the kernel buffers, and because we never + * read those buffers except during crash recovery, it seems like + * a win to use it in all cases. + */ +#ifdef O_DIRECT +#define PG_O_DIRECT O_DIR(enableFsync ? (open_sync_bit | O_DIRECT) : 0) +#else + /* * This chunk of hackery attempts to determine which file sync methods * are available on the current platform, and to choose an appropriate @@ -54,40 +63,40 @@ * configure determined whether fdatasync() is. */ #if defined(O_SYNC) -#define OPEN_SYNC_FLAG O_SYNC +#define OPEN_SYNC_FLAG O_SYNC #else #if defined(O_FSYNC) -#define OPEN_SYNC_FLAG O_FSYNC +#define OPEN_SYNC_FLAG O_FSYNC #endif #endif #if defined(O_DSYNC) #if defined(OPEN_SYNC_FLAG) #if O_DSYNC != OPEN_SYNC_FLAG -#define OPEN_DATASYNC_FLAG O_DSYNC +#define OPEN_DATASYNC_FLAG O_DSYNC #endif #else /* !defined(OPEN_SYNC_FLAG) */ /* Win32 only has O_DSYNC */ -#define OPEN_DATASYNC_FLAG O_DSYNC +#define OPEN_DATASYNC_FLAG O_DSYNC #endif #endif #if defined(OPEN_DATASYNC_FLAG) -#define DEFAULT_SYNC_METHOD_STR "open_datasync" -#define DEFAULT_SYNC_METHOD SYNC_METHOD_OPEN -#define DEFAULT_SYNC_FLAGBIT OPEN_DATASYNC_FLAG +#define DEFAULT_SYNC_METHOD_STR "open_datasync" +#define DEFAULT_SYNC_METHOD SYNC_METHOD_OPEN +#define DEFAULT_SYNC_FLAGBIT OPEN_DATASYNC_FLAG #elif defined(HAVE_FDATASYNC) -#define DEFAULT_SYNC_METHOD_STR "fdatasync" -#define DEFAULT_SYNC_METHOD SYNC_METHOD_FDATASYNC -#define DEFAULT_SYNC_FLAGBIT 0 +#define DEFAULT_SYNC_METHOD_STR "fdatasync" +#define DEFAULT_SYNC_METHOD SYNC_METHOD_FDATASYNC +#define DEFAULT_SYNC_FLAGBIT 0 #elif !defined(HAVE_FSYNC_WRITETHROUGH_ONLY) -#define DEFAULT_SYNC_METHOD_STR "fsync" -#define DEFAULT_SYNC_METHOD SYNC_METHOD_FSYNC -#define DEFAULT_SYNC_FLAGBIT 0 +#define DEFAULT_SYNC_METHOD_STR "fsync" +#define DEFAULT_SYNC_METHOD SYNC_METHOD_FSYNC +#define DEFAULT_SYNC_FLAGBIT 0 #else -#define DEFAULT_SYNC_METHOD_STR "fsync_writethrough" -#define DEFAULT_SYNC_METHOD SYNC_METHOD_FSYNC_WRITETHROUGH -#define DEFAULT_SYNC_FLAGBIT 0 +#define DEFAULT_SYNC_METHOD_STR "fsync_writethrough" +#define DEFAULT_SYNC_METHOD SYNC_METHOD_FSYNC_WRITETHROUGH +#define DEFAULT_SYNC_FLAGBIT 0 #endif