hadoop git commit: YARN-6965. Duplicate instantiation in FairSchedulerQueueInfo. Contributed by Masahiro Tanaka.
Repository: hadoop Updated Branches: refs/heads/branch-2 ad46a9087 -> a28a3dc8f YARN-6965. Duplicate instantiation in FairSchedulerQueueInfo. Contributed by Masahiro Tanaka. (cherry picked from commit 588c190afd49bdbd5708f7805bf6c68f09fee142) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/a28a3dc8 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/a28a3dc8 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/a28a3dc8 Branch: refs/heads/branch-2 Commit: a28a3dc8f2709738c28f70fc394f51d3b1266296 Parents: ad46a90 Author: Akira AjisakaAuthored: Wed Aug 16 14:06:22 2017 +0900 Committer: Akira Ajisaka Committed: Wed Aug 16 14:07:08 2017 +0900 -- .../server/resourcemanager/webapp/dao/FairSchedulerQueueInfo.java | 1 - 1 file changed, 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/a28a3dc8/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/dao/FairSchedulerQueueInfo.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/dao/FairSchedulerQueueInfo.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/dao/FairSchedulerQueueInfo.java index a79194d..cd5efc7 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/dao/FairSchedulerQueueInfo.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/dao/FairSchedulerQueueInfo.java @@ -100,7 +100,6 @@ public class FairSchedulerQueueInfo { steadyFairResources = new ResourceInfo(queue.getSteadyFairShare()); fairResources = new ResourceInfo(queue.getFairShare()); minResources = new ResourceInfo(queue.getMinShare()); -maxResources = new ResourceInfo(queue.getMaxShare()); maxResources = new ResourceInfo( Resources.componentwiseMin(queue.getMaxShare(), scheduler.getClusterResource())); - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
hadoop git commit: YARN-6965. Duplicate instantiation in FairSchedulerQueueInfo. Contributed by Masahiro Tanaka.
Repository: hadoop Updated Branches: refs/heads/branch-2.8 a611922de -> 2b92c1be0 YARN-6965. Duplicate instantiation in FairSchedulerQueueInfo. Contributed by Masahiro Tanaka. (cherry picked from commit 588c190afd49bdbd5708f7805bf6c68f09fee142) (cherry picked from commit a28a3dc8f2709738c28f70fc394f51d3b1266296) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/2b92c1be Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/2b92c1be Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/2b92c1be Branch: refs/heads/branch-2.8 Commit: 2b92c1be045894f8ed45b04ddf500f8561e51c85 Parents: a611922 Author: Akira AjisakaAuthored: Wed Aug 16 14:06:22 2017 +0900 Committer: Akira Ajisaka Committed: Wed Aug 16 14:07:23 2017 +0900 -- .../server/resourcemanager/webapp/dao/FairSchedulerQueueInfo.java | 1 - 1 file changed, 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/2b92c1be/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/dao/FairSchedulerQueueInfo.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/dao/FairSchedulerQueueInfo.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/dao/FairSchedulerQueueInfo.java index f0e9def..7246ae3 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/dao/FairSchedulerQueueInfo.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/dao/FairSchedulerQueueInfo.java @@ -87,7 +87,6 @@ public class FairSchedulerQueueInfo { steadyFairResources = new ResourceInfo(queue.getSteadyFairShare()); fairResources = new ResourceInfo(queue.getFairShare()); minResources = new ResourceInfo(queue.getMinShare()); -maxResources = new ResourceInfo(queue.getMaxShare()); maxResources = new ResourceInfo( Resources.componentwiseMin(queue.getMaxShare(), scheduler.getClusterResource())); - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
hadoop git commit: YARN-6965. Duplicate instantiation in FairSchedulerQueueInfo. Contributed by Masahiro Tanaka.
Repository: hadoop Updated Branches: refs/heads/trunk 75dd866bf -> 588c190af YARN-6965. Duplicate instantiation in FairSchedulerQueueInfo. Contributed by Masahiro Tanaka. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/588c190a Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/588c190a Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/588c190a Branch: refs/heads/trunk Commit: 588c190afd49bdbd5708f7805bf6c68f09fee142 Parents: 75dd866 Author: Akira AjisakaAuthored: Wed Aug 16 14:06:22 2017 +0900 Committer: Akira Ajisaka Committed: Wed Aug 16 14:06:22 2017 +0900 -- .../server/resourcemanager/webapp/dao/FairSchedulerQueueInfo.java | 1 - 1 file changed, 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/588c190a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/dao/FairSchedulerQueueInfo.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/dao/FairSchedulerQueueInfo.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/dao/FairSchedulerQueueInfo.java index a4607c2..79339c7 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/dao/FairSchedulerQueueInfo.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/dao/FairSchedulerQueueInfo.java @@ -99,7 +99,6 @@ public class FairSchedulerQueueInfo { steadyFairResources = new ResourceInfo(queue.getSteadyFairShare()); fairResources = new ResourceInfo(queue.getFairShare()); minResources = new ResourceInfo(queue.getMinShare()); -maxResources = new ResourceInfo(queue.getMaxShare()); maxResources = new ResourceInfo( Resources.componentwiseMin(queue.getMaxShare(), scheduler.getClusterResource())); - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
[11/40] hadoop git commit: HADOOP-14673. Remove leftover hadoop_xml_escape from functions. Contributed by Ajay Kumar.
HADOOP-14673. Remove leftover hadoop_xml_escape from functions. Contributed by Ajay Kumar. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/04465113 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/04465113 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/04465113 Branch: refs/heads/HDFS-10467 Commit: 044651139800b9e2e5b8f224772e6dbd6ded58c6 Parents: 8bef4ec Author: Arpit AgarwalAuthored: Mon Aug 14 16:22:10 2017 -0700 Committer: Arpit Agarwal Committed: Mon Aug 14 16:22:10 2017 -0700 -- .../src/main/bin/hadoop-functions.sh| 23 -- .../src/test/scripts/hadoop_escape_chars.bats | 32 2 files changed, 55 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/04465113/hadoop-common-project/hadoop-common/src/main/bin/hadoop-functions.sh -- diff --git a/hadoop-common-project/hadoop-common/src/main/bin/hadoop-functions.sh b/hadoop-common-project/hadoop-common/src/main/bin/hadoop-functions.sh index 3cf21cf..9ea4587 100755 --- a/hadoop-common-project/hadoop-common/src/main/bin/hadoop-functions.sh +++ b/hadoop-common-project/hadoop-common/src/main/bin/hadoop-functions.sh @@ -2578,29 +2578,6 @@ function hadoop_parse_args hadoop_debug "hadoop_parse: asking caller to skip ${HADOOP_PARSE_COUNTER}" } -## @description XML-escapes the characters (&'"<>) in the given parameter. -## @audience private -## @stabilityevolving -## @replaceable yes -## @paramstring -## @return XML-escaped string -function hadoop_xml_escape -{ - sed -e 's/&/\/g' -e 's/"/\\\/g' \ --e "s/'/\/g" -e 's//\\\/g' <<< "$1" -} - -## @description sed-escapes the characters (\/&) in the given parameter. -## @audience private -## @stabilityevolving -## @replaceable yes -## @paramstring -## @return sed-escaped string -function hadoop_sed_escape -{ - sed -e 's/[\/&]/\\&/g' <<< "$1" -} - ## @description Handle subcommands from main program entries ## @audience private ## @stability evolving http://git-wip-us.apache.org/repos/asf/hadoop/blob/04465113/hadoop-common-project/hadoop-common/src/test/scripts/hadoop_escape_chars.bats -- diff --git a/hadoop-common-project/hadoop-common/src/test/scripts/hadoop_escape_chars.bats b/hadoop-common-project/hadoop-common/src/test/scripts/hadoop_escape_chars.bats deleted file mode 100755 index 9b031f2..000 --- a/hadoop-common-project/hadoop-common/src/test/scripts/hadoop_escape_chars.bats +++ /dev/null @@ -1,32 +0,0 @@ -# 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. - -load hadoop-functions_test_helper - -@test "hadoop_escape_sed (positive 1)" { - ret="$(hadoop_sed_escape "\pass&\0#\$asdf/g ><'\"~\`!@#$%^&*()_+-=")" - expected="pass\&0#\$asdf\/g ><'\"~\`!@#$%^\&*()_+-=" - echo "actual >${ret}<" - echo "expected >${expected}<" - [ "${ret}" = "${expected}" ] -} - -@test "hadoop_escape_xml (positive 1)" { - ret="$(hadoop_xml_escape "\pass&\0#\$asdf/g ><'\"~\`!@#$%^&*()_+-=")" - expected="\\password\0#\$asdf/g ~\`!@#\$%^*()_+-=" - echo "actual >${ret}<" - echo "expected >${expected}<" - [ "${ret}" = "${expected}" ] -} \ No newline at end of file - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
[25/40] hadoop git commit: HDFS-11546. Federation Router RPC server. Contributed by Jason Kace and Inigo Goiri.
http://git-wip-us.apache.org/repos/asf/hadoop/blob/56e7541e/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/router/RouterRpcServer.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/router/RouterRpcServer.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/router/RouterRpcServer.java index 24792bb..4bae71e 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/router/RouterRpcServer.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/router/RouterRpcServer.java @@ -17,16 +17,109 @@ */ package org.apache.hadoop.hdfs.server.federation.router; +import static org.apache.hadoop.hdfs.DFSConfigKeys.DFS_ROUTER_HANDLER_COUNT_DEFAULT; +import static org.apache.hadoop.hdfs.DFSConfigKeys.DFS_ROUTER_HANDLER_COUNT_KEY; +import static org.apache.hadoop.hdfs.DFSConfigKeys.DFS_ROUTER_HANDLER_QUEUE_SIZE_DEFAULT; +import static org.apache.hadoop.hdfs.DFSConfigKeys.DFS_ROUTER_HANDLER_QUEUE_SIZE_KEY; +import static org.apache.hadoop.hdfs.DFSConfigKeys.DFS_ROUTER_READER_COUNT_DEFAULT; +import static org.apache.hadoop.hdfs.DFSConfigKeys.DFS_ROUTER_READER_COUNT_KEY; +import static org.apache.hadoop.hdfs.DFSConfigKeys.DFS_ROUTER_READER_QUEUE_SIZE_DEFAULT; +import static org.apache.hadoop.hdfs.DFSConfigKeys.DFS_ROUTER_READER_QUEUE_SIZE_KEY; + +import java.io.FileNotFoundException; import java.io.IOException; +import java.net.InetSocketAddress; +import java.util.Collection; +import java.util.EnumSet; +import java.util.HashMap; +import java.util.Iterator; +import java.util.LinkedHashMap; +import java.util.LinkedList; +import java.util.List; +import java.util.Map; +import java.util.Map.Entry; +import java.util.Set; +import java.util.TreeMap; import org.apache.hadoop.conf.Configuration; +import org.apache.hadoop.crypto.CryptoProtocolVersion; +import org.apache.hadoop.fs.BatchedRemoteIterator.BatchedEntries; +import org.apache.hadoop.fs.CacheFlag; +import org.apache.hadoop.fs.CommonConfigurationKeys; +import org.apache.hadoop.fs.ContentSummary; +import org.apache.hadoop.fs.CreateFlag; +import org.apache.hadoop.fs.FileAlreadyExistsException; +import org.apache.hadoop.fs.FsServerDefaults; +import org.apache.hadoop.fs.Options; +import org.apache.hadoop.fs.Path; +import org.apache.hadoop.fs.QuotaUsage; +import org.apache.hadoop.fs.StorageType; +import org.apache.hadoop.fs.XAttr; +import org.apache.hadoop.fs.XAttrSetFlag; +import org.apache.hadoop.fs.permission.AclEntry; +import org.apache.hadoop.fs.permission.AclStatus; +import org.apache.hadoop.fs.permission.FsAction; +import org.apache.hadoop.fs.permission.FsPermission; +import org.apache.hadoop.hdfs.AddBlockFlag; +import org.apache.hadoop.hdfs.DFSConfigKeys; +import org.apache.hadoop.hdfs.DFSUtil; +import org.apache.hadoop.hdfs.inotify.EventBatchList; +import org.apache.hadoop.hdfs.protocol.AddingECPolicyResponse; +import org.apache.hadoop.hdfs.protocol.BlockStoragePolicy; +import org.apache.hadoop.hdfs.protocol.CacheDirectiveEntry; +import org.apache.hadoop.hdfs.protocol.CacheDirectiveInfo; +import org.apache.hadoop.hdfs.protocol.CachePoolEntry; +import org.apache.hadoop.hdfs.protocol.CachePoolInfo; import org.apache.hadoop.hdfs.protocol.ClientProtocol; +import org.apache.hadoop.hdfs.protocol.CorruptFileBlocks; +import org.apache.hadoop.hdfs.protocol.DatanodeID; +import org.apache.hadoop.hdfs.protocol.DatanodeInfo; +import org.apache.hadoop.hdfs.protocol.DirectoryListing; +import org.apache.hadoop.hdfs.protocol.EncryptionZone; +import org.apache.hadoop.hdfs.protocol.ErasureCodingPolicy; +import org.apache.hadoop.hdfs.protocol.ExtendedBlock; +import org.apache.hadoop.hdfs.protocol.HdfsConstants.DatanodeReportType; +import org.apache.hadoop.hdfs.protocol.HdfsConstants.RollingUpgradeAction; +import org.apache.hadoop.hdfs.protocol.HdfsConstants.SafeModeAction; +import org.apache.hadoop.hdfs.protocol.HdfsFileStatus; +import org.apache.hadoop.hdfs.protocol.LastBlockWithStatus; +import org.apache.hadoop.hdfs.protocol.LocatedBlock; +import org.apache.hadoop.hdfs.protocol.LocatedBlocks; +import org.apache.hadoop.hdfs.protocol.RollingUpgradeInfo; +import org.apache.hadoop.hdfs.protocol.SnapshotDiffReport; +import org.apache.hadoop.hdfs.protocol.SnapshottableDirectoryStatus; +import org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos.ClientNamenodeProtocol; +import org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolPB; +import org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolServerSideTranslatorPB; +import org.apache.hadoop.hdfs.security.token.block.DataEncryptionKey; +import org.apache.hadoop.hdfs.security.token.delegation.DelegationTokenIdentifier; import org.apache.hadoop.hdfs.server.federation.resolver.ActiveNamenodeResolver; +import
[33/40] hadoop git commit: HDFS-10687. Federation Membership State Store internal API. Contributed by Jason Kace and Inigo Goiri.
http://git-wip-us.apache.org/repos/asf/hadoop/blob/ac246704/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/federation/resolver/TestNamenodeResolver.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/federation/resolver/TestNamenodeResolver.java b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/federation/resolver/TestNamenodeResolver.java new file mode 100644 index 000..2d74505 --- /dev/null +++ b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/federation/resolver/TestNamenodeResolver.java @@ -0,0 +1,284 @@ +/** + * 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.hdfs.server.federation.resolver; + +import static org.apache.hadoop.hdfs.server.federation.FederationTestUtils.NAMENODES; +import static org.apache.hadoop.hdfs.server.federation.FederationTestUtils.NAMESERVICES; +import static org.apache.hadoop.hdfs.server.federation.FederationTestUtils.ROUTERS; +import static org.apache.hadoop.hdfs.server.federation.FederationTestUtils.createNamenodeReport; +import static org.apache.hadoop.hdfs.server.federation.FederationTestUtils.verifyException; +import static org.apache.hadoop.hdfs.server.federation.store.FederationStateStoreTestUtils.clearRecords; +import static org.apache.hadoop.hdfs.server.federation.store.FederationStateStoreTestUtils.getStateStoreConfiguration; +import static org.apache.hadoop.hdfs.server.federation.store.FederationStateStoreTestUtils.newStateStore; +import static org.apache.hadoop.hdfs.server.federation.store.FederationStateStoreTestUtils.waitStateStore; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertNull; +import static org.junit.Assert.assertTrue; + +import java.io.IOException; +import java.util.List; +import java.util.concurrent.TimeUnit; + +import org.apache.hadoop.conf.Configuration; +import org.apache.hadoop.ha.HAServiceProtocol.HAServiceState; +import org.apache.hadoop.hdfs.DFSConfigKeys; +import org.apache.hadoop.hdfs.server.federation.store.StateStoreService; +import org.apache.hadoop.hdfs.server.federation.store.StateStoreUnavailableException; +import org.apache.hadoop.hdfs.server.federation.store.records.MembershipState; +import org.junit.AfterClass; +import org.junit.Before; +import org.junit.BeforeClass; +import org.junit.Test; + +/** + * Test the basic {@link ActiveNamenodeResolver} functionality. + */ +public class TestNamenodeResolver { + + private static StateStoreService stateStore; + private static ActiveNamenodeResolver namenodeResolver; + + @BeforeClass + public static void create() throws Exception { + +Configuration conf = getStateStoreConfiguration(); + +// Reduce expirations to 5 seconds +conf.setLong( +DFSConfigKeys.FEDERATION_STORE_MEMBERSHIP_EXPIRATION_MS, +TimeUnit.SECONDS.toMillis(5)); + +stateStore = newStateStore(conf); +assertNotNull(stateStore); + +namenodeResolver = new MembershipNamenodeResolver(conf, stateStore); +namenodeResolver.setRouterId(ROUTERS[0]); + } + + @AfterClass + public static void destroy() throws Exception { +stateStore.stop(); +stateStore.close(); + } + + @Before + public void setup() throws IOException, InterruptedException { +// Wait for state store to connect +stateStore.loadDriver(); +waitStateStore(stateStore, 1); + +// Clear NN registrations +boolean cleared = clearRecords(stateStore, MembershipState.class); +assertTrue(cleared); + } + + @Test + public void testStateStoreDisconnected() throws Exception { + +// Add an entry to the store +NamenodeStatusReport report = createNamenodeReport( +NAMESERVICES[0], NAMENODES[0], HAServiceState.ACTIVE); +assertTrue(namenodeResolver.registerNamenode(report)); + +// Close the data store driver +stateStore.closeDriver(); +assertFalse(stateStore.isDriverReady()); + +// Flush the caches +stateStore.refreshCaches(true); + +// Verify commands
[36/40] hadoop git commit: HDFS-10881. Federation State Store Driver API. Contributed by Jason Kace and Inigo Goiri.
HDFS-10881. Federation State Store Driver API. Contributed by Jason Kace and Inigo Goiri. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/a479241e Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/a479241e Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/a479241e Branch: refs/heads/HDFS-10467 Commit: a479241e29ef30aace9cfdc85b2a79d6ac25155e Parents: 273c47b Author: InigoAuthored: Wed Mar 29 19:35:06 2017 -0700 Committer: Inigo Goiri Committed: Tue Aug 15 18:17:23 2017 -0700 -- .../store/StateStoreUnavailableException.java | 33 .../federation/store/StateStoreUtils.java | 72 +++ .../store/driver/StateStoreDriver.java | 172 + .../driver/StateStoreRecordOperations.java | 164 .../store/driver/impl/StateStoreBaseImpl.java | 69 +++ .../store/driver/impl/package-info.java | 39 .../federation/store/driver/package-info.java | 37 .../federation/store/protocol/package-info.java | 31 +++ .../federation/store/records/BaseRecord.java| 189 +++ .../federation/store/records/QueryResult.java | 56 ++ .../federation/store/records/package-info.java | 36 11 files changed, 898 insertions(+) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/a479241e/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/store/StateStoreUnavailableException.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/store/StateStoreUnavailableException.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/store/StateStoreUnavailableException.java new file mode 100644 index 000..4e6f8c8 --- /dev/null +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/store/StateStoreUnavailableException.java @@ -0,0 +1,33 @@ +/** + * 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.hdfs.server.federation.store; + +import java.io.IOException; + +/** + * Thrown when the state store is not reachable or available. Cached APIs and + * queries may succeed. Client should retry again later. + */ +public class StateStoreUnavailableException extends IOException { + + private static final long serialVersionUID = 1L; + + public StateStoreUnavailableException(String msg) { +super(msg); + } +} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/hadoop/blob/a479241e/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/store/StateStoreUtils.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/store/StateStoreUtils.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/store/StateStoreUtils.java new file mode 100644 index 000..8c681df --- /dev/null +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/store/StateStoreUtils.java @@ -0,0 +1,72 @@ +/** + * 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
[30/40] hadoop git commit: HDFS-10882. Federation State Store Interface API. Contributed by Jason Kace and Inigo Goiri.
HDFS-10882. Federation State Store Interface API. Contributed by Jason Kace and Inigo Goiri. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/a70a8b73 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/a70a8b73 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/a70a8b73 Branch: refs/heads/HDFS-10467 Commit: a70a8b734dc729b777fce77b880776400b66b672 Parents: a479241 Author: InigoAuthored: Thu Apr 6 19:18:52 2017 -0700 Committer: Inigo Goiri Committed: Tue Aug 15 18:17:23 2017 -0700 -- .../org/apache/hadoop/hdfs/DFSConfigKeys.java | 11 ++ .../server/federation/store/RecordStore.java| 100 .../store/driver/StateStoreSerializer.java | 119 +++ .../driver/impl/StateStoreSerializerPBImpl.java | 115 ++ .../store/records/impl/pb/PBRecord.java | 47 .../store/records/impl/pb/package-info.java | 29 + .../src/main/resources/hdfs-default.xml | 8 ++ 7 files changed, 429 insertions(+) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/a70a8b73/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java index 0eb42ce..320e1f3 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java @@ -25,6 +25,7 @@ import org.apache.hadoop.hdfs.protocol.HdfsConstants; import org.apache.hadoop.hdfs.server.blockmanagement.BlockPlacementPolicyDefault; import org.apache.hadoop.hdfs.server.blockmanagement.BlockPlacementPolicyRackFaultTolerant; import org.apache.hadoop.hdfs.server.datanode.fsdataset.impl.RamDiskReplicaLruTracker; +import org.apache.hadoop.hdfs.server.federation.store.driver.impl.StateStoreSerializerPBImpl; import org.apache.hadoop.http.HttpConfig; /** @@ -1108,6 +1109,16 @@ public class DFSConfigKeys extends CommonConfigurationKeys { public static final String FEDERATION_NAMENODE_RESOLVER_CLIENT_CLASS_DEFAULT = "org.apache.hadoop.hdfs.server.federation.MockResolver"; + // HDFS Router-based federation State Store + public static final String FEDERATION_STORE_PREFIX = + FEDERATION_ROUTER_PREFIX + "store."; + + public static final String FEDERATION_STORE_SERIALIZER_CLASS = + DFSConfigKeys.FEDERATION_STORE_PREFIX + "serializer"; + public static final Class + FEDERATION_STORE_SERIALIZER_CLASS_DEFAULT = + StateStoreSerializerPBImpl.class; + // dfs.client.retry confs are moved to HdfsClientConfigKeys.Retry @Deprecated public static final String DFS_CLIENT_RETRY_POLICY_ENABLED_KEY http://git-wip-us.apache.org/repos/asf/hadoop/blob/a70a8b73/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/store/RecordStore.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/store/RecordStore.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/store/RecordStore.java new file mode 100644 index 000..524f432 --- /dev/null +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/store/RecordStore.java @@ -0,0 +1,100 @@ +/** + * 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.hdfs.server.federation.store; + +import java.lang.reflect.Constructor; + +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.apache.hadoop.classification.InterfaceAudience; +import org.apache.hadoop.classification.InterfaceStability; +import
[19/40] hadoop git commit: YARN-7014. Fix off-by-one error causing heap corruption (Jason Lowe via nroberts)
YARN-7014. Fix off-by-one error causing heap corruption (Jason Lowe via nroberts) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/d2654590 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/d2654590 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/d2654590 Branch: refs/heads/HDFS-10467 Commit: d265459024b8e5f5eccf421627f684ca8f162112 Parents: dadb0c2 Author: Nathan RobertsAuthored: Tue Aug 15 15:52:48 2017 -0500 Committer: Nathan Roberts Committed: Tue Aug 15 15:52:48 2017 -0500 -- .../src/main/native/container-executor/impl/utils/string-utils.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/d2654590/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/impl/utils/string-utils.c -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/impl/utils/string-utils.c b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/impl/utils/string-utils.c index 703d484..063df7e 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/impl/utils/string-utils.c +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/impl/utils/string-utils.c @@ -44,8 +44,7 @@ int validate_container_id(const char* input) { * container_e17_1410901177871_0001_01_05 * container_1410901177871_0001_01_05 */ - char* input_cpy = malloc(strlen(input)); - strcpy(input_cpy, input); + char* input_cpy = strdup(input); char* p = strtok(input_cpy, "_"); int idx = 0; while (p != NULL) { - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
[03/40] hadoop git commit: YARN-6959. RM may allocate wrong AM Container for new attempt. Contributed by Yuqi Wang
YARN-6959. RM may allocate wrong AM Container for new attempt. Contributed by Yuqi Wang Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/e2f6299f Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/e2f6299f Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/e2f6299f Branch: refs/heads/HDFS-10467 Commit: e2f6299f6f580d7a03f2377d19ac85f55fd4e73b Parents: ce797a1 Author: Jian HeAuthored: Mon Aug 14 10:51:04 2017 -0700 Committer: Jian He Committed: Mon Aug 14 10:51:30 2017 -0700 -- .../scheduler/AbstractYarnScheduler.java| 1 + .../scheduler/capacity/CapacityScheduler.java | 13 ++ .../scheduler/fair/FairScheduler.java | 15 ++- .../scheduler/fifo/FifoScheduler.java | 15 ++- .../scheduler/fair/TestFairScheduler.java | 46 ++-- 5 files changed, 63 insertions(+), 27 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/e2f6299f/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/AbstractYarnScheduler.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/AbstractYarnScheduler.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/AbstractYarnScheduler.java index d506f4d..79caab0 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/AbstractYarnScheduler.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/AbstractYarnScheduler.java @@ -323,6 +323,7 @@ public abstract class AbstractYarnScheduler } + // TODO: Rename it to getCurrentApplicationAttempt public T getApplicationAttempt(ApplicationAttemptId applicationAttemptId) { SchedulerApplication app = applications.get( applicationAttemptId.getApplicationId()); http://git-wip-us.apache.org/repos/asf/hadoop/blob/e2f6299f/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacityScheduler.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacityScheduler.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacityScheduler.java index 3286982..e4ca003 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacityScheduler.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacityScheduler.java @@ -903,6 +903,19 @@ public class CapacityScheduler extends ContainerUpdates updateRequests) { FiCaSchedulerApp application = getApplicationAttempt(applicationAttemptId); if (application == null) { + LOG.error("Calling allocate on removed or non existent application " + + applicationAttemptId.getApplicationId()); + return EMPTY_ALLOCATION; +} + +// The allocate may be the leftover from previous attempt, and it will +// impact current attempt, such as confuse the request and allocation for +// current attempt's AM container. +// Note outside precondition check for the attempt id may be +// outdated here, so double check it here is necessary. +if (!application.getApplicationAttemptId().equals(applicationAttemptId)) { + LOG.error("Calling allocate on previous or removed " + + "or non existent application attempt " + applicationAttemptId); return EMPTY_ALLOCATION; } http://git-wip-us.apache.org/repos/asf/hadoop/blob/e2f6299f/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/FairScheduler.java -- diff --git
[12/40] hadoop git commit: YARN-5978. ContainerScheduler and ContainerManager changes to support ExecType update. (Kartheek Muthyala via asuresh)
http://git-wip-us.apache.org/repos/asf/hadoop/blob/4d7be1d8/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/scheduler/TestContainerSchedulerQueuing.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/scheduler/TestContainerSchedulerQueuing.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/scheduler/TestContainerSchedulerQueuing.java index aeba399..a1c247b 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/scheduler/TestContainerSchedulerQueuing.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/scheduler/TestContainerSchedulerQueuing.java @@ -27,6 +27,8 @@ import java.util.List; import org.apache.commons.logging.LogFactory; import org.apache.hadoop.fs.UnsupportedFileSystemException; import org.apache.hadoop.security.UserGroupInformation; +import org.apache.hadoop.yarn.api.protocolrecords.ContainerUpdateRequest; +import org.apache.hadoop.yarn.api.protocolrecords.ContainerUpdateResponse; import org.apache.hadoop.yarn.api.protocolrecords.GetContainerStatusesRequest; import org.apache.hadoop.yarn.api.protocolrecords.StartContainerRequest; import org.apache.hadoop.yarn.api.protocolrecords.StartContainersRequest; @@ -37,6 +39,7 @@ import org.apache.hadoop.yarn.api.records.ContainerId; import org.apache.hadoop.yarn.api.records.ContainerLaunchContext; import org.apache.hadoop.yarn.api.records.ContainerStatus; import org.apache.hadoop.yarn.api.records.ExecutionType; +import org.apache.hadoop.yarn.api.records.Token; import org.apache.hadoop.yarn.conf.YarnConfiguration; import org.apache.hadoop.yarn.exceptions.ConfigurationException; import org.apache.hadoop.yarn.exceptions.YarnException; @@ -951,4 +954,97 @@ public class TestContainerSchedulerQueuing extends BaseContainerManagerTest { map.get(org.apache.hadoop.yarn.api.records.ContainerState.SCHEDULED) .getContainerId()); } + + /** + * Starts one OPPORTUNISTIC container that takes up the whole node's + * resources, and submit one more that will be queued. Now promote the + * queued OPPORTUNISTIC container, which should kill the current running + * OPPORTUNISTIC container to make room for the promoted request. + * @throws Exception + */ + @Test + public void testPromotionOfOpportunisticContainers() throws Exception { +containerManager.start(); + +ContainerLaunchContext containerLaunchContext = +recordFactory.newRecordInstance(ContainerLaunchContext.class); + +List list = new ArrayList<>(); +list.add(StartContainerRequest.newInstance( +containerLaunchContext, +createContainerToken(createContainerId(0), DUMMY_RM_IDENTIFIER, +context.getNodeId(), +user, BuilderUtils.newResource(2048, 1), +context.getContainerTokenSecretManager(), null, +ExecutionType.OPPORTUNISTIC))); +list.add(StartContainerRequest.newInstance( +containerLaunchContext, +createContainerToken(createContainerId(1), DUMMY_RM_IDENTIFIER, +context.getNodeId(), +user, BuilderUtils.newResource(1024, 1), +context.getContainerTokenSecretManager(), null, +ExecutionType.OPPORTUNISTIC))); + +StartContainersRequest allRequests = +StartContainersRequest.newInstance(list); +containerManager.startContainers(allRequests); + +Thread.sleep(5000); + +// Ensure first container is running and others are queued. +List statList = new ArrayList(); +for (int i = 0; i < 3; i++) { + statList.add(createContainerId(i)); +} +GetContainerStatusesRequest statRequest = GetContainerStatusesRequest +.newInstance(Arrays.asList(createContainerId(0))); +List containerStatuses = containerManager +.getContainerStatuses(statRequest).getContainerStatuses(); +for (ContainerStatus status : containerStatuses) { + if (status.getContainerId().equals(createContainerId(0))) { +Assert.assertEquals( +org.apache.hadoop.yarn.api.records.ContainerState.RUNNING, +status.getState()); + } else { +Assert.assertEquals( +org.apache.hadoop.yarn.api.records.ContainerState.SCHEDULED, +status.getState()); + } +} + +ContainerScheduler containerScheduler = +containerManager.getContainerScheduler(); +// Ensure two containers are properly queued. +
[18/40] hadoop git commit: YARN-5146. Support for Fair Scheduler in new YARN UI. Contributed by Abdullah Yousufi.
YARN-5146. Support for Fair Scheduler in new YARN UI. Contributed by Abdullah Yousufi. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/dadb0c22 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/dadb0c22 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/dadb0c22 Branch: refs/heads/HDFS-10467 Commit: dadb0c2225adef5cb0126610733c285b51f4f43e Parents: e3ae3e2 Author: Sunil GAuthored: Tue Aug 15 21:58:44 2017 +0530 Committer: Sunil G Committed: Tue Aug 15 21:58:44 2017 +0530 -- .../src/main/webapp/app/adapters/yarn-queue.js | 30 - .../app/adapters/yarn-queue/capacity-queue.js | 23 .../app/adapters/yarn-queue/fair-queue.js | 23 .../app/adapters/yarn-queue/fifo-queue.js | 23 .../app/adapters/yarn-queue/yarn-queue.js | 30 + .../main/webapp/app/components/tree-selector.js | 19 ++- .../src/main/webapp/app/models/yarn-queue.js| 94 -- .../app/models/yarn-queue/capacity-queue.js | 95 ++ .../webapp/app/models/yarn-queue/fair-queue.js | 79 .../webapp/app/models/yarn-queue/fifo-queue.js | 52 .../webapp/app/models/yarn-queue/yarn-queue.js | 23 .../main/webapp/app/routes/cluster-overview.js | 4 +- .../src/main/webapp/app/routes/yarn-queue.js| 26 ++-- .../src/main/webapp/app/routes/yarn-queues.js | 12 +- .../main/webapp/app/routes/yarn-queues/index.js | 25 .../app/routes/yarn-queues/queues-selector.js | 25 .../main/webapp/app/serializers/yarn-queue.js | 129 --- .../serializers/yarn-queue/capacity-queue.js| 128 ++ .../app/serializers/yarn-queue/fair-queue.js| 92 + .../app/serializers/yarn-queue/fifo-queue.js| 59 + .../app/serializers/yarn-queue/yarn-queue.js| 47 +++ .../components/queue-configuration-table.hbs| 54 .../templates/components/queue-navigator.hbs| 7 +- .../yarn-queue/capacity-queue-conf-table.hbs| 54 .../yarn-queue/capacity-queue-info.hbs | 84 .../components/yarn-queue/capacity-queue.hbs| 63 + .../yarn-queue/fair-queue-conf-table.hbs| 52 .../components/yarn-queue/fair-queue-info.hbs | 66 ++ .../components/yarn-queue/fair-queue.hbs| 63 + .../yarn-queue/fifo-queue-conf-table.hbs| 56 .../components/yarn-queue/fifo-queue-info.hbs | 47 +++ .../components/yarn-queue/fifo-queue.hbs| 48 +++ .../webapp/app/templates/yarn-queue/info.hbs| 73 +-- .../main/webapp/app/templates/yarn-queues.hbs | 54 +--- .../src/main/webapp/app/utils/color-utils.js| 1 - 35 files changed, 1266 insertions(+), 494 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/dadb0c22/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/adapters/yarn-queue.js -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/adapters/yarn-queue.js b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/adapters/yarn-queue.js deleted file mode 100644 index f2017df..000 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/adapters/yarn-queue.js +++ /dev/null @@ -1,30 +0,0 @@ -/** - * 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. - */ - -import AbstractAdapter from './abstract'; - -export default AbstractAdapter.extend({ - address: "rmWebAddress", - restNameSpace: "cluster", - serverName: "RM", - - pathForType(/*modelName*/) { -return 'scheduler'; // move to some common place, return path by modelname. - } - -}); http://git-wip-us.apache.org/repos/asf/hadoop/blob/dadb0c22/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/adapters/yarn-queue/capacity-queue.js -- diff --git
[26/40] hadoop git commit: HDFS-11546. Federation Router RPC server. Contributed by Jason Kace and Inigo Goiri.
http://git-wip-us.apache.org/repos/asf/hadoop/blob/56e7541e/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/router/RouterRpcClient.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/router/RouterRpcClient.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/router/RouterRpcClient.java new file mode 100644 index 000..3a32be1 --- /dev/null +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/router/RouterRpcClient.java @@ -0,0 +1,856 @@ +/** + * 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.hdfs.server.federation.router; + +import java.io.IOException; +import java.lang.reflect.Constructor; +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.net.InetSocketAddress; +import java.util.Arrays; +import java.util.Collection; +import java.util.Collections; +import java.util.HashSet; +import java.util.LinkedHashMap; +import java.util.LinkedList; +import java.util.List; +import java.util.Map; +import java.util.Map.Entry; +import java.util.Set; +import java.util.TreeMap; +import java.util.concurrent.Callable; +import java.util.concurrent.ExecutionException; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; +import java.util.concurrent.Future; +import java.util.concurrent.ThreadFactory; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +import org.apache.hadoop.conf.Configuration; +import org.apache.hadoop.hdfs.NameNodeProxiesClient.ProxyAndInfo; +import org.apache.hadoop.hdfs.client.HdfsClientConfigKeys; +import org.apache.hadoop.hdfs.protocol.ClientProtocol; +import org.apache.hadoop.hdfs.protocol.ExtendedBlock; +import org.apache.hadoop.hdfs.server.federation.resolver.ActiveNamenodeResolver; +import org.apache.hadoop.hdfs.server.federation.resolver.FederationNamenodeContext; +import org.apache.hadoop.hdfs.server.federation.resolver.RemoteLocation; +import org.apache.hadoop.io.retry.RetryPolicies; +import org.apache.hadoop.io.retry.RetryPolicy; +import org.apache.hadoop.io.retry.RetryPolicy.RetryAction.RetryDecision; +import org.apache.hadoop.ipc.RemoteException; +import org.apache.hadoop.ipc.StandbyException; +import org.apache.hadoop.security.UserGroupInformation; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import com.google.common.util.concurrent.ThreadFactoryBuilder; + +/** + * A client proxy for Router -> NN communication using the NN ClientProtocol. + * + * Provides routers to invoke remote ClientProtocol methods and handle + * retries/failover. + * + * invokeSingle Make a single request to a single namespace + * invokeSequential Make a sequential series of requests to multiple + * ordered namespaces until a condition is met. + * invokeConcurrent Make concurrent requests to multiple namespaces and + * return all of the results. + * + * Also maintains a cached pool of connections to NNs. Connections are managed + * by the ConnectionManager and are unique to each user + NN. The size of the + * connection pool can be configured. Larger pools allow for more simultaneous + * requests to a single NN from a single user. + */ +public class RouterRpcClient { + + private static final Logger LOG = + LoggerFactory.getLogger(RouterRpcClient.class); + + + /** Router identifier. */ + private final String routerId; + + /** Interface to identify the active NN for a nameservice or blockpool ID. */ + private final ActiveNamenodeResolver namenodeResolver; + + /** Connection pool to the Namenodes per user for performance. */ + private final ConnectionManager connectionManager; + /** Service to run asynchronous calls. */ + private final ExecutorService executorService; + /** Retry policy for router -> NN communication. */ + private final RetryPolicy retryPolicy; + + /** Pattern to parse a stack trace line. */ + private static final Pattern STACK_TRACE_PATTERN = + Pattern.compile("\\tat (.*)\\.(.*)\\((.*):(\\d*)\\)"); + + + /** + * Create a router RPC
[29/40] hadoop git commit: HDFS-10629. Federation Roter. Contributed by Jason Kace and Inigo Goiri.
HDFS-10629. Federation Roter. Contributed by Jason Kace and Inigo Goiri. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/273c47b0 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/273c47b0 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/273c47b0 Branch: refs/heads/HDFS-10467 Commit: 273c47b0cba743133a4d739f90e64c6b97840c76 Parents: 75dd866 Author: InigoAuthored: Tue Mar 28 14:30:59 2017 -0700 Committer: Inigo Goiri Committed: Tue Aug 15 18:17:23 2017 -0700 -- .../hadoop-hdfs/src/main/bin/hdfs | 5 + .../hadoop-hdfs/src/main/bin/hdfs.cmd | 8 +- .../org/apache/hadoop/hdfs/DFSConfigKeys.java | 17 + .../resolver/ActiveNamenodeResolver.java| 117 +++ .../resolver/FederationNamenodeContext.java | 87 +++ .../FederationNamenodeServiceState.java | 46 ++ .../resolver/FederationNamespaceInfo.java | 99 +++ .../resolver/FileSubclusterResolver.java| 75 ++ .../resolver/NamenodePriorityComparator.java| 63 ++ .../resolver/NamenodeStatusReport.java | 195 + .../federation/resolver/PathLocation.java | 122 +++ .../federation/resolver/RemoteLocation.java | 74 ++ .../federation/resolver/package-info.java | 41 + .../federation/router/FederationUtil.java | 117 +++ .../router/RemoteLocationContext.java | 38 + .../hdfs/server/federation/router/Router.java | 263 +++ .../federation/router/RouterRpcServer.java | 102 +++ .../server/federation/router/package-info.java | 31 + .../federation/store/StateStoreService.java | 77 ++ .../server/federation/store/package-info.java | 62 ++ .../src/main/resources/hdfs-default.xml | 16 + .../server/federation/FederationTestUtils.java | 233 ++ .../hdfs/server/federation/MockResolver.java| 290 +++ .../server/federation/RouterConfigBuilder.java | 40 + .../server/federation/RouterDFSCluster.java | 767 +++ .../server/federation/router/TestRouter.java| 96 +++ 26 files changed, 3080 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/273c47b0/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs b/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs index e6405b5..b1f44a4 100755 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs @@ -57,6 +57,7 @@ function hadoop_usage hadoop_add_subcommand "oiv" admin "apply the offline fsimage viewer to an fsimage" hadoop_add_subcommand "oiv_legacy" admin "apply the offline fsimage viewer to a legacy fsimage" hadoop_add_subcommand "portmap" daemon "run a portmap service" + hadoop_add_subcommand "router" daemon "run the DFS router" hadoop_add_subcommand "secondarynamenode" daemon "run the DFS secondary namenode" hadoop_add_subcommand "snapshotDiff" client "diff two snapshots of a directory or diff the current directory contents with a snapshot" hadoop_add_subcommand "storagepolicies" admin "list/get/set block storage policies" @@ -176,6 +177,10 @@ function hdfscmd_case HADOOP_SUBCMD_SUPPORTDAEMONIZATION="true" HADOOP_CLASSNAME=org.apache.hadoop.portmap.Portmap ;; +router) + HADOOP_SUBCMD_SUPPORTDAEMONIZATION="true" + HADOOP_CLASSNAME='org.apache.hadoop.hdfs.server.federation.router.Router' +;; secondarynamenode) HADOOP_SUBCMD_SUPPORTDAEMONIZATION="true" HADOOP_CLASSNAME='org.apache.hadoop.hdfs.server.namenode.SecondaryNameNode' http://git-wip-us.apache.org/repos/asf/hadoop/blob/273c47b0/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs.cmd -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs.cmd b/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs.cmd index 2181e47..b9853d6 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs.cmd +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs.cmd @@ -59,7 +59,7 @@ if "%1" == "--loglevel" ( ) ) - set hdfscommands=dfs namenode secondarynamenode journalnode zkfc datanode dfsadmin haadmin fsck balancer jmxget oiv oev fetchdt getconf groups snapshotDiff lsSnapshottableDir cacheadmin mover storagepolicies classpath crypto debug + set hdfscommands=dfs namenode secondarynamenode journalnode zkfc datanode dfsadmin haadmin fsck balancer jmxget oiv oev fetchdt getconf groups snapshotDiff lsSnapshottableDir cacheadmin mover storagepolicies classpath crypto router debug for %%i in ( %hdfscommands% ) do ( if %hdfs-command% == %%i set hdfscommand=true
[31/40] hadoop git commit: HDFS-11826. Federation Namenode Heartbeat. Contributed by Inigo Goiri.
HDFS-11826. Federation Namenode Heartbeat. Contributed by Inigo Goiri. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/a590fb6d Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/a590fb6d Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/a590fb6d Branch: refs/heads/HDFS-10467 Commit: a590fb6dd9eaf84ebe9496003bc2473583a690c9 Parents: ac24670 Author: Inigo GoiriAuthored: Tue Aug 1 14:40:27 2017 -0700 Committer: Inigo Goiri Committed: Tue Aug 15 18:17:23 2017 -0700 -- .../org/apache/hadoop/hdfs/DFSConfigKeys.java | 14 + .../java/org/apache/hadoop/hdfs/DFSUtil.java| 38 ++ .../resolver/NamenodeStatusReport.java | 193 ++ .../federation/router/FederationUtil.java | 66 .../router/NamenodeHeartbeatService.java| 350 +++ .../hdfs/server/federation/router/Router.java | 112 ++ .../src/main/resources/hdfs-default.xml | 32 ++ .../org/apache/hadoop/hdfs/MiniDFSCluster.java | 8 + .../hdfs/server/federation/MockResolver.java| 9 +- .../server/federation/RouterConfigBuilder.java | 22 ++ .../server/federation/RouterDFSCluster.java | 43 +++ .../router/TestNamenodeHeartbeat.java | 168 + .../server/federation/router/TestRouter.java| 3 + 13 files changed, 1057 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/a590fb6d/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java index d7c2d18..acd4790 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java @@ -1129,6 +1129,20 @@ public class DFSConfigKeys extends CommonConfigurationKeys { FEDERATION_ROUTER_PREFIX + "rpc.enable"; public static final boolean DFS_ROUTER_RPC_ENABLE_DEFAULT = true; + // HDFS Router heartbeat + public static final String DFS_ROUTER_HEARTBEAT_ENABLE = + FEDERATION_ROUTER_PREFIX + "heartbeat.enable"; + public static final boolean DFS_ROUTER_HEARTBEAT_ENABLE_DEFAULT = true; + public static final String DFS_ROUTER_HEARTBEAT_INTERVAL_MS = + FEDERATION_ROUTER_PREFIX + "heartbeat.interval"; + public static final long DFS_ROUTER_HEARTBEAT_INTERVAL_MS_DEFAULT = + TimeUnit.SECONDS.toMillis(5); + public static final String DFS_ROUTER_MONITOR_NAMENODE = + FEDERATION_ROUTER_PREFIX + "monitor.namenode"; + public static final String DFS_ROUTER_MONITOR_LOCAL_NAMENODE = + FEDERATION_ROUTER_PREFIX + "monitor.localnamenode.enable"; + public static final boolean DFS_ROUTER_MONITOR_LOCAL_NAMENODE_DEFAULT = true; + // HDFS Router NN client public static final String DFS_ROUTER_NAMENODE_CONNECTION_POOL_SIZE = FEDERATION_ROUTER_PREFIX + "connection.pool-size"; http://git-wip-us.apache.org/repos/asf/hadoop/blob/a590fb6d/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSUtil.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSUtil.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSUtil.java index 47e1c0d..0ea5e3e 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSUtil.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSUtil.java @@ -1237,6 +1237,44 @@ public class DFSUtil { } /** + * Map a logical namenode ID to its web address. Use the given nameservice if + * specified, or the configured one if none is given. + * + * @param conf Configuration + * @param nsId which nameservice nnId is a part of, optional + * @param nnId the namenode ID to get the service addr for + * @return the service addr, null if it could not be determined + */ + public static String getNamenodeWebAddr(final Configuration conf, String nsId, + String nnId) { + +if (nsId == null) { + nsId = getOnlyNameServiceIdOrNull(conf); +} + +String webAddrKey = DFSUtilClient.concatSuffixes( +DFSConfigKeys.DFS_NAMENODE_HTTP_ADDRESS_KEY, nsId, nnId); + +String webAddr = +conf.get(webAddrKey, DFSConfigKeys.DFS_NAMENODE_HTTP_ADDRESS_DEFAULT); +return webAddr; + } + + /** + * Get all of the Web addresses of the individual NNs in a given nameservice. + * + * @param conf Configuration + * @param nsId the
[21/40] hadoop git commit: HADOOP-14773. Extend ZKCuratorManager API for more reusability. (Íñigo Goiri via Subru).
HADOOP-14773. Extend ZKCuratorManager API for more reusability. (Ãñigo Goiri via Subru). Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/75dd866b Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/75dd866b Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/75dd866b Branch: refs/heads/HDFS-10467 Commit: 75dd866bfb8b63cb9f13179d4365b05c48e0907d Parents: f34646d Author: Subru KrishnanAuthored: Tue Aug 15 16:53:59 2017 -0700 Committer: Subru Krishnan Committed: Tue Aug 15 16:53:59 2017 -0700 -- .../hadoop/util/curator/ZKCuratorManager.java | 54 ++-- .../util/curator/TestZKCuratorManager.java | 2 +- .../recovery/ZKRMStateStore.java| 19 +-- 3 files changed, 52 insertions(+), 23 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/75dd866b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/curator/ZKCuratorManager.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/curator/ZKCuratorManager.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/curator/ZKCuratorManager.java index 3adf028..9a031af 100644 --- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/curator/ZKCuratorManager.java +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/curator/ZKCuratorManager.java @@ -33,9 +33,12 @@ import org.apache.hadoop.fs.CommonConfigurationKeys; import org.apache.hadoop.util.ZKUtil; import org.apache.zookeeper.CreateMode; import org.apache.zookeeper.data.ACL; +import org.apache.zookeeper.data.Stat; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import com.google.common.base.Preconditions; + /** * Helper class that provides utility methods specific to ZK operations. */ @@ -179,7 +182,6 @@ public final class ZKCuratorManager { /** * Get the data in a ZNode. * @param path Path of the ZNode. - * @param stat Output statistics of the ZNode. * @return The data in the ZNode. * @throws Exception If it cannot contact Zookeeper. */ @@ -190,16 +192,38 @@ public final class ZKCuratorManager { /** * Get the data in a ZNode. * @param path Path of the ZNode. - * @param stat Output statistics of the ZNode. + * @param stat + * @return The data in the ZNode. + * @throws Exception If it cannot contact Zookeeper. + */ + public byte[] getData(final String path, Stat stat) throws Exception { +return curator.getData().storingStatIn(stat).forPath(path); + } + + /** + * Get the data in a ZNode. + * @param path Path of the ZNode. * @return The data in the ZNode. * @throws Exception If it cannot contact Zookeeper. */ - public String getSringData(final String path) throws Exception { + public String getStringData(final String path) throws Exception { byte[] bytes = getData(path); return new String(bytes, Charset.forName("UTF-8")); } /** + * Get the data in a ZNode. + * @param path Path of the ZNode. + * @param stat Output statistics of the ZNode. + * @return The data in the ZNode. + * @throws Exception If it cannot contact Zookeeper. + */ + public String getStringData(final String path, Stat stat) throws Exception { +byte[] bytes = getData(path, stat); +return new String(bytes, Charset.forName("UTF-8")); + } + + /** * Set data into a ZNode. * @param path Path of the ZNode. * @param data Data to set. @@ -272,14 +296,36 @@ public final class ZKCuratorManager { } /** + * Utility function to ensure that the configured base znode exists. + * This recursively creates the znode as well as all of its parents. + * @param path Path of the znode to create. + * @throws Exception If it cannot create the file. + */ + public void createRootDirRecursively(String path) throws Exception { +String[] pathParts = path.split("/"); +Preconditions.checkArgument( +pathParts.length >= 1 && pathParts[0].isEmpty(), +"Invalid path: %s", path); +StringBuilder sb = new StringBuilder(); + +for (int i = 1; i < pathParts.length; i++) { + sb.append("/").append(pathParts[i]); + create(sb.toString()); +} + } + + /** * Delete a ZNode. * @param path Path of the ZNode. + * @return If the znode was deleted. * @throws Exception If it cannot contact ZooKeeper. */ - public void delete(final String path) throws Exception { + public boolean delete(final String path) throws Exception { if (exists(path)) { curator.delete().deletingChildrenIfNeeded().forPath(path); + return true; } +return false; } /**
[14/40] hadoop git commit: HADOOP-14726. Mark FileStatus::isDir as final
HADOOP-14726. Mark FileStatus::isDir as final Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/645a8f2a Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/645a8f2a Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/645a8f2a Branch: refs/heads/HDFS-10467 Commit: 645a8f2a4d09acb5a21820f52ee78784d9e4cc8a Parents: 4d7be1d Author: Chris DouglasAuthored: Mon Aug 14 21:57:20 2017 -0700 Committer: Chris Douglas Committed: Mon Aug 14 21:57:20 2017 -0700 -- .../java/org/apache/hadoop/fs/FileStatus.java| 19 +-- .../hadoop/fs/viewfs/ViewFsFileStatus.java | 8 +--- .../fs/viewfs/ViewFsLocatedFileStatus.java | 6 -- .../hadoop/hdfs/protocolPB/PBHelperClient.java | 2 +- .../apache/hadoop/hdfs/nfs/nfs3/Nfs3Utils.java | 6 -- .../hadoop/hdfs/nfs/nfs3/RpcProgramNfs3.java | 8 .../apache/hadoop/hdfs/server/mover/Mover.java | 2 +- .../hdfs/server/namenode/NamenodeFsck.java | 4 ++-- .../hadoop/hdfs/TestDFSUpgradeFromImage.java | 3 +-- .../hdfs/server/mover/TestStorageMover.java | 2 +- .../hadoop/hdfs/server/namenode/TestStartup.java | 4 ++-- .../server/namenode/ha/TestEditLogTailer.java| 4 ++-- .../namenode/ha/TestFailureToReadEdits.java | 6 +++--- .../namenode/ha/TestInitializeSharedEdits.java | 2 +- .../lib/input/TestCombineFileInputFormat.java| 2 +- .../azure/TestOutOfBandAzureBlobOperations.java | 8 .../hadoop/fs/swift/snative/SwiftFileStatus.java | 16 .../snative/SwiftNativeFileSystemStore.java | 4 ++-- .../fs/swift/TestSwiftFileSystemDirectories.java | 4 ++-- .../TestSwiftFileSystemPartitionedUploads.java | 2 +- 20 files changed, 46 insertions(+), 66 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/645a8f2a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/FileStatus.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/FileStatus.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/FileStatus.java index 2f22ea0..8575439 100644 --- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/FileStatus.java +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/FileStatus.java @@ -172,7 +172,7 @@ public class FileStatus implements Writable, Comparable, * @return true if this is a file */ public boolean isFile() { -return !isdir && !isSymlink(); +return !isDirectory() && !isSymlink(); } /** @@ -182,20 +182,20 @@ public class FileStatus implements Writable, Comparable, public boolean isDirectory() { return isdir; } - + /** - * Old interface, instead use the explicit {@link FileStatus#isFile()}, - * {@link FileStatus#isDirectory()}, and {@link FileStatus#isSymlink()} + * Old interface, instead use the explicit {@link FileStatus#isFile()}, + * {@link FileStatus#isDirectory()}, and {@link FileStatus#isSymlink()} * @return true if this is a directory. - * @deprecated Use {@link FileStatus#isFile()}, - * {@link FileStatus#isDirectory()}, and {@link FileStatus#isSymlink()} + * @deprecated Use {@link FileStatus#isFile()}, + * {@link FileStatus#isDirectory()}, and {@link FileStatus#isSymlink()} * instead. */ @Deprecated - public boolean isDir() { -return isdir; + public final boolean isDir() { +return isDirectory(); } - + /** * Is this a symbolic link? * @return true if this is a symbolic link @@ -448,7 +448,6 @@ public class FileStatus implements Writable, Comparable, FileStatus other = PBHelper.convert(proto); isdir = other.isDirectory(); length = other.getLen(); -isdir = other.isDirectory(); block_replication = other.getReplication(); blocksize = other.getBlockSize(); modification_time = other.getModificationTime(); http://git-wip-us.apache.org/repos/asf/hadoop/blob/645a8f2a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/viewfs/ViewFsFileStatus.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/viewfs/ViewFsFileStatus.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/viewfs/ViewFsFileStatus.java index e0f62e4..ce03ced 100644 --- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/viewfs/ViewFsFileStatus.java +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/viewfs/ViewFsFileStatus.java @@ -61,13 +61,7 @@ class ViewFsFileStatus extends FileStatus {
[02/40] hadoop git commit: HDFS-12221. Replace xcerces in XmlEditsVisitor. (Ajay Kumar via lei)
HDFS-12221. Replace xcerces in XmlEditsVisitor. (Ajay Kumar via lei) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/ce797a17 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/ce797a17 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/ce797a17 Branch: refs/heads/HDFS-10467 Commit: ce797a170669524224cfeaaf70647047e7626816 Parents: d8f74c3 Author: Lei XuAuthored: Mon Aug 14 10:27:47 2017 -0700 Committer: Lei Xu Committed: Mon Aug 14 10:27:47 2017 -0700 -- .../hadoop-client-minicluster/pom.xml | 6 -- .../hadoop-client-runtime/pom.xml | 7 --- hadoop-hdfs-project/hadoop-hdfs/pom.xml | 5 -- .../offlineEditsViewer/XmlEditsVisitor.java | 41 .../hadoop-hdfs/src/test/resources/editsStored | Bin 5850 -> 5850 bytes .../src/test/resources/editsStored.xml | 62 +-- .../hadoop-mapreduce-client/pom.xml | 10 +-- hadoop-project-dist/pom.xml | 10 +-- hadoop-project/pom.xml | 8 --- hadoop-yarn-project/hadoop-yarn/pom.xml | 10 +-- 10 files changed, 62 insertions(+), 97 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/ce797a17/hadoop-client-modules/hadoop-client-minicluster/pom.xml -- diff --git a/hadoop-client-modules/hadoop-client-minicluster/pom.xml b/hadoop-client-modules/hadoop-client-minicluster/pom.xml index 5255640..5cf1fad 100644 --- a/hadoop-client-modules/hadoop-client-minicluster/pom.xml +++ b/hadoop-client-modules/hadoop-client-minicluster/pom.xml @@ -629,12 +629,6 @@ - xerces:xercesImpl - -**/* - - - org.apache.hadoop:hadoop-mapreduce-client-jobclient:* testjar/* http://git-wip-us.apache.org/repos/asf/hadoop/blob/ce797a17/hadoop-client-modules/hadoop-client-runtime/pom.xml -- diff --git a/hadoop-client-modules/hadoop-client-runtime/pom.xml b/hadoop-client-modules/hadoop-client-runtime/pom.xml index 2f64152..24c6b7a 100644 --- a/hadoop-client-modules/hadoop-client-runtime/pom.xml +++ b/hadoop-client-modules/hadoop-client-runtime/pom.xml @@ -174,13 +174,6 @@ org/apache/jasper/compiler/Localizer.class - - - xerces:xercesImpl - -META-INF/services/* - - com.sun.jersey:* http://git-wip-us.apache.org/repos/asf/hadoop/blob/ce797a17/hadoop-hdfs-project/hadoop-hdfs/pom.xml -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/pom.xml b/hadoop-hdfs-project/hadoop-hdfs/pom.xml index 1c50d31..fa1044d 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/pom.xml +++ b/hadoop-hdfs-project/hadoop-hdfs/pom.xml @@ -174,11 +174,6 @@ http://maven.apache.org/xsd/maven-4.0.0.xsd;> compile - xerces - xercesImpl - compile - - org.apache.htrace htrace-core4 http://git-wip-us.apache.org/repos/asf/hadoop/blob/ce797a17/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/offlineEditsViewer/XmlEditsVisitor.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/offlineEditsViewer/XmlEditsVisitor.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/offlineEditsViewer/XmlEditsVisitor.java index 7a39ba6..ddf7933 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/offlineEditsViewer/XmlEditsVisitor.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/offlineEditsViewer/XmlEditsVisitor.java @@ -20,17 +20,21 @@ package org.apache.hadoop.hdfs.tools.offlineEditsViewer; import java.io.IOException; import java.io.OutputStream; +import javax.xml.transform.OutputKeys; +import javax.xml.transform.TransformerConfigurationException; +import javax.xml.transform.sax.SAXTransformerFactory; +import javax.xml.transform.sax.TransformerHandler; +import javax.xml.transform.stream.StreamResult; +import org.xml.sax.ContentHandler; +import org.xml.sax.SAXException; +import
[23/40] hadoop git commit: HDFS-10630. Federation State Store FS Implementation. Contributed by Jason Kace and Inigo Goiri.
HDFS-10630. Federation State Store FS Implementation. Contributed by Jason Kace and Inigo Goiri. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/abe4178a Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/abe4178a Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/abe4178a Branch: refs/heads/HDFS-10467 Commit: abe4178a217a7b27a1138e3a0ab3e1dca909a1e7 Parents: a70a8b7 Author: Inigo GoiriAuthored: Tue May 2 15:49:53 2017 -0700 Committer: Inigo Goiri Committed: Tue Aug 15 18:17:23 2017 -0700 -- .../org/apache/hadoop/hdfs/DFSConfigKeys.java | 14 + .../federation/router/PeriodicService.java | 198 .../StateStoreConnectionMonitorService.java | 67 +++ .../federation/store/StateStoreService.java | 152 +- .../federation/store/StateStoreUtils.java | 51 +- .../store/driver/StateStoreDriver.java | 31 +- .../driver/StateStoreRecordOperations.java | 17 +- .../store/driver/impl/StateStoreBaseImpl.java | 31 +- .../driver/impl/StateStoreFileBaseImpl.java | 429 .../store/driver/impl/StateStoreFileImpl.java | 161 +++ .../driver/impl/StateStoreFileSystemImpl.java | 178 +++ .../driver/impl/StateStoreSerializableImpl.java | 77 +++ .../federation/store/records/BaseRecord.java| 20 +- .../server/federation/store/records/Query.java | 66 +++ .../src/main/resources/hdfs-default.xml | 16 + .../store/FederationStateStoreTestUtils.java| 232 + .../store/driver/TestStateStoreDriverBase.java | 483 +++ .../store/driver/TestStateStoreFile.java| 64 +++ .../store/driver/TestStateStoreFileSystem.java | 88 19 files changed, 2329 insertions(+), 46 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/abe4178a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java index 320e1f3..2b6d0e8 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java @@ -18,6 +18,8 @@ package org.apache.hadoop.hdfs; +import java.util.concurrent.TimeUnit; + import org.apache.hadoop.classification.InterfaceAudience; import org.apache.hadoop.fs.CommonConfigurationKeys; import org.apache.hadoop.hdfs.client.HdfsClientConfigKeys; @@ -25,6 +27,8 @@ import org.apache.hadoop.hdfs.protocol.HdfsConstants; import org.apache.hadoop.hdfs.server.blockmanagement.BlockPlacementPolicyDefault; import org.apache.hadoop.hdfs.server.blockmanagement.BlockPlacementPolicyRackFaultTolerant; import org.apache.hadoop.hdfs.server.datanode.fsdataset.impl.RamDiskReplicaLruTracker; +import org.apache.hadoop.hdfs.server.federation.store.driver.StateStoreDriver; +import org.apache.hadoop.hdfs.server.federation.store.driver.impl.StateStoreFileImpl; import org.apache.hadoop.hdfs.server.federation.store.driver.impl.StateStoreSerializerPBImpl; import org.apache.hadoop.http.HttpConfig; @@ -1119,6 +1123,16 @@ public class DFSConfigKeys extends CommonConfigurationKeys { FEDERATION_STORE_SERIALIZER_CLASS_DEFAULT = StateStoreSerializerPBImpl.class; + public static final String FEDERATION_STORE_DRIVER_CLASS = + FEDERATION_STORE_PREFIX + "driver.class"; + public static final Class + FEDERATION_STORE_DRIVER_CLASS_DEFAULT = StateStoreFileImpl.class; + + public static final String FEDERATION_STORE_CONNECTION_TEST_MS = + FEDERATION_STORE_PREFIX + "connection.test"; + public static final long FEDERATION_STORE_CONNECTION_TEST_MS_DEFAULT = + TimeUnit.MINUTES.toMillis(1); + // dfs.client.retry confs are moved to HdfsClientConfigKeys.Retry @Deprecated public static final String DFS_CLIENT_RETRY_POLICY_ENABLED_KEY http://git-wip-us.apache.org/repos/asf/hadoop/blob/abe4178a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/router/PeriodicService.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/router/PeriodicService.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/router/PeriodicService.java new file mode 100644 index 000..5e1 --- /dev/null +++
[05/40] hadoop git commit: HDFS-12162. Update listStatus document to describe the behavior when the argument is a file. Contributed by Ajay Kumar.
HDFS-12162. Update listStatus document to describe the behavior when the argument is a file. Contributed by Ajay Kumar. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/d72124a4 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/d72124a4 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/d72124a4 Branch: refs/heads/HDFS-10467 Commit: d72124a44268e21ada036242bfbccafc23c52ed0 Parents: 18f3603 Author: Anu EngineerAuthored: Mon Aug 14 11:32:49 2017 -0700 Committer: Anu Engineer Committed: Mon Aug 14 11:32:49 2017 -0700 -- .../hadoop/fs/http/server/FSOperations.java | 2 +- .../hadoop-hdfs/src/site/markdown/WebHDFS.md| 39 2 files changed, 40 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/d72124a4/hadoop-hdfs-project/hadoop-hdfs-httpfs/src/main/java/org/apache/hadoop/fs/http/server/FSOperations.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs-httpfs/src/main/java/org/apache/hadoop/fs/http/server/FSOperations.java b/hadoop-hdfs-project/hadoop-hdfs-httpfs/src/main/java/org/apache/hadoop/fs/http/server/FSOperations.java index c008802..4b5918a 100644 --- a/hadoop-hdfs-project/hadoop-hdfs-httpfs/src/main/java/org/apache/hadoop/fs/http/server/FSOperations.java +++ b/hadoop-hdfs-project/hadoop-hdfs-httpfs/src/main/java/org/apache/hadoop/fs/http/server/FSOperations.java @@ -669,7 +669,7 @@ public class FSOperations { /** * Creates a list-status executor. * - * @param path the directory to retrieve the status of its contents. + * @param path the directory/file to retrieve the status of its contents. * @param filter glob filter to use. * * @throws IOException thrown if the filter expression is incorrect. http://git-wip-us.apache.org/repos/asf/hadoop/blob/d72124a4/hadoop-hdfs-project/hadoop-hdfs/src/site/markdown/WebHDFS.md -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/site/markdown/WebHDFS.md b/hadoop-hdfs-project/hadoop-hdfs/src/site/markdown/WebHDFS.md index 7544c80..03834eb 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/site/markdown/WebHDFS.md +++ b/hadoop-hdfs-project/hadoop-hdfs/src/site/markdown/WebHDFS.md @@ -495,6 +495,45 @@ See also: [FileSystem](../../api/org/apache/hadoop/fs/FileSystem.html).getFileSt See also: [FileSystem](../../api/org/apache/hadoop/fs/FileSystem.html).listStatus +### List a File + +* Submit a HTTP GET request. + +curl -i "http://:/webhdfs/v1/?op=LISTSTATUS" + +The client receives a response with a [`FileStatuses` JSON object](#FileStatuses_JSON_Schema): + +HTTP/1.1 200 OK +Content-Type: application/json +Content-Length: 427 + +{ + "FileStatuses": + { +"FileStatus": +[ + { +"accessTime" : 1320171722771, +"blockSize" : 33554432, +"childrenNum" : 0, +"fileId" : 16390, +"group" : "supergroup", +"length" : 1366, +"modificationTime": 1501770633062, +"owner" : "webuser", +"pathSuffix" : "", +"permission" : "644", +"replication" : 1, +"storagePolicy" : 0, +"type": "FILE" + } +] + } +} + +See also: [FileSystem](../../api/org/apache/hadoop/fs/FileSystem.html).listStatus + + ### Iteratively List a Directory * Submit a HTTP GET request. - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
[32/40] hadoop git commit: HDFS-12223. Rebasing HDFS-10467. Contributed by Inigo Goiri.
HDFS-12223. Rebasing HDFS-10467. Contributed by Inigo Goiri. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/907948a7 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/907948a7 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/907948a7 Branch: refs/heads/HDFS-10467 Commit: 907948a71aa2acc17fe1518f6aadad31228f0708 Parents: 56e7541 Author: Inigo GoiriAuthored: Fri Jul 28 15:55:10 2017 -0700 Committer: Inigo Goiri Committed: Tue Aug 15 18:17:23 2017 -0700 -- .../federation/router/RouterRpcServer.java | 59 +--- 1 file changed, 51 insertions(+), 8 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/907948a7/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/router/RouterRpcServer.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/router/RouterRpcServer.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/router/RouterRpcServer.java index 4bae71e..eaaab39 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/router/RouterRpcServer.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/router/RouterRpcServer.java @@ -64,8 +64,9 @@ import org.apache.hadoop.hdfs.AddBlockFlag; import org.apache.hadoop.hdfs.DFSConfigKeys; import org.apache.hadoop.hdfs.DFSUtil; import org.apache.hadoop.hdfs.inotify.EventBatchList; -import org.apache.hadoop.hdfs.protocol.AddingECPolicyResponse; +import org.apache.hadoop.hdfs.protocol.AddECPolicyResponse; import org.apache.hadoop.hdfs.protocol.BlockStoragePolicy; +import org.apache.hadoop.hdfs.protocol.BlocksStats; import org.apache.hadoop.hdfs.protocol.CacheDirectiveEntry; import org.apache.hadoop.hdfs.protocol.CacheDirectiveInfo; import org.apache.hadoop.hdfs.protocol.CachePoolEntry; @@ -75,6 +76,7 @@ import org.apache.hadoop.hdfs.protocol.CorruptFileBlocks; import org.apache.hadoop.hdfs.protocol.DatanodeID; import org.apache.hadoop.hdfs.protocol.DatanodeInfo; import org.apache.hadoop.hdfs.protocol.DirectoryListing; +import org.apache.hadoop.hdfs.protocol.ECBlockGroupsStats; import org.apache.hadoop.hdfs.protocol.EncryptionZone; import org.apache.hadoop.hdfs.protocol.ErasureCodingPolicy; import org.apache.hadoop.hdfs.protocol.ExtendedBlock; @@ -85,6 +87,7 @@ import org.apache.hadoop.hdfs.protocol.HdfsFileStatus; import org.apache.hadoop.hdfs.protocol.LastBlockWithStatus; import org.apache.hadoop.hdfs.protocol.LocatedBlock; import org.apache.hadoop.hdfs.protocol.LocatedBlocks; +import org.apache.hadoop.hdfs.protocol.OpenFileEntry; import org.apache.hadoop.hdfs.protocol.RollingUpgradeInfo; import org.apache.hadoop.hdfs.protocol.SnapshotDiffReport; import org.apache.hadoop.hdfs.protocol.SnapshottableDirectoryStatus; @@ -1736,13 +1739,6 @@ public class RouterRpcServer extends AbstractService implements ClientProtocol { } @Override // ClientProtocol - public AddingECPolicyResponse[] addErasureCodingPolicies( - ErasureCodingPolicy[] policies) throws IOException { -checkOperation(OperationCategory.WRITE, false); -return null; - } - - @Override // ClientProtocol public void unsetErasureCodingPolicy(String src) throws IOException { checkOperation(OperationCategory.WRITE, false); } @@ -1808,6 +1804,53 @@ public class RouterRpcServer extends AbstractService implements ClientProtocol { return null; } + @Override + public AddECPolicyResponse[] addErasureCodingPolicies( + ErasureCodingPolicy[] arg0) throws IOException { +checkOperation(OperationCategory.WRITE, false); +return null; + } + + @Override + public void removeErasureCodingPolicy(String arg0) throws IOException { +checkOperation(OperationCategory.WRITE, false); + } + + @Override + public void disableErasureCodingPolicy(String arg0) throws IOException { +checkOperation(OperationCategory.WRITE, false); + } + + @Override + public void enableErasureCodingPolicy(String arg0) throws IOException { +checkOperation(OperationCategory.WRITE, false); + } + + @Override + public ECBlockGroupsStats getECBlockGroupsStats() throws IOException { +checkOperation(OperationCategory.READ, false); +return null; + } + + @Override + public HashMap getErasureCodingCodecs() throws IOException { +checkOperation(OperationCategory.READ, false); +return null; + } + + @Override + public BlocksStats getBlocksStats() throws IOException { +checkOperation(OperationCategory.READ, false); +return null; + } + + @Override + public
[08/40] hadoop git commit: YARN-6987. Log app attempt during InvalidStateTransition. Contributed by Jonathan Eagles
YARN-6987. Log app attempt during InvalidStateTransition. Contributed by Jonathan Eagles Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/3325ef65 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/3325ef65 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/3325ef65 Branch: refs/heads/HDFS-10467 Commit: 3325ef653d6f364a82dd32485d9ef6d987380ce3 Parents: 6b09c32 Author: Jason LoweAuthored: Mon Aug 14 14:40:08 2017 -0500 Committer: Jason Lowe Committed: Mon Aug 14 14:40:08 2017 -0500 -- .../hadoop/yarn/server/resourcemanager/rmapp/RMAppImpl.java | 3 ++- .../server/resourcemanager/rmapp/attempt/RMAppAttemptImpl.java| 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/3325ef65/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/rmapp/RMAppImpl.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/rmapp/RMAppImpl.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/rmapp/RMAppImpl.java index fa2f20c..03be793 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/rmapp/RMAppImpl.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/rmapp/RMAppImpl.java @@ -888,7 +888,8 @@ public class RMAppImpl implements RMApp, Recoverable { /* keep the master in sync with the state machine */ this.stateMachine.doTransition(event.getType(), event); } catch (InvalidStateTransitionException e) { -LOG.error("Can't handle this event at current state", e); +LOG.error("App: " + appID ++ " can't handle this event at current state", e); /* TODO fail the application on the failed transition */ } http://git-wip-us.apache.org/repos/asf/hadoop/blob/3325ef65/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/rmapp/attempt/RMAppAttemptImpl.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/rmapp/attempt/RMAppAttemptImpl.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/rmapp/attempt/RMAppAttemptImpl.java index 254768b..7d453bd 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/rmapp/attempt/RMAppAttemptImpl.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/rmapp/attempt/RMAppAttemptImpl.java @@ -911,7 +911,8 @@ public class RMAppAttemptImpl implements RMAppAttempt, Recoverable { /* keep the master in sync with the state machine */ this.stateMachine.doTransition(event.getType(), event); } catch (InvalidStateTransitionException e) { -LOG.error("Can't handle this event at current state", e); +LOG.error("App attempt: " + appAttemptID ++ " can't handle this event at current state", e); /* TODO fail the application on the failed transition */ } - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
[09/40] hadoop git commit: YARN-6917. Queue path is recomputed from scratch on every allocation. Contributed by Eric Payne
YARN-6917. Queue path is recomputed from scratch on every allocation. Contributed by Eric Payne Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/55587928 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/55587928 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/55587928 Branch: refs/heads/HDFS-10467 Commit: 5558792894169425bff054364a1ab4c48b347fb9 Parents: 3325ef6 Author: Jason LoweAuthored: Mon Aug 14 15:31:34 2017 -0500 Committer: Jason Lowe Committed: Mon Aug 14 15:31:34 2017 -0500 -- .../resourcemanager/scheduler/capacity/AbstractCSQueue.java | 8 .../server/resourcemanager/scheduler/capacity/LeafQueue.java | 5 - .../resourcemanager/scheduler/capacity/ParentQueue.java | 6 -- 3 files changed, 8 insertions(+), 11 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/55587928/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/AbstractCSQueue.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/AbstractCSQueue.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/AbstractCSQueue.java index 5fbdead..d7c452a 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/AbstractCSQueue.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/AbstractCSQueue.java @@ -76,6 +76,7 @@ public abstract class AbstractCSQueue implements CSQueue { private static final Log LOG = LogFactory.getLog(AbstractCSQueue.class); volatile CSQueue parent; final String queueName; + private final String queuePath; volatile int numContainers; final Resource minimumAllocation; @@ -119,6 +120,8 @@ public abstract class AbstractCSQueue implements CSQueue { this.labelManager = cs.getRMContext().getNodeLabelManager(); this.parent = parent; this.queueName = queueName; +this.queuePath = + ((parent == null) ? "" : (parent.getQueuePath() + ".")) + this.queueName; this.resourceCalculator = cs.getResourceCalculator(); this.activitiesManager = cs.getActivitiesManager(); @@ -150,6 +153,11 @@ public abstract class AbstractCSQueue implements CSQueue { queueCapacities, parent == null ? null : parent.getQueueCapacities()); } + + @Override + public String getQueuePath() { +return queuePath; + } @Override public float getCapacity() { http://git-wip-us.apache.org/repos/asf/hadoop/blob/55587928/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/LeafQueue.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/LeafQueue.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/LeafQueue.java index 2e502b7..d15431e 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/LeafQueue.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/LeafQueue.java @@ -299,11 +299,6 @@ public class LeafQueue extends AbstractCSQueue { } } - @Override - public String getQueuePath() { -return getParent().getQueuePath() + "." + getQueueName(); - } - /** * Used only by tests. */ http://git-wip-us.apache.org/repos/asf/hadoop/blob/55587928/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/ParentQueue.java -- diff --git
[04/40] hadoop git commit: YARN-6996. Change javax.cache library implementation from JSR107 to Apache Geronimo. (Ray Chiang via Subru).
YARN-6996. Change javax.cache library implementation from JSR107 to Apache Geronimo. (Ray Chiang via Subru). Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/18f3603b Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/18f3603b Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/18f3603b Branch: refs/heads/HDFS-10467 Commit: 18f3603bce37e0e07c9075811b1179afc2c227eb Parents: e2f6299 Author: Subru KrishnanAuthored: Mon Aug 14 11:10:00 2017 -0700 Committer: Subru Krishnan Committed: Mon Aug 14 11:10:00 2017 -0700 -- hadoop-project/pom.xml | 6 +++--- .../hadoop-yarn-server/hadoop-yarn-server-common/pom.xml | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/18f3603b/hadoop-project/pom.xml -- diff --git a/hadoop-project/pom.xml b/hadoop-project/pom.xml index 6311cd9..8c1d374 100755 --- a/hadoop-project/pom.xml +++ b/hadoop-project/pom.xml @@ -96,7 +96,7 @@ 2.0.0-M21 1.0.0-M33 -1.0.0 +1.0-alpha-1 3.3.1 2.4.12 6.2.1.jre7 @@ -1276,8 +1276,8 @@ 1.0.0 - javax.cache - cache-api + org.apache.geronimo.specs + geronimo-jcache_1.0_spec ${jcache.version} http://git-wip-us.apache.org/repos/asf/hadoop/blob/18f3603b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-common/pom.xml -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-common/pom.xml b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-common/pom.xml index 5f85097..441a574 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-common/pom.xml +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-common/pom.xml @@ -103,8 +103,8 @@ leveldbjni-all - javax.cache - cache-api + org.apache.geronimo.specs + geronimo-jcache_1.0_spec org.ehcache - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
[20/40] hadoop git commit: HDFS-12301. NN File Browser UI: Navigate to a path when enter is pressed
HDFS-12301. NN File Browser UI: Navigate to a path when enter is pressed Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/f34646d6 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/f34646d6 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/f34646d6 Branch: refs/heads/HDFS-10467 Commit: f34646d652310442cb5339aa269f10dfa838 Parents: d265459 Author: Ravi PrakashAuthored: Tue Aug 15 15:44:59 2017 -0700 Committer: Ravi Prakash Committed: Tue Aug 15 15:44:59 2017 -0700 -- .../hadoop-hdfs/src/main/webapps/hdfs/explorer.js | 6 ++ 1 file changed, 6 insertions(+) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/f34646d6/hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/hdfs/explorer.js -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/hdfs/explorer.js b/hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/hdfs/explorer.js index 3e276a9..dae3519 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/hdfs/explorer.js +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/hdfs/explorer.js @@ -370,6 +370,12 @@ var b = function() { browse_directory($('#directory').val()); }; $('#btn-nav-directory').click(b); +//Also navigate to the directory when a user presses enter. +$('#directory').on('keyup', function (e) { + if (e.which == 13) { +browse_directory($('#directory').val()); + } +}); var dir = window.location.hash.slice(1); if(dir == "") { window.location.hash = "/"; - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
[27/40] hadoop git commit: HDFS-11546. Federation Router RPC server. Contributed by Jason Kace and Inigo Goiri.
HDFS-11546. Federation Router RPC server. Contributed by Jason Kace and Inigo Goiri. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/56e7541e Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/56e7541e Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/56e7541e Branch: refs/heads/HDFS-10467 Commit: 56e7541e188108b4e1874384efe008fab4044d49 Parents: abe4178 Author: Inigo GoiriAuthored: Thu May 11 09:57:03 2017 -0700 Committer: Inigo Goiri Committed: Tue Aug 15 18:17:23 2017 -0700 -- .../org/apache/hadoop/hdfs/DFSConfigKeys.java | 38 + .../resolver/FederationNamespaceInfo.java | 46 +- .../federation/resolver/RemoteLocation.java | 46 +- .../federation/router/ConnectionContext.java| 104 + .../federation/router/ConnectionManager.java| 408 .../federation/router/ConnectionPool.java | 314 +++ .../federation/router/ConnectionPoolId.java | 117 ++ .../router/RemoteLocationContext.java | 38 +- .../server/federation/router/RemoteMethod.java | 164 ++ .../server/federation/router/RemoteParam.java | 71 + .../hdfs/server/federation/router/Router.java | 58 +- .../federation/router/RouterRpcClient.java | 856 .../federation/router/RouterRpcServer.java | 1867 +- .../src/main/resources/hdfs-default.xml | 95 + .../server/federation/FederationTestUtils.java | 80 +- .../hdfs/server/federation/MockResolver.java| 90 +- .../server/federation/RouterConfigBuilder.java | 20 +- .../server/federation/RouterDFSCluster.java | 535 +++-- .../server/federation/router/TestRouter.java| 31 +- .../server/federation/router/TestRouterRpc.java | 869 .../router/TestRouterRpcMultiDestination.java | 216 ++ 21 files changed, 5675 insertions(+), 388 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/56e7541e/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java index 2b6d0e8..ca24fd5 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java @@ -1102,6 +1102,44 @@ public class DFSConfigKeys extends CommonConfigurationKeys { // HDFS Router-based federation public static final String FEDERATION_ROUTER_PREFIX = "dfs.federation.router."; + public static final String DFS_ROUTER_DEFAULT_NAMESERVICE = + FEDERATION_ROUTER_PREFIX + "default.nameserviceId"; + public static final String DFS_ROUTER_HANDLER_COUNT_KEY = + FEDERATION_ROUTER_PREFIX + "handler.count"; + public static final int DFS_ROUTER_HANDLER_COUNT_DEFAULT = 10; + public static final String DFS_ROUTER_READER_QUEUE_SIZE_KEY = + FEDERATION_ROUTER_PREFIX + "reader.queue.size"; + public static final int DFS_ROUTER_READER_QUEUE_SIZE_DEFAULT = 100; + public static final String DFS_ROUTER_READER_COUNT_KEY = + FEDERATION_ROUTER_PREFIX + "reader.count"; + public static final int DFS_ROUTER_READER_COUNT_DEFAULT = 1; + public static final String DFS_ROUTER_HANDLER_QUEUE_SIZE_KEY = + FEDERATION_ROUTER_PREFIX + "handler.queue.size"; + public static final int DFS_ROUTER_HANDLER_QUEUE_SIZE_DEFAULT = 100; + public static final String DFS_ROUTER_RPC_BIND_HOST_KEY = + FEDERATION_ROUTER_PREFIX + "rpc-bind-host"; + public static final int DFS_ROUTER_RPC_PORT_DEFAULT = ; + public static final String DFS_ROUTER_RPC_ADDRESS_KEY = + FEDERATION_ROUTER_PREFIX + "rpc-address"; + public static final String DFS_ROUTER_RPC_ADDRESS_DEFAULT = + "0.0.0.0:" + DFS_ROUTER_RPC_PORT_DEFAULT; + public static final String DFS_ROUTER_RPC_ENABLE = + FEDERATION_ROUTER_PREFIX + "rpc.enable"; + public static final boolean DFS_ROUTER_RPC_ENABLE_DEFAULT = true; + + // HDFS Router NN client + public static final String DFS_ROUTER_NAMENODE_CONNECTION_POOL_SIZE = + FEDERATION_ROUTER_PREFIX + "connection.pool-size"; + public static final int DFS_ROUTER_NAMENODE_CONNECTION_POOL_SIZE_DEFAULT = + 64; + public static final String DFS_ROUTER_NAMENODE_CONNECTION_POOL_CLEAN = + FEDERATION_ROUTER_PREFIX + "connection.pool.clean.ms"; + public static final long DFS_ROUTER_NAMENODE_CONNECTION_POOL_CLEAN_DEFAULT = + TimeUnit.MINUTES.toMillis(1); + public static final String DFS_ROUTER_NAMENODE_CONNECTION_CLEAN_MS = + FEDERATION_ROUTER_PREFIX + "connection.clean.ms"; + public
[34/40] hadoop git commit: HDFS-10687. Federation Membership State Store internal API. Contributed by Jason Kace and Inigo Goiri.
http://git-wip-us.apache.org/repos/asf/hadoop/blob/ac246704/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/store/protocol/UpdateNamenodeRegistrationResponse.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/store/protocol/UpdateNamenodeRegistrationResponse.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/store/protocol/UpdateNamenodeRegistrationResponse.java new file mode 100644 index 000..1f0d556 --- /dev/null +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/store/protocol/UpdateNamenodeRegistrationResponse.java @@ -0,0 +1,51 @@ +/** + * 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.hdfs.server.federation.store.protocol; + +import java.io.IOException; + +import org.apache.hadoop.classification.InterfaceAudience.Private; +import org.apache.hadoop.classification.InterfaceStability.Unstable; +import org.apache.hadoop.hdfs.server.federation.store.driver.StateStoreSerializer; + +/** + * API response for overriding an existing namenode registration in the state + * store. + */ +public abstract class UpdateNamenodeRegistrationResponse { + + public static UpdateNamenodeRegistrationResponse newInstance() { +return StateStoreSerializer.newRecord( +UpdateNamenodeRegistrationResponse.class); + } + + public static UpdateNamenodeRegistrationResponse newInstance(boolean status) + throws IOException { +UpdateNamenodeRegistrationResponse response = newInstance(); +response.setResult(status); +return response; + } + + @Private + @Unstable + public abstract boolean getResult(); + + @Private + @Unstable + public abstract void setResult(boolean result); +} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/hadoop/blob/ac246704/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/store/protocol/impl/pb/FederationProtocolPBTranslator.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/store/protocol/impl/pb/FederationProtocolPBTranslator.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/store/protocol/impl/pb/FederationProtocolPBTranslator.java new file mode 100644 index 000..baad113 --- /dev/null +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/store/protocol/impl/pb/FederationProtocolPBTranslator.java @@ -0,0 +1,145 @@ +/** + * 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.hdfs.server.federation.store.protocol.impl.pb; + +import java.io.IOException; +import java.lang.reflect.Method; + +import org.apache.commons.codec.binary.Base64; + +import com.google.protobuf.GeneratedMessage; +import com.google.protobuf.Message; +import com.google.protobuf.Message.Builder; +import com.google.protobuf.MessageOrBuilder; + +/** + * Helper class for setting/getting data elements in an object backed by a + * protobuf implementation. + */ +public class FederationProtocolPBTranslator { + + /** Optional proto byte stream used to create this object. */ + private P proto; + /** The class of the proto handler for this
[13/40] hadoop git commit: YARN-5978. ContainerScheduler and ContainerManager changes to support ExecType update. (Kartheek Muthyala via asuresh)
YARN-5978. ContainerScheduler and ContainerManager changes to support ExecType update. (Kartheek Muthyala via asuresh) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/4d7be1d8 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/4d7be1d8 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/4d7be1d8 Branch: refs/heads/HDFS-10467 Commit: 4d7be1d8575e9254c59d41460960708e3718503a Parents: 0446511 Author: Arun SureshAuthored: Mon Aug 14 19:46:17 2017 -0700 Committer: Arun Suresh Committed: Mon Aug 14 19:46:17 2017 -0700 -- .../yarn/client/api/impl/TestAMRMClient.java| 395 +-- .../yarn/client/api/impl/TestNMClient.java | 7 +- .../containermanager/ContainerManagerImpl.java | 132 --- .../containermanager/container/Container.java | 4 +- .../container/ContainerImpl.java| 37 +- .../monitor/ContainersMonitorImpl.java | 15 - .../scheduler/ContainerScheduler.java | 73 .../scheduler/ContainerSchedulerEventType.java | 1 + .../UpdateContainerSchedulerEvent.java | 85 .../nodemanager/TestNodeManagerResync.java | 11 +- .../BaseContainerManagerTest.java | 33 +- .../containermanager/TestContainerManager.java | 267 - .../TestContainerManagerRecovery.java | 2 +- .../TestContainerSchedulerQueuing.java | 96 + .../nodemanager/webapp/MockContainer.java | 2 +- .../scheduler/SchedulerApplicationAttempt.java | 2 +- .../security/RMContainerTokenSecretManager.java | 30 +- 17 files changed, 964 insertions(+), 228 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/4d7be1d8/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/api/impl/TestAMRMClient.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/api/impl/TestAMRMClient.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/api/impl/TestAMRMClient.java index 1b2bca3..09b12f2 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/api/impl/TestAMRMClient.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/api/impl/TestAMRMClient.java @@ -19,6 +19,7 @@ package org.apache.hadoop.yarn.client.api.impl; import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; import static org.mockito.Matchers.any; @@ -36,6 +37,7 @@ import java.util.HashMap; import java.util.HashSet; import java.util.Iterator; import java.util.List; +import java.util.Map; import java.util.Set; import java.util.TreeSet; @@ -142,6 +144,10 @@ public class TestAMRMClient { // set the minimum allocation so that resource decrease can go under 1024 conf.setInt(YarnConfiguration.RM_SCHEDULER_MINIMUM_ALLOCATION_MB, 512); conf.setLong(YarnConfiguration.NM_LOG_RETAIN_SECONDS, 1); +conf.setBoolean( +YarnConfiguration.OPPORTUNISTIC_CONTAINER_ALLOCATION_ENABLED, true); +conf.setInt( +YarnConfiguration.NM_OPPORTUNISTIC_CONTAINERS_MAX_QUEUE_LENGTH, 10); yarnCluster = new MiniYARNCluster(TestAMRMClient.class.getName(), nodeCount, 1, 1); yarnCluster.init(conf); yarnCluster.start(); @@ -924,8 +930,8 @@ public class TestAMRMClient { // add exp=x to ANY client.addContainerRequest(new ContainerRequest(Resource.newInstance(1024, 1), null, null, Priority.UNDEFINED, true, "x")); -Assert.assertEquals(1, client.ask.size()); -Assert.assertEquals("x", client.ask.iterator().next() +assertEquals(1, client.ask.size()); +assertEquals("x", client.ask.iterator().next() .getNodeLabelExpression()); // add exp=x then add exp=a to ANY in same priority, only exp=a should kept @@ -933,8 +939,8 @@ public class TestAMRMClient { 1), null, null, Priority.UNDEFINED, true, "x")); client.addContainerRequest(new ContainerRequest(Resource.newInstance(1024, 1), null, null, Priority.UNDEFINED, true, "a")); -Assert.assertEquals(1, client.ask.size()); -Assert.assertEquals("a", client.ask.iterator().next() +assertEquals(1, client.ask.size()); +assertEquals("a", client.ask.iterator().next() .getNodeLabelExpression()); // add exp=x to ANY, rack and node, only resource request has ANY resource @@ -943,10 +949,10 @@ public class TestAMRMClient { client.addContainerRequest(new
[39/40] hadoop git commit: HDFS-10880. Federation Mount Table State Store internal API. Contributed by Jason Kace and Inigo Goiri.
http://git-wip-us.apache.org/repos/asf/hadoop/blob/3fc91812/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/store/protocol/impl/pb/RemoveMountTableEntryRequestPBImpl.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/store/protocol/impl/pb/RemoveMountTableEntryRequestPBImpl.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/store/protocol/impl/pb/RemoveMountTableEntryRequestPBImpl.java new file mode 100644 index 000..7f7c998 --- /dev/null +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/store/protocol/impl/pb/RemoveMountTableEntryRequestPBImpl.java @@ -0,0 +1,76 @@ +/** + * 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.hdfs.server.federation.store.protocol.impl.pb; + +import java.io.IOException; + +import org.apache.hadoop.hdfs.federation.protocol.proto.HdfsServerFederationProtos.RemoveMountTableEntryRequestProto; +import org.apache.hadoop.hdfs.federation.protocol.proto.HdfsServerFederationProtos.RemoveMountTableEntryRequestProtoOrBuilder; +import org.apache.hadoop.hdfs.server.federation.store.protocol.RemoveMountTableEntryRequest; +import org.apache.hadoop.hdfs.server.federation.store.records.impl.pb.PBRecord; + +import com.google.protobuf.Message; + +/** + * Protobuf implementation of the state store API object + * RemoveMountTableEntryRequest. + */ +public class RemoveMountTableEntryRequestPBImpl +extends RemoveMountTableEntryRequest implements PBRecord { + + private FederationProtocolPBTranslatortranslator = + new FederationProtocolPBTranslator ( + RemoveMountTableEntryRequestProto.class); + + public RemoveMountTableEntryRequestPBImpl() { + } + + public RemoveMountTableEntryRequestPBImpl( + RemoveMountTableEntryRequestProto proto) { +this.setProto(proto); + } + + @Override + public RemoveMountTableEntryRequestProto getProto() { +return this.translator.build(); + } + + @Override + public void setProto(Message proto) { +this.translator.setProto(proto); + } + + @Override + public void readInstance(String base64String) throws IOException { +this.translator.readInstance(base64String); + } + + @Override + public String getSrcPath() { +return this.translator.getProtoOrBuilder().getSrcPath(); + } + + @Override + public void setSrcPath(String path) { +this.translator.getBuilder().setSrcPath(path); + } +} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/hadoop/blob/3fc91812/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/store/protocol/impl/pb/RemoveMountTableEntryResponsePBImpl.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/store/protocol/impl/pb/RemoveMountTableEntryResponsePBImpl.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/store/protocol/impl/pb/RemoveMountTableEntryResponsePBImpl.java new file mode 100644 index 000..0c943ac --- /dev/null +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/federation/store/protocol/impl/pb/RemoveMountTableEntryResponsePBImpl.java @@ -0,0 +1,76 @@ +/** + * 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 + * + *
[40/40] hadoop git commit: HDFS-10880. Federation Mount Table State Store internal API. Contributed by Jason Kace and Inigo Goiri.
HDFS-10880. Federation Mount Table State Store internal API. Contributed by Jason Kace and Inigo Goiri. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/3fc91812 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/3fc91812 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/3fc91812 Branch: refs/heads/HDFS-10467 Commit: 3fc91812342b7232eca1a83ec3e70d6db78640ed Parents: a590fb6 Author: Inigo GoiriAuthored: Fri Aug 4 18:00:12 2017 -0700 Committer: Inigo Goiri Committed: Tue Aug 15 18:17:24 2017 -0700 -- .../org/apache/hadoop/hdfs/DFSConfigKeys.java | 7 +- .../federation/resolver/MountTableManager.java | 80 +++ .../federation/resolver/MountTableResolver.java | 544 +++ .../federation/resolver/PathLocation.java | 124 - .../resolver/order/DestinationOrder.java| 29 + .../federation/resolver/order/package-info.java | 29 + .../federation/router/FederationUtil.java | 56 +- .../hdfs/server/federation/router/Router.java | 3 +- .../federation/store/MountTableStore.java | 49 ++ .../federation/store/StateStoreService.java | 2 + .../store/impl/MountTableStoreImpl.java | 116 .../protocol/AddMountTableEntryRequest.java | 47 ++ .../protocol/AddMountTableEntryResponse.java| 42 ++ .../protocol/GetMountTableEntriesRequest.java | 49 ++ .../protocol/GetMountTableEntriesResponse.java | 53 ++ .../protocol/RemoveMountTableEntryRequest.java | 49 ++ .../protocol/RemoveMountTableEntryResponse.java | 42 ++ .../protocol/UpdateMountTableEntryRequest.java | 51 ++ .../protocol/UpdateMountTableEntryResponse.java | 43 ++ .../pb/AddMountTableEntryRequestPBImpl.java | 84 +++ .../pb/AddMountTableEntryResponsePBImpl.java| 76 +++ .../pb/GetMountTableEntriesRequestPBImpl.java | 76 +++ .../pb/GetMountTableEntriesResponsePBImpl.java | 104 .../pb/RemoveMountTableEntryRequestPBImpl.java | 76 +++ .../pb/RemoveMountTableEntryResponsePBImpl.java | 76 +++ .../pb/UpdateMountTableEntryRequestPBImpl.java | 96 .../pb/UpdateMountTableEntryResponsePBImpl.java | 76 +++ .../federation/store/records/MountTable.java| 301 ++ .../store/records/impl/pb/MountTablePBImpl.java | 213 .../src/main/proto/FederationProtocol.proto | 61 ++- .../hdfs/server/federation/MockResolver.java| 9 +- .../resolver/TestMountTableResolver.java| 396 ++ .../store/FederationStateStoreTestUtils.java| 16 + .../store/TestStateStoreMountTable.java | 250 + .../store/driver/TestStateStoreDriverBase.java | 12 + .../store/records/TestMountTable.java | 176 ++ 36 files changed, 3437 insertions(+), 76 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/3fc91812/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java index acd4790..f156fdb 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java @@ -27,6 +27,8 @@ import org.apache.hadoop.hdfs.protocol.HdfsConstants; import org.apache.hadoop.hdfs.server.blockmanagement.BlockPlacementPolicyDefault; import org.apache.hadoop.hdfs.server.blockmanagement.BlockPlacementPolicyRackFaultTolerant; import org.apache.hadoop.hdfs.server.datanode.fsdataset.impl.RamDiskReplicaLruTracker; +import org.apache.hadoop.hdfs.server.federation.resolver.FileSubclusterResolver; +import org.apache.hadoop.hdfs.server.federation.resolver.MountTableResolver; import org.apache.hadoop.hdfs.server.federation.resolver.ActiveNamenodeResolver; import org.apache.hadoop.hdfs.server.federation.resolver.MembershipNamenodeResolver; import org.apache.hadoop.hdfs.server.federation.store.driver.StateStoreDriver; @@ -1160,8 +1162,9 @@ public class DFSConfigKeys extends CommonConfigurationKeys { // HDFS Router State Store connection public static final String FEDERATION_FILE_RESOLVER_CLIENT_CLASS = FEDERATION_ROUTER_PREFIX + "file.resolver.client.class"; - public static final String FEDERATION_FILE_RESOLVER_CLIENT_CLASS_DEFAULT = - "org.apache.hadoop.hdfs.server.federation.MockResolver"; + public static final Class + FEDERATION_FILE_RESOLVER_CLIENT_CLASS_DEFAULT = + MountTableResolver.class; public static final String FEDERATION_NAMENODE_RESOLVER_CLIENT_CLASS =
[37/40] hadoop git commit: HDFS-10646. Federation admin tool. Contributed by Inigo Goiri.
http://git-wip-us.apache.org/repos/asf/hadoop/blob/3966f9b9/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/federation/router/TestRouterAdmin.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/federation/router/TestRouterAdmin.java b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/federation/router/TestRouterAdmin.java new file mode 100644 index 000..170247f --- /dev/null +++ b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/federation/router/TestRouterAdmin.java @@ -0,0 +1,261 @@ +/** + * 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.hdfs.server.federation.router; + +import static org.apache.hadoop.hdfs.server.federation.store.FederationStateStoreTestUtils.synchronizeRecords; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertTrue; + +import java.io.IOException; +import java.util.Collections; +import java.util.List; + +import org.apache.hadoop.conf.Configuration; +import org.apache.hadoop.hdfs.server.federation.RouterConfigBuilder; +import org.apache.hadoop.hdfs.server.federation.RouterDFSCluster.RouterContext; +import org.apache.hadoop.hdfs.server.federation.StateStoreDFSCluster; +import org.apache.hadoop.hdfs.server.federation.resolver.MountTableManager; +import org.apache.hadoop.hdfs.server.federation.resolver.RemoteLocation; +import org.apache.hadoop.hdfs.server.federation.store.StateStoreService; +import org.apache.hadoop.hdfs.server.federation.store.impl.MountTableStoreImpl; +import org.apache.hadoop.hdfs.server.federation.store.protocol.AddMountTableEntryRequest; +import org.apache.hadoop.hdfs.server.federation.store.protocol.AddMountTableEntryResponse; +import org.apache.hadoop.hdfs.server.federation.store.protocol.GetMountTableEntriesRequest; +import org.apache.hadoop.hdfs.server.federation.store.protocol.GetMountTableEntriesResponse; +import org.apache.hadoop.hdfs.server.federation.store.protocol.RemoveMountTableEntryRequest; +import org.apache.hadoop.hdfs.server.federation.store.protocol.UpdateMountTableEntryRequest; +import org.apache.hadoop.hdfs.server.federation.store.records.MountTable; +import org.apache.hadoop.util.Time; +import org.junit.AfterClass; +import org.junit.Before; +import org.junit.BeforeClass; +import org.junit.Test; + +/** + * The administrator interface of the {@link Router} implemented by + * {@link RouterAdminServer}. + */ +public class TestRouterAdmin { + + private static StateStoreDFSCluster cluster; + private static RouterContext routerContext; + public static final String RPC_BEAN = + "Hadoop:service=Router,name=FederationRPC"; + private static List mockMountTable; + private static StateStoreService stateStore; + + @BeforeClass + public static void globalSetUp() throws Exception { +cluster = new StateStoreDFSCluster(false, 1); +// Build and start a router with State Store + admin + RPC +Configuration conf = new RouterConfigBuilder() +.stateStore() +.admin() +.rpc() +.build(); +cluster.addRouterOverrides(conf); +cluster.startRouters(); +routerContext = cluster.getRandomRouter(); +mockMountTable = cluster.generateMockMountTable(); +Router router = routerContext.getRouter(); +stateStore = router.getStateStore(); + } + + @AfterClass + public static void tearDown() { +cluster.stopRouter(routerContext); + } + + @Before + public void testSetup() throws Exception { +assertTrue( +synchronizeRecords(stateStore, mockMountTable, MountTable.class)); + } + + @Test + public void testAddMountTable() throws IOException { +MountTable newEntry = MountTable.newInstance( +"/testpath", Collections.singletonMap("ns0", "/testdir"), +Time.now(), Time.now()); + +RouterClient client = routerContext.getAdminClient(); +MountTableManager mountTable = client.getMountTableManager(); + +// Existing mount table size +List records =
[15/40] hadoop git commit: HDFS-11696. Fix warnings from Spotbugs in hadoop-hdfs. Contributed by Yiqun Lin.
HDFS-11696. Fix warnings from Spotbugs in hadoop-hdfs. 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/2e43c28e Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/2e43c28e Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/2e43c28e Branch: refs/heads/HDFS-10467 Commit: 2e43c28e01fe006210e71aab179527669f6412ed Parents: 645a8f2 Author: Yiqun LinAuthored: Tue Aug 15 16:48:49 2017 +0800 Committer: Yiqun Lin Committed: Tue Aug 15 16:48:49 2017 +0800 -- .../java/org/apache/hadoop/hdfs/DFSClient.java | 7 +++-- .../hdfs/server/protocol/SlowDiskReports.java | 5 ++-- .../dev-support/findbugsExcludeFile.xml | 26 +++ .../hdfs/qjournal/server/JournalNode.java | 16 +++- .../hdfs/server/datanode/DataStorage.java | 12 ++--- .../namenode/NNStorageRetentionManager.java | 27 +++- .../org/apache/hadoop/hdfs/tools/DFSAdmin.java | 6 ++--- .../offlineImageViewer/ImageLoaderCurrent.java | 10 +--- .../namenode/TestNameNodeOptionParsing.java | 27 +++- 9 files changed, 103 insertions(+), 33 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/2e43c28e/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/DFSClient.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/DFSClient.java b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/DFSClient.java index 677ea35..88b273a 100644 --- a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/DFSClient.java +++ b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/DFSClient.java @@ -2901,9 +2901,12 @@ public class DFSClient implements java.io.Closeable, RemotePeerFactory, } synchronized (DFSClient.class) { if (STRIPED_READ_THREAD_POOL == null) { -STRIPED_READ_THREAD_POOL = DFSUtilClient.getThreadPoolExecutor(1, +// Only after thread pool is fully constructed then save it to +// volatile field. +ThreadPoolExecutor threadPool = DFSUtilClient.getThreadPoolExecutor(1, numThreads, 60, "StripedRead-", true); -STRIPED_READ_THREAD_POOL.allowCoreThreadTimeOut(true); +threadPool.allowCoreThreadTimeOut(true); +STRIPED_READ_THREAD_POOL = threadPool; } } } http://git-wip-us.apache.org/repos/asf/hadoop/blob/2e43c28e/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/server/protocol/SlowDiskReports.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/server/protocol/SlowDiskReports.java b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/server/protocol/SlowDiskReports.java index 8095c2a..496389a 100644 --- a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/server/protocol/SlowDiskReports.java +++ b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/server/protocol/SlowDiskReports.java @@ -101,8 +101,9 @@ public final class SlowDiskReports { } boolean areEqual; -for (String disk : this.slowDisks.keySet()) { - if (!this.slowDisks.get(disk).equals(that.slowDisks.get(disk))) { +for (Map.Entry > entry : this.slowDisks +.entrySet()) { + if (!entry.getValue().equals(that.slowDisks.get(entry.getKey( { return false; } } http://git-wip-us.apache.org/repos/asf/hadoop/blob/2e43c28e/hadoop-hdfs-project/hadoop-hdfs/dev-support/findbugsExcludeFile.xml -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/dev-support/findbugsExcludeFile.xml b/hadoop-hdfs-project/hadoop-hdfs/dev-support/findbugsExcludeFile.xml index 2a7824a..9582fcb 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/dev-support/findbugsExcludeFile.xml +++ b/hadoop-hdfs-project/hadoop-hdfs/dev-support/findbugsExcludeFile.xml @@ -264,4 +264,30 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + http://git-wip-us.apache.org/repos/asf/hadoop/blob/2e43c28e/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/qjournal/server/JournalNode.java -- diff --git
[35/40] hadoop git commit: HDFS-10687. Federation Membership State Store internal API. Contributed by Jason Kace and Inigo Goiri.
HDFS-10687. Federation Membership State Store internal API. Contributed by Jason Kace and Inigo Goiri. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/ac246704 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/ac246704 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/ac246704 Branch: refs/heads/HDFS-10467 Commit: ac2467043dae289491bf32c685abf3438015b1ec Parents: 907948a Author: Inigo GoiriAuthored: Mon Jul 31 10:55:21 2017 -0700 Committer: Inigo Goiri Committed: Tue Aug 15 18:17:23 2017 -0700 -- .../dev-support/findbugsExcludeFile.xml | 3 + hadoop-hdfs-project/hadoop-hdfs/pom.xml | 1 + .../org/apache/hadoop/hdfs/DFSConfigKeys.java | 17 +- .../resolver/MembershipNamenodeResolver.java| 290 .../federation/router/FederationUtil.java | 42 +- .../federation/store/CachedRecordStore.java | 237 ++ .../federation/store/MembershipStore.java | 126 + .../federation/store/StateStoreCache.java | 36 ++ .../store/StateStoreCacheUpdateService.java | 67 +++ .../federation/store/StateStoreService.java | 202 +++- .../store/impl/MembershipStoreImpl.java | 311 + .../federation/store/impl/package-info.java | 31 ++ .../GetNamenodeRegistrationsRequest.java| 52 +++ .../GetNamenodeRegistrationsResponse.java | 55 +++ .../store/protocol/GetNamespaceInfoRequest.java | 30 ++ .../protocol/GetNamespaceInfoResponse.java | 52 +++ .../protocol/NamenodeHeartbeatRequest.java | 52 +++ .../protocol/NamenodeHeartbeatResponse.java | 49 ++ .../UpdateNamenodeRegistrationRequest.java | 72 +++ .../UpdateNamenodeRegistrationResponse.java | 51 ++ .../impl/pb/FederationProtocolPBTranslator.java | 145 ++ .../GetNamenodeRegistrationsRequestPBImpl.java | 87 .../GetNamenodeRegistrationsResponsePBImpl.java | 99 .../impl/pb/GetNamespaceInfoRequestPBImpl.java | 60 +++ .../impl/pb/GetNamespaceInfoResponsePBImpl.java | 95 .../impl/pb/NamenodeHeartbeatRequestPBImpl.java | 93 .../pb/NamenodeHeartbeatResponsePBImpl.java | 71 +++ ...UpdateNamenodeRegistrationRequestPBImpl.java | 95 ...pdateNamenodeRegistrationResponsePBImpl.java | 73 +++ .../store/protocol/impl/pb/package-info.java| 29 ++ .../store/records/MembershipState.java | 329 + .../store/records/MembershipStats.java | 126 + .../records/impl/pb/MembershipStatePBImpl.java | 334 + .../records/impl/pb/MembershipStatsPBImpl.java | 191 .../src/main/proto/FederationProtocol.proto | 107 + .../src/main/resources/hdfs-default.xml | 18 +- .../resolver/TestNamenodeResolver.java | 284 .../store/FederationStateStoreTestUtils.java| 23 +- .../federation/store/TestStateStoreBase.java| 81 .../store/TestStateStoreMembershipState.java| 463 +++ .../store/driver/TestStateStoreDriverBase.java | 69 ++- .../store/records/TestMembershipState.java | 129 ++ 42 files changed, 4745 insertions(+), 32 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/ac246704/hadoop-hdfs-project/hadoop-hdfs/dev-support/findbugsExcludeFile.xml -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/dev-support/findbugsExcludeFile.xml b/hadoop-hdfs-project/hadoop-hdfs/dev-support/findbugsExcludeFile.xml index 9582fcb..4b958b5 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/dev-support/findbugsExcludeFile.xml +++ b/hadoop-hdfs-project/hadoop-hdfs/dev-support/findbugsExcludeFile.xml @@ -15,6 +15,9 @@ + + + http://git-wip-us.apache.org/repos/asf/hadoop/blob/ac246704/hadoop-hdfs-project/hadoop-hdfs/pom.xml -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/pom.xml b/hadoop-hdfs-project/hadoop-hdfs/pom.xml index fa1044d..81e5fdf 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/pom.xml +++ b/hadoop-hdfs-project/hadoop-hdfs/pom.xml @@ -331,6 +331,7 @@ http://maven.apache.org/xsd/maven-4.0.0.xsd;> QJournalProtocol.proto editlog.proto fsimage.proto + FederationProtocol.proto http://git-wip-us.apache.org/repos/asf/hadoop/blob/ac246704/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java
[17/40] hadoop git commit: HDFS-12066. When Namenode is in safemode, may not allowed to remove an user's erasure coding policy. Contributed by lufei.
HDFS-12066. When Namenode is in safemode,may not allowed to remove an user's erasure coding policy. Contributed by lufei. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/e3ae3e26 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/e3ae3e26 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/e3ae3e26 Branch: refs/heads/HDFS-10467 Commit: e3ae3e26446c2e98b7aebc4ea66256cfdb4a397f Parents: 1040bae Author: Wei-Chiu ChuangAuthored: Tue Aug 15 07:41:10 2017 -0700 Committer: Wei-Chiu Chuang Committed: Tue Aug 15 07:41:43 2017 -0700 -- .../apache/hadoop/hdfs/server/namenode/FSNamesystem.java| 3 +++ .../src/test/java/org/apache/hadoop/hdfs/TestSafeMode.java | 9 + 2 files changed, 12 insertions(+) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/e3ae3e26/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java index caf73f7..1cfaa54 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java @@ -7113,6 +7113,9 @@ public class FSNamesystem implements Namesystem, FSNamesystemMBean, boolean success = false; writeLock(); try { + checkOperation(OperationCategory.WRITE); + checkNameNodeSafeMode("Cannot remove erasure coding policy " + + ecPolicyName); FSDirErasureCodingOp.removeErasureCodePolicy(this, ecPolicyName); success = true; } finally { http://git-wip-us.apache.org/repos/asf/hadoop/blob/e3ae3e26/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestSafeMode.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestSafeMode.java b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestSafeMode.java index bc95ec7..f25d28f 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestSafeMode.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestSafeMode.java @@ -482,6 +482,15 @@ public class TestSafeMode { // expected } +try { + dfs.removeErasureCodingPolicy("testECName"); + fail("RemoveErasureCodingPolicy should have failed."); +} catch (IOException ioe) { + GenericTestUtils.assertExceptionContains( + "Cannot remove erasure coding policy", ioe); + // expected +} + assertFalse("Could not leave SM", dfs.setSafeMode(SafeModeAction.SAFEMODE_LEAVE)); } - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
[16/40] hadoop git commit: HDFS-12054. FSNamesystem#addErasureCodingPolicies should call checkNameNodeSafeMode() to ensure Namenode is not in safemode. Contributed by lufei.
HDFS-12054. FSNamesystem#addErasureCodingPolicies should call checkNameNodeSafeMode() to ensure Namenode is not in safemode. Contributed by lufei. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/1040bae6 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/1040bae6 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/1040bae6 Branch: refs/heads/HDFS-10467 Commit: 1040bae6fcbae7079d8126368cdeac60831a4d0c Parents: 2e43c28 Author: Wei-Chiu ChuangAuthored: Tue Aug 15 07:38:43 2017 -0700 Committer: Wei-Chiu Chuang Committed: Tue Aug 15 07:38:43 2017 -0700 -- .../hadoop/hdfs/server/namenode/FSNamesystem.java | 2 ++ .../java/org/apache/hadoop/hdfs/TestSafeMode.java | 16 2 files changed, 18 insertions(+) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/1040bae6/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java index b1639b2..caf73f7 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java @@ -7081,6 +7081,8 @@ public class FSNamesystem implements Namesystem, FSNamesystemMBean, checkOperation(OperationCategory.WRITE); for (ErasureCodingPolicy policy : policies) { try { + checkOperation(OperationCategory.WRITE); + checkNameNodeSafeMode("Cannot add erasure coding policy"); ErasureCodingPolicy newPolicy = FSDirErasureCodingOp.addErasureCodePolicy(this, policy); addECPolicyName = newPolicy.getName(); http://git-wip-us.apache.org/repos/asf/hadoop/blob/1040bae6/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestSafeMode.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestSafeMode.java b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestSafeMode.java index f03b440..bc95ec7 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestSafeMode.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestSafeMode.java @@ -40,6 +40,7 @@ import org.apache.hadoop.fs.permission.AclEntry; import org.apache.hadoop.fs.permission.FsAction; import org.apache.hadoop.fs.permission.FsPermission; import org.apache.hadoop.hdfs.MiniDFSCluster.DataNodeProperties; +import org.apache.hadoop.hdfs.protocol.ErasureCodingPolicy; import org.apache.hadoop.hdfs.protocol.HdfsConstants.SafeModeAction; import org.apache.hadoop.hdfs.server.blockmanagement.BlockManagerTestUtil; import org.apache.hadoop.hdfs.server.common.HdfsServerConstants.StartupOption; @@ -48,6 +49,7 @@ import org.apache.hadoop.hdfs.server.namenode.NameNode; import org.apache.hadoop.hdfs.server.namenode.NameNodeAdapter; import org.apache.hadoop.hdfs.server.namenode.SafeModeException; import org.apache.hadoop.io.IOUtils; +import org.apache.hadoop.io.erasurecode.ECSchema; import org.apache.hadoop.ipc.RemoteException; import org.apache.hadoop.security.AccessControlException; import org.apache.hadoop.security.UserGroupInformation; @@ -466,6 +468,20 @@ public class TestSafeMode { // expected } +ECSchema toAddSchema = new ECSchema("testcodec", 3, 2); +ErasureCodingPolicy newPolicy = +new ErasureCodingPolicy(toAddSchema, 128 * 1024); +ErasureCodingPolicy[] policyArray = +new ErasureCodingPolicy[]{newPolicy}; +try { + dfs.addErasureCodingPolicies(policyArray); + fail("AddErasureCodingPolicies should have failed."); +} catch (IOException ioe) { + GenericTestUtils.assertExceptionContains( + "Cannot add erasure coding policy", ioe); + // expected +} + assertFalse("Could not leave SM", dfs.setSafeMode(SafeModeAction.SAFEMODE_LEAVE)); } - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
[10/40] hadoop git commit: HADOOP-14732. ProtobufRpcEngine should use Time.monotonicNow to measure durations. Contributed by Hanisha Koneru.
HADOOP-14732. ProtobufRpcEngine should use Time.monotonicNow to measure durations. Contributed by Hanisha Koneru. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/8bef4eca Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/8bef4eca Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/8bef4eca Branch: refs/heads/HDFS-10467 Commit: 8bef4eca28a3466707cc4ea0de0330449319a5eb Parents: 5558792 Author: Arpit AgarwalAuthored: Mon Aug 14 15:53:35 2017 -0700 Committer: Arpit Agarwal Committed: Mon Aug 14 15:53:35 2017 -0700 -- .../java/org/apache/hadoop/ipc/ProtobufRpcEngine.java | 14 +++--- 1 file changed, 7 insertions(+), 7 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/8bef4eca/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/ProtobufRpcEngine.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/ProtobufRpcEngine.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/ProtobufRpcEngine.java index 639bbad..2c0cfe5 100644 --- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/ProtobufRpcEngine.java +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/ProtobufRpcEngine.java @@ -190,7 +190,7 @@ public class ProtobufRpcEngine implements RpcEngine { throws ServiceException { long startTime = 0; if (LOG.isDebugEnabled()) { -startTime = Time.now(); +startTime = Time.monotonicNow(); } if (args.length != 2) { // RpcController + Message @@ -245,7 +245,7 @@ public class ProtobufRpcEngine implements RpcEngine { } if (LOG.isDebugEnabled()) { -long callTime = Time.now() - startTime; +long callTime = Time.monotonicNow() - startTime; LOG.debug("Call: " + method.getName() + " took " + callTime + "ms"); } @@ -373,19 +373,19 @@ public class ProtobufRpcEngine implements RpcEngine { this.server = currentCallInfo.get().server; this.call = Server.getCurCall().get(); this.methodName = currentCallInfo.get().methodName; -this.setupTime = Time.now(); +this.setupTime = Time.monotonicNow(); } @Override public void setResponse(Message message) { -long processingTime = Time.now() - setupTime; +long processingTime = Time.monotonicNow() - setupTime; call.setDeferredResponse(RpcWritable.wrap(message)); server.updateDeferredMetrics(methodName, processingTime); } @Override public void error(Throwable t) { -long processingTime = Time.now() - setupTime; +long processingTime = Time.monotonicNow() - setupTime; String detailedMetricsName = t.getClass().getSimpleName(); server.updateDeferredMetrics(detailedMetricsName, processingTime); call.setDeferredError(t); @@ -513,7 +513,7 @@ public class ProtobufRpcEngine implements RpcEngine { Message param = request.getValue(prototype); Message result; -long startTime = Time.now(); +long startTime = Time.monotonicNow(); int qTime = (int) (startTime - receiveTime); Exception exception = null; boolean isDeferred = false; @@ -537,7 +537,7 @@ public class ProtobufRpcEngine implements RpcEngine { throw e; } finally { currentCallInfo.set(null); - int processingTime = (int) (Time.now() - startTime); + int processingTime = (int) (Time.monotonicNow() - startTime); if (LOG.isDebugEnabled()) { String msg = "Served: " + methodName + (isDeferred ? ", deferred" : "") + - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
[01/40] hadoop git commit: YARN-6741. Deleting all children of a Parent Queue on refresh throws exception. Contributed by Naganarasimha G R. [Forced Update!]
Repository: hadoop Updated Branches: refs/heads/HDFS-10467 18c0801e6 -> 3966f9b9f (forced update) YARN-6741. Deleting all children of a Parent Queue on refresh throws exception. Contributed by Naganarasimha G R. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/d8f74c39 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/d8f74c39 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/d8f74c39 Branch: refs/heads/HDFS-10467 Commit: d8f74c3964fa429a4a53c3651d175792cf00ac81 Parents: 7769e96 Author: bibinchundattAuthored: Mon Aug 14 09:39:00 2017 +0530 Committer: bibinchundatt Committed: Mon Aug 14 09:39:00 2017 +0530 -- .../capacity/CapacitySchedulerQueueManager.java | 4 + .../scheduler/capacity/ParentQueue.java | 39 +++ .../capacity/TestCapacityScheduler.java | 114 ++- 3 files changed, 137 insertions(+), 20 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/d8f74c39/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacitySchedulerQueueManager.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacitySchedulerQueueManager.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacitySchedulerQueueManager.java index e33fbb3..1ceb6fb 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacitySchedulerQueueManager.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacitySchedulerQueueManager.java @@ -327,6 +327,10 @@ public class CapacitySchedulerQueueManager implements SchedulerQueueManager< + "it is not yet in stopped state. Current State : " + oldQueue.getState()); } +} else if (oldQueue instanceof ParentQueue +&& newQueue instanceof LeafQueue) { + LOG.info("Converting the parent queue: " + oldQueue.getQueuePath() + + " to leaf queue."); } } } http://git-wip-us.apache.org/repos/asf/hadoop/blob/d8f74c39/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/ParentQueue.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/ParentQueue.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/ParentQueue.java index f6ada4f..e0baa07 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/ParentQueue.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/ParentQueue.java @@ -18,6 +18,14 @@ package org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity; +import java.io.IOException; +import java.util.ArrayList; +import java.util.Collection; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; + import org.apache.commons.lang.StringUtils; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -34,7 +42,6 @@ import org.apache.hadoop.yarn.api.records.QueueInfo; import org.apache.hadoop.yarn.api.records.QueueState; import org.apache.hadoop.yarn.api.records.QueueUserACLInfo; import org.apache.hadoop.yarn.api.records.Resource; -import org.apache.hadoop.yarn.exceptions.InvalidResourceRequestException; import org.apache.hadoop.yarn.factories.RecordFactory; import org.apache.hadoop.yarn.factory.providers.RecordFactoryProvider; import org.apache.hadoop.yarn.security.AccessType; @@ -45,7 +52,6 @@ import org.apache.hadoop.yarn.server.resourcemanager.rmcontainer.RMContainerStat import
[06/40] hadoop git commit: YARN-6905 Multiple HBaseTimelineStorage test failures due to missing FastNumberFormat (Contributed by Haibo Chen)
YARN-6905 Multiple HBaseTimelineStorage test failures due to missing FastNumberFormat (Contributed by Haibo Chen) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/608a06cc Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/608a06cc Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/608a06cc Branch: refs/heads/HDFS-10467 Commit: 608a06cca5d68b3155bd70a94bf29ae0942b9ca0 Parents: d72124a Author: Vrushali CAuthored: Mon Aug 14 11:40:27 2017 -0700 Committer: Vrushali C Committed: Mon Aug 14 11:41:11 2017 -0700 -- .../storage/TestHBaseTimelineStorageApps.java | 4 +- .../TestHBaseTimelineStorageEntities.java | 14 --- .../storage/common/AppIdKeyConverter.java | 3 +- .../common/HBaseTimelineStorageUtils.java | 33 + .../TestCustomApplicationIdConversion.java | 39 5 files changed, 86 insertions(+), 7 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/608a06cc/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-timelineservice-hbase-tests/src/test/java/org/apache/hadoop/yarn/server/timelineservice/storage/TestHBaseTimelineStorageApps.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-timelineservice-hbase-tests/src/test/java/org/apache/hadoop/yarn/server/timelineservice/storage/TestHBaseTimelineStorageApps.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-timelineservice-hbase-tests/src/test/java/org/apache/hadoop/yarn/server/timelineservice/storage/TestHBaseTimelineStorageApps.java index b3e5197..3948d23 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-timelineservice-hbase-tests/src/test/java/org/apache/hadoop/yarn/server/timelineservice/storage/TestHBaseTimelineStorageApps.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-timelineservice-hbase-tests/src/test/java/org/apache/hadoop/yarn/server/timelineservice/storage/TestHBaseTimelineStorageApps.java @@ -69,6 +69,7 @@ import org.apache.hadoop.yarn.server.timelineservice.storage.application.Applica import org.apache.hadoop.yarn.server.timelineservice.storage.application.ApplicationTable; import org.apache.hadoop.yarn.server.timelineservice.storage.common.EventColumnName; import org.apache.hadoop.yarn.server.timelineservice.storage.common.EventColumnNameConverter; +import org.apache.hadoop.yarn.server.timelineservice.storage.common.HBaseTimelineStorageUtils; import org.apache.hadoop.yarn.server.timelineservice.storage.common.KeyConverter; import org.apache.hadoop.yarn.server.timelineservice.storage.common.Separator; import org.apache.hadoop.yarn.server.timelineservice.storage.common.StringKeyConverter; @@ -493,7 +494,8 @@ public class TestHBaseTimelineStorageApps { event.addInfo(expKey, expVal); final TimelineEntity entity = new ApplicationEntity(); -entity.setId(ApplicationId.newInstance(0, 1).toString()); +entity.setId(HBaseTimelineStorageUtils.convertApplicationIdToString( +ApplicationId.newInstance(0, 1))); entity.addEvent(event); TimelineEntities entities = new TimelineEntities(); http://git-wip-us.apache.org/repos/asf/hadoop/blob/608a06cc/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-timelineservice-hbase-tests/src/test/java/org/apache/hadoop/yarn/server/timelineservice/storage/TestHBaseTimelineStorageEntities.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-timelineservice-hbase-tests/src/test/java/org/apache/hadoop/yarn/server/timelineservice/storage/TestHBaseTimelineStorageEntities.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-timelineservice-hbase-tests/src/test/java/org/apache/hadoop/yarn/server/timelineservice/storage/TestHBaseTimelineStorageEntities.java index 4b4c3e1..e18d0d0 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-timelineservice-hbase-tests/src/test/java/org/apache/hadoop/yarn/server/timelineservice/storage/TestHBaseTimelineStorageEntities.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-timelineservice-hbase-tests/src/test/java/org/apache/hadoop/yarn/server/timelineservice/storage/TestHBaseTimelineStorageEntities.java @@ -62,6 +62,7 @@ import org.apache.hadoop.yarn.server.timelineservice.reader.filter.TimelinePrefi import org.apache.hadoop.yarn.server.timelineservice.storage.TimelineReader.Field; import
[22/40] hadoop git commit: HDFS-10630. Federation State Store FS Implementation. Contributed by Jason Kace and Inigo Goiri.
http://git-wip-us.apache.org/repos/asf/hadoop/blob/abe4178a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/federation/store/driver/TestStateStoreDriverBase.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/federation/store/driver/TestStateStoreDriverBase.java b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/federation/store/driver/TestStateStoreDriverBase.java new file mode 100644 index 000..7f0b36a --- /dev/null +++ b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/federation/store/driver/TestStateStoreDriverBase.java @@ -0,0 +1,483 @@ +/** + * 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.hdfs.server.federation.store.driver; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertNull; +import static org.junit.Assert.assertTrue; + +import java.io.IOException; +import java.lang.reflect.Method; +import java.util.ArrayList; +import java.util.Collection; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Map.Entry; + +import org.apache.hadoop.conf.Configuration; +import org.apache.hadoop.hdfs.server.federation.store.FederationStateStoreTestUtils; +import org.apache.hadoop.hdfs.server.federation.store.StateStoreService; +import org.apache.hadoop.hdfs.server.federation.store.records.BaseRecord; +import org.apache.hadoop.hdfs.server.federation.store.records.Query; +import org.apache.hadoop.hdfs.server.federation.store.records.QueryResult; +import org.junit.AfterClass; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** + * Base tests for the driver. The particular implementations will use this to + * test their functionality. + */ +public class TestStateStoreDriverBase { + + private static final Logger LOG = + LoggerFactory.getLogger(TestStateStoreDriverBase.class); + + private static StateStoreService stateStore; + private static Configuration conf; + + + /** + * Get the State Store driver. + * @return State Store driver. + */ + protected StateStoreDriver getStateStoreDriver() { +return stateStore.getDriver(); + } + + @AfterClass + public static void tearDownCluster() { +if (stateStore != null) { + stateStore.stop(); +} + } + + /** + * Get a new State Store using this configuration. + * + * @param config Configuration for the State Store. + * @throws Exception If we cannot get the State Store. + */ + public static void getStateStore(Configuration config) throws Exception { +conf = config; +stateStore = FederationStateStoreTestUtils.getStateStore(conf); + } + + private T generateFakeRecord(Class recordClass) + throws IllegalArgumentException, IllegalAccessException, IOException { + +// TODO add record +return null; + } + + /** + * Validate if a record is the same. + * + * @param original + * @param committed + * @param assertEquals Assert if the records are equal or just return. + * @return + * @throws IllegalArgumentException + * @throws IllegalAccessException + */ + private boolean validateRecord( + BaseRecord original, BaseRecord committed, boolean assertEquals) + throws IllegalArgumentException, IllegalAccessException { + +boolean ret = true; + +Mapfields = getFields(original); +for (String key : fields.keySet()) { + if (key.equals("dateModified") || + key.equals("dateCreated") || + key.equals("proto")) { +// Fields are updated/set on commit and fetch and may not match +// the fields that are initialized in a non-committed object. +continue; + } + Object data1 = getField(original, key); + Object data2 = getField(committed, key); + if (assertEquals) { +assertEquals("Field " + key + " does not match", data1, data2); + } else if (!data1.equals(data2)) { +ret = false; + } +} + +long now =
[38/40] hadoop git commit: HDFS-10646. Federation admin tool. Contributed by Inigo Goiri.
HDFS-10646. Federation admin tool. Contributed by Inigo Goiri. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/3966f9b9 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/3966f9b9 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/3966f9b9 Branch: refs/heads/HDFS-10467 Commit: 3966f9b9fca8924f34ed9d8201c6e026a05cdf38 Parents: 3fc9181 Author: Inigo GoiriAuthored: Tue Aug 8 14:44:43 2017 -0700 Committer: Inigo Goiri Committed: Tue Aug 15 18:17:24 2017 -0700 -- hadoop-hdfs-project/hadoop-hdfs/pom.xml | 1 + .../hadoop-hdfs/src/main/bin/hdfs | 5 + .../hadoop-hdfs/src/main/bin/hdfs.cmd | 7 +- .../org/apache/hadoop/hdfs/DFSConfigKeys.java | 19 ++ .../hdfs/protocolPB/RouterAdminProtocolPB.java | 44 +++ ...uterAdminProtocolServerSideTranslatorPB.java | 151 .../RouterAdminProtocolTranslatorPB.java| 150 .../resolver/MembershipNamenodeResolver.java| 34 +- .../hdfs/server/federation/router/Router.java | 52 +++ .../federation/router/RouterAdminServer.java| 183 ++ .../server/federation/router/RouterClient.java | 76 + .../hdfs/tools/federation/RouterAdmin.java | 341 +++ .../hdfs/tools/federation/package-info.java | 28 ++ .../src/main/proto/RouterProtocol.proto | 47 +++ .../src/main/resources/hdfs-default.xml | 46 +++ .../server/federation/RouterConfigBuilder.java | 26 ++ .../server/federation/RouterDFSCluster.java | 43 ++- .../server/federation/StateStoreDFSCluster.java | 148 .../federation/router/TestRouterAdmin.java | 261 ++ 19 files changed, 1644 insertions(+), 18 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/3966f9b9/hadoop-hdfs-project/hadoop-hdfs/pom.xml -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/pom.xml b/hadoop-hdfs-project/hadoop-hdfs/pom.xml index 81e5fdf..360aeae 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/pom.xml +++ b/hadoop-hdfs-project/hadoop-hdfs/pom.xml @@ -332,6 +332,7 @@ http://maven.apache.org/xsd/maven-4.0.0.xsd;> editlog.proto fsimage.proto FederationProtocol.proto + RouterProtocol.proto http://git-wip-us.apache.org/repos/asf/hadoop/blob/3966f9b9/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs b/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs index b1f44a4..d51a8e2 100755 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs @@ -31,6 +31,7 @@ function hadoop_usage hadoop_add_option "--hosts filename" "list of hosts to use in worker mode" hadoop_add_option "--workers" "turn on worker mode" +<<< HEAD hadoop_add_subcommand "balancer" daemon "run a cluster balancing utility" hadoop_add_subcommand "cacheadmin" admin "configure the HDFS cache" hadoop_add_subcommand "classpath" client "prints the class path needed to get the hadoop jar and the required libraries" @@ -42,6 +43,7 @@ function hadoop_usage hadoop_add_subcommand "diskbalancer" daemon "Distributes data evenly among disks on a given node" hadoop_add_subcommand "envvars" client "display computed Hadoop environment variables" hadoop_add_subcommand "ec" admin "run a HDFS ErasureCoding CLI" + hadoop_add_subcommand "federation" admin "manage Router-based federation" hadoop_add_subcommand "fetchdt" client "fetch a delegation token from the NameNode" hadoop_add_subcommand "fsck" admin "run a DFS filesystem checking utility" hadoop_add_subcommand "getconf" client "get config values from configuration" @@ -181,6 +183,9 @@ function hdfscmd_case HADOOP_SUBCMD_SUPPORTDAEMONIZATION="true" HADOOP_CLASSNAME='org.apache.hadoop.hdfs.server.federation.router.Router' ;; +federation) + HADOOP_CLASSNAME='org.apache.hadoop.hdfs.tools.federation.RouterAdmin' +;; secondarynamenode) HADOOP_SUBCMD_SUPPORTDAEMONIZATION="true" HADOOP_CLASSNAME='org.apache.hadoop.hdfs.server.namenode.SecondaryNameNode' http://git-wip-us.apache.org/repos/asf/hadoop/blob/3966f9b9/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs.cmd -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs.cmd b/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs.cmd index b9853d6..53bdf70 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs.cmd +++
[07/40] hadoop git commit: YARN-6881. LOG is unused in AllocationConfiguration (Contributed by weiyuan via Daniel Templeton)
YARN-6881. LOG is unused in AllocationConfiguration (Contributed by weiyuan via Daniel Templeton) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/6b09c327 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/6b09c327 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/6b09c327 Branch: refs/heads/HDFS-10467 Commit: 6b09c327057947049ef7984afbb5ed225f15fc2d Parents: 608a06c Author: Daniel TempletonAuthored: Mon Aug 14 11:55:33 2017 -0700 Committer: Daniel Templeton Committed: Mon Aug 14 11:55:33 2017 -0700 -- .../resourcemanager/scheduler/fair/AllocationConfiguration.java | 3 --- 1 file changed, 3 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/6b09c327/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/AllocationConfiguration.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/AllocationConfiguration.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/AllocationConfiguration.java index f143aa6..71e6f7f 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/AllocationConfiguration.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/AllocationConfiguration.java @@ -23,8 +23,6 @@ import java.util.HashSet; import java.util.Map; import java.util.Set; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.security.authorize.AccessControlList; import org.apache.hadoop.yarn.api.records.QueueACL; @@ -41,7 +39,6 @@ import org.apache.hadoop.yarn.util.resource.Resources; import com.google.common.annotations.VisibleForTesting; public class AllocationConfiguration extends ReservationSchedulerConfiguration { - private static final Log LOG = LogFactory.getLog(FSQueue.class.getName()); private static final AccessControlList EVERYBODY_ACL = new AccessControlList("*"); private static final AccessControlList NOBODY_ACL = new AccessControlList(" "); private static final ResourceCalculator RESOURCE_CALCULATOR = - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
[28/40] hadoop git commit: HDFS-10629. Federation Roter. Contributed by Jason Kace and Inigo Goiri.
http://git-wip-us.apache.org/repos/asf/hadoop/blob/273c47b0/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/federation/MockResolver.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/federation/MockResolver.java b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/federation/MockResolver.java new file mode 100644 index 000..ee6f57d --- /dev/null +++ b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/federation/MockResolver.java @@ -0,0 +1,290 @@ +/** + * 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.hdfs.server.federation; + +import java.io.IOException; +import java.net.InetSocketAddress; +import java.util.ArrayList; +import java.util.Collections; +import java.util.HashMap; +import java.util.HashSet; +import java.util.LinkedList; +import java.util.List; +import java.util.Map; +import java.util.Set; + +import org.apache.hadoop.conf.Configuration; +import org.apache.hadoop.hdfs.server.federation.resolver.ActiveNamenodeResolver; +import org.apache.hadoop.hdfs.server.federation.resolver.FederationNamenodeContext; +import org.apache.hadoop.hdfs.server.federation.resolver.FederationNamenodeServiceState; +import org.apache.hadoop.hdfs.server.federation.resolver.FederationNamespaceInfo; +import org.apache.hadoop.hdfs.server.federation.resolver.FileSubclusterResolver; +import org.apache.hadoop.hdfs.server.federation.resolver.NamenodePriorityComparator; +import org.apache.hadoop.hdfs.server.federation.resolver.NamenodeStatusReport; +import org.apache.hadoop.hdfs.server.federation.resolver.PathLocation; +import org.apache.hadoop.hdfs.server.federation.resolver.RemoteLocation; +import org.apache.hadoop.hdfs.server.federation.store.StateStoreService; +import org.apache.hadoop.util.Time; + +/** + * In-memory cache/mock of a namenode and file resolver. Stores the most + * recently updated NN information for each nameservice and block pool. Also + * stores a virtual mount table for resolving global namespace paths to local NN + * paths. + */ +public class MockResolver +implements ActiveNamenodeResolver, FileSubclusterResolver { + + private Mapresolver = + new HashMap (); + private Map locations = + new HashMap (); + private Set namespaces = + new HashSet(); + private String defaultNamespace = null; + + public MockResolver(Configuration conf, StateStoreService store) { +this.cleanRegistrations(); + } + + public void addLocation(String mount, String nameservice, String location) { +RemoteLocation remoteLocation = new RemoteLocation(nameservice, location); +List locationsList = locations.get(mount); +if (locationsList == null) { + locationsList = new LinkedList(); + locations.put(mount, locationsList); +} +if (!locationsList.contains(remoteLocation)) { + locationsList.add(remoteLocation); +} + +if (this.defaultNamespace == null) { + this.defaultNamespace = nameservice; +} + } + + public synchronized void cleanRegistrations() { +this.resolver = +new HashMap (); +this.namespaces = new HashSet(); + } + + @Override + public void updateActiveNamenode( + String ns, InetSocketAddress successfulAddress) { + +String address = successfulAddress.getHostName() + ":" + +successfulAddress.getPort(); +String key = ns; +if (key != null) { + // Update the active entry + @SuppressWarnings("unchecked") + List iterator = + (List) resolver.get(key); + for (FederationNamenodeContext namenode : iterator) { +if (namenode.getRpcAddress().equals(address)) { + MockNamenodeContext nn = (MockNamenodeContext) namenode; + nn.setState(FederationNamenodeServiceState.ACTIVE); + break; +} + } + Collections.sort(iterator, new NamenodePriorityComparator()); +} + } + + @Override + public List + getNamenodesForNameserviceId(String nameserviceId) { +return resolver.get(nameserviceId); + }
[24/40] hadoop git commit: HDFS-11546. Federation Router RPC server. Contributed by Jason Kace and Inigo Goiri.
http://git-wip-us.apache.org/repos/asf/hadoop/blob/56e7541e/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/federation/MockResolver.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/federation/MockResolver.java b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/federation/MockResolver.java index ee6f57d..2875750 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/federation/MockResolver.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/federation/MockResolver.java @@ -43,7 +43,7 @@ import org.apache.hadoop.util.Time; /** * In-memory cache/mock of a namenode and file resolver. Stores the most - * recently updated NN information for each nameservice and block pool. Also + * recently updated NN information for each nameservice and block pool. It also * stores a virtual mount table for resolving global namespace paths to local NN * paths. */ @@ -51,82 +51,93 @@ public class MockResolver implements ActiveNamenodeResolver, FileSubclusterResolver { private Mapresolver = - new HashMap (); - private Map locations = - new HashMap (); - private Set namespaces = - new HashSet(); + new HashMap<>(); + private Map locations = new HashMap<>(); + private Set namespaces = new HashSet<>(); private String defaultNamespace = null; + public MockResolver(Configuration conf, StateStoreService store) { this.cleanRegistrations(); } - public void addLocation(String mount, String nameservice, String location) { -RemoteLocation remoteLocation = new RemoteLocation(nameservice, location); -List locationsList = locations.get(mount); + public void addLocation(String mount, String nsId, String location) { +List locationsList = this.locations.get(mount); if (locationsList == null) { - locationsList = new LinkedList(); - locations.put(mount, locationsList); + locationsList = new LinkedList<>(); + this.locations.put(mount, locationsList); } + +final RemoteLocation remoteLocation = new RemoteLocation(nsId, location); if (!locationsList.contains(remoteLocation)) { locationsList.add(remoteLocation); } if (this.defaultNamespace == null) { - this.defaultNamespace = nameservice; + this.defaultNamespace = nsId; } } public synchronized void cleanRegistrations() { -this.resolver = -new HashMap (); -this.namespaces = new HashSet(); +this.resolver = new HashMap<>(); +this.namespaces = new HashSet<>(); } @Override public void updateActiveNamenode( - String ns, InetSocketAddress successfulAddress) { + String nsId, InetSocketAddress successfulAddress) { String address = successfulAddress.getHostName() + ":" + successfulAddress.getPort(); -String key = ns; +String key = nsId; if (key != null) { // Update the active entry @SuppressWarnings("unchecked") - List iterator = - (List) resolver.get(key); - for (FederationNamenodeContext namenode : iterator) { + List namenodes = + (List) this.resolver.get(key); + for (FederationNamenodeContext namenode : namenodes) { if (namenode.getRpcAddress().equals(address)) { MockNamenodeContext nn = (MockNamenodeContext) namenode; nn.setState(FederationNamenodeServiceState.ACTIVE); break; } } - Collections.sort(iterator, new NamenodePriorityComparator()); + // This operation modifies the list so we need to be careful + synchronized(namenodes) { +Collections.sort(namenodes, new NamenodePriorityComparator()); + } } } @Override public List getNamenodesForNameserviceId(String nameserviceId) { -return resolver.get(nameserviceId); +// Return a copy of the list because it is updated periodically +List namenodes = +this.resolver.get(nameserviceId); +return Collections.unmodifiableList(new ArrayList<>(namenodes)); } @Override public List getNamenodesForBlockPoolId( String blockPoolId) { -return resolver.get(blockPoolId); +// Return a copy of the list because it is updated periodically +List namenodes = +this.resolver.get(blockPoolId); +return Collections.unmodifiableList(new ArrayList<>(namenodes)); } private static class MockNamenodeContext implements FederationNamenodeContext { + +private String namenodeId; +private String nameserviceId; + private String webAddress; private String rpcAddress; private String serviceAddress; private String lifelineAddress; -private String namenodeId; -private String
[31/50] [abbrv] hadoop git commit: YARN-6959. RM may allocate wrong AM Container for new attempt. Contributed by Yuqi Wang
YARN-6959. RM may allocate wrong AM Container for new attempt. Contributed by Yuqi Wang Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/e2f6299f Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/e2f6299f Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/e2f6299f Branch: refs/heads/YARN-6592 Commit: e2f6299f6f580d7a03f2377d19ac85f55fd4e73b Parents: ce797a1 Author: Jian HeAuthored: Mon Aug 14 10:51:04 2017 -0700 Committer: Jian He Committed: Mon Aug 14 10:51:30 2017 -0700 -- .../scheduler/AbstractYarnScheduler.java| 1 + .../scheduler/capacity/CapacityScheduler.java | 13 ++ .../scheduler/fair/FairScheduler.java | 15 ++- .../scheduler/fifo/FifoScheduler.java | 15 ++- .../scheduler/fair/TestFairScheduler.java | 46 ++-- 5 files changed, 63 insertions(+), 27 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/e2f6299f/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/AbstractYarnScheduler.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/AbstractYarnScheduler.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/AbstractYarnScheduler.java index d506f4d..79caab0 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/AbstractYarnScheduler.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/AbstractYarnScheduler.java @@ -323,6 +323,7 @@ public abstract class AbstractYarnScheduler } + // TODO: Rename it to getCurrentApplicationAttempt public T getApplicationAttempt(ApplicationAttemptId applicationAttemptId) { SchedulerApplication app = applications.get( applicationAttemptId.getApplicationId()); http://git-wip-us.apache.org/repos/asf/hadoop/blob/e2f6299f/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacityScheduler.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacityScheduler.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacityScheduler.java index 3286982..e4ca003 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacityScheduler.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacityScheduler.java @@ -903,6 +903,19 @@ public class CapacityScheduler extends ContainerUpdates updateRequests) { FiCaSchedulerApp application = getApplicationAttempt(applicationAttemptId); if (application == null) { + LOG.error("Calling allocate on removed or non existent application " + + applicationAttemptId.getApplicationId()); + return EMPTY_ALLOCATION; +} + +// The allocate may be the leftover from previous attempt, and it will +// impact current attempt, such as confuse the request and allocation for +// current attempt's AM container. +// Note outside precondition check for the attempt id may be +// outdated here, so double check it here is necessary. +if (!application.getApplicationAttemptId().equals(applicationAttemptId)) { + LOG.error("Calling allocate on previous or removed " + + "or non existent application attempt " + applicationAttemptId); return EMPTY_ALLOCATION; } http://git-wip-us.apache.org/repos/asf/hadoop/blob/e2f6299f/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/FairScheduler.java -- diff --git
[48/50] [abbrv] hadoop git commit: HDFS-12301. NN File Browser UI: Navigate to a path when enter is pressed
HDFS-12301. NN File Browser UI: Navigate to a path when enter is pressed Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/f34646d6 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/f34646d6 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/f34646d6 Branch: refs/heads/YARN-6592 Commit: f34646d652310442cb5339aa269f10dfa838 Parents: d265459 Author: Ravi PrakashAuthored: Tue Aug 15 15:44:59 2017 -0700 Committer: Ravi Prakash Committed: Tue Aug 15 15:44:59 2017 -0700 -- .../hadoop-hdfs/src/main/webapps/hdfs/explorer.js | 6 ++ 1 file changed, 6 insertions(+) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/f34646d6/hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/hdfs/explorer.js -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/hdfs/explorer.js b/hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/hdfs/explorer.js index 3e276a9..dae3519 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/hdfs/explorer.js +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/hdfs/explorer.js @@ -370,6 +370,12 @@ var b = function() { browse_directory($('#directory').val()); }; $('#btn-nav-directory').click(b); +//Also navigate to the directory when a user presses enter. +$('#directory').on('keyup', function (e) { + if (e.which == 13) { +browse_directory($('#directory').val()); + } +}); var dir = window.location.hash.slice(1); if(dir == "") { window.location.hash = "/"; - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
[39/50] [abbrv] hadoop git commit: HADOOP-14673. Remove leftover hadoop_xml_escape from functions. Contributed by Ajay Kumar.
HADOOP-14673. Remove leftover hadoop_xml_escape from functions. Contributed by Ajay Kumar. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/04465113 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/04465113 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/04465113 Branch: refs/heads/YARN-6592 Commit: 044651139800b9e2e5b8f224772e6dbd6ded58c6 Parents: 8bef4ec Author: Arpit AgarwalAuthored: Mon Aug 14 16:22:10 2017 -0700 Committer: Arpit Agarwal Committed: Mon Aug 14 16:22:10 2017 -0700 -- .../src/main/bin/hadoop-functions.sh| 23 -- .../src/test/scripts/hadoop_escape_chars.bats | 32 2 files changed, 55 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/04465113/hadoop-common-project/hadoop-common/src/main/bin/hadoop-functions.sh -- diff --git a/hadoop-common-project/hadoop-common/src/main/bin/hadoop-functions.sh b/hadoop-common-project/hadoop-common/src/main/bin/hadoop-functions.sh index 3cf21cf..9ea4587 100755 --- a/hadoop-common-project/hadoop-common/src/main/bin/hadoop-functions.sh +++ b/hadoop-common-project/hadoop-common/src/main/bin/hadoop-functions.sh @@ -2578,29 +2578,6 @@ function hadoop_parse_args hadoop_debug "hadoop_parse: asking caller to skip ${HADOOP_PARSE_COUNTER}" } -## @description XML-escapes the characters (&'"<>) in the given parameter. -## @audience private -## @stabilityevolving -## @replaceable yes -## @paramstring -## @return XML-escaped string -function hadoop_xml_escape -{ - sed -e 's/&/\/g' -e 's/"/\\\/g' \ --e "s/'/\/g" -e 's//\\\/g' <<< "$1" -} - -## @description sed-escapes the characters (\/&) in the given parameter. -## @audience private -## @stabilityevolving -## @replaceable yes -## @paramstring -## @return sed-escaped string -function hadoop_sed_escape -{ - sed -e 's/[\/&]/\\&/g' <<< "$1" -} - ## @description Handle subcommands from main program entries ## @audience private ## @stability evolving http://git-wip-us.apache.org/repos/asf/hadoop/blob/04465113/hadoop-common-project/hadoop-common/src/test/scripts/hadoop_escape_chars.bats -- diff --git a/hadoop-common-project/hadoop-common/src/test/scripts/hadoop_escape_chars.bats b/hadoop-common-project/hadoop-common/src/test/scripts/hadoop_escape_chars.bats deleted file mode 100755 index 9b031f2..000 --- a/hadoop-common-project/hadoop-common/src/test/scripts/hadoop_escape_chars.bats +++ /dev/null @@ -1,32 +0,0 @@ -# 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. - -load hadoop-functions_test_helper - -@test "hadoop_escape_sed (positive 1)" { - ret="$(hadoop_sed_escape "\pass&\0#\$asdf/g ><'\"~\`!@#$%^&*()_+-=")" - expected="pass\&0#\$asdf\/g ><'\"~\`!@#$%^\&*()_+-=" - echo "actual >${ret}<" - echo "expected >${expected}<" - [ "${ret}" = "${expected}" ] -} - -@test "hadoop_escape_xml (positive 1)" { - ret="$(hadoop_xml_escape "\pass&\0#\$asdf/g ><'\"~\`!@#$%^&*()_+-=")" - expected="\\password\0#\$asdf/g ~\`!@#\$%^*()_+-=" - echo "actual >${ret}<" - echo "expected >${expected}<" - [ "${ret}" = "${expected}" ] -} \ No newline at end of file - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
[30/50] [abbrv] hadoop git commit: HDFS-12221. Replace xcerces in XmlEditsVisitor. (Ajay Kumar via lei)
HDFS-12221. Replace xcerces in XmlEditsVisitor. (Ajay Kumar via lei) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/ce797a17 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/ce797a17 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/ce797a17 Branch: refs/heads/YARN-6592 Commit: ce797a170669524224cfeaaf70647047e7626816 Parents: d8f74c3 Author: Lei XuAuthored: Mon Aug 14 10:27:47 2017 -0700 Committer: Lei Xu Committed: Mon Aug 14 10:27:47 2017 -0700 -- .../hadoop-client-minicluster/pom.xml | 6 -- .../hadoop-client-runtime/pom.xml | 7 --- hadoop-hdfs-project/hadoop-hdfs/pom.xml | 5 -- .../offlineEditsViewer/XmlEditsVisitor.java | 41 .../hadoop-hdfs/src/test/resources/editsStored | Bin 5850 -> 5850 bytes .../src/test/resources/editsStored.xml | 62 +-- .../hadoop-mapreduce-client/pom.xml | 10 +-- hadoop-project-dist/pom.xml | 10 +-- hadoop-project/pom.xml | 8 --- hadoop-yarn-project/hadoop-yarn/pom.xml | 10 +-- 10 files changed, 62 insertions(+), 97 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/ce797a17/hadoop-client-modules/hadoop-client-minicluster/pom.xml -- diff --git a/hadoop-client-modules/hadoop-client-minicluster/pom.xml b/hadoop-client-modules/hadoop-client-minicluster/pom.xml index 5255640..5cf1fad 100644 --- a/hadoop-client-modules/hadoop-client-minicluster/pom.xml +++ b/hadoop-client-modules/hadoop-client-minicluster/pom.xml @@ -629,12 +629,6 @@ - xerces:xercesImpl - -**/* - - - org.apache.hadoop:hadoop-mapreduce-client-jobclient:* testjar/* http://git-wip-us.apache.org/repos/asf/hadoop/blob/ce797a17/hadoop-client-modules/hadoop-client-runtime/pom.xml -- diff --git a/hadoop-client-modules/hadoop-client-runtime/pom.xml b/hadoop-client-modules/hadoop-client-runtime/pom.xml index 2f64152..24c6b7a 100644 --- a/hadoop-client-modules/hadoop-client-runtime/pom.xml +++ b/hadoop-client-modules/hadoop-client-runtime/pom.xml @@ -174,13 +174,6 @@ org/apache/jasper/compiler/Localizer.class - - - xerces:xercesImpl - -META-INF/services/* - - com.sun.jersey:* http://git-wip-us.apache.org/repos/asf/hadoop/blob/ce797a17/hadoop-hdfs-project/hadoop-hdfs/pom.xml -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/pom.xml b/hadoop-hdfs-project/hadoop-hdfs/pom.xml index 1c50d31..fa1044d 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/pom.xml +++ b/hadoop-hdfs-project/hadoop-hdfs/pom.xml @@ -174,11 +174,6 @@ http://maven.apache.org/xsd/maven-4.0.0.xsd;> compile - xerces - xercesImpl - compile - - org.apache.htrace htrace-core4 http://git-wip-us.apache.org/repos/asf/hadoop/blob/ce797a17/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/offlineEditsViewer/XmlEditsVisitor.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/offlineEditsViewer/XmlEditsVisitor.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/offlineEditsViewer/XmlEditsVisitor.java index 7a39ba6..ddf7933 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/offlineEditsViewer/XmlEditsVisitor.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/offlineEditsViewer/XmlEditsVisitor.java @@ -20,17 +20,21 @@ package org.apache.hadoop.hdfs.tools.offlineEditsViewer; import java.io.IOException; import java.io.OutputStream; +import javax.xml.transform.OutputKeys; +import javax.xml.transform.TransformerConfigurationException; +import javax.xml.transform.sax.SAXTransformerFactory; +import javax.xml.transform.sax.TransformerHandler; +import javax.xml.transform.stream.StreamResult; +import org.xml.sax.ContentHandler; +import org.xml.sax.SAXException; +import
[38/50] [abbrv] hadoop git commit: HADOOP-14732. ProtobufRpcEngine should use Time.monotonicNow to measure durations. Contributed by Hanisha Koneru.
HADOOP-14732. ProtobufRpcEngine should use Time.monotonicNow to measure durations. Contributed by Hanisha Koneru. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/8bef4eca Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/8bef4eca Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/8bef4eca Branch: refs/heads/YARN-6592 Commit: 8bef4eca28a3466707cc4ea0de0330449319a5eb Parents: 5558792 Author: Arpit AgarwalAuthored: Mon Aug 14 15:53:35 2017 -0700 Committer: Arpit Agarwal Committed: Mon Aug 14 15:53:35 2017 -0700 -- .../java/org/apache/hadoop/ipc/ProtobufRpcEngine.java | 14 +++--- 1 file changed, 7 insertions(+), 7 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/8bef4eca/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/ProtobufRpcEngine.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/ProtobufRpcEngine.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/ProtobufRpcEngine.java index 639bbad..2c0cfe5 100644 --- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/ProtobufRpcEngine.java +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/ProtobufRpcEngine.java @@ -190,7 +190,7 @@ public class ProtobufRpcEngine implements RpcEngine { throws ServiceException { long startTime = 0; if (LOG.isDebugEnabled()) { -startTime = Time.now(); +startTime = Time.monotonicNow(); } if (args.length != 2) { // RpcController + Message @@ -245,7 +245,7 @@ public class ProtobufRpcEngine implements RpcEngine { } if (LOG.isDebugEnabled()) { -long callTime = Time.now() - startTime; +long callTime = Time.monotonicNow() - startTime; LOG.debug("Call: " + method.getName() + " took " + callTime + "ms"); } @@ -373,19 +373,19 @@ public class ProtobufRpcEngine implements RpcEngine { this.server = currentCallInfo.get().server; this.call = Server.getCurCall().get(); this.methodName = currentCallInfo.get().methodName; -this.setupTime = Time.now(); +this.setupTime = Time.monotonicNow(); } @Override public void setResponse(Message message) { -long processingTime = Time.now() - setupTime; +long processingTime = Time.monotonicNow() - setupTime; call.setDeferredResponse(RpcWritable.wrap(message)); server.updateDeferredMetrics(methodName, processingTime); } @Override public void error(Throwable t) { -long processingTime = Time.now() - setupTime; +long processingTime = Time.monotonicNow() - setupTime; String detailedMetricsName = t.getClass().getSimpleName(); server.updateDeferredMetrics(detailedMetricsName, processingTime); call.setDeferredError(t); @@ -513,7 +513,7 @@ public class ProtobufRpcEngine implements RpcEngine { Message param = request.getValue(prototype); Message result; -long startTime = Time.now(); +long startTime = Time.monotonicNow(); int qTime = (int) (startTime - receiveTime); Exception exception = null; boolean isDeferred = false; @@ -537,7 +537,7 @@ public class ProtobufRpcEngine implements RpcEngine { throw e; } finally { currentCallInfo.set(null); - int processingTime = (int) (Time.now() - startTime); + int processingTime = (int) (Time.monotonicNow() - startTime); if (LOG.isDebugEnabled()) { String msg = "Served: " + methodName + (isDeferred ? ", deferred" : "") + - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
[37/50] [abbrv] hadoop git commit: YARN-6917. Queue path is recomputed from scratch on every allocation. Contributed by Eric Payne
YARN-6917. Queue path is recomputed from scratch on every allocation. Contributed by Eric Payne Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/55587928 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/55587928 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/55587928 Branch: refs/heads/YARN-6592 Commit: 5558792894169425bff054364a1ab4c48b347fb9 Parents: 3325ef6 Author: Jason LoweAuthored: Mon Aug 14 15:31:34 2017 -0500 Committer: Jason Lowe Committed: Mon Aug 14 15:31:34 2017 -0500 -- .../resourcemanager/scheduler/capacity/AbstractCSQueue.java | 8 .../server/resourcemanager/scheduler/capacity/LeafQueue.java | 5 - .../resourcemanager/scheduler/capacity/ParentQueue.java | 6 -- 3 files changed, 8 insertions(+), 11 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/55587928/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/AbstractCSQueue.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/AbstractCSQueue.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/AbstractCSQueue.java index 5fbdead..d7c452a 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/AbstractCSQueue.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/AbstractCSQueue.java @@ -76,6 +76,7 @@ public abstract class AbstractCSQueue implements CSQueue { private static final Log LOG = LogFactory.getLog(AbstractCSQueue.class); volatile CSQueue parent; final String queueName; + private final String queuePath; volatile int numContainers; final Resource minimumAllocation; @@ -119,6 +120,8 @@ public abstract class AbstractCSQueue implements CSQueue { this.labelManager = cs.getRMContext().getNodeLabelManager(); this.parent = parent; this.queueName = queueName; +this.queuePath = + ((parent == null) ? "" : (parent.getQueuePath() + ".")) + this.queueName; this.resourceCalculator = cs.getResourceCalculator(); this.activitiesManager = cs.getActivitiesManager(); @@ -150,6 +153,11 @@ public abstract class AbstractCSQueue implements CSQueue { queueCapacities, parent == null ? null : parent.getQueueCapacities()); } + + @Override + public String getQueuePath() { +return queuePath; + } @Override public float getCapacity() { http://git-wip-us.apache.org/repos/asf/hadoop/blob/55587928/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/LeafQueue.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/LeafQueue.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/LeafQueue.java index 2e502b7..d15431e 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/LeafQueue.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/LeafQueue.java @@ -299,11 +299,6 @@ public class LeafQueue extends AbstractCSQueue { } } - @Override - public String getQueuePath() { -return getParent().getQueuePath() + "." + getQueueName(); - } - /** * Used only by tests. */ http://git-wip-us.apache.org/repos/asf/hadoop/blob/55587928/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/ParentQueue.java -- diff --git
[46/50] [abbrv] hadoop git commit: YARN-5146. Support for Fair Scheduler in new YARN UI. Contributed by Abdullah Yousufi.
YARN-5146. Support for Fair Scheduler in new YARN UI. Contributed by Abdullah Yousufi. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/dadb0c22 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/dadb0c22 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/dadb0c22 Branch: refs/heads/YARN-6592 Commit: dadb0c2225adef5cb0126610733c285b51f4f43e Parents: e3ae3e2 Author: Sunil GAuthored: Tue Aug 15 21:58:44 2017 +0530 Committer: Sunil G Committed: Tue Aug 15 21:58:44 2017 +0530 -- .../src/main/webapp/app/adapters/yarn-queue.js | 30 - .../app/adapters/yarn-queue/capacity-queue.js | 23 .../app/adapters/yarn-queue/fair-queue.js | 23 .../app/adapters/yarn-queue/fifo-queue.js | 23 .../app/adapters/yarn-queue/yarn-queue.js | 30 + .../main/webapp/app/components/tree-selector.js | 19 ++- .../src/main/webapp/app/models/yarn-queue.js| 94 -- .../app/models/yarn-queue/capacity-queue.js | 95 ++ .../webapp/app/models/yarn-queue/fair-queue.js | 79 .../webapp/app/models/yarn-queue/fifo-queue.js | 52 .../webapp/app/models/yarn-queue/yarn-queue.js | 23 .../main/webapp/app/routes/cluster-overview.js | 4 +- .../src/main/webapp/app/routes/yarn-queue.js| 26 ++-- .../src/main/webapp/app/routes/yarn-queues.js | 12 +- .../main/webapp/app/routes/yarn-queues/index.js | 25 .../app/routes/yarn-queues/queues-selector.js | 25 .../main/webapp/app/serializers/yarn-queue.js | 129 --- .../serializers/yarn-queue/capacity-queue.js| 128 ++ .../app/serializers/yarn-queue/fair-queue.js| 92 + .../app/serializers/yarn-queue/fifo-queue.js| 59 + .../app/serializers/yarn-queue/yarn-queue.js| 47 +++ .../components/queue-configuration-table.hbs| 54 .../templates/components/queue-navigator.hbs| 7 +- .../yarn-queue/capacity-queue-conf-table.hbs| 54 .../yarn-queue/capacity-queue-info.hbs | 84 .../components/yarn-queue/capacity-queue.hbs| 63 + .../yarn-queue/fair-queue-conf-table.hbs| 52 .../components/yarn-queue/fair-queue-info.hbs | 66 ++ .../components/yarn-queue/fair-queue.hbs| 63 + .../yarn-queue/fifo-queue-conf-table.hbs| 56 .../components/yarn-queue/fifo-queue-info.hbs | 47 +++ .../components/yarn-queue/fifo-queue.hbs| 48 +++ .../webapp/app/templates/yarn-queue/info.hbs| 73 +-- .../main/webapp/app/templates/yarn-queues.hbs | 54 +--- .../src/main/webapp/app/utils/color-utils.js| 1 - 35 files changed, 1266 insertions(+), 494 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/dadb0c22/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/adapters/yarn-queue.js -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/adapters/yarn-queue.js b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/adapters/yarn-queue.js deleted file mode 100644 index f2017df..000 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/adapters/yarn-queue.js +++ /dev/null @@ -1,30 +0,0 @@ -/** - * 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. - */ - -import AbstractAdapter from './abstract'; - -export default AbstractAdapter.extend({ - address: "rmWebAddress", - restNameSpace: "cluster", - serverName: "RM", - - pathForType(/*modelName*/) { -return 'scheduler'; // move to some common place, return path by modelname. - } - -}); http://git-wip-us.apache.org/repos/asf/hadoop/blob/dadb0c22/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/adapters/yarn-queue/capacity-queue.js -- diff --git
[09/50] [abbrv] hadoop git commit: YARN-6631. Refactor loader.js in new Yarn UI. Contributed by Akhil P B.
YARN-6631. Refactor loader.js in new Yarn UI. Contributed by Akhil P B. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/8d953c23 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/8d953c23 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/8d953c23 Branch: refs/heads/YARN-6592 Commit: 8d953c2359c5b12cf5b1f3c14be3ff5bb74242d0 Parents: ac7d060 Author: Sunil GAuthored: Thu Aug 10 11:53:26 2017 +0530 Committer: Sunil G Committed: Thu Aug 10 11:53:26 2017 +0530 -- .../src/main/webapp/app/initializers/loader.js | 42 +--- 1 file changed, 19 insertions(+), 23 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/8d953c23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/initializers/loader.js -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/initializers/loader.js b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/initializers/loader.js index aa8fb07..55f6e1b 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/initializers/loader.js +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/src/main/webapp/app/initializers/loader.js @@ -20,25 +20,27 @@ import Ember from 'ember'; -function getTimeLineURL() { - return '/conf?name=yarn.timeline-service.webapp.address'; +function getTimeLineURL(rmhost) { + var url = window.location.protocol + '//' + +(ENV.hosts.localBaseAddress? ENV.hosts.localBaseAddress + '/' : '') + rmhost; + + url += '/conf?name=yarn.timeline-service.webapp.address'; + Ember.Logger.log("Get Timeline Address URL: " + url); + return url; } function updateConfigs(application) { var hostname = window.location.hostname; - var rmhost = hostname + -(window.location.port ? ':' + window.location.port: ''); - - Ember.Logger.log("RM Address:" + rmhost); + var rmhost = hostname + (window.location.port ? ':' + window.location.port: ''); if(!ENV.hosts.rmWebAddress) { -ENV = { - hosts: { - rmWebAddress: rmhost, -}, -}; +ENV.hosts.rmWebAddress = rmhost; + } else { +rmhost = ENV.hosts.rmWebAddress; } + Ember.Logger.log("RM Address: " + rmhost); + if(!ENV.hosts.timelineWebAddress) { var timelinehost = ""; $.ajax({ @@ -46,7 +48,7 @@ function updateConfigs(application) { dataType: 'json', async: true, context: this, - url: getTimeLineURL(), + url: getTimeLineURL(rmhost), success: function(data) { timelinehost = data.property.value; ENV.hosts.timelineWebAddress = timelinehost; @@ -54,24 +56,18 @@ function updateConfigs(application) { var address = timelinehost.split(":")[0]; var port = timelinehost.split(":")[1]; -Ember.Logger.log("Timeline Address from RM:" + address + ":" + port); +Ember.Logger.log("Timeline Address from RM: " + timelinehost); if(address === "0.0.0.0" || address === "localhost") { var updatedAddress = hostname + ":" + port; - - /* Timeline v2 is not supporting CORS, so make as default*/ - ENV = { - hosts: { -rmWebAddress: rmhost, -timelineWebAddress: updatedAddress, - }, - }; - Ember.Logger.log("Timeline Updated Address:" + updatedAddress); + ENV.hosts.timelineWebAddress = updatedAddress; + Ember.Logger.log("Timeline Updated Address: " + updatedAddress); } application.advanceReadiness(); - }, + } }); } else { +Ember.Logger.log("Timeline Address: " + ENV.hosts.timelineWebAddress); application.advanceReadiness(); } } - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
[33/50] [abbrv] hadoop git commit: HDFS-12162. Update listStatus document to describe the behavior when the argument is a file. Contributed by Ajay Kumar.
HDFS-12162. Update listStatus document to describe the behavior when the argument is a file. Contributed by Ajay Kumar. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/d72124a4 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/d72124a4 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/d72124a4 Branch: refs/heads/YARN-6592 Commit: d72124a44268e21ada036242bfbccafc23c52ed0 Parents: 18f3603 Author: Anu EngineerAuthored: Mon Aug 14 11:32:49 2017 -0700 Committer: Anu Engineer Committed: Mon Aug 14 11:32:49 2017 -0700 -- .../hadoop/fs/http/server/FSOperations.java | 2 +- .../hadoop-hdfs/src/site/markdown/WebHDFS.md| 39 2 files changed, 40 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/d72124a4/hadoop-hdfs-project/hadoop-hdfs-httpfs/src/main/java/org/apache/hadoop/fs/http/server/FSOperations.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs-httpfs/src/main/java/org/apache/hadoop/fs/http/server/FSOperations.java b/hadoop-hdfs-project/hadoop-hdfs-httpfs/src/main/java/org/apache/hadoop/fs/http/server/FSOperations.java index c008802..4b5918a 100644 --- a/hadoop-hdfs-project/hadoop-hdfs-httpfs/src/main/java/org/apache/hadoop/fs/http/server/FSOperations.java +++ b/hadoop-hdfs-project/hadoop-hdfs-httpfs/src/main/java/org/apache/hadoop/fs/http/server/FSOperations.java @@ -669,7 +669,7 @@ public class FSOperations { /** * Creates a list-status executor. * - * @param path the directory to retrieve the status of its contents. + * @param path the directory/file to retrieve the status of its contents. * @param filter glob filter to use. * * @throws IOException thrown if the filter expression is incorrect. http://git-wip-us.apache.org/repos/asf/hadoop/blob/d72124a4/hadoop-hdfs-project/hadoop-hdfs/src/site/markdown/WebHDFS.md -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/site/markdown/WebHDFS.md b/hadoop-hdfs-project/hadoop-hdfs/src/site/markdown/WebHDFS.md index 7544c80..03834eb 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/site/markdown/WebHDFS.md +++ b/hadoop-hdfs-project/hadoop-hdfs/src/site/markdown/WebHDFS.md @@ -495,6 +495,45 @@ See also: [FileSystem](../../api/org/apache/hadoop/fs/FileSystem.html).getFileSt See also: [FileSystem](../../api/org/apache/hadoop/fs/FileSystem.html).listStatus +### List a File + +* Submit a HTTP GET request. + +curl -i "http://:/webhdfs/v1/?op=LISTSTATUS" + +The client receives a response with a [`FileStatuses` JSON object](#FileStatuses_JSON_Schema): + +HTTP/1.1 200 OK +Content-Type: application/json +Content-Length: 427 + +{ + "FileStatuses": + { +"FileStatus": +[ + { +"accessTime" : 1320171722771, +"blockSize" : 33554432, +"childrenNum" : 0, +"fileId" : 16390, +"group" : "supergroup", +"length" : 1366, +"modificationTime": 1501770633062, +"owner" : "webuser", +"pathSuffix" : "", +"permission" : "644", +"replication" : 1, +"storagePolicy" : 0, +"type": "FILE" + } +] + } +} + +See also: [FileSystem](../../api/org/apache/hadoop/fs/FileSystem.html).listStatus + + ### Iteratively List a Directory * Submit a HTTP GET request. - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
[28/50] [abbrv] hadoop git commit: HADOOP-14627. Support MSI and DeviceCode token provider in ADLS. Contributed by Atul Sikaria.
HADOOP-14627. Support MSI and DeviceCode token provider in ADLS. Contributed by Atul Sikaria. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/7769e961 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/7769e961 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/7769e961 Branch: refs/heads/YARN-6592 Commit: 7769e9614956283a86eda9e4e69aaa592c0ca960 Parents: 8b242f0 Author: John ZhugeAuthored: Thu Aug 10 00:43:40 2017 -0700 Committer: John Zhuge Committed: Sun Aug 13 00:22:34 2017 -0700 -- .../src/main/resources/core-default.xml | 37 +++- hadoop-tools/hadoop-azure-datalake/pom.xml | 2 +- .../org/apache/hadoop/fs/adl/AdlConfKeys.java | 8 ++ .../org/apache/hadoop/fs/adl/AdlFileSystem.java | 21 + .../apache/hadoop/fs/adl/TokenProviderType.java | 2 + .../src/site/markdown/index.md | 98 ++-- .../hadoop/fs/adl/TestAzureADTokenProvider.java | 40 7 files changed, 198 insertions(+), 10 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/7769e961/hadoop-common-project/hadoop-common/src/main/resources/core-default.xml -- diff --git a/hadoop-common-project/hadoop-common/src/main/resources/core-default.xml b/hadoop-common-project/hadoop-common/src/main/resources/core-default.xml index ffcab2c..7c4b0f1 100644 --- a/hadoop-common-project/hadoop-common/src/main/resources/core-default.xml +++ b/hadoop-common-project/hadoop-common/src/main/resources/core-default.xml @@ -2586,11 +2586,16 @@ ClientCredential Defines Azure Active Directory OAuth2 access token provider type. - Supported types are ClientCredential, RefreshToken, and Custom. + Supported types are ClientCredential, RefreshToken, MSI, DeviceCode, + and Custom. The ClientCredential type requires property fs.adl.oauth2.client.id, fs.adl.oauth2.credential, and fs.adl.oauth2.refresh.url. The RefreshToken type requires property fs.adl.oauth2.client.id and fs.adl.oauth2.refresh.token. + The MSI type requires properties fs.adl.oauth2.msi.port and + fs.adl.oauth2.msi.tenantguid. + The DeviceCode type requires property + fs.adl.oauth2.devicecode.clientapp.id. The Custom type requires property fs.adl.oauth2.access.token.provider. @@ -2627,6 +2632,36 @@ + +fs.adl.oauth2.msi.port + + + The localhost port for the MSI token service. This is the port specified + when creating the Azure VM. + Used by MSI token provider. + + + + +fs.adl.oauth2.msi.tenantguid + + + The tenant guid for the Azure AAD tenant under which the azure data lake + store account is created. + Used by MSI token provider. + + + + +fs.adl.oauth2.devicecode.clientapp.id + + + The app id of the AAD native app in whose context the auth request + should be made. + Used by DeviceCode token provider. + + + http://git-wip-us.apache.org/repos/asf/hadoop/blob/7769e961/hadoop-tools/hadoop-azure-datalake/pom.xml -- diff --git a/hadoop-tools/hadoop-azure-datalake/pom.xml b/hadoop-tools/hadoop-azure-datalake/pom.xml index 3aed5e1..47f12df 100644 --- a/hadoop-tools/hadoop-azure-datalake/pom.xml +++ b/hadoop-tools/hadoop-azure-datalake/pom.xml @@ -110,7 +110,7 @@ com.microsoft.azure azure-data-lake-store-sdk - 2.1.4 + 2.2.1 http://git-wip-us.apache.org/repos/asf/hadoop/blob/7769e961/hadoop-tools/hadoop-azure-datalake/src/main/java/org/apache/hadoop/fs/adl/AdlConfKeys.java -- diff --git a/hadoop-tools/hadoop-azure-datalake/src/main/java/org/apache/hadoop/fs/adl/AdlConfKeys.java b/hadoop-tools/hadoop-azure-datalake/src/main/java/org/apache/hadoop/fs/adl/AdlConfKeys.java index 31df222..f77d981 100644 --- a/hadoop-tools/hadoop-azure-datalake/src/main/java/org/apache/hadoop/fs/adl/AdlConfKeys.java +++ b/hadoop-tools/hadoop-azure-datalake/src/main/java/org/apache/hadoop/fs/adl/AdlConfKeys.java @@ -54,6 +54,14 @@ public final class AdlConfKeys { public static final String TOKEN_PROVIDER_TYPE_CLIENT_CRED = "ClientCredential"; + // MSI Auth Configuration + public static final String MSI_PORT = "fs.adl.oauth2.msi.port"; + public static final String MSI_TENANT_GUID = "fs.adl.oauth2.msi.tenantguid"; + + // DeviceCode Auth configuration + public static final String DEVICE_CODE_CLIENT_APP_ID = + "fs.adl.oauth2.devicecode.clientapp.id"; + public static final String
[17/50] [abbrv] hadoop git commit: HADOOP-14260. Configuration.dumpConfiguration should redact sensitive information. Contributed by John Zhuge.
HADOOP-14260. Configuration.dumpConfiguration should redact sensitive information. Contributed by John Zhuge. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/582648be Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/582648be Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/582648be Branch: refs/heads/YARN-6592 Commit: 582648befaf9908159f937d2cc8f549583a3483e Parents: 4222c97 Author: John ZhugeAuthored: Thu Aug 10 16:28:22 2017 -0700 Committer: John Zhuge Committed: Fri Aug 11 10:16:08 2017 -0700 -- .../org/apache/hadoop/conf/Configuration.java | 15 +++--- .../apache/hadoop/conf/TestConfiguration.java | 48 ++-- 2 files changed, 53 insertions(+), 10 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/582648be/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/conf/Configuration.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/conf/Configuration.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/conf/Configuration.java index 65e8569..edaee68 100644 --- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/conf/Configuration.java +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/conf/Configuration.java @@ -3146,7 +3146,8 @@ public class Configuration implements Iterable >, JsonGenerator dumpGenerator = dumpFactory.createGenerator(out); dumpGenerator.writeStartObject(); dumpGenerator.writeFieldName("property"); - appendJSONProperty(dumpGenerator, config, propertyName); + appendJSONProperty(dumpGenerator, config, propertyName, + new ConfigRedactor(config)); dumpGenerator.writeEndObject(); dumpGenerator.flush(); } @@ -3186,11 +3187,11 @@ public class Configuration implements Iterable >, dumpGenerator.writeFieldName("properties"); dumpGenerator.writeStartArray(); dumpGenerator.flush(); +ConfigRedactor redactor = new ConfigRedactor(config); synchronized (config) { for (Map.Entry
[43/50] [abbrv] hadoop git commit: HDFS-11696. Fix warnings from Spotbugs in hadoop-hdfs. Contributed by Yiqun Lin.
HDFS-11696. Fix warnings from Spotbugs in hadoop-hdfs. 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/2e43c28e Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/2e43c28e Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/2e43c28e Branch: refs/heads/YARN-6592 Commit: 2e43c28e01fe006210e71aab179527669f6412ed Parents: 645a8f2 Author: Yiqun LinAuthored: Tue Aug 15 16:48:49 2017 +0800 Committer: Yiqun Lin Committed: Tue Aug 15 16:48:49 2017 +0800 -- .../java/org/apache/hadoop/hdfs/DFSClient.java | 7 +++-- .../hdfs/server/protocol/SlowDiskReports.java | 5 ++-- .../dev-support/findbugsExcludeFile.xml | 26 +++ .../hdfs/qjournal/server/JournalNode.java | 16 +++- .../hdfs/server/datanode/DataStorage.java | 12 ++--- .../namenode/NNStorageRetentionManager.java | 27 +++- .../org/apache/hadoop/hdfs/tools/DFSAdmin.java | 6 ++--- .../offlineImageViewer/ImageLoaderCurrent.java | 10 +--- .../namenode/TestNameNodeOptionParsing.java | 27 +++- 9 files changed, 103 insertions(+), 33 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/2e43c28e/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/DFSClient.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/DFSClient.java b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/DFSClient.java index 677ea35..88b273a 100644 --- a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/DFSClient.java +++ b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/DFSClient.java @@ -2901,9 +2901,12 @@ public class DFSClient implements java.io.Closeable, RemotePeerFactory, } synchronized (DFSClient.class) { if (STRIPED_READ_THREAD_POOL == null) { -STRIPED_READ_THREAD_POOL = DFSUtilClient.getThreadPoolExecutor(1, +// Only after thread pool is fully constructed then save it to +// volatile field. +ThreadPoolExecutor threadPool = DFSUtilClient.getThreadPoolExecutor(1, numThreads, 60, "StripedRead-", true); -STRIPED_READ_THREAD_POOL.allowCoreThreadTimeOut(true); +threadPool.allowCoreThreadTimeOut(true); +STRIPED_READ_THREAD_POOL = threadPool; } } } http://git-wip-us.apache.org/repos/asf/hadoop/blob/2e43c28e/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/server/protocol/SlowDiskReports.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/server/protocol/SlowDiskReports.java b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/server/protocol/SlowDiskReports.java index 8095c2a..496389a 100644 --- a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/server/protocol/SlowDiskReports.java +++ b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/server/protocol/SlowDiskReports.java @@ -101,8 +101,9 @@ public final class SlowDiskReports { } boolean areEqual; -for (String disk : this.slowDisks.keySet()) { - if (!this.slowDisks.get(disk).equals(that.slowDisks.get(disk))) { +for (Map.Entry > entry : this.slowDisks +.entrySet()) { + if (!entry.getValue().equals(that.slowDisks.get(entry.getKey( { return false; } } http://git-wip-us.apache.org/repos/asf/hadoop/blob/2e43c28e/hadoop-hdfs-project/hadoop-hdfs/dev-support/findbugsExcludeFile.xml -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/dev-support/findbugsExcludeFile.xml b/hadoop-hdfs-project/hadoop-hdfs/dev-support/findbugsExcludeFile.xml index 2a7824a..9582fcb 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/dev-support/findbugsExcludeFile.xml +++ b/hadoop-hdfs-project/hadoop-hdfs/dev-support/findbugsExcludeFile.xml @@ -264,4 +264,30 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + http://git-wip-us.apache.org/repos/asf/hadoop/blob/2e43c28e/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/qjournal/server/JournalNode.java -- diff --git
[27/50] [abbrv] hadoop git commit: HDFS-11303. Hedged read might hang infinitely if read data from all DN failed . Contributed by Chen Zhang, Wei-chiu Chuang, and John Zhuge.
HDFS-11303. Hedged read might hang infinitely if read data from all DN failed . Contributed by Chen Zhang, Wei-chiu Chuang, and John Zhuge. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/8b242f09 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/8b242f09 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/8b242f09 Branch: refs/heads/YARN-6592 Commit: 8b242f09a61a7536d2422546bfa6c2aaf1d57ed6 Parents: 28d97b7 Author: John ZhugeAuthored: Thu Aug 10 14:04:36 2017 -0700 Committer: John Zhuge Committed: Fri Aug 11 19:42:07 2017 -0700 -- .../org/apache/hadoop/hdfs/DFSInputStream.java | 11 ++-- .../java/org/apache/hadoop/hdfs/TestPread.java | 63 2 files changed, 70 insertions(+), 4 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/8b242f09/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/DFSInputStream.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/DFSInputStream.java b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/DFSInputStream.java index dcc997c..6bff172 100644 --- a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/DFSInputStream.java +++ b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/DFSInputStream.java @@ -1131,8 +1131,9 @@ public class DFSInputStream extends FSInputStream Future firstRequest = hedgedService .submit(getFromDataNodeCallable); futures.add(firstRequest); +Future future = null; try { - Future future = hedgedService.poll( + future = hedgedService.poll( conf.getHedgedReadThresholdMillis(), TimeUnit.MILLISECONDS); if (future != null) { ByteBuffer result = future.get(); @@ -1142,16 +1143,18 @@ public class DFSInputStream extends FSInputStream } DFSClient.LOG.debug("Waited {}ms to read from {}; spawning hedged " + "read", conf.getHedgedReadThresholdMillis(), chosenNode.info); - // Ignore this node on next go around. - ignored.add(chosenNode.info); dfsClient.getHedgedReadMetrics().incHedgedReadOps(); // continue; no need to refresh block locations } catch (ExecutionException e) { - // Ignore + futures.remove(future); } catch (InterruptedException e) { throw new InterruptedIOException( "Interrupted while waiting for reading task"); } +// Ignore this node on next go around. +// If poll timeout and the request still ongoing, don't consider it +// again. If read data failed, don't consider it either. +ignored.add(chosenNode.info); } else { // We are starting up a 'hedged' read. We have a read already // ongoing. Call getBestNodeDNAddrPair instead of chooseDataNode. http://git-wip-us.apache.org/repos/asf/hadoop/blob/8b242f09/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestPread.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestPread.java b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestPread.java index 85fc97b..bcb02b3 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestPread.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestPread.java @@ -59,6 +59,8 @@ import org.mockito.invocation.InvocationOnMock; import org.mockito.stubbing.Answer; import com.google.common.base.Supplier; +import org.slf4j.LoggerFactory; +import org.slf4j.Logger; /** * This class tests the DFS positional read functionality in a single node @@ -72,6 +74,9 @@ public class TestPread { boolean simulatedStorage; boolean isHedgedRead; + private static final Logger LOG = + LoggerFactory.getLogger(TestPread.class.getName()); + @Before public void setup() { simulatedStorage = false; @@ -551,6 +556,64 @@ public class TestPread { } } + @Test(timeout=3) + public void testHedgedReadFromAllDNFailed() throws IOException { +Configuration conf = new Configuration(); +int numHedgedReadPoolThreads = 5; +final int hedgedReadTimeoutMillis = 50; + +conf.setInt(HdfsClientConfigKeys.HedgedRead.THREADPOOL_SIZE_KEY, +numHedgedReadPoolThreads); +conf.setLong(HdfsClientConfigKeys.HedgedRead.THRESHOLD_MILLIS_KEY, +hedgedReadTimeoutMillis); +conf.setInt(HdfsClientConfigKeys.Retry.WINDOW_BASE_KEY,
[29/50] [abbrv] hadoop git commit: YARN-6741. Deleting all children of a Parent Queue on refresh throws exception. Contributed by Naganarasimha G R.
YARN-6741. Deleting all children of a Parent Queue on refresh throws exception. Contributed by Naganarasimha G R. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/d8f74c39 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/d8f74c39 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/d8f74c39 Branch: refs/heads/YARN-6592 Commit: d8f74c3964fa429a4a53c3651d175792cf00ac81 Parents: 7769e96 Author: bibinchundattAuthored: Mon Aug 14 09:39:00 2017 +0530 Committer: bibinchundatt Committed: Mon Aug 14 09:39:00 2017 +0530 -- .../capacity/CapacitySchedulerQueueManager.java | 4 + .../scheduler/capacity/ParentQueue.java | 39 +++ .../capacity/TestCapacityScheduler.java | 114 ++- 3 files changed, 137 insertions(+), 20 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/d8f74c39/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacitySchedulerQueueManager.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacitySchedulerQueueManager.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacitySchedulerQueueManager.java index e33fbb3..1ceb6fb 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacitySchedulerQueueManager.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacitySchedulerQueueManager.java @@ -327,6 +327,10 @@ public class CapacitySchedulerQueueManager implements SchedulerQueueManager< + "it is not yet in stopped state. Current State : " + oldQueue.getState()); } +} else if (oldQueue instanceof ParentQueue +&& newQueue instanceof LeafQueue) { + LOG.info("Converting the parent queue: " + oldQueue.getQueuePath() + + " to leaf queue."); } } } http://git-wip-us.apache.org/repos/asf/hadoop/blob/d8f74c39/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/ParentQueue.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/ParentQueue.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/ParentQueue.java index f6ada4f..e0baa07 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/ParentQueue.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/ParentQueue.java @@ -18,6 +18,14 @@ package org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity; +import java.io.IOException; +import java.util.ArrayList; +import java.util.Collection; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; + import org.apache.commons.lang.StringUtils; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -34,7 +42,6 @@ import org.apache.hadoop.yarn.api.records.QueueInfo; import org.apache.hadoop.yarn.api.records.QueueState; import org.apache.hadoop.yarn.api.records.QueueUserACLInfo; import org.apache.hadoop.yarn.api.records.Resource; -import org.apache.hadoop.yarn.exceptions.InvalidResourceRequestException; import org.apache.hadoop.yarn.factories.RecordFactory; import org.apache.hadoop.yarn.factory.providers.RecordFactoryProvider; import org.apache.hadoop.yarn.security.AccessType; @@ -45,7 +52,6 @@ import org.apache.hadoop.yarn.server.resourcemanager.rmcontainer.RMContainerStat import org.apache.hadoop.yarn.server.resourcemanager.scheduler.ActiveUsersManager; import org.apache.hadoop.yarn.server.resourcemanager.scheduler.NodeType; import
[34/50] [abbrv] hadoop git commit: YARN-6905 Multiple HBaseTimelineStorage test failures due to missing FastNumberFormat (Contributed by Haibo Chen)
YARN-6905 Multiple HBaseTimelineStorage test failures due to missing FastNumberFormat (Contributed by Haibo Chen) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/608a06cc Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/608a06cc Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/608a06cc Branch: refs/heads/YARN-6592 Commit: 608a06cca5d68b3155bd70a94bf29ae0942b9ca0 Parents: d72124a Author: Vrushali CAuthored: Mon Aug 14 11:40:27 2017 -0700 Committer: Vrushali C Committed: Mon Aug 14 11:41:11 2017 -0700 -- .../storage/TestHBaseTimelineStorageApps.java | 4 +- .../TestHBaseTimelineStorageEntities.java | 14 --- .../storage/common/AppIdKeyConverter.java | 3 +- .../common/HBaseTimelineStorageUtils.java | 33 + .../TestCustomApplicationIdConversion.java | 39 5 files changed, 86 insertions(+), 7 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/608a06cc/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-timelineservice-hbase-tests/src/test/java/org/apache/hadoop/yarn/server/timelineservice/storage/TestHBaseTimelineStorageApps.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-timelineservice-hbase-tests/src/test/java/org/apache/hadoop/yarn/server/timelineservice/storage/TestHBaseTimelineStorageApps.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-timelineservice-hbase-tests/src/test/java/org/apache/hadoop/yarn/server/timelineservice/storage/TestHBaseTimelineStorageApps.java index b3e5197..3948d23 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-timelineservice-hbase-tests/src/test/java/org/apache/hadoop/yarn/server/timelineservice/storage/TestHBaseTimelineStorageApps.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-timelineservice-hbase-tests/src/test/java/org/apache/hadoop/yarn/server/timelineservice/storage/TestHBaseTimelineStorageApps.java @@ -69,6 +69,7 @@ import org.apache.hadoop.yarn.server.timelineservice.storage.application.Applica import org.apache.hadoop.yarn.server.timelineservice.storage.application.ApplicationTable; import org.apache.hadoop.yarn.server.timelineservice.storage.common.EventColumnName; import org.apache.hadoop.yarn.server.timelineservice.storage.common.EventColumnNameConverter; +import org.apache.hadoop.yarn.server.timelineservice.storage.common.HBaseTimelineStorageUtils; import org.apache.hadoop.yarn.server.timelineservice.storage.common.KeyConverter; import org.apache.hadoop.yarn.server.timelineservice.storage.common.Separator; import org.apache.hadoop.yarn.server.timelineservice.storage.common.StringKeyConverter; @@ -493,7 +494,8 @@ public class TestHBaseTimelineStorageApps { event.addInfo(expKey, expVal); final TimelineEntity entity = new ApplicationEntity(); -entity.setId(ApplicationId.newInstance(0, 1).toString()); +entity.setId(HBaseTimelineStorageUtils.convertApplicationIdToString( +ApplicationId.newInstance(0, 1))); entity.addEvent(event); TimelineEntities entities = new TimelineEntities(); http://git-wip-us.apache.org/repos/asf/hadoop/blob/608a06cc/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-timelineservice-hbase-tests/src/test/java/org/apache/hadoop/yarn/server/timelineservice/storage/TestHBaseTimelineStorageEntities.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-timelineservice-hbase-tests/src/test/java/org/apache/hadoop/yarn/server/timelineservice/storage/TestHBaseTimelineStorageEntities.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-timelineservice-hbase-tests/src/test/java/org/apache/hadoop/yarn/server/timelineservice/storage/TestHBaseTimelineStorageEntities.java index 4b4c3e1..e18d0d0 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-timelineservice-hbase-tests/src/test/java/org/apache/hadoop/yarn/server/timelineservice/storage/TestHBaseTimelineStorageEntities.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-timelineservice-hbase-tests/src/test/java/org/apache/hadoop/yarn/server/timelineservice/storage/TestHBaseTimelineStorageEntities.java @@ -62,6 +62,7 @@ import org.apache.hadoop.yarn.server.timelineservice.reader.filter.TimelinePrefi import org.apache.hadoop.yarn.server.timelineservice.storage.TimelineReader.Field; import org.apache.hadoop.yarn.server.timelineservice.storage.common.EventColumnName;
[45/50] [abbrv] hadoop git commit: HDFS-12066. When Namenode is in safemode, may not allowed to remove an user's erasure coding policy. Contributed by lufei.
HDFS-12066. When Namenode is in safemode,may not allowed to remove an user's erasure coding policy. Contributed by lufei. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/e3ae3e26 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/e3ae3e26 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/e3ae3e26 Branch: refs/heads/YARN-6592 Commit: e3ae3e26446c2e98b7aebc4ea66256cfdb4a397f Parents: 1040bae Author: Wei-Chiu ChuangAuthored: Tue Aug 15 07:41:10 2017 -0700 Committer: Wei-Chiu Chuang Committed: Tue Aug 15 07:41:43 2017 -0700 -- .../apache/hadoop/hdfs/server/namenode/FSNamesystem.java| 3 +++ .../src/test/java/org/apache/hadoop/hdfs/TestSafeMode.java | 9 + 2 files changed, 12 insertions(+) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/e3ae3e26/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java index caf73f7..1cfaa54 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java @@ -7113,6 +7113,9 @@ public class FSNamesystem implements Namesystem, FSNamesystemMBean, boolean success = false; writeLock(); try { + checkOperation(OperationCategory.WRITE); + checkNameNodeSafeMode("Cannot remove erasure coding policy " + + ecPolicyName); FSDirErasureCodingOp.removeErasureCodePolicy(this, ecPolicyName); success = true; } finally { http://git-wip-us.apache.org/repos/asf/hadoop/blob/e3ae3e26/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestSafeMode.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestSafeMode.java b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestSafeMode.java index bc95ec7..f25d28f 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestSafeMode.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestSafeMode.java @@ -482,6 +482,15 @@ public class TestSafeMode { // expected } +try { + dfs.removeErasureCodingPolicy("testECName"); + fail("RemoveErasureCodingPolicy should have failed."); +} catch (IOException ioe) { + GenericTestUtils.assertExceptionContains( + "Cannot remove erasure coding policy", ioe); + // expected +} + assertFalse("Could not leave SM", dfs.setSafeMode(SafeModeAction.SAFEMODE_LEAVE)); } - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
[44/50] [abbrv] hadoop git commit: HDFS-12054. FSNamesystem#addErasureCodingPolicies should call checkNameNodeSafeMode() to ensure Namenode is not in safemode. Contributed by lufei.
HDFS-12054. FSNamesystem#addErasureCodingPolicies should call checkNameNodeSafeMode() to ensure Namenode is not in safemode. Contributed by lufei. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/1040bae6 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/1040bae6 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/1040bae6 Branch: refs/heads/YARN-6592 Commit: 1040bae6fcbae7079d8126368cdeac60831a4d0c Parents: 2e43c28 Author: Wei-Chiu ChuangAuthored: Tue Aug 15 07:38:43 2017 -0700 Committer: Wei-Chiu Chuang Committed: Tue Aug 15 07:38:43 2017 -0700 -- .../hadoop/hdfs/server/namenode/FSNamesystem.java | 2 ++ .../java/org/apache/hadoop/hdfs/TestSafeMode.java | 16 2 files changed, 18 insertions(+) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/1040bae6/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java index b1639b2..caf73f7 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java @@ -7081,6 +7081,8 @@ public class FSNamesystem implements Namesystem, FSNamesystemMBean, checkOperation(OperationCategory.WRITE); for (ErasureCodingPolicy policy : policies) { try { + checkOperation(OperationCategory.WRITE); + checkNameNodeSafeMode("Cannot add erasure coding policy"); ErasureCodingPolicy newPolicy = FSDirErasureCodingOp.addErasureCodePolicy(this, policy); addECPolicyName = newPolicy.getName(); http://git-wip-us.apache.org/repos/asf/hadoop/blob/1040bae6/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestSafeMode.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestSafeMode.java b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestSafeMode.java index f03b440..bc95ec7 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestSafeMode.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestSafeMode.java @@ -40,6 +40,7 @@ import org.apache.hadoop.fs.permission.AclEntry; import org.apache.hadoop.fs.permission.FsAction; import org.apache.hadoop.fs.permission.FsPermission; import org.apache.hadoop.hdfs.MiniDFSCluster.DataNodeProperties; +import org.apache.hadoop.hdfs.protocol.ErasureCodingPolicy; import org.apache.hadoop.hdfs.protocol.HdfsConstants.SafeModeAction; import org.apache.hadoop.hdfs.server.blockmanagement.BlockManagerTestUtil; import org.apache.hadoop.hdfs.server.common.HdfsServerConstants.StartupOption; @@ -48,6 +49,7 @@ import org.apache.hadoop.hdfs.server.namenode.NameNode; import org.apache.hadoop.hdfs.server.namenode.NameNodeAdapter; import org.apache.hadoop.hdfs.server.namenode.SafeModeException; import org.apache.hadoop.io.IOUtils; +import org.apache.hadoop.io.erasurecode.ECSchema; import org.apache.hadoop.ipc.RemoteException; import org.apache.hadoop.security.AccessControlException; import org.apache.hadoop.security.UserGroupInformation; @@ -466,6 +468,20 @@ public class TestSafeMode { // expected } +ECSchema toAddSchema = new ECSchema("testcodec", 3, 2); +ErasureCodingPolicy newPolicy = +new ErasureCodingPolicy(toAddSchema, 128 * 1024); +ErasureCodingPolicy[] policyArray = +new ErasureCodingPolicy[]{newPolicy}; +try { + dfs.addErasureCodingPolicies(policyArray); + fail("AddErasureCodingPolicies should have failed."); +} catch (IOException ioe) { + GenericTestUtils.assertExceptionContains( + "Cannot add erasure coding policy", ioe); + // expected +} + assertFalse("Could not leave SM", dfs.setSafeMode(SafeModeAction.SAFEMODE_LEAVE)); } - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
[40/50] [abbrv] hadoop git commit: YARN-5978. ContainerScheduler and ContainerManager changes to support ExecType update. (Kartheek Muthyala via asuresh)
http://git-wip-us.apache.org/repos/asf/hadoop/blob/4d7be1d8/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/scheduler/TestContainerSchedulerQueuing.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/scheduler/TestContainerSchedulerQueuing.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/scheduler/TestContainerSchedulerQueuing.java index aeba399..a1c247b 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/scheduler/TestContainerSchedulerQueuing.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/scheduler/TestContainerSchedulerQueuing.java @@ -27,6 +27,8 @@ import java.util.List; import org.apache.commons.logging.LogFactory; import org.apache.hadoop.fs.UnsupportedFileSystemException; import org.apache.hadoop.security.UserGroupInformation; +import org.apache.hadoop.yarn.api.protocolrecords.ContainerUpdateRequest; +import org.apache.hadoop.yarn.api.protocolrecords.ContainerUpdateResponse; import org.apache.hadoop.yarn.api.protocolrecords.GetContainerStatusesRequest; import org.apache.hadoop.yarn.api.protocolrecords.StartContainerRequest; import org.apache.hadoop.yarn.api.protocolrecords.StartContainersRequest; @@ -37,6 +39,7 @@ import org.apache.hadoop.yarn.api.records.ContainerId; import org.apache.hadoop.yarn.api.records.ContainerLaunchContext; import org.apache.hadoop.yarn.api.records.ContainerStatus; import org.apache.hadoop.yarn.api.records.ExecutionType; +import org.apache.hadoop.yarn.api.records.Token; import org.apache.hadoop.yarn.conf.YarnConfiguration; import org.apache.hadoop.yarn.exceptions.ConfigurationException; import org.apache.hadoop.yarn.exceptions.YarnException; @@ -951,4 +954,97 @@ public class TestContainerSchedulerQueuing extends BaseContainerManagerTest { map.get(org.apache.hadoop.yarn.api.records.ContainerState.SCHEDULED) .getContainerId()); } + + /** + * Starts one OPPORTUNISTIC container that takes up the whole node's + * resources, and submit one more that will be queued. Now promote the + * queued OPPORTUNISTIC container, which should kill the current running + * OPPORTUNISTIC container to make room for the promoted request. + * @throws Exception + */ + @Test + public void testPromotionOfOpportunisticContainers() throws Exception { +containerManager.start(); + +ContainerLaunchContext containerLaunchContext = +recordFactory.newRecordInstance(ContainerLaunchContext.class); + +List list = new ArrayList<>(); +list.add(StartContainerRequest.newInstance( +containerLaunchContext, +createContainerToken(createContainerId(0), DUMMY_RM_IDENTIFIER, +context.getNodeId(), +user, BuilderUtils.newResource(2048, 1), +context.getContainerTokenSecretManager(), null, +ExecutionType.OPPORTUNISTIC))); +list.add(StartContainerRequest.newInstance( +containerLaunchContext, +createContainerToken(createContainerId(1), DUMMY_RM_IDENTIFIER, +context.getNodeId(), +user, BuilderUtils.newResource(1024, 1), +context.getContainerTokenSecretManager(), null, +ExecutionType.OPPORTUNISTIC))); + +StartContainersRequest allRequests = +StartContainersRequest.newInstance(list); +containerManager.startContainers(allRequests); + +Thread.sleep(5000); + +// Ensure first container is running and others are queued. +List statList = new ArrayList(); +for (int i = 0; i < 3; i++) { + statList.add(createContainerId(i)); +} +GetContainerStatusesRequest statRequest = GetContainerStatusesRequest +.newInstance(Arrays.asList(createContainerId(0))); +List containerStatuses = containerManager +.getContainerStatuses(statRequest).getContainerStatuses(); +for (ContainerStatus status : containerStatuses) { + if (status.getContainerId().equals(createContainerId(0))) { +Assert.assertEquals( +org.apache.hadoop.yarn.api.records.ContainerState.RUNNING, +status.getState()); + } else { +Assert.assertEquals( +org.apache.hadoop.yarn.api.records.ContainerState.SCHEDULED, +status.getState()); + } +} + +ContainerScheduler containerScheduler = +containerManager.getContainerScheduler(); +// Ensure two containers are properly queued. +
[08/50] [abbrv] hadoop git commit: MAPREDUCE-6923. Optimize MapReduce Shuffle I/O for small partitions. Contributed by Robert Schmidtke.
MAPREDUCE-6923. Optimize MapReduce Shuffle I/O for small partitions. Contributed by Robert Schmidtke. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/ac7d0604 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/ac7d0604 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/ac7d0604 Branch: refs/heads/YARN-6592 Commit: ac7d0604bc73c0925eff240ad9837e14719d57b7 Parents: b5c02f9 Author: Ravi PrakashAuthored: Wed Aug 9 15:39:52 2017 -0700 Committer: Ravi Prakash Committed: Wed Aug 9 15:39:52 2017 -0700 -- .../main/java/org/apache/hadoop/mapred/FadvisedFileRegion.java | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/ac7d0604/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-shuffle/src/main/java/org/apache/hadoop/mapred/FadvisedFileRegion.java -- diff --git a/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-shuffle/src/main/java/org/apache/hadoop/mapred/FadvisedFileRegion.java b/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-shuffle/src/main/java/org/apache/hadoop/mapred/FadvisedFileRegion.java index cb9b5e0..79045f9 100644 --- a/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-shuffle/src/main/java/org/apache/hadoop/mapred/FadvisedFileRegion.java +++ b/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-shuffle/src/main/java/org/apache/hadoop/mapred/FadvisedFileRegion.java @@ -111,7 +111,10 @@ public class FadvisedFileRegion extends DefaultFileRegion { long trans = actualCount; int readSize; -ByteBuffer byteBuffer = ByteBuffer.allocate(this.shuffleBufferSize); +ByteBuffer byteBuffer = ByteBuffer.allocate( +Math.min( +this.shuffleBufferSize, +trans > Integer.MAX_VALUE ? Integer.MAX_VALUE : (int) trans)); while(trans > 0L && (readSize = fileChannel.read(byteBuffer, this.position+position)) > 0) { - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
[50/50] [abbrv] hadoop git commit: YARN-6593. [API] Introduce Placement Constraint object. (Konstantinos Karanasos via wangda)
YARN-6593. [API] Introduce Placement Constraint object. (Konstantinos Karanasos via wangda) Change-Id: Id00edb7185fdf01cce6e40f920cac3585f8cbe9c Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/7d5bd3eb Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/7d5bd3eb Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/7d5bd3eb Branch: refs/heads/YARN-6592 Commit: 7d5bd3eb0b66874d3dce7cab22b017382d9d1822 Parents: 75dd866 Author: Wangda TanAuthored: Thu Aug 3 14:03:55 2017 -0700 Committer: Arun Suresh Committed: Tue Aug 15 17:27:29 2017 -0700 -- .../yarn/api/resource/PlacementConstraint.java | 567 +++ .../yarn/api/resource/PlacementConstraints.java | 286 ++ .../hadoop/yarn/api/resource/package-info.java | 23 + .../src/main/proto/yarn_protos.proto| 55 ++ .../api/resource/TestPlacementConstraints.java | 106 .../PlacementConstraintFromProtoConverter.java | 116 .../pb/PlacementConstraintToProtoConverter.java | 174 ++ .../apache/hadoop/yarn/api/pb/package-info.java | 23 + .../yarn/api/records/impl/pb/ProtoUtils.java| 27 + .../PlacementConstraintTransformations.java | 209 +++ .../hadoop/yarn/api/resource/package-info.java | 23 + .../TestPlacementConstraintPBConversion.java| 195 +++ .../TestPlacementConstraintTransformations.java | 183 ++ 13 files changed, 1987 insertions(+) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/7d5bd3eb/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/src/main/java/org/apache/hadoop/yarn/api/resource/PlacementConstraint.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/src/main/java/org/apache/hadoop/yarn/api/resource/PlacementConstraint.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/src/main/java/org/apache/hadoop/yarn/api/resource/PlacementConstraint.java new file mode 100644 index 000..f0e3982 --- /dev/null +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/src/main/java/org/apache/hadoop/yarn/api/resource/PlacementConstraint.java @@ -0,0 +1,567 @@ +/** + * 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.yarn.api.resource; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.HashSet; +import java.util.List; +import java.util.Set; + +import org.apache.hadoop.classification.InterfaceAudience.Private; +import org.apache.hadoop.classification.InterfaceAudience.Public; +import org.apache.hadoop.classification.InterfaceStability.Unstable; + +/** + * {@code PlacementConstraint} represents a placement constraint for a resource + * allocation. + */ +@Public +@Unstable +public class PlacementConstraint { + + /** + * The constraint expression tree. + */ + private AbstractConstraint constraintExpr; + + public PlacementConstraint(AbstractConstraint constraintExpr) { +this.constraintExpr = constraintExpr; + } + + /** + * Get the constraint expression of the placement constraint. + * + * @return the constraint expression + */ + public AbstractConstraint getConstraintExpr() { +return constraintExpr; + } + + /** + * Interface used to enable the elements of the constraint tree to be visited. + */ + @Private + public interface Visitable { +/** + * Visitor pattern. + * + * @param visitor visitor to be used + * @param defines the type that the visitor will use and the return type + * of the accept. + * @return the result of visiting a given object. + */ + T accept(Visitor visitor); + + } + + /** + * Visitor API for a constraint tree. + * + * @param determines the return type of the visit methods. + */ + @Private + public interface Visitor { +T visit(SingleConstraint constraint); + +T visit(TargetExpression target); + +T visit(TargetConstraint constraint); + +T visit(CardinalityConstraint constraint); + +T visit(And
[11/50] [abbrv] hadoop git commit: HADOOP-14743. CompositeGroupsMapping should not swallow exceptions. Contributed by Wei-Chiu Chuang.
HADOOP-14743. CompositeGroupsMapping should not swallow exceptions. Contributed by Wei-Chiu Chuang. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/a8b75466 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/a8b75466 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/a8b75466 Branch: refs/heads/YARN-6592 Commit: a8b75466b21edfe8b12beb4420492817f0e03147 Parents: 54356b1 Author: Wei-Chiu ChuangAuthored: Thu Aug 10 09:35:27 2017 -0700 Committer: Wei-Chiu Chuang Committed: Thu Aug 10 09:35:27 2017 -0700 -- .../java/org/apache/hadoop/security/CompositeGroupsMapping.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/a8b75466/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/security/CompositeGroupsMapping.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/security/CompositeGroupsMapping.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/security/CompositeGroupsMapping.java index b8cfdf7..b762df2 100644 --- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/security/CompositeGroupsMapping.java +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/security/CompositeGroupsMapping.java @@ -74,7 +74,9 @@ public class CompositeGroupsMapping try { groups = provider.getGroups(user); } catch (Exception e) { -//LOG.warn("Exception trying to get groups for user " + user, e); +LOG.warn("Unable to get groups for user {} via {} because: {}", +user, provider.getClass().getSimpleName(), e.toString()); +LOG.debug("Stacktrace: ", e); } if (groups != null && ! groups.isEmpty()) { groupSet.addAll(groups); - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
[22/50] [abbrv] hadoop git commit: YARN-6884. AllocationFileLoaderService.loadQueue() has an if without braces (Contributed by weiyuan via Daniel Templeton)
YARN-6884. AllocationFileLoaderService.loadQueue() has an if without braces (Contributed by weiyuan via Daniel Templeton) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/c7680d4c Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/c7680d4c Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/c7680d4c Branch: refs/heads/YARN-6592 Commit: c7680d4cc4d9302a5b5efcf2467bd32ecea99585 Parents: 218588b Author: Daniel TempletonAuthored: Fri Aug 11 14:22:02 2017 -0700 Committer: Daniel Templeton Committed: Fri Aug 11 14:22:02 2017 -0700 -- .../scheduler/fair/AllocationFileLoaderService.java| 6 -- 1 file changed, 4 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/c7680d4c/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/AllocationFileLoaderService.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/AllocationFileLoaderService.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/AllocationFileLoaderService.java index bc204cb..bf5b4c5 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/AllocationFileLoaderService.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/AllocationFileLoaderService.java @@ -294,8 +294,9 @@ public class AllocationFileLoaderService extends AbstractService { NodeList fields = element.getChildNodes(); for (int j = 0; j < fields.getLength(); j++) { Node fieldNode = fields.item(j); -if (!(fieldNode instanceof Element)) +if (!(fieldNode instanceof Element)) { continue; +} Element field = (Element) fieldNode; if ("maxRunningApps".equals(field.getTagName())) { String text = ((Text)field.getFirstChild()).getData().trim(); @@ -490,8 +491,9 @@ public class AllocationFileLoaderService extends AbstractService { for (int j = 0; j < fields.getLength(); j++) { Node fieldNode = fields.item(j); - if (!(fieldNode instanceof Element)) + if (!(fieldNode instanceof Element)) { continue; + } Element field = (Element) fieldNode; if ("minResources".equals(field.getTagName())) { String text = ((Text)field.getFirstChild()).getData().trim(); - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
[03/50] [abbrv] hadoop git commit: HDFS-12157. Do fsyncDirectory(..) outside of FSDataset lock. Contributed by inayakumar B.
HDFS-12157. Do fsyncDirectory(..) outside of FSDataset lock. Contributed by inayakumar B. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/69afa26f Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/69afa26f Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/69afa26f Branch: refs/heads/YARN-6592 Commit: 69afa26f19adad4c630a307c274130eb8b697141 Parents: 1a18d5e Author: Kihwal LeeAuthored: Wed Aug 9 09:03:51 2017 -0500 Committer: Kihwal Lee Committed: Wed Aug 9 09:03:51 2017 -0500 -- .../datanode/fsdataset/impl/FsDatasetImpl.java | 46 ++-- 1 file changed, 24 insertions(+), 22 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/69afa26f/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/fsdataset/impl/FsDatasetImpl.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/fsdataset/impl/FsDatasetImpl.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/fsdataset/impl/FsDatasetImpl.java index 53e2fc6..16df709 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/fsdataset/impl/FsDatasetImpl.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/fsdataset/impl/FsDatasetImpl.java @@ -991,8 +991,7 @@ class FsDatasetImpl implements FsDatasetSpi { replicaInfo, smallBufferSize, conf); // Finalize the copied files -newReplicaInfo = finalizeReplica(block.getBlockPoolId(), newReplicaInfo, -false); +newReplicaInfo = finalizeReplica(block.getBlockPoolId(), newReplicaInfo); try (AutoCloseableLock lock = datasetLock.acquire()) { // Increment numBlocks here as this block moved without knowing to BPS FsVolumeImpl volume = (FsVolumeImpl) newReplicaInfo.getVolume(); @@ -1295,7 +1294,7 @@ class FsDatasetImpl implements FsDatasetSpi { replicaInfo.bumpReplicaGS(newGS); // finalize the replica if RBW if (replicaInfo.getState() == ReplicaState.RBW) { -finalizeReplica(b.getBlockPoolId(), replicaInfo, false); +finalizeReplica(b.getBlockPoolId(), replicaInfo); } return replicaInfo; } @@ -1625,23 +1624,39 @@ class FsDatasetImpl implements FsDatasetSpi { @Override // FsDatasetSpi public void finalizeBlock(ExtendedBlock b, boolean fsyncDir) throws IOException { +ReplicaInfo replicaInfo = null; +ReplicaInfo finalizedReplicaInfo = null; try (AutoCloseableLock lock = datasetLock.acquire()) { if (Thread.interrupted()) { // Don't allow data modifications from interrupted threads throw new IOException("Cannot finalize block from Interrupted Thread"); } - ReplicaInfo replicaInfo = getReplicaInfo(b); + replicaInfo = getReplicaInfo(b); if (replicaInfo.getState() == ReplicaState.FINALIZED) { // this is legal, when recovery happens on a file that has // been opened for append but never modified return; } - finalizeReplica(b.getBlockPoolId(), replicaInfo, fsyncDir); + finalizedReplicaInfo = finalizeReplica(b.getBlockPoolId(), replicaInfo); +} +/* + * Sync the directory after rename from tmp/rbw to Finalized if + * configured. Though rename should be atomic operation, sync on both + * dest and src directories are done because IOUtils.fsync() calls + * directory's channel sync, not the journal itself. + */ +if (fsyncDir && finalizedReplicaInfo instanceof FinalizedReplica +&& replicaInfo instanceof LocalReplica) { + FinalizedReplica finalizedReplica = + (FinalizedReplica) finalizedReplicaInfo; + finalizedReplica.fsyncDirectory(); + LocalReplica localReplica = (LocalReplica) replicaInfo; + localReplica.fsyncDirectory(); } } - private ReplicaInfo finalizeReplica(String bpid, - ReplicaInfo replicaInfo, boolean fsyncDir) throws IOException { + private ReplicaInfo finalizeReplica(String bpid, ReplicaInfo replicaInfo) + throws IOException { try (AutoCloseableLock lock = datasetLock.acquire()) { ReplicaInfo newReplicaInfo = null; if (replicaInfo.getState() == ReplicaState.RUR && @@ -1656,19 +1671,6 @@ class FsDatasetImpl implements FsDatasetSpi { newReplicaInfo = v.addFinalizedBlock( bpid, replicaInfo, replicaInfo, replicaInfo.getBytesReserved()); -/* - * Sync the directory after rename from tmp/rbw to Finalized if - * configured. Though rename should be atomic operation, sync
[01/50] [abbrv] hadoop git commit: HDFS-12117. HttpFS does not seem to support SNAPSHOT related methods for WebHDFS REST Interface. Contributed by Wellington Chevreuil. [Forced Update!]
Repository: hadoop Updated Branches: refs/heads/YARN-6592 939d26968 -> 7d5bd3eb0 (forced update) HDFS-12117. HttpFS does not seem to support SNAPSHOT related methods for WebHDFS REST Interface. Contributed by Wellington Chevreuil. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/8a4bff02 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/8a4bff02 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/8a4bff02 Branch: refs/heads/YARN-6592 Commit: 8a4bff02c1534c6bf529726f2bbe414ac4c172e8 Parents: 9a3c237 Author: Wei-Chiu ChuangAuthored: Tue Aug 8 23:58:53 2017 -0700 Committer: Wei-Chiu Chuang Committed: Tue Aug 8 23:58:53 2017 -0700 -- .../hadoop/fs/http/client/HttpFSFileSystem.java | 47 ++- .../hadoop/fs/http/server/FSOperations.java | 105 ++ .../http/server/HttpFSParametersProvider.java | 45 ++ .../hadoop/fs/http/server/HttpFSServer.java | 36 + .../fs/http/client/BaseTestHttpFSWith.java | 110 ++- .../hadoop/fs/http/server/TestHttpFSServer.java | 140 ++- 6 files changed, 479 insertions(+), 4 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/8a4bff02/hadoop-hdfs-project/hadoop-hdfs-httpfs/src/main/java/org/apache/hadoop/fs/http/client/HttpFSFileSystem.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs-httpfs/src/main/java/org/apache/hadoop/fs/http/client/HttpFSFileSystem.java b/hadoop-hdfs-project/hadoop-hdfs-httpfs/src/main/java/org/apache/hadoop/fs/http/client/HttpFSFileSystem.java index d139100..1059a02 100644 --- a/hadoop-hdfs-project/hadoop-hdfs-httpfs/src/main/java/org/apache/hadoop/fs/http/client/HttpFSFileSystem.java +++ b/hadoop-hdfs-project/hadoop-hdfs-httpfs/src/main/java/org/apache/hadoop/fs/http/client/HttpFSFileSystem.java @@ -124,6 +124,8 @@ public class HttpFSFileSystem extends FileSystem public static final String POLICY_NAME_PARAM = "storagepolicy"; public static final String OFFSET_PARAM = "offset"; public static final String LENGTH_PARAM = "length"; + public static final String SNAPSHOT_NAME_PARAM = "snapshotname"; + public static final String OLD_SNAPSHOT_NAME_PARAM = "oldsnapshotname"; public static final Short DEFAULT_PERMISSION = 0755; public static final String ACLSPEC_DEFAULT = ""; @@ -144,6 +146,8 @@ public class HttpFSFileSystem extends FileSystem public static final String UPLOAD_CONTENT_TYPE= "application/octet-stream"; + public static final String SNAPSHOT_JSON = "Path"; + public enum FILE_TYPE { FILE, DIRECTORY, SYMLINK; @@ -229,7 +233,9 @@ public class HttpFSFileSystem extends FileSystem DELETE(HTTP_DELETE), SETXATTR(HTTP_PUT), GETXATTRS(HTTP_GET), REMOVEXATTR(HTTP_PUT), LISTXATTRS(HTTP_GET), LISTSTATUS_BATCH(HTTP_GET), GETALLSTORAGEPOLICY(HTTP_GET), GETSTORAGEPOLICY(HTTP_GET), -SETSTORAGEPOLICY(HTTP_PUT), UNSETSTORAGEPOLICY(HTTP_POST); +SETSTORAGEPOLICY(HTTP_PUT), UNSETSTORAGEPOLICY(HTTP_POST), +CREATESNAPSHOT(HTTP_PUT), DELETESNAPSHOT(HTTP_DELETE), +RENAMESNAPSHOT(HTTP_PUT); private String httpMethod; @@ -1434,4 +1440,43 @@ public class HttpFSFileSystem extends FileSystem Operation.UNSETSTORAGEPOLICY.getMethod(), params, src, true); HttpExceptionUtils.validateResponse(conn, HttpURLConnection.HTTP_OK); } + + @Override + public final Path createSnapshot(Path path, String snapshotName) + throws IOException { +Map params = new HashMap (); +params.put(OP_PARAM, Operation.CREATESNAPSHOT.toString()); +if (snapshotName != null) { + params.put(SNAPSHOT_NAME_PARAM, snapshotName); +} +HttpURLConnection conn = getConnection(Operation.CREATESNAPSHOT.getMethod(), +params, path, true); +HttpExceptionUtils.validateResponse(conn, HttpURLConnection.HTTP_OK); +JSONObject json = (JSONObject) HttpFSUtils.jsonParse(conn); +return new Path((String) json.get(SNAPSHOT_JSON)); + } + + @Override + public void renameSnapshot(Path path, String snapshotOldName, + String snapshotNewName) throws IOException { +Map params = new HashMap (); +params.put(OP_PARAM, Operation.RENAMESNAPSHOT.toString()); +params.put(SNAPSHOT_NAME_PARAM, snapshotNewName); +params.put(OLD_SNAPSHOT_NAME_PARAM, snapshotOldName); +HttpURLConnection conn = getConnection(Operation.RENAMESNAPSHOT.getMethod(), +params, path, true); +HttpExceptionUtils.validateResponse(conn, HttpURLConnection.HTTP_OK); + } + + @Override + public void deleteSnapshot(Path path, String snapshotName) + throws IOException { +Map
[18/50] [abbrv] hadoop git commit: HADOOP-14760. Add missing override to LoadBalancingKMSClientProvider.
HADOOP-14760. Add missing override to LoadBalancingKMSClientProvider. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/07fff43f Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/07fff43f Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/07fff43f Branch: refs/heads/YARN-6592 Commit: 07fff43f4a1e724c83ff8fcc90fac64aa04a39eb Parents: 582648b Author: Xiao ChenAuthored: Fri Aug 11 11:41:16 2017 -0700 Committer: Xiao Chen Committed: Fri Aug 11 11:41:41 2017 -0700 -- .../hadoop/crypto/key/kms/LoadBalancingKMSClientProvider.java| 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/07fff43f/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/crypto/key/kms/LoadBalancingKMSClientProvider.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/crypto/key/kms/LoadBalancingKMSClientProvider.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/crypto/key/kms/LoadBalancingKMSClientProvider.java index 6b20c99..6e010b1 100644 --- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/crypto/key/kms/LoadBalancingKMSClientProvider.java +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/crypto/key/kms/LoadBalancingKMSClientProvider.java @@ -292,7 +292,9 @@ public class LoadBalancingKMSClientProvider extends KeyProvider implements } } - public EncryptedKeyVersion reencryptEncryptedKey(EncryptedKeyVersion ekv) + @Override + public EncryptedKeyVersion reencryptEncryptedKey( + final EncryptedKeyVersion ekv) throws IOException, GeneralSecurityException { try { return doOp(new ProviderCallable() { - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
[06/50] [abbrv] hadoop git commit: YARN-6033. Add support for sections in container-executor configuration file. (Varun Vasudev via wandga)
YARN-6033. Add support for sections in container-executor configuration file. (Varun Vasudev via wandga) Change-Id: Ibc6d2a959debe5d8ff2b51504149742449d1f1da Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/ec694145 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/ec694145 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/ec694145 Branch: refs/heads/YARN-6592 Commit: ec694145cf9c0ade7606813871ca2a4a371def8e Parents: 63cfcb9 Author: Wangda TanAuthored: Wed Aug 9 10:51:29 2017 -0700 Committer: Wangda Tan Committed: Wed Aug 9 10:51:29 2017 -0700 -- .../hadoop-yarn-server-nodemanager/pom.xml | 38 ++ .../src/CMakeLists.txt | 22 + .../container-executor/impl/configuration.c | 672 +-- .../container-executor/impl/configuration.h | 182 +++-- .../impl/container-executor.c | 39 +- .../impl/container-executor.h | 52 +- .../container-executor/impl/get_executable.c| 1 + .../main/native/container-executor/impl/main.c | 17 +- .../main/native/container-executor/impl/util.c | 134 .../main/native/container-executor/impl/util.h | 115 .../test-configurations/configuration-1.cfg | 31 + .../test-configurations/configuration-2.cfg | 28 + .../test/test-configurations/old-config.cfg | 25 + .../test/test-container-executor.c | 15 +- .../test/test_configuration.cc | 432 .../native/container-executor/test/test_main.cc | 29 + .../native/container-executor/test/test_util.cc | 138 17 files changed, 1649 insertions(+), 321 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/ec694145/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/pom.xml -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/pom.xml b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/pom.xml index 28ee0d9..a50a769 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/pom.xml +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/pom.xml @@ -215,6 +215,44 @@ ${project.build.directory}/native-results + +cetest +cmake-test +test + + + cetest + ${project.build.directory}/native/test + ${basedir}/src + ${project.build.directory}/native/test/cetest + +--gtest_filter=-Perf. + --gtest_output=xml:${project.build.directory}/surefire-reports/TEST-cetest.xml + + ${project.build.directory}/surefire-reports + + + + + +org.apache.maven.plugins +maven-antrun-plugin + + +make +compile + + run + + + + + + + + + http://git-wip-us.apache.org/repos/asf/hadoop/blob/ec694145/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/CMakeLists.txt -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/CMakeLists.txt b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/CMakeLists.txt index 5b52536..100d7ca 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/CMakeLists.txt +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/CMakeLists.txt @@ -19,6 +19,9 @@ cmake_minimum_required(VERSION 2.6 FATAL_ERROR) list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/../../../../../hadoop-common-project/hadoop-common) include(HadoopCommon) +# Set gtest path +set(GTEST_SRC_DIR ${CMAKE_SOURCE_DIR}/../../../../../hadoop-common-project/hadoop-common/src/main/native/gtest) + # determine if container-executor.conf.dir is an absolute # path in case the OS we're compiling on doesn't have # a hook in get_executable. We'll use this define @@ -80,12 +83,20 @@ endfunction() include_directories( ${CMAKE_CURRENT_SOURCE_DIR}
[32/50] [abbrv] hadoop git commit: YARN-6996. Change javax.cache library implementation from JSR107 to Apache Geronimo. (Ray Chiang via Subru).
YARN-6996. Change javax.cache library implementation from JSR107 to Apache Geronimo. (Ray Chiang via Subru). Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/18f3603b Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/18f3603b Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/18f3603b Branch: refs/heads/YARN-6592 Commit: 18f3603bce37e0e07c9075811b1179afc2c227eb Parents: e2f6299 Author: Subru KrishnanAuthored: Mon Aug 14 11:10:00 2017 -0700 Committer: Subru Krishnan Committed: Mon Aug 14 11:10:00 2017 -0700 -- hadoop-project/pom.xml | 6 +++--- .../hadoop-yarn-server/hadoop-yarn-server-common/pom.xml | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/18f3603b/hadoop-project/pom.xml -- diff --git a/hadoop-project/pom.xml b/hadoop-project/pom.xml index 6311cd9..8c1d374 100755 --- a/hadoop-project/pom.xml +++ b/hadoop-project/pom.xml @@ -96,7 +96,7 @@ 2.0.0-M21 1.0.0-M33 -1.0.0 +1.0-alpha-1 3.3.1 2.4.12 6.2.1.jre7 @@ -1276,8 +1276,8 @@ 1.0.0 - javax.cache - cache-api + org.apache.geronimo.specs + geronimo-jcache_1.0_spec ${jcache.version} http://git-wip-us.apache.org/repos/asf/hadoop/blob/18f3603b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-common/pom.xml -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-common/pom.xml b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-common/pom.xml index 5f85097..441a574 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-common/pom.xml +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-common/pom.xml @@ -103,8 +103,8 @@ leveldbjni-all - javax.cache - cache-api + org.apache.geronimo.specs + geronimo-jcache_1.0_spec org.ehcache - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
[15/50] [abbrv] hadoop git commit: HADOOP-14754. TestCommonConfigurationFields failed: core-default.xml has 2 wasb properties missing in classes. Contributed by John Zhuge.
HADOOP-14754. TestCommonConfigurationFields failed: core-default.xml has 2 wasb properties missing in classes. Contributed by John Zhuge. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/d964062f Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/d964062f Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/d964062f Branch: refs/heads/YARN-6592 Commit: d964062f66c0772f4b1a029bfcdff921fbaaf91c Parents: f13ca94 Author: Steve LoughranAuthored: Fri Aug 11 10:18:17 2017 +0100 Committer: Steve Loughran Committed: Fri Aug 11 10:18:17 2017 +0100 -- .../org/apache/hadoop/conf/TestCommonConfigurationFields.java | 6 ++ 1 file changed, 6 insertions(+) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/d964062f/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/conf/TestCommonConfigurationFields.java -- diff --git a/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/conf/TestCommonConfigurationFields.java b/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/conf/TestCommonConfigurationFields.java index da37e68..d0e0a35 100644 --- a/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/conf/TestCommonConfigurationFields.java +++ b/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/conf/TestCommonConfigurationFields.java @@ -103,6 +103,12 @@ public class TestCommonConfigurationFields extends TestConfigurationFieldsBase { xmlPrefixToSkipCompare.add("fs.s3n."); xmlPrefixToSkipCompare.add("s3native."); +// WASB properties are in a different subtree. +// - org.apache.hadoop.fs.azure.NativeAzureFileSystem +xmlPrefixToSkipCompare.add("fs.wasb.impl"); +xmlPrefixToSkipCompare.add("fs.wasbs.impl"); +xmlPrefixToSkipCompare.add("fs.azure."); + // ADL properties are in a different subtree // - org.apache.hadoop.hdfs.web.ADLConfKeys xmlPrefixToSkipCompare.add("adl."); - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
[25/50] [abbrv] hadoop git commit: YARN-6896. Federation: routing REST invocations transparently to multiple RMs (part 1 - basic execution). (Contributed by Giovanni Matteo Fumarola via curino)
YARN-6896. Federation: routing REST invocations transparently to multiple RMs (part 1 - basic execution). (Contributed by Giovanni Matteo Fumarola via curino) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/cc59b5fb Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/cc59b5fb Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/cc59b5fb Branch: refs/heads/YARN-6592 Commit: cc59b5fb26ccf58dffcd8850fa12ec65250f127d Parents: 0996acd Author: Carlo CurinoAuthored: Fri Aug 11 15:58:01 2017 -0700 Committer: Carlo Curino Committed: Fri Aug 11 15:58:01 2017 -0700 -- .../hadoop/yarn/conf/YarnConfiguration.java | 10 + .../yarn/conf/TestYarnConfigurationFields.java | 2 + .../webapp/DefaultRequestInterceptorREST.java | 16 +- .../webapp/FederationInterceptorREST.java | 750 +++ .../webapp/BaseRouterWebServicesTest.java | 37 +- .../MockDefaultRequestInterceptorREST.java | 136 .../webapp/TestFederationInterceptorREST.java | 379 ++ .../TestFederationInterceptorRESTRetry.java | 274 +++ .../TestableFederationInterceptorREST.java | 54 ++ .../src/site/markdown/Federation.md | 2 +- 10 files changed, 1646 insertions(+), 14 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/cc59b5fb/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/src/main/java/org/apache/hadoop/yarn/conf/YarnConfiguration.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/src/main/java/org/apache/hadoop/yarn/conf/YarnConfiguration.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/src/main/java/org/apache/hadoop/yarn/conf/YarnConfiguration.java index cd4d569..8acaef8 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/src/main/java/org/apache/hadoop/yarn/conf/YarnConfiguration.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/src/main/java/org/apache/hadoop/yarn/conf/YarnConfiguration.java @@ -2721,6 +2721,16 @@ public class YarnConfiguration extends Configuration { "org.apache.hadoop.yarn.server.router.webapp." + "DefaultRequestInterceptorREST"; + /** + * The interceptor class used in FederationInterceptorREST to communicate with + * each SubCluster. + */ + public static final String ROUTER_WEBAPP_DEFAULT_INTERCEPTOR_CLASS = + ROUTER_WEBAPP_PREFIX + "default-interceptor-class"; + public static final String DEFAULT_ROUTER_WEBAPP_DEFAULT_INTERCEPTOR_CLASS = + "org.apache.hadoop.yarn.server.router.webapp." + + "DefaultRequestInterceptorREST"; + // Other Configs http://git-wip-us.apache.org/repos/asf/hadoop/blob/cc59b5fb/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/src/test/java/org/apache/hadoop/yarn/conf/TestYarnConfigurationFields.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/src/test/java/org/apache/hadoop/yarn/conf/TestYarnConfigurationFields.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/src/test/java/org/apache/hadoop/yarn/conf/TestYarnConfigurationFields.java index b9ad31a..91a8b0a 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/src/test/java/org/apache/hadoop/yarn/conf/TestYarnConfigurationFields.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/src/test/java/org/apache/hadoop/yarn/conf/TestYarnConfigurationFields.java @@ -81,6 +81,8 @@ public class TestYarnConfigurationFields extends TestConfigurationFieldsBase { .add(YarnConfiguration.ROUTER_CLIENTRM_ADDRESS); configurationPropsToSkipCompare .add(YarnConfiguration.ROUTER_RMADMIN_ADDRESS); +configurationPropsToSkipCompare +.add(YarnConfiguration.ROUTER_WEBAPP_DEFAULT_INTERCEPTOR_CLASS); // Federation policies configs to be ignored configurationPropsToSkipCompare http://git-wip-us.apache.org/repos/asf/hadoop/blob/cc59b5fb/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-router/src/main/java/org/apache/hadoop/yarn/server/router/webapp/DefaultRequestInterceptorREST.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-router/src/main/java/org/apache/hadoop/yarn/server/router/webapp/DefaultRequestInterceptorREST.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-router/src/main/java/org/apache/hadoop/yarn/server/router/webapp/DefaultRequestInterceptorREST.java index aa8e3eb..abd8ca6 100644 ---
[16/50] [abbrv] hadoop git commit: HADOOP-10392. Use FileSystem#makeQualified(Path) instead of Path#makeQualified(FileSystem) (ajisakaa via aw)
HADOOP-10392. Use FileSystem#makeQualified(Path) instead of Path#makeQualified(FileSystem) (ajisakaa via aw) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/4222c971 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/4222c971 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/4222c971 Branch: refs/heads/YARN-6592 Commit: 4222c971080f2b150713727092c7197df58c88e5 Parents: d964062 Author: Allen WittenauerAuthored: Fri Aug 11 09:25:56 2017 -0700 Committer: Allen Wittenauer Committed: Fri Aug 11 09:25:56 2017 -0700 -- .../java/org/apache/hadoop/fs/FileUtil.java | 4 +-- .../org/apache/hadoop/fs/ftp/FTPFileSystem.java | 4 +-- .../java/org/apache/hadoop/io/SequenceFile.java | 2 +- .../apache/hadoop/fs/TestLocalFileSystem.java | 6 ++--- .../java/org/apache/hadoop/io/FileBench.java| 2 +- .../mapred/MiniMRClientClusterFactory.java | 4 +-- .../mapred/TestCombineFileInputFormat.java | 6 ++--- .../TestCombineSequenceFileInputFormat.java | 7 +++-- .../mapred/TestCombineTextInputFormat.java | 7 +++-- .../mapred/TestConcatenatedCompressedInput.java | 6 ++--- .../org/apache/hadoop/mapred/TestMapRed.java| 4 +-- .../hadoop/mapred/TestMiniMRChildTask.java | 4 +-- .../hadoop/mapred/TestTextInputFormat.java | 8 +++--- .../TestWrappedRecordReaderClassloader.java | 4 +-- .../lib/join/TestWrappedRRClassloader.java | 4 +-- .../mapreduce/util/MRAsyncDiskService.java | 2 +- .../apache/hadoop/mapreduce/v2/TestMRJobs.java | 4 +-- .../v2/TestMRJobsWithHistoryService.java| 4 +-- .../org/apache/hadoop/tools/HadoopArchives.java | 2 +- .../apache/hadoop/mapred/gridmix/Gridmix.java | 2 +- .../hadoop/mapred/gridmix/PseudoLocalFs.java| 8 +- .../hadoop/mapred/gridmix/TestFilePool.java | 4 +-- .../hadoop/mapred/gridmix/TestFileQueue.java| 8 +++--- .../mapred/gridmix/TestPseudoLocalFs.java | 2 +- .../hadoop/mapred/gridmix/TestUserResolve.java | 4 +-- .../hadoop/fs/swift/util/SwiftTestUtils.java| 2 +- .../fs/swift/SwiftFileSystemBaseTest.java | 2 +- .../TestSwiftFileSystemPartitionedUploads.java | 4 +-- .../hadoop/tools/rumen/TestHistograms.java | 6 ++--- .../org/apache/hadoop/streaming/StreamJob.java | 27 ++-- 30 files changed, 78 insertions(+), 75 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/4222c971/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/FileUtil.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/FileUtil.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/FileUtil.java index eb8a5c3..72b9615 100644 --- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/FileUtil.java +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/FileUtil.java @@ -295,8 +295,8 @@ public class FileUtil { Path dst) throws IOException { if (srcFS == dstFS) { - String srcq = src.makeQualified(srcFS).toString() + Path.SEPARATOR; - String dstq = dst.makeQualified(dstFS).toString() + Path.SEPARATOR; + String srcq = srcFS.makeQualified(src).toString() + Path.SEPARATOR; + String dstq = dstFS.makeQualified(dst).toString() + Path.SEPARATOR; if (dstq.startsWith(srcq)) { if (srcq.length() == dstq.length()) { throw new IOException("Cannot copy " + src + " to itself."); http://git-wip-us.apache.org/repos/asf/hadoop/blob/4222c971/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/ftp/FTPFileSystem.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/ftp/FTPFileSystem.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/ftp/FTPFileSystem.java index 4c1236b..644cf4e 100644 --- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/ftp/FTPFileSystem.java +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/ftp/FTPFileSystem.java @@ -505,7 +505,7 @@ public class FTPFileSystem extends FileSystem { long modTime = -1; // Modification time of root dir not known. Path root = new Path("/"); return new FileStatus(length, isDir, blockReplication, blockSize, - modTime, root.makeQualified(this)); + modTime, this.makeQualified(root)); } String pathName = parentPath.toUri().getPath(); FTPFile[] ftpFiles = client.listFiles(pathName); @@ -546,7
[42/50] [abbrv] hadoop git commit: HADOOP-14726. Mark FileStatus::isDir as final
HADOOP-14726. Mark FileStatus::isDir as final Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/645a8f2a Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/645a8f2a Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/645a8f2a Branch: refs/heads/YARN-6592 Commit: 645a8f2a4d09acb5a21820f52ee78784d9e4cc8a Parents: 4d7be1d Author: Chris DouglasAuthored: Mon Aug 14 21:57:20 2017 -0700 Committer: Chris Douglas Committed: Mon Aug 14 21:57:20 2017 -0700 -- .../java/org/apache/hadoop/fs/FileStatus.java| 19 +-- .../hadoop/fs/viewfs/ViewFsFileStatus.java | 8 +--- .../fs/viewfs/ViewFsLocatedFileStatus.java | 6 -- .../hadoop/hdfs/protocolPB/PBHelperClient.java | 2 +- .../apache/hadoop/hdfs/nfs/nfs3/Nfs3Utils.java | 6 -- .../hadoop/hdfs/nfs/nfs3/RpcProgramNfs3.java | 8 .../apache/hadoop/hdfs/server/mover/Mover.java | 2 +- .../hdfs/server/namenode/NamenodeFsck.java | 4 ++-- .../hadoop/hdfs/TestDFSUpgradeFromImage.java | 3 +-- .../hdfs/server/mover/TestStorageMover.java | 2 +- .../hadoop/hdfs/server/namenode/TestStartup.java | 4 ++-- .../server/namenode/ha/TestEditLogTailer.java| 4 ++-- .../namenode/ha/TestFailureToReadEdits.java | 6 +++--- .../namenode/ha/TestInitializeSharedEdits.java | 2 +- .../lib/input/TestCombineFileInputFormat.java| 2 +- .../azure/TestOutOfBandAzureBlobOperations.java | 8 .../hadoop/fs/swift/snative/SwiftFileStatus.java | 16 .../snative/SwiftNativeFileSystemStore.java | 4 ++-- .../fs/swift/TestSwiftFileSystemDirectories.java | 4 ++-- .../TestSwiftFileSystemPartitionedUploads.java | 2 +- 20 files changed, 46 insertions(+), 66 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/645a8f2a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/FileStatus.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/FileStatus.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/FileStatus.java index 2f22ea0..8575439 100644 --- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/FileStatus.java +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/FileStatus.java @@ -172,7 +172,7 @@ public class FileStatus implements Writable, Comparable, * @return true if this is a file */ public boolean isFile() { -return !isdir && !isSymlink(); +return !isDirectory() && !isSymlink(); } /** @@ -182,20 +182,20 @@ public class FileStatus implements Writable, Comparable, public boolean isDirectory() { return isdir; } - + /** - * Old interface, instead use the explicit {@link FileStatus#isFile()}, - * {@link FileStatus#isDirectory()}, and {@link FileStatus#isSymlink()} + * Old interface, instead use the explicit {@link FileStatus#isFile()}, + * {@link FileStatus#isDirectory()}, and {@link FileStatus#isSymlink()} * @return true if this is a directory. - * @deprecated Use {@link FileStatus#isFile()}, - * {@link FileStatus#isDirectory()}, and {@link FileStatus#isSymlink()} + * @deprecated Use {@link FileStatus#isFile()}, + * {@link FileStatus#isDirectory()}, and {@link FileStatus#isSymlink()} * instead. */ @Deprecated - public boolean isDir() { -return isdir; + public final boolean isDir() { +return isDirectory(); } - + /** * Is this a symbolic link? * @return true if this is a symbolic link @@ -448,7 +448,6 @@ public class FileStatus implements Writable, Comparable, FileStatus other = PBHelper.convert(proto); isdir = other.isDirectory(); length = other.getLen(); -isdir = other.isDirectory(); block_replication = other.getReplication(); blocksize = other.getBlockSize(); modification_time = other.getModificationTime(); http://git-wip-us.apache.org/repos/asf/hadoop/blob/645a8f2a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/viewfs/ViewFsFileStatus.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/viewfs/ViewFsFileStatus.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/viewfs/ViewFsFileStatus.java index e0f62e4..ce03ced 100644 --- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/viewfs/ViewFsFileStatus.java +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/viewfs/ViewFsFileStatus.java @@ -61,13 +61,7 @@ class ViewFsFileStatus extends FileStatus {
[23/50] [abbrv] hadoop git commit: YARN-6967. Limit application attempt's diagnostic message size thoroughly (Contributed by Chengbing Liu via Daniel Templeton)
YARN-6967. Limit application attempt's diagnostic message size thoroughly (Contributed by Chengbing Liu via Daniel Templeton) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/65364def Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/65364def Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/65364def Branch: refs/heads/YARN-6592 Commit: 65364defb4a633ca20b39ebc38cd9c0db63a5835 Parents: c7680d4 Author: Daniel TempletonAuthored: Fri Aug 11 14:28:55 2017 -0700 Committer: Daniel Templeton Committed: Fri Aug 11 14:28:55 2017 -0700 -- .../rmapp/attempt/RMAppAttemptImpl.java | 16 1 file changed, 8 insertions(+), 8 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/65364def/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/rmapp/attempt/RMAppAttemptImpl.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/rmapp/attempt/RMAppAttemptImpl.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/rmapp/attempt/RMAppAttemptImpl.java index 4210c54..254768b 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/rmapp/attempt/RMAppAttemptImpl.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/rmapp/attempt/RMAppAttemptImpl.java @@ -1315,7 +1315,7 @@ public class RMAppAttemptImpl implements RMAppAttempt, Recoverable { // AFTER the initial saving on app-attempt-start // These fields can be visible from outside only after they are saved in // StateStore -String diags = null; +BoundedAppender diags = new BoundedAppender(diagnostics.limit); // don't leave the tracking URL pointing to a non-existent AM if (conf.getBoolean(YarnConfiguration.APPLICATION_HISTORY_ENABLED, @@ -1329,15 +1329,15 @@ public class RMAppAttemptImpl implements RMAppAttempt, Recoverable { int exitStatus = ContainerExitStatus.INVALID; switch (event.getType()) { case LAUNCH_FAILED: - diags = event.getDiagnosticMsg(); + diags.append(event.getDiagnosticMsg()); break; case REGISTERED: - diags = getUnexpectedAMRegisteredDiagnostics(); + diags.append(getUnexpectedAMRegisteredDiagnostics()); break; case UNREGISTERED: RMAppAttemptUnregistrationEvent unregisterEvent = (RMAppAttemptUnregistrationEvent) event; - diags = unregisterEvent.getDiagnosticMsg(); + diags.append(unregisterEvent.getDiagnosticMsg()); // reset finalTrackingUrl to url sent by am finalTrackingUrl = sanitizeTrackingUrl(unregisterEvent.getFinalTrackingUrl()); finalStatus = unregisterEvent.getFinalApplicationStatus(); @@ -1345,16 +1345,16 @@ public class RMAppAttemptImpl implements RMAppAttempt, Recoverable { case CONTAINER_FINISHED: RMAppAttemptContainerFinishedEvent finishEvent = (RMAppAttemptContainerFinishedEvent) event; - diags = getAMContainerCrashedDiagnostics(finishEvent); + diags.append(getAMContainerCrashedDiagnostics(finishEvent)); exitStatus = finishEvent.getContainerStatus().getExitStatus(); break; case KILL: break; case FAIL: - diags = event.getDiagnosticMsg(); + diags.append(event.getDiagnosticMsg()); break; case EXPIRE: - diags = getAMExpiredDiagnostics(event); + diags.append(getAMExpiredDiagnostics(event)); break; default: break; @@ -1368,7 +1368,7 @@ public class RMAppAttemptImpl implements RMAppAttempt, Recoverable { ApplicationAttemptStateData.newInstance( applicationAttemptId, getMasterContainer(), rmStore.getCredentialsFromAppAttempt(this), -startTime, stateToBeStored, finalTrackingUrl, diags, +startTime, stateToBeStored, finalTrackingUrl, diags.toString(), finalStatus, exitStatus, getFinishTime(), resUsage.getMemorySeconds(), resUsage.getVcoreSeconds(), - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
[36/50] [abbrv] hadoop git commit: YARN-6987. Log app attempt during InvalidStateTransition. Contributed by Jonathan Eagles
YARN-6987. Log app attempt during InvalidStateTransition. Contributed by Jonathan Eagles Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/3325ef65 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/3325ef65 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/3325ef65 Branch: refs/heads/YARN-6592 Commit: 3325ef653d6f364a82dd32485d9ef6d987380ce3 Parents: 6b09c32 Author: Jason LoweAuthored: Mon Aug 14 14:40:08 2017 -0500 Committer: Jason Lowe Committed: Mon Aug 14 14:40:08 2017 -0500 -- .../hadoop/yarn/server/resourcemanager/rmapp/RMAppImpl.java | 3 ++- .../server/resourcemanager/rmapp/attempt/RMAppAttemptImpl.java| 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/3325ef65/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/rmapp/RMAppImpl.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/rmapp/RMAppImpl.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/rmapp/RMAppImpl.java index fa2f20c..03be793 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/rmapp/RMAppImpl.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/rmapp/RMAppImpl.java @@ -888,7 +888,8 @@ public class RMAppImpl implements RMApp, Recoverable { /* keep the master in sync with the state machine */ this.stateMachine.doTransition(event.getType(), event); } catch (InvalidStateTransitionException e) { -LOG.error("Can't handle this event at current state", e); +LOG.error("App: " + appID ++ " can't handle this event at current state", e); /* TODO fail the application on the failed transition */ } http://git-wip-us.apache.org/repos/asf/hadoop/blob/3325ef65/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/rmapp/attempt/RMAppAttemptImpl.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/rmapp/attempt/RMAppAttemptImpl.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/rmapp/attempt/RMAppAttemptImpl.java index 254768b..7d453bd 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/rmapp/attempt/RMAppAttemptImpl.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/rmapp/attempt/RMAppAttemptImpl.java @@ -911,7 +911,8 @@ public class RMAppAttemptImpl implements RMAppAttempt, Recoverable { /* keep the master in sync with the state machine */ this.stateMachine.doTransition(event.getType(), event); } catch (InvalidStateTransitionException e) { -LOG.error("Can't handle this event at current state", e); +LOG.error("App attempt: " + appAttemptID ++ " can't handle this event at current state", e); /* TODO fail the application on the failed transition */ } - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
[26/50] [abbrv] hadoop git commit: YARN-6687. Validate that the duration of the periodic reservation is less than the periodicity. (subru via curino)
YARN-6687. Validate that the duration of the periodic reservation is less than the periodicity. (subru via curino) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/28d97b79 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/28d97b79 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/28d97b79 Branch: refs/heads/YARN-6592 Commit: 28d97b79b69bb2be02d9320105e155eeed6f9e78 Parents: cc59b5f Author: Carlo CurinoAuthored: Fri Aug 11 16:58:04 2017 -0700 Committer: Carlo Curino Committed: Fri Aug 11 16:58:04 2017 -0700 -- .../reservation/ReservationInputValidator.java | 18 ++-- .../TestReservationInputValidator.java | 93 2 files changed, 106 insertions(+), 5 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/28d97b79/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationInputValidator.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationInputValidator.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationInputValidator.java index 0e9a825..027d066 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationInputValidator.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationInputValidator.java @@ -129,11 +129,12 @@ public class ReservationInputValidator { Resources.multiply(rr.getCapability(), rr.getConcurrency())); } // verify the allocation is possible (skip for ANY) -if (contract.getDeadline() - contract.getArrival() < minDuration +long duration = contract.getDeadline() - contract.getArrival(); +if (duration < minDuration && type != ReservationRequestInterpreter.R_ANY) { message = "The time difference (" - + (contract.getDeadline() - contract.getArrival()) + + (duration) + ") between arrival (" + contract.getArrival() + ") " + "and deadline (" + contract.getDeadline() + ") must " + " be greater or equal to the minimum resource duration (" @@ -158,15 +159,22 @@ public class ReservationInputValidator { // check that the recurrence is a positive long value. String recurrenceExpression = contract.getRecurrenceExpression(); try { - Long recurrence = Long.parseLong(recurrenceExpression); + long recurrence = Long.parseLong(recurrenceExpression); if (recurrence < 0) { message = "Negative Period : " + recurrenceExpression + ". Please try" -+ " again with a non-negative long value as period"; ++ " again with a non-negative long value as period."; +throw RPCUtil.getRemoteException(message); + } + // verify duration is less than recurrence for periodic reservations + if (recurrence > 0 && duration > recurrence) { +message = "Duration of the requested reservation: " + duration ++ " is greater than the recurrence: " + recurrence ++ ". Please try again with a smaller duration."; throw RPCUtil.getRemoteException(message); } } catch (NumberFormatException e) { message = "Invalid period " + recurrenceExpression + ". Please try" - + " again with a non-negative long value as period"; + + " again with a non-negative long value as period."; throw RPCUtil.getRemoteException(message); } } http://git-wip-us.apache.org/repos/asf/hadoop/blob/28d97b79/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/reservation/TestReservationInputValidator.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/reservation/TestReservationInputValidator.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/reservation/TestReservationInputValidator.java index 2917cd9..90a681d 100644
[35/50] [abbrv] hadoop git commit: YARN-6881. LOG is unused in AllocationConfiguration (Contributed by weiyuan via Daniel Templeton)
YARN-6881. LOG is unused in AllocationConfiguration (Contributed by weiyuan via Daniel Templeton) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/6b09c327 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/6b09c327 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/6b09c327 Branch: refs/heads/YARN-6592 Commit: 6b09c327057947049ef7984afbb5ed225f15fc2d Parents: 608a06c Author: Daniel TempletonAuthored: Mon Aug 14 11:55:33 2017 -0700 Committer: Daniel Templeton Committed: Mon Aug 14 11:55:33 2017 -0700 -- .../resourcemanager/scheduler/fair/AllocationConfiguration.java | 3 --- 1 file changed, 3 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/6b09c327/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/AllocationConfiguration.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/AllocationConfiguration.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/AllocationConfiguration.java index f143aa6..71e6f7f 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/AllocationConfiguration.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/AllocationConfiguration.java @@ -23,8 +23,6 @@ import java.util.HashSet; import java.util.Map; import java.util.Set; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.security.authorize.AccessControlList; import org.apache.hadoop.yarn.api.records.QueueACL; @@ -41,7 +39,6 @@ import org.apache.hadoop.yarn.util.resource.Resources; import com.google.common.annotations.VisibleForTesting; public class AllocationConfiguration extends ReservationSchedulerConfiguration { - private static final Log LOG = LogFactory.getLog(FSQueue.class.getName()); private static final AccessControlList EVERYBODY_ACL = new AccessControlList("*"); private static final AccessControlList NOBODY_ACL = new AccessControlList(" "); private static final ResourceCalculator RESOURCE_CALCULATOR = - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
[07/50] [abbrv] hadoop git commit: HDFS-12278. LeaseManager operations are inefficient in 2.8. Contributed by Rushabh S Shah.
HDFS-12278. LeaseManager operations are inefficient in 2.8. Contributed by Rushabh S Shah. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/b5c02f95 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/b5c02f95 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/b5c02f95 Branch: refs/heads/YARN-6592 Commit: b5c02f95b5a2fcb8931d4a86f8192caa18009ea9 Parents: ec69414 Author: Kihwal LeeAuthored: Wed Aug 9 16:46:05 2017 -0500 Committer: Kihwal Lee Committed: Wed Aug 9 16:46:05 2017 -0500 -- .../hadoop/hdfs/server/namenode/LeaseManager.java | 18 -- 1 file changed, 12 insertions(+), 6 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/b5c02f95/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/LeaseManager.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/LeaseManager.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/LeaseManager.java index 6578ba9..35ec063 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/LeaseManager.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/LeaseManager.java @@ -26,10 +26,11 @@ import java.util.Collections; import java.util.Comparator; import java.util.HashSet; import java.util.List; -import java.util.PriorityQueue; +import java.util.NavigableSet; import java.util.Set; import java.util.SortedMap; import java.util.TreeMap; +import java.util.TreeSet; import java.util.concurrent.Callable; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; @@ -87,11 +88,15 @@ public class LeaseManager { // Mapping: leaseHolder -> Lease private final SortedMap leases = new TreeMap<>(); // Set of: Lease - private final PriorityQueue sortedLeases = new PriorityQueue<>(512, + private final NavigableSet sortedLeases = new TreeSet<>( new Comparator() { @Override public int compare(Lease o1, Lease o2) { - return Long.signum(o1.getLastUpdate() - o2.getLastUpdate()); + if (o1.getLastUpdate() != o2.getLastUpdate()) { +return Long.signum(o1.getLastUpdate() - o2.getLastUpdate()); + } else { +return o1.holder.compareTo(o2.holder); + } } }); // INodeID -> Lease @@ -528,9 +533,10 @@ public class LeaseManager { long start = monotonicNow(); -while(!sortedLeases.isEmpty() && sortedLeases.peek().expiredHardLimit() - && !isMaxLockHoldToReleaseLease(start)) { - Lease leaseToCheck = sortedLeases.peek(); +while(!sortedLeases.isEmpty() && +sortedLeases.first().expiredHardLimit() +&& !isMaxLockHoldToReleaseLease(start)) { + Lease leaseToCheck = sortedLeases.first(); LOG.info(leaseToCheck + " has expired hard limit"); final List removing = new ArrayList<>(); - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
[05/50] [abbrv] hadoop git commit: YARN-6033. Add support for sections in container-executor configuration file. (Varun Vasudev via wandga)
http://git-wip-us.apache.org/repos/asf/hadoop/blob/ec694145/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/test/test_configuration.cc -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/test/test_configuration.cc b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/test/test_configuration.cc new file mode 100644 index 000..6ee0ab2 --- /dev/null +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/test/test_configuration.cc @@ -0,0 +1,432 @@ +/** + * 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. + */ + +#include +#include + +extern "C" { +#include "util.h" +#include "configuration.h" +#include "configuration.c" +} + + +namespace ContainerExecutor { + class TestConfiguration : public ::testing::Test { + protected: +virtual void SetUp() { + new_config_format_file = "test-configurations/configuration-1.cfg"; + old_config_format_file = "test-configurations/old-config.cfg"; + mixed_config_format_file = "test-configurations/configuration-2.cfg"; + loadConfigurations(); + return; +} + +void loadConfigurations() { + int ret = 0; + ret = read_config(new_config_format_file.c_str(), _config_format); + ASSERT_EQ(0, ret); + ret = read_config(old_config_format_file.c_str(), _config_format); + ASSERT_EQ(0, ret); + ret = read_config(mixed_config_format_file.c_str(), +_config_format); + ASSERT_EQ(0, ret); +} + +virtual void TearDown() { + free_configuration(_config_format); + free_configuration(_config_format); + return; +} + +std::string new_config_format_file; +std::string old_config_format_file; +std::string mixed_config_format_file; +struct configuration new_config_format; +struct configuration old_config_format; +struct configuration mixed_config_format; + }; + + + TEST_F(TestConfiguration, test_get_configuration_values_delimiter) { +char **split_values; +split_values = get_configuration_values_delimiter(NULL, "", _config_format, "%"); +ASSERT_EQ(NULL, split_values); +split_values = get_configuration_values_delimiter("yarn.local.dirs", NULL, + _config_format, "%"); +ASSERT_EQ(NULL, split_values); +split_values = get_configuration_values_delimiter("yarn.local.dirs", "", + NULL, "%"); +ASSERT_EQ(NULL, split_values); +split_values = get_configuration_values_delimiter("yarn.local.dirs", "", + _config_format, NULL); +ASSERT_EQ(NULL, split_values); +split_values = get_configuration_values_delimiter("yarn.local.dirs", "abcd", + _config_format, "%"); +ASSERT_EQ(NULL, split_values); +split_values = get_configuration_values_delimiter("yarn.local.dirs", "", + _config_format, "%"); +ASSERT_STREQ("/var/run/yarn", split_values[0]); +ASSERT_STREQ("/tmp/mydir", split_values[1]); +ASSERT_EQ(NULL, split_values[2]); +free(split_values); +split_values = get_configuration_values_delimiter("allowed.system.users", + "", _config_format, "%"); +ASSERT_STREQ("nobody,daemon", split_values[0]); +ASSERT_EQ(NULL, split_values[1]); +free(split_values); + } + + TEST_F(TestConfiguration, test_get_configuration_values) { +char **split_values; +split_values = get_configuration_values(NULL, "", _config_format); +ASSERT_EQ(NULL, split_values); +split_values = get_configuration_values("yarn.local.dirs", NULL, _config_format); +ASSERT_EQ(NULL, split_values); +split_values = get_configuration_values("yarn.local.dirs", "", NULL); +ASSERT_EQ(NULL, split_values); +split_values = get_configuration_values("yarn.local.dirs", "abcd", _config_format); +ASSERT_EQ(NULL, split_values); +split_values =
[41/50] [abbrv] hadoop git commit: YARN-5978. ContainerScheduler and ContainerManager changes to support ExecType update. (Kartheek Muthyala via asuresh)
YARN-5978. ContainerScheduler and ContainerManager changes to support ExecType update. (Kartheek Muthyala via asuresh) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/4d7be1d8 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/4d7be1d8 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/4d7be1d8 Branch: refs/heads/YARN-6592 Commit: 4d7be1d8575e9254c59d41460960708e3718503a Parents: 0446511 Author: Arun SureshAuthored: Mon Aug 14 19:46:17 2017 -0700 Committer: Arun Suresh Committed: Mon Aug 14 19:46:17 2017 -0700 -- .../yarn/client/api/impl/TestAMRMClient.java| 395 +-- .../yarn/client/api/impl/TestNMClient.java | 7 +- .../containermanager/ContainerManagerImpl.java | 132 --- .../containermanager/container/Container.java | 4 +- .../container/ContainerImpl.java| 37 +- .../monitor/ContainersMonitorImpl.java | 15 - .../scheduler/ContainerScheduler.java | 73 .../scheduler/ContainerSchedulerEventType.java | 1 + .../UpdateContainerSchedulerEvent.java | 85 .../nodemanager/TestNodeManagerResync.java | 11 +- .../BaseContainerManagerTest.java | 33 +- .../containermanager/TestContainerManager.java | 267 - .../TestContainerManagerRecovery.java | 2 +- .../TestContainerSchedulerQueuing.java | 96 + .../nodemanager/webapp/MockContainer.java | 2 +- .../scheduler/SchedulerApplicationAttempt.java | 2 +- .../security/RMContainerTokenSecretManager.java | 30 +- 17 files changed, 964 insertions(+), 228 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/4d7be1d8/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/api/impl/TestAMRMClient.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/api/impl/TestAMRMClient.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/api/impl/TestAMRMClient.java index 1b2bca3..09b12f2 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/api/impl/TestAMRMClient.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/api/impl/TestAMRMClient.java @@ -19,6 +19,7 @@ package org.apache.hadoop.yarn.client.api.impl; import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; import static org.mockito.Matchers.any; @@ -36,6 +37,7 @@ import java.util.HashMap; import java.util.HashSet; import java.util.Iterator; import java.util.List; +import java.util.Map; import java.util.Set; import java.util.TreeSet; @@ -142,6 +144,10 @@ public class TestAMRMClient { // set the minimum allocation so that resource decrease can go under 1024 conf.setInt(YarnConfiguration.RM_SCHEDULER_MINIMUM_ALLOCATION_MB, 512); conf.setLong(YarnConfiguration.NM_LOG_RETAIN_SECONDS, 1); +conf.setBoolean( +YarnConfiguration.OPPORTUNISTIC_CONTAINER_ALLOCATION_ENABLED, true); +conf.setInt( +YarnConfiguration.NM_OPPORTUNISTIC_CONTAINERS_MAX_QUEUE_LENGTH, 10); yarnCluster = new MiniYARNCluster(TestAMRMClient.class.getName(), nodeCount, 1, 1); yarnCluster.init(conf); yarnCluster.start(); @@ -924,8 +930,8 @@ public class TestAMRMClient { // add exp=x to ANY client.addContainerRequest(new ContainerRequest(Resource.newInstance(1024, 1), null, null, Priority.UNDEFINED, true, "x")); -Assert.assertEquals(1, client.ask.size()); -Assert.assertEquals("x", client.ask.iterator().next() +assertEquals(1, client.ask.size()); +assertEquals("x", client.ask.iterator().next() .getNodeLabelExpression()); // add exp=x then add exp=a to ANY in same priority, only exp=a should kept @@ -933,8 +939,8 @@ public class TestAMRMClient { 1), null, null, Priority.UNDEFINED, true, "x")); client.addContainerRequest(new ContainerRequest(Resource.newInstance(1024, 1), null, null, Priority.UNDEFINED, true, "a")); -Assert.assertEquals(1, client.ask.size()); -Assert.assertEquals("a", client.ask.iterator().next() +assertEquals(1, client.ask.size()); +assertEquals("a", client.ask.iterator().next() .getNodeLabelExpression()); // add exp=x to ANY, rack and node, only resource request has ANY resource @@ -943,10 +949,10 @@ public class TestAMRMClient { client.addContainerRequest(new
[47/50] [abbrv] hadoop git commit: YARN-7014. Fix off-by-one error causing heap corruption (Jason Lowe via nroberts)
YARN-7014. Fix off-by-one error causing heap corruption (Jason Lowe via nroberts) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/d2654590 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/d2654590 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/d2654590 Branch: refs/heads/YARN-6592 Commit: d265459024b8e5f5eccf421627f684ca8f162112 Parents: dadb0c2 Author: Nathan RobertsAuthored: Tue Aug 15 15:52:48 2017 -0500 Committer: Nathan Roberts Committed: Tue Aug 15 15:52:48 2017 -0500 -- .../src/main/native/container-executor/impl/utils/string-utils.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/d2654590/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/impl/utils/string-utils.c -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/impl/utils/string-utils.c b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/impl/utils/string-utils.c index 703d484..063df7e 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/impl/utils/string-utils.c +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/impl/utils/string-utils.c @@ -44,8 +44,7 @@ int validate_container_id(const char* input) { * container_e17_1410901177871_0001_01_05 * container_1410901177871_0001_01_05 */ - char* input_cpy = malloc(strlen(input)); - strcpy(input_cpy, input); + char* input_cpy = strdup(input); char* p = strtok(input_cpy, "_"); int idx = 0; while (p != NULL) { - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
[49/50] [abbrv] hadoop git commit: HADOOP-14773. Extend ZKCuratorManager API for more reusability. (Íñigo Goiri via Subru).
HADOOP-14773. Extend ZKCuratorManager API for more reusability. (Ãñigo Goiri via Subru). Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/75dd866b Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/75dd866b Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/75dd866b Branch: refs/heads/YARN-6592 Commit: 75dd866bfb8b63cb9f13179d4365b05c48e0907d Parents: f34646d Author: Subru KrishnanAuthored: Tue Aug 15 16:53:59 2017 -0700 Committer: Subru Krishnan Committed: Tue Aug 15 16:53:59 2017 -0700 -- .../hadoop/util/curator/ZKCuratorManager.java | 54 ++-- .../util/curator/TestZKCuratorManager.java | 2 +- .../recovery/ZKRMStateStore.java| 19 +-- 3 files changed, 52 insertions(+), 23 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/75dd866b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/curator/ZKCuratorManager.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/curator/ZKCuratorManager.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/curator/ZKCuratorManager.java index 3adf028..9a031af 100644 --- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/curator/ZKCuratorManager.java +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/curator/ZKCuratorManager.java @@ -33,9 +33,12 @@ import org.apache.hadoop.fs.CommonConfigurationKeys; import org.apache.hadoop.util.ZKUtil; import org.apache.zookeeper.CreateMode; import org.apache.zookeeper.data.ACL; +import org.apache.zookeeper.data.Stat; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import com.google.common.base.Preconditions; + /** * Helper class that provides utility methods specific to ZK operations. */ @@ -179,7 +182,6 @@ public final class ZKCuratorManager { /** * Get the data in a ZNode. * @param path Path of the ZNode. - * @param stat Output statistics of the ZNode. * @return The data in the ZNode. * @throws Exception If it cannot contact Zookeeper. */ @@ -190,16 +192,38 @@ public final class ZKCuratorManager { /** * Get the data in a ZNode. * @param path Path of the ZNode. - * @param stat Output statistics of the ZNode. + * @param stat + * @return The data in the ZNode. + * @throws Exception If it cannot contact Zookeeper. + */ + public byte[] getData(final String path, Stat stat) throws Exception { +return curator.getData().storingStatIn(stat).forPath(path); + } + + /** + * Get the data in a ZNode. + * @param path Path of the ZNode. * @return The data in the ZNode. * @throws Exception If it cannot contact Zookeeper. */ - public String getSringData(final String path) throws Exception { + public String getStringData(final String path) throws Exception { byte[] bytes = getData(path); return new String(bytes, Charset.forName("UTF-8")); } /** + * Get the data in a ZNode. + * @param path Path of the ZNode. + * @param stat Output statistics of the ZNode. + * @return The data in the ZNode. + * @throws Exception If it cannot contact Zookeeper. + */ + public String getStringData(final String path, Stat stat) throws Exception { +byte[] bytes = getData(path, stat); +return new String(bytes, Charset.forName("UTF-8")); + } + + /** * Set data into a ZNode. * @param path Path of the ZNode. * @param data Data to set. @@ -272,14 +296,36 @@ public final class ZKCuratorManager { } /** + * Utility function to ensure that the configured base znode exists. + * This recursively creates the znode as well as all of its parents. + * @param path Path of the znode to create. + * @throws Exception If it cannot create the file. + */ + public void createRootDirRecursively(String path) throws Exception { +String[] pathParts = path.split("/"); +Preconditions.checkArgument( +pathParts.length >= 1 && pathParts[0].isEmpty(), +"Invalid path: %s", path); +StringBuilder sb = new StringBuilder(); + +for (int i = 1; i < pathParts.length; i++) { + sb.append("/").append(pathParts[i]); + create(sb.toString()); +} + } + + /** * Delete a ZNode. * @param path Path of the ZNode. + * @return If the znode was deleted. * @throws Exception If it cannot contact ZooKeeper. */ - public void delete(final String path) throws Exception { + public boolean delete(final String path) throws Exception { if (exists(path)) { curator.delete().deletingChildrenIfNeeded().forPath(path); + return true; } +return false; } /**
[04/50] [abbrv] hadoop git commit: YARN-6958. Moving logging APIs over to slf4j in hadoop-yarn-server-timelineservice. Contributed by Yeliang Cang.
YARN-6958. Moving logging APIs over to slf4j in hadoop-yarn-server-timelineservice. Contributed by Yeliang Cang. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/63cfcb90 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/63cfcb90 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/63cfcb90 Branch: refs/heads/YARN-6592 Commit: 63cfcb90ac6fbb79ba9ed6b3044cd999fc74e58c Parents: 69afa26 Author: Akira AjisakaAuthored: Wed Aug 9 23:58:22 2017 +0900 Committer: Akira Ajisaka Committed: Wed Aug 9 23:58:22 2017 +0900 -- .../server/timeline/LevelDBCacheTimelineStore.java| 14 +++--- .../reader/filter/TimelineFilterUtils.java| 7 --- .../storage/HBaseTimelineReaderImpl.java | 8 .../storage/HBaseTimelineWriterImpl.java | 8 .../storage/TimelineSchemaCreator.java| 7 --- .../storage/application/ApplicationTable.java | 7 --- .../storage/apptoflow/AppToFlowTable.java | 7 --- .../timelineservice/storage/common/ColumnHelper.java | 8 +--- .../storage/common/HBaseTimelineStorageUtils.java | 8 .../timelineservice/storage/entity/EntityTable.java | 7 --- .../storage/flow/FlowActivityTable.java | 7 --- .../storage/flow/FlowRunCoprocessor.java | 7 --- .../timelineservice/storage/flow/FlowRunTable.java| 7 --- .../timelineservice/storage/flow/FlowScanner.java | 7 --- .../storage/reader/TimelineEntityReader.java | 7 --- .../collector/AppLevelTimelineCollector.java | 7 --- .../collector/NodeTimelineCollectorManager.java | 8 .../PerNodeTimelineCollectorsAuxService.java | 10 +- .../timelineservice/collector/TimelineCollector.java | 7 --- .../collector/TimelineCollectorManager.java | 8 .../collector/TimelineCollectorWebService.java| 8 .../timelineservice/reader/TimelineReaderServer.java | 9 + .../reader/TimelineReaderWebServices.java | 8 .../storage/FileSystemTimelineReaderImpl.java | 8 .../storage/common/TimelineStorageUtils.java | 4 25 files changed, 102 insertions(+), 91 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/63cfcb90/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-timeline-pluginstorage/src/main/java/org/apache/hadoop/yarn/server/timeline/LevelDBCacheTimelineStore.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-timeline-pluginstorage/src/main/java/org/apache/hadoop/yarn/server/timeline/LevelDBCacheTimelineStore.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-timeline-pluginstorage/src/main/java/org/apache/hadoop/yarn/server/timeline/LevelDBCacheTimelineStore.java index 7379dd6..f7a3d01 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-timeline-pluginstorage/src/main/java/org/apache/hadoop/yarn/server/timeline/LevelDBCacheTimelineStore.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-timeline-pluginstorage/src/main/java/org/apache/hadoop/yarn/server/timeline/LevelDBCacheTimelineStore.java @@ -19,8 +19,6 @@ package org.apache.hadoop.yarn.server.timeline; import com.fasterxml.jackson.databind.ObjectMapper; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; import org.apache.hadoop.classification.InterfaceAudience.Private; import org.apache.hadoop.classification.InterfaceStability.Unstable; import org.apache.hadoop.conf.Configuration; @@ -34,6 +32,8 @@ import org.fusesource.leveldbjni.JniDBFactory; import org.iq80.leveldb.DB; import org.iq80.leveldb.DBIterator; import org.iq80.leveldb.Options; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import java.io.File; import java.io.IOException; @@ -58,8 +58,8 @@ import java.util.Map; @Private @Unstable public class LevelDBCacheTimelineStore extends KeyValueBasedTimelineStore { - private static final Log LOG - = LogFactory.getLog(LevelDBCacheTimelineStore.class); + private static final Logger LOG + = LoggerFactory.getLogger(LevelDBCacheTimelineStore.class); private static final String CACHED_LDB_FILE_PREFIX = "-timeline-cache.ldb"; private String dbId; private DB entityDb; @@ -102,7 +102,7 @@ public class LevelDBCacheTimelineStore extends KeyValueBasedTimelineStore { localFS.setPermission(dbPath, LeveldbUtils.LEVELDB_DIR_UMASK); } } finally { - IOUtils.cleanup(LOG,
[19/50] [abbrv] hadoop git commit: YARN-5927. BaseContainerManagerTest::waitForNMContainerState timeout accounting is not accurate. (Kai Sasaki via kasha)
YARN-5927. BaseContainerManagerTest::waitForNMContainerState timeout accounting is not accurate. (Kai Sasaki via kasha) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/8c4b6d16 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/8c4b6d16 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/8c4b6d16 Branch: refs/heads/YARN-6592 Commit: 8c4b6d16a526610a03ccc85665744ad071e37400 Parents: 07fff43 Author: Karthik KambatlaAuthored: Fri Aug 11 12:14:06 2017 -0700 Committer: Karthik Kambatla Committed: Fri Aug 11 12:15:43 2017 -0700 -- .../containermanager/BaseContainerManagerTest.java| 10 +- 1 file changed, 5 insertions(+), 5 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/8c4b6d16/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/BaseContainerManagerTest.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/BaseContainerManagerTest.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/BaseContainerManagerTest.java index 7980a80..d266ac1 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/BaseContainerManagerTest.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/BaseContainerManagerTest.java @@ -310,13 +310,13 @@ public abstract class BaseContainerManagerTest { new HashSet<>(finalStates); int timeoutSecs = 0; do { - Thread.sleep(2000); + Thread.sleep(1000); containerStatus = containerManager.getContainerStatuses(request) .getContainerStatuses().get(0); LOG.info("Waiting for container to get into one of states " + fStates + ". Current state is " + containerStatus.getState()); - timeoutSecs += 2; + timeoutSecs += 1; } while (!fStates.contains(containerStatus.getState()) && timeoutSecs < timeOutMax); LOG.info("Container state is " + containerStatus.getState()); @@ -371,7 +371,7 @@ public abstract class BaseContainerManagerTest { .containermanager.container.ContainerState currentState = null; int timeoutSecs = 0; do { - Thread.sleep(2000); + Thread.sleep(1000); container = containerManager.getContext().getContainers().get(containerID); if (container != null) { @@ -381,9 +381,9 @@ public abstract class BaseContainerManagerTest { LOG.info("Waiting for NM container to get into one of the following " + "states: " + finalStates + ". Current state is " + currentState); } - timeoutSecs += 2; + timeoutSecs += 1; } while (!finalStates.contains(currentState) -&& timeoutSecs++ < timeOutMax); +&& timeoutSecs < timeOutMax); LOG.info("Container state is " + currentState); Assert.assertTrue("ContainerState is not correct (timedout)", finalStates.contains(currentState)); - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
[13/50] [abbrv] hadoop git commit: MAPREDUCE-6870. Add configuration for MR job to finish when all reducers are complete. (Peter Bacsko via Haibo Chen)
MAPREDUCE-6870. Add configuration for MR job to finish when all reducers are complete. (Peter Bacsko via Haibo Chen) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/a32e0138 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/a32e0138 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/a32e0138 Branch: refs/heads/YARN-6592 Commit: a32e0138fb63c92902e6613001f38a87c8a41321 Parents: 312e57b Author: Haibo ChenAuthored: Thu Aug 10 15:17:36 2017 -0700 Committer: Haibo Chen Committed: Thu Aug 10 15:17:36 2017 -0700 -- .../mapreduce/v2/app/job/impl/JobImpl.java | 35 - .../mapreduce/v2/app/job/impl/TestJobImpl.java | 139 +++ .../apache/hadoop/mapreduce/MRJobConfig.java| 6 +- .../src/main/resources/mapred-default.xml | 8 ++ 4 files changed, 160 insertions(+), 28 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/a32e0138/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/main/java/org/apache/hadoop/mapreduce/v2/app/job/impl/JobImpl.java -- diff --git a/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/main/java/org/apache/hadoop/mapreduce/v2/app/job/impl/JobImpl.java b/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/main/java/org/apache/hadoop/mapreduce/v2/app/job/impl/JobImpl.java index 4d155d0..6880b6c 100644 --- a/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/main/java/org/apache/hadoop/mapreduce/v2/app/job/impl/JobImpl.java +++ b/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/main/java/org/apache/hadoop/mapreduce/v2/app/job/impl/JobImpl.java @@ -644,6 +644,8 @@ public class JobImpl implements org.apache.hadoop.mapreduce.v2.app.job.Job, private float reduceProgress; private float cleanupProgress; private boolean isUber = false; + private boolean finishJobWhenReducersDone; + private boolean completingJob = false; private Credentials jobCredentials; private Token jobToken; @@ -717,6 +719,9 @@ public class JobImpl implements org.apache.hadoop.mapreduce.v2.app.job.Job, this.maxFetchFailuresNotifications = conf.getInt( MRJobConfig.MAX_FETCH_FAILURES_NOTIFICATIONS, MRJobConfig.DEFAULT_MAX_FETCH_FAILURES_NOTIFICATIONS); +this.finishJobWhenReducersDone = conf.getBoolean( +MRJobConfig.FINISH_JOB_WHEN_REDUCERS_DONE, +MRJobConfig.DEFAULT_FINISH_JOB_WHEN_REDUCERS_DONE); } protected StateMachine getStateMachine() { @@ -2021,7 +2026,9 @@ public class JobImpl implements org.apache.hadoop.mapreduce.v2.app.job.Job, TimeUnit.MILLISECONDS); return JobStateInternal.FAIL_WAIT; } - + + checkReadyForCompletionWhenAllReducersDone(job); + return job.checkReadyForCommit(); } @@ -2052,6 +2059,32 @@ public class JobImpl implements org.apache.hadoop.mapreduce.v2.app.job.Job, } job.metrics.killedTask(task); } + + /** Improvement: if all reducers have finished, we check if we have + restarted mappers that are still running. This can happen in a + situation when a node becomes UNHEALTHY and mappers are rescheduled. + See MAPREDUCE-6870 for details */ +private void checkReadyForCompletionWhenAllReducersDone(JobImpl job) { + if (job.finishJobWhenReducersDone) { +int totalReduces = job.getTotalReduces(); +int completedReduces = job.getCompletedReduces(); + +if (totalReduces > 0 && totalReduces == completedReduces +&& !job.completingJob) { + + for (TaskId mapTaskId : job.mapTasks) { +MapTaskImpl task = (MapTaskImpl) job.tasks.get(mapTaskId); +if (!task.isFinished()) { + LOG.info("Killing map task " + task.getID()); + job.eventHandler.handle( + new TaskEvent(task.getID(), TaskEventType.T_KILL)); +} + } + + job.completingJob = true; +} + } +} } // Transition class for handling jobs with no tasks http://git-wip-us.apache.org/repos/asf/hadoop/blob/a32e0138/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/test/java/org/apache/hadoop/mapreduce/v2/app/job/impl/TestJobImpl.java -- diff --git a/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/test/java/org/apache/hadoop/mapreduce/v2/app/job/impl/TestJobImpl.java
[12/50] [abbrv] hadoop git commit: HDFS-11957. Enable POSIX ACL inheritance by default. Contributed by John Zhuge.
HDFS-11957. Enable POSIX ACL inheritance by default. Contributed by John Zhuge. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/312e57b9 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/312e57b9 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/312e57b9 Branch: refs/heads/YARN-6592 Commit: 312e57b95477ec95e6735f5721c646ad1df019f8 Parents: a8b7546 Author: John ZhugeAuthored: Fri Jun 9 08:42:16 2017 -0700 Committer: John Zhuge Committed: Thu Aug 10 10:30:47 2017 -0700 -- .../java/org/apache/hadoop/hdfs/DFSConfigKeys.java| 2 +- .../hadoop-hdfs/src/main/resources/hdfs-default.xml | 2 +- .../src/site/markdown/HdfsPermissionsGuide.md | 2 +- .../test/java/org/apache/hadoop/cli/TestAclCLI.java | 2 ++ .../hadoop/hdfs/server/namenode/FSAclBaseTest.java| 8 .../hdfs/server/namenode/TestFSImageWithAcl.java | 14 -- 6 files changed, 17 insertions(+), 13 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/312e57b9/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java index dc9bf76..f4c383e 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java @@ -269,7 +269,7 @@ public class DFSConfigKeys extends CommonConfigurationKeys { public static final String DFS_NAMENODE_POSIX_ACL_INHERITANCE_ENABLED_KEY = "dfs.namenode.posix.acl.inheritance.enabled"; public static final boolean - DFS_NAMENODE_POSIX_ACL_INHERITANCE_ENABLED_DEFAULT = false; + DFS_NAMENODE_POSIX_ACL_INHERITANCE_ENABLED_DEFAULT = true; public static final String DFS_NAMENODE_XATTRS_ENABLED_KEY = "dfs.namenode.xattrs.enabled"; public static final boolean DFS_NAMENODE_XATTRS_ENABLED_DEFAULT = true; public static final String DFS_ADMIN = "dfs.cluster.administrators"; http://git-wip-us.apache.org/repos/asf/hadoop/blob/312e57b9/hadoop-hdfs-project/hadoop-hdfs/src/main/resources/hdfs-default.xml -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/resources/hdfs-default.xml b/hadoop-hdfs-project/hadoop-hdfs/src/main/resources/hdfs-default.xml index 4942967..03becc9 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/resources/hdfs-default.xml +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/resources/hdfs-default.xml @@ -459,7 +459,7 @@ dfs.namenode.posix.acl.inheritance.enabled -false +true Set to true to enable POSIX style ACL inheritance. When it is enabled and the create request comes from a compatible client, the NameNode http://git-wip-us.apache.org/repos/asf/hadoop/blob/312e57b9/hadoop-hdfs-project/hadoop-hdfs/src/site/markdown/HdfsPermissionsGuide.md -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/site/markdown/HdfsPermissionsGuide.md b/hadoop-hdfs-project/hadoop-hdfs/src/site/markdown/HdfsPermissionsGuide.md index c502534..82b5cec 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/site/markdown/HdfsPermissionsGuide.md +++ b/hadoop-hdfs-project/hadoop-hdfs/src/site/markdown/HdfsPermissionsGuide.md @@ -322,7 +322,7 @@ Configuration Parameters * `dfs.namenode.posix.acl.inheritance.enabled` -Set to true to enable POSIX style ACL inheritance. Disabled by default. +Set to true to enable POSIX style ACL inheritance. Enabled by default. When it is enabled and the create request comes from a compatible client, the NameNode will apply default ACLs from the parent directory to the create mode and ignore the client umask. If no default ACL is found, http://git-wip-us.apache.org/repos/asf/hadoop/blob/312e57b9/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/cli/TestAclCLI.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/cli/TestAclCLI.java b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/cli/TestAclCLI.java index 75111bb..9cf2180 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/cli/TestAclCLI.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/cli/TestAclCLI.java @@ -34,6 +34,8 @@ public class TestAclCLI extends CLITestHelperDFS { protected void initConf() {
[20/50] [abbrv] hadoop git commit: HADOOP-14741. Refactor curator based ZooKeeper communication into common library. (Íñigo Goiri via Subru).
HADOOP-14741. Refactor curator based ZooKeeper communication into common library. (Ãñigo Goiri via Subru). Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/bbbf0e2a Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/bbbf0e2a Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/bbbf0e2a Branch: refs/heads/YARN-6592 Commit: bbbf0e2a4136b30cad9dfd36ef138650a1adea60 Parents: 8c4b6d1 Author: Subru KrishnanAuthored: Fri Aug 11 13:58:45 2017 -0700 Committer: Subru Krishnan Committed: Fri Aug 11 13:58:45 2017 -0700 -- .../hadoop/fs/CommonConfigurationKeys.java | 21 ++ .../hadoop/util/curator/ZKCuratorManager.java | 294 +++ .../hadoop/util/curator/package-info.java | 27 ++ .../src/main/resources/core-default.xml | 46 +++ .../util/curator/TestZKCuratorManager.java | 95 ++ .../hadoop/yarn/conf/YarnConfiguration.java | 13 +- .../yarn/conf/TestYarnConfigurationFields.java | 9 + .../src/main/resources/yarn-default.xml | 53 ...ActiveStandbyElectorBasedElectorService.java | 5 +- .../yarn/server/resourcemanager/RMZKUtils.java | 81 - .../server/resourcemanager/ResourceManager.java | 83 +++--- .../recovery/ZKRMStateStore.java| 38 ++- .../server/resourcemanager/RMHATestBase.java| 5 +- 13 files changed, 567 insertions(+), 203 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/bbbf0e2a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/CommonConfigurationKeys.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/CommonConfigurationKeys.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/CommonConfigurationKeys.java index e53f71e..0da4bbd 100644 --- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/CommonConfigurationKeys.java +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/CommonConfigurationKeys.java @@ -377,4 +377,25 @@ public class CommonConfigurationKeys extends CommonConfigurationKeysPublic { // HDFS client HTrace configuration. public static final String FS_CLIENT_HTRACE_PREFIX = "fs.client.htrace."; + + // Global ZooKeeper configuration keys + public static final String ZK_PREFIX = "hadoop.zk."; + /** ACL for the ZooKeeper ensemble. */ + public static final String ZK_ACL = ZK_PREFIX + "acl"; + public static final String ZK_ACL_DEFAULT = "world:anyone:rwcda"; + /** Authentication for the ZooKeeper ensemble. */ + public static final String ZK_AUTH = ZK_PREFIX + "auth"; + + /** Address of the ZooKeeper ensemble. */ + public static final String ZK_ADDRESS = ZK_PREFIX + "address"; + /** Maximum number of retries for a ZooKeeper operation. */ + public static final String ZK_NUM_RETRIES = ZK_PREFIX + "num-retries"; + public static final intZK_NUM_RETRIES_DEFAULT = 1000; + /** Timeout for a ZooKeeper operation in ZooKeeper in milliseconds. */ + public static final String ZK_TIMEOUT_MS = ZK_PREFIX + "timeout-ms"; + public static final intZK_TIMEOUT_MS_DEFAULT = 1; + /** How often to retry a ZooKeeper operation in milliseconds. */ + public static final String ZK_RETRY_INTERVAL_MS = + ZK_PREFIX + "retry-interval-ms"; + public static final intZK_RETRY_INTERVAL_MS_DEFAULT = 1000; } http://git-wip-us.apache.org/repos/asf/hadoop/blob/bbbf0e2a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/curator/ZKCuratorManager.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/curator/ZKCuratorManager.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/curator/ZKCuratorManager.java new file mode 100644 index 000..3adf028 --- /dev/null +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/curator/ZKCuratorManager.java @@ -0,0 +1,294 @@ +/** + * 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
[21/50] [abbrv] hadoop git commit: YARN-6952. Enable scheduling monitor in FS (Contributed by Yufei Gu via Daniel Templeton)
YARN-6952. Enable scheduling monitor in FS (Contributed by Yufei Gu via Daniel Templeton) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/218588be Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/218588be Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/218588be Branch: refs/heads/YARN-6592 Commit: 218588be773123404af4fd26eed5c9e3625feaa7 Parents: bbbf0e2 Author: Daniel TempletonAuthored: Fri Aug 11 14:02:38 2017 -0700 Committer: Daniel Templeton Committed: Fri Aug 11 14:04:19 2017 -0700 -- .../yarn/server/resourcemanager/ResourceManager.java | 9 +++-- .../resourcemanager/monitor/SchedulingEditPolicy.java | 4 ++-- .../server/resourcemanager/monitor/SchedulingMonitor.java | 4 +--- .../capacity/ProportionalCapacityPreemptionPolicy.java| 4 ++-- .../monitor/invariants/InvariantsChecker.java | 10 +- .../monitor/invariants/MetricsInvariantChecker.java | 7 +++ 6 files changed, 16 insertions(+), 22 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/218588be/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/ResourceManager.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/ResourceManager.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/ResourceManager.java index cb7daf9..5333f25 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/ResourceManager.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/ResourceManager.java @@ -90,7 +90,6 @@ import org.apache.hadoop.yarn.server.resourcemanager.rmcontainer.ContainerAlloca import org.apache.hadoop.yarn.server.resourcemanager.rmnode.RMNode; import org.apache.hadoop.yarn.server.resourcemanager.rmnode.RMNodeEvent; import org.apache.hadoop.yarn.server.resourcemanager.rmnode.RMNodeEventType; -import org.apache.hadoop.yarn.server.resourcemanager.scheduler.PreemptableResourceScheduler; import org.apache.hadoop.yarn.server.resourcemanager.scheduler.QueueMetrics; import org.apache.hadoop.yarn.server.resourcemanager.scheduler.ResourceScheduler; import org.apache.hadoop.yarn.server.resourcemanager.scheduler.event.SchedulerEvent; @@ -698,8 +697,7 @@ public class ResourceManager extends CompositeService implements Recoverable { } } - // creating monitors that handle preemption - createPolicyMonitors(); + createSchedulerMonitors(); masterService = createApplicationMasterService(); addService(masterService) ; @@ -800,9 +798,8 @@ public class ResourceManager extends CompositeService implements Recoverable { } -protected void createPolicyMonitors() { - if (scheduler instanceof PreemptableResourceScheduler - && conf.getBoolean(YarnConfiguration.RM_SCHEDULER_ENABLE_MONITORS, +protected void createSchedulerMonitors() { + if (conf.getBoolean(YarnConfiguration.RM_SCHEDULER_ENABLE_MONITORS, YarnConfiguration.DEFAULT_RM_SCHEDULER_ENABLE_MONITORS)) { LOG.info("Loading policy monitors"); List policies = conf.getInstances( http://git-wip-us.apache.org/repos/asf/hadoop/blob/218588be/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/monitor/SchedulingEditPolicy.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/monitor/SchedulingEditPolicy.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/monitor/SchedulingEditPolicy.java index 47458a3..d2550e6 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/monitor/SchedulingEditPolicy.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/monitor/SchedulingEditPolicy.java @@ -19,12 +19,12 @@ package
[10/50] [abbrv] hadoop git commit: HADOOP-14183. Remove service loader config file for wasb fs. Contributed by Esfandiar Manii.
HADOOP-14183. Remove service loader config file for wasb fs. Contributed by Esfandiar Manii. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/54356b1e Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/54356b1e Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/54356b1e Branch: refs/heads/YARN-6592 Commit: 54356b1e8366a23fff1bb45601efffc743306efc Parents: 8d953c2 Author: Steve LoughranAuthored: Thu Aug 10 16:46:33 2017 +0100 Committer: Steve Loughran Committed: Thu Aug 10 16:46:33 2017 +0100 -- .../src/main/resources/core-default.xml| 12 .../services/org.apache.hadoop.fs.FileSystem | 17 - 2 files changed, 12 insertions(+), 17 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/54356b1e/hadoop-common-project/hadoop-common/src/main/resources/core-default.xml -- diff --git a/hadoop-common-project/hadoop-common/src/main/resources/core-default.xml b/hadoop-common-project/hadoop-common/src/main/resources/core-default.xml index 593fd85..e6b6919 100644 --- a/hadoop-common-project/hadoop-common/src/main/resources/core-default.xml +++ b/hadoop-common-project/hadoop-common/src/main/resources/core-default.xml @@ -1322,6 +1322,18 @@ + fs.wasb.impl + org.apache.hadoop.fs.azure.NativeAzureFileSystem + The implementation class of the Native Azure Filesystem + + + + fs.wasbs.impl + org.apache.hadoop.fs.azure.NativeAzureFileSystem$Secure + The implementation class of the Secure Native Azure Filesystem + + + fs.azure.secure.mode false http://git-wip-us.apache.org/repos/asf/hadoop/blob/54356b1e/hadoop-tools/hadoop-azure/src/main/resources/META-INF/services/org.apache.hadoop.fs.FileSystem -- diff --git a/hadoop-tools/hadoop-azure/src/main/resources/META-INF/services/org.apache.hadoop.fs.FileSystem b/hadoop-tools/hadoop-azure/src/main/resources/META-INF/services/org.apache.hadoop.fs.FileSystem deleted file mode 100644 index 9f4922b..000 --- a/hadoop-tools/hadoop-azure/src/main/resources/META-INF/services/org.apache.hadoop.fs.FileSystem +++ /dev/null @@ -1,17 +0,0 @@ -# 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. - -org.apache.hadoop.fs.azure.NativeAzureFileSystem -org.apache.hadoop.fs.azure.NativeAzureFileSystem$Secure \ No newline at end of file - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
[14/50] [abbrv] hadoop git commit: HDFS-12287. Remove a no-longer applicable TODO comment in DatanodeManager. Contributed by Chen Liang.
HDFS-12287. Remove a no-longer applicable TODO comment in DatanodeManager. Contributed by Chen Liang. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/f13ca949 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/f13ca949 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/f13ca949 Branch: refs/heads/YARN-6592 Commit: f13ca94954072c9b898b142a5ff86f2c1f3ee55a Parents: a32e013 Author: Yiqun LinAuthored: Fri Aug 11 14:13:45 2017 +0800 Committer: Yiqun Lin Committed: Fri Aug 11 14:13:45 2017 +0800 -- .../apache/hadoop/hdfs/server/blockmanagement/DatanodeManager.java | 2 -- 1 file changed, 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/f13ca949/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/blockmanagement/DatanodeManager.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/blockmanagement/DatanodeManager.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/blockmanagement/DatanodeManager.java index d705fec..78783ca 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/blockmanagement/DatanodeManager.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/blockmanagement/DatanodeManager.java @@ -212,8 +212,6 @@ public class DatanodeManager { this.namesystem = namesystem; this.blockManager = blockManager; -// TODO: Enables DFSNetworkTopology by default after more stress -// testings/validations. this.useDfsNetworkTopology = conf.getBoolean( DFSConfigKeys.DFS_USE_DFS_NETWORK_TOPOLOGY_KEY, DFSConfigKeys.DFS_USE_DFS_NETWORK_TOPOLOGY_DEFAULT); - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
[02/50] [abbrv] hadoop git commit: YARN-6515. Fix warnings from Spotbugs in hadoop-yarn-server-nodemanager. Contributed by Naganarasimha G R.
YARN-6515. Fix warnings from Spotbugs in hadoop-yarn-server-nodemanager. Contributed by Naganarasimha G R. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/1a18d5e5 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/1a18d5e5 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/1a18d5e5 Branch: refs/heads/YARN-6592 Commit: 1a18d5e514d13aa3a88e9b6089394a27296d6bc3 Parents: 8a4bff0 Author: Akira AjisakaAuthored: Wed Aug 9 21:56:34 2017 +0900 Committer: Akira Ajisaka Committed: Wed Aug 9 21:56:43 2017 +0900 -- .../server/nodemanager/NodeStatusUpdaterImpl.java| 11 +-- .../localizer/ContainerLocalizer.java| 15 --- .../containermanager/monitor/ContainerMetrics.java | 2 +- 3 files changed, 14 insertions(+), 14 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/1a18d5e5/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/NodeStatusUpdaterImpl.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/NodeStatusUpdaterImpl.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/NodeStatusUpdaterImpl.java index 00073d8..b5ec383 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/NodeStatusUpdaterImpl.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/NodeStatusUpdaterImpl.java @@ -639,7 +639,6 @@ public class NodeStatusUpdaterImpl extends AbstractService implements public void removeOrTrackCompletedContainersFromContext( List containerIds) throws IOException { Set removedContainers = new HashSet(); -Set removedNullContainers = new HashSet(); pendingContainersToRemove.addAll(containerIds); Iterator iter = pendingContainersToRemove.iterator(); @@ -649,7 +648,6 @@ public class NodeStatusUpdaterImpl extends AbstractService implements Container nmContainer = context.getContainers().get(containerId); if (nmContainer == null) { iter.remove(); -removedNullContainers.add(containerId); } else if (nmContainer.getContainerState().equals( org.apache.hadoop.yarn.server.nodemanager.containermanager.container.ContainerState.DONE)) { context.getContainers().remove(containerId); @@ -712,11 +710,12 @@ public class NodeStatusUpdaterImpl extends AbstractService implements public void removeVeryOldStoppedContainersFromCache() { synchronized (recentlyStoppedContainers) { long currentTime = System.currentTimeMillis(); - Iterator i = - recentlyStoppedContainers.keySet().iterator(); + Iterator > i = + recentlyStoppedContainers.entrySet().iterator(); while (i.hasNext()) { -ContainerId cid = i.next(); -if (recentlyStoppedContainers.get(cid) < currentTime) { +Entry mapEntry = i.next(); +ContainerId cid = mapEntry.getKey(); +if (mapEntry.getValue() < currentTime) { if (!context.getContainers().containsKey(cid)) { i.remove(); try { http://git-wip-us.apache.org/repos/asf/hadoop/blob/1a18d5e5/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/localizer/ContainerLocalizer.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/localizer/ContainerLocalizer.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/localizer/ContainerLocalizer.java index 8a46491..bb4b7f3 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/localizer/ContainerLocalizer.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/localizer/ContainerLocalizer.java @@ -17,6 +17,8 @@ */ package
[24/50] [abbrv] hadoop git commit: YARN-6882. AllocationFileLoaderService.reloadAllocations() should use the diamond operator (Contributed by Larry Lo via Daniel Templeton)
YARN-6882. AllocationFileLoaderService.reloadAllocations() should use the diamond operator (Contributed by Larry Lo via Daniel Templeton) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/0996acde Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/0996acde Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/0996acde Branch: refs/heads/YARN-6592 Commit: 0996acde6c325667aa19ae0740eb6b40bf4a682a Parents: 65364de Author: Daniel TempletonAuthored: Fri Aug 11 14:50:46 2017 -0700 Committer: Daniel Templeton Committed: Fri Aug 11 14:50:46 2017 -0700 -- .../scheduler/fair/AllocationFileLoaderService.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/0996acde/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/AllocationFileLoaderService.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/AllocationFileLoaderService.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/AllocationFileLoaderService.java index bf5b4c5..313a27a 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/AllocationFileLoaderService.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/AllocationFileLoaderService.java @@ -266,7 +266,7 @@ public class AllocationFileLoaderService extends AbstractService { Map configuredQueues = new HashMap<>(); for (FSQueueType queueType : FSQueueType.values()) { - configuredQueues.put(queueType, new HashSet()); + configuredQueues.put(queueType, new HashSet<>()); } // Read and parse the allocations file. @@ -280,7 +280,7 @@ public class AllocationFileLoaderService extends AbstractService { throw new AllocationConfigurationException("Bad fair scheduler config " + "file: top-level element not "); NodeList elements = root.getChildNodes(); -List queueElements = new ArrayList(); +List queueElements = new ArrayList<>(); Element placementPolicyElement = null; for (int i = 0; i < elements.getLength(); i++) { Node node = elements.item(i); - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
hadoop git commit: HADOOP-14773. Extend ZKCuratorManager API for more reusability. (Íñigo Goiri via Subru).
Repository: hadoop Updated Branches: refs/heads/branch-2 895a35eac -> ad46a9087 HADOOP-14773. Extend ZKCuratorManager API for more reusability. (Ãñigo Goiri via Subru). (cherry picked from commit 75dd866bfb8b63cb9f13179d4365b05c48e0907d) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/ad46a908 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/ad46a908 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/ad46a908 Branch: refs/heads/branch-2 Commit: ad46a90872f5df0bc471092096d6e5dbe7e5d90f Parents: 895a35e Author: Subru KrishnanAuthored: Tue Aug 15 16:53:59 2017 -0700 Committer: Subru Krishnan Committed: Tue Aug 15 16:54:48 2017 -0700 -- .../hadoop/util/curator/ZKCuratorManager.java | 54 ++-- .../util/curator/TestZKCuratorManager.java | 2 +- .../recovery/ZKRMStateStore.java| 19 +-- 3 files changed, 52 insertions(+), 23 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/ad46a908/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/curator/ZKCuratorManager.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/curator/ZKCuratorManager.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/curator/ZKCuratorManager.java index b980c41..2f50841 100644 --- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/curator/ZKCuratorManager.java +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/curator/ZKCuratorManager.java @@ -33,9 +33,12 @@ import org.apache.hadoop.fs.CommonConfigurationKeys; import org.apache.hadoop.util.ZKUtil; import org.apache.zookeeper.CreateMode; import org.apache.zookeeper.data.ACL; +import org.apache.zookeeper.data.Stat; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import com.google.common.base.Preconditions; + /** * Helper class that provides utility methods specific to ZK operations. */ @@ -179,7 +182,6 @@ public final class ZKCuratorManager { /** * Get the data in a ZNode. * @param path Path of the ZNode. - * @param stat Output statistics of the ZNode. * @return The data in the ZNode. * @throws Exception If it cannot contact Zookeeper. */ @@ -190,16 +192,38 @@ public final class ZKCuratorManager { /** * Get the data in a ZNode. * @param path Path of the ZNode. - * @param stat Output statistics of the ZNode. + * @param stat + * @return The data in the ZNode. + * @throws Exception If it cannot contact Zookeeper. + */ + public byte[] getData(final String path, Stat stat) throws Exception { +return curator.getData().storingStatIn(stat).forPath(path); + } + + /** + * Get the data in a ZNode. + * @param path Path of the ZNode. * @return The data in the ZNode. * @throws Exception If it cannot contact Zookeeper. */ - public String getSringData(final String path) throws Exception { + public String getStringData(final String path) throws Exception { byte[] bytes = getData(path); return new String(bytes, Charset.forName("UTF-8")); } /** + * Get the data in a ZNode. + * @param path Path of the ZNode. + * @param stat Output statistics of the ZNode. + * @return The data in the ZNode. + * @throws Exception If it cannot contact Zookeeper. + */ + public String getStringData(final String path, Stat stat) throws Exception { +byte[] bytes = getData(path, stat); +return new String(bytes, Charset.forName("UTF-8")); + } + + /** * Set data into a ZNode. * @param path Path of the ZNode. * @param data Data to set. @@ -272,14 +296,36 @@ public final class ZKCuratorManager { } /** + * Utility function to ensure that the configured base znode exists. + * This recursively creates the znode as well as all of its parents. + * @param path Path of the znode to create. + * @throws Exception If it cannot create the file. + */ + public void createRootDirRecursively(String path) throws Exception { +String[] pathParts = path.split("/"); +Preconditions.checkArgument( +pathParts.length >= 1 && pathParts[0].isEmpty(), +"Invalid path: %s", path); +StringBuilder sb = new StringBuilder(); + +for (int i = 1; i < pathParts.length; i++) { + sb.append("/").append(pathParts[i]); + create(sb.toString()); +} + } + + /** * Delete a ZNode. * @param path Path of the ZNode. + * @return If the znode was deleted. * @throws Exception If it cannot contact ZooKeeper. */ - public void delete(final String path) throws Exception { + public boolean delete(final String path) throws Exception {
hadoop git commit: HADOOP-14773. Extend ZKCuratorManager API for more reusability. (Íñigo Goiri via Subru).
Repository: hadoop Updated Branches: refs/heads/trunk f34646d65 -> 75dd866bf HADOOP-14773. Extend ZKCuratorManager API for more reusability. (Ãñigo Goiri via Subru). Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/75dd866b Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/75dd866b Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/75dd866b Branch: refs/heads/trunk Commit: 75dd866bfb8b63cb9f13179d4365b05c48e0907d Parents: f34646d Author: Subru KrishnanAuthored: Tue Aug 15 16:53:59 2017 -0700 Committer: Subru Krishnan Committed: Tue Aug 15 16:53:59 2017 -0700 -- .../hadoop/util/curator/ZKCuratorManager.java | 54 ++-- .../util/curator/TestZKCuratorManager.java | 2 +- .../recovery/ZKRMStateStore.java| 19 +-- 3 files changed, 52 insertions(+), 23 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/75dd866b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/curator/ZKCuratorManager.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/curator/ZKCuratorManager.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/curator/ZKCuratorManager.java index 3adf028..9a031af 100644 --- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/curator/ZKCuratorManager.java +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/curator/ZKCuratorManager.java @@ -33,9 +33,12 @@ import org.apache.hadoop.fs.CommonConfigurationKeys; import org.apache.hadoop.util.ZKUtil; import org.apache.zookeeper.CreateMode; import org.apache.zookeeper.data.ACL; +import org.apache.zookeeper.data.Stat; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import com.google.common.base.Preconditions; + /** * Helper class that provides utility methods specific to ZK operations. */ @@ -179,7 +182,6 @@ public final class ZKCuratorManager { /** * Get the data in a ZNode. * @param path Path of the ZNode. - * @param stat Output statistics of the ZNode. * @return The data in the ZNode. * @throws Exception If it cannot contact Zookeeper. */ @@ -190,16 +192,38 @@ public final class ZKCuratorManager { /** * Get the data in a ZNode. * @param path Path of the ZNode. - * @param stat Output statistics of the ZNode. + * @param stat + * @return The data in the ZNode. + * @throws Exception If it cannot contact Zookeeper. + */ + public byte[] getData(final String path, Stat stat) throws Exception { +return curator.getData().storingStatIn(stat).forPath(path); + } + + /** + * Get the data in a ZNode. + * @param path Path of the ZNode. * @return The data in the ZNode. * @throws Exception If it cannot contact Zookeeper. */ - public String getSringData(final String path) throws Exception { + public String getStringData(final String path) throws Exception { byte[] bytes = getData(path); return new String(bytes, Charset.forName("UTF-8")); } /** + * Get the data in a ZNode. + * @param path Path of the ZNode. + * @param stat Output statistics of the ZNode. + * @return The data in the ZNode. + * @throws Exception If it cannot contact Zookeeper. + */ + public String getStringData(final String path, Stat stat) throws Exception { +byte[] bytes = getData(path, stat); +return new String(bytes, Charset.forName("UTF-8")); + } + + /** * Set data into a ZNode. * @param path Path of the ZNode. * @param data Data to set. @@ -272,14 +296,36 @@ public final class ZKCuratorManager { } /** + * Utility function to ensure that the configured base znode exists. + * This recursively creates the znode as well as all of its parents. + * @param path Path of the znode to create. + * @throws Exception If it cannot create the file. + */ + public void createRootDirRecursively(String path) throws Exception { +String[] pathParts = path.split("/"); +Preconditions.checkArgument( +pathParts.length >= 1 && pathParts[0].isEmpty(), +"Invalid path: %s", path); +StringBuilder sb = new StringBuilder(); + +for (int i = 1; i < pathParts.length; i++) { + sb.append("/").append(pathParts[i]); + create(sb.toString()); +} + } + + /** * Delete a ZNode. * @param path Path of the ZNode. + * @return If the znode was deleted. * @throws Exception If it cannot contact ZooKeeper. */ - public void delete(final String path) throws Exception { + public boolean delete(final String path) throws Exception { if (exists(path)) {
hadoop git commit: HDFS-12301. NN File Browser UI: Navigate to a path when enter is pressed
Repository: hadoop Updated Branches: refs/heads/branch-2.8.2 77e9d9ff4 -> 155646c48 HDFS-12301. NN File Browser UI: Navigate to a path when enter is pressed (cherry picked from commit f34646d652310442cb5339aa269f10dfa838) (cherry picked from commit 895a35eac0422c1845ebe3c5bed1ac2bda1ac807) (cherry picked from commit a611922de4e2fc82506872d68c4efcb963fb15e9) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/155646c4 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/155646c4 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/155646c4 Branch: refs/heads/branch-2.8.2 Commit: 155646c48c30fa2bba1cde0412080abd7e033b53 Parents: 77e9d9f Author: Ravi PrakashAuthored: Tue Aug 15 15:44:59 2017 -0700 Committer: Ravi Prakash Committed: Tue Aug 15 15:47:08 2017 -0700 -- .../hadoop-hdfs/src/main/webapps/hdfs/explorer.js | 6 ++ 1 file changed, 6 insertions(+) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/155646c4/hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/hdfs/explorer.js -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/hdfs/explorer.js b/hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/hdfs/explorer.js index 102da9d..a86f7e3 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/hdfs/explorer.js +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/hdfs/explorer.js @@ -337,6 +337,12 @@ var b = function() { browse_directory($('#directory').val()); }; $('#btn-nav-directory').click(b); +//Also navigate to the directory when a user presses enter. +$('#directory').on('keyup', function (e) { + if (e.which == 13) { +browse_directory($('#directory').val()); + } +}); var dir = window.location.hash.slice(1); if(dir == "") { window.location.hash = "/"; - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
hadoop git commit: HDFS-12301. NN File Browser UI: Navigate to a path when enter is pressed
Repository: hadoop Updated Branches: refs/heads/branch-2.8 87c36d8b8 -> a611922de HDFS-12301. NN File Browser UI: Navigate to a path when enter is pressed (cherry picked from commit f34646d652310442cb5339aa269f10dfa838) (cherry picked from commit 895a35eac0422c1845ebe3c5bed1ac2bda1ac807) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/a611922d Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/a611922d Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/a611922d Branch: refs/heads/branch-2.8 Commit: a611922de4e2fc82506872d68c4efcb963fb15e9 Parents: 87c36d8 Author: Ravi PrakashAuthored: Tue Aug 15 15:44:59 2017 -0700 Committer: Ravi Prakash Committed: Tue Aug 15 15:46:22 2017 -0700 -- .../hadoop-hdfs/src/main/webapps/hdfs/explorer.js | 6 ++ 1 file changed, 6 insertions(+) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/a611922d/hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/hdfs/explorer.js -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/hdfs/explorer.js b/hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/hdfs/explorer.js index 102da9d..a86f7e3 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/hdfs/explorer.js +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/hdfs/explorer.js @@ -337,6 +337,12 @@ var b = function() { browse_directory($('#directory').val()); }; $('#btn-nav-directory').click(b); +//Also navigate to the directory when a user presses enter. +$('#directory').on('keyup', function (e) { + if (e.which == 13) { +browse_directory($('#directory').val()); + } +}); var dir = window.location.hash.slice(1); if(dir == "") { window.location.hash = "/"; - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
hadoop git commit: HDFS-12301. NN File Browser UI: Navigate to a path when enter is pressed
Repository: hadoop Updated Branches: refs/heads/branch-2 b30522c59 -> 895a35eac HDFS-12301. NN File Browser UI: Navigate to a path when enter is pressed (cherry picked from commit f34646d652310442cb5339aa269f10dfa838) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/895a35ea Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/895a35ea Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/895a35ea Branch: refs/heads/branch-2 Commit: 895a35eac0422c1845ebe3c5bed1ac2bda1ac807 Parents: b30522c Author: Ravi PrakashAuthored: Tue Aug 15 15:44:59 2017 -0700 Committer: Ravi Prakash Committed: Tue Aug 15 15:45:37 2017 -0700 -- .../hadoop-hdfs/src/main/webapps/hdfs/explorer.js | 6 ++ 1 file changed, 6 insertions(+) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/895a35ea/hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/hdfs/explorer.js -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/hdfs/explorer.js b/hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/hdfs/explorer.js index 3e276a9..dae3519 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/hdfs/explorer.js +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/hdfs/explorer.js @@ -370,6 +370,12 @@ var b = function() { browse_directory($('#directory').val()); }; $('#btn-nav-directory').click(b); +//Also navigate to the directory when a user presses enter. +$('#directory').on('keyup', function (e) { + if (e.which == 13) { +browse_directory($('#directory').val()); + } +}); var dir = window.location.hash.slice(1); if(dir == "") { window.location.hash = "/"; - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
hadoop git commit: HDFS-12301. NN File Browser UI: Navigate to a path when enter is pressed
Repository: hadoop Updated Branches: refs/heads/trunk d26545902 -> f34646d65 HDFS-12301. NN File Browser UI: Navigate to a path when enter is pressed Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/f34646d6 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/f34646d6 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/f34646d6 Branch: refs/heads/trunk Commit: f34646d652310442cb5339aa269f10dfa838 Parents: d265459 Author: Ravi PrakashAuthored: Tue Aug 15 15:44:59 2017 -0700 Committer: Ravi Prakash Committed: Tue Aug 15 15:44:59 2017 -0700 -- .../hadoop-hdfs/src/main/webapps/hdfs/explorer.js | 6 ++ 1 file changed, 6 insertions(+) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/f34646d6/hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/hdfs/explorer.js -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/hdfs/explorer.js b/hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/hdfs/explorer.js index 3e276a9..dae3519 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/hdfs/explorer.js +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/hdfs/explorer.js @@ -370,6 +370,12 @@ var b = function() { browse_directory($('#directory').val()); }; $('#btn-nav-directory').click(b); +//Also navigate to the directory when a user presses enter. +$('#directory').on('keyup', function (e) { + if (e.which == 13) { +browse_directory($('#directory').val()); + } +}); var dir = window.location.hash.slice(1); if(dir == "") { window.location.hash = "/"; - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org
hadoop git commit: HDFS-12290. Block Storage: Change dfs.cblock.jscsi.server.address default bind address to 0.0.0.0. Contributed by Mukul Kumar Singh.
Repository: hadoop Updated Branches: refs/heads/HDFS-7240 bfc49a4b2 -> 63edc5b1e HDFS-12290. Block Storage: Change dfs.cblock.jscsi.server.address default bind address to 0.0.0.0. Contributed by Mukul Kumar Singh. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/63edc5b1 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/63edc5b1 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/63edc5b1 Branch: refs/heads/HDFS-7240 Commit: 63edc5b1e537670bdab8447fcdb62a499c11b9b9 Parents: bfc49a4 Author: Chen LiangAuthored: Tue Aug 15 15:37:17 2017 -0700 Committer: Chen Liang Committed: Tue Aug 15 15:37:17 2017 -0700 -- .../src/main/java/org/apache/hadoop/cblock/CBlockConfigKeys.java | 2 +- .../hadoop-hdfs/src/main/resources/ozone-default.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/63edc5b1/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/cblock/CBlockConfigKeys.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/cblock/CBlockConfigKeys.java b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/cblock/CBlockConfigKeys.java index 35b8961..d77091f 100644 --- a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/cblock/CBlockConfigKeys.java +++ b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/cblock/CBlockConfigKeys.java @@ -132,7 +132,7 @@ public final class CBlockConfigKeys { public static final String DFS_CBLOCK_JSCSI_SERVER_ADDRESS_KEY = "dfs.cblock.jscsi.server.address"; public static final String DFS_CBLOCK_JSCSI_SERVER_ADDRESS_DEFAULT = - "127.0.0.1"; + "0.0.0.0"; public static final String DFS_CBLOCK_JSCSI_CBLOCK_SERVER_ADDRESS_KEY = "dfs.cblock.jscsi.cblock.server.address"; public static final String DFS_CBLOCK_JSCSI_CBLOCK_SERVER_ADDRESS_DEFAULT = http://git-wip-us.apache.org/repos/asf/hadoop/blob/63edc5b1/hadoop-hdfs-project/hadoop-hdfs/src/main/resources/ozone-default.xml -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/resources/ozone-default.xml b/hadoop-hdfs-project/hadoop-hdfs/src/main/resources/ozone-default.xml index 3575d5e..c3d0a89 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/resources/ozone-default.xml +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/resources/ozone-default.xml @@ -788,7 +788,7 @@ dfs.cblock.jscsi.server.address -127.0.0.1 +0.0.0.0 The address that jscsi server will be running, should have one local jscsi server for each client that tries to mount cblock. - To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org