[
https://issues.apache.org/jira/browse/HDFS-9879?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15173298#comment-15173298
]
Kai Zheng commented on HDFS-9879:
---------------------------------
Hi Rakesh, did you mean this in HDFS cache sense? In my understanding, HDFS
cache feature can allow some hot blocks to be cached in datanode memory to
serve client frequent read requests. If you mean other thing, probably adjust
the title some bit. Thanks.
> Erasure Coding : schedule striped blocks to be cached on DataNodes
> ------------------------------------------------------------------
>
> Key: HDFS-9879
> URL: https://issues.apache.org/jira/browse/HDFS-9879
> Project: Hadoop HDFS
> Issue Type: Sub-task
> Reporter: Rakesh R
> Assignee: Rakesh R
>
> This jira to discuss and implement the caching of striped block objects on
> the appropriate datanode.
> Presently it is checking block group size and scheduling the blockGroupId to
> the datanode, which needs to be refined by checking the
> {{StripedBlockUtil.getInternalBlockLength()}} and schedule proper blockId to
> the datanode.
> {code}
> CacheReplicationMonitor.java
> if (pendingCapacity < blockInfo.getNumBytes()) {
> LOG.trace("Block {}: DataNode {} is not a valid possibility " +
> "because the block has size {}, but the DataNode only has {} " +
> "bytes of cache remaining ({} pending bytes, {} already cached.)",
> blockInfo.getBlockId(), datanode.getDatanodeUuid(),
> blockInfo.getNumBytes(), pendingCapacity, pendingBytes,
> datanode.getCacheRemaining());
> outOfCapacity++;
> continue;
> }
> for (DatanodeDescriptor datanode : chosen) {
> LOG.trace("Block {}: added to PENDING_CACHED on DataNode {}",
> blockInfo.getBlockId(), datanode.getDatanodeUuid());
> pendingCached.add(datanode);
> boolean added = datanode.getPendingCached().add(cachedBlock);
> assert added;
> }
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)