{"record":{"id":"f698ef39f0b4f598","repo":"kubernetes/kops","slug":"error-deleting-keyset-q-v","errorCode":null,"errorMessage":"error deleting Keyset %q: %v","messagePattern":"error deleting Keyset %q: (.+?)","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"pkg/client/simple/api/clientset.go","lineNumber":156,"sourceCode":"\n\tname := cluster.Name\n\tnamespace := restNamespaceForClusterName(name)\n\n\t{\n\t\tkeysets, err := c.KopsClient.Keysets(namespace).List(ctx, metav1.ListOptions{})\n\t\tif err != nil {\n\t\t\treturn fmt.Errorf(\"error listing Keysets: %v\", err)\n\t\t}\n\n\t\tfor i := range keysets.Items {\n\t\t\tkeyset := &keysets.Items[i]\n\t\t\terr = c.KopsClient.Keysets(namespace).Delete(ctx, keyset.Name, metav1.DeleteOptions{})\n\t\t\tif err != nil {\n\t\t\t\tif errors.IsNotFound(err) {\n\t\t\t\t\t// Unlikely...\n\t\t\t\t\tklog.Warningf(\"Keyset was concurrently deleted\")\n\t\t\t\t} else {\n\t\t\t\t\treturn fmt.Errorf(\"error deleting Keyset %q: %v\", keyset.Name, err)\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t{\n\t\tigs, err := c.KopsClient.InstanceGroups(namespace).List(ctx, metav1.ListOptions{})\n\t\tif err != nil {\n\t\t\treturn fmt.Errorf(\"error listing instance groups: %v\", err)\n\t\t}\n\n\t\tfor i := range igs.Items {\n\t\t\tig := &igs.Items[i]\n\t\t\terr = c.KopsClient.InstanceGroups(namespace).Delete(ctx, ig.Name, metav1.DeleteOptions{})\n\t\t\tif err != nil {\n\t\t\t\tif errors.IsNotFound(err) {\n\t\t\t\t\t// Unlikely...\n\t\t\t\t\tklog.Warningf(\"instance group was concurrently deleted\")","sourceCodeStart":138,"sourceCodeEnd":174,"githubUrl":"https://github.com/kubernetes/kops/blob/4c8573c808a73d578c5eadc86d410646ea0b0d73/pkg/client/simple/api/clientset.go#L138-L174","documentation":"Deleting an individual Keyset during cluster teardown failed with a non-NotFound error; NotFound is tolerated (logged as concurrent deletion), so this is a genuine API failure or RBAC problem affecting that specific object.","triggerScenarios":"Thrown at pkg/client/simple/api/clientset.go:156 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Check the wrapped API error (RBAC, conflict, timeout)","Retry kops delete cluster","Remove the named Keyset manually via kubectl if the API is healthy but the object is wedged"],"exampleFix":null,"handlingStrategy":"retry","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"4c8573c808a73d578c5eadc86d410646ea0b0d73","analyzedAt":"2026-09-05T04:13:19.212Z","contentChangedAt":"2026-09-05T04:13:19.212Z","schemaVersion":2},"datasetVersion":"2026-09-12T07:17:12.445Z"}