Productive day!

Rewrote an intern's feature and briefly explained how/why
Gave intern a choice of projects, and explained them
Removed two unused models, one unused route
Dried up two views into a partial
Redesigned said partial
Tested validation edge cases (ex: Jan 10nd, 101bc)
Fixed an api
Simplified three models
Added scheduling and platform restriction to a feature
Le wild bug appears: a user with negative xp!?
Wrote a migration to expand players' max xp to 2^64-1 because a certain legacy game gives it away like my ex-boss makes promises. Chewed at devs, but they're all long gone so :/
Won two games of pool
Browsed devRant

Busy day, and all of this while falling asleep! ๐Ÿ˜Š
I'm quite proud of myself today.

  • 3
    But if it gives XP, how can you end up negative?
  • 9
    @JoshBent That's the question.

    Either an overflow (2^31-1 max, so unlikely) or a very strange (and equally unlikely) bug. Or data manipulation, but that's unlikely too because no other stats look modified. The user is also a purchaser, but hasn't contacted support over an obvious bug? It really is bizarre.

    It also has only happened to that one user, ever, so data corruption is my best guess? But that's very unlikely, too, as the rest of the data is totally fine and still formatted correctly.

    I really have no idea. ๐Ÿคจ๐Ÿค”
  • 2
    @Root even int32 is 2 billion, that'd have to be an insane amount even of 1000 "points" increments to reach lol very odd issue for sure.
  • 2
    Signed int32 is ±2.147 billion (2^31)
    Signed int16 is only ±32767 ๐Ÿ˜‹
  • 2
  • 2
    @Root @irene he just meant to mention that it'd be easier with int16 to overflow, while I assumed int32
  • 2
    I love productive days, good job!
    About the XP problem,
    Is it an old/new user?

    Maybe the user was affected by a previous/faulty DB migration?
  • 3
    Why is everyone so fixated on this? Haha

    @bioDan Not super old, not super recent, not a debug/test player. Not a ridiculously high level either (there are players as much as 4.5 times their level). No migrations have been performed on that particular table in recent history (apart from maybe adding a column, I believe?).

    Could be customer support, too, but player data edits should be logged, and I didn't see anything.

    I'll need to talk to that game's devs about their changes. But only one player affected? Cosmic ray modifying in-transit data. Best hypothesis.
  • 0
    @irene one word "legacy" lol
  • 1
    @Root because it is a fascinating case :)
  • 0
    @irene want me to find you an example of banking systems still running on much older legacy software? haha
  • 2
    Why is everyone red on this thread ?
  • 0
    @irene *raises hand*


    Though i have my reasons. Not good ones, but reasons.
  • 1
    @ViRaS new devrant feature "color ghettos", where we separate people of (avatar) color, wait.. sounds familiar - maybe the next step after hiding comments by an automated system? :)
  • 2
    @JoshBent You mean how Facebook hides comments under the pretext of "Most Relevant" ?
  • 0
    @ViRaS nah, if somebody abuses downvote reporting, your comments will be hidden from everybody else, it used to be that if you hardspam those that the system will voteban you, but apparently even that was too much of decency and effort.
Add Comment