aryangupta1998 opened a new pull request, #10157:
URL: https://github.com/apache/ozone/pull/10157

   ## What changes were proposed in this pull request?
   
   Today SCM safemode pipeline exit checks are effectively hardcoded to 
`RATIS/THREE`, which is incorrect when cluster default replication is EC. In 
EC-default deployments, safemode should validate pipelines for the configured 
default replication instead of only `RATIS/THREE.`
   
   This patch generalizes safemode pipeline validation to use 
`ReplicationConfig.getDefault(conf):`
   
   `HealthyPipelineSafeModeRule` now evaluates pipelines matching the 
configured default replication config and uses required node count from that 
config.
   `OneReplicaPipelineSafeModeRule` now tracks/report-validates pipelines 
matching the configured default replication config.
   To keep behavior consistent, BackgroundPipelineCreator is updated to include 
EC pipeline creation when default replication type is EC, while preserving 
existing RATIS behavior when EC is not configured.
   
   **Expected outcome:**
   RATIS default: behavior remains unchanged.
   EC default: safemode pipeline checks validate EC pipelines, and background 
creation can create EC pipelines accordingly.
   Validation
   Added/updated below SCM tests for EC-default and RATIS-default paths.
   
   TestHealthyPipelineSafeModeRule
   TestOneReplicaPipelineSafeModeRule
   TestSCMSafeModeManager
   TestBackgroundPipelineCreator
   
   **Note**:
   For EC-default setups in SCM safemode paths, ensure both are set:
   
   ```
   ozone.replication.type=EC
   ozone.replication=RS-3-2-1024k
   ```
   
   ## What is the link to the Apache JIRA
   
   https://issues.apache.org/jira/browse/HDDS-15138
   
   ## How was this patch tested?
   
   Unit tests.
   


-- 
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