From 310c61a5cc5e89d81e001e071b2d72801268e72c Mon Sep 17 00:00:00 2001 From: Akinwale Ariwodola Date: Mon, 28 Sep 2020 20:03:27 +0100 Subject: [PATCH 1/3] check KIVY_BUILD env variable --- lbry/wallet/database.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lbry/wallet/database.py b/lbry/wallet/database.py index ebf9745ef..bd7439c5f 100644 --- a/lbry/wallet/database.py +++ b/lbry/wallet/database.py @@ -62,7 +62,7 @@ def run_read_only_fetchone(sql, params): raise -if platform.system() == 'Windows' or 'ANDROID_ARGUMENT' in os.environ: +if platform.system() == 'Windows' or 'ANDROID_ARGUMENT' or 'KIVY_BUILD' in os.environ: ReaderExecutorClass = ThreadPoolExecutor else: ReaderExecutorClass = ProcessPoolExecutor From 838cc601614329ae5b2c20834cf3df0dca424ce1 Mon Sep 17 00:00:00 2001 From: Akinwale Ariwodola Date: Mon, 28 Sep 2020 20:06:57 +0100 Subject: [PATCH 2/3] conditional import --- lbry/wallet/database.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lbry/wallet/database.py b/lbry/wallet/database.py index bd7439c5f..07bb66a1f 100644 --- a/lbry/wallet/database.py +++ b/lbry/wallet/database.py @@ -8,7 +8,6 @@ from collections import defaultdict from dataclasses import dataclass from contextvars import ContextVar from concurrent.futures.thread import ThreadPoolExecutor -from concurrent.futures.process import ProcessPoolExecutor from typing import Tuple, List, Union, Callable, Any, Awaitable, Iterable, Dict, Optional from datetime import date from prometheus_client import Gauge, Counter, Histogram @@ -65,6 +64,7 @@ def run_read_only_fetchone(sql, params): if platform.system() == 'Windows' or 'ANDROID_ARGUMENT' or 'KIVY_BUILD' in os.environ: ReaderExecutorClass = ThreadPoolExecutor else: + from concurrent.futures.process import ProcessPoolExecutor ReaderExecutorClass = ProcessPoolExecutor From ec2f6c6b800f04347915d0fc8a2d440cc97dd28e Mon Sep 17 00:00:00 2001 From: Lex Berezhny Date: Tue, 29 Sep 2020 07:52:28 -0400 Subject: [PATCH 3/3] lint --- lbry/wallet/database.py | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/lbry/wallet/database.py b/lbry/wallet/database.py index 07bb66a1f..fda8ace77 100644 --- a/lbry/wallet/database.py +++ b/lbry/wallet/database.py @@ -7,7 +7,6 @@ from binascii import hexlify from collections import defaultdict from dataclasses import dataclass from contextvars import ContextVar -from concurrent.futures.thread import ThreadPoolExecutor from typing import Tuple, List, Union, Callable, Any, Awaitable, Iterable, Dict, Optional from datetime import date from prometheus_client import Gauge, Counter, Histogram @@ -18,6 +17,12 @@ from .transaction import Transaction, Output, OutputScript, TXRefImmutable, Inpu from .constants import TXO_TYPES, CLAIM_TYPES from .util import date_to_julian_day +from concurrent.futures.thread import ThreadPoolExecutor # pylint: disable=wrong-import-order +if platform.system() == 'Windows' or 'ANDROID_ARGUMENT' or 'KIVY_BUILD' in os.environ: + from concurrent.futures.thread import ThreadPoolExecutor as ReaderExecutorClass # pylint: disable=reimported +else: + from concurrent.futures.process import ProcessPoolExecutor as ReaderExecutorClass + log = logging.getLogger(__name__) sqlite3.enable_callback_tracebacks(True) @@ -61,13 +66,6 @@ def run_read_only_fetchone(sql, params): raise -if platform.system() == 'Windows' or 'ANDROID_ARGUMENT' or 'KIVY_BUILD' in os.environ: - ReaderExecutorClass = ThreadPoolExecutor -else: - from concurrent.futures.process import ProcessPoolExecutor - ReaderExecutorClass = ProcessPoolExecutor - - class AIOSQLite: reader_executor: ReaderExecutorClass