[ https://issues.apache.org/jira/browse/HDFS-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13205650#comment-13205650 ]
Tsz Wo (Nicholas), SZE commented on HDFS-2931: ---------------------------------------------- +1 patch looks good. Thanks a lot, Harsh! > Switch the DataNode's BlockVolumeChoosingPolicy to be a private-audience > interface > ---------------------------------------------------------------------------------- > > Key: HDFS-2931 > URL: https://issues.apache.org/jira/browse/HDFS-2931 > Project: Hadoop HDFS > Issue Type: Task > Components: data-node > Affects Versions: 0.23.0 > Reporter: Harsh J > Assignee: Harsh J > Priority: Minor > Labels: api > Attachments: HDFS-2931.patch > > > From Nicholas, at the tail of HDFS-1120: > {quote} > However, if we annotate it as public, all the classes associated with them > should also be annotated as public. Also, whenever we change the interface or > any of the associated classes, it is an incompatible change. > In our case, BlockVolumeChoosingPolicy uses FSVolumeInterface, which is a > part of FSDatasetInterface. In FSDatasetInterface, there are many classes > should not be exposed. One way to solve it is to make FSVolumeInterface > independent of FSDatasetInterface. However, FSVolumeInterface is not yet a > well-designed interface for the public. > For these reasons, it is justified to annotate it as private, the same as > BlockPlacementPolicy. > {quote} > We should switch BlockVolumeChoosingPolicy to for a private audience. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira