mirror of
https://codeberg.org/redict/redict.git
synced 2025-01-23 08:38:27 -05:00
Merge branch 'master' of github.com:antirez/redis
This commit is contained in:
commit
0040fa253f
5
config.h
5
config.h
@ -35,4 +35,9 @@
|
||||
#define HAVE_KQUEUE 1
|
||||
#endif
|
||||
|
||||
/* test for O_DIRECT */
|
||||
#ifdef __linux__
|
||||
#define HAVE_O_DIRECT 1
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
12
redis.c
12
redis.c
@ -54,6 +54,7 @@
|
||||
#include <inttypes.h>
|
||||
#include <arpa/inet.h>
|
||||
#include <sys/stat.h>
|
||||
#define __USE_GNU
|
||||
#include <fcntl.h>
|
||||
#include <sys/time.h>
|
||||
#include <sys/resource.h>
|
||||
@ -1673,7 +1674,16 @@ static void initServer() {
|
||||
acceptHandler, NULL) == AE_ERR) oom("creating file event");
|
||||
|
||||
if (server.appendonly) {
|
||||
server.appendfd = open(server.appendfilename,O_WRONLY|O_APPEND|O_CREAT,0644);
|
||||
int flags = O_WRONLY|O_APPEND|O_CREAT;
|
||||
|
||||
#ifdef HAVE_O_DIRECT
|
||||
if (server.appendfsync == APPENDFSYNC_ALWAYS) {
|
||||
flags |= O_DIRECT;
|
||||
server.appendfsync = APPENDFSYNC_NO;
|
||||
}
|
||||
#endif
|
||||
|
||||
server.appendfd = open(server.appendfilename,flags,0644);
|
||||
if (server.appendfd == -1) {
|
||||
redisLog(REDIS_WARNING, "Can't open the append-only file: %s",
|
||||
strerror(errno));
|
||||
|
Loading…
Reference in New Issue
Block a user