Pups::ExecError: cd /var/www/discourse & su discourse -c ‘bundle exec rake db:migrate’ fehlgeschlagen mit Rückgabe #<Process::Status: pid 1121 exit 1>
Standort des Fehlers: /usr/local/lib/ruby/gems/3.1.0/gems/pups-1.1.1/lib/pups/exec_command.rb:117:in `spawn’
exec fehlgeschlagen mit den Parametern {“cd”=>“$home”, “hook”=>“db_migrate”, “cmd”=>[“su discourse -c ‘bundle exec rake db:migrate’”]}
bootstrap fehlgeschlagen mit Exit-Code 1
Und beim Scrollen nach oben:
PG::DependentObjectsStillExist: FEHLER: kann die Spalte post_id der Tabelle bookmarks nicht löschen, da andere Objekte von ihr abhängen
DETAIL: Trigger bookmarks_polymorphic_data_sync auf der Tabelle bookmarks hängt von der Spalte post_id der Tabelle bookmarks ab
HINT: Verwenden Sie DROP … CASCADE, um auch die abhängigen Objekte zu löschen.
es ist normalerweise der Branch „tests-passed“…
Ich habe das Problem gelöst, indem ich den Trigger manuell gelöscht habe. Aber ich weiß nicht, ob das später ein Problem sein wird.
Leider gibt es bei einer frischen Installation von 3.0.0.beta16 keinen solchen Trigger in psql, den ich löschen könnte.
Dennoch schlägt das Wiederherstellen des Backups, das ich von einer 2.9.0.beta12 erstellt habe, mit demselben Fehler fehl.
FEHLER: Spalte post_id der Tabelle bookmarks kann nicht gelöscht werden, da andere Objekte von ihr abhängen
DETAIL: Trigger bookmarks_polymorphic_data_sync auf der Tabelle bookmarks hängt von der Spalte post_id der Tabelle bookmarks ab
EDIT:
Habe es jetzt - Trigger im Original gelöscht - das Aktualisieren und Wiederherstellen von Backups funktioniert wieder - danke für den Hinweis
Ich habe ein ähnliches Problem beim Upgrade von Discourse.
Verursacht durch:
PG::DependentObjectsStillExist: FEHLER: Spalte post_id der Tabelle bookmarks kann nicht gelöscht werden, da andere Objekte davon abhängen
DETAIL: Trigger bookmarks_polymorphic_data_sync auf der Tabelle bookmarks hängt von der Spalte post_id der Tabelle bookmarks ab
HINT: Verwenden Sie DROP ... CASCADE, um auch die abhängigen Objekte zu löschen.
Starten Sie die MySQL-Konsole in Ihrem Container über Ihr Terminal (ich gehe davon aus, dass es sich um Bash handelt): docker exec -i name_des_containers_mysql
In der MySQL-Konsole: use discourse; DROP TRIGGER bookmarks.bookmarks_polymorphic_data;
Verlassen Sie die Konsole mit exit
Danach sollte das Update-Skript die Spalte löschen können und die Dinge sollten reibungslos laufen – die Daumen sind gedrückt.