Einer unserer Nutzer hatte 5 „Nice Reply"-Abzeichen (100 Beiträge geliked und 100 Likes vergeben). Anschließend haben wir einige Themen in eine private Kategorie verschoben, und nun besitzt er nur noch 3 Abzeichen. Es scheint, als würde die Abzeichenabfrage die Likes, die auf den verschobenen Themen gegeben oder erhalten wurden, nicht mehr zählen – vielleicht wegen der Verschiebung oder weil die Themen jetzt privat sind.
Beim Debuggen habe ich die Abzeichenabfrage in den Data Explorer kopiert:
select p.user_id, p.id post_id, current_timestamp granted_at
from badge_posts p
where p.post_number > 1
and p.like_count >= 10
Die obige Abfrage liefert für den Nutzer nur 3 Treffer, es sollten jedoch 5 sein. Mir ist aufgefallen, dass sie die Tabelle „badge_posts" verwendet. Ich kann die Tabelle „badge_posts" in der Baumansicht des Data Explorers nicht finden. Daher habe ich „badge_posts" in „posts" geändert, und dann werden erwartungsgemäß 5 Treffer zurückgegeben.
Woher kommt die Tabelle „badge_posts", und sollte die Abzeichenabfrage nicht stattdessen die Tabelle „posts" verwenden?