Commit Graph

1189 Commits

Author SHA1 Message Date
Christopher L. Shannon 901956d4dd
AMQ-9262 - Fix network subscriptions for composite consumers (#1014)
This fixes network subscriptions that are generated on demand when a
consumer uses composite destinations. Before this fix conduit
subscriptions didn't work correctly. This fix now splits up the
composite dest and generates correct demand for each of the individual
destinations.
2023-06-07 07:18:18 -04:00
Matt Pavlovich 67f5afa0f4 [AMQ-9259] Remove activemq-partition and zookeeper test dependency 2023-05-22 11:00:51 -05:00
Matt Pavlovich 9a5b61f6a2
[AMQ-9257] Disabled expire message checking when pauseDispatch=true (#1005) 2023-05-19 08:06:53 -05:00
Matt Pavlovich 5ca71dfee6
[AMQ-9234] Remove JournalJDBC store and activeio dependency (#993) 2023-03-29 08:38:25 -05:00
Matt Pavlovich 413dfa9532
[AMQ-5137] make networkConnector decreaseNetworkConsumerPriority="true" the default (#771) 2023-03-13 20:00:36 -06:00
Christopher L. Shannon 9fe24cd8e3
AMQ-7309 - Implement Message#isBodyAssignableTo and Message#getBody methods (#979)
AMQ-7309 - Implement Message#isBodyAssignableTo and Message#getBody
methods
2023-02-16 18:03:14 -05:00
Christopher L. Shannon (cshannon) ee14778305 AMQ-7309 - remove test after adding support for jms 2 create session 2023-02-15 18:05:17 -05:00
Christopher L. Shannon (cshannon) 2c69e30748 AMQ-7309 - Implement JMS 2.0 createSession methods
Adds a real implemention for createSession() and createSession(ackMode)
methods on ActiveMQConnection
2023-02-15 08:33:00 -05:00
Matt Pavlovich 28f7eb7ee8 [AMQ-9217] Fix per-destination audits on IndividualDeadLetterStrategy 2023-02-08 09:56:03 -06:00
Christopher L. Shannon (cshannon) a083ff4d23 AMQ-9193 - Improve broker shutdown in unit tests
This should improve test reliability for the unit tests so brokers don't
hang around after the end of a test on error. Also increase the surefire
re-run count to 3 times before failing.
2023-01-11 06:21:21 -05:00
Christopher L. Shannon (cshannon) 044f5346e9 AMQ-9192 - Fix flaky AdvisoryTests
Properly shutdown broker for each test and speed up tests by sending
less messages
2023-01-10 12:29:33 -05:00
Jean-Baptiste Onofré 9852cf1f49
Merge pull request #843 from stolsvik/main
AMQ-8617: RedeliveryPolicy:Exponential Backoff + NonBlockingRedelivery = too long delays
2022-11-22 08:55:43 +01:00
Christopher L. Shannon (cshannon) f83c5f1ba1 AMQ-9175 - Properly set broker on ConnectionContext inside
MemoryTransactionStores

This fixes a NPE when using the messageDelivered advisory and
transactions
2022-11-21 11:03:08 -05:00
Christopher L. Shannon (cshannon) f6e26085cf AMQ-9159 - Add a test case to verify inflight message stats for wildcard
consumer when a destination is removed
2022-11-17 09:02:43 -05:00
Christopher L. Shannon (cshannon) b6540746a2 NO-JIRA: Add timeout for flaky test 2022-11-16 12:46:05 -05:00
Christopher L. Shannon (cshannon) 757a712890 AMQ-9168 - Send message expired advisory and not discard advisory when
Topic subscriptions expire a message

This fixes topic subs to send the right advisory type, if enabled, when
the server discards a message on dispatch to a topic sub. Also add some
more expiration tests for other subscription types
2022-11-16 06:43:21 -05:00
Christopher L. Shannon (cshannon) 85502a526d AMQ-9157 - Dispatched advisory should not fire for queue browsers
The dispatched advisory doesn't really make sense to send for queue
browsers, just like we don't send a consumed advisory, as it's more of
an admin type funtion to look at the contents of a queue but it's not a
real consumer that is receiving and acking messages.
2022-11-15 10:13:45 -05:00
Matt Pavlovich c25975389f
[AMQ-9163] Add 'Started' attribute to ConnectorView (#932) 2022-11-14 09:03:44 -06:00
Christopher L. Shannon (cshannon) c140d73fec AMQ-9157 - Include consumer id as part of Dispatched advisory 2022-11-11 13:53:47 -05:00
Christopher L. Shannon (cshannon) 39da75abdb AMQ-9157 - Add utility methods for dispatched advisory 2022-11-11 08:23:25 -05:00
Christopher L. Shannon (cshannon) 76f612600d AMQ-9157 - Add a new optional advisory for dispatched messages 2022-11-03 14:30:33 -04:00
Christopher L. Shannon (cshannon) 58666afffd AMQ-9156 - Make sure in flight metrics are properly decremented on
subscription destroys and dispatch failures
2022-11-03 10:38:02 -04:00
Christopher L. Shannon (cshannon) d46b74d674 AMQ-9107 - rework performance improvement for consumer closing in
managed region broker

This new approach just looks matching Subscriptions from the region for the
destination which prevents having to store another map and falls back to
the old approach if something went wrong.
2022-11-03 06:43:55 -04:00
Christopher L. Shannon (cshannon) ea10d984d0 AMQ-9152: Make test classes abstract to fix surefire plugin 2022-11-01 17:49:35 -04:00
Christopher L. Shannon (cshannon) 596ee31687 AMQ-9153: Fix slow consumer advisory for queue subscriptions
Due to changes with Queues to check if consumers are full before adding
more messages to the subscription, the Queue dispatch logic needed to be
updated to mark subscriptions as slow and send advisories if configured
instead of relying on the subscription itself to do it.
2022-11-01 10:29:53 -04:00
Lucas Tétreault 98b7d3443c Add a test for offline durable subscriptions for AMQ-9107 2022-11-01 07:06:15 +01:00
Matt Pavlovich ead9533d53
[AMQ-8322] JMS2 Implementation - JMSContext, JMSProducer, JMSConsumer first pass (#729) 2022-09-02 08:21:11 -05:00
Jean-Baptiste Onofré 8d8a27c7a7 Add missing ASF header 2022-08-24 09:39:54 +02:00
Matt Pavlovich 82a2374764 [AMQ-8981] Fix CustomBridgeFactoryTest 2022-08-22 17:11:05 -05:00
Jean-Baptiste Onofré 7006570c1d
Merge pull request #842 from eolivelli/AMQ-8613
AMQ-8613 Improve performance of selectors with a big sequence of OR and AND logical expressions
2022-08-17 07:47:06 +02:00
Matt Pavlovich 680717cb95
[AMQ-8976] Add maxConnectionExceededCount metric for connectors (#850) 2022-07-18 16:20:25 -05:00
Matt Pavlovich a1b2e3ae02
[AMQ-8978] Clean up WARNs in activemq-unit-tests (#852) 2022-06-29 09:08:22 -05:00
Matt Pavlovich 6598ec5717
[AMQ-8977] Upgrade to mockito 4.6.1 (#851) 2022-06-29 09:08:08 -05:00
Enrico Olivelli 4b08978062 AMQ-8613 Improve performance of selectors with a big sequence of OR and AND logical expressions 2022-05-31 12:07:23 +02:00
Endre Stølsvik 393a696955 AMQ-8617: RedeliveryPolicy:Exponential Backoff + NonBlockingRedelivery = too long delays
Scenario on client:

1. Employing RedeliveryPolicy with exponential backoff (keeping maximum
redeliveries at default 6)
2. Enabled non-blocking redelivery
3. Receiving e.g. 100 consecutive poison messages (which eventually
should DLQ after max redeliveries)

This will result in massive redelivery delays due to a logic bug.

The reason is that redeliveryDelay is a field variable kept on the
ActiveMQMessageConsumer, instead of being a property on the message - or
that the redelivery delay was calculated per message based on the
redelivery count.

When consecutive messages rollbacks multiple times, the redeliveryDelay
field is continuously multiplied by the backoff multiplier, resulting in
enormous delays.

Fix: Ditch the field variable, instead calculating the redeliveryDelay
per delivery from the redelivery count. (This happens to be identical to
how it is done in afterRollback() in ActiveMQSession:1004.)

Test is added - which fails with the previous code, and passes with
this. Added a debug log line for the calculated delay.
2022-05-31 01:56:30 +02:00
Jean-Baptiste Onofré ebe6992fd6 Fix log name in SharedFileLockerLoggingTest and enable runtime config module (local changed pushed by mistake) 2022-04-18 11:19:14 +02:00
Jean-Baptiste Onofré c711d5c029 Fix unit tests which fail related to log4j 2.17.2 update 2022-04-17 07:28:57 +02:00
Jean-Baptiste Onofré 3f454600e6
Merge pull request #809 from jbonofre/AMQ-8561
[AMQ-8561] Add missing jetty-webapp dependency in activemq-web
2022-04-06 07:43:26 +02:00
Christopher L. Shannon b93d58259c AMQ-8550 - Check for null keystore/truststore passwords
Inside ActiveMQSslConnectionFactory the passwords should be checked for
null so a NPE isn't thrown. Null will be passed to the factories instead
and the keystore/truststore factories will try and load the keystores
using null for the password which may or may not work depending on the
implementation and if password is set.
2022-04-05 12:17:14 -04:00
Jean-Baptiste Onofré ffab5274a4 Fix OfflineDurableSubscriberTimeoutTest on some machine (including Jenkins) 2022-04-03 19:22:58 +02:00
Christopher L. Shannon 32e72b0879 AMQ-8528: Fix test failures in integration module
-DurableFiveBrokerNetworkBridgeTest: Fix refactoring mistake
-SpringTest: Fix Spring xml files
-BrokerRedeliveryTest: Fix after sendDuplicateFromStoreToDLQ default
changed to false
-AMQ4952Test: Fix after sendDuplicateFromStoreToDLQ default
changed to false
-AMQ3537Test: Add missing package to SERIALIZABLE_PACKAGES
-OfflineDurableSubscriberTimeoutTest: Fix after log4j2 update
-JDBCConcurrentDLQTest: Fix after log4j2 update
2022-03-08 13:29:09 -05:00
Christopher L. Shannon (cshannon) 957a2dd940 AMQ-8528: Fix JMS 2.0 related test failures 2022-03-08 11:10:16 -05:00
Christopher L. Shannon (cshannon) ae30dce4e2 AMQ-8520: Log4j2 test fixes
Also fixes Log4jConfigView
2022-03-03 15:24:38 -06:00
Matt Pavlovich 7ec5254bb5 [AMQ-8520] WIP: Convert activemq-unit-tests to log4j2 2022-03-03 15:24:38 -06:00
Matt Pavlovich 094dbc89f3
[AMQ-8515] FailoverTransport should handle MaxFrameSizeExceededException (#785) 2022-02-25 19:46:45 -06:00
Matt Pavlovich 9956dd602a
[AMQ-8440] Set sendDuplicateFromStoreToDLQ to 'false' by default (#773) 2022-02-24 08:45:35 -06:00
Christopher L. Shannon 856d54c7bc
Merge pull request #762 from mattrpav/AMQ-8443-tests
[AMQ-8443] Add unit test
2022-02-09 10:48:04 -05:00
Matt Pavlovich 09458713aa [AMQ-8443] Add unit test 2022-02-09 08:50:24 -06:00
Christopher L. Shannon a7109bc025
Merge pull request #761 from mattrpav/AMQ-8397-tests
[AMQ-8397] Add unit tests for AMQ-8397
2022-02-09 06:33:52 -05:00
Matt Pavlovich 9d8ee0d3b7 [AMQ-8397] Add unit tests for AMQ-8397 2022-02-08 22:19:57 -06:00