Hola a todos,
Estoy atascado con mi consulta SQL. Mi objetivo/expectativa es que debería otorgar una insignia personalizada específica inmediatamente cuando un usuario responde a un tema en particular. El caso es que estoy a medio camino porque el trabajo diario de “Relleno” (Backfill) tiene éxito, aunque el efecto más inmediato claramente no está funcionando.
Nuestro foro aprovecha la insignia para proporcionar acceso a otras categorías (con algo de ayuda del complemento de automatización), por lo que el retraso del final del día/relleno es bastante desorientador para los usuarios nuevos y definitivamente mata algo de impulso y entusiasmo al unirse.
He estado ignorando el problema durante un tiempo, pero estoy listo para rendirme y pedir ayuda.
Esencialmente, tomé la consulta de la excelente publicación Creación de consultas de insignias personalizadas activadas, por lo que probablemente le resultará bastante familiar a la mayoría de la gente.
SELECT p.user_id, p.id post_id, p.created_at granted_at
FROM badge_posts p
WHERE p.topic_id = 11558
AND (:backfill OR p.id IN (:post_ids) )
o también he probado
SELECT
DISTINCT ON (p.user_id)p.user_id, p.id post_id, p.created_at granted_at
FROM badge_posts p
WHERE p.topic_id = 11558
AND(:backfill OR p.id IN (:post_ids) )
Ambos funcionan para el relleno de fin de día, pero carecen de la inmediatez que espero.
Aquí hay una captura de pantalla de la configuración tal como está configurada actualmente en la insignia.
Cuando reviso los registros de errores, veo algunos registros de fallos de relleno de cuando implementé la consulta por primera vez, pero no veo ningún registro sobre la consulta que falle cuando un usuario publica.
Probablemente me estoy perdiendo algo obvio, pero me he esforzado tanto en mirarlo que espero que alguno de ustedes se apiade de mí y me dé algunas indicaciones… o al menos me señale alguna documentación útil.
¡Gracias de antemano!

