[ 
https://issues.apache.org/jira/browse/HDDS-10336?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Saketa Chalamchala updated HDDS-10336:
--------------------------------------
    Description: 
Today, Ozone default replication config is complex and confusing.

Firstly, we have multiple fallbacks, including "ozone.replication" (together 
with "ozone.replication.type"), "ozone.server.default.replication" (together 
with "ozone.server.default.replication.type") and bucket-level config with no 
clear order. And many different util classes/methods exist to parse and define 
an order.

Secondly, there are different code paths between FS API and S3G. Each of them 
seems to impose a different order of fallbacks.

Lastly, "ozone.replication" doesn't seem to allow setting EC as an option. SCM 
crashes when BackgroundPipelineCreator tries to create an EC pipeline with 
Replication Factor 3. Need to skip EC pipeline creation.

We should:
1. Define a clear order of fallbacks and implement it in a single config parser 
class.
2. Use the config parser consistently in every code path.

  was:
Today, Ozone default replication config is complex and confusing.

Firstly, we have multiple fallbacks, including "ozone.replication" (together 
with "ozone.replication.type"), "ozone.server.default.replication" (together 
with "ozone.server.default.replication.type") and bucket-level config with no 
clear order.  And many different util classes/methods exist to parse and define 
an order.

Secondly, there are different code paths between FS API and S3G. Each of them 
seems to impose a different order of fallbacks.

Lastly, "ozone.replication" doesn't seem to allow setting EC as an option.


We should:
1. Define a clear order of fallbacks and implement it in a single config parser 
class.
2. Use the config parser consistently in every code path.


> Consolidate ozone default replication config
> --------------------------------------------
>
>                 Key: HDDS-10336
>                 URL: https://issues.apache.org/jira/browse/HDDS-10336
>             Project: Apache Ozone
>          Issue Type: Improvement
>            Reporter: Duong
>            Assignee: Saketa Chalamchala
>            Priority: Major
>
> Today, Ozone default replication config is complex and confusing.
> Firstly, we have multiple fallbacks, including "ozone.replication" (together 
> with "ozone.replication.type"), "ozone.server.default.replication" (together 
> with "ozone.server.default.replication.type") and bucket-level config with no 
> clear order. And many different util classes/methods exist to parse and 
> define an order.
> Secondly, there are different code paths between FS API and S3G. Each of them 
> seems to impose a different order of fallbacks.
> Lastly, "ozone.replication" doesn't seem to allow setting EC as an option. 
> SCM crashes when BackgroundPipelineCreator tries to create an EC pipeline 
> with Replication Factor 3. Need to skip EC pipeline creation.
> We should:
> 1. Define a clear order of fallbacks and implement it in a single config 
> parser class.
> 2. Use the config parser consistently in every code path.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org
For additional commands, e-mail: issues-h...@ozone.apache.org

Reply via email to