Uno de nuestros usuarios tenía 5 insignias de “Respuesta agradable” (le dieron like a 100 publicaciones y dio 100 likes). Luego movimos algunos temas a una categoría privada, y ahora solo tiene 3 insignias. Parece que la consulta de insignias no está contando los likes dados o recibidos en los temas movidos, quizás porque se movieron o porque ahora son privados.
Al depurar esto, copié la consulta de insignias al Explorador de Datos:
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
La consulta anterior devuelve solo 3 coincidencias para el usuario, pero deberían ser 5. Noté que utiliza la tabla “badge_posts”. No puedo encontrar la tabla badge_posts en la vista de árbol del Explorador de Datos. Así que cambié “badge_posts” por “posts”, y luego devuelve 5 como se esperaba.
¿De dónde proviene la tabla “badge_posts” y no debería la consulta de insignias utilizar la tabla “posts” en su lugar?