إعادة نشر المشاركات تؤدي إلى ظهور خطأ 502 Bad Gateway

I’m trying to move ~100 posts to an existing topic.

After a delay of about 10 seconds, it says there was an error when moving posts in a green alert area:

No new entries in /logs

No useful information in console either:

What can be wrong and where to look for the error?

Yeah, what this probably means is that you tried to get Discourse to do so much work it had to time out the web worker (which happens after 30 seconds)

We should fix the underlying issue here, moving 100 posts really should not take that long and we can defer a bunch of the work.


Marking this as a performance bug

For now, the work-around would be to move by small portions?

Yes, absolutely. Your server is stretched anyway from what I can tell.

لقد واجهت للتو خطأ 502 عند محاولة نقل المنشورات من موضوع إلى آخر.

هذا الأمر متكرر للغاية :frowning:

كم عدد الأشخاص الذين كنت تنقلهم؟

يحدث ذلك عدة مرات في حالتنا مؤخرًا عند نقل منشور واحد إلى موضوع جديد.

لقد جربت عدة مجموعات تتراوح من المئات إلى العشرات في منشور واحد!
لا أستطيع العثور على السبب وراء عدم عملها أحيانًا بينما تعمل بشكل مثالي في أوقات أخرى.

تم التحديث إلى الإصدار 2.4.0.beta4 (cb8fa46970) لكن لا يزال هناك خطأ 502 عند نقل 1/5/10/50 رسالة.
هذا يعطل إجراءات الإدارة، لذا لا يمكنني ترتيب بعض الخيوط.

يعاني.

هل يمكن أن تساعد أي سجلات/إحصائيات/إعدادات؟

@gerhard هل هذا مشابه للمشكلة الأخرى التي أبلغ عنها @Pad_Pors؟

أرى نفس الشيء. لم أتمكن من العثور على أي شيء ذي صلة في السجلات، باستثناء هذا في /logs:

خطأ: لا يوجد سبب للجملة
الرابط: https://.no/assets/ember_jquery-d430881a3fb1403871256e5a02423c4b20a78793685e92088613ca9a701baf88.js

أخبرني إذا كان هناك طريقة أفضل لتصحيح هذا الخطأ.

تم إصلاح خطأ قد يظهر عند نقل منشورات إلى موضوع موجود تم تقسيمه في الماضي. هل هذا الإصلاح يحل المشكلة التي تواجهها؟


هل أنت متأكد من أن ذلك حدث عند النقل إلى موضوع جديد؟ إذا كان الأمر كذلك، فهذا خطأ مختلف عن الخطأ الذي أصلحته ولاحظته في سجلاتنا.

للأسف، لا تزال أخطاء 502 تظهر مع الإصلاح:

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

نعم، (قبل تحديث حديث) واجهنا مشكلة “502 bad gateway” عند محاولة نقل الردود إلى موضوع جديد (حدث ذلك بشكل عشوائي وليس دائمًا).

سأبلغ عما إذا كانت هذه المشكلة لا تزال تحدث.

أنا أواجه صعوبة في العثور على نمط، للأسف. يفشل الأمر عند نقل منشور واحد أو عدة منشورات. ومع ذلك، لدي شعور بأنه يفشل في الغالب عند النقل بين موضوعين كبيرين، ولدي الكثير منها. وقد تم تقسيم العديد منها عدة مرات. لم أستخدم الرسائل السرية أبدًا، لكن هناك العديد من المنشورات المحذوفة في معظم الموضوعات. لا توجد أخطاء واضحة في /logs :frowning:

تعديل: أعتقد أن المشكلة بدأت بعد الترقية إلى الإصدار التجريبي 5.

مرحبًا،

في https://community.hiveeyes.org/، واجهنا مؤخرًا نفس المشكلة عند نقل المنشورات بين المواضيع. ورغم أننا لم نجرِ تحقيقًا أعمق بعد،

إذا كان هذا مفيدًا: فقد كان الأمر يتعلق بمنشور واحد فقط [1] أردنا نقله من موضوع غير عام إلى موضوع عام، مما أدى إلى ظهور هذه الرسالة الخطأ. وبعد فشل العملية، قمنا بنسخ المنشور يدويًا.

مع خالص تحياتي،
أندرياس.

[1] Pycom Firmware Release 1.20.1 - #9 by clemens - Firmwareschmiede / Firmware development - Hiveeyes

حسنًا، يجب أن يكون خطأ 500 قد تم إصلاحه في أحدث إصدار، وقد قمت للتو بتسجيل إصلاح آخر بحيث يظهر الخطأ الفعلي في السجلات في حال وجود خطأ آخر هناك.

إذا حصلت على خطأ 502، فهذا يعني أن عملية النقل تستغرق وقتًا طويلاً وتنتهي بالانتهاء من الوقت المخصص. لقد قمت بإجراء العديد من التغييرات خلال الأشهر القليلة الماضية لنقل المزيد من البيانات الوصفية عند نقل المنشورات. لقد حاولت تحسين ذلك، لكنه يعتمد بشكل كبير على كمية البيانات وقد لا يزال يتطلب موارد كثيرة جدًا لبعض الخوادم لإنجاز جميع المهام في أقل من 30 ثانية.

الحل هو إعادة هيكلة هذه العملية مرة أخرى وتخزين معلومات حول المنشورات المنقولة بشكل دائم في قاعدة البيانات (بدلاً من جدول مؤقت) وإنجاز كل العمل الشاق في مهمة خلفية.

يبدو هذا صحيحًا، حيث يستغرق الطلب وقتًا طويلاً قبل أن يعطي خطأ 502 :slight_smile: