Skip to content

Commit 16441c7

Browse files
committed
Implemetn improvements from #205
1 parent bd6ef67 commit 16441c7

File tree

1 file changed

+5
-4
lines changed

1 file changed

+5
-4
lines changed

async_substrate_interface/utils/cache.py

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
if USE_CACHE
2121
else ":memory:"
2222
)
23+
SUBSTRATE_CACHE_METHOD_SIZE = int(os.getenv("SUBSTRATE_CACHE_METHOD_SIZE", "512"))
2324

2425
logger = logging.getLogger("async_substrate_interface")
2526

@@ -66,7 +67,7 @@ async def _create_if_not_exists(self, chain: str, table_name: str):
6667
WHERE rowid IN (
6768
SELECT rowid FROM {table_name}
6869
ORDER BY created_at DESC
69-
LIMIT -1 OFFSET 500
70+
LIMIT -1 OFFSET {SUBSTRATE_CACHE_METHOD_SIZE}
7071
);
7172
END;
7273
"""
@@ -219,7 +220,7 @@ def _create_table(c, conn, table_name):
219220
WHERE rowid IN (
220221
SELECT rowid FROM {table_name}
221222
ORDER BY created_at DESC
222-
LIMIT -1 OFFSET 500
223+
LIMIT -1 OFFSET {SUBSTRATE_CACHE_METHOD_SIZE}
223224
);
224225
END;"""
225226
)
@@ -294,7 +295,7 @@ def inner(self, *args, **kwargs):
294295

295296
def async_sql_lru_cache(maxsize: Optional[int] = None):
296297
def decorator(func):
297-
@cached_fetcher(max_size=maxsize)
298+
@cached_fetcher(max_size=maxsize, cache_key_index=None)
298299
async def inner(self, *args, **kwargs):
299300
async_sql_db = AsyncSqliteDB(self.url)
300301
result = await async_sql_db(self.url, self, func, args, kwargs)
@@ -442,7 +443,7 @@ def __get__(self, instance, owner):
442443
return self._instances[instance]
443444

444445

445-
def cached_fetcher(max_size: Optional[int] = None, cache_key_index: int = 0):
446+
def cached_fetcher(max_size: Optional[int] = None, cache_key_index: Optional[int] = 0):
446447
"""Wrapper for CachedFetcher. See example in CachedFetcher docstring."""
447448

448449
def wrapper(method):

0 commit comments

Comments
 (0)