Skip to content

Commit fac790e

Browse files
committed
Changes responses["results"] to a deque with a max length of 100 to prevent long-running processes (such as block handlers) from continuously increasing the memory usage.
1 parent d47af88 commit fac790e

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

async_substrate_interface/types.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import logging
22
from abc import ABC
3-
from collections import defaultdict
3+
from collections import defaultdict, deque
44
from collections.abc import Iterable
55
from dataclasses import dataclass
66
from datetime import datetime
@@ -374,7 +374,9 @@ class RequestManager:
374374

375375
def __init__(self, payloads):
376376
self.response_map = {}
377-
self.responses = defaultdict(lambda: {"complete": False, "results": []})
377+
self.responses = defaultdict(
378+
lambda: {"complete": False, "results": deque(maxlen=100)}
379+
)
378380
self.payloads_count = len(payloads)
379381

380382
def add_request(self, item_id: str, request_id: str):

0 commit comments

Comments
 (0)