You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
# koordinator-1.4.0\pkg\koordlet\runtimehooks\proxyserver\service.go
func (s *server) PreCreateContainerHook(ctx context.Context,
req *runtimeapi.ContainerResourceHookRequest) (*runtimeapi.ContainerResourceHookResponse, error) {
klog.V(5).Infof("receive PreCreateContainerHook request %v", req.String())
resp := &runtimeapi.ContainerResourceHookResponse{
ContainerAnnotations: req.GetContainerAnnotations(),
ContainerResources: req.GetContainerResources(),
PodCgroupParent: req.GetPodCgroupParent(),
ContainerEnvs: req.GetContainerEnvs(),
}
containerCtx := &protocol.ContainerContext{} # this line new a object context var, but not assignment value
containerCtx.FromProxy(req)
err := hooks.RunHooks(s.options.PluginFailurePolicy, rmconfig.PreCreateContainer, containerCtx)
containerCtx.ProxyDone(resp)
klog.V(5).Infof("send PreCreateContainerHook response for pod %v container %v response %v",
req.PodMeta.String(), req.ContainerMeta.String(), resp.String())
return resp, err
}
# koordinator-1.4.0\pkg\koordlet\runtimehooks\protocol\container_context.go
func (c *ContainerContext) ProxyDone(resp *runtimeapi.ContainerResourceHookResponse) {
c.injectForExt()
c.Response.ProxyDone(resp)
c.Update() # this will call update function, but 1.3.0 version code don't
}
.....
func (c *ContainerContext) Update() {
c.executor.UpdateBatch(true, c.updaters...) # here, c.executor don't assignment value before execute, it will painc
c.updaters = nil
}
What you expected to happen:
Is this a bug? if it is, what can I do, and how to close the hook or other? I don't understand how to trigger what pod create will cause。please tell me How to reproduce it (as minimally and precisely as possible):
@LGTH Thanks for your feedback. It is a nil reference bug existing between v1.2~v1.4. I'm very sorry about that and will fix it ASAP.
To avoid this bug temporarily, please disable the runtime proxy and switch to the standalone mode or the NRI mode which are the major ones maintained in the latest versions.
FYI: https://koordinator.sh/docs/designs/nri-mode-resource-management#alternatives
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.
What happened:
my environment upgrage v1.4.0 from v1.3.0. koordlet "invalid memory address or nil pointer dereference" error. the error log such as:
then I read the stack code.
What you expected to happen:
Is this a bug? if it is, what can I do, and how to close the hook or other? I don't understand how to trigger what pod create will cause。please tell me
How to reproduce it (as minimally and precisely as possible):
Anything else we need to know?:
Environment:
kubectl version
): 1.20The text was updated successfully, but these errors were encountered: