Получить все транзакции, которые вызывают определенный метод смарт-контракта

avatar
mateusgl
8 августа 2021 в 20:54
483
0
0

Я пытаюсь использовать API json-rpc для получения всех транзакций, вызывающих определенный метод смарт-контракта. При вызове этого метода смарт-контракт генерирует два события (скажем, события A и B).

На данный момент я вызываю eth_getLogs два раза: сначала я получаю все транзакции с событием A, а затем я получаю все транзакции с событием B. После этого я делаю пересечение, получая все транзакции, в которых были два события. испущено.

Проблема с этим подходом заключается в том, что существует огромное количество транзакций, в которых генерируется только одно событие A (и всего несколько транзакций, в которых генерируется только одно событие B). Эти транзакции отбрасываются, когда я делаю пересечение, но получение этого огромного количества нерелевантных транзакций, когда генерируется только одно событие A, делает первый вызов очень медленным.

Есть ли более эффективный способ получения интересующих меня транзакций?

Источник

Ответы (0)