elek opened a new pull request #2055:
URL: https://github.com/apache/ozone/pull/2055


   ## What changes were proposed in this pull request?
   
   This is the initial patch to support differentiating between multiple 
container replicas.
   
   With RATIS/Closed containers all the container replicas are exactly the same 
but with EC they will be different. We need an additional index for each 
container replicas to know how it should be handled.
   
   This patch introduces container instanceIndex-es and handle them end2end.
   
    * EC repliation type is added
    * SCM allocates datanodes for new EC pipelines (hard coded 1 as of now)
    * Client sends the instanceIndex during chunkWrites (required for container 
creation)
    * Container files on datanodes persist the instance index
    * ContainerReports contains the instanceIndex
    * SCM adds the new field the ContainerReplica instances
    * RelicationManager is extended to handle EC type containers (with a stub 
implementation)
   
   ## What is the link to the Apache JIRA
   
   https://issues.apache.org/jira/browse/HDDS-4954
   
   ## How was this patch tested?
   
   Started Ozone cluster and created a key:
   
   ```
   ./ozone sh key put -t EC /vol1/bucket1/key1 ../README.md
   ```
   
   Checked the container yaml file if it contains the instandeIndex.
   
   Checked the SCM log for the message from ReplicationMananger:
   
   ```
   2021-03-17 12:30:02,754 INFO  container.ReplicationManager 
(ReplicationManager.java:processContainer(329)) - TODO: replication management 
for EC containers are missing. Container #1, 127.0.0.1 #7
   ```


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

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