This should cause no change in behavior.
We had logic like this pseudocode:
```
unreadCount = db.countUnreadMessages()
messagesWithUnreadReactionsCount = db.countMessagesWithUnreadReactions()
if unreadCount == 0 && messagesWithUnreadReactionsCount == 0 {
// Avoid unnecessary writes.
return
}
db.markMessagesRead()
```
This optimization works but has two problems:
1. We don't actually need the count. We just need to know whether
anything exists.
2. If there are unread messages, we should do the cleanup regardless,
and we don't need to do the second check query.
Now the pseudocode looks like this:
```
if db.hasUnreadMessages() || db.hasMessagesToMarkRead() {
// Avoid unnecessary writes.
return
}
db.markMessagesRead()
```