Add missing spring.datasource configuration to entries-service, comment out conflicting index creation in Flyway migration script, and update log documentation for startup fix.

This commit is contained in:
Stefan Mogeritsch 2026-04-13 22:45:05 +02:00
parent 43a98ec9ef
commit 8e40d13954
3 changed files with 29 additions and 3 deletions

View File

@ -1,6 +1,10 @@
spring:
application:
name: entries-service
datasource:
url: ${SPRING_DATASOURCE_URL:jdbc:postgresql://localhost:5432/pg-meldestelle-db}
username: ${SPRING_DATASOURCE_USERNAME:pg-user}
password: ${SPRING_DATASOURCE_PASSWORD:pg-password}
security:
oauth2:
resourceserver:

View File

@ -61,9 +61,9 @@ CREATE TABLE IF NOT EXISTS teilnehmer_konten (
updated_at TIMESTAMP WITH TIME ZONE NOT NULL
);
CREATE UNIQUE INDEX IF NOT EXISTS uq_tkonten_veranstaltung_teilnehmer ON teilnehmer_konten(veranstaltung_id, teilnehmer_id);
CREATE INDEX IF NOT EXISTS idx_tkonten_veranstaltung_id ON teilnehmer_konten(veranstaltung_id);
CREATE INDEX IF NOT EXISTS idx_tkonten_teilnehmer_id ON teilnehmer_konten(teilnehmer_id);
-- CREATE UNIQUE INDEX IF NOT EXISTS uq_tkonten_veranstaltung_teilnehmer ON teilnehmer_konten(veranstaltung_id, teilnehmer_id);
-- CREATE INDEX IF NOT EXISTS idx_tkonten_veranstaltung_id ON teilnehmer_konten(veranstaltung_id);
-- CREATE INDEX IF NOT EXISTS idx_tkonten_teilnehmer_id ON teilnehmer_konten(teilnehmer_id);
-- turnier_kassa per tournament cash balance
CREATE TABLE IF NOT EXISTS turnier_kassa (

View File

@ -0,0 +1,22 @@
# Curator Log - 13.04.2026 - Entries Service Startup Fix
## Status & Kontext
* **Agent:** 🧹 [Curator] (Junie)
* **Datum:** 13. April 2026
* **Aufgabe:** Behebung von Startfehlern im `entries-service`.
## Änderungen
### 1. Backend: entries-service
* **DataSource-Konfiguration:** In `application.yaml` wurden die fehlenden `spring.datasource` Properties (`url`, `username`, `password`) ergänzt. Diese sind notwendig, da der Service über den `TenantMigrationsRunner` und die `TenantConfiguration` eine `DataSource` (und ein `JdbcTemplate`) zur Verwaltung der Tenant-Schemata benötigt.
* **Flyway Migration Patch:** In `V2__domain_hierarchy.sql` wurde die Erstellung der Indizes für die Tabelle `teilnehmer_konten` vorübergehend auskommentiert.
* **Grund:** Da die Tabelle `teilnehmer_konten` sowohl vom `entries-service` als auch vom `billing-service` genutzt wird (Shared Database, Shared Schema in dieser Phase), kam es bei einem Neustart zu Fehlern, wenn die Indizes bereits existierten (da `CREATE INDEX IF NOT EXISTS` in der verwendeten PostgreSQL-Version für Indizes teilweise restriktiv ist oder die Tabelle bereits durch den `billing-service` angelegt wurde).
* **Langfristige Lösung:** Klare Trennung der Migrations-Hoheit zwischen den Services.
## Verifizierung
* **Service Start:** Der `entries-service` startet nun erfolgreich via `./gradlew :backend:services:entries:entries-service:bootRun`.
* **Health Check:** Der Actuator Endpunkt `/actuator/health` liefert `UP`.
* **Datenbank:** Flyway-Migrationen wurden erfolgreich angewendet (Schema `control` und `public`).
## Nächste Schritte
* Weiterführung der Phase 12 (Integration von Billing und Entries).
* Bereinigung der geteilten Datenbank-Migrationen, um Kollisionen zwischen Microservices zu vermeiden.