no reason to die when posixfadvise is not sucessful
[rrdtool.git] / src / rrd_open.c
index 4ee68a6..6a3cf34 100644 (file)
@@ -140,11 +140,7 @@ rrd_file_t *rrd_open(
        When we stop reading, it is highly unlikely that we start up again.
        In this manner we actually save time and diskaccess (and buffer cache).
        Thanks to Dave Plonka for the Idea of using POSIX_FADV_RANDOM here. */
-    if (0 != posix_fadvise(rrd_file->fd, 0, 0, POSIX_FADV_RANDOM)) {
-        rrd_set_error("setting POSIX_FADV_RANDOM on '%s': %s", file_name,
-                      rrd_strerror(errno));
-        goto out_close;
-    }
+    posix_fadvise(rrd_file->fd, 0, 0, POSIX_FADV_RANDOM);
 #endif
 
 /*
@@ -381,6 +377,9 @@ int rrd_close(
     int       ret;
 
 #ifdef HAVE_MMAP
+    ret = msync(rrd_file->file_start, rrd_file->file_len,MS_ASYNC);
+    if (ret != 0)
+        rrd_set_error("msync rrd_file: %s", rrd_strerror(errno));
     ret = munmap(rrd_file->file_start, rrd_file->file_len);
     if (ret != 0)
         rrd_set_error("munmap rrd_file: %s", rrd_strerror(errno));