From d8dd945a0319692b05370f16f289d8a231217ee6 Mon Sep 17 00:00:00 2001 From: lain Date: Mon, 11 May 2020 21:52:47 +0200 Subject: [PATCH] Markers migration: Fix migration for very large list of markers --- .../migrations/20200415181818_update_markers.exs | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/priv/repo/migrations/20200415181818_update_markers.exs b/priv/repo/migrations/20200415181818_update_markers.exs index 976363565..b7c611333 100644 --- a/priv/repo/migrations/20200415181818_update_markers.exs +++ b/priv/repo/migrations/20200415181818_update_markers.exs @@ -32,9 +32,13 @@ defmodule Pleroma.Repo.Migrations.UpdateMarkers do |> Map.put_new(:updated_at, now) end) - Repo.insert_all("markers", markers_attrs, - on_conflict: {:replace, [:last_read_id]}, - conflict_target: [:user_id, :timeline] - ) + markers_attrs + |> Enum.chunk(1000) + |> Enum.each(fn marker_attrs -> + Repo.insert_all("markers", markers_attrs, + on_conflict: {:replace, [:last_read_id]}, + conflict_target: [:user_id, :timeline] + ) + end) end end