[
https://issues.apache.org/jira/browse/HDFS-13381?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16459012#comment-16459012
]
Daryn Sharp commented on HDFS-13381:
------------------------------------
{quote}{quote}More than one file collector implementation means the namesystem
context abstraction is being violated.
{quote}
Only two specific implementations, one should be for external context and other
one for strictly internal context. Like I said in the above comment, we added
FileCollector interface for better code readability.
{quote}
Here's the disconnect: The needed abstraction is not about "better code
readability".
The context was supposed to prove the feature is pluggable since it arguably
doesn't belong in the NN. It's not pluggable if the bulk of the feature
requires multiple impls (whether via "if" conditionals, or separate impl
classes). Multiple impls impact ongoing stability, maintenance, and testing
overhead for everyone.
We need one unified implementation that uses minimal external calls that can be
abstracted in the context to either make rpc or fsn calls.
> [SPS]: Use DFSUtilClient#makePathFromFileId() to prepare satisfier file path
> ----------------------------------------------------------------------------
>
> Key: HDFS-13381
> URL: https://issues.apache.org/jira/browse/HDFS-13381
> Project: Hadoop HDFS
> Issue Type: Sub-task
> Reporter: Rakesh R
> Assignee: Rakesh R
> Priority: Major
> Attachments: HDFS-13381-HDFS-10285-00.patch,
> HDFS-13381-HDFS-10285-01.patch
>
>
> This Jira task will address the following comments:
> # Use DFSUtilClient::makePathFromFileId, instead of generics(one for string
> path and another for inodeId) like today.
> # Only the context impl differs for external/internal sps. Here, it can
> simply move FileCollector and BlockMoveTaskHandler to Context interface.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]