سيتم إغلاق هذا الموضوع بعد ثوانٍ قليلة من آخر رد

لدينا فئة تُنشأ فيها المواضيع بمؤقت افتراضي للمواضيع، يُغلق الموضوع بعد 6 أشهر.

image

بعد التحديث، لاحظت خطأً يعرض عبارة: “سيتم إغلاق هذا الموضوع بعد بضع ثوانٍ من آخر رد.”

image

عند الانتقال إلى أيقونة المفتاح → مؤقت الموضوع، تظهر نافذة منبثقة، وتُصحح الرسالة أدناه على الفور.

الجزء المقلق الآن: لا أرى هذه المشكلة في كل المواضيع. بعضها صحيح والبعض الآخر غير صحيح. كما أن بعض المواضيع المنشأة بعد التحديث تظهر فيها هذه المشكلة (لذا فهي على الأرجح ليست ناتجة عن الترحيل).

لحسن الحظ، لا يُظهر النظام سوى أنه سيتم إغلاق الموضوع خلال بضع ثوانٍ، بينما في الواقع تُغلق المواضيع وفق الجدول الزمني الصحيح (مثل 6 أشهر).

هل يمكنك تكرار هذه المشكلة؟ شكرًا مسبقًا!

إعجابَين (2)

أعتقد أن @martin يعمل حاليًا في هذا المجال؟ ما هي آراؤك؟

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

حسناً، هذا مثير للاهتمام أنه يُصلح نفسه عند فتح النافذة المنبثقة. سأقوم بفحص ذلك. أيضاً، لدي طلب دمج (PR) مفتوح لتقديم مكون مدة جديد؛ أنا سعيد لأنك فتحت هذه المشكلة لأنه الآن يمكنني أيضاً استبدال هذا:

بهذا:

لذا لن تضطر إلى إجراء حساب الساعات إلى الأشهر بنفسك.

4 إعجابات

لا أستطيع أن أبدو قادرًا على إعادة إنتاج هذه المشكلة بناءً على أحدث طلب سحب (PR): FEATURE: Relative time input for timers and bookmarks and promote auto-close after last post timer by martin-brennan · Pull Request #12063 · discourse/discourse · GitHub

هذا ما أراه عندما أنشئ موضوعًا جديدًا بنفس الإعدادات التي استخدمتها أنت:

ثم عندما أدخل إلى نافذة مؤقت الموضوع (لقد قمت بتغيير هذا قليلاً مع طلب السحب الجديد):

لذلك ربما تنتظر حتى يتم دمج أحدث تغيير لترى كيف تسير الأمور، وإذا لم تنجح، يمكنني التحقيق بشكل أعمق. سأعود بنشر تعليق هنا بمجرد دمجه.

إعجابَين (2)

تم دمج التغيير الموصوف أعلاه الآن وهو موجود في فرع اختباراتنا الناجحة.

إعجابَين (2)

شكرًا لك على وقتك!

لقد قمت ببعض التحقيقات الإضافية (لا يزال الأمر على f6e6ae5e24) ووجدت أن هذا السلوك الغريب يظهر فقط في المواضيع القديمة، لذا من المرجح أن يكون خطأ الترحيل هو السبب في النهاية.

العدادات القديمة المعيبة تحتوي على duration = 4320 و duration_minutes = NULL.
بينما العدادات الجديدة التي تعمل بشكل صحيح تحتوي على duration = NULL و duration_minutes = 259200.

أشتبه في أن أحد هذين التعديلين هو السبب:

FEATURE: Topic timer UI revamp (#11912) · discourse/discourse@6d72c8a · GitHub

FEATURE: Allow durations < 1 hour and < 1 day for topic timers where … · discourse/discourse@4af77f1 · GitHub

إعجابَين (2)

أرى الآن ما حدث، هذا خطأ مني. عملية الهجرة الأولية لم تكن صحيحة. تحتاج على الأقل إلى الترقية إلى FIX: Topic timer duration_minutes was not backfilled correctly (#12004) · discourse/discourse@18da1d5 · GitHub أو الإصدار الأحدث لحل هذه المشكلة (أو إذا لم تتمكن حقًا من الترقية، فقم بتشغيل استعلامات UPDATE في ما بعد الهجرة من الالتزام المرتبط).

3 إعجابات

رائع، شكرًا جزيلاً! سأقوم بالتحديث إلى الإصدار الأحدث في أقرب وقت ممكن..

إعجابَين (2)