[PATCH v2 14/20] insert: fsync after writing tmp file
Flush the tmp file to disk after writing for durability. --- notmuch-insert.c | 4 1 file changed, 4 insertions(+) diff --git a/notmuch-insert.c b/notmuch-insert.c index b7aef95..f09c579 100644 --- a/notmuch-insert.c +++ b/notmuch-insert.c @@ -329,6 +329,10 @@ insert_message (void *ctx, notmuch_database_t *notmuch, int fdin, return FALSE; } ret = copy_fd_data (fdin, fdout); +if (ret && fsync (fdout) != 0) { + fprintf (stderr, "Error: fsync failed: %s\n", strerror (errno)); + ret = FALSE; +} close (fdout); if (ret) { ret = maildir_move_tmp_to_new (tmppath, newpath); -- 1.7.12.1
[PATCH v2 14/20] insert: fsync after writing tmp file
Flush the tmp file to disk after writing for durability. --- notmuch-insert.c | 4 1 file changed, 4 insertions(+) diff --git a/notmuch-insert.c b/notmuch-insert.c index b7aef95..f09c579 100644 --- a/notmuch-insert.c +++ b/notmuch-insert.c @@ -329,6 +329,10 @@ insert_message (void *ctx, notmuch_database_t *notmuch, int fdin, return FALSE; } ret = copy_fd_data (fdin, fdout); +if (ret fsync (fdout) != 0) { + fprintf (stderr, Error: fsync failed: %s\n, strerror (errno)); + ret = FALSE; +} close (fdout); if (ret) { ret = maildir_move_tmp_to_new (tmppath, newpath); -- 1.7.12.1 ___ notmuch mailing list notmuch@notmuchmail.org http://notmuchmail.org/mailman/listinfo/notmuch