Uploaded image for project: 'Undertow'
  1. Undertow
  2. UNDERTOW-2341

Strange deadlock-like situation in ServletOutputStreamImpl.flushInternal()

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Critical Critical
    • None
    • None
    • None
    • None

      Okay, I will have a difficult time describing my problem. Our app seems to be getting in a deadlock situationĀ  after about a day of operation. The only thing that changed was an upgrade to Wildfly 30 from Wildfly 26. (Wildfly 31 has the same issue). See the attached thread dump for details and look for thread 'default task-638'

      It seems that the ServletOutputStreamImpl performs a blocking flush which stays in a loop. There is no more data to flush, but there is a loop in Channels.flushBlocking that keeps trying to flush, never stopping.

      Should not the flush have a timeout? An eternal blocking flush does not sound as a good idea...

        1. image-2024-02-02-12-30-08-053.png
          41 kB
          Roel MEEUWS
        2. image-2024-02-02-12-31-00-452.png
          41 kB
          Roel MEEUWS
        3. thread.dump.20240516
          117 kB
          Roel MEEUWS
        4. thread.dump.txt
          220 kB
          Roel MEEUWS
        5. webportfolio.stack.dump.20240405T164439
          193 kB
          Roel MEEUWS

              flaviarnn Flavia Rainone
              r.j.meeuws@gmail.com Roel MEEUWS (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Created:
                Updated: