2015-06-01 16 views
6

Come posso disabilitare la convalida del checksum in Liquibase?Liquibase - disabilita il checksum?

Sembra che Liquibase non fornisca tale funzionalità. Sarebbe difficile modificare Liquibase per ottenerlo? La tua opinione, per favore.

+0

Forse questo aiuta? http://stackoverflow.com/questions/9995747/liquibase-checksum-validation-error-without-any-changes – Marvin

+0

grazie, Marvin. quella soluzione funzionerebbe, ma integriamo Liquibase nelle nostre applicazioni Spring. quello che vogliamo fare è ignorare i checksum quando l'app viene distribuita su un server. in quel momento, non c'è Maven. – anton1980

+1

Perché dovresti disabilitare il checksum? Sono una funzionalità molto importante in liquibase progettata per proteggere dall'applicazione di un changeset più di una volta a un'istanza di database. Sì, viene fornito il comando clearCheckSums, ma questa è una funzionalità progettata per il ripristino da comportamenti anomali, ad esempio quando qualcuno cambia un changeset .... Vedi cosa intendo? normalmente un changeset non dovrebbe essere cambiato. Questo è un esempio di come l'uso di checksum protegge il database di produzione. –

risposta

10

Prova ad aggiungere validCheckSum alla parte superiore del vostro changeSet, in questo modo:

<changeSet> 
    <validCheckSum>ANY</validCheckSum> 
    <!-- the rest of your changeSet here --> 
</changeSet> 
+1

Dovrebbe essere il letterale 'ANY' o qualsiasi checksum è buono? – pcjuzer

+2

Deve essere il letterale ANY – chris

+0

questo funziona per Liquibase 3, ma non Liquibase 2. abbiamo posto questa domanda per Liquibase 2 e abbiamo finito con la modifica del codice per ottenere risultati simili. – anton1980