Crashing nodes, Missing Balances

+1 vote


There is node on my 4-nodes blockchain, i will call it nodeA. Yesterday, I rebooted my VMs and the multichain on nodeA started misbehaving by seemingly shutting down itself (even after starting it, confirming it can see other nodes) after less than minute, i can't reach it anymore via the multichain-cli. 

So i deleted that blockchain folder on nodeA and reconnected it to other nodes (effectively recreating everything). The confusing thing now is, using gettotalbalances on all the other nodes gives me an empty json, despite the fact that i had transferred some "gold" asset to them (from nodeA) some days before. I can also see the "gold" asset through listassets on all the nodes but none of them that the asset was previously transferred to from nodeA has the asset in their balance.

What is the reason for this?

On a side note (maybe it is relevant to why it was crashing), what i observed with nodeA after the VMs reboot, was that it notices the other network connections on that VM (minus the primary one it uses) and gave them as option should other nodes want to connect to it. 



asked Jan 11, 2017 by Rosevelt

1 Answer

0 votes

Am I right in guessing that node A was the only node with mining permission? If so the problem is that mining can no longer proceed in your chain, because the only permitted miner's private key is lost forever. That in turn would mean that a transaction which moves assets cannot be confirmed.

You can check this explanation by looking at the blocks count in getinfo, and checking the balances using gettotalbalances 0 (includes unconfirmed transactions).

(BTW the original problem was likely caused by you shutting down the VM without shutting MultiChain down properly – in most cases MultiChain recovers from this situation but we need to confirm this happens in all cases. Can you please tell us what MultiChain version you are using.)

answered Jan 12, 2017 by MultiChain
Also you can fix nodes with broken data stores by launch multichaind with -reindex=1
Yeah, the VM was shut down without stopping the Blockchain. I am using Build 1.0 alpha 27 protocol 10007.
I don't think it's the mining. I usually set all permissions (including anyone-can-mine) to true and i just checked, blocks are still being mined, and the last blocks were mined by different nodes.
I will do this, if I encounter the problem again.
So it seems that the transaction to transfer the gold never left node A. You can double check this by subscribing to the asset on one of the nodes, then using listassettransactions. If you have that transaction's txid, you can also see if it appears in the debug.log of any other node, so we can try to reproduce what happened.