Fix #49: Flyway-Integration mit V1-Basisskript und 3-Fall-Strategie

Ersetzt die manuelle evolveTableColumns()-Schema-Evolution durch Flyway 10.20.1.
Die Initialisierung unterscheidet drei Faelle: leere DB (Flyway-Migration),
Bestandsschema ohne Flyway-History (Baseline nach Schema-Pruefung) und
Folgestart mit Flyway-History (idempotent). Smoke-Test-Deadlock auf Windows
durch paralleles Ausgabe-Draining des Subprozesses behoben.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-04-30 11:44:28 +02:00
parent 500a8c5340
commit 732d00c4ad
9 changed files with 1145 additions and 740 deletions
+7 -1
View File
@@ -36,6 +36,7 @@
<pdfbox.version>3.0.2</pdfbox.version>
<sqlite-jdbc.version>3.45.1.0</sqlite-jdbc.version>
<json.version>20240303</json.version>
<flyway.version>10.20.1</flyway.version>
<junit.version>5.10.2</junit.version>
<mockito.version>5.11.0</mockito.version>
@@ -77,12 +78,17 @@
<version>${pdfbox.version}</version>
</dependency>
<!-- Database -->
<!-- Datenbank -->
<dependency>
<groupId>org.xerial</groupId>
<artifactId>sqlite-jdbc</artifactId>
<version>${sqlite-jdbc.version}</version>
</dependency>
<dependency>
<groupId>org.flywaydb</groupId>
<artifactId>flyway-core</artifactId>
<version>${flyway.version}</version>
</dependency>
<!-- JSON -->
<dependency>