Deinstallation eines Plugins auf Multisite

Dies ist ein ziemlicher Grenzfall, möglicherweise ein Fehler, und ich bin neugierig, ob es dafür eine gute Lösung gibt.
@sam Ich markiere dich, denn wenn jemand es wissen sollte, dann bist du es wahrscheinlich.

Betrachten Sie eine Multisite-Installation.

  1. Forum A wird zur Multisite hinzugefügt
  2. Ein Plugin, das die Datenbank modifiziert, wird installiert (zum Beispiel das Chat-Plugin, das chat_enabled zu user_options hinzufügt)
  3. Migrationen werden ausgeführt und Spalten werden zu einigen Tabellen auf Forum A hinzugefügt
  4. Das Plugin wird entfernt, Spalten bleiben bestehen
  5. Forum B wird zur Multisite hinzugefügt
  6. Wir haben jetzt Forum A und Forum B in einer einzigen Multisite mit unterschiedlichen Spaltendefinitionen in user_options
  7. multisite:seed_fu gerät in Probleme (ich glaube wegen des Caching des ActiveRecord-Modells?)
#<ActiveRecord::StatementInvalid: PG::UndefinedColumn: ERROR:  column user_options.chat_enabled does not exist
LINE 1: ...lendar", "user_options"."oldest_search_log_date", "user_opti...
4 „Gefällt mir“

Ich bin ziemlich sicher, dass ich auch auf dieses Problem gestoßen bin, als ich kürzlich versucht habe, eine neue Website zu einer Multisite hinzuzufügen. Danke, dass Sie es so gut formuliert haben.

1 „Gefällt mir“

Ja, das ist ein Albtraum, Sie müssen hier eine manuelle Bereinigung durchführen.

Es ist entscheidend, dass in allen Multisite-Setups Schema-Parität besteht.