dongjoon-hyun opened a new pull request, #931: URL: https://github.com/apache/spark-kubernetes-operator/pull/931
### What changes were proposed in this pull request? This PR aims to grant `deletecollection` on `pods`, `services`, `configmaps` and `persistentvolumeclaims` to the Spark workload ClusterRole and Roles of the Helm chart, with Helm test assertions and a migration guide item. ### Why are the changes needed? SPARK-57942 replaced the wildcard RBAC verbs with an explicit verb list without `deletecollection` in [1.0.0](https://github.com/apache/spark-kubernetes-operator/releases/tag/1.0.0) (2026-07-23). However, Spark drivers delete the resources of their application by label selector, which K8s RBAC authorizes as `deletecollection`. So every driver logs errors like the following when it stops, and leaves the resources until the driver pod is deleted. ``` io.fabric8.kubernetes.client.KubernetesClientException: Failure executing: DELETE at: https://kubernetes.default.svc/api/v1/namespaces/default/services?labelSelector=spark-app-selector%3Dpi-before-0. Message: services is forbidden: User "system:serviceaccount:default:spark" cannot deletecollection resource "services" in API group "" in the namespace "default". ... ``` ### Does this PR introduce _any_ user-facing change? Yes. This fixes a regression of 1.0.0. ### How was this patch tested? Pass the CIs with the new Helm test assertions. I also verified manually on Minikube with the operator `1.0.0` and Spark `4.2.0` that the driver logs no error and deletes its resources when it stops. ### Was this patch authored or co-authored using generative AI tooling? Generated-by: Claude Opus 5.5 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
