Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 0.5
    • Fix Version/s: 0.5
    • Component/s: proton-c
    • Labels:
      None
    • Environment:
      osx

      Description

      If a peer closes the socket at an inopportune time poll() will start returning POLLHUP but not POLLERR. this drives messenger into a busyloop as the driver does not check this flag.

      The messenger instance is still able to service other connections but it's doing so at 100% cpu load as every poll() call returns immediately.

        Attachments

        1. 0001-Handle-POLLHUP-as-pending-io.patch
          2 kB
          Bozo Dragojevic
        2. 0001-Handle-POLLHUP-as-POLLERR.patch
          1 kB
          Bozo Dragojevic
        3. confuse-driver.py
          4 kB
          Bozo Dragojevic

          Activity

            People

            • Assignee:
              tedross Ted Ross
              Reporter:
              bozzo Bozo Dragojevic
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: