diff options
author | Rob Austein <sra@hactrn.net> | 2012-08-19 17:10:38 +0000 |
---|---|---|
committer | Rob Austein <sra@hactrn.net> | 2012-08-19 17:10:38 +0000 |
commit | 96dce20631fe89bd9e65949be67739d2d75b5441 (patch) | |
tree | 54b3eb611508fc4e8f4258f18147abad5c994335 | |
parent | 01bc52850438c23b31347440825dedfcd125bfbb (diff) |
Cleanup
svn path=/branches/tk274/; revision=4643
-rw-r--r-- | rpkid/rpki/adns.py | 2 | ||||
-rw-r--r-- | rpkid/rpki/async.py | 27 | ||||
-rw-r--r-- | rpkid/rpki/http.py | 2 | ||||
-rw-r--r-- | rpkid/rpki/rpkid.py | 2 | ||||
-rw-r--r-- | rpkid/rpki/rpkid_tasks.py | 14 |
5 files changed, 26 insertions, 21 deletions
diff --git a/rpkid/rpki/adns.py b/rpkid/rpki/adns.py index a9d04c2a..efee897f 100644 --- a/rpkid/rpki/adns.py +++ b/rpkid/rpki/adns.py @@ -134,7 +134,7 @@ class query(object): self.qtype = qtype self.qclass = qclass self.start = time.time() - rpki.async.defer(self.go) + rpki.async.event_defer(self.go) def go(self): """ diff --git a/rpkid/rpki/async.py b/rpkid/rpki/async.py index 7563f589..ecea3bbd 100644 --- a/rpkid/rpki/async.py +++ b/rpkid/rpki/async.py @@ -72,7 +72,7 @@ class iterator(object): def __call__(self): if self.unwind_stack: - defer(self.doit) + event_defer(self.doit) else: self.doit() @@ -95,7 +95,7 @@ class iterator(object): self.done_callback() -## @var queue +## @var timer_queue # Timer queue. timer_queue = [] @@ -274,17 +274,17 @@ def exit_event_loop(): """ raise ExitNow -def event_yield(handler, delay = rpki.sundial.timedelta(seconds = 0)): +def event_defer(handler, delay = rpki.sundial.timedelta(seconds = 0)): """ - Use a near-term timer to schedule an event after letting the timer - and I/O systems run. + Use a near-term (default: zero interval) timer to schedule an event + to run after letting the I/O system have a turn. """ - t = timer(handler) - t.set(delay) + timer(handler).set(delay) -# Backwards compatability -- clean this up if the change works +## @var debug_event_timing +# Enable insanely verbose logging of event timing -defer = event_yield +debug_event_timing = False def event_loop(catch_signals = (signal.SIGINT, signal.SIGTERM)): """ @@ -300,7 +300,8 @@ def event_loop(catch_signals = (signal.SIGINT, signal.SIGTERM)): old_signal_handlers[sig] = old while asyncore.socket_map or timer_queue: t = timer.seconds_until_wakeup() - rpki.log.debug("Dismissing to asyncore.poll(), t = %s, q = %r" % (t, timer_queue)) + if debug_event_timing: + rpki.log.debug("Dismissing to asyncore.poll(), t = %s, q = %r" % (t, timer_queue)) asyncore.poll(t, asyncore.socket_map) timer.runq() if timer.gc_debug: @@ -368,10 +369,6 @@ class sync_wrapper(object): def __call__(self, *args, **kwargs): def thunk(): - """ - Deferred action to call the wrapped code once event system is - running. - """ try: self.func(self.cb, self.eb, *args, **kwargs) except ExitNow: @@ -379,7 +376,7 @@ class sync_wrapper(object): except Exception, e: self.eb(e) - defer(thunk) + event_defer(thunk) event_loop() if self.err is None: return self.res diff --git a/rpkid/rpki/http.py b/rpkid/rpki/http.py index 244a9305..6e932d26 100644 --- a/rpkid/rpki/http.py +++ b/rpkid/rpki/http.py @@ -985,7 +985,7 @@ def client(msg, url, callback, errback): if debug_http: rpki.log.debug("Scheduling connection startup for %r" % request) - rpki.async.defer(client_queues[hostport].restart) + rpki.async.event_defer(client_queues[hostport].restart) def server(handlers, port, host = ""): """ diff --git a/rpkid/rpki/rpkid.py b/rpkid/rpki/rpkid.py index 962bedaa..fa20c01e 100644 --- a/rpkid/rpki/rpkid.py +++ b/rpkid/rpki/rpkid.py @@ -350,7 +350,7 @@ class main(object): self.task_current = None else: rpki.log.debug("Pulled %r from task queue" % self.task_current) - rpki.async.defer(self.task_current) + rpki.async.event_defer(self.task_current) def task_run(self): """ diff --git a/rpkid/rpki/rpkid_tasks.py b/rpkid/rpki/rpkid_tasks.py index 0960cc14..facf5ad2 100644 --- a/rpkid/rpki/rpkid_tasks.py +++ b/rpkid/rpki/rpkid_tasks.py @@ -42,12 +42,18 @@ class CompletionHandler(object): the last of them terminates. """ + ## @var debug + # Debug logging. + + debug = False + def __init__(self, cb): self.cb = cb self.tasks = set() def register(self, task): - rpki.log.debug("Completion handler %r registering task %r" % (self, task)) + if self.debug: + rpki.log.debug("Completion handler %r registering task %r" % (self, task)) self.tasks.add(task) task.register_completion(self.done) @@ -57,9 +63,11 @@ class CompletionHandler(object): except KeyError: rpki.log.warn("Completion handler %r called with unregistered task %r, blundering onwards" % (self, task)) else: - rpki.log.debug("Completion handler %r called with registered task %r" % (self, task)) + if self.debug: + rpki.log.debug("Completion handler %r called with registered task %r" % (self, task)) if not self.tasks: - rpki.log.debug("Completion handler %r finished, calling %r" % (self, self.cb)) + if self.debug: + rpki.log.debug("Completion handler %r finished, calling %r" % (self, self.cb)) self.cb() @property |