Uploaded image for project: 'Qpid Dispatch'
  1. Qpid Dispatch
  2. DISPATCH-571

Driver spins when a listener accepts a socket while FDs are all in use

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 1.0.0
    • Container
    • None

    Description

      when operating as a server and using listeners, if the number of open FDs is equal to the limit on FDs, accept will return an error and the driver will spin at 100% cpu until an FD is freed up for the incoming connection.

      Suggested fix:

      If "accept" returns a "too many open files" error (ENFILE or EMFILE), the listening socket should be taken out of the read-fds for a time (say one second) before retrying.

      If this is not practical to do in Proton, the driver should provide hooks for the encapsulating application to use to provide this holdoff.

      Attachments

        Issue Links

          Activity

            People

              aconway Alan Conway
              tross Ted Ross
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: