التعافي من ترقية فاشلة/تم تطبيقها جزئيًا

همم… :thinking: هذا غريب، لقد قمت بإعداد نسخة جديدة 2.9.0.beta2، الالتزام 5374e587a3،
… وأعدت البناء إلى أحدث نسخة 2.9.0.beta3 (الالتزام 6555f0c11b) دون أي مشكلة…

ربما كانت المشكلة في مكان ما قبل ذلك؟

أعتقد أن حذف المحتويات الإضافية يدويًا قد يكون هو الحل.

:weary: يجب أن أعترف بأنني لا أفهم تمامًا ما يحدث. هل أفترض بطريقة ما أن Nick يفتقد db/post_migrate/20220107014925_drop_bookmark_polymorphic_columns.rb بسبب هذا commit؟

هل كان هناك أي مخرجات لأوامر إسقاط العمود؟

لقد جربت الأوامر مرة أخرى وبعد ./launcher enter app أحصل على هذا الخطأ

Error response from daemon: Container 69b56d9734c3654d0b0e0661ff612c1020781191d3ec1d866e453747df03fcdf is not running

مشكلة جديدة؟

تمكنت من بدء التطبيق باستخدام sudo ./launcher enter app

هذا هو الإدخال الخاص بي:

root@discourseSwingrz:~# cd /var/discourse
root@discourseSwingrz:/var/discourse# ./launcher enter app
x86_64 arch detected.
Error response from daemon: Container 69b56d9734c3654d0b0e0661ff612c1020781191d3ec1d866e453747df03fcdf is not running
root@discourseSwingrz:/var/discourse# sudo ./launcher start app
x86_64 arch detected.

starting up existing container
+ /usr/bin/docker start app
app
root@discourseSwingrz:/var/discourse# cd /var/discourse
root@discourseSwingrz:/var/discourse# ./launcher enter app
x86_64 arch detected.
root@discourseSwingrz-app:/var/www/discourse# su - postgres
postgres@discourseSwingrz-app:~$ psql
psql (13.2 (Debian 13.2-1.pgdg100+1))
Type "help" for help.

postgres=# ALTER TABLE bookmarks 
postgres-# DROP COLUMN bookmarkable_id
postgres-# DROP COLUMN bookmarkable_type;
ERROR:  syntax error at or near "DROP"
LINE 3: DROP COLUMN bookmarkable_type;
        ^
postgres=# 

أقدر كل مساعدتكم يا رفاق :slight_smile:

لست متأكدًا مما إذا كنت أدخل رمز @pfaffman بشكل صحيح؟

هل يمكنك

  • عمل نسخة احتياطية :sweat_smile:
  • محاولة
ALTER TABLE bookmarks
DROP COLUMN bookmarkable_id;

مثل هذا؟

تم النسخ الاحتياطي.
الملف الناتج موجود في: /var/www/discourse/public/backups/default/swingrz-2022-04-03-101750-v20220316150247.tar.gz

root@discourseSwingrz-app:/var/www/discourse# ALTER TABLE bookmarks
bash: ALTER: command not found
root@discourseSwingrz-app:/var/www/discourse# su - postgres
postgres@discourseSwingrz-app:~$ psql
psql (13.2 (Debian 13.2-1.pgdg100+1))
Type "help" for help.

postgres=# ALTER TABLE bookmarks
postgres-# DROP COLUMN bookmarkable_id;
ERROR:  relation "bookmarks" does not exist
postgres=#

هل يمكنك تعديل ملف app.yml الخاص بك، وإلغاء التعليق عن سطر الإصدار (انتبه للمسافة البادئة) إلى
version: cd7ce52138bed391d5efc56366e7a6517a6079e7
وإعادة البناء

لا يمكنني العثور على سطر الإصدار، بن؟

 ## أي مراجعة Git يجب أن يستخدمها هذا الحاوية؟ (الافتراضي: tests-passed)
  #version: tests-passed

هل هذا هو؟

:+1:

ثم استبدل #version: tests-passed

بـ version: cd7ce52138bed391d5efc56366e7a6517a6079e7

ثم /var/discourse/launcher rebuild app

فقط أتأكد من أن هذا صحيح قبل أن أعيد البناء

  ## Which Git revision should this container use? (default: tests-passed)
  version: cd7ce52138bed391d5efc56366e7a6517a6079e7

هل يجب أن أترك مسافة بادئة له مرة أخرى؟

(beware of the indentation)

الآن يبدو الكود هكذا

## Which Git revision should this container use? (default: tests-passed)
   version: cd7ce52138bed391d5efc56366e7a6517a6079e7

إعادة بناء؟

لا، الأول جيد

شكرا لك يا بن

سأعيد البناء الآن

يجب أن يكون متوافقًا مع #

## أي مراجعة Git يجب أن يستخدمها هذا الحاوية؟ (الافتراضي: tests-passed)
version: cd7ce52138bed391d5efc56366e7a6517a6079e7

مثل الأول الخاص بك:

حسناً، لقد نجح الأمر! :grin:

شكراً جزيلاً على وقتك وجهدك في مساعدتي!

(يرجى إرسال رسالة خاصة لي حتى أتمكن من إرسال بعض المال لشراء القهوة أو البيرة لك)