Projekt

Allgemein

Profil

Aktionen

Fehler #48

geschlossen
JH

Doppelter Versionssuffix im Dateinamen bei Datenbankmigration

Fehler #48: Doppelter Versionssuffix im Dateinamen bei Datenbankmigration

Von Julius Haman vor 14 Tagen hinzugefügt. Vor 13 Tagen aktualisiert.

Status:
Erledigt
Priorität:
Normal
Zugewiesen an:
-
Zielversion:
Beginn:
Abgabedatum:
% erledigt:

100%

Geschätzter Aufwand:
Gefunden in Version:

Beschreibung

Bei der Migration einer Datenbank kann der Dateiname der Zieldatei einen doppelten Versionssuffix bekommen, z. B.:

ErControl1.sqlite.3.0.1.0_1.3.0.2.0.db
ErControl1.sqlite.3.0.1.0_1.3.0.3.0.db

Ursache: Wenn beim Anlegen der Zieldatei ein Namenskonflikt auftritt, hängt GetUniqueFilename in MigrationService.cs zur Unterscheidung ein "_N" an den Versionssuffix an (z. B. "...3.0.1.0_1.db"). Wird eine solche Datei später erneut migriert, erkennt StripVersionSuffix diesen alten Suffix samt "_N" nicht mehr als Versionssuffix und entfernt ihn nicht - der neue Versionssuffix wird einfach angehängt statt den alten zu ersetzen.

Fix: Regulärer Ausdruck in StripVersionSuffix erweitert, sodass ein optionaler "_N"-Kollisionssuffix mit erkannt und beim erneuten Migrieren korrekt entfernt wird.

Bereits vorhandene Dateien mit doppeltem Suffix müssen manuell bereinigt werden (umbenennen oder löschen), der Fix wirkt nur auf künftige Migrationen.


Zugehörige Tickets 1 (0 offen — 1 geschlossen)

Dupliziert durch Fehler #46: Verkettete Datenbanknamen (mit mehreren Versions-Suffixen)Abgewiesen

Aktionen
Aktionen

Auch abrufbar als: PDF Atom