Output statistics about how long certain file-list events take.
authorWayne Davison <wayned@samba.org>
Tue, 7 Sep 2004 19:56:04 +0000 (19:56 +0000)
committerWayne Davison <wayned@samba.org>
Tue, 7 Sep 2004 19:56:04 +0000 (19:56 +0000)
flist_stats.diff [new file with mode: 0644]

diff --git a/flist_stats.diff b/flist_stats.diff
new file mode 100644 (file)
index 0000000..4b8df07
--- /dev/null
@@ -0,0 +1,53 @@
+--- orig/flist.c       2004-08-12 18:34:38
++++ flist.c    2004-09-03 14:17:31
+@@ -1056,6 +1056,7 @@ struct file_list *send_file_list(int f, 
+               start_filelist_progress("building file list");
+       start_write = stats.total_written;
++      stats.flist_buildtime = time(NULL);
+       flist = flist_new(f == -1 ? WITHOUT_HLINK : WITH_HLINK,
+           "send_file_list");
+@@ -1202,6 +1203,9 @@ struct file_list *send_file_list(int f, 
+               }
+       }
++      stats.flist_buildtime = time(NULL) - stats.flist_buildtime;
++      stats.flist_xfertime = time(NULL);
++
+       if (f != -1) {
+               send_file_entry(NULL, f, 0);
+@@ -1209,6 +1213,8 @@ struct file_list *send_file_list(int f, 
+                       finish_filelist_progress(flist);
+       }
++      stats.flist_xfertime = time(NULL) - stats.flist_xfertime;
++
+       if (flist->hlink_pool) {
+               pool_destroy(flist->hlink_pool);
+               flist->hlink_pool = NULL;
+--- orig/main.c        2004-08-05 18:24:21
++++ main.c     2004-09-03 14:18:47
+@@ -178,6 +178,10 @@ static void report(int f)
+               rprintf(FINFO,"Matched data: %.0f bytes\n",
+                       (double)stats.matched_data);
+               rprintf(FINFO,"File list size: %d\n", stats.flist_size);
++              rprintf(FINFO,"File list generation: %lu seconds\n",
++                      stats.flist_buildtime);
++              rprintf(FINFO,"File list transfer time: %lu seconds\n",
++                      stats.flist_xfertime);
+               rprintf(FINFO,"Total bytes sent: %.0f\n",
+                       (double)total_written);
+               rprintf(FINFO,"Total bytes received: %.0f\n",
+--- orig/rsync.h       2004-08-03 15:41:32
++++ rsync.h    2004-09-03 14:05:13
+@@ -520,6 +520,8 @@ struct stats {
+       int64 literal_data;
+       int64 matched_data;
+       int flist_size;
++      time_t flist_buildtime;
++      time_t flist_xfertime;
+       int num_files;
+       int num_transferred_files;
+       int current_file_index;