[08/37] hadoop git commit: HDDS-133:Change format of .container files to Yaml. Contributed by Bharat Viswanadham
HDDS-133:Change format of .container files to Yaml. Contributed by Bharat Viswanadham Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/143dd560 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/143dd560 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/143dd560 Branch: refs/heads/trunk Commit: 143dd560bf506fafd849aeb47a42becc6c13330d Parents: 772c953 Author: Bharat Viswanadham Authored: Mon Jun 11 09:04:54 2018 -0700 Committer: Bharat Viswanadham Committed: Mon Jun 11 09:04:54 2018 -0700 -- hadoop-hdds/container-service/pom.xml | 6 + .../common/impl/ChunkLayOutVersion.java | 18 ++ .../container/common/impl/ContainerData.java| 28 +- .../common/impl/KeyValueContainerData.java | 19 +- .../container/common/impl/KeyValueYaml.java | 274 +++ .../common/TestKeyValueContainerData.java | 15 +- .../container/common/impl/TestKeyValueYaml.java | 158 +++ .../test/resources/additionalfields.container | 9 + .../src/test/resources/incorrect.container | 10 + hadoop-hdds/pom.xml | 2 + 10 files changed, 521 insertions(+), 18 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/143dd560/hadoop-hdds/container-service/pom.xml -- diff --git a/hadoop-hdds/container-service/pom.xml b/hadoop-hdds/container-service/pom.xml index 542462e..43f400c 100644 --- a/hadoop-hdds/container-service/pom.xml +++ b/hadoop-hdds/container-service/pom.xml @@ -53,6 +53,12 @@ http://maven.apache.org/xsd/maven-4.0.0.xsd";> + org.yaml + snakeyaml + 1.8 + + + io.dropwizard.metrics metrics-core test http://git-wip-us.apache.org/repos/asf/hadoop/blob/143dd560/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/impl/ChunkLayOutVersion.java -- diff --git a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/impl/ChunkLayOutVersion.java b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/impl/ChunkLayOutVersion.java index fff68de6..d1b1bd6 100644 --- a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/impl/ChunkLayOutVersion.java +++ b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/impl/ChunkLayOutVersion.java @@ -18,6 +18,8 @@ package org.apache.hadoop.ozone.container.common.impl; +import com.google.common.base.Preconditions; + /** * Defines layout versions for the Chunks. */ @@ -43,6 +45,22 @@ public final class ChunkLayOutVersion { } /** + * Return ChunkLayOutVersion object for the chunkVersion. + * @param chunkVersion + * @return ChunkLayOutVersion + */ + public static ChunkLayOutVersion getChunkLayOutVersion(int chunkVersion) { +Preconditions.checkArgument((chunkVersion <= ChunkLayOutVersion +.getLatestVersion().getVersion())); +for(ChunkLayOutVersion chunkLayOutVersion : CHUNK_LAYOUT_VERSION_INFOS) { + if(chunkLayOutVersion.getVersion() == chunkVersion) { +return chunkLayOutVersion; + } +} +return null; + } + + /** * Returns all versions. * * @return Version info array. http://git-wip-us.apache.org/repos/asf/hadoop/blob/143dd560/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/impl/ContainerData.java -- diff --git a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/impl/ContainerData.java b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/impl/ContainerData.java index 06aae66..0bd7795 100644 --- a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/impl/ContainerData.java +++ b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/impl/ContainerData.java @@ -42,7 +42,7 @@ public class ContainerData { private final long containerId; // Layout version of the container data - private final ChunkLayOutVersion layOutVersion; + private final int layOutVersion; // Metadata of the container will be a key value pair. // This can hold information like volume name, owner etc., @@ -67,7 +67,27 @@ public class ContainerData { public ContainerData(ContainerType type, long containerId) { this.containerType = type; this.containerId = containerId; -this.layOutVersion = ChunkLayOutVersion.getLatestVersion(); +this.layOutVersion = ChunkLayOutVersion.getLatestVersion().getVersion(); +th
hadoop git commit: HDDS-133:Change format of .container files to Yaml. Contributed by Bharat Viswanadham
Repository: hadoop Updated Branches: refs/heads/HDDS-48 772c95395 -> 143dd560b HDDS-133:Change format of .container files to Yaml. Contributed by Bharat Viswanadham Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/143dd560 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/143dd560 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/143dd560 Branch: refs/heads/HDDS-48 Commit: 143dd560bf506fafd849aeb47a42becc6c13330d Parents: 772c953 Author: Bharat Viswanadham Authored: Mon Jun 11 09:04:54 2018 -0700 Committer: Bharat Viswanadham Committed: Mon Jun 11 09:04:54 2018 -0700 -- hadoop-hdds/container-service/pom.xml | 6 + .../common/impl/ChunkLayOutVersion.java | 18 ++ .../container/common/impl/ContainerData.java| 28 +- .../common/impl/KeyValueContainerData.java | 19 +- .../container/common/impl/KeyValueYaml.java | 274 +++ .../common/TestKeyValueContainerData.java | 15 +- .../container/common/impl/TestKeyValueYaml.java | 158 +++ .../test/resources/additionalfields.container | 9 + .../src/test/resources/incorrect.container | 10 + hadoop-hdds/pom.xml | 2 + 10 files changed, 521 insertions(+), 18 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/143dd560/hadoop-hdds/container-service/pom.xml -- diff --git a/hadoop-hdds/container-service/pom.xml b/hadoop-hdds/container-service/pom.xml index 542462e..43f400c 100644 --- a/hadoop-hdds/container-service/pom.xml +++ b/hadoop-hdds/container-service/pom.xml @@ -53,6 +53,12 @@ http://maven.apache.org/xsd/maven-4.0.0.xsd";> + org.yaml + snakeyaml + 1.8 + + + io.dropwizard.metrics metrics-core test http://git-wip-us.apache.org/repos/asf/hadoop/blob/143dd560/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/impl/ChunkLayOutVersion.java -- diff --git a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/impl/ChunkLayOutVersion.java b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/impl/ChunkLayOutVersion.java index fff68de6..d1b1bd6 100644 --- a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/impl/ChunkLayOutVersion.java +++ b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/impl/ChunkLayOutVersion.java @@ -18,6 +18,8 @@ package org.apache.hadoop.ozone.container.common.impl; +import com.google.common.base.Preconditions; + /** * Defines layout versions for the Chunks. */ @@ -43,6 +45,22 @@ public final class ChunkLayOutVersion { } /** + * Return ChunkLayOutVersion object for the chunkVersion. + * @param chunkVersion + * @return ChunkLayOutVersion + */ + public static ChunkLayOutVersion getChunkLayOutVersion(int chunkVersion) { +Preconditions.checkArgument((chunkVersion <= ChunkLayOutVersion +.getLatestVersion().getVersion())); +for(ChunkLayOutVersion chunkLayOutVersion : CHUNK_LAYOUT_VERSION_INFOS) { + if(chunkLayOutVersion.getVersion() == chunkVersion) { +return chunkLayOutVersion; + } +} +return null; + } + + /** * Returns all versions. * * @return Version info array. http://git-wip-us.apache.org/repos/asf/hadoop/blob/143dd560/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/impl/ContainerData.java -- diff --git a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/impl/ContainerData.java b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/impl/ContainerData.java index 06aae66..0bd7795 100644 --- a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/impl/ContainerData.java +++ b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/impl/ContainerData.java @@ -42,7 +42,7 @@ public class ContainerData { private final long containerId; // Layout version of the container data - private final ChunkLayOutVersion layOutVersion; + private final int layOutVersion; // Metadata of the container will be a key value pair. // This can hold information like volume name, owner etc., @@ -67,7 +67,27 @@ public class ContainerData { public ContainerData(ContainerType type, long containerId) { this.containerType = type; this.containerId = containerId; -this.layOutVersion = ChunkLayOutVersion.getLatestVersion();