Recientemente cambié la configuración del sitio para el/los grupo(s) que pueden usar Discourse Assign. Algo salió terriblemente mal al pulsar el botón de actualizar; el sitio entero se cayó.
Desde entonces he desactivado Discourse Assign, lo que ha permitido que el sitio vuelva a estar en línea, pero no logro que Discourse Assign funcione de nuevo. Cuando lo vuelvo a activar, el sitio se cae y no puedo cambiar la configuración del sitio para el plugin Discourse Assign.
Estoy revisando los registros de error; hay dos:
ActiveRecord::StatementInvalid (PG::InvalidTextRepresentation: ERROR: sintaxis de entrada no válida para entero: "patently-staff"
LINE 1: ...RE "group_users"."user_id" = 1 AND (groups.id in ('patently-...
^
: SELECT 1 AS one FROM "groups" INNER JOIN "group_users" ON "groups"."id" = "group_users"."group_id" WHERE "group_users"."user_id" = 1 AND (groups.id in ('patently-staff')) LIMIT 1)
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/rack-mini-profiler-1.0.2/lib/patches/db/pg.rb:69:in `async_exec_params'
Y:
Failed to handle exception in exception app middleware : PG::InvalidTextRepresentation: ERROR: sintaxis de entrada no válida para entero: "patently-staff"
LINE 1: ...RE "group_users"."user_id" = 1 AND (groups.id in ('patently-...
^
: SELECT 1 AS one FROM "groups" INNER JOIN "group_users" ON "groups"."id" = "group_users"."group_id" WHERE "group_users"."user_id" = 1 AND (groups.id in ('patently-staff')) LIMIT 1
¿Está el plugin discourse-assign actualizado en tu instancia? ¿O tal vez hiciste un fork del plugin hace un tiempo? Hubo un cambio en el plugin discourse-assign en julio que parece relevante para los errores que estás viendo.
Vale, entiendo. ¿Cambió la configuración antes o después de actualizar a beta4?
Parece que nuestra migración automática no logró actualizar su configuración por alguna razón; voy a investigar por qué ocurrió esto. ¿Probó reiniciar el servidor antes de habilitar el plugin, por si acaso el valor antiguo podría haberse almacenado en caché? Avíseme si esto no funciona y le proporcionaré un script en Ruby para solucionar el problema manualmente.
Sucedió antes de que yo actualizara. Algo extraño ocurrió cuando añadí la nueva configuración; creo que pulsé la marca de verificación verde antes de “añadir” el nuevo nombre de grupo.
No estoy seguro de cómo hacerlo (por cierto, es posible que me haya expresado mal al decir “desactivado/activado” en mi mensaje original: lo que quise decir fue que comenté la URL de git clone en el archivo app.yml para añadir el plugin). Cuando añado el plugin en el archivo yml, el sitio se bloquea inmediatamente (y antes estaba habilitado), así que no puedo entrar y luego configurarlo como desactivado… a menos que haya malinterpretado su mensaje?
Es muy probable que sea necesario; lo agradecería mucho.
La respuesta a la consulta DB.query es:
=> [“staff”]
pero “Group.where(name: ‘staff’).pluck(:id).join(‘|’)” devuelve “”.
Por cierto: En la versión “2.4.0.beta1 +203” las respuestas son similares, pero el inicio de sesión mediante LDAP es posible. (versión de LDAP 0.4.0, versión de assign 0.1).