From d33b5fc4c2d7c039a28b92814903acd61999497e Mon Sep 17 00:00:00 2001 From: ThomasV Date: Sat, 27 Oct 2012 12:39:53 +0400 Subject: [PATCH] fix sql request in get_merkle --- backends/abe/__init__.py | 9 +++++++-- transports/stratum_tcp.py | 1 - 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/backends/abe/__init__.py b/backends/abe/__init__.py index 2e4e806..91435fd 100644 --- a/backends/abe/__init__.py +++ b/backends/abe/__init__.py @@ -470,7 +470,9 @@ class AbeStore(Datastore_class): JOIN block_tx on tx.tx_id = block_tx.tx_id JOIN chain_summary on chain_summary.block_id = block_tx.block_id WHERE tx_hash='%s' AND in_longest = 1"""%tx_hash) - block_id = out[0] + + if not out: raise BaseException("not in a block") + block_id = int(out[0][0]) # get block height out = self.safe_sql("SELECT block_height FROM chain_summary WHERE block_id = %d AND in_longest = 1"%block_id) @@ -691,7 +693,9 @@ class BlockchainProcessor(Processor): def run_store_iteration(self): try: + t1 = time.time() block_header = self.store.main_iteration() + t2 = time.time() - t1 except: traceback.print_exc(file=sys.stdout) print "terminating" @@ -703,13 +707,14 @@ class BlockchainProcessor(Processor): if self.block_number != block_header.get('block_height'): self.block_number = block_header.get('block_height') - print "block number:", self.block_number + print "block number: %d (%.3f seconds)"%(self.block_number, t2) self.push_response({ 'id': None, 'method':'blockchain.numblocks.subscribe', 'params':[self.block_number] }) if self.block_header != block_header: self.block_header = block_header self.push_response({ 'id': None, 'method':'blockchain.headers.subscribe', 'params':[self.block_header] }) + while True: try: addr = self.store.address_queue.get(False) diff --git a/transports/stratum_tcp.py b/transports/stratum_tcp.py index 0aebc0f..e1ebcd1 100644 --- a/transports/stratum_tcp.py +++ b/transports/stratum_tcp.py @@ -10,7 +10,6 @@ class TcpSession(Session): def __init__(self, connection, address, use_ssl, ssl_certfile, ssl_keyfile): Session.__init__(self) - print connection, address, use_ssl if use_ssl: import ssl self._connection = ssl.wrap_socket( -- 1.7.1