[ 
https://issues.apache.org/jira/browse/HDDS-801?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16686450#comment-16686450
 ] 

Mukul Kumar Singh commented on HDDS-801:
----------------------------------------

Thanks for working on this [~nandakumar131]. The patch looks really good to me. 
Please find my comment as following

1) CloseContainerCommandHandler:94 -> contaienrState to containerState
2) CloseContainerCommandHandler:99 -> updateContainerState should be changed to 
appropriate type like closing or stopContainer
3) CloseContainerCommandHandler:103-104, I feel this can be moved inside 
XceiverServerRatis, and this can be changed to function doesPipelineExists, 
adding a call in ratis to check a pipeline exists is trivial and this code can 
be removed once this issue is fixed in Ratis.
4) ContainerData.java:244, lets add a getter function
5) KeyValueContainer:272-308, all the three functions are performing similar 
steps, Should this be encapsulated in one function and a supplier provided to 
perform the actual transitions i.e. CLOSING, CLOSED and QUASI_CLOSED?
6) KeyValueContainer:306, both quasiClose and Close are performing the 
compactDB operations. When the transition from QUASI_CLOSED to CLOSED is 
allowed later, we should not compact the DB again.
7) KeyValueHandler:390, the container should already be in CLOSING state, Lets 
add an precondition here that the container is already in closing state.
8) TestCloseContainerByPipeline:181, lets change the assertion here to 
isQuasiClosed.

> Quasi close the container when close is not executed via Ratis
> --------------------------------------------------------------
>
>                 Key: HDDS-801
>                 URL: https://issues.apache.org/jira/browse/HDDS-801
>             Project: Hadoop Distributed Data Store
>          Issue Type: Improvement
>          Components: Ozone Datanode
>    Affects Versions: 0.3.0
>            Reporter: Nanda kumar
>            Assignee: Nanda kumar
>            Priority: Major
>         Attachments: HDDS-801.000.patch, HDDS-801.001.patch, 
> HDDS-801.002.patch
>
>
> When datanode received CloseContainerCommand and the replication type is not 
> RATIS, we should QUASI close the container. After quasi-closing the container 
> an ICR has to be sent to SCM.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to