Support:Database Cleanup

From Arianne
Revision as of 09:55, 17 March 2012 by imported>Hendrik Brummermann
Jump to navigation Jump to search

This article suggests methods to determine accounts and characters that are candidates for deletion.

Inconsistent data

Characters without rpobject

This was caused by a bug cause by storing gameEvents in an other thread before the database access was thread-safe. The bug was fixed in July 2009.

<source lang="sql"> SELECT * FROM characters WHERE NOT EXISTS (

   SELECT null FROM rpobject WHERE characters.object_id=rpobject.object_id

) ORDER BY timedate; </source>

Accounts without characters

<source lang="sql"> SELECT account.* FROM account WHERE NOT EXISTS (

   SELECT null FROM characters WHERE player_id=account.id

) AND status='active'; </source>

Metrics for discontinuted accounts

  • Must have no entries in gameEvents (2008-06-30, 2009-08-17), itemlog (2008-03-24), accountban
  • Remember to clean additional tables, character_stats, accountLink, ...
  • Criteria
    • Level < 5
    • Age < 5, if it exist
    • no valuable items
    • No other characters on that account that are not candidates Multi character support is younger than 2008-06-30.