Files
Assetmanager/UPDATE-0.5.0.2.txt
T

28 lines
1.2 KiB
Plaintext

# AssetManager v0.5.0.2
## Korrektur der Auftragsstatus-Race-Condition
Der Client konnte die Softwareinventur erfolgreich abschließen und der
AssetManager konnte den Callback mit HTTP 200 annehmen. Trotzdem blieb der
Auftrag anschließend auf „Gesendet; Callback ausstehend“.
Ursache:
MeshCtrl wartet auf das Ende des Befehls auf dem Client. Der Client sendete
den erfolgreichen Callback bereits, während der MeshCtrl-Prozess auf dem
AssetManager noch lief. Nach Rückkehr von MeshCtrl setzte dessen Thread den
bereits erfolgreichen Auftrag erneut pauschal auf „Gesendet“.
Korrektur:
- MeshCtrl-Diagnoseausgaben werden getrennt vom Auftragsstatus gespeichert.
- Ein bereits eingegangener oder abgeschlossener Callback wird nicht mehr
überschrieben.
- Die Statusänderung erfolgt als bedingtes Datenbank-Update und schließt
dadurch auch das kleine Zeitfenster zwischen Prüfung und Speicherung.
- Die Statusmeldung spricht neutral von „Callback“ statt fälschlich immer von
„HTTPS-Callback“, da HTTP und HTTPS unterstützt werden.
Es wurden keine bestehenden Callback-Endpunkte, Inventurskripte,
Einstellungen, Tabellen, Themes oder Backupfunktionen verändert.