diff options
author | David Bremner <bremner@debian.org> | 2012-12-03 08:48:53 -0400 |
---|---|---|
committer | David Bremner <bremner@debian.org> | 2012-12-15 08:17:58 -0400 |
commit | ceaf5ca6c02e494eee5b9b9aa955459b3cd29471 (patch) | |
tree | ca8e9364e36de2d35c1d4e12d0e6d496e2d566fb /performance-test/perf-test-lib.sh | |
parent | 74a883562b3e4593c75fa7625ff5cabab46a6466 (diff) |
perf-test: add caching of xapian database
The caching and uncaching seem to be necessarily manual, as timing the
initial notmuch new is one of our goals with this suite.
Diffstat (limited to 'performance-test/perf-test-lib.sh')
-rw-r--r-- | performance-test/perf-test-lib.sh | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/performance-test/perf-test-lib.sh b/performance-test/perf-test-lib.sh index 53ef96da..564b6884 100644 --- a/performance-test/perf-test-lib.sh +++ b/performance-test/perf-test-lib.sh @@ -35,6 +35,8 @@ then exit 1 fi +DB_CACHE_DIR=${TEST_DIRECTORY}/notmuch.cache.$corpus_size + add_email_corpus () { rm -rf ${MAIL_DIR} @@ -80,8 +82,34 @@ add_email_corpus () fi cp -lr $MAIL_CORPUS $MAIL_DIR + +} + +time_start () { + + add_email_corpus + + print_header + + if [ -d $DB_CACHE_DIR ]; then + cp -r $DB_CACHE_DIR ${MAIL_DIR}/.notmuch + else + time_run 'Initial notmuch new' "notmuch new" + cache_database + fi } +cache_database () { + if [ -d $MAIL_DIR/.notmuch ]; then + cp -r $MAIL_DIR/.notmuch $DB_CACHE_DIR + else + echo "Warning: No database found to cache" + fi +} + +uncache_database () { + rm -rf $DB_CACHE_DIR +} print_header () { printf "[v%4s %6s] Wall(s)\tUsr(s)\tSys(s)\tRes(K)\tIn/Out(512B)\n" \ |