niccholaspage / Fe

An economy plugin
17 stars 43 forks source link

Top-list shows duplications when players online #59

Closed theboomer closed 10 years ago

theboomer commented 10 years ago

Using version : 0.8-Snapshot-b51

/fe top command when no players are on shows two players listed, xodius94 and riverclanwarrior {There would be others, except on my server, the other 8 entries are server operational accounts, towny- nation/town account names. Please consider adding an exclusion-pattern or blacklist, or not listing accounts which dont have a uuid, etc}

If Xodius94 logs on, the /fe top now shows xodius94 and the balance and a second record Xodius94 and the same balance

When RiverClanWarrior logs on, the display shows riverclanwarrior and the balance and a second record RiverClanWarrior and the same balance

theboomer commented 10 years ago

A look at the code suggests this is due to caching, as you are loading in the top accounts from the cached list, so clearly the cached copy of the db must be using rows with all-lowercase names, and the propercase names, likely loading propercase name forms only when the player logs in. When the player logs out, the name disappears from the list, so you must be removing their proper entry from the cache from the temp cache as well, but it is still sticking with an original.

The question is why does the display use all-lowercase when the updated table with guids in them use propercase names as well, is it loading each record into a cache, using only lowercase forms, then adding players in propercase forms as they join?

Mysql database, caching on for now. Let me know if you need more info to clarify