Add a task to re-count statuses for all users

This commit is contained in:
Egor Kislitsyn 2019-10-09 13:11:57 +07:00
commit d537bfd4e1
No known key found for this signature in database
GPG key ID: 1B49CB15B71E7805
3 changed files with 62 additions and 0 deletions

View file

@ -0,0 +1,22 @@
defmodule Mix.Tasks.Pleroma.CountStatuses do
@shortdoc "Re-counts statuses for all users"
use Mix.Task
alias Pleroma.User
import Ecto.Query
def run([]) do
Mix.Pleroma.start_pleroma()
stream =
User
|> where(local: true)
|> Pleroma.Repo.stream()
Pleroma.Repo.transaction(fn ->
Enum.each(stream, &User.update_note_count/1)
end)
Mix.Pleroma.shell_info("Done")
end
end