إدارة الإصدارات في N8n غير محافظة عليها

صف المشكلة/الخطأ/السؤال

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

ما رسالة الخطأ (إن وجدت)؟

يرجى مشاركة سير العمل الخاص بك

(حدد العقد على لوحتك واستخدم اختصارات لوحة المفاتيح CMD+C/CTRL+C و CMD+V/CTRL+V لنسخ ولصق سير العمل.)

شارك الإخراج الذي يتم إرجاعه بواسطة العقدة الأخيرة

معلومات عن إعداد n8n الخاص بك

  • إصدار n8n: 2.31.5
  • قاعدة البيانات (الافتراضي: SQLite): Postgres
  • إعداد n8n EXECUTIONS_PROCESS (الافتراضي: own, main):
  • تشغيل n8n عبر (Docker, npm, n8n cloud, تطبيق سطح المكتب): نعم، عبر Docker
  • نظام التشغيل: Linux

مرحباً @Abhinav_Jotiram_Shin، في أثناء انتظارك الرد، إليك بعض الأشياء التي قد تساعدك:

الموارد المقترحة

تم مطابقتها تلقائياً مع سؤالك.

التوثيق:

المنتدى:

@tamy.santos، @Niffzy - لقد ساعدتما في حل مشاكل مشابهة من قبل، هل يمكنكما إلقاء نظرة؟

اقتراح تلقائي من بوت المجتمع في n8n. وهي نسخة تجريبية - يرجى مشاركة ملاحظاتك هنا.

مرحباً @Abhinav_Jotiram_Shin

هل ينطبق أي من هذه؟

بناءً على المعلومات التي قدمتها، أفترض أنك تستخدم وضع الصفوف.

إذا كنت تستضيف n8n ذاتياً باستخدام EXECUTIONS_MODE=queue، فأعد تشغيل مثيل n8n الرئيسي وعمليات العمل لمسح حالات سير العمل المخزنة مؤقتاً في الذاكرة:

# إعادة تشغيل Docker Compose لـ n8n الرئيسي والعمال
docker compose restart n8n n8n-worker

ما واجهته يرجح أن يكون بسبب هذا:
المهام المدرجة بالفعل في Redis قبل النقر على “نشر” ستنتهي من التنفيذ باستخدام حمولة الإصدار الموجودة عند تفعيل المشغّل.

في n8n، حفظ سير العمل لا يحدّث تلقائياً الإصدار الإنتاجي النشط؛ يجب عليك نشره بشكل صريح.

إذا كنت قد نقرت بالفعل على “نشر” ولا يزال يقوم بتشغيل الإصدار القديم، فالسبب الأكثر شيوعاً هو تأخر التخزين المؤقت/النشر في وضع الصفوف أو عدم تنشيط مفتاح سير العمل​.

مرحبا @Abhinav_Jotiram_Shin أهلا وسهلا!
قم بتصدير ما يحتفظ به n8n فعليا كنسخة منشورة وقارنه مع محررك، وهذا سيحدد ما إذا كان النشر قد تم على الإطلاق:

docker exec -u node -it <your-n8n-container-name> n8n export:workflow --id=<WORKFLOW_ID> --published --output=/tmp/published.json

إذا كان هذا الملف يحتوي على التدفق القديم، فإن مؤشر النشر لم يتحرك من النسخة القديمة. انشر المسودة الحالية حسب المعرّف:

docker exec -u node -it <your-n8n-container-name> n8n publish:workflow --id=<WORKFLOW_ID>

كلا الأمرين يعملان مباشرة على قاعدة البيانات، لذا سيتم تطبيق التغيير عند بدء n8n التالي.