2012-06-17 13 views
22

Ho iniziato una migrazione su Heroku la scorsa notte che non mi ha dato feedback per ore, e che alla fine ho interrotto perché non era chiaro se il sistema stesse facendo qualcosa.Heroku: trasferimento anomalo in corso

Da allora, è stato un incubo. Non riesco ad accedere alle tabelle del database rilevanti in heroku console, non riesco a migrare, eseguire il rollback o utilizzare pgbackups.

Utilmente, pgbackups mi ha dato una spiegazione di una riga solo ora:

a transfer is currently in progress 

Questa presumo sia la migrazione ho provato ad eseguire ore fa. Come posso arrestare qualunque cosa stia facendo Heroku in modo da poter eseguire un ripristino rapido e tornare attivo e funzionante?

+0

Potresti essere stato colpito dall'interruzione Amazon, che a sua volta ha causato un'interruzione di Heroku. Questo è successo circa 20 ore fa. Il 'riavvio di heroku 'è andato bene? –

+0

'riavvio heroku' non ha fatto nulla ho paura. Il mio problema è iniziato circa 8 ore fa, quindi non credo che Amazon sia correlato. – sscirrus

risposta

58

È possibile rimuovere il backup del problema bloccato nel "un trasferimento è attualmente in corso" trovando il nome del backup e quindi distruggendolo. Per esempio.

heroku pgbackups 

Il backup problema è stato elencato in questo modo:

b210 | 2013/01/02 12:29.33 | unknown | DATABASE_URL 

Quindi, per distruggerlo ho appena fatto:

heroku pgbackups:destroy b210 

rimosso il backup problema per me così ho potuto andare avanti con usando pgbackups di nuovo correttamente.

+0

Questa soluzione ha funzionato per me. Grazie! –

+0

Astuzia - Non credo che ci avrei pensato. Sembra che abbia sbloccato anche il mio problema. –

+0

Questo ha funzionato anche per me! Grazie! – Taytay

-1

Non è mai stato chiaro cosa è successo, dopo un giorno o giù di lì sono riuscito a interagire con heroku console, ma non sono mai riuscito a eseguire un'altra migrazione. Questo è quello che ho fatto:

  1. Ha rinominato la mia app in qualcos'altro.
  2. Creata una nuova app al suo posto, controllando che lo stack fosse lo stesso e copiando su tutti i componenti aggiuntivi e domini.
  3. Ho ripristinato il database da pgbackups (altamente consigliato se non si utilizza questo componente aggiuntivo).

Questo ha risolto il problema. Nota: Fare attenzione a controllare che il pgbackup non causi una perdita di dati inaccettabile.

+0

Dai un motivo per -1 per favore. – sscirrus

+1

Si prega di vedere la risposta "Will Tew" ... –

+0

Penso che la risposta di Will Tew sia la risposta corretta basata sul testo della domanda. La domanda riguardava l'interruzione di un cattivo trasferimento di pgbackups e il suo modo di risolvere il problema è molto più diretto. Prenderesti in considerazione la sua risposta come risposta corretta? –

1

Ho appena avuto questo problema. Trovato un modo più semplice di risolverlo - rimuovere brevemente l'addon pgbackups.

heroku addons:remove pgbackups 
heroku addons:add pgbackups 

ATTENZIONE come accennato nei commenti qui sotto, questo distruggerà tutti i backup esistenti!

+8

fai attenzione, perderai i backup se lo facessi. – Ross

+2

Questa è una risposta pericolosa! – Jesper

+0

Vero. Ho modificato la risposta per chiarire che si tratta di una procedura distruttiva. – micapam

2

Ho fatto un trasferimento accidentale dal mio database COLOR_URL al mio DATABASE_URL che era lo stesso database. heroku pgackups:transfer lasciate che questo accada che ha causato il database principale rimanere bloccati in

a transfer is currently in progress 

ho riparato guardando la lista dei processi pg:ps e uccidendo tutti i collegamenti pg:killall Dopo aver fatto questo e guardando pg:ps la lista dei processi era vuoto e io era libero di utilizzare nuovamente il database principale con pgbackups.

NOTA potrebbe essere un'operazione distruttiva, quindi assicurarsi di avere un'istantanea prima di eseguire questa operazione.

+0

Questo ha funzionato per me. FYI però: sembra che ci vorrà un po 'perché il processo muoia. – AlexQueue

0

La vera soluzione è contattare il supporto di Heroku e fare in modo che uccidano il processo per voi. Dicono che sono re-architecting pgbackups per dare agli utenti un maggiore controllo.