[ 
https://issues.apache.org/jira/browse/HADOOP-2188?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12545662
 ] 

Raghu Angadi commented on HADOOP-2188:
--------------------------------------

> the rpcs are killed at the top of Client.Connection.close.
hmm.. client side does not help the server side. One big issue at the server 
when it is loaded is that we will have a lot of RPCs waiting and server 
patiently executes all of them only to realize that client side has closed the 
connection for many of them, this in turn slows down the other clients, they 
will close the connections. I think we need Sever to avoid processing RPCs from 
connections which are closed already... each handler could check if the 
connection has a error.

> RPC should send a ping rather than use client timeouts
> ------------------------------------------------------
>
>                 Key: HADOOP-2188
>                 URL: https://issues.apache.org/jira/browse/HADOOP-2188
>             Project: Hadoop
>          Issue Type: Improvement
>          Components: ipc
>            Reporter: Owen O'Malley
>            Assignee: Owen O'Malley
>             Fix For: 0.16.0
>
>         Attachments: 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.

Reply via email to