logo

pleroma

My custom branche(s) on git.pleroma.social/pleroma/pleroma git clone https://hacktivis.me/git/pleroma.git
commit: aa51fd068bb8f02660ebb653d240b09eec502957
parent f9943b2065598d2154b400170d051656a0107518
Author: Pete <pete@debu.gs>
Date:   Fri,  6 May 2022 18:35:09 -0700

Add index hotspots

squash

Diffstat:

Apriv/repo/migrations/20220506175506_add_index_hotspots.exs17+++++++++++++++++
1 file changed, 17 insertions(+), 0 deletions(-)

diff --git a/priv/repo/migrations/20220506175506_add_index_hotspots.exs b/priv/repo/migrations/20220506175506_add_index_hotspots.exs @@ -0,0 +1,17 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2022 Pleroma Authors <https://pleroma.social/> +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.Repo.Migrations.AddIndexHotspots do + use Ecto.Migration + + def change do + # Stop inserts into activities from doing a full-table scan of users: + create_if_not_exists(index(:users, [:ap_id, "COALESCE(follower_address, '')"])) + + # Change two indexes and a filter recheck into one index scan: + create_if_not_exists(index(:following_relationships, [:follower_id, :state])) + + create_if_not_exists(index(:notifications, [:user_id, :seen])) + end +end