If you check this list https://smartcash.bitcoiner.me/smartnodes/payouts/ , you’ll notice a big discrepancy in node payments. The luckiest nodes don’t go back in the queue after receiving payments, which is not normal. As a consequence, some nodes still have only 1 payment after 30 days.
The last update was supposed to solve the issue, but it keeps happening.
It looks like the problem is that some nodes after winning wouldn’t go to the end of the queue. This one (SZYpcj8TrCYkQZdYYD1zekkVBCiNCAcZXA) is still in the top 10% position. Obviously, that makes others wait much longer.
Oh, and after winning a 3rd payment today (1st Mar 2018 15:56:06 ), our winner node is Pos 235. Which means he’s gonna get another payment soon.
The funny part is that https://smartcash.bitcoiner.me/smartnodes/list/ keeps thinking node SZYpcj8TrCYkQZdYYD1zekkVBCiNCAcZXA has not been paid for a long time. It thinks last payment was done 9 days ago, while in 9 days it has received around 36 payments. So either https://smartcash.bitcoiner.me/smartnodes/list does not work, or it shows there’s a bug that allows some nodes to get more payments than they would normally get.
Another thing that is strange is that in its first days, this node was receiving payments in a rather normal way. It only goes crazy on the February 21. And from then, the system thinks the node has not been paid.
I am also here to report that the system is still buggy. I have one node that got 2 payments in 2 hours immediately after updating on March 1, and I have another node that has never gotten paid and has been operating for 2+ weeks now
Here’s the team’s announcement published on discord about the issue.
“Update on SmartNode Rewards: On average, payouts are expected to be after N + (N/100) blocks, assuming 1% of payouts are “incorrect” or “unfair” due to a user reported bug that will be fixed in 1.2, in about 2 months. Payout interval estimates will start after 1.1.1 upgrade status is completed and queue is in effect, which is expected to be on March 4th when 1/3rd of addresses paid in protocol 90025. Due to this upgrade, previous node history does not matter, such as being online for a month, or a week, regardless of payouts received or not received. Payouts are not guaranteed but are probabilistic. A node must have a position (not rank) of about 1000 or less to qualify. Bitcoiner list is a good estimate of position. 1.1.1 fixed the issue with lasttxid not being recorded consistently, resulting in nodes being able to get two or more payments before returning to back of queue. The non-recorded payouts will be fully fixed when all mining pools update to v1.1.1 as well. The only way to increase chance of payout is to keep your node online 100% of the time. Dropping out for more than an hour will reset your node. Nodes can still get a double payout within a 10 block interval, although this is rare, and every node qualifies for this. This is because winners are voted on for next 10 blocks, and you can win more than one for a small interval because a payment is not recorded. All payments can be verified to be to the correct node by comparing the block hash 100 blocks ago with all eligible nodes. The node with the furthest entropy hash is voted to win. Suggested ways to keep your node online include the maintenance scripts (already in install.sh), node monitoring tools, or anti-ddos scripts or firewall”.
If you want more info, go to Discord read through the smartnode-payment-issues section.
I’ve been watching 2 random nodes over the last day to see how fast they advance in position. It is far from being enough to get a bigger picture of our situation, but it’s better than nothing.
The first node was pos 3992 yesterday (7th of March) at 17:51. It is now 21:15 (8th of March), and it is at pos 3210, which means it advanced by 782 in 28h24min (which is 1644 minutes, which is 98 640sec).
Normally, a node should roughly advance every 55s. 98 640 / 55 = 1793,45 positions.
This means that it takes more than twice the normal time for this node to advance in the line.
The second node was pos 3992 today (8th of March) at 12:19. It is now 21:25 (8th of March), and it is at pos 3682, which means it advanced by 310 in 9h6min (which is 546 minutes, which is 32 400sec). 32 400 / 55 = 589.
This node advances faster than the first, but it is still almost x2 slower.
So… according to @troy on Discord, last Sunday, there were 51 smartnodes getting paid about 4 times per day, accounting for roughly 204 of the 1570 blocks per day, or 13% of all payouts.
They can create 2 new nodes every day (514average 200 smarts). If they do, it means they will have around 122 new nodes in 30 days (if they create a new node every time they can). Now, if they were getting 204 of the 1570 blocks per day, or 13% of all payouts, how much will that be then?
I kind of like this idea. To me, it would make sense to do something like
(1) (Fairly) Determine the SmartNode that is going to get paid (requires v1.2 anyway)
(2) Look at how long the SN has been up
(3) Look at how much the SN has been paid
(4) Adjust THIS payment according to (2) and (3), if this node is underpaid based on the maths of what it “ought” to have earned fairly, pay it a little extra. If this node is overpaid based on the maths of what it “ought” to have earned fairly, pay it a little less.
This way over time the nodes would trend toward fair payments and it would account for extra payments accrued either by chance or by exploit.