hadoop-common-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Johan Oskarson (JIRA)" <j...@apache.org>
Subject [jira] Updated: (HADOOP-601) we need some rpc retry framework
Date Mon, 19 Feb 2007 17:28:05 GMT

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

Johan Oskarson updated HADOOP-601:

    Affects Version/s:     (was: 0.7.2)
               Status: Patch Available  (was: Open)

Created a draft patch to solve this issue more or less as suggested by Owen.

I left out the Try option (try once, no exception) since it's not possible to return null
if the proxied method has a primitive return value.

This patch just contains the annotations and retry bits, I'm going to leave it up to someone
with more intimate knowledge of hadoop to decide what retry policy goes where.

Suggestions and corrections welcome.

Example usage:
public void doSomething() throws IOException;

public void doSomething() throws IOException;

@RpcReliability(value=RetryPolicy.TIMED, timedDelaySecs=5, timedTrySecs=30)
public int doSomething() throws IOException;

@RpcReliability(value=RetryPolicy.TIMED, timedDelaySecs=5, timedTrySecs=30,
        handlers={@ErrorHandler(err=SocketTimeoutException.class, response=RetryPolicy.FOREVER),
                    @ErrorHandler(err=NullPointerException.class, response=RetryPolicy.TRY_NOTIFY)})
public int doSomething() throws IOException;

> we need some rpc retry framework
> --------------------------------
>                 Key: HADOOP-601
>                 URL: https://issues.apache.org/jira/browse/HADOOP-601
>             Project: Hadoop
>          Issue Type: Improvement
>          Components: ipc
>    Affects Versions: 0.11.2
>            Reporter: Owen O'Malley
>         Assigned To: Owen O'Malley
>         Attachments: HADOOP-601-v1.patch, HADOOP-601-v1.patch
> We need some mechanism for RPC calls that get exceptions to automatically retry the call
under certain circumstances. In particular, we often end up with calls to rpcs being wrapped
with retry loops for timeouts. We should be able to make a retrying proxy that will call the
rpc and retry in some circumstances.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message