Hola,
Estoy viendo un problema con la ventana modal “Mover a tema existente” (esto funcionaba anteriormente en mi sitio, por lo que parece ser una regresión):
- Escribir en Buscar un tema no refina los resultados
- Las solicitudes de red devuelven 200 con los parámetros correctos
- No hay errores de JS en la consola del navegador
- El
/searchde todo el sitio funciona como se espera - El problema ha persistido a través de reconstrucciones
Solicitud de ejemplo que se está realizando:
/search/query?term=Eve Park&type_filter=topic&search_for_id=true&restrict_to_archetype=regular
La lista de selección parece seguir siendo un conjunto estático de temas y no cambia a medida que cambia el
term.
Después de la depuración del lado del cliente, inicialmente sospeché que esto podría ser causado por que pg_trgm no estuviera habilitado en Postgres, pero quería confirmarlo antes de continuar.
Ejecuté los siguientes comandos:
./launcher enter app
rails c
ActiveRecord::Base.connection.execute(
"SELECT extname FROM pg_extension WHERE extname = 'pg_trgm';"
).to_a
Este diagnóstico sería válido si el comando devolviera:
[]
Sin embargo, en su lugar devolvió:
[{"extname"=>"pg_trgm"}]
Así que pg_trgm está habilitado, y este no parece ser la causa raíz.
Por lo tanto, tengo la intención de ejecutar el siguiente comando:
./launcher enter app
rake search:reindex
Esto podría ser relevante porque una categoría particular de mi foro tiene una gran cantidad de temas.
Lo que confunde es que:
- Discourse por lo demás sigue funcionando normalmente
- La búsqueda completa
/searchfunciona como se espera - El autocompletado de movimiento de temas degrada silenciosamente en lugar de advertir
Como parte de la depuración, también habilité la configuración search prefer recent posts (buscar preferir publicaciones recientes) y recargué el navegador. Esto no tuvo ningún efecto en el comportamiento: la búsqueda de “Mover a tema existente” todavía no refina los resultados mientras escribo.
Dado que esa configuración solo afecta la búsqueda completa /search y no el punto final del selector de temas, esto parece consistente con que el problema es específico de /search/query en lugar del rendimiento general de la búsqueda.
Antes de ejecutar rake search:reindex, quería verificar la lógica:
El selector de movimiento de temas utiliza /search/query con search_for_id=true, que depende más directamente de las búsquedas indexadas que el punto final /search completo. Por lo tanto, un índice de búsqueda parcialmente desactualizado o inconsistente podría afectar al selector mientras que la búsqueda completa parece seguir funcionando.
Dado que:
- se está llamando al punto final,
- las respuestas devuelven 200,
pg_trgmestá habilitado,- y alternar
search prefer recent postsno tiene efecto,
Un rake search:reindex completo parece ser el siguiente paso lógico para descartar la inconsistencia del índice. Por separado, la falta de cualquier advertencia o retroalimentación hace que esto sea particularmente confuso desde una perspectiva de UX de administrador.