forked from AkkomaGang/akkoma
Co-authored-by: FloatingGhost <hannah@coffee-and-dreams.uk> Reviewed-on: AkkomaGang/akkoma#327
32 lines
811 B
Elixir
32 lines
811 B
Elixir
defmodule Pleroma.Workers.Cron.PruneDatabaseWorker do
|
|
@moduledoc """
|
|
The worker to prune old data from the database.
|
|
"""
|
|
require Logger
|
|
use Oban.Worker, queue: "database_prune"
|
|
|
|
alias Pleroma.Activity.Pruner, as: ActivityPruner
|
|
alias Pleroma.Object.Pruner, as: ObjectPruner
|
|
|
|
@impl Oban.Worker
|
|
def perform(_job) do
|
|
Logger.info("Pruning old data from the database")
|
|
|
|
Logger.info("Pruning old deletes")
|
|
ActivityPruner.prune_deletes()
|
|
|
|
Logger.info("Pruning old undos")
|
|
ActivityPruner.prune_undos()
|
|
|
|
Logger.info("Pruning old removes")
|
|
ActivityPruner.prune_removes()
|
|
|
|
Logger.info("Pruning old tombstone delivery entries")
|
|
ObjectPruner.prune_tombstoned_deliveries()
|
|
|
|
Logger.info("Pruning old tombstones")
|
|
ObjectPruner.prune_tombstones()
|
|
|
|
:ok
|
|
end
|
|
end
|