Commit Graph

10089 Commits

Author SHA1 Message Date
Justin Bertram 74fa4ca758 ARTEMIS-4212 fix sending msgs to address w/mismatching routing types
When sending, for example, to a predefined anycast address and queue
from a multicast (JMS topic) producer, the routed count on the address
is incremented, but the message count on the matching queue is not. No
indication is given at the client end that the messages failed to get
routed - the messages are just silently dropped.

Fixing this problem requires a slight semantic change. The broker is now
more strict in what it allows specifically with regards to
auto-creation. If, for example, a JMS application attempts to send a
message to a topic and the corresponding multicast address doesn't exist
already or the broker cannot automatically create it or update it then
sending the message will fail.

Also, part of this commit moves a chunk of auto-create logic into
ServerSession and adds an enum for auto-create results. Aside from
helping fix this specific issue this can serve as a foundation for
de-duplicating the auto-create logic spread across many of the protocol
implementations.
2023-04-25 16:08:31 -05:00
Clebert Suconic 101eabdda8 ARTEMIS-4254 Transactional test with replication 2023-04-25 08:11:22 -07:00
Clebert Suconic 2ffd94e682 ARTEMIS-4253 disabling a few ActiveMQServerControlUsingCoreTest tests
Some of these tests don't make sense when using the Core protocol due to noise introduced
2023-04-25 08:11:10 -07:00
Clebert Suconic fea84e39f5 ARTEMIS-4247 BrokerClustering vs Mirror code improvements 2023-04-25 08:10:58 -07:00
Clebert Suconic 0eefc38d93 ARTEMIS-4250 Spawning VM to avoid thread leaking on ShutdownOnCriticalIOErrorMoveNextTest 2023-04-24 08:06:00 -07:00
Domenico Francesco Bruscino ef4501292e ARTEMIS-4252 Fix flaky QuorumFailOverTest tests 2023-04-24 06:11:51 -07:00
Justin Bertram fde9d223ae ARTEMIS-4249 failure to create internal MQTT consumer can orphan sub q 2023-04-21 12:32:21 -05:00
Clebert Suconic 9bac93e25e ARTEMIS-4248 Fixing PagingTest::testSimpleResume
testSimpleResume is intermittently failing.
This test is forcing another page, while cleanup is happening on the background.
ForceAnotherPage may not put the address back into paging if this happened right after the cleanup call.
To fix the test, we should call startPaging after forceAnotherPage is called.
2023-04-21 11:35:45 -04:00
Clebert Suconic 2a81a0a3c6 ARTEMIS-4247 Inconsistencies between Broker Clustering and AMQP Mirror
- activemq.notifications are being transferred to the target node, unless an ignore is setup
- topics are being duplicated after redistribution
- topics sends are being duplicated when a 2 node cluster mirrors to another 2 node cluster, and both nodes are mirrored.
2023-04-21 10:30:32 -05:00
Domenico Francesco Bruscino 4e77a34c29 ARTEMIS-4243 Fix export of bindings without routing types 2023-04-20 10:01:36 +02:00
Justin Bertram 673481369f ARTEMIS-4241 paging + FQQN is broken 2023-04-17 21:51:08 +02:00
Robbie Gemmell 05f5af6eb1 ARTEMIS-4082: delete duplicate test, same as testDupsOKAcknowledgeQueue 2023-04-14 15:10:29 +01:00
Robbie Gemmell 114b88a120 ARTEMIS-4242, ARTEMIS-4082: isolate testNonBlockingAckPerf to its own queues to stop poisoning testDupsOKAcknowledgeQueue 2023-04-14 15:10:29 +01:00
Emmanuel Hugonnet fc971b12ef ARTEMIS-4238 transactionTimeout ActivationConfigProperty is no longer working.
* Re-adding the missing code

Jira: https://issues.apache.org/jira/browse/ARTEMIS-4238

Signed-off-by: Emmanuel Hugonnet <ehugonne@redhat.com>
2023-04-13 10:08:52 -05:00
Clebert Suconic 4eb978b931 ARTEMIS-4233 Disabling RefCounting debug and error after paged messages 2023-04-12 16:40:26 -07:00
Timothy Bish 7892841fec ARTEMIS-4234 Fix some issue with Embedded Resource send and receive
The JUnit resource has a couple bugs in both the send and receive path
that result in only one message being received if the receive method is
called repeatedly and some send drop the provided properties. Cleaned up
some tests to the point of showing the errors and ensuring that at least
basic functionality is tested.
2023-04-10 17:20:42 +01:00
Justin Bertram 8abdee29e9 ARTEMIS-4235 fix map msg conversion from OpenWire->core 2023-04-10 10:28:07 +01:00
Clebert Suconic e368dacc78 ARTEMIS-4207 Improving redistribution fix over large messages 2023-04-09 17:05:17 -07:00
Clebert Suconic d23ced586d ARTEMIS-4236 Reorganize broker.xml around paging properties
This is how I see these properties.
I am trying to make this easier to understand.

Co-authored-by: Robbie Gemmell <robbie@apache.org>
2023-04-06 17:48:40 -07:00
Alexey Markevich 61c687ec9c ARTEMIS-4195 Auth callback to get Client ID
introduce ClientIDCallback to allow JAAS login module to retrieve Client
ID
2023-04-06 11:23:45 -05:00
Justin Bertram 6851e7d677 ARTEMIS-4204 connectors added via management are not durable 2023-04-06 11:22:18 -05:00
Clebert Suconic 6d3dbc4383 ARTEMIS-4233 Large Message Issues After Failed Clients
- interrupted message breaking reference counting
After the server writing to the client is interrupted in AMQP, the reference counting was broken what would require the server restarted
in order to cleanup the files of any interrupted sends.

- Removed consumer during large message delivery damaging large messages
If the consumer failed to deliver messages for any reason, the message on the queue would be duplicated. what would wipe out the body of the message
and other journal errors would happen because of this.

extra debug capabilities added into RefCountMessage as part of ARTEMIS-4206 in order to identify these issues
2023-04-06 07:40:01 -07:00
Clebert Suconic 23bbf76bdf ARTEMIS-4233 Avoiding holder.iter=null with a compile time validation 2023-04-06 07:40:01 -07:00
Clebert Suconic d9d727b9c2 ARTEMIS-4224 Optimizing memory consumption from MQTT5SoakTest 2023-04-06 07:36:10 -07:00
Clebert Suconic 301aadbf1a ARTEMIS-4237 SoakPagingTest/ReplicationFlowControlTest into soak-tests 2023-04-05 19:11:23 -07:00
Domenico Francesco Bruscino ff87b9c5cb ARTEMIS-4229 Upgrade selenium version to 4.8.3 2023-04-03 09:27:18 +01:00
Domenico Francesco Bruscino 71408296c9 ARTEMIS-4228 Upgrade testcontainers version to 1.17.6 2023-04-03 09:27:18 +01:00
Domenico Francesco Bruscino 5c654a12c7 ARTEMIS-4227 Upgrade opentelemetry version to 1.24.0 2023-04-03 09:27:18 +01:00
Domenico Francesco Bruscino e906294a35 ARTEMIS-4226 Upgrade guava version to 31.1-jre 2023-04-03 09:27:18 +01:00
Robbie Gemmell 5035bd2c61 ARTEMIS-4210: undo earlier doc change missed by 8ba9727b78 2023-03-31 12:10:03 +01:00
Justin Bertram 8ba9727b78 ARTEMIS-4210 refactor connection audit logging
This commit fixes the following things:

 - Moves connection audit logging to the resource audit logger instead
   of using a dedicated logger as that would adversely impact upgrading
   users, and arguably didn't make sense in the first place.
 - Mitigates an potential NPE w.r.t. connection ID.
 - Updates the "dummy" management connection to return a valid
   connection ID.
2023-03-30 14:37:17 -07:00
Clebert Suconic 07d96ecb9e NO-JIRA dump typo 2023-03-30 15:42:10 -04:00
Clebert Suconic a8d828a510 ARTEMIS-4224 cert-users-LARGE.properties is too big for certain CI machines 2023-03-29 15:00:46 -05:00
Robbie Gemmell e2995e95d9 NO-JIRA: update GHA build to use JDK 20 rather than 19 2023-03-29 12:55:03 +01:00
Robbie Gemmell e6fbdb1d55 ARTEMIS-4223: make compatibility tests handle version qualifiers from some JDK builds, e.g -beta from some EAs. 2023-03-29 12:53:45 +01:00
Robbie Gemmell 21a5f0d2fa ARTEMIS-4222: update to mockito 5.2.0 2023-03-29 12:34:08 +01:00
Robbie Gemmell ccf6a3f420 ARTEMIS-4221: update to groovy 4.0.10 2023-03-29 12:32:48 +01:00
Justin Bertram 448a6dee02 ARTEMIS-4209 avoid double 'ID:' for 'User ID' when browsing AMQP msgs 2023-03-28 16:21:13 -05:00
Justin Bertram d2e5ddfe86 ARTEMIS-4210 audit connection creation & destruction 2023-03-28 16:21:04 -05:00
Robbie Gemmell 57321e8fec ARTEMIS-4158: update doc build tools to honkit 4.0.7, npm 9.6.2, and node 18.15.0 2023-03-28 15:48:04 +01:00
Robbie Gemmell 61d1ca674c ARTEMIS-4220: update spring to 5.3.26 2023-03-28 15:00:10 +01:00
Clebert Suconic 41b2ec7efb NO-JIRA Limitting load on PotentialOOMELoggingTest
This test was generating too much data just to log an error message.
The same error message would happen with just 100 queues.
2023-03-28 09:27:19 -04:00
Clebert Suconic 6de9e30c46 NO-JIRA Limiting load on NIOJournalCompactTest
This test is boundless adding data into the journal when there are no syncs.
That's creating 600MIB worth of data on our CIs, and this tests was not meant to be acting like a soak test.
I'm limitting the load the test can generate with a TokenBucketLimiterImpl now.
2023-03-28 09:27:00 -04:00
Domenico Francesco Bruscino 2fcb24ea30 ARTEMIS-4218 Support console smoke tests from remote servers 2023-03-28 10:20:06 +01:00
Clebert Suconic 880fe86ddc NO-JIRA Moving MQTT5Test::testMaxMessageSize into a soak-test
MQTT5Test::testMaxMessageSize is spiking the memory on the integration testsuite all the way up to 1.5G
what makes this test more like a soak test.

The test is now converted to use a real server like other Soak Tests.
2023-03-27 17:47:50 -07:00
Clebert Suconic 40e9d4ebf7 NO-JIRA Trying to fix intermittent failure on ShutdownOnCriticalIOErrorMoveNextTest 2023-03-27 15:17:48 -04:00
Clebert Suconic 15d39a14ea ARTEMIS-4207 Improved fix on LargeMessage Redistribution
This fix will delay the message.copy to the redistributor itself.
Meaning no copy would be performed if the redistribution itself failed.

No need to remove a copy any longer
2023-03-27 10:45:07 -07:00
Clebert Suconic d139ad75c2 NO-JIRA Allocating less memory on soak-tests
OWLeakTests is requiring a huge 200MB string to be sent to the clients
which is using too many resources from CI
2023-03-27 10:45:07 -07:00
Clebert Suconic 95cba558e4 NO-JIRA Allocating less memory on soak-tests
These tests are requiring a huge ammount of memory from CI Servers.
I'm tunning down the memory usage and parameters on a few tests.
2023-03-27 11:07:48 -04:00
Clebert Suconic 6d9bd71901 NO-JIRA I meant to remove this line 2023-03-18 18:48:07 -04:00