• Forum has been upgraded, all links, images, etc are as they were. Please see Official Announcements for more information

v12 Expected Payment Intervals?

Syntax360

Member
I've heard it said that the interval between payments has stretched a bit since the reference node system was done away with (up to 6-7 days?), but I haven't read anything "official" to substantiate that...

So my questions: how often do we expect nodes to be issued payment? Is there anyone tracking some kind of average?


EDIT: Node has been paid - specific issue resolved. The (3) questions I would really like answers to are listed in Post # 5.

The specific genesis for my thread: I have a node that has been active for 8 days now without payment - it was banging out paydays every 4-5 days like clockwork all versions prior to v12. I have had a couple of daemon crashes, but they were caught within a few minutes by a monitoring script and the daemon relaunched - I have not issued a "masternode start" command since the beginning of the month and the node has never fallen off the MN list. I get 5 minute update confirmations on my desktop and I check my address on DashNinja.pl once or twice a day just to make sure everything is copacetic. If everything is working as it should on the network, I cannot conceive of any reason that would explain a missed/delayed payment...
 
Last edited by a moderator:
As being stated here : https://bitcointalk.org/index.php?topic=421615.msg12390359#msg12390359
How does the decentralized masternode payment system work?

Each time a block is generated on the network, there is a voting process that begins which all masternodes take part in. All masternodes begin the process by deterministically figuring out if they're part of the sub-quorum for the next block that needs to be voted on. Sub-quorums within the network are 10 masternodes and randomly pick masternodes for each block (in a deterministic, tamper proof way).

Next if a masternode is selected it goes through the following very complex process to pick the winner. First it will look at every masternode on the network and get the last paid time, according to the masternode list. "LastPaid" according to this process means a node has at least 2 votes for a given block. Notice there are ten votes total, so it's actually possible for up to 5 nodes to be flagged as "Paid" from a given block. This allows the network to quickly solve disagreements about the order in which nodes should get paid, then establish a permanent payment cycle. However, the downside is, it's possible to have a payment skipped when the cycle is getting established.

Second, the masternodes are then added to a list by last paid, then 10% of that list that was paid the furthest in the past is eligible for payment each block. At this point, the masternode with the highest score (deterministically again) is the one that nodes will vote for. This means there's really no order of payment each block, each masternode will simply remain in this winning queue until it randomly gets picked. Currently on average it would take 4.68 days to get into the eligible queue, then you have a 1 in 300 chance of being selected each block. This means on average the nodes should stay eligible for 3/4 a day before finally getting paid, but that could actually take longer if unlucky.

To determine if you were skipped you can do a "masternode winners 2000 | grep XAddr" from a linux console to find every time you were seen in the list. If you see >=2 votes and are not the winner, then you were super unlucky. Otherwise if you're in the list and it's going past 6 days, it would be the later situation, where you're eligible and just temporarily unlucky. There's also a third option, if you issue a "masternode start" from the cold node, you will reset your queue position.

When a miner pays a masternode, it will select the entry with the highest votes from the network. That's also the node that will get enforced for payment. This was quite difficult to write, but has worked great (although is somewhat resource intensive).

For current number of masternode : 3110 , please try "masternode winners 5000| grep XAddr" from a linux console to determine if you were skipped.
 
TheLazieR has been a tremendous help shedding more light on this (thanks again!). I wasn't aware of this command until he taught it to me, but it could be useful to help diagnose this and other future issues:

dash-cli masternode list full <your MN wallet address>

From the command help: Print info in format 'status protocol pubkey IP lastseen activeseconds lastpaid'

So expected output will be something like:
{
"1a234bc56789d01e2345fgh678i9j0123k4lmno5pq67r8s90123tu45v67wx89y-0" : " ENABLED 70103 Xabcd1efGH2i3jKLmNopQrstU4VwX5yZAB 123.456.123.456:9999 1442410001 530001 0"
}

So in this example, the network says the node has been active for 530,001 seconds (6 days, 3 hours, 13 minutes, 21 seconds) and has not been paid during that interval.

I would expect "activeseconds" to correspond to the last time a 'masternode start' command was issued, but those pieces do not fit in my particular case... :confused:

