From 837e0f71ac56b7d2c8e2d82b8f332b90f566c73c Mon Sep 17 00:00:00 2001 From: sync-test Date: Mon, 17 Aug 2026 19:41:08 +0530 Subject: [PATCH] fix(companies): use Recreate deploy strategy to avoid RWO PVC Multi-Attach companies is the only service mounting nxtgauge-uploads-pvc (ReadWriteOnce). Default RollingUpdate surges a second pod before the old one releases the volume, causing FailedAttachVolume/Multi-Attach and a permanently stuck rollout (12+ dead ReplicaSets had piled up from this over the past few days). Recreate tears down the old pod first so the new one can attach. Co-Authored-By: Claude Sonnet 5 --- .../overlays/prod/companies-volume-patch.yaml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/apps/nxtgauge-backend-rust/overlays/prod/companies-volume-patch.yaml b/apps/nxtgauge-backend-rust/overlays/prod/companies-volume-patch.yaml index 8904356..651448f 100644 --- a/apps/nxtgauge-backend-rust/overlays/prod/companies-volume-patch.yaml +++ b/apps/nxtgauge-backend-rust/overlays/prod/companies-volume-patch.yaml @@ -3,6 +3,15 @@ kind: Deployment metadata: name: nxtgauge-rust-companies spec: + # companies is the only service mounting nxtgauge-uploads-pvc (RWO), and + # the default RollingUpdate strategy surges a second pod before the old + # one releases the volume -> FailedAttachVolume "Multi-Attach error", + # leaving the rollout stuck and the dead ReplicaSet piling up until + # someone notices. Recreate tears down the old pod (releasing the PVC) + # before scheduling the new one, so single-replica + RWO volume rollouts + # actually complete. + strategy: + type: Recreate template: spec: volumes: