logo

pleroma

My custom branche(s) on git.pleroma.social/pleroma/pleroma git clone https://anongit.hacktivis.me/git/pleroma.git/
commit: 7328235c6430d22279a0ef836ee935746f07bb02
parent f25ef1aa7f4ba547c543eec0ec1c42d14f131d02
Author: lain <lain@soykaf.club>
Date:   Tue, 18 Mar 2025 08:33:09 +0000

Merge branch 'speed-improvement' into 'develop'

Migrations: Add activities_actor_type index

See merge request pleroma/pleroma!4341

Diffstat:

Achangelog.d/activity_type_index.change1+
Mconfig/config.exs2+-
Apriv/repo/migrations/20250314153704_add_activities_actor_type_index.exs14++++++++++++++
3 files changed, 16 insertions(+), 1 deletion(-)

diff --git a/changelog.d/activity_type_index.change b/changelog.d/activity_type_index.change @@ -0,0 +1 @@ +Add new activity actor/type index. Greatly speeds up retrieval of rare types (like "Listen") diff --git a/config/config.exs b/config/config.exs @@ -48,7 +48,7 @@ config :pleroma, ecto_repos: [Pleroma.Repo] config :pleroma, Pleroma.Repo, telemetry_event: [Pleroma.Repo.Instrumenter], - migration_lock: nil + migration_lock: :pg_advisory_lock config :pleroma, Pleroma.Captcha, enabled: true, diff --git a/priv/repo/migrations/20250314153704_add_activities_actor_type_index.exs b/priv/repo/migrations/20250314153704_add_activities_actor_type_index.exs @@ -0,0 +1,14 @@ +defmodule Pleroma.Repo.Migrations.AddActivitiesActorTypeIndex do + use Ecto.Migration + @disable_ddl_transaction true + + def change do + create( + index( + :activities, + ["actor", "(data ->> 'type'::text)", "id DESC NULLS LAST"], + concurrently: true + ) + ) + end +end