NoMethodError: طريقة `chat_sound` غير معرفة مع إيقاف تشغيل الدردشة

سأنتظر قبل نقل هذا إلى #contribute:bug، لأن التثبيت غير قياسي، لكن الصورة مبنية باستخدام launcher (ثم تُشغّل عبر Fargate في ECS خلف موازن حمل)، لذا يبدو أن المشكلة ليست بسبب التثبيت. ومع ذلك، هناك العديد من الأمور الغريبة في هذا الموقع، لكنني أردت الإبلاغ عنها في حال كانت قد تسبب مشاكل للآخرين.

عند محاولة تسجيل الدخول عبر رابط المسؤول، أواجه ما يلي:

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'

دخلت إلى الحاوية وقمت بتنفيذ الأمر cd /var/www/discourse/plugins;rm -rf chat; sv restart unicorn، ثم تمكنت من تسجيل الدخول.

تحققت من أن قاعدة البيانات قد تم ترحيلها (على الرغم من أنها استغرقت بعض الوقت قبل أن يتم ترحيلها). كما أن إضافة Retort كانت مُثبّتة هنا في وقت ما (لكنها لم تعد موجودة الآن).

كان الدردشة معطلاً، لذا يبدو أنه إذا تمكن شخص آخر من تكرار هذه المشكلة، فإنها تبدو كخطأ فادح، حيث أن الطريقة الوحيدة لإصلاحها هي تعديل الحاوية قيد التشغيل.

لقد بنيت هذه الصورة قبل ساعة تقريبًا. <meta name="generator" content="Discourse 2.9.0.beta11 - https://github.com/discourse/discourse version d2ea39c932ec3ec07cbb7362c64ff3fb97c54a4a">

أرى وجود chat_sound في جدول user_options. وعند تنفيذ u.user_option.chat_sound من داخل rails، فإن النتيجة هي nil (لكن هذا بعد أن قمت بإزالة الإضافة).

لم أسمع عن شيء كهذا. قد أرغب في انتظار تقرير آخر قبل التعمق في هذا.

يبدو صحيحًا. سأقوم ببناء وإطلاق صورة جديدة غدًا وأرى ما إذا كان بإمكاني تكرار ذلك.

شكرا! سيكون ذلك مفيدًا!

حسنًا، مهما كان الأمر. لقد اختفى. :person_shrugging:

لقد قمت بدفع نفس الصورة هذا الصباح وعملت بشكل جيد. كل ما يمكنني استنتاجه هو أن قاعدة البيانات لم تتم هجرتها بالكامل أو شيء من هذا القبيل، لكنها بدت سيئة حقًا لبضع دقائق.

شكرا على التحقق المزدوج!

بعد أن بكيت على ذئب آخر، كان هذا أقل ما يمكنني فعله.

لا تقلق، من الممكن أيضًا أن تكون قد واجهت شيئًا حقيقيًا، فقد واجهنا أخطاء في بعض عمليات الترحيل في الأيام الأخيرة، لذا ربما كان ذلك يسبب لك مشاكل خلال هذه الفترة.