Use fdatasync() only on linux, unless -Dfdatasync=fdatasync is set at

compilation time. (CVS 6383)

FossilOrigin-Name: cbf2ca4cc41f1f710635b863db6e98074bd5e8bc
This commit is contained in:
drh 2009-03-25 01:06:01 +00:00
parent 72bcfa6eeb
commit 892404323f
3 changed files with 13 additions and 11 deletions

View File

@ -1,5 +1,5 @@
C Change\sOS_UNIX\sto\sSQLITE_OS_UNIX\sin\stest_thread.c.\s\sModify\snotify2.test\sto\nprint\sout\sits\stimings\sin\saddition\sto\sreporting\ssuccess\sor\sfailure.\s(CVS\s6382)
D 2009-03-24T18:42:16
C Use\sfdatasync()\sonly\son\slinux,\sunless\s-Dfdatasync=fdatasync\sis\sset\sat\ncompilation\stime.\s(CVS\s6383)
D 2009-03-25T01:06:02
F Makefile.arm-wince-mingw32ce-gcc fcd5e9cd67fe88836360bb4f9ef4cb7f8e2fb5a0
F Makefile.in 583e87706abc3026960ed759aff6371faf84c211
F Makefile.linux-gcc d53183f4aa6a9192d249731c90dbdffbd2c68654
@ -141,7 +141,7 @@ F src/os.c ed93a6b46132a602c4fd7a58142e2981c829c79d
F src/os.h fa3f4aa0119ff721a2da4b47ffd74406ac864c05
F src/os_common.h 8c61457df58f1a4bd5f5adc3e90e01b37bf7afbc
F src/os_os2.c bed77dc26e3a95ce4a204936b9a1ca6fe612fcc5
F src/os_unix.c a20fe61c025117452c003ae4cafd05c3e610b616
F src/os_unix.c 7bf3ebde13154a97f797df1551d19cf0d2785c15
F src/os_win.c 40636702058ed4dcd35d68151bfab56d4997cdc1
F src/pager.c da7ffd068347cdc88b477875585d53dcf2bdc4a7
F src/pager.h 0c9f3520c00d8a3b8e792ca56c9a11b6b02b4b0f
@ -709,7 +709,7 @@ F tool/speedtest16.c c8a9c793df96db7e4933f0852abb7a03d48f2e81
F tool/speedtest2.tcl ee2149167303ba8e95af97873c575c3e0fab58ff
F tool/speedtest8.c 2902c46588c40b55661e471d7a86e4dd71a18224
F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e
P f398a2d1b0a731bbb600d0bb70ab79f1334ceda9
R e985bb02f394f55006cd15c1b29cea14
P 940d72d2bae95ddd1aea9b63424179735f440296
R b19c5ed41e19ad8042490824f83b5b77
U drh
Z cd8d35f0858a96c51f531491feb53bc1
Z 6e13e4e2fd0eec7485fb0fffc49dff79

View File

@ -1 +1 @@
940d72d2bae95ddd1aea9b63424179735f440296
cbf2ca4cc41f1f710635b863db6e98074bd5e8bc

View File

@ -43,7 +43,7 @@
** * Definitions of sqlite3_vfs objects for all locking methods
** plus implementations of sqlite3_os_init() and sqlite3_os_end().
**
** $Id: os_unix.c,v 1.244 2009/03/21 14:56:52 drh Exp $
** $Id: os_unix.c,v 1.245 2009/03/25 01:06:02 drh Exp $
*/
#include "sqliteInt.h"
#if SQLITE_OS_UNIX /* This file is used on unix only */
@ -2824,10 +2824,12 @@ int sqlite3_fullsync_count = 0;
#endif
/*
** We assume that most systems these days support fdatasync(). Those
** machines that do not can define -Dfdatasync=fsync.
** We do not trust systems to provide a working fdatasync(). Some do.
** Others do no. To be safe, we will stick with the (slower) fsync().
** If you know that your system does support fdatasync() correctly,
** then simply compile with -Dfdatasync=fdatasync
*/
#if 0
#if !defined(fdatasync) && !defined(__linux__)
# define fdatasync fsync
#endif