[ https://issues.apache.org/jira/browse/HADOOP-2188?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12543701 ]
Doug Cutting commented on HADOOP-2188: -------------------------------------- The approach looks good. The iterator typing adds noise to the patch. I'm confused by the 'out.close()' call in sendPing(). Is that intended? Perhaps the ping interval should be configurable (undocumented) and a test case could be added that sets a short ping time, shuts down a server, and sees that the client fails promptly? > 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.