#25821: Stem getconf cache doesn't clear for CONF_CHANGED events; probably should set value ---------------------------+------------------------ Reporter: dmr | Owner: atagar Type: defect | Status: new Priority: Medium | Milestone: Component: Core Tor/Stem | Version: Severity: Normal | Resolution: Keywords: | Actual Points: Parent ID: | Points: Reviewer: | Sponsor: ---------------------------+------------------------
Comment (by dmr): So I propose that stem changes its cache behavior to //set// the `'getconf'` cache //only// within `_confchanged_listener()`, to the value(s) provided by the event. It seems superfluous to do it within `set_options()` if it's going to be set soon after. However, one advantage I could see to setting the cache in `set_options()` is so that code like this would work intuitively without issuing a GETCONF again: {{{ #!python SETCONF ContactInfo=me def some_actions_together(): global controller contact_1 = controller.get_conf('ContactInfo') controller.set_conf('ContactInfo', 'someone else') contact_2 = controller.get_conf('ContactInfo') print(contact_2) some_actions_together() }}} But code like this //currently doesn't// work intuitively because `load_conf()` doesn't have the configuration values [[https://gitweb.torproject.org/torspec.git/tree/control- spec.txt?id=d4a64fbf5aaba383638d9f3c70bd2951f8c5ad89#n1365|specified in its response]]: {{{ #!python SETCONF ContactInfo=me def some_actions_together(): global controller contact_1 = controller.get_conf('ContactInfo') new_config = controller.get_info('config-text').replace("ContactInfo me", "ContactInfo someone else") controller.load_conf(new_config) contact_2 = controller.get_conf('ContactInfo') some_actions_together() }}} (that could be improved if `load_conf()` clears the `'getconf'` cache.) No matter what we pick, I think there's potential for race conditions in complex scenarios... atagar: thoughts? -- Ticket URL: <https://trac.torproject.org/projects/tor/ticket/25821#comment:2> Tor Bug Tracker & Wiki <https://trac.torproject.org/> The Tor Project: anonymity online
_______________________________________________ tor-bugs mailing list tor-bugs@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-bugs