chiark / gitweb /
svc/watch.in: Add some debugging output to the `rescan' function.
authorMark Wooding <mdw@distorted.org.uk>
Mon, 23 Apr 2012 16:45:48 +0000 (17:45 +0100)
committerMark Wooding <mdw@distorted.org.uk>
Mon, 23 Apr 2012 17:38:43 +0000 (18:38 +0100)
Slightly easier to keep track of what's going on.

svc/watch.in

index e058ed8..97a12bf 100644 (file)
@@ -525,6 +525,7 @@ class Pinger (T.Coroutine):
     installed, and again by the dbwatcher coroutine when it detects a change
     to the database.
     """
+    if T._debug: print '# rescan peers'
     correct = {}
     for peer in S.list():
       try:
@@ -532,19 +533,23 @@ class Pinger (T.Coroutine):
       except KeyError:
         continue
       if boolean(info, 'watch', False):
+        if T._debug: print '# interesting peer %s' % peer
         correct[peer] = info
     for peer, obj in me._peers.items():
       if peer in correct:
         obj.update(correct[peer])
       else:
+        if T._debug: print '# peer %s vanished' % peer
         del me._peers[peer]
     for peer, info in correct.iteritems():
       if peer not in me._peers:
         if startup:
+          if T._debug: print '# setting up peer %s' % peer
           ifname = S.ifname(peer)
           addr = S.addr(peer)
           T.defer(addpeer, info, peer, ifname, *addr)
         else:
+          if T._debug: print '# adopting new peer %s' % peer
           me.add(peer, info, True)
     return me