X9Developers / XSN

XSN - Stakenet, the first cryptocurrency with Trustless Proof of Stake
https://stakenet.io
MIT License
93 stars 49 forks source link

Controller wallet doesn't detect node protocol version, leading to invalid protocol error #90

Closed vminus closed 6 years ago

vminus commented 6 years ago

If you're using a wallet to control your masternodes (such as Windows wallet to control VPS nodes) , the wallet does not detect the node protocol properly.

What it means is .. if you have for example a 1.0.10 wallet and a 1.0.9 node , the wallet detects the node protocol as 70209 instead of 70208 . When you start a masternode with a wallet with a different protocol, it tries to activate the wallet's protocol instead of the node's, this getting the

"status": ""Not capable masternode: Invalid protocol version""

error.

You need to have a controller wallet with the same protocol as the node. So if you want to activate a 70208 node, you need a 70208 wallet.(edited)

Expected behavior: when using a different protocol wallet, it should detect and activate the correct protocol on the nodes. This would decrease a lot the confusion during network upgrades. Also, it would allow the user to properly evaluate its wallets.

Actual behavior: When starting a 1.0.9 node with a 1.0.10 wallet the protocol column in the "my masternodes" tab lists the node as running 70209 instead of the correct 70208 protocol version. This in turn locks the node and pops up the ""status": ""Not capable masternode: Invalid protocol version"" error when querying masternode status on the vps.

When starting the same node with the 1.0.9 wallet, everything resumes and starts working properly.

durkmurder commented 6 years ago

I would say that actual behavior is correct, there is no way for controller wallet to know what version VPS is running, it can activate only same version, so you need to match versions. Changing this seems wrong to me.