aionnetwork / block_signer

2 stars 2 forks source link

Tried to decode from a null #4

Closed ph0rest closed 4 years ago

ph0rest commented 4 years ago

Hello! I'm trying to Run the block signing tool and i get this output (config method): `$ java -jar block_signer.jar -config conf

[2019-11-18T09:17:57.887Z] Retrieving the coinbase address from the StakerRegistry at a0733306c2ee0c60224b0e59efeae8eee558c0ca1b39e7e5a14a575124549416... [2019-11-18T09:17:58.171Z] eth_call payload: {"jsonrpc":"2.0","method":"eth_call","params":[{"to" : "0xa0733306c2ee0c60224b0e59efeae8eee558c0ca1b39e7e5a14a575124549416","data" : "0x210012676574436f696e626173654164647265737322a00fe1630014dbf0018bfb108b8085bdbf9a7e34bc4c5febf3f2b9c64024b00a"},"latest"],"id":1} [2019-11-18T09:17:59.316Z] eth_call response: InternalRpcResult { successful | output = {"result":"0x","id":1,"jsonrpc":"2.0"} | time of call = 5084619119450 (nanos) } Exception in thread "main" org.aion.avm.userlib.abi.ABIException: Tried to decode from a null or empty data field. at org.aion.avm.userlib.abi.ABIDecoder.checkNullEmptyData(ABIDecoder.java:803) at org.aion.avm.userlib.abi.ABIDecoder.decodeOneAddress(ABIDecoder.java:465) at org.aion.staker.BlockSigner.getCoinbaseAddress(BlockSigner.java:174) at org.aion.staker.BlockSigner.main(BlockSigner.java:77)`

Please help me to figure out what's wrong.

MindfulStaking commented 4 years ago

Hey Phorest, did you get this issue sorted out?

I’ll leave this up for others in case they run into same issue as well. From my experience there are a few reasons this issue comes up.

  1. You are not fully synced to the most current block on mainnet.

  2. You have to check the config.xml file. Make sure rpc active is set to true and java active set to false. Also make sure to check the IP address. If it’s 0.0.0.0 try changing to a default like 127.0.0.1

  3. Sometimes it seems that it’s not optional to leave out the Port and IP address from the block signing script even though it says optional.

Whatever the reason or if there are others. This issue has to do with the connection the block signer makes with the ./aion.sh node process. When in doubt and you tried the above, make sure your current blocks are the same as on the mainnet dashboard and that you are not operating from an outdated Java kernel.

Running without a docker directly onto Ubuntu 18.04’s OS also may be an option if running with an EC2 instance instead of running on Amazon Linux w/docker.

Hope this helps!

ph0rest commented 4 years ago

@MindfulStaking Hello! Thank you for your reply. Yes you are right. The node was not been fully synchronized. And after the synchronization process is completed - the Signature block starts to work well.