hexlet-friends icon indicating copy to clipboard operation
hexlet-friends copied to clipboard

Bug: фильтр участников падает по таймауту

Open fey opened this issue 1 year ago • 4 comments

Ожидаемое поведение

https://friends.hexlet.io/contributors/ Выводится список, отфильтрованный по организации

Текущее поведение

Application error

Возможные решения

Проверить работу фильтра/генерации запросов к БД

Дейсвия по воспроизведению

Идем в https://friends.hexlet.io/contributors/ В организацию пишем hexlet и жмякаем отправить. Ждем и получаем ошибку

fey avatar Mar 04 '24 15:03 fey

Поиск по имени тоже долгий но рабочий https://friends.hexlet.io/contributors/?search=+fey&organizations=

fey avatar Mar 04 '24 15:03 fey

Я предлагаю во ВЬЮ, где используется этот фильтр , изменить запрос к БД. Заменить 'icontains' на 'iexact'. Сейчас из 7 организаций 6 начинаются на 'hexlet' и поиск, соотвественно, производится в 6 организациях (более 200 репозиториях). И насколько я понимаю мы можем убрать distinct из запроса. Ну и сделать это во всех вьюхах, где используется этот фильтр. Потому что в лидерборде фильтр тоже падает по таймауту, когда набираешь 'hexlet'.

alllexxx1 avatar Apr 06 '24 15:04 alllexxx1

@fey присылайте ПР. Если у нас фильтр будет не по совпадению, а по точному значению, то нужно будет в форме это указать, чтобы пользователь знал, как фильтр работает.

fey avatar Apr 08 '24 09:04 fey

@fey, посмотрите ПР?

alllexxx1 avatar Apr 17 '24 14:04 alllexxx1