[03/50] [abbrv] hadoop git commit: HADOOP-11646. Erasure Coder API for encoding and decoding of block group ( Contributed by Kai Zheng )
HADOOP-11646. Erasure Coder API for encoding and decoding of block group ( Contributed by Kai Zheng ) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/3e96180e Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/3e96180e Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/3e96180e Branch: refs/heads/HDFS-7285 Commit: 3e96180e656cba6bb4e105c9a58d0659ff0d Parents: d3f9556 Author: Vinayakumar B vinayakum...@apache.org Authored: Mon Mar 9 12:32:26 2015 +0530 Committer: Zhe Zhang z...@apache.org Committed: Mon Apr 13 13:08:33 2015 -0700 -- .../hadoop-common/CHANGES-HDFS-EC-7285.txt | 2 + .../apache/hadoop/io/erasurecode/ECBlock.java | 80 ++ .../hadoop/io/erasurecode/ECBlockGroup.java | 82 ++ .../erasurecode/coder/AbstractErasureCoder.java | 63 + .../coder/AbstractErasureCodingStep.java| 59 .../coder/AbstractErasureDecoder.java | 152 +++ .../coder/AbstractErasureEncoder.java | 50 .../io/erasurecode/coder/ErasureCoder.java | 77 ++ .../io/erasurecode/coder/ErasureCodingStep.java | 55 .../io/erasurecode/coder/ErasureDecoder.java| 41 +++ .../erasurecode/coder/ErasureDecodingStep.java | 52 .../io/erasurecode/coder/ErasureEncoder.java| 39 +++ .../erasurecode/coder/ErasureEncodingStep.java | 49 .../io/erasurecode/coder/XorErasureDecoder.java | 78 ++ .../io/erasurecode/coder/XorErasureEncoder.java | 45 .../erasurecode/rawcoder/RawErasureCoder.java | 2 +- .../erasurecode/coder/TestErasureCoderBase.java | 266 +++ .../io/erasurecode/coder/TestXorCoder.java | 50 18 files changed, 1241 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/3e96180e/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt -- diff --git a/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt b/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt index ee42c84..c17a1bd 100644 --- a/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt +++ b/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt @@ -15,4 +15,6 @@ HADOOP-11643. Define EC schema API for ErasureCodec. Contributed by Kai Zheng ( Kai Zheng ) +HADOOP-11646. Erasure Coder API for encoding and decoding of block group +( Kai Zheng via vinayakumarb ) http://git-wip-us.apache.org/repos/asf/hadoop/blob/3e96180e/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java new file mode 100644 index 000..956954a --- /dev/null +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java @@ -0,0 +1,80 @@ +/** + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * License); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.hadoop.io.erasurecode; + +/** + * A wrapper of block level data source/output that {@link ECChunk}s can be + * extracted from. For HDFS, it can be an HDFS block (250MB). Note it only cares + * about erasure coding specific logic thus avoids coupling with any HDFS block + * details. We can have something like HdfsBlock extend it. + */ +public class ECBlock { + + private boolean isParity; + private boolean isErased; + + /** + * A default constructor. isParity and isErased are false by default. + */ + public ECBlock() { +this(false, false); + } + + /** + * A constructor specifying isParity and isErased. + * @param isParity + * @param isErased + */ + public ECBlock(boolean isParity, boolean isErased) { +this.isParity = isParity; +this.isErased = isErased; + } + + /** + * Set true if it's for a parity block. + * @param isParity + */
[07/50] [abbrv] hadoop git commit: HADOOP-11646. Erasure Coder API for encoding and decoding of block group ( Contributed by Kai Zheng )
HADOOP-11646. Erasure Coder API for encoding and decoding of block group ( Contributed by Kai Zheng ) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/d542a3d1 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/d542a3d1 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/d542a3d1 Branch: refs/heads/HDFS-7285 Commit: d542a3d1299e20268b2529c10dff7e3e9b377158 Parents: 53b9a1b Author: Vinayakumar B vinayakum...@apache.org Authored: Mon Mar 9 12:32:26 2015 +0530 Committer: Zhe Zhang z...@apache.org Committed: Mon Apr 13 09:36:08 2015 -0700 -- .../hadoop-common/CHANGES-HDFS-EC-7285.txt | 2 + .../apache/hadoop/io/erasurecode/ECBlock.java | 80 ++ .../hadoop/io/erasurecode/ECBlockGroup.java | 82 ++ .../erasurecode/coder/AbstractErasureCoder.java | 63 + .../coder/AbstractErasureCodingStep.java| 59 .../coder/AbstractErasureDecoder.java | 152 +++ .../coder/AbstractErasureEncoder.java | 50 .../io/erasurecode/coder/ErasureCoder.java | 77 ++ .../io/erasurecode/coder/ErasureCodingStep.java | 55 .../io/erasurecode/coder/ErasureDecoder.java| 41 +++ .../erasurecode/coder/ErasureDecodingStep.java | 52 .../io/erasurecode/coder/ErasureEncoder.java| 39 +++ .../erasurecode/coder/ErasureEncodingStep.java | 49 .../io/erasurecode/coder/XorErasureDecoder.java | 78 ++ .../io/erasurecode/coder/XorErasureEncoder.java | 45 .../erasurecode/rawcoder/RawErasureCoder.java | 2 +- .../erasurecode/coder/TestErasureCoderBase.java | 266 +++ .../io/erasurecode/coder/TestXorCoder.java | 50 18 files changed, 1241 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/d542a3d1/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt -- diff --git a/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt b/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt index ee42c84..c17a1bd 100644 --- a/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt +++ b/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt @@ -15,4 +15,6 @@ HADOOP-11643. Define EC schema API for ErasureCodec. Contributed by Kai Zheng ( Kai Zheng ) +HADOOP-11646. Erasure Coder API for encoding and decoding of block group +( Kai Zheng via vinayakumarb ) http://git-wip-us.apache.org/repos/asf/hadoop/blob/d542a3d1/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java new file mode 100644 index 000..956954a --- /dev/null +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java @@ -0,0 +1,80 @@ +/** + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * License); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.hadoop.io.erasurecode; + +/** + * A wrapper of block level data source/output that {@link ECChunk}s can be + * extracted from. For HDFS, it can be an HDFS block (250MB). Note it only cares + * about erasure coding specific logic thus avoids coupling with any HDFS block + * details. We can have something like HdfsBlock extend it. + */ +public class ECBlock { + + private boolean isParity; + private boolean isErased; + + /** + * A default constructor. isParity and isErased are false by default. + */ + public ECBlock() { +this(false, false); + } + + /** + * A constructor specifying isParity and isErased. + * @param isParity + * @param isErased + */ + public ECBlock(boolean isParity, boolean isErased) { +this.isParity = isParity; +this.isErased = isErased; + } + + /** + * Set true if it's for a parity block. + * @param isParity + */
[26/51] [abbrv] hadoop git commit: HADOOP-11646. Erasure Coder API for encoding and decoding of block group ( Contributed by Kai Zheng )
HADOOP-11646. Erasure Coder API for encoding and decoding of block group ( Contributed by Kai Zheng ) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/c8d4c251 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/c8d4c251 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/c8d4c251 Branch: refs/heads/HDFS-7285 Commit: c8d4c25153b26b57e916261d63936a0de2aa8b14 Parents: ffe990b Author: Vinayakumar B vinayakum...@apache.org Authored: Mon Mar 9 12:32:26 2015 +0530 Committer: Zhe Zhang z...@apache.org Committed: Mon Apr 6 10:20:58 2015 -0700 -- .../hadoop-common/CHANGES-HDFS-EC-7285.txt | 2 + .../apache/hadoop/io/erasurecode/ECBlock.java | 80 ++ .../hadoop/io/erasurecode/ECBlockGroup.java | 82 ++ .../erasurecode/coder/AbstractErasureCoder.java | 63 + .../coder/AbstractErasureCodingStep.java| 59 .../coder/AbstractErasureDecoder.java | 152 +++ .../coder/AbstractErasureEncoder.java | 50 .../io/erasurecode/coder/ErasureCoder.java | 77 ++ .../io/erasurecode/coder/ErasureCodingStep.java | 55 .../io/erasurecode/coder/ErasureDecoder.java| 41 +++ .../erasurecode/coder/ErasureDecodingStep.java | 52 .../io/erasurecode/coder/ErasureEncoder.java| 39 +++ .../erasurecode/coder/ErasureEncodingStep.java | 49 .../io/erasurecode/coder/XorErasureDecoder.java | 78 ++ .../io/erasurecode/coder/XorErasureEncoder.java | 45 .../erasurecode/rawcoder/RawErasureCoder.java | 2 +- .../erasurecode/coder/TestErasureCoderBase.java | 266 +++ .../io/erasurecode/coder/TestXorCoder.java | 50 18 files changed, 1241 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/c8d4c251/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt -- diff --git a/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt b/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt index ee42c84..c17a1bd 100644 --- a/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt +++ b/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt @@ -15,4 +15,6 @@ HADOOP-11643. Define EC schema API for ErasureCodec. Contributed by Kai Zheng ( Kai Zheng ) +HADOOP-11646. Erasure Coder API for encoding and decoding of block group +( Kai Zheng via vinayakumarb ) http://git-wip-us.apache.org/repos/asf/hadoop/blob/c8d4c251/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java new file mode 100644 index 000..956954a --- /dev/null +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java @@ -0,0 +1,80 @@ +/** + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * License); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.hadoop.io.erasurecode; + +/** + * A wrapper of block level data source/output that {@link ECChunk}s can be + * extracted from. For HDFS, it can be an HDFS block (250MB). Note it only cares + * about erasure coding specific logic thus avoids coupling with any HDFS block + * details. We can have something like HdfsBlock extend it. + */ +public class ECBlock { + + private boolean isParity; + private boolean isErased; + + /** + * A default constructor. isParity and isErased are false by default. + */ + public ECBlock() { +this(false, false); + } + + /** + * A constructor specifying isParity and isErased. + * @param isParity + * @param isErased + */ + public ECBlock(boolean isParity, boolean isErased) { +this.isParity = isParity; +this.isErased = isErased; + } + + /** + * Set true if it's for a parity block. + * @param isParity + */
[26/50] [abbrv] hadoop git commit: HADOOP-11646. Erasure Coder API for encoding and decoding of block group ( Contributed by Kai Zheng )
HADOOP-11646. Erasure Coder API for encoding and decoding of block group ( Contributed by Kai Zheng ) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/23572e5e Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/23572e5e Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/23572e5e Branch: refs/heads/HDFS-7285 Commit: 23572e5e10ce99dbb1f7723a2fc76b99e7278cd5 Parents: fe0e3b6 Author: Vinayakumar B vinayakum...@apache.org Authored: Mon Mar 9 12:32:26 2015 +0530 Committer: Zhe Zhang z...@apache.org Committed: Thu Apr 2 11:06:06 2015 -0700 -- .../hadoop-common/CHANGES-HDFS-EC-7285.txt | 2 + .../apache/hadoop/io/erasurecode/ECBlock.java | 80 ++ .../hadoop/io/erasurecode/ECBlockGroup.java | 82 ++ .../erasurecode/coder/AbstractErasureCoder.java | 63 + .../coder/AbstractErasureCodingStep.java| 59 .../coder/AbstractErasureDecoder.java | 152 +++ .../coder/AbstractErasureEncoder.java | 50 .../io/erasurecode/coder/ErasureCoder.java | 77 ++ .../io/erasurecode/coder/ErasureCodingStep.java | 55 .../io/erasurecode/coder/ErasureDecoder.java| 41 +++ .../erasurecode/coder/ErasureDecodingStep.java | 52 .../io/erasurecode/coder/ErasureEncoder.java| 39 +++ .../erasurecode/coder/ErasureEncodingStep.java | 49 .../io/erasurecode/coder/XorErasureDecoder.java | 78 ++ .../io/erasurecode/coder/XorErasureEncoder.java | 45 .../erasurecode/rawcoder/RawErasureCoder.java | 2 +- .../erasurecode/coder/TestErasureCoderBase.java | 266 +++ .../io/erasurecode/coder/TestXorCoder.java | 50 18 files changed, 1241 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/23572e5e/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt -- diff --git a/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt b/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt index ee42c84..c17a1bd 100644 --- a/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt +++ b/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt @@ -15,4 +15,6 @@ HADOOP-11643. Define EC schema API for ErasureCodec. Contributed by Kai Zheng ( Kai Zheng ) +HADOOP-11646. Erasure Coder API for encoding and decoding of block group +( Kai Zheng via vinayakumarb ) http://git-wip-us.apache.org/repos/asf/hadoop/blob/23572e5e/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java new file mode 100644 index 000..956954a --- /dev/null +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java @@ -0,0 +1,80 @@ +/** + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * License); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.hadoop.io.erasurecode; + +/** + * A wrapper of block level data source/output that {@link ECChunk}s can be + * extracted from. For HDFS, it can be an HDFS block (250MB). Note it only cares + * about erasure coding specific logic thus avoids coupling with any HDFS block + * details. We can have something like HdfsBlock extend it. + */ +public class ECBlock { + + private boolean isParity; + private boolean isErased; + + /** + * A default constructor. isParity and isErased are false by default. + */ + public ECBlock() { +this(false, false); + } + + /** + * A constructor specifying isParity and isErased. + * @param isParity + * @param isErased + */ + public ECBlock(boolean isParity, boolean isErased) { +this.isParity = isParity; +this.isErased = isErased; + } + + /** + * Set true if it's for a parity block. + * @param isParity + */
[31/50] [abbrv] hadoop git commit: HADOOP-11646. Erasure Coder API for encoding and decoding of block group ( Contributed by Kai Zheng )
HADOOP-11646. Erasure Coder API for encoding and decoding of block group ( Contributed by Kai Zheng ) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/0c6ed987 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/0c6ed987 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/0c6ed987 Branch: refs/heads/HDFS-7285 Commit: 0c6ed987fbb59fe210fae7dd2144ba0c16ace517 Parents: daa78e3 Author: Vinayakumar B vinayakum...@apache.org Authored: Mon Mar 9 12:32:26 2015 +0530 Committer: Zhe Zhang z...@apache.org Committed: Mon Mar 30 10:11:26 2015 -0700 -- .../hadoop-common/CHANGES-HDFS-EC-7285.txt | 2 + .../apache/hadoop/io/erasurecode/ECBlock.java | 80 ++ .../hadoop/io/erasurecode/ECBlockGroup.java | 82 ++ .../erasurecode/coder/AbstractErasureCoder.java | 63 + .../coder/AbstractErasureCodingStep.java| 59 .../coder/AbstractErasureDecoder.java | 152 +++ .../coder/AbstractErasureEncoder.java | 50 .../io/erasurecode/coder/ErasureCoder.java | 77 ++ .../io/erasurecode/coder/ErasureCodingStep.java | 55 .../io/erasurecode/coder/ErasureDecoder.java| 41 +++ .../erasurecode/coder/ErasureDecodingStep.java | 52 .../io/erasurecode/coder/ErasureEncoder.java| 39 +++ .../erasurecode/coder/ErasureEncodingStep.java | 49 .../io/erasurecode/coder/XorErasureDecoder.java | 78 ++ .../io/erasurecode/coder/XorErasureEncoder.java | 45 .../erasurecode/rawcoder/RawErasureCoder.java | 2 +- .../erasurecode/coder/TestErasureCoderBase.java | 266 +++ .../io/erasurecode/coder/TestXorCoder.java | 50 18 files changed, 1241 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/0c6ed987/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt -- diff --git a/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt b/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt index ee42c84..c17a1bd 100644 --- a/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt +++ b/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt @@ -15,4 +15,6 @@ HADOOP-11643. Define EC schema API for ErasureCodec. Contributed by Kai Zheng ( Kai Zheng ) +HADOOP-11646. Erasure Coder API for encoding and decoding of block group +( Kai Zheng via vinayakumarb ) http://git-wip-us.apache.org/repos/asf/hadoop/blob/0c6ed987/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java new file mode 100644 index 000..956954a --- /dev/null +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java @@ -0,0 +1,80 @@ +/** + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * License); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.hadoop.io.erasurecode; + +/** + * A wrapper of block level data source/output that {@link ECChunk}s can be + * extracted from. For HDFS, it can be an HDFS block (250MB). Note it only cares + * about erasure coding specific logic thus avoids coupling with any HDFS block + * details. We can have something like HdfsBlock extend it. + */ +public class ECBlock { + + private boolean isParity; + private boolean isErased; + + /** + * A default constructor. isParity and isErased are false by default. + */ + public ECBlock() { +this(false, false); + } + + /** + * A constructor specifying isParity and isErased. + * @param isParity + * @param isErased + */ + public ECBlock(boolean isParity, boolean isErased) { +this.isParity = isParity; +this.isErased = isErased; + } + + /** + * Set true if it's for a parity block. + * @param isParity + */
[35/50] [abbrv] hadoop git commit: HADOOP-11646. Erasure Coder API for encoding and decoding of block group ( Contributed by Kai Zheng )
HADOOP-11646. Erasure Coder API for encoding and decoding of block group ( Contributed by Kai Zheng ) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/11b648bd Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/11b648bd Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/11b648bd Branch: refs/heads/HDFS-7285 Commit: 11b648bdd2c8f28b91e7a39b7d779c1af4fd320c Parents: eee65b3 Author: Vinayakumar B vinayakum...@apache.org Authored: Mon Mar 9 12:32:26 2015 +0530 Committer: Zhe Zhang z...@apache.org Committed: Tue Mar 24 11:16:33 2015 -0700 -- .../hadoop-common/CHANGES-HDFS-EC-7285.txt | 2 + .../apache/hadoop/io/erasurecode/ECBlock.java | 80 ++ .../hadoop/io/erasurecode/ECBlockGroup.java | 82 ++ .../erasurecode/coder/AbstractErasureCoder.java | 63 + .../coder/AbstractErasureCodingStep.java| 59 .../coder/AbstractErasureDecoder.java | 152 +++ .../coder/AbstractErasureEncoder.java | 50 .../io/erasurecode/coder/ErasureCoder.java | 77 ++ .../io/erasurecode/coder/ErasureCodingStep.java | 55 .../io/erasurecode/coder/ErasureDecoder.java| 41 +++ .../erasurecode/coder/ErasureDecodingStep.java | 52 .../io/erasurecode/coder/ErasureEncoder.java| 39 +++ .../erasurecode/coder/ErasureEncodingStep.java | 49 .../io/erasurecode/coder/XorErasureDecoder.java | 78 ++ .../io/erasurecode/coder/XorErasureEncoder.java | 45 .../erasurecode/rawcoder/RawErasureCoder.java | 2 +- .../erasurecode/coder/TestErasureCoderBase.java | 266 +++ .../io/erasurecode/coder/TestXorCoder.java | 50 18 files changed, 1241 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/11b648bd/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt -- diff --git a/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt b/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt index ee42c84..c17a1bd 100644 --- a/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt +++ b/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt @@ -15,4 +15,6 @@ HADOOP-11643. Define EC schema API for ErasureCodec. Contributed by Kai Zheng ( Kai Zheng ) +HADOOP-11646. Erasure Coder API for encoding and decoding of block group +( Kai Zheng via vinayakumarb ) http://git-wip-us.apache.org/repos/asf/hadoop/blob/11b648bd/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java new file mode 100644 index 000..956954a --- /dev/null +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java @@ -0,0 +1,80 @@ +/** + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * License); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.hadoop.io.erasurecode; + +/** + * A wrapper of block level data source/output that {@link ECChunk}s can be + * extracted from. For HDFS, it can be an HDFS block (250MB). Note it only cares + * about erasure coding specific logic thus avoids coupling with any HDFS block + * details. We can have something like HdfsBlock extend it. + */ +public class ECBlock { + + private boolean isParity; + private boolean isErased; + + /** + * A default constructor. isParity and isErased are false by default. + */ + public ECBlock() { +this(false, false); + } + + /** + * A constructor specifying isParity and isErased. + * @param isParity + * @param isErased + */ + public ECBlock(boolean isParity, boolean isErased) { +this.isParity = isParity; +this.isErased = isErased; + } + + /** + * Set true if it's for a parity block. + * @param isParity + */
[38/50] [abbrv] hadoop git commit: HADOOP-11646. Erasure Coder API for encoding and decoding of block group ( Contributed by Kai Zheng )
HADOOP-11646. Erasure Coder API for encoding and decoding of block group ( Contributed by Kai Zheng ) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/a5804bf3 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/a5804bf3 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/a5804bf3 Branch: refs/heads/HDFS-7285 Commit: a5804bf3fb6684a940339ef11f1a705fa4ae87d0 Parents: 803d4da Author: Vinayakumar B vinayakum...@apache.org Authored: Mon Mar 9 12:32:26 2015 +0530 Committer: Zhe Zhang z...@apache.org Committed: Mon Mar 23 11:12:35 2015 -0700 -- .../hadoop-common/CHANGES-HDFS-EC-7285.txt | 2 + .../apache/hadoop/io/erasurecode/ECBlock.java | 80 ++ .../hadoop/io/erasurecode/ECBlockGroup.java | 82 ++ .../erasurecode/coder/AbstractErasureCoder.java | 63 + .../coder/AbstractErasureCodingStep.java| 59 .../coder/AbstractErasureDecoder.java | 152 +++ .../coder/AbstractErasureEncoder.java | 50 .../io/erasurecode/coder/ErasureCoder.java | 77 ++ .../io/erasurecode/coder/ErasureCodingStep.java | 55 .../io/erasurecode/coder/ErasureDecoder.java| 41 +++ .../erasurecode/coder/ErasureDecodingStep.java | 52 .../io/erasurecode/coder/ErasureEncoder.java| 39 +++ .../erasurecode/coder/ErasureEncodingStep.java | 49 .../io/erasurecode/coder/XorErasureDecoder.java | 78 ++ .../io/erasurecode/coder/XorErasureEncoder.java | 45 .../erasurecode/rawcoder/RawErasureCoder.java | 2 +- .../erasurecode/coder/TestErasureCoderBase.java | 266 +++ .../io/erasurecode/coder/TestXorCoder.java | 50 18 files changed, 1241 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/a5804bf3/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt -- diff --git a/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt b/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt index ee42c84..c17a1bd 100644 --- a/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt +++ b/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt @@ -15,4 +15,6 @@ HADOOP-11643. Define EC schema API for ErasureCodec. Contributed by Kai Zheng ( Kai Zheng ) +HADOOP-11646. Erasure Coder API for encoding and decoding of block group +( Kai Zheng via vinayakumarb ) http://git-wip-us.apache.org/repos/asf/hadoop/blob/a5804bf3/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java new file mode 100644 index 000..956954a --- /dev/null +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java @@ -0,0 +1,80 @@ +/** + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * License); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.hadoop.io.erasurecode; + +/** + * A wrapper of block level data source/output that {@link ECChunk}s can be + * extracted from. For HDFS, it can be an HDFS block (250MB). Note it only cares + * about erasure coding specific logic thus avoids coupling with any HDFS block + * details. We can have something like HdfsBlock extend it. + */ +public class ECBlock { + + private boolean isParity; + private boolean isErased; + + /** + * A default constructor. isParity and isErased are false by default. + */ + public ECBlock() { +this(false, false); + } + + /** + * A constructor specifying isParity and isErased. + * @param isParity + * @param isErased + */ + public ECBlock(boolean isParity, boolean isErased) { +this.isParity = isParity; +this.isErased = isErased; + } + + /** + * Set true if it's for a parity block. + * @param isParity + */
[46/50] [abbrv] hadoop git commit: HADOOP-11646. Erasure Coder API for encoding and decoding of block group ( Contributed by Kai Zheng )
HADOOP-11646. Erasure Coder API for encoding and decoding of block group ( Contributed by Kai Zheng ) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/ca332bf9 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/ca332bf9 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/ca332bf9 Branch: refs/heads/HDFS-7285 Commit: ca332bf9e3405b5c0c72fb569ad8a443e63ae731 Parents: a91afb2 Author: Vinayakumar B vinayakum...@apache.org Authored: Mon Mar 9 12:32:26 2015 +0530 Committer: Zhe Zhang z...@apache.org Committed: Mon Mar 16 13:13:16 2015 -0700 -- .../hadoop-common/CHANGES-HDFS-EC-7285.txt | 2 + .../apache/hadoop/io/erasurecode/ECBlock.java | 80 ++ .../hadoop/io/erasurecode/ECBlockGroup.java | 82 ++ .../erasurecode/coder/AbstractErasureCoder.java | 63 + .../coder/AbstractErasureCodingStep.java| 59 .../coder/AbstractErasureDecoder.java | 152 +++ .../coder/AbstractErasureEncoder.java | 50 .../io/erasurecode/coder/ErasureCoder.java | 77 ++ .../io/erasurecode/coder/ErasureCodingStep.java | 55 .../io/erasurecode/coder/ErasureDecoder.java| 41 +++ .../erasurecode/coder/ErasureDecodingStep.java | 52 .../io/erasurecode/coder/ErasureEncoder.java| 39 +++ .../erasurecode/coder/ErasureEncodingStep.java | 49 .../io/erasurecode/coder/XorErasureDecoder.java | 78 ++ .../io/erasurecode/coder/XorErasureEncoder.java | 45 .../erasurecode/rawcoder/RawErasureCoder.java | 2 +- .../erasurecode/coder/TestErasureCoderBase.java | 266 +++ .../io/erasurecode/coder/TestXorCoder.java | 50 18 files changed, 1241 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/ca332bf9/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt -- diff --git a/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt b/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt index ee42c84..c17a1bd 100644 --- a/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt +++ b/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt @@ -15,4 +15,6 @@ HADOOP-11643. Define EC schema API for ErasureCodec. Contributed by Kai Zheng ( Kai Zheng ) +HADOOP-11646. Erasure Coder API for encoding and decoding of block group +( Kai Zheng via vinayakumarb ) http://git-wip-us.apache.org/repos/asf/hadoop/blob/ca332bf9/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java new file mode 100644 index 000..956954a --- /dev/null +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java @@ -0,0 +1,80 @@ +/** + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * License); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.hadoop.io.erasurecode; + +/** + * A wrapper of block level data source/output that {@link ECChunk}s can be + * extracted from. For HDFS, it can be an HDFS block (250MB). Note it only cares + * about erasure coding specific logic thus avoids coupling with any HDFS block + * details. We can have something like HdfsBlock extend it. + */ +public class ECBlock { + + private boolean isParity; + private boolean isErased; + + /** + * A default constructor. isParity and isErased are false by default. + */ + public ECBlock() { +this(false, false); + } + + /** + * A constructor specifying isParity and isErased. + * @param isParity + * @param isErased + */ + public ECBlock(boolean isParity, boolean isErased) { +this.isParity = isParity; +this.isErased = isErased; + } + + /** + * Set true if it's for a parity block. + * @param isParity + */
hadoop git commit: HADOOP-11646. Erasure Coder API for encoding and decoding of block group ( Contributed by Kai Zheng )
Repository: hadoop Updated Branches: refs/heads/HDFS-7285 80401779f - 720901acf HADOOP-11646. Erasure Coder API for encoding and decoding of block group ( Contributed by Kai Zheng ) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/720901ac Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/720901ac Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/720901ac Branch: refs/heads/HDFS-7285 Commit: 720901acfc9085e35dbd2ab0f4eaa8c1cb249e81 Parents: 8040177 Author: Vinayakumar B vinayakum...@apache.org Authored: Mon Mar 9 12:32:26 2015 +0530 Committer: Vinayakumar B vinayakum...@apache.org Committed: Mon Mar 9 12:32:26 2015 +0530 -- .../hadoop-common/CHANGES-HDFS-EC-7285.txt | 2 + .../apache/hadoop/io/erasurecode/ECBlock.java | 80 ++ .../hadoop/io/erasurecode/ECBlockGroup.java | 82 ++ .../erasurecode/coder/AbstractErasureCoder.java | 63 + .../coder/AbstractErasureCodingStep.java| 59 .../coder/AbstractErasureDecoder.java | 152 +++ .../coder/AbstractErasureEncoder.java | 50 .../io/erasurecode/coder/ErasureCoder.java | 77 ++ .../io/erasurecode/coder/ErasureCodingStep.java | 55 .../io/erasurecode/coder/ErasureDecoder.java| 41 +++ .../erasurecode/coder/ErasureDecodingStep.java | 52 .../io/erasurecode/coder/ErasureEncoder.java| 39 +++ .../erasurecode/coder/ErasureEncodingStep.java | 49 .../io/erasurecode/coder/XorErasureDecoder.java | 78 ++ .../io/erasurecode/coder/XorErasureEncoder.java | 45 .../erasurecode/rawcoder/RawErasureCoder.java | 2 +- .../erasurecode/coder/TestErasureCoderBase.java | 266 +++ .../io/erasurecode/coder/TestXorCoder.java | 50 18 files changed, 1241 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/720901ac/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt -- diff --git a/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt b/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt index ee42c84..c17a1bd 100644 --- a/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt +++ b/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt @@ -15,4 +15,6 @@ HADOOP-11643. Define EC schema API for ErasureCodec. Contributed by Kai Zheng ( Kai Zheng ) +HADOOP-11646. Erasure Coder API for encoding and decoding of block group +( Kai Zheng via vinayakumarb ) http://git-wip-us.apache.org/repos/asf/hadoop/blob/720901ac/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java new file mode 100644 index 000..956954a --- /dev/null +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlock.java @@ -0,0 +1,80 @@ +/** + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * License); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.hadoop.io.erasurecode; + +/** + * A wrapper of block level data source/output that {@link ECChunk}s can be + * extracted from. For HDFS, it can be an HDFS block (250MB). Note it only cares + * about erasure coding specific logic thus avoids coupling with any HDFS block + * details. We can have something like HdfsBlock extend it. + */ +public class ECBlock { + + private boolean isParity; + private boolean isErased; + + /** + * A default constructor. isParity and isErased are false by default. + */ + public ECBlock() { +this(false, false); + } + + /** + * A constructor specifying isParity and isErased. + * @param isParity + * @param isErased + */ + public ECBlock(boolean isParity, boolean isErased) { +this.isParity = isParity; +this.isErased =