بسلسلة من الأحداث غير المحظوظة، يبدو أنني غير قادر على الاستعادة من أحدث نسخة احتياطية كاملة.
القصة كاملة ستُروى لاحقًا، لكن المشكلة التي أواجهها حاليًا هي أن عملية استعادة النسخة الاحتياطية تُظهر الخطأ التالي:
Migrating the database…
EXCEPTION: rake db:migrate
Failed to migrate database.
rake aborted!
StandardError: An error has occurred, this and all later migrations canceled: (StandardError)
PG::DuplicateTable: ERROR: relation "gamification_leaderboard_scores" already exists
يبدو أن هذه مشكلة تتعلق بالإضافات (plugins) الخاصة بي، لكنني أقدر مساعدتكم في فك شفرة السجلات (logs) للوصول إلى حل يسمح باستكمال عملية الاستعادة بنجاح.
على أي حال، هذا ما حدث:
في وقت سابق من اليوم، قمت بتحديث Discourse إلى الإصدار 2026.5.0-latest b0873d3ecd، مما أدخل بعض التغييرات الحرجة التي تسببت في توقف الموضوع الأساسي عن العمل. كان ينبغي عليّ التحقق من التوافق قبل التحديث.
في حالة من الذعر، ظننت أنني سأتمكن من الاستعادة من آخر نسخة احتياطية للعودة إلى إصدار Discourse متوافق مع الموضوع. قبل الاستعادة، قمت بأخذ نسخة احتياطية كاملة، معتقدًا أنه إذا حدث أي خطأ، سأمتلك أكبر عدد ممكن من نقاط الاستعادة.
حسنًا، حدث خطأ ما خلال أول عملية استعادة، وعاد Discourse للعمل دون آخر 15 يومًا من المحتوى. بعد البحث أكثر، وجدت موضوعًا على Meta اقترح إعادة تسمية ملف النسخة الاحتياطية من 2026-04-28-033449-v20260420014648.sql.gz إلى 2026-04-28-033449-v20260407093145.sql.gz. لست متأكدًا من سبب نجاح هذا الإجراء، لكنه على الأقل أعادني إلى نسخة احتياطية من أمس.
لا يزال عليّ استعادة النسخة الاحتياطية الكاملة الأخيرة التي تم أخذها هذا الصباح، وهي التي تظهر فيها الخطأ المذكور في الأعلى.