Opened 6 years ago

Last modified 3 years ago

#13484 new task

Do we have edge cases with rend_consider_descriptor_republication()? Can we refactor it to be cleaner?

Reported by: arma Owned by:
Priority: Low Milestone: Tor: unspecified
Component: Core Tor/Tor Version:
Severity: Normal Keywords: tor-hs, prop224
Cc: asn, dgoulet Actual Points:
Parent ID: Points: 3
Reviewer: Sponsor: SponsorR-can


Once a second we run rend_consider_descriptor_republication(), which proceeds if anything called router_dir_info_changed(), e.g. if a relay gets marked newly Running or newly not Running.

At first I thought there were bugs here that made us publish our hidden service descriptor much more often than needed. But I *think* all the logic lines up to only do the publish when we didn't have a microdesc for the relay in question but now we do. But we should see if this is really true.

And even if so, can we refactor this logic to be simpler yet still to retry appropriately if indeed there's a relay we ought to be publishing to? It seems like a lot of overkill for what hopefully will be a rare edge case to begin with. Unless I'm wrong?

Child Tickets

Change History (7)

comment:1 Changed 5 years ago by nickm

Keywords: SponsorR removed
Sponsor: SponsorR

Bulk-replace SponsorR keyword with SponsorR sponsor field in Tor component.

comment:2 Changed 5 years ago by dgoulet

Points: small/medium
Priority: MediumLow
Severity: Normal
Sponsor: SponsorRSponsorR-can

comment:3 Changed 4 years ago by teor

Milestone: Tor: 0.2.???Tor: 0.3.???

Milestone renamed

comment:4 Changed 4 years ago by nickm

Keywords: tor-03-unspecified-201612 added
Milestone: Tor: 0.3.???Tor: unspecified

Finally admitting that 0.3.??? was a euphemism for Tor: unspecified all along.

comment:5 Changed 3 years ago by nickm

Keywords: tor-03-unspecified-201612 removed

Remove an old triaging keyword.

comment:6 Changed 3 years ago by dgoulet

Keywords: prop224 added
Points: small/medium3

comment:7 Changed 3 years ago by nickm

Cc: asn dgoulet added
Note: See TracTickets for help on using tickets.