Marton Elek created HDDS-3101:
---------------------------------

             Summary: Make hdds-common independent from hdfs-common and 
Configuration free
                 Key: HDDS-3101
                 URL: https://issues.apache.org/jira/browse/HDDS-3101
             Project: Hadoop Distributed Data Store
          Issue Type: Improvement
            Reporter: Marton Elek
            Assignee: Marton Elek


To make it possible to create different client jars compiled with different 
version of Hadoop we need clear and Hadoop independent hdds-common (and 
hdds-client) projects.

(For more details about the motivation, check this design doc: 
https://lists.apache.org/thread.html/rd0ea00f958368e888db1947eb71e514fb977df0b7baaad928ac50e94%40%3Cozone-dev.hadoop.apache.org%3E)

Our current blocker is the usage of `org.apache.hadoop.conf.Configuration`. 
Configuration class is a heavyweight object from hadoop-common which introduce 
a lot of unnecessary dependencies. It also violates multiple [OOP 
principles|https://en.wikipedia.org/wiki/SOLID], for example the *Dependency 
inversion principle*.

To make our components more independent I propose to depend on a lightweight 
ConfigurationSource interface which includes all the required getXXX methods. 
OzoneConfiguration can implement that interface (and with older Hadoop we can 
create direct adapters).





--
This message was sent by Atlassian Jira
(v8.3.4#803005)

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

Reply via email to