[2/8] hadoop git commit: Revert "Revert "HADOOP-12957. Limit the number of outstanding async calls. Contributed by Xiaobing Zhou""
Revert "Revert "HADOOP-12957. Limit the number of outstanding async calls. Contributed by Xiaobing Zhou"" This reverts commit 7d4c16bae9b69a722807b3ca200f97bb8cc95f61. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/7b9062f4 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/7b9062f4 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/7b9062f4 Branch: refs/heads/branch-2 Commit: 7b9062f40587ae2f01d29954ec4a9414d46337a5 Parents: c1947a7 Author: Tsz-Wo Nicholas SzeAuthored: Mon Jun 6 16:51:48 2016 +0800 Committer: Tsz-Wo Nicholas Sze Committed: Mon Jun 6 16:51:48 2016 +0800 -- .../hadoop/fs/CommonConfigurationKeys.java | 3 + .../ipc/AsyncCallLimitExceededException.java| 36 +++ .../main/java/org/apache/hadoop/ipc/Client.java | 66 - .../org/apache/hadoop/ipc/TestAsyncIPC.java | 199 ++-- .../hadoop/hdfs/AsyncDistributedFileSystem.java | 12 +- .../apache/hadoop/hdfs/TestAsyncDFSRename.java | 238 +-- 6 files changed, 445 insertions(+), 109 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/7b9062f4/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 e706104..7f510bd 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 @@ -296,6 +296,9 @@ public class CommonConfigurationKeys extends CommonConfigurationKeysPublic { public static final long HADOOP_SECURITY_UID_NAME_CACHE_TIMEOUT_DEFAULT = 4*60*60; // 4 hours + public static final String IPC_CLIENT_ASYNC_CALLS_MAX_KEY = + "ipc.client.async.calls.max"; + public static final int IPC_CLIENT_ASYNC_CALLS_MAX_DEFAULT = 100; public static final String IPC_CLIENT_FALLBACK_TO_SIMPLE_AUTH_ALLOWED_KEY = "ipc.client.fallback-to-simple-auth-allowed"; public static final boolean IPC_CLIENT_FALLBACK_TO_SIMPLE_AUTH_ALLOWED_DEFAULT = false; http://git-wip-us.apache.org/repos/asf/hadoop/blob/7b9062f4/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/AsyncCallLimitExceededException.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/AsyncCallLimitExceededException.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/AsyncCallLimitExceededException.java new file mode 100644 index 000..db97b6c --- /dev/null +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/AsyncCallLimitExceededException.java @@ -0,0 +1,36 @@ +/** + * 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.ipc; + +import java.io.IOException; + +/** + * Signals that an AsyncCallLimitExceededException has occurred. This class is + * used to make application code using async RPC aware that limit of max async + * calls is reached, application code need to retrieve results from response of + * established async calls to avoid buffer overflow in order for follow-on async + * calls going correctly. + */ +public class AsyncCallLimitExceededException extends IOException { + private static final long serialVersionUID = 1L; + + public AsyncCallLimitExceededException(String message) { +super(message); + } +} http://git-wip-us.apache.org/repos/asf/hadoop/blob/7b9062f4/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/Client.java -- diff --git
[2/8] hadoop git commit: Revert "Revert "HADOOP-12957. Limit the number of outstanding async calls. Contributed by Xiaobing Zhou""
Revert "Revert "HADOOP-12957. Limit the number of outstanding async calls. Contributed by Xiaobing Zhou"" This reverts commit 4d36b221a24e3b626bb91093b0bb0fd377061cae. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/aa20fa15 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/aa20fa15 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/aa20fa15 Branch: refs/heads/trunk Commit: aa20fa150d522b9fe469dd99a8e24d7e27d888ea Parents: eded3d1 Author: Tsz-Wo Nicholas SzeAuthored: Mon Jun 6 16:28:47 2016 +0800 Committer: Tsz-Wo Nicholas Sze Committed: Mon Jun 6 16:28:47 2016 +0800 -- .../hadoop/fs/CommonConfigurationKeys.java | 3 + .../ipc/AsyncCallLimitExceededException.java| 36 +++ .../main/java/org/apache/hadoop/ipc/Client.java | 66 - .../org/apache/hadoop/ipc/TestAsyncIPC.java | 199 ++-- .../hadoop/hdfs/AsyncDistributedFileSystem.java | 12 +- .../apache/hadoop/hdfs/TestAsyncDFSRename.java | 238 +-- 6 files changed, 445 insertions(+), 109 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/aa20fa15/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 86e1b43..06614db 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 @@ -324,6 +324,9 @@ public class CommonConfigurationKeys extends CommonConfigurationKeysPublic { public static final long HADOOP_SECURITY_UID_NAME_CACHE_TIMEOUT_DEFAULT = 4*60*60; // 4 hours + public static final String IPC_CLIENT_ASYNC_CALLS_MAX_KEY = + "ipc.client.async.calls.max"; + public static final int IPC_CLIENT_ASYNC_CALLS_MAX_DEFAULT = 100; public static final String IPC_CLIENT_FALLBACK_TO_SIMPLE_AUTH_ALLOWED_KEY = "ipc.client.fallback-to-simple-auth-allowed"; public static final boolean IPC_CLIENT_FALLBACK_TO_SIMPLE_AUTH_ALLOWED_DEFAULT = false; http://git-wip-us.apache.org/repos/asf/hadoop/blob/aa20fa15/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/AsyncCallLimitExceededException.java -- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/AsyncCallLimitExceededException.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/AsyncCallLimitExceededException.java new file mode 100644 index 000..db97b6c --- /dev/null +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/AsyncCallLimitExceededException.java @@ -0,0 +1,36 @@ +/** + * 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.ipc; + +import java.io.IOException; + +/** + * Signals that an AsyncCallLimitExceededException has occurred. This class is + * used to make application code using async RPC aware that limit of max async + * calls is reached, application code need to retrieve results from response of + * established async calls to avoid buffer overflow in order for follow-on async + * calls going correctly. + */ +public class AsyncCallLimitExceededException extends IOException { + private static final long serialVersionUID = 1L; + + public AsyncCallLimitExceededException(String message) { +super(message); + } +} http://git-wip-us.apache.org/repos/asf/hadoop/blob/aa20fa15/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/Client.java -- diff --git