Issue Details (XML | Word | Printable)

Key: HADOOP-2188
Type: Improvement Improvement
Status: Closed Closed
Resolution: Fixed
Priority: Major Major
Assignee: Hairong Kuang
Reporter: Owen O'Malley
Votes: 0
Watchers: 2
Operations

If you were logged in you would be able to see more operations.
Hadoop Common

RPC should send a ping rather than use client timeouts

Created: 10/Nov/07 05:28 PM   Updated: 08/Jul/09 04:42 PM
Return to search
Component/s: ipc
Affects Version/s: 0.16.1
Fix Version/s: 0.18.0

Time Tracking:
Not Specified

File Attachments:
  Size
Text File Licensed for inclusion in ASF works ipc-timeout.patch 2008-02-15 07:35 PM Hairong Kuang 34 kB
Text File Licensed for inclusion in ASF works ipc-timeout1.patch 2008-03-10 10:40 PM Hairong Kuang 48 kB
Text File Licensed for inclusion in ASF works ipc-timeout2.patch 2008-03-12 12:02 AM Hairong Kuang 47 kB
Text File Licensed for inclusion in ASF works ipc-timeout3.patch 2008-03-13 08:53 PM Hairong Kuang 48 kB
Text File Licensed for inclusion in ASF works ipc-timeout4.patch 2008-03-20 11:32 PM Hairong Kuang 49 kB
Text File Licensed for inclusion in ASF works ipc-timeout5.patch 2008-03-21 06:48 PM Hairong Kuang 50 kB
Text File Licensed for inclusion in ASF works ipc-timeout6.patch 2008-04-22 11:55 PM Hairong Kuang 51 kB
Text File Licensed for inclusion in ASF works ipc-timeout7.patch 2008-04-25 08:40 PM Hairong Kuang 53 kB
Text File Licensed for inclusion in ASF works ipc-timeout8.patch 2008-04-30 04:48 PM Hairong Kuang 54 kB
Text File Licensed for inclusion in ASF works ipc-timeout9.patch 2008-05-02 11:23 PM Hairong Kuang 54 kB
Text File Licensed for inclusion in ASF works rpc-to.patch 2007-11-19 07:47 AM Owen O'Malley 27 kB
Issue Links:
Incorporates
 

Hadoop Flags: Reviewed, Incompatible change
Release Note:
Replaced timeouts with pings to check that client connection is alive. Removed the property ipc.client.timeout from the default Hadoop configuration. Removed the metric RpcOpsDiscardedOPsNum.
Resolution Date: 05/May/08 09:27 PM


 Description  « Hide
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.

 All   Comments   Work Log   Change History   Subversion Commits      Sort Order: Ascending order - Click to sort in descending order