Aktionen
Feature #165
geschlossen
JH
Datenbank nach der Migration verkleinern (VACUUM)
Feature #165:
Datenbank nach der Migration verkleinern (VACUUM)
Beginn:
14.10.2026
Abgabedatum:
% erledigt:
100%
Geschätzter Aufwand:
Gefunden in Version:
Beschreibung
Idee¶
Nach einer Datenbankmigration ist die Datei deutlich größer als nötig (Beispiel: 90 MB statt 46 MB nach einem manuellen VACUUM). Die Migration arbeitet auf einer Kopie und baut dabei Tabellen um; der frei gewordene Platz bleibt in der Datei.
Umsetzung¶
- Am Ende von
MigrationService.MigrateAsyncwird auf der migrierten DatenbankVACUUMausgeführt (nur Ergebnisdatenbank, keine Zwischenstände). - Größe vorher/nachher wird ins Log geschrieben.
- Ein Fehlschlag (z. B. zu wenig Plattenplatz) wird nur als Warnung geloggt und bricht die Migration nicht ab.
Hinweise¶
- Keine neue Migrationsversion nötig, das Schema ändert sich nicht.
- Wirkt nur bei tatsächlich ausgeführter Migration; bereits migrierte, aufgeblähte Datenbanken werden dadurch nicht nachträglich verkleinert.
- Mögliche Erweiterung: VACUUM beim Start, wenn viele freie Seiten vorhanden sind (
PRAGMA freelist_count). - Hintergrund: Die Dateigröße spielt eine Rolle, wenn die Datenbank in einem Sync-Ordner liegt, da dort bei jeder Änderung die ganze Datei übertragen wird.
JH Von Julius Haman vor 18 Tagen aktualisiert
- Status wurde von Neu zu In Bearbeitung geändert
- Zielversion wurde auf ErControl 3.1.10 gesetzt
JH Von Julius Haman vor 18 Tagen aktualisiert
- Status wurde von In Bearbeitung zu Erledigt geändert
- % erledigt wurde von 0 zu 100 geändert
Aktionen