"ERROR: relation" مختلفة في السجلات: ما هي وهل يجب أن أهتم؟

لدي أخطاء متعددة مثل هذا في سجلات الأخطاء:

استثناء المهمة: 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 ((...

هل يجب أن أقلق بشأن ذلك؟

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

قد تحتاج إلى تنفيذ الأمر التالي:

rake db:migrate

كما قد تكون هناك مشكلة في قاعدة البيانات تمنع نجاح عملية الترحيل.

شكرًا لك، سأجرب ذلك :slight_smile:

نفّذت هذا الأمر، لكنه لم يُبدِ وكأنه يحل المشكلة.
ما فعلته: نفّذت الأمر، وأجريت نسخة احتياطية كاملة، ثم حاولت استعادة هذه النسخة (على نفس الخادم وخادم آخر).
في الواقع، تظهر رسائل الخطأ هذه أثناء عملية الاستعادة.

أجريت نسخة احتياطية وحاولت استعادتها: تتوقف سجلات الاستعادة في واجهة 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... ^

لذا… لست متأكدًا مما يجب علي فعله. تعمل المنتديات بعد هذه عمليات الاستعادة، لكن الأخطاء الناتجة عنها أثناء الاستعادة تثير مخاوفي.