Uploaded image for project: 'Qpid'
  1. Qpid
  2. QPID-6189

[Java Common] 0-8/9/9-1 parser can cause stack overflow if a frame is broken into many TCP reads/writes

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 0.31
    • Java Common
    • None

    Description

      When an entire frame is split over many TCP reads/writes the 0-8/9/9-1 codec is effectively using tail recursion to iterate over the buffers to parse the whole frame. When there are a lot of buffers this can cause stack overflow. To guard against this we can simply squash the multiple buffers into a single buffer when we cross a threshold number of buffers.

      Attachments

        Activity

          People

            rgodfrey Robert Godfrey
            rgodfrey Robert Godfrey
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: