From 2fd7ef64baf02892a7bebfb57d593afb086145ef Mon Sep 17 00:00:00 2001 From: Tomi Ollila Date: Fri, 15 Nov 2013 00:03:27 +0200 Subject: [PATCH] compact: improve error messages on failures after compaction The error messages written during the steps replacing old database with new now includes relevant paths and strerror. --- lib/database.cc | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/lib/database.cc b/lib/database.cc index d09ad99f..f395061e 100644 --- a/lib/database.cc +++ b/lib/database.cc @@ -942,19 +942,27 @@ notmuch_database_compact (const char *path, } if (rename (xapian_path, backup_path)) { - fprintf (stderr, "Error moving old database out of the way\n"); + fprintf (stderr, "Error moving %s to %s: %s\n", + xapian_path, backup_path, strerror (errno)); ret = NOTMUCH_STATUS_FILE_ERROR; goto DONE; } if (rename (compact_xapian_path, xapian_path)) { - fprintf (stderr, "Error moving compacted database\n"); + fprintf (stderr, "Error moving %s to %s: %s\n", + compact_xapian_path, xapian_path, strerror (errno)); ret = NOTMUCH_STATUS_FILE_ERROR; goto DONE; } - if (! keep_backup) - rmtree (backup_path); + if (! keep_backup) { + if (rmtree (backup_path)) { + fprintf (stderr, "Error removing old database %s: %s\n", + backup_path, strerror (errno)); + ret = NOTMUCH_STATUS_FILE_ERROR; + goto DONE; + } + } DONE: if (notmuch)