hadoop-common-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Xiao Kang (JIRA)" <j...@apache.org>
Subject [jira] Updated: (HADOOP-6768) RPC client can response more efficiently when sendParam() got IOException
Date Wed, 02 Jun 2010 12:53:40 GMT

     [ https://issues.apache.org/jira/browse/HADOOP-6768?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Xiao Kang updated HADOOP-6768:
------------------------------

    Attachment: HADOOP-6768.patch

patch attached.

A. change org.apache.hadoop.ipc.Client

1. add call.setException(e) when sendParam() got IOException to set call.done to avoid current
call wait receiveResponse() thread.

2. interrupt receiveResponse() thread to cleanup other calls on this connection



B. test case for it 

> RPC client can response more efficiently when sendParam() got IOException
> -------------------------------------------------------------------------
>
>                 Key: HADOOP-6768
>                 URL: https://issues.apache.org/jira/browse/HADOOP-6768
>             Project: Hadoop Common
>          Issue Type: Improvement
>          Components: ipc
>    Affects Versions: 0.22.0
>            Reporter: Xiao Kang
>             Fix For: 0.22.0
>
>         Attachments: HADOOP-6768.patch
>
>
> Under current RPC client implementation, when Client.Connection.sendParam() encounters
IOException it just marks the exception and wait receiveResponse() thread to handle the exception.
However, receiveResponse() may block ipc.ping.interval on socket read(). 
> This means that RPC client may wait ipc.ping.interval(typically 1 miniute) when exception
in sendParam().
> It maybe not so reasonable in some situation. For example using "hadoop fs -put " a small
file, DFSClient.close() will interupt renewLease() thread and it may wait 1 minute.

-- 
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