I started a geth node, passed in the ABI and ran contractInstance = MyContract.at('..').

Then when I ran contractInstance.somePublicVariable(123) I am seeing 0 values everywhere.

Is this because my geth node hasn't synced with this public contract? Does my geth node need to sync if its in fast syncmode? Or does it just ask peers for this data? What about in light syncmode?

1 Answer 1


In a full or fast sync, your node needs to sync past the block in which your contract was deployed before it can start accessing it.

In a light sync, the node you are connected to must have synced past the block in which your contract was deployed.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.