Update finch
[akkoma] / priv / repo / migrations / 20171109091239_add_actor_to_activity.exs
index c04922c7684d1b9bb19208d4f7a10b866ca852d5..91348f5c38f8c6d133a32437582d94dae0a30e25 100644 (file)
@@ -1,35 +1,21 @@
 defmodule Pleroma.Repo.Migrations.AddActorToActivity do
   use Ecto.Migration
 
-  alias Pleroma.{Repo, Activity}
-
   @disable_ddl_transaction true
 
   def up do
     alter table(:activities) do
-      add :actor, :string
+      add(:actor, :string)
     end
 
-    max = Repo.aggregate(Activity, :max, :id)
-    IO.puts("#{max} activities")
-    chunks = 0..(round(max / 10_000))
-
-    Enum.each(chunks, fn (i) ->
-      min = i * 10_000
-      max = min + 10_000
-      IO.puts("Updating #{min}")
-      execute """
-        update activities set actor = data->>'actor' where id > #{min} and id <= #{max};
-      """
-    end)
-
-    create index(:activities, [:actor, "id DESC NULLS LAST"], concurrently: true)
+    create(index(:activities, [:actor, "id DESC NULLS LAST"], concurrently: true))
   end
 
   def down do
-    drop index(:activities, [:actor, "id DESC NULLS LAST"])
+    drop_if_exists(index(:activities, [:actor, "id DESC NULLS LAST"]))
+
     alter table(:activities) do
-      remove :actor
+      remove(:actor)
     end
   end
 end