[
https://issues.apache.org/jira/browse/HADOOP-11996?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15168148#comment-15168148
]
Colin Patrick McCabe commented on HADOOP-11996:
-----------------------------------------------
Hi [~drankye],
Sorry for the hiatus. I was on vacation, and after that I had to do some other
things.
I took a look at this again today. I think there have been a lot of positive
changes... avoiding duplication of the unit test is a good thing, for example.
However, I think the code needs some more structure. Right now, it is hard to
see the connection between source code names and what is there. For example,
why is {{erasure_coder.c}} not in the coder directory? Why is
{{erasure_code_native.c}} in the {{coder}} directory, and why doesn't it have
anything to do with coders? Why is the source for the functions described in
{{gf_util.h}} in a source file named {{erasure_code.c}}? I also see that there
are some other native code changes in HADOOP-11540, like the addition of a
{{coder_util.c}} file.
To move forward with this, I suggest:
* Let's put all the native changes needed to get ISAL to work into this patch.
The natural patch split is Java code in HADOOP-11540, and C code in this JIRA,
so let's do that. Let's see all the C code in this patch.
* Get rid of the {{hadoop/io/erasurecode/coder}} directory. We should be able
to put all the code in {{hadoop/io/erasurecode}}; everything in this directory
should serve the cause of erasure encoding and decoding, so there is no need
for a separate directory.
* Put the functions described in {{gf_util.h}} in a source code file named
{{gf_util.c}}, not in {{erasure_code.c}}
* Functions like dump, dumpMatrix, dumpCodingMatrix, etc. belong in a utility
file named something like {{dump.c}}
* Rename {{CoderState}} to {{IsalEncoder}}. Rename {{DecoderState}} to
{{IsalDecoder}}.
Thanks, [~drankye] and [~zhz]
> Native erasure coder facilities based on ISA-L
> ----------------------------------------------
>
> Key: HADOOP-11996
> URL: https://issues.apache.org/jira/browse/HADOOP-11996
> Project: Hadoop Common
> Issue Type: Sub-task
> Components: io
> Reporter: Kai Zheng
> Assignee: Kai Zheng
> Attachments: HADOOP-11996-initial.patch, HADOOP-11996-v2.patch,
> HADOOP-11996-v3.patch, HADOOP-11996-v4.patch, HADOOP-11996-v5.patch,
> HADOOP-11996-v6.patch, HADOOP-11996-v7.patch
>
>
> While working on HADOOP-11540 and etc., it was found useful to write the
> basic facilities based on Intel ISA-L library separately from JNI stuff. It's
> also easy to debug and troubleshooting, as no JNI or Java stuffs are involved.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)