[tor-bugs] #14011 [Stem]: Implement lazy parsing for zoossh (and maybe Stem)

Tor Bug Tracker & Wiki blackhole at torproject.org
Sun Dec 21 21:41:05 UTC 2014


#14011: Implement lazy parsing for zoossh (and maybe Stem)
-----------------------------+--------------------------------
     Reporter:  phw          |      Owner:  phw
         Type:  enhancement  |     Status:  new
     Priority:  major        |  Milestone:
    Component:  Stem         |    Version:
   Resolution:               |   Keywords:  descriptor, zoossh
Actual Points:               |  Parent ID:
       Points:               |
-----------------------------+--------------------------------
Changes (by atagar):

 * keywords:  zoossh, parsing => descriptor, zoossh
 * priority:  normal => major


Comment:

 > This might not be an awful lot of work for zoossh, so it might be worth
 implementing it.

 Up to you of course regarding zoossh. Personally I can't say I'm thrilled
 about a third descriptor parser. Much of my work in the metrics space
 (such as replacing the java implementation of DocTor) has been so we can
 eventually deprecate metrics-lib. Dropping the java descriptor parser
 would mean one fewer things for Karsten to maintain. Descriptor parsing is
 a moving target, and hence requires a small amount of continual upkeep.

 For Stem I don't think this would be a terribly hard project. It would
 just be a lot of refactoring. If I didn't have a day job I'd guess around
 a month, but as-is it would probably take me around a month per descriptor
 type.

 Best approach for this would be to take a descriptor type (say, server
 descriptors) and try it out. Rather than the massive parse loop we
 presently have parsing behaviour would be moved to a series of getter
 methods with an @lru_cache() annotation.

 Not hard, just time consuming. :)

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/14011#comment:1>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list