[ 
https://issues.apache.org/jira/browse/HDFS-10636?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15408705#comment-15408705
 ] 

Virajith Jalaparti commented on HDFS-10636:
-------------------------------------------

Thanks [~chris.douglas] for the comments and fixing the checkstyle/findbugs. 

I am attaching a new patch to address the above comments.

bq. Breaking up the switch statement in build() avoids a checkstyle complaint? 
This might be more legible if each (fairly long) case stmt were in a private 
method.

Addressed in the patch -- moved each case statement to a private function.

bq. Is {{DataStorage::getTrashDirectoryForBlockFile}} now unused, except by 
tests? 

Yes, it is no longer used/required. I modified the tests that access 
{{DataStorage::getTrashDirectoryForBlockFile}}, to ensure that it is no longer 
needed and removed this function. I also modified tests that access 
{{BlockPoolSliceStorage::getTrashDirectory(File)}} to access 
{{BlockPoolSliceStorage::getTrashDirectory(ReplicaInfo)}}, and made the former 
a private function in {{BlockPoolSliceStorage}}.

bq. the call to {{Storage::nativeCopyFileUnbuffered}} is removed, so there's no 
path to the {{NativeIO}} libraries. This should be maintained.
Agree. I have restored this by adding two new abstract functions to 
{{ReplicaInfo}}: {{copyMetadata}} and {{copyBlockdata}}, and implementing them 
in {{LocalReplica}} to use {{Storage::nativeCopyFileUnbuffered}}.

> Modify ReplicaInfo to remove the assumption that replica metadata and data 
> are stored in java.io.File.
> ------------------------------------------------------------------------------------------------------
>
>                 Key: HDFS-10636
>                 URL: https://issues.apache.org/jira/browse/HDFS-10636
>             Project: Hadoop HDFS
>          Issue Type: Sub-task
>          Components: datanode, fs
>            Reporter: Virajith Jalaparti
>            Assignee: Virajith Jalaparti
>         Attachments: HDFS-10636.001.patch, HDFS-10636.002.patch, 
> HDFS-10636.003.patch, HDFS-10636.004.patch
>
>
> Replace java.io.File related APIs from {{ReplicaInfo}}, and enable the 
> definition of new {{ReplicaInfo}} sub-classes whose metadata and data can be 
> present on external storages (HDFS-9806). 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to