[
https://issues.apache.org/jira/browse/HDFS-12745?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16255756#comment-16255756
]
Xiaoyu Yao commented on HDFS-12745:
-----------------------------------
[~msingh], I take a look at patch v6 and it looks good to me overall. Here are
some comments:
NIT:
XceiverClientStandAlone.java -> XceiverClientStandalone.java and the class name
to be consistent.
Pipeline.java
Line 79: Should we use the OzoneProtos.Pipeline directly to avoid the
conversion, which also have a builder to construct pipeline object without
worrying about different constructors?
ContainerProtocolCalls.java
Line 229: agree with [~anu] that we can get the pipeline from a client unless
it is removed from the XceiverClientSpi interface and implementation. Can you
elaborate on adding the additional parameter for the pipeline?
Line 237: should we remove the containerName from protobuf definition for
pipeline as a pipeline may be shared by multiple containers?
XceiverServerInitializer.java
Line 33: NIT: XceiverServerStandAlone->XceiverServerStandalone
XceiverServerStandAlone.java
Line 45/47/60: same as above
PipelineManager.java
Line 40: suggest to change activePipelines from private to protect so that
subclass can access it to update/close pipeline.
Also, how do we protect the thread safe of activePipelines among
get/update/close operations?
Line 78: should we allow round-robin of existing pipelines if the newNodes is
less than the replication factor requested?
Line 82/93: the number of parameters in the format string (1) is less than the
actual parameters (2), we need a {} after “for container”
> Ozone: XceiverClientManager should cache objects based on pipeline name
> -----------------------------------------------------------------------
>
> Key: HDFS-12745
> URL: https://issues.apache.org/jira/browse/HDFS-12745
> 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-12745-HDFS-7240.001.patch,
> HDFS-12745-HDFS-7240.002.patch, HDFS-12745-HDFS-7240.003.patch,
> HDFS-12745-HDFS-7240.004.patch, HDFS-12745-HDFS-7240.005.patch,
> HDFS-12745-HDFS-7240.006.patch
>
>
> With just the standalone pipeline, a new pipeline was created for each and
> every container.
> This code can be optimized so that pipelines are craeted less frequently.
> Caching using pipeline names will help with Ratis clients as well.
> a) Remove Container name from Pipeline object.
> b) XceiverClientManager should cache objects based on pipeline name
> c) XceiverClient and XceiverServer should be renamed to
> XceiverClientStandAlone & XceiverServerRatis
> d) StandAlone pipeline should have notion of re-using pipeline objects.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]