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

Kai Zheng commented on HADOOP-11740:
------------------------------------

Thanks [~zhz] for the good thoughts.
bq.We can get rid of ErasureCoder since it has a single subclass now 
(AbstractErasureCoder)
Yes it's often a good question to think about either interface or abstract 
class in Java. My feeling is that if it's in a framework, subject to be 
pluggable and implemented by customers, an interface would be good to have. So 
I guess we could keep {{ErasureCoder}} interface, and convert 
{{ErasureCodingStep}} interface to a class.
bq.If ECBlockGroup can provide erased indices, we can further combine encoding 
and decoding classes
I'm not sure, as erased indices have to be be computed according to input 
blocks and output blocks just for decoders, and encoders don't have the related 
logics. Currently in RS coder the decoding is rather simple but I believe it 
will be much complicated for codes like LRC and Hitchhiker, so separating 
encoding class and decoding class is desired.

> Combine erasure encoder and decoder interfaces
> ----------------------------------------------
>
>                 Key: HADOOP-11740
>                 URL: https://issues.apache.org/jira/browse/HADOOP-11740
>             Project: Hadoop Common
>          Issue Type: Sub-task
>          Components: io
>            Reporter: Zhe Zhang
>            Assignee: Zhe Zhang
>         Attachments: HADOOP-11740-000.patch
>
>
> Rationale [discussed | 
> https://issues.apache.org/jira/browse/HDFS-7337?focusedCommentId=14376540&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14376540]
>  under HDFS-7337.



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

Reply via email to