Commit 5bfb4221 authored by Nick Mathewson's avatar Nick Mathewson 🎨
Browse files

r15934@catbus: nickm | 2007-10-18 15:32:56 -0400

 When we have plenty of directory information, don't try to launch descriptor downloads quite so eagerly.


svn:r12033
parent 0e0ca970
......@@ -19,6 +19,8 @@ Changes in version 0.2.0.9-alpha - 2007-10-??
o Minor features (performance):
- Call routerlist_remove_old_routers() much less often. This should
speed startup, especially on directory caches.
- Don't try to launch descriptor downloads quite so often when we
have enough directory information.
o Minor bugfixes (directory authorities):
- Correct the implementation of "download votes by digest." Bugfix on
......
......@@ -98,8 +98,12 @@ int has_completed_circuit=0;
/** How often do we check buffers and pools for empty space that can be
* deallocated? */
#define MEM_SHRINK_INTERVAL (60)
/** How often do we check for router descriptors that we should download? */
#define DESCRIPTOR_RETRY_INTERVAL (10)
/** How often do we check for router descriptors that we should download
* when we have too little directory info? */
#define GREEDY_DESCRIPTOR_RETRY_INTERVAL (10)
/** How often do we check for router descriptors that we should download
* when we have enough directory info? */
#define LAZY_DESCRIPTOR_RETRY_INTERVAL (60)
/** How often do we 'forgive' undownloadable router descriptors and attempt
* to download them again? */
#define DESCRIPTOR_FAILURE_RESET_INTERVAL (60*60)
......@@ -859,13 +863,14 @@ run_scheduled_events(time_t now)
}
if (time_to_try_getting_descriptors < now) {
/* XXXX Maybe we should do this every 10sec when not enough info,
* and every 60sec when we have enough info -NM Great idea -RD */
update_router_descriptor_downloads(now);
update_extrainfo_downloads(now);
if (options->UseBridges)
fetch_bridge_descriptors(now);
time_to_try_getting_descriptors = now + DESCRIPTOR_RETRY_INTERVAL;
if (router_have_minimum_dir_info())
time_to_try_getting_descriptors = now + LAZY_DESCRIPTOR_RETRY_INTERVAL;
else
time_to_try_getting_descriptors = now + GREEDY_DESCRIPTOR_RETRY_INTERVAL;
}
if (time_to_reset_descriptor_failures < now) {
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment