ChenSammi commented on code in PR #8492:
URL: https://github.com/apache/ozone/pull/8492#discussion_r2115423380
##########
hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/impl/HddsDispatcher.java:
##########
@@ -435,6 +451,37 @@ && getMissingContainerSet().contains(containerID)) {
}
}
+ /**
+ * If the volume is full, we need to inform SCM about the latest volume
usage stats and send the close container
+ * action for this container immediately. {@link
HddsDispatcher#sendCloseContainerActionIfNeeded(Container, boolean)}
+ * just adds the action to the heartbeat. Here, we get the latest storage
statistics for this node, add them to the
+ * heartbeat, and then send the heartbeat (including container close action)
immediately.
+ * @param volume the volume being written to
+ */
+ private void handleFullVolume(HddsVolume volume) throws
StorageContainerException {
+ long current = System.currentTimeMillis();
+ long last = fullVolumeLastHeartbeatTriggerMs.get();
Review Comment:
I don't have a good answer for this after thought for a while. The ideal
state is if we want to send immediate heartbeat when one volume is full, we
should respect each volume, send a heartbeat for each volume when it's full,
but consider the complexity introduced to achieve that, I just doubt whether
it's worthy to do that.
Because except the heartbeat sent here, there are regular node reports with
storage info sent every 60s. If we only sent one report regardless of which
volume, them probably we only need to sent the first one, and let the regular
periodic node reports do the rest thing.
--
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.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]