Continuando la discusión de ActiveRecord::RecordNotUnique en idx_tag_users_ix1: ¿Cómo solucionarlo?:
El error se reprodujo. Creo que estoy en camino de descifrar este error.
Pasos para reproducir
-
Cree una etiqueta #foo
-
Limite el uso de la etiqueta #foo al personal
-
Cree un grupo Bar
-
Asigne una notificación de “Seguimiento” de la etiqueta #foo para el grupo Bar
-
Haga que un usuario no privilegiado se una al grupo Bar
-
y cambie su notificación personal para #foo a “Normal”
-
El usuario no privilegiado no debería poder leer una página
Sospecho que esto es lo que está sucediendo, ya que le ocurrió dos veces a personas diferentes. El error es el siguiente: https://oxygen.offdem.net/logs/show/f70207d3affa8967932b9122d2be212b
Quizás el título es un poco limitante. Creo que tiene más que ver con la restricción de etiquetas a grupos y notificaciones personales.
Todos los usuarios nuevos ahora tienen una entrada duplicada que debe eliminarse de la consola:
r = TagUser.connection.execute("SELECT user_id, tag_id, count(*) FROM tag_users GROUP BY tag_id, user_id HAVING count(*) > 1")
r.values.each { |uid,tag,_| TagUser.where(user_id: uid, tag_id: tag).last.destroy }
No estoy seguro de estar haciendo la repro correctamente…
- Crear grupo de etiquetas
- Crear etiqueta
#staff-tag en el grupo de etiquetas
- Establecer ‘Las etiquetas son visibles para todos, pero solo los siguientes grupos pueden usarlas’ en
staff
- Crear grupo
- En
/manage/tags, añadir #staff-tag a Watching
- Añadir usuario de prueba (TL2) al grupo
- Confirmar que
#staff-tag está en Watching para el usuario de prueba en Preferencias/Seguimiento
- Navegar a
/tags/staff-tag y cambiar el icono de la campana a ‘Normal’
¿Todo parece funcionar?
No estoy seguro de este paso. Usé las notificaciones de grupo para añadir la etiqueta en las notificaciones de seguimiento para el grupo.
Quise decir esta página aquí:
Quizás abrevié demasiado el enlace: /g/GROUPNAME/manage/tags
¿O necesito intentarlo desde otro lugar?
No lo sé realmente. No puedo dedicarle mucho tiempo antes de OFFDEM. Por ahora, estoy ejecutando las solicitudes SQL para solucionar el problema de los nuevos usuarios a medida que llegan. Quizás pasé por alto algún detalle. Como… Todas las categorías están silenciadas por defecto, eso podría afectar las notificaciones.
Eso puede ser relevante. ¿Estás usando la configuración silenciar todas las categorías por defecto para eso?
1 me gusta
Sí, uso esta configuración.