[08/50] [abbrv] hadoop git commit: HDDS-642. Add chill mode exit condition for pipeline availability. Contributed by Yiqun Lin.
HDDS-642. Add chill mode exit condition for pipeline availability. Contributed by Yiqun Lin. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/b71cc7f3 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/b71cc7f3 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/b71cc7f3 Branch: refs/heads/HDFS-12943 Commit: b71cc7f33edbbf6a98d1efb330f1c748b5dd6e75 Parents: efc4d91 Author: Ajay Kumar Authored: Wed Nov 28 17:45:46 2018 -0800 Committer: Ajay Kumar Committed: Wed Nov 28 17:47:57 2018 -0800 -- .../org/apache/hadoop/hdds/HddsConfigKeys.java | 5 + .../common/src/main/resources/ozone-default.xml | 9 ++ .../scm/chillmode/PipelineChillModeRule.java| 108 +++ .../hdds/scm/chillmode/SCMChillModeManager.java | 19 +++- .../scm/server/StorageContainerManager.java | 5 +- .../scm/chillmode/TestSCMChillModeManager.java | 81 -- 6 files changed, 213 insertions(+), 14 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/b71cc7f3/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/HddsConfigKeys.java -- diff --git a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/HddsConfigKeys.java b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/HddsConfigKeys.java index 2d28a5b..f16503e 100644 --- a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/HddsConfigKeys.java +++ b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/HddsConfigKeys.java @@ -87,6 +87,11 @@ public final class HddsConfigKeys { "hdds.scm.chillmode.min.datanode"; public static final int HDDS_SCM_CHILLMODE_MIN_DATANODE_DEFAULT = 1; + public static final String HDDS_SCM_CHILLMODE_PIPELINE_AVAILABILITY_CHECK = + "hdds.scm.chillmode.pipeline-availability.check"; + public static final boolean + HDDS_SCM_CHILLMODE_PIPELINE_AVAILABILITY_CHECK_DEFAULT = false; + // % of containers which should have at least one reported replica // before SCM comes out of chill mode. public static final String HDDS_SCM_CHILLMODE_THRESHOLD_PCT = http://git-wip-us.apache.org/repos/asf/hadoop/blob/b71cc7f3/hadoop-hdds/common/src/main/resources/ozone-default.xml -- diff --git a/hadoop-hdds/common/src/main/resources/ozone-default.xml b/hadoop-hdds/common/src/main/resources/ozone-default.xml index 9f3d7e1..aa22b2b 100644 --- a/hadoop-hdds/common/src/main/resources/ozone-default.xml +++ b/hadoop-hdds/common/src/main/resources/ozone-default.xml @@ -1232,6 +1232,15 @@ +hdds.scm.chillmode.pipeline-availability.check +false +HDDS,SCM,OPERATION + + Boolean value to enable pipeline availability check during SCM chill mode. + + + + hdds.container.action.max.limit 20 DATANODE http://git-wip-us.apache.org/repos/asf/hadoop/blob/b71cc7f3/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/chillmode/PipelineChillModeRule.java -- diff --git a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/chillmode/PipelineChillModeRule.java b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/chillmode/PipelineChillModeRule.java new file mode 100644 index 000..f9a6e59 --- /dev/null +++ b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/chillmode/PipelineChillModeRule.java @@ -0,0 +1,108 @@ +/** + * 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.hdds.scm.chillmode; + +import java.util.concurrent.atomic.AtomicBoolean; + +import org.apache.hadoop.hdds.protocol.proto.StorageContainerDatanodeProtocolProtos.PipelineReport; +import org.apache.hadoop.hdds.protocol.proto.StorageContainerDatanodeProtocolProtos.PipelineReportsProto; +import org.apache.hadoop.hdds.scm.pipeline.Pipeline; +import org.apache.hadoop.hdds.scm.pipeline.PipelineID; +import
[06/50] [abbrv] hadoop git commit: HDDS-642. Add chill mode exit condition for pipeline availability. Contributed by Yiqun Lin.
HDDS-642. Add chill mode exit condition for pipeline availability. Contributed by Yiqun Lin. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/b71cc7f3 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/b71cc7f3 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/b71cc7f3 Branch: refs/heads/HDDS-4 Commit: b71cc7f33edbbf6a98d1efb330f1c748b5dd6e75 Parents: efc4d91 Author: Ajay Kumar Authored: Wed Nov 28 17:45:46 2018 -0800 Committer: Ajay Kumar Committed: Wed Nov 28 17:47:57 2018 -0800 -- .../org/apache/hadoop/hdds/HddsConfigKeys.java | 5 + .../common/src/main/resources/ozone-default.xml | 9 ++ .../scm/chillmode/PipelineChillModeRule.java| 108 +++ .../hdds/scm/chillmode/SCMChillModeManager.java | 19 +++- .../scm/server/StorageContainerManager.java | 5 +- .../scm/chillmode/TestSCMChillModeManager.java | 81 -- 6 files changed, 213 insertions(+), 14 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/b71cc7f3/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/HddsConfigKeys.java -- diff --git a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/HddsConfigKeys.java b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/HddsConfigKeys.java index 2d28a5b..f16503e 100644 --- a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/HddsConfigKeys.java +++ b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/HddsConfigKeys.java @@ -87,6 +87,11 @@ public final class HddsConfigKeys { "hdds.scm.chillmode.min.datanode"; public static final int HDDS_SCM_CHILLMODE_MIN_DATANODE_DEFAULT = 1; + public static final String HDDS_SCM_CHILLMODE_PIPELINE_AVAILABILITY_CHECK = + "hdds.scm.chillmode.pipeline-availability.check"; + public static final boolean + HDDS_SCM_CHILLMODE_PIPELINE_AVAILABILITY_CHECK_DEFAULT = false; + // % of containers which should have at least one reported replica // before SCM comes out of chill mode. public static final String HDDS_SCM_CHILLMODE_THRESHOLD_PCT = http://git-wip-us.apache.org/repos/asf/hadoop/blob/b71cc7f3/hadoop-hdds/common/src/main/resources/ozone-default.xml -- diff --git a/hadoop-hdds/common/src/main/resources/ozone-default.xml b/hadoop-hdds/common/src/main/resources/ozone-default.xml index 9f3d7e1..aa22b2b 100644 --- a/hadoop-hdds/common/src/main/resources/ozone-default.xml +++ b/hadoop-hdds/common/src/main/resources/ozone-default.xml @@ -1232,6 +1232,15 @@ +hdds.scm.chillmode.pipeline-availability.check +false +HDDS,SCM,OPERATION + + Boolean value to enable pipeline availability check during SCM chill mode. + + + + hdds.container.action.max.limit 20 DATANODE http://git-wip-us.apache.org/repos/asf/hadoop/blob/b71cc7f3/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/chillmode/PipelineChillModeRule.java -- diff --git a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/chillmode/PipelineChillModeRule.java b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/chillmode/PipelineChillModeRule.java new file mode 100644 index 000..f9a6e59 --- /dev/null +++ b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/chillmode/PipelineChillModeRule.java @@ -0,0 +1,108 @@ +/** + * 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.hdds.scm.chillmode; + +import java.util.concurrent.atomic.AtomicBoolean; + +import org.apache.hadoop.hdds.protocol.proto.StorageContainerDatanodeProtocolProtos.PipelineReport; +import org.apache.hadoop.hdds.protocol.proto.StorageContainerDatanodeProtocolProtos.PipelineReportsProto; +import org.apache.hadoop.hdds.scm.pipeline.Pipeline; +import org.apache.hadoop.hdds.scm.pipeline.PipelineID; +import
hadoop git commit: HDDS-642. Add chill mode exit condition for pipeline availability. Contributed by Yiqun Lin.
Repository: hadoop Updated Branches: refs/heads/trunk efc4d91cb -> b71cc7f33 HDDS-642. Add chill mode exit condition for pipeline availability. Contributed by Yiqun Lin. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/b71cc7f3 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/b71cc7f3 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/b71cc7f3 Branch: refs/heads/trunk Commit: b71cc7f33edbbf6a98d1efb330f1c748b5dd6e75 Parents: efc4d91 Author: Ajay Kumar Authored: Wed Nov 28 17:45:46 2018 -0800 Committer: Ajay Kumar Committed: Wed Nov 28 17:47:57 2018 -0800 -- .../org/apache/hadoop/hdds/HddsConfigKeys.java | 5 + .../common/src/main/resources/ozone-default.xml | 9 ++ .../scm/chillmode/PipelineChillModeRule.java| 108 +++ .../hdds/scm/chillmode/SCMChillModeManager.java | 19 +++- .../scm/server/StorageContainerManager.java | 5 +- .../scm/chillmode/TestSCMChillModeManager.java | 81 -- 6 files changed, 213 insertions(+), 14 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/b71cc7f3/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/HddsConfigKeys.java -- diff --git a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/HddsConfigKeys.java b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/HddsConfigKeys.java index 2d28a5b..f16503e 100644 --- a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/HddsConfigKeys.java +++ b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/HddsConfigKeys.java @@ -87,6 +87,11 @@ public final class HddsConfigKeys { "hdds.scm.chillmode.min.datanode"; public static final int HDDS_SCM_CHILLMODE_MIN_DATANODE_DEFAULT = 1; + public static final String HDDS_SCM_CHILLMODE_PIPELINE_AVAILABILITY_CHECK = + "hdds.scm.chillmode.pipeline-availability.check"; + public static final boolean + HDDS_SCM_CHILLMODE_PIPELINE_AVAILABILITY_CHECK_DEFAULT = false; + // % of containers which should have at least one reported replica // before SCM comes out of chill mode. public static final String HDDS_SCM_CHILLMODE_THRESHOLD_PCT = http://git-wip-us.apache.org/repos/asf/hadoop/blob/b71cc7f3/hadoop-hdds/common/src/main/resources/ozone-default.xml -- diff --git a/hadoop-hdds/common/src/main/resources/ozone-default.xml b/hadoop-hdds/common/src/main/resources/ozone-default.xml index 9f3d7e1..aa22b2b 100644 --- a/hadoop-hdds/common/src/main/resources/ozone-default.xml +++ b/hadoop-hdds/common/src/main/resources/ozone-default.xml @@ -1232,6 +1232,15 @@ +hdds.scm.chillmode.pipeline-availability.check +false +HDDS,SCM,OPERATION + + Boolean value to enable pipeline availability check during SCM chill mode. + + + + hdds.container.action.max.limit 20 DATANODE http://git-wip-us.apache.org/repos/asf/hadoop/blob/b71cc7f3/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/chillmode/PipelineChillModeRule.java -- diff --git a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/chillmode/PipelineChillModeRule.java b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/chillmode/PipelineChillModeRule.java new file mode 100644 index 000..f9a6e59 --- /dev/null +++ b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/chillmode/PipelineChillModeRule.java @@ -0,0 +1,108 @@ +/** + * 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.hdds.scm.chillmode; + +import java.util.concurrent.atomic.AtomicBoolean; + +import org.apache.hadoop.hdds.protocol.proto.StorageContainerDatanodeProtocolProtos.PipelineReport; +import org.apache.hadoop.hdds.protocol.proto.StorageContainerDatanodeProtocolProtos.PipelineReportsProto; +import org.apache.hadoop.hdds.scm.pipeline.Pipeline; +import