in spark-operator/src/main/java/org/apache/spark/k8s/operator/metrics/healthcheck/SentinelManager.java [131:152]
public boolean handleSentinelResourceReconciliation(CR resource, KubernetesClient client) {
if (!isSentinelResource(resource)) {
return false;
}
ResourceID resourceId = ResourceID.fromResource(resource);
sentinelResources.compute(
resourceId,
(id, previousState) -> {
boolean firstReconcile = false;
if (previousState == null) {
firstReconcile = true;
previousState = new SentinelResourceState();
}
previousState.onReconcile(resource);
if (firstReconcile) {
updateSpecAndScheduleHealthCheck(resourceId, previousState, client);
}
return previousState;
});
return true;
}