Validators sorting in defi wallets (mobile app and desktop) - Change uptime calculation #647
Replies: 3 comments 3 replies
-
As a delegator, I prefer to delegate to validators that are more experienced with a solid infrastructure I can trust. I understand that there can be unexpected issues/hiccups along the way and they are great learning experience for the unexperienced. The problem you described could have been avoided if you had a backup server you could run on until you had enough time to investigate and resolve the hardware issue. Some validators spend a lot of money, time, and have the experience to setup disaster plans and able to avoid these issues so when these issues come up then they can be worked on with minimal downtime. The uptime is like a credit report and credit history goes back 7 years. Maybe we can adjust ranking by missed blocks up to 7 years ago, but a few months is too short and wouldn't be fair for those validators who invest a lot of money and time and have the skills to fine tune their infrastructure to ensure maximum uptime. Delegators don't care about why you were down, it's just an excuse to them. They want to delegate to servers who have been vetted and proven themselves over time by experienced engineers with well maintained infrastructure. It's good that you have learned and fixed your hardware issue but do you have another server available and a disaster recovery plan ready in case another issue comes up? If not, then you are responsible for your own risks and the current ranking system is fair from the delegator's perspective. I don't mean any disrespect, but would you stake with a server who has missed a lot of blocks over a server that has only missed a few blocks since launch (assuming commissions are all the same). The defi wallet was made mainly to benefit the delegators and not to make all validators happy. There's no perfect formula that can make everyone happy. It has gone through many iterations but the current formula is a good balance in favor of delegators in my opinion. I'm sure many people do agree, and many people don't agree. That's just the way of the world. |
Beta Was this translation helpful? Give feedback.
-
I run Pickle Rick and have been watching this gaming of the validator list. I would forecast that if the gaming continues, more participants choosing to game this way, the bottom 50 of the bonded validators will have all been 'gamed' validators...perhaps by the end of the year. Easy enough to spin up another virtual machine, restake, or use a pool of buddies to keep the game going. Any long term validator will invariably have missed blocks (even Amazon, Neflix, Google, have outages), upstream bandwidth provider has a hiccup, etc., and will never have 100% and rarely 99.99. I would propose ranking validators based on: 1) 30 day rolling window of uptime or # of equivalent blocks, 2) block validator added (to weed out the new gamers), and 3) depending on the complexity of the calculation, it might be a heavy query, the 30 day avg APR (good suggestion), 4) voting power. #3 and #4 could be switched around. New validators might boo #2 because it puts them at a disadvantage with old timers who haven't had any missed blocks during the designated window, but a router or bandwidth hiccup, rebooting for a new kernel, will cause a missed block or two and then the newbie validators instantly rises above. This ranking rewards commitment, rewards uptime, and rewards non-APR gamers. #1 is the most important in my view. #2-4 could be reordered depending on views. |
Beta Was this translation helpful? Give feedback.
-
Hey Defi wallet devs! Take a sampling of all Validators between 51-100. You will soon see a majority of them 'gamed'. By gamed I mean: 1) started after block 2,000,000, 2) High Max Commission, 3) High Max Commission Change. Lots of folks are taking advantage of the sorting in the Defi wallet which puts heavy emphasis (too heavy) on uptime without regard to longevity. It allows 'gamers' to spin up a new validator with high max and high max change rates, get a bunch of delegators because they are listed high in the sorting (everyone has 99.999% when they start); then repeat. You are losing long time validators and the experience your delegators customers have with these new 'gamed' validators will be very poor as they start moving rates sky high. |
Beta Was this translation helpful? Give feedback.
-
Hi, I'd like to officially bring up the discussion about the default sorting of the validators in these apps. I aim mainly at the mobile app, which is probably the most used.
After some changes, the logic I believe it's being applied is the following (correct me if I'm missing something):
However, the uptime is calculated since the validator joined the network. This penalizes badly a possible hiccup months or even years ago (when the chain gets that old) and benefits new validators enormously, whose uptime is calculated from a very small sample. I'm bringing this up not only because my validator is affected (and almost out of the top 100, no idea whether it'll be there when the number of validators increases), but also because I find it unfair, and so seems to be the feeling in discord. In my personal case I had some problems with a partly defect disk which were very difficult to detect (as the disk was not completely broken but only with errors), which were solved after changing the disk. Even if my node does rarely miss a block since months, it's impossible to get to 99,9% in the near future (sitting at 99,70% as of now).
Possible solutions:
A- The best approach to address this as fairly as possible would be to take into account the uptime only during some specific window of time, for instance the last couple of months as a possibility.
B- I don't believe that lowering that 99,90% to, for instance, 99,50%, would be as good, even if I could benefit from it, because the same problem would exist: old validators get penalized. With the previous solution (A), old validators don't get penalized, while new validators still have the same (good) conditions.
I'm not sure about how difficult to change the formula to calculate the uptime would be (I assume this would be calculated in blocks and not in time).
Thanks in advance for taking this into account.
P.S.: Let me know if this would belong somewhere else, but only the desktop wallet had its own github, so I assumed this would the appropriate place.
Edit: Also there can even be the situation in which a validator that has never been jailed, and hence a good validator, will never be seen on top of the list...
Beta Was this translation helpful? Give feedback.
All reactions