Open hlinnaka opened 1 week ago
+1 on the high-level idea that the workload should request the compute size, not an external observer.
I'm missing details on the ScaleRequest semantics. Is it a synchronous call? Is it just a "would be nice to have but until you give it to me, I will work with existing resources"? Is the response to the ScaleRequest an estimate for how long it's going to take until the upscaling is complete?
It's "would be nice to have but until you give it to me, I will work with existing resources". The agent doesn't send any response to the ScaleRequest. If the ScaleRequest results in upscaling or downscaling, however, the agent will send a DownScaleRequest or UpscaleNotification to the VM monitor, just like it does today when it decides to perform an upscale or downscale.
I'm not sure that's the best protocol, but I think it's the path of least resistence, because it's very close to how the current UpscaleRequest mesage works.
functions
: 32.4% (6848 of 21165 functions)
lines
: 49.7% (53410 of 107360 lines)
* collected from Rust tests only
See also draft implementation of this in: