Skip to content

Commit 25aa17b

Browse files
authored
Merge pull request #212 from opentensor/chore/thewhaleking/ensure-request-manager-keys-are-unique
Unique keys in request manager
2 parents 18ce47c + c642732 commit 25aa17b

File tree

2 files changed

+8
-0
lines changed

2 files changed

+8
-0
lines changed

async_substrate_interface/async_substrate.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2395,6 +2395,9 @@ async def _make_rpc_request(
23952395
) -> RequestResults:
23962396
request_manager = RequestManager(payloads)
23972397

2398+
if len(set(x["id"] for x in payloads)) != len(payloads):
2399+
raise ValueError("Payloads must have unique ids")
2400+
23982401
subscription_added = False
23992402

24002403
async with self.ws as ws:
@@ -3670,6 +3673,7 @@ async def query_map(
36703673
self.decode_ss58,
36713674
)
36723675
else:
3676+
# storage item and value scale type are not included here because this is batch-decoded in rust
36733677
page_batches = [
36743678
result_keys[i : i + page_size]
36753679
for i in range(0, len(result_keys), page_size)

async_substrate_interface/sync_substrate.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1896,6 +1896,10 @@ def _make_rpc_request(
18961896
) -> RequestResults:
18971897
request_manager = RequestManager(payloads)
18981898
_received = {}
1899+
1900+
if len(set(x["id"] for x in payloads)) != len(payloads):
1901+
raise ValueError("Payloads must have unique ids")
1902+
18991903
subscription_added = False
19001904

19011905
ws = self.connect(init=False if attempt == 1 else True)

0 commit comments

Comments
 (0)