Disinstallare un plugin su multisite

Questo è un caso limite non indifferente, potrebbe essere un bug e sono curioso di sapere se esiste una buona soluzione.
@sam ti taggo perché se qualcuno dovrebbe saperlo, probabilmente sei tu.

Considera un’installazione multisito.

  1. Il Forum A viene aggiunto al multisito
  2. Viene installato un plugin che modifica il database (ad esempio il plugin chat che aggiunge chat_enabled a user_options)
  3. Le migrazioni vengono eseguite e le colonne vengono aggiunte ad alcune tabelle del forum A
  4. Il plugin viene rimosso, le colonne rimarranno
  5. Il Forum B viene aggiunto al multisito
  6. Ora abbiamo il forum A e il forum B su un singolo multisito con definizioni di colonna diverse in user_options
  7. multisite:seed_fu incontra problemi (penso a causa della cache del modello ActiveRecord?)
#<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 Mi Piace

Sono abbastanza sicuro di aver riscontrato questo problema anche io quando ho recentemente provato ad aggiungere un nuovo sito a un multisite. Grazie per averlo spiegato.

1 Mi Piace

Sì, questo è un po’ un incubo, dovrai eseguire la pulizia manualmente qui.

È fondamentale avere la parità dello schema in tutte le configurazioni multisito.