t00thpick1
f4c53aaf8a
Prevent user purges and UUID updates from conflicting in mass database operations.
2014-08-04 11:42:02 -04:00
t00thpick1
fe29bb4b9f
Accurate purge count
2014-08-03 21:14:24 -04:00
t00thpick1
ae5347bc0f
Purging shouldn't be main thread, also we have no reason to refresh profiles of purged users, as old users aren't online, and powerless users have nothing to wipe.
2014-08-03 21:12:41 -04:00
t00thpick1
3569f9a182
Woot, rushing things without looking!
2014-08-03 20:40:48 -04:00
t00thpick1
70a23f8a0a
EnumMaps cannot use a null key
2014-08-03 20:39:37 -04:00
t00thpick1
857e12b96e
SQLDatabaseManager optimizations, async profile loading -t00thpick1, zreed
...
This commit changes our shared connection into a connection pool utility to prevent
thread locks from multiple actions attempting to access the database at the same time.
In additon, profile loading has been moved off the main thread at login time, to
allieviate the performance issues caused by it.
Fixes #2138 , Fixes #2119 , Fixes #1982 , Fixes #1953
2014-08-01 20:31:17 +02:00
TfT_02
c10525ada9
Add UUID support! - zreed, slipcor, t00thpick1
...
This commit updates our database managers to use UUIDs instead
of usernames for persistent storage.
Fixes #1979
2014-08-01 20:23:03 +02:00
zreed
48c7aa3e84
Add an UpgradeManager
2014-07-23 12:37:02 +02:00
TfT_02
0aa67727f5
Fixed bug with flatfile format updater
2014-07-12 14:02:53 +02:00
zreed
94a566acc9
Remove redundant maxReconnects database connection property
2014-07-09 19:03:15 +02:00
TfT_02
862d38b587
Clean up all of the imports
2014-03-03 18:27:45 +01:00
GJ
0056be2d5f
Assorted cleanup.
2014-02-28 08:36:42 -05:00
GJ
8deac175d1
Repair damaged user files. Fixes #1869
2014-02-22 09:52:36 -05:00
GJ
d0b766a2d3
Fixed bug with updating (very) old user data.
2014-02-21 11:38:22 -05:00
GJ
b3474c04c7
Increment SQL query numbers due to addition of Alchemy. Fixes #1803
...
Thanks to @roastnewt for the help!
2014-01-21 11:16:39 -08:00
GJ
43e2c813d1
Clean up some of our messes.
2014-01-20 13:58:40 -08:00
Eric Hildebrand
8f83e328b0
Introduction of new Alchemy skill!
2014-01-16 22:32:40 +01:00
GJ
3be443c63c
Cleanup some XP functions, remove unused scoreboard values, minor refactoring.
2013-10-29 09:49:41 -04:00
riking
95f15e68fe
New and Improved Scoreboard System
...
- Scoreboards now AUTO-UPDATE
- Scoreboards now COME IN COLOR
- If you want, they can come in EVERY COLOR (Config setting)
- Scoreboards can be displayed alongside chat output!
- Prevention of denial of service to SQL via spamming /mctop using a cooldown
- Added /mccooldown command to show cooldowns for all available skills
2013-10-25 09:49:02 -07:00
TfT_02
f4ff8518c2
Cleanup progress feedback
2013-10-18 16:43:37 +02:00
riking
dbd27b641e
Give periodic status messages to the console in conversion
2013-10-18 16:40:44 +02:00
TfT_02
3b09012b35
Also use getServer() here as well
2013-10-18 15:26:14 +02:00
GJ
468fbdab56
SkillUtils cleanup, EventUtils creation
...
Move some functions in SkillUtils to more relevant locations.
Begin work on utility class to handle all event calls.
2013-10-15 13:03:33 -04:00
riking
766f1f4127
Oh! So that's why it's never used here
2013-10-14 20:48:35 +02:00
riking
b3cf9bf839
When an error occurs updating the leaderboards, print out the current player name if possible
2013-10-14 09:53:42 -07:00
GJ
d8f3a54f9b
Compiler throws warnings all over the place about our close methods, this one is no different.
2013-10-07 07:56:13 -04:00
GJ
de964a3a60
This naming bothers me.
2013-10-07 07:53:42 -04:00
TfT_02
3f9c98d72e
Update changelog & minor formatting fixes
2013-10-06 10:25:28 +02:00
riking
96b54387fe
SQL database - split loadProfile to have retry flag
...
Instead of assuming that newUser() worked as intended, we cycle back around into the method.
This also removes the possibility of infinite loops from the writeMissingRows() code path.
2013-10-06 10:09:09 +02:00
riking
70eb67dd6a
Flatfile loadProfile - place newUser() inside of try block
...
This fixes incorrect behavior in the edge-case where an IOException occurs when reading (but not writing) the flatfile database.
2013-10-06 10:09:09 +02:00
riking
c9858dfd49
Do not mark a PlayerProfile as clean if it failed to save
...
DatabaseManager.saveUser() now returns a success value, which is used by PlayerProfile to determine whether or not it should be considered clean.
2013-10-06 10:09:09 +02:00
riking
f75fe3cc89
Potential fix for loss of data due to SQL connection dropping
...
The idea behind this change is to send a ping every hour, which is shorter than the driver's 'dead connection' threshold of 8 hours.
As a side effect, this also will fix a subset of the situations where the MySQL server is restarted.
2013-10-06 10:09:08 +02:00
TfT_02
4c96161acb
Don't throw errors about dropped columns
2013-09-20 21:39:20 +02:00
GJ
a8e23e08ee
Remove HudType from Flatfile records.
2013-09-18 11:54:23 -04:00
GJ
15f5dcf860
Removed HudType references from the database.
2013-09-18 09:57:28 -04:00
GJ
446b6c107b
Remove empty lines from FlatFile - the plugin will not enable if these are present.
2013-09-18 08:34:47 -04:00
TfT_02
7bac0e2ca5
Dropped SpoutPlugin support
...
Because SpoutPlugin is not being updated to 1.6.x and mcMMO 1.4.07 does
not support any CB version below 1.6.x SpoutPlugin support is no longer
needed.
https://blog.spout.org/minecraft-1-6-and-the-legacy-finale/
2013-09-16 16:48:42 +02:00
GJ
2c8b9334b6
THis should stay false.
2013-08-28 13:13:34 -04:00
GJ
d41ccf9072
Don't loop forever if not connected.
2013-08-28 13:12:24 -04:00
GJ
c98d298cf1
Actually make use of the checkConnected calls.
2013-08-28 11:44:58 -04:00
GJ
ede0757d83
Remove /mmoupdate and replace with /mcconvert database
2013-08-22 22:33:06 +02:00
GJ
223649ec28
Formatting and localizing.
2013-08-22 22:22:19 +02:00
GJ
98c6abad36
No reason to cast here.
2013-08-19 15:14:33 -04:00
TfT_02
90fcf35c34
Javadocs cleanup
2013-08-10 20:10:45 +02:00
TfT_02
37e3bfe7d9
Fixed formatting
2013-08-07 19:58:49 +02:00
riking
d61b837dcf
Implement checkStructure()
2013-08-07 19:49:00 +02:00
riking
f079e22789
Use provided last-saved information for purge.
...
The new method, OfflinePlayer.getLastPlayed(), is used as a backup for when the data is unparsable.
TODO check if StringUtils is available here
2013-08-07 19:45:27 +02:00
GJ
a345737b8b
Add more detailed error messages on SQL connection failure.
...
Fixes #1322
2013-07-30 15:09:22 -04:00
riking
736359056f
Add checkConnected() calls to re-establish dead SQL connections
2013-07-23 15:03:19 -07:00
GJ
68727496ad
Useless casting and elses.
2013-07-11 12:49:01 -04:00