defmodule Mix.Tasks.Pleroma.Database do
alias Pleroma.Conversation
alias Pleroma.Object
+ alias Pleroma.Maintenance
alias Pleroma.Repo
alias Pleroma.User
require Logger
)
if Keyword.get(options, :vacuum) do
- Logger.info("Runnning VACUUM FULL.")
-
- Logger.warn(
- "Re-packing your entire database may take a while and will consume extra disk space during the process."
- )
-
- Repo.query!(
- "vacuum full;",
- [],
- timeout: :infinity
- )
+ Maintenance.vacuum("full")
end
end
|> Repo.delete_all(timeout: :infinity)
if Keyword.get(options, :vacuum) do
- Logger.info("Runnning VACUUM FULL.")
-
- Logger.warn(
- "Re-packing your entire database may take a while and will consume extra disk space during the process."
- )
-
- Repo.query!(
- "vacuum full;",
- [],
- timeout: :infinity
- )
+ Maintenance.vacuum("full")
end
end
def run(["vacuum", args]) do
start_pleroma()
- case args do
- "analyze" ->
- Logger.info("Runnning VACUUM ANALYZE.")
-
- Repo.query!(
- "vacuum analyze;",
- [],
- timeout: :infinity
- )
-
- "full" ->
- Logger.info("Runnning VACUUM FULL.")
-
- Logger.warn(
- "Re-packing your entire database may take a while and will consume extra disk space during the process."
- )
-
- Repo.query!(
- "vacuum full;",
- [],
- timeout: :infinity
- )
-
- _ ->
- Logger.error("Error: invalid vacuum argument.")
- end
+ Maintenance.vacuum(args)
end
end
--- /dev/null
+# Pleroma: A lightweight social networking server
+# Copyright © 2017-2020 Pleroma Authors <https://pleroma.social/>
+# SPDX-License-Identifier: AGPL-3.0-only
+
+defmodule Pleroma.Maintenance do
+ alias Pleroma.Repo
+ require Logger
+
+ def vacuum(args) do
+ case args do
+ "analyze" ->
+ Logger.info("Runnning VACUUM ANALYZE.")
+
+ Repo.query!(
+ "vacuum analyze;",
+ [],
+ timeout: :infinity
+ )
+
+ "full" ->
+ Logger.info("Runnning VACUUM FULL.")
+
+ Logger.warn(
+ "Re-packing your entire database may take a while and will consume extra disk space during the process."
+ )
+
+ Repo.query!(
+ "vacuum full;",
+ [],
+ timeout: :infinity
+ )
+
+ _ ->
+ Logger.error("Error: invalid vacuum argument.")
+ end
+ end
+end