konnector panics with nil ptr deref.
Don't panic.
I0128 12:38:50.057551 594832 namespacelifecycle_controller.go:237] "handling deletion of APIServiceNamespace" key="cowboys" controller="kube-bind-konnector-cluster" accessSecretKey="kube-bind/kubeconfig-6pk98" key="kube-bind-g2iacpqng0m1/wild-west" APIServiceNamespace="kube-bind-g2iacpqng0m1/wild-west"
I0128 12:38:50.057565 594832 namespacelifecycle_controller.go:248] "not deleting Namespace as we can't be sure who owns it" key="cowboys" controller="kube-bind-konnector-cluster" accessSecretKey="kube-bind/kubeconfig-6pk98" key="kube-bind-g2iacpqng0m1/wild-west" APIServiceNamespace="kube-bind-g2iacpqng0m1/wild-west"
E0128 12:38:50.057651 594832 panic.go:262] "Observed a panic" panic="runtime error: invalid memory address or nil pointer dereference" panicGoValue="\"invalid memory address or nil pointer dereference\"" stacktrace=<
goroutine 372 [running]:
k8s.io/apimachinery/pkg/util/runtime.logPanic({0x2e1bfd8, 0xc000b449f0}, {0x256eee0, 0x468c730})
/home/rvasek/go/pkg/mod/k8s.io/apimachinery@v0.34.2/pkg/util/runtime/runtime.go:132 +0xbc
k8s.io/apimachinery/pkg/util/runtime.handleCrash({0x2e1bfd8, 0xc000b449c0}, {0x256eee0, 0x468c730}, {0x0, 0x0, 0xa2?})
/home/rvasek/go/pkg/mod/k8s.io/apimachinery@v0.34.2/pkg/util/runtime/runtime.go:107 +0x116
k8s.io/apimachinery/pkg/util/runtime.HandleCrashWithLogger({{0x2e25768?, 0xc0003e7100?}, 0xc000dcea20?}, {0x0, 0x0, 0x0})
/home/rvasek/go/pkg/mod/k8s.io/apimachinery@v0.34.2/pkg/util/runtime/runtime.go:91 +0x115
panic({0x256eee0?, 0x468c730?})
/usr/lib/golang/src/runtime/panic.go:783 +0x132
github.com/kube-bind/kube-bind/pkg/konnector/controllers/cluster/serviceexport/multinsinformer.(*DynamicMultiNamespaceInformer).enqueueServiceNamespace(0xc00043f360, {0x298fba0, 0xc000c2a000})
/home/rvasek/ws/kube-bind/pkg/konnector/controllers/cluster/serviceexport/multinsinformer/informer.go:170 +0x5cd
github.com/kube-bind/kube-bind/pkg/konnector/controllers/cluster/serviceexport/multinsinformer.(*DynamicMultiNamespaceInformer).Start.func3({0x298fba0?, 0xc000c2a000?})
/home/rvasek/ws/kube-bind/pkg/konnector/controllers/cluster/serviceexport/multinsinformer/informer.go:119 +0x2a
k8s.io/client-go/tools/cache.ResourceEventHandlerFuncs.OnDelete(...)
/home/rvasek/go/pkg/mod/k8s.io/client-go@v0.34.2/tools/cache/controller.go:273
github.com/kube-bind/kube-bind/pkg/konnector/controllers/dynamic.NewDynamicInformer[...].func3()
/home/rvasek/ws/kube-bind/pkg/konnector/controllers/dynamic/eventhandler.go:93 +0xef
k8s.io/client-go/tools/cache.ResourceEventHandlerFuncs.OnDelete(...)
/home/rvasek/go/pkg/mod/k8s.io/client-go@v0.34.2/tools/cache/controller.go:273
k8s.io/client-go/tools/cache.(*processorListener).run.func1(0xc000dcef5f, 0xc000cdf220, {0x26250e0?, 0xc00110c250?})
/home/rvasek/go/pkg/mod/k8s.io/client-go@v0.34.2/tools/cache/shared_informer.go:1081 +0x17d
k8s.io/client-go/tools/cache.(*processorListener).run(0xc000cdf220)
/home/rvasek/go/pkg/mod/k8s.io/client-go@v0.34.2/tools/cache/shared_informer.go:1086 +0x3c
k8s.io/apimachinery/pkg/util/wait.(*Group).Start.func1()
/home/rvasek/go/pkg/mod/k8s.io/apimachinery@v0.34.2/pkg/util/wait/wait.go:72 +0x4c
created by k8s.io/apimachinery/pkg/util/wait.(*Group).Start in goroutine 354
/home/rvasek/go/pkg/mod/k8s.io/apimachinery@v0.34.2/pkg/util/wait/wait.go:70 +0x73
>
panic: runtime error: invalid memory address or nil pointer dereference [recovered, repanicked]
The segfault is a bit time-dependent and is not triggered each time.
Describe the bug
konnector panics with nil ptr deref.
Steps To Reproduce
Expected Behaviour
Don't panic.
Component
konnector
kubectl version
No response
Kubernetes version
No response
kube-bind version
No response
Additional Context
Stack trace:
The segfault is a bit time-dependent and is not triggered each time.
https://github.com/kube-bind/kube-bind/blob/efaa16f625c2f392ab6611e04449ecb419ddbdc8/pkg/konnector/controllers/cluster/serviceexport/multinsinformer/informer.go#L160-L176
On L170,
snsmay benil.