mirror of
https://github.com/kata-containers/kata-containers.git
synced 2026-07-01 22:50:54 +00:00
factory: Default to normal sandbox boot path when factory init not done
The behavior we had before was that, for a starting k8s pod, it sees enable_template=true and therefore: 1. Tries NewFactory with fetchOnly=true 2. When that fails (because template.Fetch fails to find the artifacts, we retry with fetchOnly=false. This creates a direct factory which creates the template from scratch (hence we pay a full pod sandbox boot time here) and then restores from that. Hence the boot times are strictly worse on this path. Now, even when enable_template=true, we don't try to force a direct factory. Instead we just revert to the standard sandbox boot path. Signed-off-by: Cameron Baird <cameronbaird@microsoft.com>
This commit is contained in:
@@ -82,12 +82,8 @@ func HandleFactory(ctx context.Context, vci vc.VC, runtimeConfig *oci.RuntimeCon
|
||||
kataUtilsLogger.WithField("factory", factoryConfig).Info("load vm factory")
|
||||
|
||||
f, err := vf.NewFactory(ctx, factoryConfig, true)
|
||||
if err != nil && !factoryConfig.VMCache {
|
||||
kataUtilsLogger.WithError(err).Warn("load vm factory failed, about to create new one")
|
||||
f, err = vf.NewFactory(ctx, factoryConfig, false)
|
||||
}
|
||||
if err != nil {
|
||||
kataUtilsLogger.WithError(err).Warn("create vm factory failed")
|
||||
kataUtilsLogger.WithError(err).Warn("load vm factory failed, will use direct boot")
|
||||
return
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user