From 9dc455494420fbdb2907bdbb2bf4463fa22fc28a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marius=20B=C4=82LTEANU?= Date: Sun, 22 Feb 2026 00:21:07 +0700 Subject: [PATCH] Add index to users login and optimize mention query to use the index (#43838). --- app/helpers/application_helper.rb | 4 ++-- db/migrate/20260221060647_add_index_to_users_login.rb | 5 +++++ 2 files changed, 7 insertions(+), 2 deletions(-) create mode 100644 db/migrate/20260221060647_add_index_to_users_login.rb diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index 5754855cc..c762761fa 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -1289,12 +1289,12 @@ module ApplicationHelper link = link_to_project(p, {:only_path => only_path}, :class => 'project') end when 'user' - u = User.visible.find_by("LOWER(login) = :s AND type = 'User'", :s => name.downcase) + u = User.visible.find_by(login: name.downcase) link = link_to_user(u, :only_path => only_path) if u end elsif sep == "@" name = remove_double_quotes(identifier) - u = User.visible.find_by("LOWER(login) = :s AND type = 'User'", :s => name.downcase) + u = User.visible.find_by(login: name.downcase) link = link_to_mention(u, obj, only_path: only_path) if u end end diff --git a/db/migrate/20260221060647_add_index_to_users_login.rb b/db/migrate/20260221060647_add_index_to_users_login.rb new file mode 100644 index 000000000..d0a754b63 --- /dev/null +++ b/db/migrate/20260221060647_add_index_to_users_login.rb @@ -0,0 +1,5 @@ +class AddIndexToUsersLogin < ActiveRecord::Migration[8.1] + def change + add_index :users, :login + end +end -- 2.50.1 (Apple Git-155)