Fixing PList size tracking by moving the null assignment on removal to
after the onRemoval method is called to make sure that the decrement is
done properly.
(cherry picked from commit d635a36940)
The MQTT transport will now throw an exception if a PINGREQ is sent to
the broker if a CONNECT packet has not been received first as the spec
says CONNECT must be the first packet sent.
(cherry picked from commit 6dacef1c95)
Fixing a race condition in ActiveMQMessageConsumer that could cause a
NPE when the consumer is closing by only modifing pendingAck inside of
the deliveredMessagesMutex
Thanks to Michael Wong for providing the test case for this issue.
(cherry picked from commit c02bc64846)
Fixing a race condition in ActiveMQMessageConsumer that could cause a
NPE when the consumer is closing
Thanks to Michael Wong for providing the test case for this issue.
(cherry picked from commit 6bfa13b6e7)
Refactor credit handling and drain state tracking to ensure we stay in
sync with the remote state and always answer drain requests. Start
adding some more tests around drain to the interop suite.
(cherry picked from commit 8448cf1cb8)
Add test and supporting enhancements to the JUnit module to allow for
easy repetition of tests that don't always fail reliably
(cherry picked from commit 6ae169e275)
On MQTT Websocket close, a LWT message will be properly sent if
configured and a disconnect packet was not received
(cherry picked from commit bd442a3388)
Fixing an issue that caused statistics for a transactional temporary
queue to be updated twice by mistake. Moved the statistics update into
tryOrderedCursorAdd so that the update is called immediately only if
not inside a transaction.
(cherry picked from commit 903dec615c)
Checking for leading wildcard in the prefix for a virtualtopic,
modifying the behavior of shouldDispatch in the VirtualTopicInterceptor.
(cherry picked from commit 6bf5987921)
Better management of shared resources between the background run thread
and the main start / stop thread. Makes sure to cleanup all resources
before finally throwing on stop to prevent leaking and resources.
(cherry picked from commit ff99872263)
Conflicts:
activemq-client/src/main/java/org/apache/activemq/transport/tcp/TcpTransportServer.java
Close failed connection on start if the reconnect on exception flag is
enabled.
(cherry picked from commit 2e64abc38a)
Conflicts:
activemq-jms-pool/src/test/java/org/apache/activemq/jms/pool/PooledConnectionSecurityExceptionTest.java
Properly nulling out the scheduler service in MessageDatabase after it
is shutdown on a store close so that if the store is restarted the
thread will properly restart.
(cherry picked from commit 7bdcca1bda)
Added two new properties for configuration to a network bridge,
advisoryPrefetchSize and advisoryAckPercentage. By default
advisoryPrefetchSize is set to 0, which is disabled, and will use the
prefetchSize value unless otherwise set. Also added validation to
prefetchSize to make sure it is greater than 0 as 0 is not allowed.
(cherry picked from commit 297eadf746)
Encode the incoming messageId value into a string using type prefixes
and decode them on the way out to ensure that we preserve the original
AMQP MessageId type and value.
(cherry picked from commit 4d6f4d7475)