Masternodes with no rewards for a week


(Todd Porter) #1

Expected behavior

—Silver MN to payout at least 1 every 48 hours

Actual behavior

—No MN payouts for over 160 hours

Operating system

—Windows 10

  • [ ] Mac OSX
  • [ ] Windows 10
  • [ ] Windows 8/8.1
  • [ ] Linux Ubuntu 16.04
  • [ ] Linux Ubuntu 18.04
  • [ ] Linux Debian
  • [ ] Other UNIX/Linux distribution

Detailed reproduction steps

—Silver and Copper MN have been running fine for months with no issues. Starting on Jan 11th I noticed that I was no longer getting any MN payouts on either MN. Diviscan and wallet all look normal. My understanding is that 7 days without a MN payout on Copper or Silver should not happen. Please advise on a next step.

Thank you.


(OriZ) #2

If they are enabled/started, then it’s just the randomality.


#3

In 10 days of my MN I’ve had 8 rewards. I suppose that’s okay. I have a Silver node btw.


(Todd Porter) #4

Hi Oriz. Thanks for your response. The MN payed out overnight, so it went a little over 7 days. Quick question: I remember reading about a part of the design of the blockchain that moves “unlucky” masternodes to the top of the pile to keep the rewards somewhat even. Is that not the case?


(OriZ) #5

From the Wiki:

Payment logic

Masternode payments in Divi are determined using a decentralized random selection algorithm based on masternode tier. Every masternode appears in the global list. Once a masternode is active for some amount of time, it’s eligible for payments. Once eligible, it takes part in a probabilistic process that determines the winner for the next block. Different tiers have different chances to win.

Winner selection

When a new block is added to the network, every masternode submits a vote for the winner, which appears in 10 blocks in future. Voting is a probabilistic process of selecting masternode winner.

Score is a double SHA256 of the funding transaction hash and ticket index for all masternodes in the selection pool. The score is compared with the block hash 100 blocks ago. The masternode with the closest numeric hash value to that block hash receives the payment.

Ticket is a number that represents one try to create a score.

Whoever gets the maximum hash wins the selection process. Each masternode tries to produce a maximum allowed score (hash) based on their masternode tier. In practice it means that it tries several times to hash to maximize the chances of winning.

We build a pool of tickets for every masternode and select masternode with closest numeric hash value to block hash.