Hadoop Common
  1. Hadoop Common
  2. HADOOP-6723

unchecked exceptions thrown in IPC Connection orphan clients

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Critical Critical
    • Resolution: Fixed
    • Affects Version/s: 0.20.2
    • Fix Version/s: 0.21.0
    • Component/s: ipc
    • Labels:
      None
    • Hadoop Flags:
      Reviewed

      Description

      If the server sends back some malformed data, for example, receiveResponse() can end up with an incorrect call ID. Then, when it tries to find it in the calls map, it will end up with null and throw NPE in receiveResponse. This isn't caught anywhere, so the original IPC client ends up hanging forever instead of catching an exception. Another example is if the writable implementation itself throws an unchecked exception or OOME.

      We should catch Throwable in Connection.run() and shut down the connection if we catch one.

      1. hadoop-6723-20-1.patch
        3 kB
        Eli Collins
      2. hadoop-6723.txt
        3 kB
        Todd Lipcon

        Activity

        Transition Time In Source Status Execution Times Last Executer Last Execution Date
        Open Open Patch Available Patch Available
        7h 17m 1 Todd Lipcon 26/Apr/10 03:43
        Patch Available Patch Available Resolved Resolved
        28d 15h 57m 1 Tom White 24/May/10 19:40
        Resolved Resolved Closed Closed
        92d 2h 2m 1 Tom White 24/Aug/10 21:42
        Tom White made changes -
        Status Resolved [ 5 ] Closed [ 6 ]
        Eli Collins made changes -
        Attachment hadoop-6723-20-1.patch [ 12445501 ]
        Hide
        Eli Collins added a comment -

        Patch for 20 attached.

        Show
        Eli Collins added a comment - Patch for 20 attached.
        Eli Collins made changes -
        Attachment hadoop-6723-20-1.patch [ 12445499 ]
        Eli Collins made changes -
        Attachment hadoop-6723-20-1.patch [ 12445499 ]
        Hide
        Eli Collins added a comment -

        Patch for 20 attached.

        Show
        Eli Collins added a comment - Patch for 20 attached.
        Hide
        Hudson added a comment -

        Integrated in Hadoop-Common-trunk #346 (See http://hudson.zones.apache.org/hudson/job/Hadoop-Common-trunk/346/)

        Show
        Hudson added a comment - Integrated in Hadoop-Common-trunk #346 (See http://hudson.zones.apache.org/hudson/job/Hadoop-Common-trunk/346/ )
        Hide
        Hudson added a comment -

        Integrated in Hadoop-Common-trunk-Commit #264 (See http://hudson.zones.apache.org/hudson/job/Hadoop-Common-trunk-Commit/264/)
        HADOOP-6723. Unchecked exceptions thrown in IPC Connection should not orphan clients. Contributed by Todd Lipcon.

        Show
        Hudson added a comment - Integrated in Hadoop-Common-trunk-Commit #264 (See http://hudson.zones.apache.org/hudson/job/Hadoop-Common-trunk-Commit/264/ ) HADOOP-6723 . Unchecked exceptions thrown in IPC Connection should not orphan clients. Contributed by Todd Lipcon.
        Tom White made changes -
        Status Patch Available [ 10002 ] Resolved [ 5 ]
        Hadoop Flags [Reviewed]
        Fix Version/s 0.22.0 [ 12314296 ]
        Resolution Fixed [ 1 ]
        Hide
        Tom White added a comment -

        I've just committed this. Thanks Todd!

        Show
        Tom White added a comment - I've just committed this. Thanks Todd!
        Hide
        Jeff Hammerbacher added a comment -

        Any reason this hasn't been committed yet?

        Show
        Jeff Hammerbacher added a comment - Any reason this hasn't been committed yet?
        Hide
        Tom White added a comment -

        +1

        Show
        Tom White added a comment - +1
        Hide
        Todd Lipcon added a comment -

        Hudson didn't post.

        http://hudson.zones.apache.org/hudson/job/Hadoop-Patch-h4.grid.sp2.yahoo.net/480/

        [exec] +1 overall. Here are the results of testing the latest attachment
        [exec] http://issues.apache.org/jira/secure/attachment/12442802/hadoop-6723.txt
        [exec] against trunk revision 937881.
        [exec]
        [exec] +1 @author. The patch does not contain any @author tags.
        [exec]
        [exec] +1 tests included. The patch appears to include 3 new or modified tests.
        [exec]
        [exec] +1 javadoc. The javadoc tool did not generate any warning messages.
        [exec]
        [exec] +1 javac. The applied patch does not increase the total number of javac compiler warnings.
        [exec]
        [exec] +1 findbugs. The patch does not introduce any new Findbugs warnings.
        [exec]
        [exec] +1 release audit. The applied patch does not increase the total number of release audit warnings.
        [exec]
        [exec] +1 core tests. The patch passed core unit tests.
        [exec]
        [exec] +1 contrib tests. The patch passed contrib unit tests.

        Show
        Todd Lipcon added a comment - Hudson didn't post. http://hudson.zones.apache.org/hudson/job/Hadoop-Patch-h4.grid.sp2.yahoo.net/480/ [exec] +1 overall. Here are the results of testing the latest attachment [exec] http://issues.apache.org/jira/secure/attachment/12442802/hadoop-6723.txt [exec] against trunk revision 937881. [exec] [exec] +1 @author. The patch does not contain any @author tags. [exec] [exec] +1 tests included. The patch appears to include 3 new or modified tests. [exec] [exec] +1 javadoc. The javadoc tool did not generate any warning messages. [exec] [exec] +1 javac. The applied patch does not increase the total number of javac compiler warnings. [exec] [exec] +1 findbugs. The patch does not introduce any new Findbugs warnings. [exec] [exec] +1 release audit. The applied patch does not increase the total number of release audit warnings. [exec] [exec] +1 core tests. The patch passed core unit tests. [exec] [exec] +1 contrib tests. The patch passed contrib unit tests.
        Todd Lipcon made changes -
        Status Open [ 1 ] Patch Available [ 10002 ]
        Todd Lipcon made changes -
        Field Original Value New Value
        Attachment hadoop-6723.txt [ 12442802 ]
        Hide
        Todd Lipcon added a comment -

        Patch simply catches the exception and closes down the connection. The included test case times out without this patch, since the call waits forever.

        Show
        Todd Lipcon added a comment - Patch simply catches the exception and closes down the connection. The included test case times out without this patch, since the call waits forever.
        Todd Lipcon created issue -

          People

          • Assignee:
            Todd Lipcon
            Reporter:
            Todd Lipcon
          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development