Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(backend): より多くの人に使われているハッシュタグが検索結果上位に来るように (#11498) #13318

Closed
wants to merge 2 commits into from

Conversation

okayurisotto
Copy link
Contributor

What

このPRではIssue #11498 を解決します。

/api/hashtags/searchでのハッシュタグの検索において、mentionedLocalUsersCountの降順ソートを行うようにしました。

Why

/api/hashtags/searchは投稿するノートのテキストを編集しているときに、ハッシュタグのサジェスト候補を取得するために使われるAPIです。現在のMisskeyではこの候補は正しい並び替えがされていないため、あまり使われていないハッシュタグがサジェスト候補上位に来てしまうというUX上の問題があります。

このPRでは、結果として得られるハッシュタグの配列が、そのハッシュタグを使用したローカルユーザーの数が多いものから順番に並ぶように変更しました。これにより上記の問題が解決します。

Additional info (optional)

これまでのコードにはcountというカラムで降順ソートをするように書かれていましたが、そのようなカラムは存在しないはずです。

この変更により、たくさんのハッシュタグがデータベースに登録されているような大規模なサーバーではパフォーマンスが問題になるかもしれません。(ただ、目当てのハッシュタグがサジェストされるまでにかかるAPI呼び出し回数は多くのシチュエーションで減るはずです。)

MiHashtagにはmentionedLocalUsersCountの他にmentionedUsersCount(ローカル・リモート問わずそのハッシュタグを使用したユーザーの数)やmentionedRemoteUsersCount(リモートユーザーのみ)といったカラムもあり、そちらで並び替えることもできますが、とりあえずローカルユーザーの数で並び替えるようにしてみました。

Checklist

  • Read the contribution guide
  • Test working in a local environment
  • (If needed) Add story of storybook
  • (If needed) Update CHANGELOG.md
  • (If possible) Add tests

@github-actions github-actions bot added the packages/backend Server side specific issue/PR label Feb 15, 2024
Copy link
Contributor

github-actions bot commented Feb 15, 2024

このPRによるapi.jsonの差分

差分はこちら

Get diff files from Workflow Page

Copy link

codecov bot commented Feb 15, 2024

Codecov Report

Attention: 1 lines in your changes are missing coverage. Please review.

Comparison is base (bb83ee8) 64.47% compared to head (f1de8ec) 64.48%.
Report is 1 commits behind head on develop.

Files Patch % Lines
...ackend/src/server/api/endpoints/hashtags/search.ts 0.00% 1 Missing ⚠️
Additional details and impacted files
@@             Coverage Diff             @@
##           develop   #13318      +/-   ##
===========================================
+ Coverage    64.47%   64.48%   +0.01%     
===========================================
  Files          980      980              
  Lines       109880   109880              
  Branches      5538     5592      +54     
===========================================
+ Hits         70847    70861      +14     
+ Misses       39001    37585    -1416     
- Partials        32     1434    +1402     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@okayurisotto okayurisotto deleted the branch misskey-dev:develop February 16, 2024 08:41
@okayurisotto okayurisotto deleted the develop branch February 16, 2024 08:41
@okayurisotto
Copy link
Contributor Author

手違いでokayurisotto/misskeyのdevelopブランチをマージしてもらうような形になってしまっていたのでPR作り直します。申し訳ありません。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
packages/backend Server side specific issue/PR
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant