Crash with ClusterStack Resource with empty `providerRef` and `noProvider`
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 45/100
- Tipo di issue
- Bug
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Ferma
- Stack tecnologico
- go
- Ambito
- infrastructure
Direzione di ricerca
Reproduce the crash with the ClusterStack spec in the issue, then start at internal/controller/clusterstack_controller.go:275 and trace back through Reconcile at line 178. Check the missing providerRef/noProvider error path and determine why handling or printing the error dereferences nil. Done means the same resource produces an error without panicking.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
The CSO crashes with the following ClusterStack spec
apiVersion: clusterstack.x-k8s.io/v1alpha1
kind: ClusterStack
metadata:
name: scs-cluster-stack
namespace: default
spec:
provider: openstack
name: scs
kubernetesVersion: "1.27"
channel: stable
autoSubscribe: false
versions:
- v4
I think the missing providerRef is actually detected and the crash happens when printing the Error message, however i have not investigated deeply. The crashlog is:
{"level":"INFO","time":"2024-05-22T09:15:41.002Z","file":"controller/controller.go:115","message":"Observed a panic in reconciler: runtime error: invalid memory address or nil pointer dereference","controller":"clusterstack","controllerGroup":"clusterstack.x-k8s.io","controllerKind":"ClusterStack","ClusterStack":{"name":"scs-cluster-stack","namespace":"default"},"namespace":"default","name":"scs-cluster-stack","reconcileID":"66ffaad8-291e-43a7-aa54-d5ba5f5ce8f3"}
panic: runtime error: invalid memory address or nil pointer dereference [recovered]
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x20 pc=0x19082d4]
goroutine 204 [running]:
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Reconcile.func1()
/src/cluster-stack-operator/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:116 +0x1e5
panic({0x1b76920?, 0x313ed60?})
/usr/local/go/src/runtime/panic.go:914 +0x21f
github.com/SovereignCloudStack/cluster-stack-operator/internal/controller.(*ClusterStackReconciler).createOrUpdateProviderClusterStackRelease(0xc00028fc00, {0x213be10, 0xc0006915c0}, {0xc0005a29f0, 0x15}, 0xc0003d2380)
/src/cluster-stack-operator/internal/controller/clusterstack_controller.go:275 +0xf4
github.com/SovereignCloudStack/cluster-stack-operator/internal/controller.(*ClusterStackReconciler).Reconcile(0xc00028fc00, {0x213be10?, 0xc0006915c0}, {{{0xc0002e0796?, 0x5?}, {0xc0002440d8?, 0xc0004a1d48?}}})
/src/cluster-stack-operator/internal/controller/clusterstack_controller.go:178 +0x1073
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Reconcile(0x213f928?, {0x213be10?, 0xc0006915c0?}, {{{0xc0002e0796?, 0xb?}, {0xc0002440d8?, 0x0?}}})
/src/cluster-stack-operator/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:119 +0xb7
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler(0xc0004b4c80, {0x213be48, 0xc0003a6f00}, {0x1c5ec60?, 0xc0002230c0?})
/src/cluster-stack-operator/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:316 +0x3cc
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem(0xc0004b4c80, {0x213be48, 0xc0003a6f00})
/src/cluster-stack-operator/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:266 +0x1c9
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2()
/src/cluster-stack-operator/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:227 +0x79
created by sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2 in goroutine 92
/src/cluster-stack-operator/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:223 +0x565
- Lingua principale
- Go
- Stelle
- 18
- Fork
- 5
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di SovereignCloudStack/cluster-stack-operator
-
CI issues (1)Forse di nuovo libera @jschoone l’ha presa 116 giorni fa e non c’è nessuna pull request aperta. Apertabug Container
SovereignCloudStack/cluster-stack-operator#340 · 1 commento · 3 assegnatari ·
-
cso: crash ....Aperta
Difficoltà 3/5 1-2 giorni Idoneità per principianti 58/100
SovereignCloudStack/cluster-stack-operator#337 · 2 commenti ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 50/100
SovereignCloudStack/cluster-stack-operator#336 · 3 commenti ·
-
CI fails: no default in switchForse di nuovo libera @batistein l’ha presa 305 giorni fa e non c’è nessuna pull request aperta. Apertabug
SovereignCloudStack/cluster-stack-operator#327 · 1 assegnatario ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
SovereignCloudStack/cluster-stack-operator#272 · 32 commenti ·
Tutte le issue di SovereignCloudStack/cluster-stack-operator
Issue simili
-
enhancement low priority
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
eugenioenko/ttt#674 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
I maintainer di solito rispondono entro 1 giorno
-
Remove obsolete ipAllocationPolicy field from containernodepool-subnetworkref test dependencyAperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 92/100
GoogleCloudPlatform/k8s-config-connector#13462 ·
I maintainer di solito rispondono entro 1 giorno
-
bug good first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
vavallee/bindery#2793 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno