Uploaded image for project: 'ActiveMQ Artemis'
  1. ActiveMQ Artemis
  2. ARTEMIS-4750

AMQP Large Message flow control to use runAfter

    XMLWordPrintableJSON

Details

    • Task
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 2.33.0
    • 2.34.0
    • None
    • None

    Description

      the resume delivery on AMQP Large Message Writer is using runNow.

      When a flow control is paused and then resumed, the runNow will make the first read to happen inline to the thread that's resuming other deliveries.

      It would be better to not run the delivery within the same call. Hence the change here is simple, being just using a connection.runLater instead of runNow.

      I have seen this on a thread dump from a production server.

      No semantic issues were encountered but there was a theory that the Netty thread responsible to resume would be busy with a delivery when not supposed to. Better to be safe on this case.

      Attachments

        Activity

          People

            Unassigned Unassigned
            clebertsuconic Clebert Suconic
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: