Files
danbooru/app/logical/danbooru_maintenance.rb
evazion 950bc608c2 maintenance: add job to check for database corruption.
Add a job to run pg_amcheck hourly to check for corrupt database indexes.

https://www.postgresql.org/docs/14/app-pgamcheck.html
2021-10-06 08:08:52 -05:00

40 lines
841 B
Ruby

module DanbooruMaintenance
module_function
def hourly
queue PruneUploadsJob
queue PrunePostsJob
queue PruneRateLimitsJob
queue RegeneratePostCountsJob
queue AmcheckDatabaseJob
end
def daily
queue PruneDelayedJobsJob
queue PrunePostDisapprovalsJob
queue PruneBulkUpdateRequestsJob
queue PruneBansJob
queue BigqueryExportAllJob
queue VacuumDatabaseJob
end
def weekly
queue RetireTagRelationshipsJob
queue DmailInactiveApproversJob
end
def monthly
queue PruneApproversJob
end
def queue(job)
Rails.logger.level = :info
DanbooruLogger.info("Queueing #{job.name}")
ApplicationRecord.connection.verify!
job.perform_later
rescue Exception => e # rubocop:disable Lint/RescueException
DanbooruLogger.log(e)
raise e if Rails.env.test?
end
end