diff --git a/pisa/chain_monitor.py b/pisa/chain_monitor.py index 74b21f1..4442488 100644 --- a/pisa/chain_monitor.py +++ b/pisa/chain_monitor.py @@ -1,6 +1,5 @@ import zmq import binascii -from queue import Queue from threading import Thread, Event, Condition from common.logger import Logger @@ -26,8 +25,8 @@ class ChainMonitor: self.zmqSubSocket.connect("%s://%s:%s" % (FEED_PROTOCOL, FEED_ADDR, FEED_PORT)) self.watcher_queue = None - self.watcher_asleep = True self.responder_queue = None + self.watcher_asleep = True self.responder_asleep = True def attach_watcher(self, queue, awake): diff --git a/pisa/pisad.py b/pisa/pisad.py index ed185c6..4935d40 100644 --- a/pisa/pisad.py +++ b/pisa/pisad.py @@ -71,7 +71,6 @@ if __name__ == "__main__": last_block_responder = db_manager.load_last_block_hash_responder() # FIXME: 32-reorgs-offline dropped txs are not used at this point. - responder = Responder(db_manager, chain_monitor) last_common_ancestor_responder = None missed_blocks_responder = None @@ -82,13 +81,13 @@ if __name__ == "__main__": ) missed_blocks_responder = block_processor.get_missed_blocks(last_common_ancestor_responder) - responder.trackers, responder.tx_tracker_map = Builder.build_trackers(responder_trackers_data) - responder.block_queue = Builder.build_block_queue(missed_blocks_responder) + watcher.responder.trackers, watcher.responder.tx_tracker_map = Builder.build_trackers( + responder_trackers_data + ) + watcher.responder.block_queue = Builder.build_block_queue(missed_blocks_responder) - # Build Watcher with Responder and backed up data. If the blocks of both match we don't perform the - # search twice. - watcher.responder = responder - chain_monitor.attach_responder(responder.block_queue, responder.asleep) + # Build Watcher. If the blocks of both match we don't perform the search twice. + chain_monitor.attach_responder(watcher.responder.block_queue, watcher.responder.asleep) if last_block_watcher is not None: if last_block_watcher == last_block_responder: diff --git a/pisa/watcher.py b/pisa/watcher.py index d6e0729..1da5c75 100644 --- a/pisa/watcher.py +++ b/pisa/watcher.py @@ -68,7 +68,7 @@ class Watcher: self.signing_key = Cryptographer.load_private_key_der(sk_der) if not isinstance(responder, Responder): - self.responder = Responder(db_manager) + self.responder = Responder(db_manager, chain_monitor) @staticmethod def compute_locator(tx_id):