Open moralismercatus opened 7 years ago
Hi @moralismercatus, Thanks for reporting the issue.
If the "guest data" you mentioned here is the guest configraution file, it is actually being used for replaying test cases on host.
@likebreath I meant the optimization was an unnecessary feature :)
Background
As only the first time a VM is created is the guest data needed (it was assumed that it would be identical on all parallel VMs and reboots of VMs), a conditional flag was added to VMNode's FSM to only accept guest data for the first time.
Problem
crete-run unconditionally sends the guest data every time it starts, regardless of whether it's the first VM or not. This means that there's a break in the synchronization between crete-run and crete-vm-node when more than 1 VM is running (in theory, actual implementation may differ), or when a VM is restarted (caused by crash or other termination).
Solution
Since the feature was implemented as an optimization (to avoid redundantly transmitting guest data), maybe the simplest solution is to remove the feature. I don't believe it serves a necessary purpose.