[
https://issues.apache.org/jira/browse/HADOOP-2188?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Hairong Kuang updated HADOOP-2188:
----------------------------------
Attachment: ipc-timeout.patch
In addition to the changes I proposed above, it has the following changes:
1. remove the field inUse in Client.Connection. In stead use calls.size().
2. Start the connection thread after I/O streams are set up.
3. Remove call.setResult, instead use setValuse and setException.
This patch is posted for review. It passed junit tests. I will perform more
extensive large scale tests.
> RPC should send a ping rather than use client timeouts
> ------------------------------------------------------
>
> Key: HADOOP-2188
> URL: https://issues.apache.org/jira/browse/HADOOP-2188
> Project: Hadoop Core
> Issue Type: Improvement
> Components: dfs, ipc
> Reporter: Owen O'Malley
> Assignee: Hairong Kuang
> Attachments: ipc-timeout.patch, rpc-to.patch
>
>
> Current RPC (really IPC) relies on client side timeouts to find "dead"
> sockets. I propose that we have a thread that once a minute (if the
> connection has been idle) writes a "ping" message to the socket. The client
> can detect a dead socket by the resulting error on the write, so no client
> side timeout is required. Also note that the ipc server does not need to
> respond to the ping, just discard it.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.