diff options
author | Mukul Kumar Singh <msingh@apache.org> | 2018-05-14 22:25:03 +0530 |
---|---|---|
committer | Mukul Kumar Singh <msingh@apache.org> | 2018-05-14 22:25:03 +0530 |
commit | 6653f4ba2ee21e6deb3736b41381451428f620e0 (patch) | |
tree | cfc7f2f1390d219a9d6f16945d26a08f638d2a3c /hadoop-hdds/container-service/src/main/java/org/apache | |
parent | 960940e0e08f7839775f2d8a352b444d104d36b4 (diff) |
HDDS-19. Update ozone to latest ratis snapshot build (0.1.1-alpha-d7d7061-SNAPSHOT). Contributed by Lokesh Jain.
Diffstat (limited to 'hadoop-hdds/container-service/src/main/java/org/apache')
-rw-r--r-- | hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/transport/server/ratis/XceiverServerRatis.java | 33 |
1 files changed, 31 insertions, 2 deletions
diff --git a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/transport/server/ratis/XceiverServerRatis.java b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/transport/server/ratis/XceiverServerRatis.java index 4bd55f1b99..46def09710 100644 --- a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/transport/server/ratis/XceiverServerRatis.java +++ b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/transport/server/ratis/XceiverServerRatis.java @@ -29,6 +29,7 @@ import org.apache.hadoop.ozone.container.common.transport.server .XceiverServerSpi; import org.apache.ratis.RaftConfigKeys; import org.apache.ratis.RatisHelper; +import org.apache.ratis.client.RaftClientConfigKeys; import org.apache.ratis.conf.RaftProperties; import org.apache.ratis.grpc.GrpcConfigKeys; import org.apache.ratis.netty.NettyConfigKeys; @@ -78,11 +79,31 @@ public final class XceiverServerRatis implements XceiverServerSpi { final int numWriteChunkThreads = conf.getInt( OzoneConfigKeys.DFS_CONTAINER_RATIS_NUM_WRITE_CHUNK_THREADS_KEY, OzoneConfigKeys.DFS_CONTAINER_RATIS_NUM_WRITE_CHUNK_THREADS_DEFAULT); + TimeUnit timeUnit = + OzoneConfigKeys.DFS_RATIS_CLIENT_REQUEST_TIMEOUT_DURATION_DEFAULT + .getUnit(); + long duration = conf.getTimeDuration( + OzoneConfigKeys.DFS_RATIS_CLIENT_REQUEST_TIMEOUT_DURATION_KEY, + OzoneConfigKeys.DFS_RATIS_CLIENT_REQUEST_TIMEOUT_DURATION_DEFAULT + .getDuration(), timeUnit); + final TimeDuration clientRequestTimeout = + TimeDuration.valueOf(duration, timeUnit); + timeUnit = OzoneConfigKeys.DFS_RATIS_SERVER_REQUEST_TIMEOUT_DURATION_DEFAULT + .getUnit(); + duration = conf.getTimeDuration( + OzoneConfigKeys.DFS_RATIS_SERVER_REQUEST_TIMEOUT_DURATION_KEY, + OzoneConfigKeys.DFS_RATIS_SERVER_REQUEST_TIMEOUT_DURATION_DEFAULT + .getDuration(), timeUnit); + final TimeDuration serverRequestTimeout = + TimeDuration.valueOf(duration, timeUnit); Objects.requireNonNull(dd, "id == null"); this.port = port; - RaftProperties serverProperties = newRaftProperties(rpc, port, - storageDir, maxChunkSize, raftSegmentSize, raftSegmentPreallocatedSize); + RaftProperties serverProperties = + newRaftProperties(rpc, port, storageDir, maxChunkSize, raftSegmentSize, + raftSegmentPreallocatedSize); + setRequestTimeout(serverProperties, clientRequestTimeout, + serverRequestTimeout); writeChunkExecutor = new ThreadPoolExecutor(numWriteChunkThreads, numWriteChunkThreads, @@ -99,6 +120,14 @@ public final class XceiverServerRatis implements XceiverServerSpi { .build(); } + private static void setRequestTimeout(RaftProperties serverProperties, + TimeDuration clientRequestTimeout, TimeDuration serverRequestTimeout) { + RaftClientConfigKeys.Rpc + .setRequestTimeout(serverProperties, clientRequestTimeout); + RaftServerConfigKeys.Rpc + .setRequestTimeout(serverProperties, serverRequestTimeout); + } + private static RaftProperties newRaftProperties( RpcType rpc, int port, String storageDir, int scmChunkSize, int raftSegmentSize, int raftSegmentPreallocatedSize) { |