aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2011-05-03 16:29:39 -0400
committerNick Mathewson <nickm@torproject.org>2011-05-03 16:29:39 -0400
commit970715dd8f52a79bbaddfcfa5af1f11608ddacf9 (patch)
treef142e960cb94e858d525b418593045b4956f836e
parent698fa0fc67118bea2ea7720455ebbdee705c8c1a (diff)
downloadtor-970715dd8f52a79bbaddfcfa5af1f11608ddacf9.tar
tor-970715dd8f52a79bbaddfcfa5af1f11608ddacf9.tar.gz
Fix a check for when to rebuild the microdesc cache. (Backport from 0.2.3.
-rw-r--r--changes/bug2230_part25
-rw-r--r--src/or/microdesc.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/changes/bug2230_part2 b/changes/bug2230_part2
new file mode 100644
index 000000000..2664ecc1a
--- /dev/null
+++ b/changes/bug2230_part2
@@ -0,0 +1,5 @@
+ o Minor bugfixes
+ - The microdesc journal is supposed to get rebuilt only if it is
+ at least _half_ the length of the store, not _twice_ the length
+ of the store. Bugfix on 0.2.2.6-alpha; fixes part of bug 2230.
+
diff --git a/src/or/microdesc.c b/src/or/microdesc.c
index 356627700..0ceb134a6 100644
--- a/src/or/microdesc.c
+++ b/src/or/microdesc.c
@@ -208,7 +208,7 @@ microdescs_add_list_to_cache(microdesc_cache_t *cache,
size_t old_content_len =
cache->cache_content ? cache->cache_content->size : 0;
if (cache->journal_len > 16384 + old_content_len &&
- cache->journal_len > old_content_len * 2) {
+ cache->journal_len > old_content_len / 2) {
microdesc_cache_rebuild(cache);
}
}