Für die Kurzfassung siehe
Nachtragen PostgresQL Runtime Pfad
- Rechtsklick auf das Windows Start-Symbol
- System
- suche nun erweiterte Systemeinstellungen. Je nach Windows-Version ist dies optisch an einem anderen Platz, aber immer unter System Info zu finden
- Umgebungsvariablen anklicken

- Suche nun im unteren Bereich (Systemvariablen) die Variable Path
und klicke auf “Bearbeiten”
Hier muss nun, abhängig von der verwendeten pgAdmin Version der Pfad auf die pgAdmin runtime eingetragen sein. Bei pgAdmin 4 V7 ist dies “c:\Program Files\pgAdmin 4\v7\runtime”. Bei pgAdmin 4 V8 ist dies “c:\Program Files\pgAdmin 4\runtime”.- Wenn alles eingetragen ist, beende zumindest den Umgebungsvariablen und den Systemeigenschaften Dialog.
- starte ein neues CMD-Fenster und gib psql (+ Enter) ein. Es muss die Abfrage des psql nach dem Benutzerpasswort kommen. Kommt eine Meldung mit *Der Befehl “psql” ist entweder falsch ….. *so ist deine Pfad-Definition falsch, womit auch der Serverstart nicht funktionieren wird.
Funktioniert dies, würde ich mit der oben beschriebenen Prüfung fortfahren.
Probleme / Lösungen
Nachfolgend eine Sammlung von bisher bekannten Problemen und deren Lösungen beim Updateprozess. Vom Grundgedanken her gelten diese Dinge für beide Betriebssysteme, auch wenn die Aufrufe und die erforderlichen Betriebssystemspezifischen Rechte durchaus unterschiedlich sein können.
Liquibase meldet Checksum Konflikt
Während des Liquibase Updates kommen Fehlermeldungen. Wie z.B.:
Starte Liquibase am 08:47:40 (Version 4.28.0 #2272, kompiliert am 2024-05-16 19:00+0000)
Liquibase Version: 4.28.0
Liquibase Open Source 4.28.0 by Liquibase
ERROR: Exception Details
ERROR: Exception Primary Class: ValidationFailedException
ERROR: Exception Primary Reason: Validierung war nicht erfolgreich:
Bei 1 ChangeSets stimmt die Prüfsumme nicht mehr mit der Historientabelle überein.
changelogs/0.1.1/punkt_ist_dezimaltrenner_parameter.xml::add-parameter::KSE was:
> 9:2e4dc472a79dcf110b919b796195b677 but is now: 9:ff143e7c43a38123ddfb731c38d613c9
Siehe dazu 
bzw.

Clear Checksums
run-liquibase.bat clear-checksums (für Linux ./liquibase.sh clear-checksums)
Um eventuell falsche Checksums zu löschen und damit weiter zu kommen.
Aufruf von LW:\kieselstein\dist\bootstrap\liquibase\ aus.
Siehe zusätzlich auch –help
Was macht das Clear Checksums, wann ist es erforderlich
Bei jedem Datenbankupdate wird über die Commandos der durchzuführenden Änderungen (z.B. LW:\kieselstein\dist\bootstrap\liquibase\changelogs\1.0.28) eine Checksumme gebildet. Diese Checksumme wird in der Änderungsprotokollierung (databasechangelog) eingetragen.
Werden nun nachträglich nach einem Datenbankupdate Änderungen an der Beschreibung / den Scripten für das Datenbankupdate durchgeführt, so ändert sich automatisch damit die Checksumme über die Dateien.
Damit wird erreicht, dass jegliche Änderung am Datenbankupdate erkannt wird. Dies dient vor allem zur Sicherheit, dass eben nachträgliche Änderungen erkannt werden. Ob diese Änderung nun tatsächlich durchzuführen ist, muss vom Updatenden entschieden werden.
Zusatzinfo:
Bis zu Version 1.0.28 wurde beim Clear Checksums falsche Werte zurückgeschrieben, womit in sehr wenigen Fällen falsche Fehlermeldungen entstanden sind.
Derzeit kann das Clear Checksums jederzeit durchgeführt werden.
Die Checksum in der Tabelle manuell richtig stellen
Ich habe dafür folgendes Script verwendet. Dieses ist sicherlich nicht vollständig und muss gegebenenfalls auf die aktuelle Situation angepasst werden. Die Vorgehensweise sollte damit aber klar sein.
ACHTUNG:
Ob diese Vorgehensweise die Konsistenz deiner Daten bzw. die Konsistenz deiner Datenbank zerstört, kann hier nicht geklärt werden. Achte auf die Inhalte der Liquibase Änderungsscripte. Es gilt dies auch für das Clear Checksums
– korrigieren der checksum der zwischenversion der 0.1.1
update databasechangelog set md5sum = ‘9:ff143e7c43a38123ddfb731c38d613c9’ where md5sum=‘9:2e4dc472a79dcf110b919b796195b677’;
update databasechangelog set md5sum = ‘9:ff143e7c43a38123ddfb731c38d613c9’ where md5sum=‘9:67af6ebc94a79ccc6073d7044b4fe2dc’;
Spalte ist bereits vorhanden
Es kommt beim Update eine Meldung, dass die Spalte xy bereits in der Datenbank eingetragen ist.
Wenn man sich sicher ist, dass in der Tabellen Spalte KEINE Einträge sind, kann man diese einfach löschen und danach das Update erneut ausführen.
Ist dem nicht so, so kann man das betreffende XML entsprechend auskommentieren. Die Update-XMLs, welche Versionsweise organisiert sind, findest du unter
LW:\kieselstein\dist\bootstrap\liquibase\changelogs\Versionsnummern
Hier das betreffende XML heraussuchen und z.B. die Extension mit .nix ergänzen. Danach das Update erneut ausführen.
Passend zu obiger Fehlermeldung:
LW:\kieselstein\dist\bootstrap\liquibase\changelogs\0.0.14\los_material_vollstaendig_parameter.xml