Page MenuHomePhabricator

Phantom unread Phabricator notification
Open, LowPublicBUG REPORT

Description

Upstream: https://we.phorge.it/T16016; https://we.phorge.it/T16159

Noticed by @matmarex after T370266: Update to Phorge upstream 2024.35 release.

I have a "phantom" unread notification after the upgrade. The count is stuck at "(1)" even if I click on it, and displays nothing.

This used to be a common problem where I'd be subscribed to something I wasn't allowed to view, and I'd receive notifications which I wasn't allowed to view either, but a few years ago someone did something and those problems stopped.

https://phabricator.wikimedia.org/notification/query/unread/ :

phantom-notif.png (368×666 px, 20 KB)

Nothing happens when clicking "mark all read" under the notifications dropdown.

Event Timeline

I assume there is no output in the console of the web browser when you reload and click that notification?

Nothing. But I just clicked "Mark All Read" again to check, and the phantom went away… I swear it didn't work before.

Hmm. Looks like you're not the only one, per https://we.phorge.it/T16016 and https://we.phorge.it/T16159

Note to myself: Checking the user cache in the DB would be
SELECT uc.cacheKey, uc.cacheType, uc.cacheData FROM phabricator_user.user_cache uc INNER JOIN phabricator_user.user u ON uc.userPHID = u.phid WHERE u.userName = "SomeUserName" AND (uc.cacheType = "message.count" OR uc.cacheType = "notification.count");

Aklapper moved this task from Backlog to Upstreamed on the Phabricator (Upstream) board.
Aklapper moved this task from Backlog to Reported Upstream on the Upstream board.

I have a new phantom unread notification today, it appeared some time within the last few hours (it wasn't there in the morning). I clicked "Mark All Read" and it had no effect.

Yes you have. :D I'm still clueless how to debug this, though. :-/

mysql:phstats@m3-slave.eqiad.wmnet [phabricator_maniphest]> SELECT uc.cacheKey, uc.cacheType, uc.cacheData FROM phabricator_user.user_cache uc INNER JOIN phabricator_user.user u ON uc.userPHID = u.phid WHERE u.userName = "Matmarex" AND (uc.cacheType = "message.count" OR uc.cacheType = "notification.count");
+----------------------------+--------------------+-----------+
| cacheKey                   | cacheType          | cacheData |
+----------------------------+--------------------+-----------+
| user.message.count.v1      | message.count      | 0         |
| user.notification.count.v1 | notification.count | 1         |
+----------------------------+--------------------+-----------+

"Mark as read" worked for me yesterday for some reason after it didn't work on Friday, but when I just opened phabricator again, I noticed I have a new unread notification I can't mark as read:

image.png (214×509 px, 12 KB)

This is really weird.