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

Wei-Chiu Chuang commented on HADOOP-13665:
------------------------------------------

Hello [~lewuathe] and [~drankye].
Thank you both for contributing the patch and posting comments. I wanted to 
review the patch and post comments too. Sorry that I am late to coming to it 
late.

Given that native codec is also preferred whenever possible, would it make 
sense to update IO_ERASURECODE_CODEC_RS_RAWCODER_DEFAULT to be 
"NativeRSRawErasureCoderFactory,RSRawErasureCoderFactory"? Also the same for 
other codecs.

In {{CodecUtil#createRawEncoderWithFallback}}, please print a warning message 
if fallback happens
{code}
      catch (Exception e) {
        // Fallback to next coder if possible
      }
{code}
The warning message should be like "Failed to create raw erasure encoder 
<codec>, fallback to next codec if possible"

createRawDecoderWithFallback should also have the same warning log

Could you also use IO_ERASURECODE_CODEC instead of "io.erasurecode.codec."?

Please also update core-default.xml to include the configuration key 
io.erasurecode.codec.coders and its default value.

> Erasure Coding codec should support fallback coder
> --------------------------------------------------
>
>                 Key: HADOOP-13665
>                 URL: https://issues.apache.org/jira/browse/HADOOP-13665
>             Project: Hadoop Common
>          Issue Type: Sub-task
>          Components: io
>            Reporter: Wei-Chiu Chuang
>            Assignee: Kai Sasaki
>            Priority: Blocker
>              Labels: hdfs-ec-3.0-must-do
>         Attachments: HADOOP-13665.01.patch, HADOOP-13665.02.patch, 
> HADOOP-13665.03.patch, HADOOP-13665.04.patch, HADOOP-13665.05.patch, 
> HADOOP-13665.06.patch, HADOOP-13665.07.patch, HADOOP-13665.08.patch, 
> HADOOP-13665.09.patch
>
>
> The current EC codec supports a single coder only (by default pure Java 
> implementation). If the native coder is specified but is unavailable, it 
> should fallback to pure Java implementation.
> One possible solution is to follow the convention of existing Hadoop native 
> codec, such as transport encryption (see {{CryptoCodec.java}}). It supports 
> fallback by specifying two or multiple coders as the value of property, and 
> loads coders in order.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

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

Reply via email to