-
Notifications
You must be signed in to change notification settings - Fork 61
Description
The term update is remarkably overloaded in Omicron: in various places, it may mean:
- Updating the versions of the software deployed on the rack to a new release
- Changing the configuration of an object, such as a project, disk, instance, etc, in response to a user action that provides new configuration values
- Processing a change in state reported to Nexus by something in the "real world" (i.e. a sled-agent)
Currently, the components that process state updates (sense 3) about VMMs and migrations sent from sled-agents to Nexus are the "instance update" saga (and its friend the "instance updater" background task, which ensures such sagas are started as needed). I believe @iximeow is presently working on external APIs to permit a user to change an instance's configuration, updating the instance record (sense 2). The HTTP endpoint for this functionality will probably also be referred to as the "instance update" endpoint.
Therefore, we should probably try to disambiguate this terminology, rather than having two mostly-separate things called "instance update". I submit renaming the "instance-update" saga to "instance-reconciliation", based on the terminology used by @gjcolombo in #6520 to refer to this subsystem. I think "instance-reconciliation" (and the "instance-reconciler" background task) is probably more accurate terminology, anyway: when the saga runs, the VMM/migration state update received from the sled-agent has already been written to the database, and the saga is responsible for modifying the state of the instance record to reflect the current state of the associated vmm and migration records --- i.e., reconciling the instance record's state with the VMM and migration states.
I'd like to do this once PRs #6503 and #6630 have merged, since they both change the saga, and I'd prefer to avoid merge conflicts from e.g. renaming the file etc. So, I'm opening this issue mostly just to remind myself to do that, but also as an opportunity to solicit other potential naming suggestions if anyone else involved in these bits of Nexus wants to weigh in!