[ https://issues.apache.org/jira/browse/HDFS-12838?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16273354#comment-16273354 ]
Chen Liang commented on HDFS-12838: ----------------------------------- Thanks for working on this [~msingh]! I think this is a very good improvement. Looks pretty good to me overall. Just one comment, seems to me when {{KeyManagerImpl#openKey}} passes in a {{requestedSize}} of 0, then it ends up making an unnecessary call that does nothing. Maybe we should check and skip this case, also for better clearance of code. > Ozone: Optimize number of allocated block rpc by aggregating multiple block > allocation requests > ----------------------------------------------------------------------------------------------- > > Key: HDFS-12838 > URL: https://issues.apache.org/jira/browse/HDFS-12838 > Project: Hadoop HDFS > Issue Type: Sub-task > Components: ozone > Affects Versions: HDFS-7240 > Reporter: Mukul Kumar Singh > Assignee: Mukul Kumar Singh > Fix For: HDFS-7240 > > Attachments: HDFS-12838-HDFS-7240.001.patch, > HDFS-12838-HDFS-7240.002.patch, HDFS-12838-HDFS-7240.003.patch > > > Currently KeySpaceManager allocates multiple blocks by sending multiple block > allocation requests over the RPC. This can be optimized to aggregate multiple > block allocation request over one rpc. > {code} > while (requestedSize > 0) { > long allocateSize = Math.min(scmBlockSize, requestedSize); > AllocatedBlock allocatedBlock = > scmBlockClient.allocateBlock(allocateSize, type, factor); > KsmKeyLocationInfo subKeyInfo = new KsmKeyLocationInfo.Builder() > .setContainerName(allocatedBlock.getPipeline().getContainerName()) > .setBlockID(allocatedBlock.getKey()) > .setShouldCreateContainer(allocatedBlock.getCreateContainer()) > .setIndex(idx++) > .setLength(allocateSize) > .setOffset(0) > .build(); > locations.add(subKeyInfo); > requestedSize -= allocateSize; > } > {code} -- This message was sent by Atlassian JIRA (v6.4.14#64029) --------------------------------------------------------------------- To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org