Fixing the order of locks acquired in the KahaDB journal to prevent a
deadlock during file rotation
(cherry picked from commit 5fd63a0e4ee71bb93843ab6bfbba6f93b023a3c3)
Add support for the receiver side of a sender link which carries a
desired capabilities array which can request to know if we support
delayed delivery, answer with an offered capability in that case.
(cherry picked from commit 4a1c05b628fbb3c97c394eebc6810a9786daca4e)
Fixing an issue with syncDurableSubs that cause a bridge failure when
adding multiple bridges between the same brokers
(cherry picked from commit 25703fbd1f27b65a7410acd7df0bfaf7c16845d8)
Fixing the auto+nio+ssl transport so that the protocol detection task
will properly terminate on timeout and not continue to run. Also
lowered the default detection timeout to 15 seconds instead of 30
seconds to match the InactivityMonitor default.
(cherry picked from commit 27238b2dd790cea38d95da46b23ed141f5847782)
Fixing support for Jetty 9.3 and Jetty 9.2. The previous attempt at a
fix had the wrong class instance.
(cherry picked from commit 29b4db5c34fbb7087bc6a08f3e393da32b39ce66)
Fixing a thread safety issue with memoryUsage when using concurrentStoreAndDispatch
that was causing memory usage to get out of sync.
The InnerFutureTask class inside KahaDB was not thread safe which was
the root cause of the problem.
(cherry picked from commit 0f0bdb21ef97c39ec7d54d164e07921611c1de08)
Adding support for Jetty 9.3 by re-adding in the logic to dynamically
load the correct GzipHandler depending on the version
(cherry picked from commit 80f46a80560b2b2ed9fb418c33df75136bc3dc52)
Changing the WebSocket servlet to return a succesful empty response
instead of an error when a GET request is made
(cherry picked from commit f40532a23d70639a027fcf87893de8683edf430f)
Better handle prefetch extension and pull consumers over Topics to avoid
the remote not receiving all the messages available based on the credit
it has issued.
(cherry picked from commit e050519ff6ae8079c5183f6e6372ddb3d03e91c7)
Fixing the auto transport protocol detection so that the byte buffer
that captures the initial bytes for detection is not shared across
threads. This was causing failed connections under high load and high cpu
usage under NIO
(cherry picked from commit 7e648d512d06508d85f6a4e111d9adbdb9e33a82)
Round the start time value not truncate to ensure delay falls on the
correct side of the scheduling block.
(cherry picked from commit 980162233fd3693d1f83d3f95985ac33affa7a8f)
Adding a timeout for websocket sends to prevent the transport thread
from getting stuck and blocking. The default is 30 seconds.
(cherry picked from commit 450cabe4ead1fb78eec2e94013d2868a5bf864da)
Include the already received backlog when deciding to grant additional
credit to avoid excessive backlogs of messages during producer flow
control.
(cherry picked from commit 7cf7fba7aab05ea9c41bf009325c63a6798f6cc8)
Adding a new ActiveMQXASslContextFactory and jndi support for it
in ActiveMQSslInitialContextFactory
(cherry picked from commit 016ae05d0e2697fe53db276d8e6f098d2e9f6f05)
State variables shared across threads in the transport need to be marked
volatile.
(cherry picked from commit 629ee285685b5f63315c8fcd6138a37bd17b958d)
Ensure the proper versions of dependencies for Qpid JMS are brought in
for the test.
(cherry picked from commit c239bf01a9f643fd217ee10efc5992105694b125)
ReduceMemoryFootprint now applies to non-persistent messages if they
have been marshalled and topics now clear memory after the recovery
policy check
(cherry picked from commit 7c3bb401007b4047c540287b53b435b20d3161c0)
Moving BrokerSubscriptionInfo processing into a new thread to prevent a
deadlock of the network bridge on startup
(cherry picked from commit b9cb02ae54a27e6c2f3ff934a1f01b88b7af2f11)
test showing that remote close and not detach is triggered on close of
the receiver.
(cherry picked from commit 1a811b72ddfae5874016de71300e73d8a286a8c6)
Add a test that checks that closing a session does not provoke the
remote to close the session resources explicitly.
(cherry picked from commit bd8f17700c32652883c0372c85f5296276cd1128)
Durable sync over a network bridge will now also sync non-durable
subscriptions proplrly if the consumer belongs to a destination that is
configured to force network durable subscriptions.
(cherry picked from commit d206621a73e4731b00eff49518ea93ba9a4ee3c0)