Add another 8387 diagnostic

When we run into bug 8387 (if we run into it again), report when we
last called circuit_expire_old_circuits_clientside().  This will let
us know -- if my fix for 8387 doesn't work -- whether my diagnosis
was at least correct.

Suggested by Andrea.
This commit is contained in:
Nick Mathewson 2014-07-16 10:05:00 +02:00
parent 856114ab1c
commit 32495ee309
1 changed files with 9 additions and 0 deletions

View File

@ -783,6 +783,10 @@ circuit_expire_building(void)
}
}
/** For debugging #8387: track when we last called
* circuit_expire_old_circuits_clientside. */
static time_t last_expired_clientside_circuits = 0;
/**
* As a diagnostic for bug 8387, log information about how many one-hop
* circuits we have around that have been there for at least <b>age</b>
@ -894,6 +898,10 @@ circuit_log_ancient_one_hop_circuits(int age)
}
} SMARTLIST_FOREACH_END(ocirc);
log_notice(LD_HEARTBEAT, "It has been %ld seconds since I last called "
"circuit_expire_old_circuits_clientside().",
(long)(now - last_expired_clientside_circuits));
done:
smartlist_free(log_these);
}
@ -1220,6 +1228,7 @@ circuit_expire_old_circuits_clientside(void)
tor_gettimeofday(&now);
cutoff = now;
last_expired_clientside_circuits = now.tv_sec;
if (! circuit_build_times_disabled() &&
circuit_build_times_needs_circuits(get_circuit_build_times())) {