Details
-
Sub-task
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
None
-
None
-
-
Reviewed
Description
It's good to define and ensure input buffers are not affected during coding process in raw erasure coders. Below are copied from discussion with jingzhao in HDFS-8481:
In that case we cannot reuse the source buffers I guess? Then do we need to expose this information in the decoder?
Good catch Jing! Yes in this case we can't reuse the source buffers here as they need to be passed to caller/applications without being changed. I'm planning to re-implement the Java coders in
HADOOP-12041and related, when done it's possible to ensure the input buffers not to be affected. Benefits of doing this in coder layer: 1) a more clear contract between coder and caller in more general sense for the inputs; 2) concrete coder may have specific tweak to optimize in the aspect, ideally no input data copying at all, worst, make the copy, but all transparent to callers; 3) allow new coders (LRC, HH) to be layered on other primitive coders (RS, XOR) more easily.
Attachments
Attachments
Issue Links
- is depended upon by
-
HADOOP-12041 Implement another Reed-Solomon coder in pure Java
- Resolved