NoMethodError: método `chat_sound' no definido con el chat desactivado

Voy a esperar para mover esto a Contribute > Bug, ya que se trata de una instalación no estándar, pero la imagen se construye con launcher (y luego se ejecuta con Fargate en ECS detrás de un balanceador de carga), por lo que parece que esto probablemente no se debe a la instalación. Dicho esto, hay muchas cosas extrañas en este sitio, pero pensé en reportarlo por si pudiera ser un problema para otros.

Al intentar iniciar sesión con un enlace de administrador, obtengo esto:

Started POST "/session/email-login/657e8390c8dec98db8cac2feaef96dcf" for 98.46.117.40 at 2022-11-08 18:46:08 +0000                                                                                                             
Processing by SessionController#email_login as */*                                                             
  Parameters: {"second_factor_method"=>"1", "timezone"=>"America/Chicago", "token"=>"657e8390c8dec98db8cac2feaef96dcf"}
Completed 500 Internal Server Error in 107ms (ActiveRecord: 0.0ms | Allocations: 18703)
NoMethodError (undefined method `chat_sound' for #<UserOption:0x00007f748870c1d8>)                                                                                                                                             
(eval):39:in `_fast_attributes'                                                                                                                                                                                                
lib/freedom_patches/ams_include_without_root.rb:57:in `include!'       
app/models/web_hook.rb:109:in `generate_payload'                                                               
app/models/web_hook.rb:63:in `enqueue_object_hooks'   
config/initializers/012-web_hook_events.rb:54:in `block (2 levels) in <main>'
lib/discourse_event.rb:14:in `block in trigger'
lib/discourse_event.rb:13:in `trigger'
app/models/email_token.rb:71:in `block in confirm'
app/models/email_token.rb:57:in `confirm'
app/controllers/session_controller.rb:373:in `email_login'
app/controllers/application_controller.rb:413:in `block in with_resolved_locale'
app/controllers/application_controller.rb:413:in `with_resolved_locale'
lib/middleware/omniauth_bypass_middleware.rb:71:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:368:in `call'
config/initializers/100-quiet_logger.rb:23:in `call'
config/initializers/100-silence_logger.rb:31:in `call'
lib/middleware/enforce_hostname.rb:23:in `call'
lib/middleware/request_tracker.rb:202:in `call'

Entré al contenedor y ejecuté cd /var/www/discourse/plugins;rm -rf chat; sv restart unicorn, y luego pude iniciar sesión.

Verifiqué que la base de datos había sido migrada (aunque tardó un poco antes de completarse la migración). También el plugin Retort estuvo instalado en algún momento (pero ya no lo está).

Chat estaba desactivado, por lo que parece que, si otra persona puede replicar esto, se trata de un error bastante grave, ya que la única forma de solucionarlo es modificar el contenedor en ejecución.

Acabo de construir esta imagen hace una hora o así. <meta name="generator" content="Discourse 2.9.0.beta11 - https://github.com/discourse/discourse version d2ea39c932ec3ec07cbb7362c64ff3fb97c54a4a">

Veo chat_sound en la tabla user_options. Y u.user_option.chat_sound devuelve nil cuando lo ejecuto desde rails (ah, pero eso es después de haber eliminado el plugin).

No he oído hablar de nada parecido. Quizás espere a otro informe antes de investigar esto.

Suena bien. Construiré y lanzaré una nueva imagen mañana y veré si puedo hacer que suceda de nuevo.

¡Gracias! ¡Eso sería útil!

Bueno, lo que sea que haya sido. Desapareció. :person_shrugging:

Empujé la misma imagen esta mañana y funcionó. Lo único que se me ocurre es que de alguna manera la base de datos no se migró por completo o algo así, pero se veía realmente mal durante unos minutos.

¡Gracias por revisar!

Habiendo llorado por otro lobo, era lo menos que podía hacer.

No te preocupes, también es posible que hayas encontrado algo real, hemos tenido errores en algunas migraciones en los últimos días, así que tal vez eso te haya estado causando problemas durante este período.