Flume
  1. Flume
  2. FLUME-2208

Jetty's default SocketSelector leaks File descriptors

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: v1.5.0
    • Component/s: None
    • Labels:
      None

      Description

      This causes each HTTP monitoring poll to leak one FD and each connection from an external client to HTTP Source to leak an FD when closed. Each metrics poll causes lsof to show an FD that looks like this:

      java 3317 root 173u sock 0,5 31374 can't identify protocol

      This is because of a half-closed socket, whose close is incomplete. JETTY-597 might be relevant.

      1. FLUME-2208.patch
        3 kB
        Hari Shreedharan

        Issue Links

          Activity

          Hide
          Hari Shreedharan added a comment -

          Trivial patch to fix this.

          Show
          Hari Shreedharan added a comment - Trivial patch to fix this.
          Hide
          Hari Shreedharan added a comment -

          Using SelectSocketChannel fixes the issue.

          Show
          Hari Shreedharan added a comment - Using SelectSocketChannel fixes the issue.
          Hide
          Mike Percy added a comment -

          +1

          Show
          Mike Percy added a comment - +1
          Hide
          Mike Percy added a comment -

          Pushed to trunk and flume-1.5 branches. Thanks for the patch Hari!

          Show
          Mike Percy added a comment - Pushed to trunk and flume-1.5 branches. Thanks for the patch Hari!
          Hide
          Hudson added a comment -

          FAILURE: Integrated in flume-trunk #510 (See https://builds.apache.org/job/flume-trunk/510/)
          FLUME-2208. Jetty's default SocketSelector leaks File descriptors (mpercy: http://git-wip-us.apache.org/repos/asf/flume/repo?p=flume.git&a=commit&h=02fc1a8cf436dbc9327e96d21452b826978479f8)

          • flume-ng-core/src/main/java/org/apache/flume/source/http/HTTPSource.java
          • flume-ng-core/src/main/java/org/apache/flume/instrumentation/http/HTTPMetricsServer.java
          Show
          Hudson added a comment - FAILURE: Integrated in flume-trunk #510 (See https://builds.apache.org/job/flume-trunk/510/ ) FLUME-2208 . Jetty's default SocketSelector leaks File descriptors (mpercy: http://git-wip-us.apache.org/repos/asf/flume/repo?p=flume.git&a=commit&h=02fc1a8cf436dbc9327e96d21452b826978479f8 ) flume-ng-core/src/main/java/org/apache/flume/source/http/HTTPSource.java flume-ng-core/src/main/java/org/apache/flume/instrumentation/http/HTTPMetricsServer.java

            People

            • Assignee:
              Hari Shreedharan
              Reporter:
              Hari Shreedharan
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development