hadoop-hdfs-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Nandakumar (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HDFS-12387) Ozone: Support Ratis as a first class replication mechanism
Date Wed, 06 Sep 2017 19:28:00 GMT

    [ https://issues.apache.org/jira/browse/HDFS-12387?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16155913#comment-16155913

Nandakumar commented on HDFS-12387:

Thanks [~anu] for working on this, please find my initial comments.

*ContainerState Change*

Step 1) ALLOCATED -> done in SCM during allocateContainer (allocateBlock call)
Step 2) ALLOCATED to CREATING -> done by Client
Step 3) creation of container -> done by Client
Step 4) CREATING to OPEN -> done by Client

Case 1) If another client does an allocateBlock call in between step 1 and 2, we will return
{{AllocatedBlock}} with create container flag set to true. This will cause two clients to
trigger create container call to same pipeline and one will result in CONTAINER_EXISTS exception.

Case 2) If container creation call (step 3) fails with an exception, we will never revert
the container state from CREATING to ALLOCATED.

Case 3) If step 4 fails, we will never change the container state from CREATING to OPEN.

To solve this we can do the transition from ALLOCATED to CREATING during {{BlockManagerImpl#allocateBlock}}
call, and do a refreshContainers during each allocateBlock call which will update the actual
state of the container.


174: No check is done before setting the pipeline replication type as ReplicationType.STAND_ALONE
and setLifeCycleState(OzoneProtos.LifeCycleState.OPEN)
I think we should check if {{nodes.size() == 1}} before setting them.

> Ozone: Support Ratis as a first class replication mechanism
> -----------------------------------------------------------
>                 Key: HDFS-12387
>                 URL: https://issues.apache.org/jira/browse/HDFS-12387
>             Project: Hadoop HDFS
>          Issue Type: Sub-task
>          Components: ozone
>    Affects Versions: HDFS-7240
>            Reporter: Anu Engineer
>            Assignee: Anu Engineer
>            Priority: Critical
>         Attachments: HDFS-12387-HDFS-7240.001.patch
> Ozone container layer supports pluggable replication policies. This JIRA brings Apache
Ratis based replication to Ozone.  Apache Ratis is a java implementation of Raft protocol.

This message was sent by Atlassian JIRA

To unsubscribe, e-mail: hdfs-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: hdfs-issues-help@hadoop.apache.org

View raw message