[02/50] hadoop git commit: HADOOP-11645. Erasure Codec API covering the essential aspects for an erasure code ( Contributed by Kai Zheng)
HADOOP-11645. Erasure Codec API covering the essential aspects for an erasure code ( 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/c284ac0a Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/c284ac0a Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/c284ac0a Branch: refs/heads/HDFS-7285 Commit: c284ac0a7f2ac3c2e38f7470694b1d4d2109c1b1 Parents: 8f01376 Author: Vinayakumar B vinayakum...@apache.org Authored: Tue Apr 7 16:05:22 2015 +0530 Committer: Zhe Zhang z...@apache.org Committed: Mon May 4 10:11:32 2015 -0700 -- .../hadoop-common/CHANGES-HDFS-EC-7285.txt | 3 + .../hadoop/io/erasurecode/ECBlockGroup.java | 18 .../erasurecode/codec/AbstractErasureCodec.java | 88 +++ .../io/erasurecode/codec/ErasureCodec.java | 56 .../io/erasurecode/codec/RSErasureCodec.java| 38 + .../io/erasurecode/codec/XORErasureCodec.java | 45 ++ .../erasurecode/coder/AbstractErasureCoder.java | 7 ++ .../io/erasurecode/coder/ErasureCoder.java | 7 ++ .../io/erasurecode/grouper/BlockGrouper.java| 90 9 files changed, 352 insertions(+) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/c284ac0a/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 7716728..c72394e 100644 --- a/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt +++ b/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt @@ -37,3 +37,6 @@ HADOOP-11805 Better to rename some raw erasure coders. Contributed by Kai Zheng ( Kai Zheng ) + +HADOOP-11645. Erasure Codec API covering the essential aspects for an erasure code +( Kai Zheng via vinayakumarb ) http://git-wip-us.apache.org/repos/asf/hadoop/blob/c284ac0a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlockGroup.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlockGroup.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlockGroup.java index 2c851a5..0a86907 100644 --- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlockGroup.java +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlockGroup.java @@ -79,4 +79,22 @@ public class ECBlockGroup { return false; } + /** + * Get erased blocks count + * @return + */ + public int getErasedCount() { +int erasedCount = 0; + +for (ECBlock dataBlock : dataBlocks) { + if (dataBlock.isErased()) erasedCount++; +} + +for (ECBlock parityBlock : parityBlocks) { + if (parityBlock.isErased()) erasedCount++; +} + +return erasedCount; + } + } http://git-wip-us.apache.org/repos/asf/hadoop/blob/c284ac0a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/codec/AbstractErasureCodec.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/codec/AbstractErasureCodec.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/codec/AbstractErasureCodec.java new file mode 100644 index 000..9993786 --- /dev/null +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/codec/AbstractErasureCodec.java @@ -0,0 +1,88 @@ +/** + * 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.codec; + +import org.apache.hadoop.conf.Configured; +import org.apache.hadoop.io.erasurecode.ECSchema; +import org.apache.hadoop.io.erasurecode.coder.*; +import
[05/50] hadoop git commit: HADOOP-11645. Erasure Codec API covering the essential aspects for an erasure code ( Contributed by Kai Zheng)
HADOOP-11645. Erasure Codec API covering the essential aspects for an erasure code ( 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/347619a4 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/347619a4 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/347619a4 Branch: refs/heads/HDFS-7285 Commit: 347619a406415dd0dff186e43a7f871ca13b6748 Parents: b95f233 Author: Vinayakumar B vinayakum...@apache.org Authored: Tue Apr 7 16:05:22 2015 +0530 Committer: Jing Zhao ji...@apache.org Committed: Wed Apr 29 11:06:50 2015 -0700 -- .../hadoop-common/CHANGES-HDFS-EC-7285.txt | 3 + .../hadoop/io/erasurecode/ECBlockGroup.java | 18 .../erasurecode/codec/AbstractErasureCodec.java | 88 +++ .../io/erasurecode/codec/ErasureCodec.java | 56 .../io/erasurecode/codec/RSErasureCodec.java| 38 + .../io/erasurecode/codec/XORErasureCodec.java | 45 ++ .../erasurecode/coder/AbstractErasureCoder.java | 7 ++ .../io/erasurecode/coder/ErasureCoder.java | 7 ++ .../io/erasurecode/grouper/BlockGrouper.java| 90 9 files changed, 352 insertions(+) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/347619a4/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 7716728..c72394e 100644 --- a/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt +++ b/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt @@ -37,3 +37,6 @@ HADOOP-11805 Better to rename some raw erasure coders. Contributed by Kai Zheng ( Kai Zheng ) + +HADOOP-11645. Erasure Codec API covering the essential aspects for an erasure code +( Kai Zheng via vinayakumarb ) http://git-wip-us.apache.org/repos/asf/hadoop/blob/347619a4/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlockGroup.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlockGroup.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlockGroup.java index 2c851a5..0a86907 100644 --- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlockGroup.java +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlockGroup.java @@ -79,4 +79,22 @@ public class ECBlockGroup { return false; } + /** + * Get erased blocks count + * @return + */ + public int getErasedCount() { +int erasedCount = 0; + +for (ECBlock dataBlock : dataBlocks) { + if (dataBlock.isErased()) erasedCount++; +} + +for (ECBlock parityBlock : parityBlocks) { + if (parityBlock.isErased()) erasedCount++; +} + +return erasedCount; + } + } http://git-wip-us.apache.org/repos/asf/hadoop/blob/347619a4/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/codec/AbstractErasureCodec.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/codec/AbstractErasureCodec.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/codec/AbstractErasureCodec.java new file mode 100644 index 000..9993786 --- /dev/null +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/codec/AbstractErasureCodec.java @@ -0,0 +1,88 @@ +/** + * 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.codec; + +import org.apache.hadoop.conf.Configured; +import org.apache.hadoop.io.erasurecode.ECSchema; +import org.apache.hadoop.io.erasurecode.coder.*; +import
[12/50] hadoop git commit: HADOOP-11645. Erasure Codec API covering the essential aspects for an erasure code ( Contributed by Kai Zheng)
HADOOP-11645. Erasure Codec API covering the essential aspects for an erasure code ( 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/96dbfa5e Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/96dbfa5e Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/96dbfa5e Branch: refs/heads/HDFS-7285 Commit: 96dbfa5e091001bbbfb77ff8d10de345d5465e7f Parents: 10dd52d Author: Vinayakumar B vinayakum...@apache.org Authored: Tue Apr 7 16:05:22 2015 +0530 Committer: Zhe Zhang z...@apache.org Committed: Mon Apr 27 10:42:28 2015 -0700 -- .../hadoop-common/CHANGES-HDFS-EC-7285.txt | 3 + .../hadoop/io/erasurecode/ECBlockGroup.java | 18 .../erasurecode/codec/AbstractErasureCodec.java | 88 +++ .../io/erasurecode/codec/ErasureCodec.java | 56 .../io/erasurecode/codec/RSErasureCodec.java| 38 + .../io/erasurecode/codec/XORErasureCodec.java | 45 ++ .../erasurecode/coder/AbstractErasureCoder.java | 7 ++ .../io/erasurecode/coder/ErasureCoder.java | 7 ++ .../io/erasurecode/grouper/BlockGrouper.java| 90 9 files changed, 352 insertions(+) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/96dbfa5e/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 7716728..c72394e 100644 --- a/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt +++ b/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt @@ -37,3 +37,6 @@ HADOOP-11805 Better to rename some raw erasure coders. Contributed by Kai Zheng ( Kai Zheng ) + +HADOOP-11645. Erasure Codec API covering the essential aspects for an erasure code +( Kai Zheng via vinayakumarb ) http://git-wip-us.apache.org/repos/asf/hadoop/blob/96dbfa5e/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlockGroup.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlockGroup.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlockGroup.java index 2c851a5..0a86907 100644 --- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlockGroup.java +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlockGroup.java @@ -79,4 +79,22 @@ public class ECBlockGroup { return false; } + /** + * Get erased blocks count + * @return + */ + public int getErasedCount() { +int erasedCount = 0; + +for (ECBlock dataBlock : dataBlocks) { + if (dataBlock.isErased()) erasedCount++; +} + +for (ECBlock parityBlock : parityBlocks) { + if (parityBlock.isErased()) erasedCount++; +} + +return erasedCount; + } + } http://git-wip-us.apache.org/repos/asf/hadoop/blob/96dbfa5e/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/codec/AbstractErasureCodec.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/codec/AbstractErasureCodec.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/codec/AbstractErasureCodec.java new file mode 100644 index 000..9993786 --- /dev/null +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/codec/AbstractErasureCodec.java @@ -0,0 +1,88 @@ +/** + * 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.codec; + +import org.apache.hadoop.conf.Configured; +import org.apache.hadoop.io.erasurecode.ECSchema; +import org.apache.hadoop.io.erasurecode.coder.*; +import
[23/50] hadoop git commit: HADOOP-11645. Erasure Codec API covering the essential aspects for an erasure code ( Contributed by Kai Zheng)
HADOOP-11645. Erasure Codec API covering the essential aspects for an erasure code ( 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/ae31ea95 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/ae31ea95 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/ae31ea95 Branch: refs/heads/HDFS-7285 Commit: ae31ea95910bed8b70a3da8e290e1082fa58872e Parents: 3e36d13 Author: Vinayakumar B vinayakum...@apache.org Authored: Tue Apr 7 16:05:22 2015 +0530 Committer: Zhe Zhang z...@apache.org Committed: Mon Apr 20 10:22:09 2015 -0700 -- .../hadoop-common/CHANGES-HDFS-EC-7285.txt | 3 + .../hadoop/io/erasurecode/ECBlockGroup.java | 18 .../erasurecode/codec/AbstractErasureCodec.java | 88 +++ .../io/erasurecode/codec/ErasureCodec.java | 56 .../io/erasurecode/codec/RSErasureCodec.java| 38 + .../io/erasurecode/codec/XORErasureCodec.java | 45 ++ .../erasurecode/coder/AbstractErasureCoder.java | 7 ++ .../io/erasurecode/coder/ErasureCoder.java | 7 ++ .../io/erasurecode/grouper/BlockGrouper.java| 90 9 files changed, 352 insertions(+) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/ae31ea95/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 7716728..c72394e 100644 --- a/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt +++ b/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt @@ -37,3 +37,6 @@ HADOOP-11805 Better to rename some raw erasure coders. Contributed by Kai Zheng ( Kai Zheng ) + +HADOOP-11645. Erasure Codec API covering the essential aspects for an erasure code +( Kai Zheng via vinayakumarb ) http://git-wip-us.apache.org/repos/asf/hadoop/blob/ae31ea95/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlockGroup.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlockGroup.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlockGroup.java index 2c851a5..0a86907 100644 --- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlockGroup.java +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlockGroup.java @@ -79,4 +79,22 @@ public class ECBlockGroup { return false; } + /** + * Get erased blocks count + * @return + */ + public int getErasedCount() { +int erasedCount = 0; + +for (ECBlock dataBlock : dataBlocks) { + if (dataBlock.isErased()) erasedCount++; +} + +for (ECBlock parityBlock : parityBlocks) { + if (parityBlock.isErased()) erasedCount++; +} + +return erasedCount; + } + } http://git-wip-us.apache.org/repos/asf/hadoop/blob/ae31ea95/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/codec/AbstractErasureCodec.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/codec/AbstractErasureCodec.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/codec/AbstractErasureCodec.java new file mode 100644 index 000..9993786 --- /dev/null +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/codec/AbstractErasureCodec.java @@ -0,0 +1,88 @@ +/** + * 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.codec; + +import org.apache.hadoop.conf.Configured; +import org.apache.hadoop.io.erasurecode.ECSchema; +import org.apache.hadoop.io.erasurecode.coder.*; +import
[41/50] [abbrv] hadoop git commit: HADOOP-11645. Erasure Codec API covering the essential aspects for an erasure code ( Contributed by Kai Zheng)
HADOOP-11645. Erasure Codec API covering the essential aspects for an erasure code ( 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/38fa860f Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/38fa860f Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/38fa860f Branch: refs/heads/HDFS-7285 Commit: 38fa860f81143cc5ab8c77fb1c31c17135a0871f Parents: 4a94585 Author: Vinayakumar B vinayakum...@apache.org Authored: Tue Apr 7 16:05:22 2015 +0530 Committer: Zhe Zhang z...@apache.org Committed: Mon Apr 13 13:09:58 2015 -0700 -- .../hadoop-common/CHANGES-HDFS-EC-7285.txt | 3 + .../hadoop/io/erasurecode/ECBlockGroup.java | 18 .../erasurecode/codec/AbstractErasureCodec.java | 88 +++ .../io/erasurecode/codec/ErasureCodec.java | 56 .../io/erasurecode/codec/RSErasureCodec.java| 38 + .../io/erasurecode/codec/XORErasureCodec.java | 45 ++ .../erasurecode/coder/AbstractErasureCoder.java | 7 ++ .../io/erasurecode/coder/ErasureCoder.java | 7 ++ .../io/erasurecode/grouper/BlockGrouper.java| 90 9 files changed, 352 insertions(+) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/38fa860f/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 7716728..c72394e 100644 --- a/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt +++ b/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt @@ -37,3 +37,6 @@ HADOOP-11805 Better to rename some raw erasure coders. Contributed by Kai Zheng ( Kai Zheng ) + +HADOOP-11645. Erasure Codec API covering the essential aspects for an erasure code +( Kai Zheng via vinayakumarb ) http://git-wip-us.apache.org/repos/asf/hadoop/blob/38fa860f/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlockGroup.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlockGroup.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlockGroup.java index 2c851a5..0a86907 100644 --- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlockGroup.java +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlockGroup.java @@ -79,4 +79,22 @@ public class ECBlockGroup { return false; } + /** + * Get erased blocks count + * @return + */ + public int getErasedCount() { +int erasedCount = 0; + +for (ECBlock dataBlock : dataBlocks) { + if (dataBlock.isErased()) erasedCount++; +} + +for (ECBlock parityBlock : parityBlocks) { + if (parityBlock.isErased()) erasedCount++; +} + +return erasedCount; + } + } http://git-wip-us.apache.org/repos/asf/hadoop/blob/38fa860f/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/codec/AbstractErasureCodec.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/codec/AbstractErasureCodec.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/codec/AbstractErasureCodec.java new file mode 100644 index 000..9993786 --- /dev/null +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/codec/AbstractErasureCodec.java @@ -0,0 +1,88 @@ +/** + * 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.codec; + +import org.apache.hadoop.conf.Configured; +import org.apache.hadoop.io.erasurecode.ECSchema; +import org.apache.hadoop.io.erasurecode.coder.*; +import
[40/50] [abbrv] hadoop git commit: HADOOP-11645. Erasure Codec API covering the essential aspects for an erasure code ( Contributed by Kai Zheng)
HADOOP-11645. Erasure Codec API covering the essential aspects for an erasure code ( 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/42cb9d8c Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/42cb9d8c Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/42cb9d8c Branch: refs/heads/HDFS-7285 Commit: 42cb9d8c1d5b4074b30591044420f4bed74e815a Parents: b2306c4 Author: Vinayakumar B vinayakum...@apache.org Authored: Tue Apr 7 16:05:22 2015 +0530 Committer: Zhe Zhang z...@apache.org Committed: Mon Apr 13 10:15:36 2015 -0700 -- .../hadoop-common/CHANGES-HDFS-EC-7285.txt | 3 + .../hadoop/io/erasurecode/ECBlockGroup.java | 18 .../erasurecode/codec/AbstractErasureCodec.java | 88 +++ .../io/erasurecode/codec/ErasureCodec.java | 56 .../io/erasurecode/codec/RSErasureCodec.java| 38 + .../io/erasurecode/codec/XORErasureCodec.java | 45 ++ .../erasurecode/coder/AbstractErasureCoder.java | 7 ++ .../io/erasurecode/coder/ErasureCoder.java | 7 ++ .../io/erasurecode/grouper/BlockGrouper.java| 90 9 files changed, 352 insertions(+) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/42cb9d8c/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 7716728..c72394e 100644 --- a/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt +++ b/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt @@ -37,3 +37,6 @@ HADOOP-11805 Better to rename some raw erasure coders. Contributed by Kai Zheng ( Kai Zheng ) + +HADOOP-11645. Erasure Codec API covering the essential aspects for an erasure code +( Kai Zheng via vinayakumarb ) http://git-wip-us.apache.org/repos/asf/hadoop/blob/42cb9d8c/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlockGroup.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlockGroup.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlockGroup.java index 2c851a5..0a86907 100644 --- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlockGroup.java +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlockGroup.java @@ -79,4 +79,22 @@ public class ECBlockGroup { return false; } + /** + * Get erased blocks count + * @return + */ + public int getErasedCount() { +int erasedCount = 0; + +for (ECBlock dataBlock : dataBlocks) { + if (dataBlock.isErased()) erasedCount++; +} + +for (ECBlock parityBlock : parityBlocks) { + if (parityBlock.isErased()) erasedCount++; +} + +return erasedCount; + } + } http://git-wip-us.apache.org/repos/asf/hadoop/blob/42cb9d8c/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/codec/AbstractErasureCodec.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/codec/AbstractErasureCodec.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/codec/AbstractErasureCodec.java new file mode 100644 index 000..9993786 --- /dev/null +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/codec/AbstractErasureCodec.java @@ -0,0 +1,88 @@ +/** + * 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.codec; + +import org.apache.hadoop.conf.Configured; +import org.apache.hadoop.io.erasurecode.ECSchema; +import org.apache.hadoop.io.erasurecode.coder.*; +import
hadoop git commit: HADOOP-11645. Erasure Codec API covering the essential aspects for an erasure code ( Contributed by Kai Zheng)
Repository: hadoop Updated Branches: refs/heads/HDFS-7285 b839dd3b0 - bd3f89108 HADOOP-11645. Erasure Codec API covering the essential aspects for an erasure code ( 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/bd3f8910 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/bd3f8910 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/bd3f8910 Branch: refs/heads/HDFS-7285 Commit: bd3f891085b70ecffa26b64a87a2d0c5ced98ceb Parents: b839dd3 Author: Vinayakumar B vinayakum...@apache.org Authored: Tue Apr 7 16:05:22 2015 +0530 Committer: Vinayakumar B vinayakum...@apache.org Committed: Tue Apr 7 16:05:22 2015 +0530 -- .../hadoop-common/CHANGES-HDFS-EC-7285.txt | 3 + .../hadoop/io/erasurecode/ECBlockGroup.java | 18 .../erasurecode/codec/AbstractErasureCodec.java | 88 +++ .../io/erasurecode/codec/ErasureCodec.java | 56 .../io/erasurecode/codec/RSErasureCodec.java| 38 + .../io/erasurecode/codec/XORErasureCodec.java | 45 ++ .../erasurecode/coder/AbstractErasureCoder.java | 7 ++ .../io/erasurecode/coder/ErasureCoder.java | 7 ++ .../io/erasurecode/grouper/BlockGrouper.java| 90 9 files changed, 352 insertions(+) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/bd3f8910/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 7716728..c72394e 100644 --- a/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt +++ b/hadoop-common-project/hadoop-common/CHANGES-HDFS-EC-7285.txt @@ -37,3 +37,6 @@ HADOOP-11805 Better to rename some raw erasure coders. Contributed by Kai Zheng ( Kai Zheng ) + +HADOOP-11645. Erasure Codec API covering the essential aspects for an erasure code +( Kai Zheng via vinayakumarb ) http://git-wip-us.apache.org/repos/asf/hadoop/blob/bd3f8910/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlockGroup.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlockGroup.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlockGroup.java index 2c851a5..0a86907 100644 --- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlockGroup.java +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ECBlockGroup.java @@ -79,4 +79,22 @@ public class ECBlockGroup { return false; } + /** + * Get erased blocks count + * @return + */ + public int getErasedCount() { +int erasedCount = 0; + +for (ECBlock dataBlock : dataBlocks) { + if (dataBlock.isErased()) erasedCount++; +} + +for (ECBlock parityBlock : parityBlocks) { + if (parityBlock.isErased()) erasedCount++; +} + +return erasedCount; + } + } http://git-wip-us.apache.org/repos/asf/hadoop/blob/bd3f8910/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/codec/AbstractErasureCodec.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/codec/AbstractErasureCodec.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/codec/AbstractErasureCodec.java new file mode 100644 index 000..9993786 --- /dev/null +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/codec/AbstractErasureCodec.java @@ -0,0 +1,88 @@ +/** + * 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.codec; + +import org.apache.hadoop.conf.Configured; +import