Skip to content

💫 Patch v3.13.2

Compare
Choose a tag to compare
@github-actions github-actions released this 30 Dec 10:56

Release Note (3.13.2)

This release contains 1 bug fix.

🐞 Bug Fixes

Respect timeout_ready when generating startup probe (#5560)

As Kubernetes Startup Probes were added to all deployments in release v3.13.0, we added default values for all probe configurations. However, if those default configurations were not enough to wait for an Executor that takes time to load and become ready, the Executor deployment would become subject to the configured restart policy. Therefore, Executors that are slow to load would keep restarting forever.

In this patch, this behavior is fixed by making sure that Startup Probe configurations respect the timeout_ready argument of Executors.
Startup Probes are configured like so:

  • periodSeconds always set to 5 seconds
  • timeoutSeconds always set to 10 seconds
  • failureThreshold is the number of attempts maybe by kubernetes to check if the pod is ready. It varies according to timeout_ready. The formula used is failureThreshold = timeout_ready / 5000 (as timeout_ready is in microseconds and periodSeconds is 5 seconds) and
    in all cases, it will be at least 3. If timeout_ready is -1 (in Jina it means waiting forever for the Executor to become ready), since waiting forever is not supported in Kubernetes, the value for failureThreshold will be 120 attempts.

🤘 Contributors

We would like to thank all contributors to this release: