From ac7df2d87e6a09bba9dcd8c8715b684d87db00f7 Mon Sep 17 00:00:00 2001 From: Sri Roopa Ramesh Babu Date: Wed, 24 Jun 2026 15:25:18 -0400 Subject: [PATCH] OLS-3221 Reduce app server liveness probe failureThreshold to 3 Lowers the liveness probe failureThreshold from 15 to 3, giving the pod 90 seconds to self-heal before Kubernetes restarts it. This enables auto-recovery after PostgreSQL restart once the service-side liveness endpoint checks DB health. Co-Authored-By: Claude Opus 4.6 (1M context) --- internal/controller/appserver/assets_test.go | 2 ++ internal/controller/appserver/deployment.go | 2 +- internal/controller/appserver/deployment_test.go | 2 ++ 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/internal/controller/appserver/assets_test.go b/internal/controller/appserver/assets_test.go index 682974b96..a32020b3b 100644 --- a/internal/controller/appserver/assets_test.go +++ b/internal/controller/appserver/assets_test.go @@ -1623,6 +1623,8 @@ user_data_collector_config: {} Expect(dep.Spec.Template.Spec.Containers[0].LivenessProbe).ToNot(BeNil()) Expect(dep.Spec.Template.Spec.Containers[0].LivenessProbe.HTTPGet.Port).To(Equal(intstr.FromString("https"))) Expect(dep.Spec.Template.Spec.Containers[0].LivenessProbe.HTTPGet.Path).To(Equal("/liveness")) + Expect(dep.Spec.Template.Spec.Containers[0].LivenessProbe.FailureThreshold).To(Equal(int32(3))) + Expect(dep.Spec.Template.Spec.Containers[0].LivenessProbe.PeriodSeconds).To(Equal(int32(30))) Expect(dep.Spec.Template.Spec.Containers[0].ReadinessProbe).ToNot(BeNil()) Expect(dep.Spec.Template.Spec.Containers[0].ReadinessProbe.HTTPGet.Port).To(Equal(intstr.FromString("https"))) Expect(dep.Spec.Template.Spec.Containers[0].ReadinessProbe.HTTPGet.Path).To(Equal("/readiness")) diff --git a/internal/controller/appserver/deployment.go b/internal/controller/appserver/deployment.go index 9a51e52e5..28456dd3f 100644 --- a/internal/controller/appserver/deployment.go +++ b/internal/controller/appserver/deployment.go @@ -438,7 +438,7 @@ func GenerateOLSDeployment(r reconciler.Reconciler, cr *olsv1alpha1.OLSConfig) ( InitialDelaySeconds: 30, PeriodSeconds: 30, TimeoutSeconds: 30, - FailureThreshold: 15, + FailureThreshold: 3, }, }, }, diff --git a/internal/controller/appserver/deployment_test.go b/internal/controller/appserver/deployment_test.go index e6f8b57d0..441cc26b9 100644 --- a/internal/controller/appserver/deployment_test.go +++ b/internal/controller/appserver/deployment_test.go @@ -273,6 +273,8 @@ var _ = Describe("App server deployment generation", func() { Expect(dep.Spec.Selector.MatchLabels).To(Equal(utils.GenerateAppServerSelectorLabels())) Expect(dep.Spec.Template.Spec.Containers[0].LivenessProbe).ToNot(BeNil()) Expect(dep.Spec.Template.Spec.Containers[0].LivenessProbe.HTTPGet.Port).To(Equal(intstr.FromString("https"))) + Expect(dep.Spec.Template.Spec.Containers[0].LivenessProbe.FailureThreshold).To(Equal(int32(3))) + Expect(dep.Spec.Template.Spec.Containers[0].LivenessProbe.PeriodSeconds).To(Equal(int32(30))) Expect(dep.Spec.Template.Spec.Containers[0].ReadinessProbe).ToNot(BeNil()) Expect(dep.Spec.Template.Spec.Containers[0].ReadinessProbe.HTTPGet.Port).To(Equal(intstr.FromString("https"))) })