Details
-
Task
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
Mesosphere Sprint 69
-
3
Description
To support speculative application of certain offer operations we have added resource versions to offer operation messages. This permits checking compatibility of master and agent state before applying operations.
Launch operations are not modelled with offer operation messages, but instead with RunTaskMessage. In order to provide the same consistency guarantees we need to add resource versions to RunTaskMessage as well. Otherwise we would only rely on resource containment checks in the agent to catch inconsistencies; these can be unreliable as there is no guarantee that the matched agent resource is unique (e.g., with two RESERVE operations on similar resorces triggered on the same agent and one of these failing, the other succeeding, we would end up potentially sending one framework a success status and the other a failed one, but would not do anything the make sure the speculative operation application matches the resources belonging to the sent offer operation status update).