hadoop-common-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Raghu Angadi (JIRA)" <j...@apache.org>
Subject [jira] Commented: (HADOOP-2188) RPC should send a ping rather than use client timeouts
Date Wed, 19 Mar 2008 01:00:26 GMT

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

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


receiveResponse() modifies {{calls}} without synchronizing on '{{this}}', but other accesses
to it do.

As you mentioned there is more synchronization involved. It is harder check the correctness
with 'isClosed' etc. For e.g. it took some time to see what happens sendParam() returns silently
when isClosed is true. 


> 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, ipc-timeout1.patch, ipc-timeout2.patch, ipc-timeout3.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.


Mime
View raw message