Liquibase Doppelt überprüftes Sperrmuster? (Stellen Sie sicher, dass Liquibase keine Sperre erhält, wenn alles auf dem nJava

Java-Forum
Guest
 Liquibase Doppelt überprüftes Sperrmuster? (Stellen Sie sicher, dass Liquibase keine Sperre erhält, wenn alles auf dem n

Post by Guest »

Wenn eine Anwendung abstürzt (OOM / Stromausfall / Kill -9), nachdem liquibase eine Sperre erworben hat, die Sperre jedoch vor dem Aufheben der Sperre aufgehoben wurde, bleibt die Sperre für immer in der Tabelle „databasechangeloglock“ und wir müssen sie manuell entfernen it.
Ich frage mich, ob es möglich ist, die Anwendung mit liquibase dazu zu zwingen, Folgendes zu tun:
  • Überprüfen Sie, ob dies erforderlich ist Wenden Sie alle Änderungssätze an, OHNE sie zu übernehmen ein Schloss
  • Wenn ja, besorgen Sie sich das Schloss, überprüfen Sie die Notwendigkeit erneut und so weiter wie gewohnt. Wenn alles auf dem neuesten Stand ist, keine Sperre erwerben und mit dem Boot-Strap fortfahren.
Ich möchte, dass die Anwendung beschleunigt wird Bootstrap (wenn es keine neuen Migrationen gibt) und verringert die Wahrscheinlichkeit, dass die Sperre im Datenbank-Changeloglock hängen bleibt.
Derzeit erstelle ich nur eine liquibase.integration.spring.SpringLiquibase Frühlingsbohne. Ich gehe davon aus, dass ich eine benutzerdefinierte, knifflige @ConditionalOn...-Annotation erstellen muss

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post