From 2012c5ae5045be5ecfb888457c0857321b2e10c7 Mon Sep 17 00:00:00 2001 From: ThibG Date: Sat, 9 Jan 2021 03:51:32 +0100 Subject: [PATCH] Fix maintenance script not re-indexing some indexes on textual values (#15515) * Fix maintenance script not re-indexing some indexes on textual values Fixes #15475 * Refresh instance view at the end of the maintenance script run Co-authored-by: Claire --- lib/mastodon/maintenance_cli.rb | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/lib/mastodon/maintenance_cli.rb b/lib/mastodon/maintenance_cli.rb index 2c0f210c8f..9f1eaf263a 100644 --- a/lib/mastodon/maintenance_cli.rb +++ b/lib/mastodon/maintenance_cli.rb @@ -160,6 +160,7 @@ module Mastodon deduplicate_tags! deduplicate_webauthn_credentials! + Scenic.database.refresh_materialized_view('instances', concurrently: true, cascade: false) if ActiveRecord::Migrator.current_version >= 2020_12_06_004238 Rails.cache.clear @prompt.say 'Finished!' @@ -188,6 +189,11 @@ module Mastodon else ActiveRecord::Base.connection.add_index :accounts, "lower (username), COALESCE(lower(domain), '')", name: 'index_accounts_on_username_and_domain_lower', unique: true end + + @prompt.say 'Reindexing textual indexes on accounts…' + ActiveRecord::Base.connection.execute('REINDEX INDEX search_index;') + ActiveRecord::Base.connection.execute('REINDEX INDEX index_accounts_on_uri;') + ActiveRecord::Base.connection.execute('REINDEX INDEX index_accounts_on_url;') end def deduplicate_users!