alvinzhangdd opened a new pull request, #12114:
URL: https://github.com/apache/pinot/pull/12114

   ### Change
   Fix helm chart server probe endpoint backward incompatible
   
   ### Issue
   https://github.com/apache/pinot/issues/12113
   
   ### Problem
   Made this change previously https://github.com/apache/pinot/pull/11800
   But it is not backward compatible, if someone uses the following in their 
helm template:
   ```
   probes:
         livenessEnabled: true
         readinessEnabled: true
   ```
   It will throw error:
   
   Error: INSTALLATION FAILED: template: 
pinot-v2/charts/pinot/templates/server/statefulset.yaml:93:26: executing 
"pinot-v2/charts/pinot/templates/server/statefulset.yaml" at 
<.Values.server.probes.livenessProbe.endpoint>: nil pointer evaluating 
interface {}.endpoint
   
   It is because the previous commit  uses `{{- if 
.Values.server.probes.readinessProbe.endpoint }}` but never checked the 
existence of `.Values.server.probes.readinessProbe`
   
   The above template setting should fall back to use 
`.Values.server.probes.endpoint` instead of throwing error.
   
   ### Proposal
   Change to if AND to ensure the existence of 
`.Values.server.probes.readinessProbe`
   
   ### Testing
   * `helm dependency update`
   * `helm install -f ./values.yaml pinot . -n pinot`. It can spin up the k8s 
pods locally.
   * Edit values.yaml Test for separate liveness and readiness probe endpoint 
for server.
     * With only `server: probes: livenessEnabled: true` AND `server: probes: 
readinessEnabled: true`
       * It won't throw error
       * Liveness:   http-get http://:7443/health delay=120s timeout=1s 
period=20s #success=1 #failure=3
       * Readiness:  http-get http://:7443/health delay=120s timeout=1s 
period=20s #success=1 #failure=3
     * Adding `livenessProbe: endpoint: "/health?checkType=liveness"`, 
`readinessProbe: endpoint:"/health?checkType=readiness"`
        * Liveness:   http-get http://:7443/health%3FcheckType=liveness 
delay=120s timeout=1s period=20s #success=1 #failure=3
        * Readiness:  http-get http://:7443/health%3FcheckType=readiness 
delay=120s timeout=1s period=20s #success=1 #failure=3
   
   


-- 
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: commits-unsubscr...@pinot.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org
For additional commands, e-mail: commits-h...@pinot.apache.org

Reply via email to