Teach the OOM handler about uploaded descriptors on a dirauth.
The OOM handler should know to do something with the descriptors that a dirauth has received via upload.
- Show closed items
Activity
-
Newest first Oldest first
-
Show all activity Show comments only Show history only
- Nick Mathewson changed milestone to %Tor: unspecified
changed milestone to %Tor: unspecified
- Author
Trac:
Status: new to accepted
Owner: N/A to nickm Canonicalize dos tag to tor-dos
Trac:
Keywords: dos deleted, tor-dos addedTrac:
Points: medium to 3- Author
Trac:
Parent: N/A to #17293 (moved) Taking ownership for 0.2.9 triage
Trac:
Status: accepted to assigned
Owner: nickm to andrea- Author
Deferring some andrea-assigned items from 0.2.9. Andrea, please move any of these back if you disagree; this is just a first approximation.
Trac:
Keywords: N/A deleted, nickm-deferred-20160905 added
Milestone: Tor: 0.2.9.x-final to Tor: 0.3.0.x-final - Author
Unparenting these from #17293 (moved); holding for future work.
Trac:
Parent: #17293 (moved) to N/A - Author
Trac:
Owner: andrea to nickm - Author
Ug. This is not going to be simple. We don't really want to re-compute the total amount of space allocated in-memory for descriptors every time we check our memory usage... and so we'll want to have it be something that we track as we go along. I think that the only places where we allocate more RAM here are in routerparse.c:
router->cache_info.signed_descriptor_body = tor_malloc(len+1); ... extrainfo->cache_info.signed_descriptor_body = tor_memdup_nulterm(s,end-s); ... cert->cache_info.signed_descriptor_body = tor_malloc(len+1);
And we free them several places in routerlist.c:
src/or/routerlist.c: tor_free(sd->signed_descriptor_body); // sets it to null src/or/routerlist.c: tor_free(router->cache_info.signed_descriptor_body); src/or/routerlist.c: tor_free(extrainfo->cache_info.signed_descriptor_body); src/or/routerlist.c: tor_free(sd->signed_descriptor_body); src/or/routerlist.c: tor_free(sd->signed_descriptor_body); src/or/routerlist.c: tor_free(cert->cache_info.signed_descriptor_body);
but if we miss even one, the value gets out of sync, and we flip out.
I guess maybe we could re-sync once every few minutes?
- Author
Trac:
Milestone: Tor: 0.3.0.x-final to Tor: unspecified
Keywords: N/A deleted, triaged-out-20160116 added - Author
Trac:
Keywords: triaged-out-20160116 deleted, triaged-out-20170116 added - Author
Trac:
Keywords: nickm-deferred-20160905 deleted, N/A added - Author
Trac:
Keywords: triaged-out-20170116 deleted, oom, tor-dirauth added - Author
Trac:
Sponsor: SponsorU-can to SponsorV-can - Author
I am not actually working on these tickets, so they shouldn't be assigned to me.
Trac:
Owner: nickm to N/A - Trac changed time estimate to 24h
changed time estimate to 24h
- Trac moved to tpo/core/tor#18641
moved to tpo/core/tor#18641