Uploaded image for project: 'Camel'
  1. Camel
  2. CAMEL-13527

Implement missing optimisation for DelimiterBasedFrameDecoder

    XMLWordPrintableJSON

    Details

    • Estimated Complexity:
      Unknown

      Description

      See pretty nice analysis on SO https://stackoverflow.com/questions/56110408/memory-leak-in-camel-netty-tcp-client-when-consuming-lines-with-windows-line-bre

      io.netty.handler.codec.DelimiterBasedFrameDecoder internally delegates decoding to io.netty.handler.codec.LineBasedFrameDecoder. This delegation is not working with Camel, because Netty internally checks for condition

      this.getClass() != DelimiterBasedFrameDecoder.class // io.netty.handler.codec.DelimiterBasedFrameDecoder line 174 - !isSubclass()
      

      We can recreate similar optimisation inside org.apache.camel.component.netty4.codec.DelimiterBasedFrameDecoder and get (according to SO post) significant performance improvement.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                davsclaus Claus Ibsen
                Reporter:
                bedla Jan Bednar
              • Votes:
                1 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 20m
                  20m