نفّذت هذا الأمر، لكنه لم يُبدِ وكأنه يحل المشكلة.
ما فعلته: نفّذت الأمر، وأجريت نسخة احتياطية كاملة، ثم حاولت استعادة هذه النسخة (على نفس الخادم وخادم آخر).
في الواقع، تظهر رسائل الخطأ هذه أثناء عملية الاستعادة.
أجريت نسخة احتياطية وحاولت استعادتها: تتوقف سجلات الاستعادة في واجهة Discourse عند مرحلة “فك الضغط”، ولكن بعد الانتظار قليلاً، يتم تسجيل خروجي وأصبح لدي نسخة مستعادة تعمل من المنتدى.
تظهر سجلات Discourse بعد ذلك هذه الأخطاء:
استثناء في المهمة: PG::UndefinedTable: خطأ: العلاقة "application_requests" غير موجودة строка 1: SELECT "application_requests"."id" FROM "application_request...
ActiveRecord::StatementInvalid (PG::UndefinedTable: خطأ: العلاقة "user_auth_tokens" غير موجودة строка 1: SELECT "user_auth_tokens".* FROM "user_auth_tokens" WHERE ((...
نفس الشيء حدث في بيئة Discourse التطويرية، مع عدد مختلف من الأخطاء والاستثناءات. المنتدى يعمل أيضًا.
لذلك استعدت (في بيئة Discourse التطويرية) نسخة سابقة من منتداي، تحتوي فقط على المستخدمين المستوردين.
لم تصل سجلات الأخطاء إلى خطوة “تمت الاستعادة بنجاح” أيضًا (توقفت قبل ذلك)، لكن تم تسجيل خروجي مرة أخرى بشكل صحيح، وأصبحت على نسخة Discourse تعمل. كانت الأخطاء أثناء الاستعادة مختلفة قليلاً:
استثناء في المهمة: PG::UndefinedTable: خطأ: العلاقة "topics" غير موجودة строка 1: UPDATE "topics" SET "pinned_at" = NULL, "pinned_globally" = ... ^
7:18 م
استثناء في المهمة: PG::UndefinedTable: خطأ: العلاقة "scheduler_stats" غير موجودة строка 1: UPDATE "scheduler_stats" SET "duration_ms" = 22741, "live_sl... ^
لذا… لست متأكدًا مما يجب علي فعله. تعمل المنتديات بعد هذه عمليات الاستعادة، لكن الأخطاء الناتجة عنها أثناء الاستعادة تثير مخاوفي.