So I'll add two new questions: What could cause 'activeseconds' to differ from the last 'masternode start' command? How long do masternodes stay on the masternode list before falling off (the common number I've seen thrown around is 70 minutes, but I haven't seen anything to confirm that)?
 
Again...
dash-cli masternode winners 5000 | grep YOUR_PUB_ADRESS

What result you get?
IMO you've missed the payment.
It will be fixed in next release.
 
Personal crisis averted - my node did get paid late last night (8 days between payments).

splawik21 - In my specific case, my address was not listed in the last 5000 awards (it obviously is now).

My [non-]issue was presented as a framework for the questions, but I'm still no closer to understanding the (3) questions that drove me to author this thread. I would really appreciate it if anyone could offer some insight on the following:

1) Is there a 'ballpark' average pay time for nodes (I know it will vary some depending on total node #s)? Is anyone (or could anyone (dashninja.pl?)) tracking average payout times? It seems like that would be a useful statistic for deciding whether or not a node operator might have a problem.

2) How long do MNs stay on the MN list before falling off? I keep hearing "70 minutes" being thrown around, but that number is always prefaced with an "i think". It would be nice to have some sort of authoritative answer on this.

3) Should 'activeseconds' correspond to the last 'masternode start' command issued, or are there other factors which influence that statistic? If the latter, what other determining factors influence 'activeseconds'?
 
Personal crisis averted - my node did get paid late last night (8 days between payments).

splawik21 - In my specific case, my address was not listed in the last 5000 awards (it obviously is now).

My [non-]issue was presented as a framework for the questions, but I'm still no closer to understanding the (3) questions that drove me to author this thread. I would really appreciate it if anyone could offer some insight on the following:

1) Is there a 'ballpark' average pay time for nodes (I know it will vary some depending on total node #s)? Is anyone (or could anyone (dashninja.pl?)) tracking average payout times? It seems like that would be a useful statistic for deciding whether or not a node operator might have a problem.

2) How long do MNs stay on the MN list before falling off? I keep hearing "70 minutes" being thrown around, but that number is always prefaced with an "i think". It would be nice to have some sort of authoritative answer on this.

3) Should 'activeseconds' correspond to the last 'masternode start' command issued, or are there other factors which influence that statistic? If the latter, what other determining factors influence 'activeseconds'?

Hope my explanation could help you..
1) I believe that masternode status on dashninja and other masternode monitoring sites/scripts can help identify current known problem. If you think you still have problem about payment after 10 days active ,please report.

2) This is not authoritative answer but I found that these are defined in our core wallet
https://github.com/dashpay/dash/blob/master/src/masternode.h#L19-L21
2.1. MN ping every 5 min = ENABLED
2.2. MN last ping longer than 65 minutes = EXPIRED
2.3. MN last ping longer than 75 minutes = REMOVED
So, It's 75 minutes without ping from MN, that MN will be removed from list while the really safe timing is (75 minutes - 5 minutes ping delayed possibility) = 70 minutes as your hearing.

3) activeseconds is exactly means the seconds since your masternode start command issued. Your node can be reboot, restart or doing something else which doesn't send ping to network. The activeseconds still counting until your MN is removed because last ping is too long not be seen in network. Then you need to issue masternode start to register your MN on list.
 
As being stated here : https://bitcointalk.org/index.php?topic=421615.msg12390359#msg12390359


For current number of masternode : 3110 , please try "masternode winners 5000| grep XAddr" from a linux console to determine if you were skipped.
thelazier -- I found out this command also works on windows wallet.

But how do you know when a payment is skipped? Does it mean your address is listed on the list of the 5000 but it was not paid? And how do you find out who got your payment if you were skipped?

Thank you!
 
moli , the simple way to know payee is checking with explorer websites.
BTW, You will be pushed to back of queue when you have at least 2votes on the block no matter that you get paid or not. if you don't get paid, you are skipped.
 
When a miner pays a masternode, it will select the entry with the highest votes from the network.

So what will happen if there are two nodes,their votes quantity are same or all node's vote quantity is less two?
 
dashren
If two nodes have equal votes, it's up to miner to pay a node and skip another.
If all nodes are voted less than two votes, miner can choose to pay any node while all of them will not be skipped.
 
Last edited by a moderator:
Back
Top