diff options
author | Roger Braun <rbraun@Bobble.local> | 2017-11-09 13:32:53 +0100 |
---|---|---|
committer | Roger Braun <rbraun@Bobble.local> | 2017-11-09 13:32:53 +0100 |
commit | 6bf261589f736c8bfd9eb10b230e56d857cbaa3c (patch) | |
tree | b5542d001183fe6d277f0cf4d7c9218ae3ea4cb9 | |
parent | 20b8b8774345d07537687ad5dd2fdb6f809e684f (diff) | |
download | pleroma-6bf261589f736c8bfd9eb10b230e56d857cbaa3c.tar.gz pleroma-6bf261589f736c8bfd9eb10b230e56d857cbaa3c.zip |
Update activities in own migration.
-rw-r--r-- | priv/repo/migrations/20171109091239_add_actor_to_activity.exs | 15 | ||||
-rw-r--r-- | priv/repo/migrations/20171109114020_fill_actor_field.exs | 25 |
2 files changed, 25 insertions, 15 deletions
diff --git a/priv/repo/migrations/20171109091239_add_actor_to_activity.exs b/priv/repo/migrations/20171109091239_add_actor_to_activity.exs index c04922c76..2d8b60a91 100644 --- a/priv/repo/migrations/20171109091239_add_actor_to_activity.exs +++ b/priv/repo/migrations/20171109091239_add_actor_to_activity.exs @@ -1,8 +1,6 @@ defmodule Pleroma.Repo.Migrations.AddActorToActivity do use Ecto.Migration - alias Pleroma.{Repo, Activity} - @disable_ddl_transaction true def up do @@ -10,19 +8,6 @@ defmodule Pleroma.Repo.Migrations.AddActorToActivity do 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) end diff --git a/priv/repo/migrations/20171109114020_fill_actor_field.exs b/priv/repo/migrations/20171109114020_fill_actor_field.exs new file mode 100644 index 000000000..d4ac601da --- /dev/null +++ b/priv/repo/migrations/20171109114020_fill_actor_field.exs @@ -0,0 +1,25 @@ +defmodule Pleroma.Repo.Migrations.FillActorField do + use Ecto.Migration + + alias Pleroma.{Repo, Activity} + + def up do + 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}; + """) + |> IO.inspect + end) + end + + def down do + end +end + |