-
Notifications
You must be signed in to change notification settings - Fork 218
Open
Labels
bugSomething isn't workingSomething isn't working
Description
Describe the bug
multicall
sometimes exceeds eth_call
gas limit
and an out of gas
error is raised.
To Reproduce
Do eth_call
consuming the maximum gas allowed by the node. Library raises an exception. Example trace from the transaction-service
:
2022-05-16 10:23:21,794 [WARNING] [MainProcess] https://safe-transaction.mainnet.gnosis.io/api/v1/safes/{address}/collectibles/ - Exception: NodeConnectionException - Data received {}
Traceback (most recent call last):
File "/usr/local/lib/python3.10/site-packages/gnosis/eth/multicall.py", line 227, in _try_aggregate
result = self.contract.functions.tryAggregate(
File "/usr/local/lib/python3.10/site-packages/web3/contract.py", line 957, in call
return call_contract_function(
File "/usr/local/lib/python3.10/site-packages/web3/contract.py", line 1501, in call_contract_function
return_data = web3.eth.call(
File "/usr/local/lib/python3.10/site-packages/web3/module.py", line 57, in caller
result = w3.manager.request_blocking(method_str,
File "/usr/local/lib/python3.10/site-packages/web3/manager.py", line 198, in request_blocking
return self.formatted_response(response,
File "/usr/local/lib/python3.10/site-packages/web3/manager.py", line 171, in formatted_response
raise ValueError(response["error"])
ValueError: {'code': -32015, 'message': 'VM execution error.', 'data': 'Out of gas'}
Expected behavior
Reverts to use batch call
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working