On Etherscan, a failed transaction will provide a reason for failure. This can be Reverted
, Out of Gas
, Bad instruction
, etc.
However, there seems to be an inconsistent message on different testnets. I deployed this contract on all the networks:
pragma solidity ^0.5.16;
contract FailedFallback {
function () external payable {
require(1==2, "Failed test");
}
}
When calling the fallback function on Rinkeby, Etherscan says execution reverted
, however any other network simply says Reverted
.
Is this an inconsistency with Etherscan or the the VM of the network? At the VM level, are these reversions the exact same? Does this have something to do with a Geth vs. Parity trace?