From 3c4574f11f3e637eec4162141c7106773f97db4f Mon Sep 17 00:00:00 2001 From: Jack Robison Date: Fri, 1 Nov 2019 13:32:13 -0400 Subject: [PATCH] remove logger from reader context --- lbry/lbry/wallet/server/db/reader.py | 8 ++------ lbry/lbry/wallet/server/session.py | 2 +- lbry/scripts/claim_search_performance.py | 2 +- lbry/scripts/sqlite_perf_test.py | 2 +- lbry/tests/unit/wallet/server/test_sqldb.py | 2 +- 5 files changed, 6 insertions(+), 10 deletions(-) diff --git a/lbry/lbry/wallet/server/db/reader.py b/lbry/lbry/wallet/server/db/reader.py index 6b086b377..00f9274cb 100644 --- a/lbry/lbry/wallet/server/db/reader.py +++ b/lbry/lbry/wallet/server/db/reader.py @@ -1,7 +1,6 @@ import time import struct import sqlite3 -import logging from operator import itemgetter from typing import Tuple, List, Dict, Union, Type, Optional from binascii import unhexlify @@ -74,7 +73,6 @@ class ReaderState: is_tracking_metrics: bool ledger: Type[BaseLedger] query_timeout: float - log: logging.Logger def close(self): self.db.close() @@ -97,14 +95,14 @@ class ReaderState: ctx: ContextVar[Optional[ReaderState]] = ContextVar('ctx') -def initializer(log, _path, _ledger_name, query_timeout, _measure=False): +def initializer(_path, _ledger_name, query_timeout, _measure=False): db = sqlite3.connect(_path, isolation_level=None, uri=True) db.row_factory = sqlite3.Row ctx.set( ReaderState( db=db, stack=[], metrics={}, is_tracking_metrics=_measure, ledger=MainNetLedger if _ledger_name == 'mainnet' else RegTestLedger, - query_timeout=query_timeout, log=log + query_timeout=query_timeout ) ) @@ -172,9 +170,7 @@ def execute_query(sql, values) -> List: if context.is_tracking_metrics: context.metrics['execute_query'][-1]['sql'] = plain_sql if str(err) == "interrupted": - context.log.warning("interrupted slow sqlite query:\n%s", plain_sql) raise SQLiteInterruptedError(context.metrics) - context.log.exception('failed running query', exc_info=err) raise SQLiteOperationalError(context.metrics) diff --git a/lbry/lbry/wallet/server/session.py b/lbry/lbry/wallet/server/session.py index be7cfd0c0..3855aaa75 100644 --- a/lbry/lbry/wallet/server/session.py +++ b/lbry/lbry/wallet/server/session.py @@ -67,7 +67,7 @@ class LBRYSessionManager(SessionManager): path = os.path.join(self.env.db_dir, 'claims.db') args = dict( initializer=reader.initializer, - initargs=(self.logger, path, self.env.coin.NET, self.env.database_query_timeout, + initargs=(path, self.env.coin.NET, self.env.database_query_timeout, self.env.track_metrics) ) if self.env.max_query_workers is not None and self.env.max_query_workers == 0: diff --git a/lbry/scripts/claim_search_performance.py b/lbry/scripts/claim_search_performance.py index 21af64743..f0b26b628 100644 --- a/lbry/scripts/claim_search_performance.py +++ b/lbry/scripts/claim_search_performance.py @@ -112,7 +112,7 @@ async def search(executor, kwargs): async def main(db_path, max_query_time): - args = dict(initializer=initializer, initargs=(log, db_path, MainNetLedger, 0.25)) + args = dict(initializer=initializer, initargs=(db_path, MainNetLedger, 0.25)) workers = max(os.cpu_count(), 4) log.info(f"using {workers} reader processes") query_executor = ProcessPoolExecutor(workers, **args) diff --git a/lbry/scripts/sqlite_perf_test.py b/lbry/scripts/sqlite_perf_test.py index 8b8994e32..dae089344 100644 --- a/lbry/scripts/sqlite_perf_test.py +++ b/lbry/scripts/sqlite_perf_test.py @@ -45,7 +45,7 @@ async def run_times(executor, iterations, show=True): async def main(): executor = ProcessPoolExecutor( - 4, initializer=reader.initializer, initargs=(log, db_path, 'mainnet', 1.0, True) + 4, initializer=reader.initializer, initargs=(db_path, 'mainnet', 1.0, True) ) #await run_times(executor, 4, show=False) #await run_times(executor, 1) diff --git a/lbry/tests/unit/wallet/server/test_sqldb.py b/lbry/tests/unit/wallet/server/test_sqldb.py index 8393fb350..6f96f11e1 100644 --- a/lbry/tests/unit/wallet/server/test_sqldb.py +++ b/lbry/tests/unit/wallet/server/test_sqldb.py @@ -46,7 +46,7 @@ class TestSQLDB(unittest.TestCase): db_url = 'file:test_sqldb?mode=memory&cache=shared' self.sql = writer.SQLDB(self, db_url) self.addCleanup(self.sql.close) - reader.initializer(logging.getLogger(__name__), db_url, 'regtest', self.query_timeout) + reader.initializer(db_url, 'regtest', self.query_timeout) self.addCleanup(reader.cleanup) self.timer = Timer('BlockProcessor') self.sql.open()