Il mancato rispetto delle SKIP POST DEPLOYMENT MIGRATIONS causa problemi

Ho un’istanza multisito in cui un po’ di database non sono riusciti a migrare perché
PG::DuplicateColumn: ERROR: la colonna “bookmarkable_id” della relazione “bookmarks” esiste già
forse dovrei eliminare quella colonna da quella tabella in quei database?

sembra che sia stato perché le migrazioni precedenti non erano state eseguite a causa dell’impostazione di SKIP_POST_DEPLOYMENT_MIGRATIONS e le migrazioni precedenti non erano state completate.
Lo eliminerò quando confermerò che è vero…

1 Mi Piace

@martin hai qualche idea, forse correlata ai recenti refactoring?

2 Mi Piace

Mi dispiace per il falso allarme. Odio quando faccio queste cose.

Il problema era che avevo impostato SKIP_POST_DEPLOYMENT_MIGRATIONS: 1 e poi non avevo eseguito multisite:migrate. Dopo aver eseguito SKIP_POST_DEPLOYMENT_MIGRATIONS=- multisite:migrate, sono stato in grado di eseguire il bootstrap.

Ho solo bisogno di correggere i miei strumenti per multisite per eseguire la migrazione dopo aver avviato il nuovo container semi-migrato.

2 Mi Piace

Ma strano. Recovering from failed/partially applied upgrade sembra avere lo stesso problema e sembra essere un’installazione standard.

Avrei risposto a questo post, ma ho pensato che fosse lo stesso sintomo di un problema diverso. :slight_smile: Ammetto di non sapere abbastanza per confermare in un modo o nell’altro…

1 Mi Piace

Sembra essere correlato a DEV: Re-add polymorphic bookmark columns (#16261) · discourse/discourse@8040b95 · GitHub

Questo commit è una rifattorizzazione di 2f1ddadff7dd47f824070c8a3f633f00a27aacde
che abbiamo annullato perché ha causato un errore in un controllo CI interno. Ho esaminato
la questione e si è verificato perché la vecchia migrazione per aggiungere le colonne dei segnalibri
esisteva ancora, e tali colonne sono state eliminate in una post-migrazione,
quindi le due migrazioni per aggiungere le colonne erano in conflitto prima
che la post-migrazione venisse eseguita.

2 Mi Piace

Wow. Sembra che spieghi tutto.

Ci sono aggiornamenti in merito?

Anche il mio presenta lo stesso problema.

Come posso copiare questo git nel mio discourse?