Skip to content
Snippets Groups Projects
Commit ef3c23d4 authored by kaniini's avatar kaniini
Browse files

Merge branch 'bugfix/migration-less_replies_count' into 'develop'

Revert awfully long migration from 568e3485

See merge request pleroma/pleroma!991
parents a71831d1 b2f3a40e
No related branches found
No related tags found
No related merge requests found
defmodule Pleroma.Repo.Migrations.UpdateStatusReplyCount do
use Ecto.Migration
@public "https://www.w3.org/ns/activitystreams#Public"
def up do
execute("""
WITH reply_count AS (
SELECT count(*) AS count, data->>'inReplyTo' AS ap_id
FROM objects
WHERE
data->>'inReplyTo' IS NOT NULL AND
data->>'type' = 'Note' AND (
data->'cc' ? '#{@public}' OR
data->'to' ? '#{@public}')
GROUP BY data->>'inReplyTo'
)
UPDATE objects AS o
SET "data" = jsonb_set(o.data, '{repliesCount}', reply_count.count::varchar::jsonb, true)
FROM reply_count
WHERE reply_count.ap_id = o.data->>'id';
""")
execute("""
WITH reply_count AS (SELECT
count(*) as count,
data->'object'->>'inReplyTo' AS ap_id
FROM
activities
WHERE
data->'object'->>'inReplyTo' IS NOT NULL AND
data->'object'->>'type' = 'Note' AND (
data->'object'->'cc' ? '#{@public}' OR
data->'object'->'to' ? '#{@public}')
GROUP BY
data->'object'->>'inReplyTo'
)
UPDATE activities AS a
SET "data" = jsonb_set(a.data, '{object, repliesCount}', reply_count.count::varchar::jsonb, true)
FROM reply_count
WHERE reply_count.ap_id = a.data->'object'->>'id';
""")
end
def down do
:noop
end
end
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment