question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Empty result for eth_call?

See original GitHub issue

I’ve had a user report that they’re having issues with eth_call being reverted again.

I see this in the logs:

WARN  |      QuorumRpcReader | Empty result for eth_call as io.emeraldpay.dshackle.quorum.AlwaysQuorum@84b8c47

I’m wondering if it’s related?

We recently started adding Geth and Turbo-Geth into our setup and I noticed that when making eth_call that gets reverted, Nethermind has a “data” field, but Geth and Turbo-Geth do not and I wonder if that has something to do with it?

Just seems weird.

The user is getting back:

"error": {
        "code": -32002,
        "message": "No response or no available upstream for eth_call"
    }

Which I know is a dshackle error message, even though all of our nodes are configured for eth_call and making manual calls works fine.

Example curl used to test with:

curl -s -H 'Content-Type: application/json' --data '{"jsonrpc":"2.0","method":"eth_call","params":[{"data":"0x06fdde03","to":"0x1f0d3048b3d49de0ed6169a443dbb049e6daa6ce"},{"blockHash":"0xa5626dc20d3a0a209b1de85521717a3e859698de8ce98bca1b16822b7501f74b"}],"id":1}'

Geth and Turbo-Geth:

{
  "jsonrpc": "2.0",
  "id": 1,
  "error": {
    "code": -32000,
    "message": "execution reverted"
  }
}

Nethermind:

{
  "jsonrpc": "2.0",
  "error": {
    "code": -32015,
    "message": "VM execution error.",
    "data": "revert"
  },
  "id": 1
}

Issue Analytics

  • State:open
  • Created 3 years ago
  • Reactions:1
  • Comments:42 (42 by maintainers)

github_iconTop GitHub Comments

1reaction
splixcommented, Mar 15, 2021

Hi Chase! Thank you, working on it right now, I can reproduce it and going to fix, and make a release (in in a couple of days at max).

0reactions
splixcommented, Mar 27, 2021

That’s great it’s finally fixed, that was a serious issue.

The new error is something different, and it’s unclear what is the reason. What I see it failed to send a request to an upstream, retried 3 times and gave up. And it had repeated multiple times. Dshackle is supposed to recover from such errors, but something stopped it from recovering.

Read more comments on GitHub >

github_iconTop Results From Across the Web

web3j.ethCall returns null when retrieven contract variable
ContractCallException: Empty value (0x) returned from contract. Please help with any hints related to what I might be doing wrong.
Read more >
Web3j java function call returns empty list on solidity contract
1 Answer 1. Sorted by: Reset to default. Highest score (default) ...
Read more >
eth_call - Alchemy Docs
Executes a new message call immediately without creating a transaction on the block chain.
Read more >
web3.eth — web3.js 1.0.0 documentation - Read the Docs
If no property is set it will be added to the module directly. ... You may see this warning if you call setProvider...
Read more >
org.web3j.abi.datatypes.Function.getOutputParameters java ...
getOutputParameters (Showing top 20 results out of 315) ... @Test public void testSimpleFunctionDecode() { Function function = new Function( "test", ...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found