عمود غير معرف 'boomarks.post_id' بعد التحديث

بعد تحديث تثبيت discourse الخاص بي من 2.9.0.beta9 إلى 2.9.0.beta11، تجمد التثبيت تمامًا حيث أن جميع استدعاءات سرد المواضيع تُرجع فجأة column bookmarks.post_id does not exist

لقد تعقبت الالتزام الذي أسقط هذا العمود إلى f8939bd294ff6822a61fb653b44a4df351321f54 الذي يسقط العمود من قاعدة البيانات. تحدث المشكلة أيضًا في الوضع الآمن لذلك لا أعتقد أن هناك إضافة هي السبب.

Stacktrace:

app/models/topic_list.rb:84:in `topics'
app/serializers/suggested_topics_mixin.rb:17:in `include_suggested_topics?'
(eval):6:in `_fast_attributes'
app/controllers/topics_controller.rb:1199:in `block (2 levels) in perform_show_response'
app/controllers/topics_controller.rb:1194:in `perform_show_response'
app/controllers/topics_controller.rb:169:in `show'
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:366: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'
Failed to handle exception in exception app middleware : ActiveRecord::StatementInvalid : PG::UndefinedColumn: ERROR:  column bookmarks.post_id does not exist
LINE 1: ...marks\".\"bookmarkable_type\" FROM \"bookmarks\" WHERE \"bookmarks...\n```
أي مساعدة ستكون موضع تقدير.
إعجاب واحد (1)

لقد قمت بإصلاح الأمر في الوقت الحالي عن طريق إعادة إضافة العمود إلى قاعدة البيانات ولكني أعتقد أنه يجب إصلاح السبب الجذري :grimacing:

يسعدني إسقاط العمود مرة أخرى إذا كنت بحاجة إلى مزيد من التشخيصات

إعجابَين (2)

أنا مرتبك للغاية، لقد تم تجاهل هذا العمود لفترة طويلة جدًا.

@martin كان بحاجة إلى إزالته، لم يعد شيئًا نستخدمه.

هل لديك إعداد مخصص؟ هل هناك أي إضافات خاصة متضمنة؟ هل كان الخطأ شيئًا “انتقاليًا” حدث عند تشغيل الترحيل؟ (أتوقع هذا الخطأ ربما أثناء التحديث المباشر من الواجهة الأمامية في ظروف استثنائية)

إعجاب واحد (1)

واجهت نفس المشكلة أثناء التحديث اليوم. أدت إضافة عمود post_id مرة أخرى إلى حل المشكلة.

الخطوات:

  1. الدخول إلى حاوية discourse
    ./launcher enter app
    
  2. الدخول إلى psql
    sudo -u postgres psql discourse
    
  3. إعادة إضافة عمود post_id في جدول bookmarks
    ALTER TABLE bookmarks ADD COLUMN post_id int;
    
إعجابَين (2)

أنا أستخدم إعداد Docker الافتراضي مع بعض الإضافات، ولكن يمكنني إعادة إنتاجه في الوضع الآمن. أيضًا، لا تحتوي تتبعات المكدس على أي إشارات واضحة للإضافات.

تم التحديث باستخدام إعادة بناء كاملة دون أي أخطاء أثناء الترحيل. حاولت أيضًا إعادة تشغيل عمليات الترحيل التي لم تبلغ عن أي تغييرات.

إعجاب واحد (1)

أنا مرتبك…

هل يمكنك المحاولة

  1. إزالة العمود مرة أخرى
  2. إعادة تشغيل الحاوية الخاصة بك ./launcher restart app

هل يستمر الخطأ؟

لا ينبغي إضافة العمود.

إعجاب واحد (1)

لقد حاولت بالفعل إعادة التشغيل عند مواجهة الخطأ لأول مرة. للتحقق فقط، قمت بذلك مرة أخرى ولا يزال الخطأ مستمراً. هل يمكن أن يكون مكون سمة هو السبب في المشاكل؟ كان مكون معاينة قائمة المواضيع أحد أوجه التشابه التي حددتها بين نسختنا و krita-artists.org المذكورة هنا: Oops. The software powering this discussion forum encountered an unexpected problem - #10 by raghukamath

إعجابَين (2)

من غير المرجح للغاية أن يؤدي مكون سمة إلى حدوث ذلك، ما هي القائمة الكاملة للمكونات الإضافية التي تستخدمها؟

هل تمانع في المحاولة مرة أخرى؟

إعجاب واحد (1)

لقد وجدت المشكلة :partying_face: لقد كانت مشكلة في المكون الإضافي بعد كل شيء :sweat_smile:
تم توزيع الإصدارات السابقة من Topic List Previews (TLP) كمكون إضافي ثم تم تقسيمها إلى مكون إضافي ومكون سمة. خلال هذا التقسيم الأولي، طُلب من المستخدمين تحميل المكون الإضافي من فرع جديد. ومع ذلك، مع مرور الوقت، تم التخلي عن الفرع ولم يعد تتم صيانته. بعد التبديل إلى الشوكة التي تتم صيانتها، تعمل كل الأشياء مرة أخرى.

6 إعجابات

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.