How to ensure all data is consistent


(Ballistic Tire) #1

After a few server issues, some of the data is out of sync. For example: topic_users.liked is not consistent with user_actions.

How to make sure they are consistent again?


(Ballistic Tire) #2

EnsureDbConsistency didn’t help

class EnsureDbConsistency < Jobs::Scheduled
every 12.hours

def execute(args)
  UserVisit.ensure_consistency!
  Group.ensure_consistency!
  Notification.ensure_consistency!
  UserAction.ensure_consistency!
  TopicFeaturedUsers.ensure_consistency!
  PostRevision.ensure_consistency!
  UserStat.ensure_consistency!(13.hours.ago)
  Topic.ensure_consistency!
  Badge.ensure_consistency!
  CategoryUser.ensure_consistency!
  UserOption.ensure_consistency!
end
end