Verbesserung
Top-Thema
Wichtig
Kleinigkeit
Wichtig
Verbesserung
Unter bestimmten Umständen kann man eine Applikation mit einer "niedrigeren" Version booten wollen als aktuell im Datenstand vermerkt ist. In diesem Fall soll die Versions-Kennung im Datenstand auf die Versionskennung der gestarteten Anwendung zurückgesetzt werden. Es werden dabei keine echten Rückwärtsmigrationsschritte durchgeführt.
Anwendung
Wenn man auf einem Datenstand eine spezielle einmalige Migration machen möchte, die nicht in den Hauptbranch der Entwicklung einer Anwendung einfließt, dann ist für den Wechsel zurück auf den Hauptentwicklungsbranch ein solcher Versions-Downgrade notwendig.
Beim Starten der Anwendung muss für den Downgrade die Umgebungsvariable bzw. der Alias tl_version_allow_downgrade auf true gesetzt werden.
Alias-Definition:
#!xml <entry name="%tl_version_allow_downgrade%" value="${env:tl_version_allow_downgrade:false}" />
Test
- Auf einem CWS eine Migrationsanweisung einbauen.
- Anwendung auf diesem CWS starten
- Version wird auf die lokale CWS-Version erhöht.
- Anwendung wieder auf Trunk starten.
- Anwendung verweigert das Hochfahren, da ein Downgrade notwendig ist.
- Umgebungsvariable wie oben beschrieben setzen.
- Anwendung erneut starten.
- Anwendung bootet normal, im Log wird der Downgrade vermerkt.
2020-04-01 13:34:38,279 INFO [main]: top_logic.basic.config.ApplicationConfig - No valid version found for database version 'tl-element:24494-Upgrade_temporary_multiline_annotation_change' in versions [tl-element:22747-Add_GenericObject_table]. 2020-04-01 13:34:38,279 INFO [main]: top_logic.basic.config.ApplicationConfig - Downgrading application version.
- Anwendung herungerfahren und erneut ohne die Umgebungsvariable starten.
- Anwendung startet weiterhin normal ohne Migration oder Downgrade.