mirror of
https://github.com/apache/activemq-artemis.git
synced 2025-02-12 21:15:27 +00:00
Large message support was added to o.a.a.a.c.s.f.FederatedQueueConsumerImpl#onMessage via cf85d35 for ARTEMIS-3308. The problem with that change is that when onMessage returns o.a.a.a.c.c.i.ClientConsumerImpl#callOnMessage will eventually call o.a.a.a.c.c.i.ClientLargeMessageImpl#discardBody which eventually ends up in o.a.a.a.c.c.i.LargeMessageControllerImpl#popPacket waiting 30 seconds (i.e. the default readTimeout) for more packets to arrive (which never do). This happens because the FederatedQueueConsumer short-cuts the "normal" process by using LargeMessageControllerImpl#take. This commit fixes that by tracking the number of bytes "taken" and then looking at that value later when discarding the body effectively skipping the 30 second wait.
Welcome to Apache ActiveMQ Artemis
ActiveMQ Artemis is the next generation message broker from Apache ActiveMQ.
Getting Started
See the User Manual for an in-depth explanation of all aspects of broker configuration and behavior.
The ActiveMQ Artemis Examples repository contains over 90 examples demonstrating many of the client and broker features.
How to Build, etc.
See the Hacking Guide for details about modifying the code, building the project, running tests, IDE integration, etc.
Migrate from ActiveMQ "Classic"
See the Migration Guide for information about the architectural and configuration differences between ActiveMQ "Classic" (i.e. 5.x) and ActiveMQ Artemis.
Report an Issue
See our website for details on how to report an bug, request a feature, etc.
Languages
Java
98.2%
JavaScript
0.8%
Groovy
0.5%
Shell
0.3%
CSS
0.1%