aruraghuwanshi opened a new pull request, #18:
URL: https://github.com/apache/druid-operator/pull/18

   ## Summary
   
   This PR adds an opt-in MiddleManager drain rollout strategy for Druid 
clusters.
   
   When `spec.middleManagerDrainStrategy` is set, the operator drains each 
MiddleManager StatefulSet pod before allowing Kubernetes to replace it during a 
rolling update. This reduces the chance of interrupting active Kafka/Kinesis 
ingestion tasks during MiddleManager upgrades.
   
   ## What Changed
   
   - Added `spec.middleManagerDrainStrategy` as a pointer-presence CRD option:
     - omitted: standard StatefulSet rolling behavior
     - present: operator-managed MiddleManager drain rollout
   - Added `status.middleManagerDrain` to expose rollout progress and support 
recovery after operator restarts.
   - Implemented a drain state machine that:
     - blocks automatic StatefulSet rollout with partition control
     - selects one outdated MiddleManager pod at a time
     - disables the worker via the Druid Overlord API
     - discovers running tasks through Druid SQL
     - triggers supervisor task-group handoff
     - waits for ingestion tasks to drain
     - releases one pod for replacement
     - waits for the replacement pod to be ready on the new revision
     - re-enables the worker
   - Added configurable timeouts:
     - `drainTimeout`, default `1h`
     - `podReadyTimeout`, default `30m`
   - Reused existing upstream Router discovery and `spec.auth` Druid API 
credential plumbing.
   - Added URL path escaping and worker hostname validation around Druid 
API/SQL calls.
   - Documented the feature in `docs/features.md` and `docs/druid_cr.md`.
   - Regenerated CRDs, deepcopy code, and API docs.
   
   ## Example
   
   ```yaml
   spec:
     rollingDeploy: true
     middleManagerDrainStrategy:
       drainTimeout: 1h
       podReadyTimeout: 30m


-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to