[
https://issues.apache.org/jira/browse/HDFS-13399?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16427453#comment-16427453
]
Plamen Jeliazkov commented on HDFS-13399:
-----------------------------------------
Attaching a preliminary patch.
Notable changes:
(1) In order to support {{AlignmentContext}} across HA I had to modify
{{HAProxyFactory}} interface. Passed the {{AlignmentContext}} across both
{{createProxy}} methods. This resulted in modifying {{ClientHAProxyFactory}}
and {{NameNodeHAProxyFactory}}.
(2) {{RpcEngine}} interface changed in order to pass {{AlignmentContext}}
through it's main {{getProxy}} call.
(3) Heavy use of method overloading was done to attempt to minimize changes. In
most cases the "old" methods now just pass {{null}} for their alignmentContext
parameter.
(4) Finally, {{Call}} was modified to have an overloaded method for
construction and and {{Client.receiveRpcResponse}} and
{{Client.sendRpcRequest}} make use of {{Call.alignmentContext}}, preserving the
mapping of DFSClient to their respective AlignmentContext per call.
(5) TestStateAlignmentContext was modified to use a new DFSClient that had a
Mockito spied AlignmentContext passed into it's ClientProtocol proxy.
The patch is pretty sizable but I believe the changes are overall fairly
trivial.
Looking forward to your review(s).
> Make Client field AlignmentContext non-static.
> ----------------------------------------------
>
> Key: HDFS-13399
> URL: https://issues.apache.org/jira/browse/HDFS-13399
> Project: Hadoop HDFS
> Issue Type: Sub-task
> Affects Versions: HDFS-12943
> Reporter: Plamen Jeliazkov
> Assignee: Plamen Jeliazkov
> Priority: Major
> Attachments: HDFS-13399-HDFS-12943.000.patch
>
>
> In HDFS-12977, DFSClient's constructor was altered to make use of a new
> static method in Client that allowed one to set an AlignmentContext. This
> work is to remove that static field and make each DFSClient pass it's
> AlignmentContext down to the proxy Call level.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]