From 4b5b8dedf7537dd3f2340c24928869a705219d50 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 95189691e..46d503446 100644 --- a/internal/controller/appserver/assets_test.go +++ b/internal/controller/appserver/assets_test.go @@ -1656,6 +1656,8 @@ var _ = Describe("App server assets", func() { 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 89fc886dd..a0b8dbc11 100644 --- a/internal/controller/appserver/deployment.go +++ b/internal/controller/appserver/deployment.go @@ -506,7 +506,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 34ca43108..37b89797e 100644 --- a/internal/controller/appserver/deployment_test.go +++ b/internal/controller/appserver/deployment_test.go @@ -269,6 +269,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"))) })