meldestelle/docs/99_Journal/2026-04-22_ZNS_Sync_SQLDelight_Fix.md
StefanMoCoAt beb20e0cf7
Some checks failed
Desktop CI — Headless Tests & Build / Compose Desktop — Tests (headless) & Build (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., backend/infrastructure/gateway/Dockerfile, api-gateway, api-gateway) (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., backend/services/ping/Dockerfile, ping-service, ping-service) (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., config/docker/caddy/web-app/Dockerfile, web-app, web-app) (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., config/docker/keycloak/Dockerfile, keycloak, keycloak) (push) Has been cancelled
### feat: erweitere ZNS und SQLDelight-Integration
- **SQLDelight:** Füge neue Queries (`countVereine`, `maxUpdated...`) zur SQLite-Datenbank hinzu und aktualisiere `DesktopMasterdataRepository`.
- **ZNS-Sync:** Passe `ZnsImportState` an, um Pferde- und Funktionärsdaten zu unterstützen.
- **Cloud-Sync:** Entferne redundante Auth-Header und setze Limits für Massensynchronisation auf 50.000 Datensätze.
- **Masterdata-Service:** Stabilisiere Consul Health-Checks und implementiere Limit-Beschränkungen auf Controller-Ebene.
2026-04-22 14:14:39 +02:00

1.7 KiB

Session-Journal: 22. April 2026 - ZNS Sync & SQLDelight Bugfix

🎯 Status & Highlights

  • Kompilierungsfehler behoben: Fehlende Felder in ZnsImportState für Pferde und Funktionäre ergänzt.
  • SQLite-Stabilität: SQLDelight-Generierung erfolgreich abgeschlossen, alle statistischen Abfragen (countVereine, maxUpdated...) sind nun im DesktopMasterdataRepository verfügbar.
  • Sync-Vorbereitung: Die Desktop-App ist nun bereit, alle 70k+ Stammdaten-Sätze (Vereine, Reiter, Pferde, Funktionäre) synchronisiert und lokal in SQLite zu verwalten.

🛠️ Durchgeführte Änderungen

Frontend (Common & Desktop)

  • ZnsImportProvider.kt: ZnsImportState um remoteHorseResults und remoteFunktionaerResults erweitert, um den vollständigen Cloud-Sync-Status abzubilden.
  • MeldestelleDb.sq: Verifizierung der Queries für Statistiken (countVereine, maxUpdatedVerein etc.).
  • DesktopMasterdataRepository.kt: Manuelle Triggerung der SQLDelight-Generierung löst die Unresolved reference Probleme in der getStats() Methode.
  • Build-Logik: Verifizierung der Kompilierbarkeit des gesamten Desktop-Projekts.

🧐 QA & Verifizierung

  • Build: ./gradlew :frontend:shells:meldestelle-desktop:compileKotlinJvm ist BUILD SUCCESSFUL.
  • SQLDelight: generateSqlDelightInterface erfolgreich ausgeführt.

🚀 Next Steps

  1. Cloud-Sync Test: In der Desktop-App den Cloud-Sync erneut starten und prüfen, ob alle 21k Pferde und 48k Reiter korrekt in die SQLite-Tabellen fließen.
  2. Performance-Check: Validierung der Suchgeschwindigkeit im Veranstalter-Neu-Screen gegen die nun vollständig befüllte lokale Datenbank.

🏗️ [Lead Architect] | 🎨 [Frontend Expert] | 🧐 [QA Specialist]