this post was submitted on 29 Jul 2025
22 points (95.8% liked)
Voyager
7123 readers
4 users here now
The official lemmy community for Voyager, an open source, mobile-first client for lemmy.
Rules
- Be nice.
- lemmy.world instance policy
Sponsor development! ๐
๐
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
I'm guessing that somebody is keeping a running count rather than calculating the votes directly. So, this would happen if your running count missed a downvote, but didn't miss the person removing their downvote, and also didn't have rails to guard against the value going negative. That would also jive with the person saying it's not Voyager. Maybe you don't see it on the other platforms because they have client-side guard rails for this data.
Normally, this is why keeping a running count is a big no-no in programming, because it easily (often instantly) gets out-of-sync with the actual data. But for a big distributed system, it is an especially challenging problem, and it might simply not be worth it to get the exact right value, and a running count might be good enough.
That's it, yep.
With so many votes being cast and such a huge pile of old votes from the past, recalculating the total each time would be a lot of overhead. Also we don't need total accuracy anyway.