misskey-dev / misskey

🌎 A completely free and open interplanetary microblogging platform 🚀
https://misskey-hub.net/
GNU Affero General Public License v3.0
9.95k stars 1.35k forks source link

削除したロールのアサイン通知が通知欄に残留していると通知が表示されなくなる #14499

Open hinanoaira opened 1 month ago

hinanoaira commented 1 month ago

💡 Summary

題名の通り。 通知にはロールIDが格納されているため、ロール名を解決するためにDBに読みに言っているが、 そのロールが削除されているとDBからNullが返ってくるため、例外が発生し通知に「エラーが発生しました」としか表示されなくなる。

🥰 Expected Behavior

ロール名を解決しにDBにアクセスしに行ったときに、Nullが返ってきたらその通知の処理をスキップさせる。 またはその通知を削除する。

🤬 Actual Behavior

ロール名を解決しにDBにアクセスしに行ったときに、Nullが返って来て例外が発生する。

📝 Steps to Reproduce

  1. パブリックなロールを作成する
  2. アサインする
  3. ロールを削除する

💻 Frontend Environment

* Model and OS of the device(s): Microsoft Windows 11 Pro ビルド22631
* Browser: Brave v1.69.162、Microsoft Edge 128.0.2739.63
* Server URL: misskey.hinasense.jp
* Misskey: 2024.8.0

🛰 Backend Environment (for server admin)

* Installation Method or Hosting Service: docker compose
* Misskey: 2024.8.0
* Node: 20.16.0
* PostgreSQL: 15.8
* Redis: 7.4.0
* OS and Architecture: Ubuntu 24.04.2 LTS Intel64

Do you want to address this bug yourself?