Shashikant Banerjee created HDDS-1843:
-----------------------------------------
Summary: Close container command should sync the Rocks db before
changing to closed state.
Key: HDDS-1843
URL: https://issues.apache.org/jira/browse/HDDS-1843
Project: Hadoop Distributed Data Store
Issue Type: Bug
Components: Ozone Datanode
Affects Versions: 0.5.0
Reporter: Shashikant Banerjee
Assignee: Shashikant Banerjee
Fix For: 0.5.0
Right now, all write chunks use BufferedIO ie, sync flag is disabled by
default. Also, Rocks Db metadata updates are done in Rocks DB cache first at
Datanode. In case, there comes a situation where the buffered chunk data as
well as the corresponding metadata update is lost as a part of datanode
restart, it may lead to a situation where, it will not be possible to detect
the corruption (not even with container scanner) of this nature in a reasonable
time frame, until and unless there is a client IO failure or Recon server
detects it over time. In order to atleast to detect the problem, close
container command on datanode should sync the rocks db file before moving the
replica to Closed state. In such a way, ContainerScanner will be able to detect
this.We can also add a metric around sync to measure how much of a throughput
loss it can inncurr.
Thanks [~msingh] for suggesting this.
--
This message was sent by Atlassian JIRA
(v7.6.14#76016)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]