Room: fallbackToDestructiveMigration entfernen #71

Closed
opened 2026-05-16 23:42:14 +00:00 by jreinemann-euris · 1 comment
jreinemann-euris commented 2026-05-16 23:42:14 +00:00 (Migrated from github.com)

Problem

Die Room-Datenbank verwendet aktuell fallbackToDestructiveMigration(). Bei einem Schema-Upgrade (DB-Version-Bump) wird die gesamte lokale Datenbank gelöscht und neu erstellt. Das ist während der Entwicklung akzeptabel, wird aber zum Datenverlust führen, sobald echte User-Daten existieren.

Aktueller Stand

  • Room DB Version: 4
  • Bisherige Migrationen: v1→v2, v2→v3, v3→v4 sind als echte Migrationen implementiert
  • fallbackToDestructiveMigration() ist als Sicherheitsnetz aktiv

Akzeptanzkriterien

  • fallbackToDestructiveMigration() entfernen
  • Sicherstellen, dass alle bisherigen Migrationen (v1→v2→v3→v4) korrekt und vollständig sind
  • Instrumentierte Migrationstests für alle Pfade grün
  • Dokumentation: Prozess für zukünftige Migrationen (immer Migration schreiben, nie destructive fallback)
## Problem Die Room-Datenbank verwendet aktuell `fallbackToDestructiveMigration()`. Bei einem Schema-Upgrade (DB-Version-Bump) wird die gesamte lokale Datenbank gelöscht und neu erstellt. Das ist während der Entwicklung akzeptabel, wird aber zum Datenverlust führen, sobald echte User-Daten existieren. ## Aktueller Stand - Room DB Version: 4 - Bisherige Migrationen: v1→v2, v2→v3, v3→v4 sind als echte Migrationen implementiert - `fallbackToDestructiveMigration()` ist als Sicherheitsnetz aktiv ## Akzeptanzkriterien - [ ] `fallbackToDestructiveMigration()` entfernen - [ ] Sicherstellen, dass alle bisherigen Migrationen (v1→v2→v3→v4) korrekt und vollständig sind - [ ] Instrumentierte Migrationstests für alle Pfade grün - [ ] Dokumentation: Prozess für zukünftige Migrationen (immer Migration schreiben, nie destructive fallback)
jreinemann-euris commented 2026-05-17 00:40:29 +00:00 (Migrated from github.com)

Abgeschlossen (2026-05-17)

Zyklen: 1
Tests: alle Unit-Tests grün, 0 Fehler

Implementierte Artefakte

  • Migrations.kt: KDoc für MIGRATION_2_3 und MIGRATION_3_4 ergänzt
  • KrisenvorratDatabaseMigrationTest: v3→v4 Test, v1→v4 Full-Path-Test, alle Helfer mit MIGRATION_3_4 aktualisiert
  • docs/migration-guide.md: Entwickler-Leitfaden für zukünftige Migrationen

Abweichungen

\ allbackToDestructiveMigration()\ war bereits in einem früheren Commit entfernt. Dieses Ticket hat die fehlenden Migrationstests und Dokumentation nachgeliefert.

## Abgeschlossen (2026-05-17) **Zyklen:** 1 **Tests:** ✅ alle Unit-Tests grün, 0 Fehler ### Implementierte Artefakte - ✅ **Migrations.kt**: KDoc für MIGRATION_2_3 und MIGRATION_3_4 ergänzt - ✅ **KrisenvorratDatabaseMigrationTest**: v3→v4 Test, v1→v4 Full-Path-Test, alle Helfer mit MIGRATION_3_4 aktualisiert - ✅ **docs/migration-guide.md**: Entwickler-Leitfaden für zukünftige Migrationen ### Abweichungen \ allbackToDestructiveMigration()\ war bereits in einem früheren Commit entfernt. Dieses Ticket hat die fehlenden Migrationstests und Dokumentation nachgeliefert.
Sign in to join this conversation.
No description provided.