9214 Commits

Author SHA1 Message Date
Clebert Suconic
d0036ee0cc ARTEMIS-3778 Just avoiding NPE on Expiry Reaper
Added an extra check on null, just in case
it should not happen, but I preferred adding this clause on the safe side
2022-04-14 17:13:35 -04:00
Clebert Suconic
f4bdacbc4c ARTEMIS-3778 Streamline Expiration Reaping
Instead of holding a thread and an iterator, we should instead keep moving to next references
without holding any threads. Just with callbacks.
2022-04-14 13:04:51 -04:00
Clebert Suconic
ccfd4b7a62 ARTEMIS-3776 just my OCD applying aesthetic tweaks to recediveOW.groovy 2022-04-13 12:39:31 -04:00
Clebert Suconic
bc17acd6da ARTEMIS-3776 Avoid Integer.MAX_VALUE overflow on openwire clients
Older versions of Openwire clients wil be affected by AMQ-6431.
As a result of the issue if the ID of the message>Integer.MAX_VALUE
a consumer configured with Failover and doing duplicate detection on the client
will not be able to process duplicate detection accordingly and miss messages.
2022-04-13 11:11:10 -04:00
Justin Bertram
316fe8a350 ARTEMIS-3773 remove defunct rate references from web console
This is a follow-up from ARTEMIS-3397. This commit removes the last
traces of the "rate" queue metric from the web console.
2022-04-13 10:26:28 -04:00
Justin Bertram
a6abf68ba5 ARTEMIS-3774 support user properties on MQTT will message 2022-04-13 10:25:57 -04:00
Robbie Gemmell
9d943483d5 ARTEMIS-3772: update to mockito 4.4.0 2022-04-08 13:38:41 +01:00
Clebert Suconic
cfdb710a08 ARTEMIS-3761 Improve page cleanup to remove messages in the middle of the stream as well
Paging only removes files at the beginning of the stream...
Say you have paged files 1 through 1000...
if all the messages are ack, but one message on file 1 is missing an ack, all the 999 subsequent files would not be removed until all the messages on file 1 is ack.
This was working as engineered, but sometimes devs don't have complete control on their app.
With this improvement we will now remove messages in the middle of the stream as well.

There is also some improvement to how browsing and page work with this
2022-04-07 10:33:08 -04:00
Clebert Suconic
1da68b3024 ARTEMIS-3769 Fixing queue browsing iterator avoiding NoSuchElement exception from the Iteration
QueueImpl::browserIterator could throw NoSuchElementException and this is fixing the iterator
Found this while testing ARTEMIS-3761
2022-04-07 10:33:08 -04:00
Clebert Suconic
bad1c26582 NO-JIRA Making AmqpFlowControlFailTest more accurate
this test was relying on internal details such as number of credits on the link.
The test was flaky and eventually failing or hunging.
2022-04-07 10:33:08 -04:00
Robbie Gemmell
e774e4fcfb ARTEMIS-3768: update to Qpid JMS 1.6.0 2022-04-07 13:05:15 +01:00
Robbie Gemmell
6da678177a ARTEMIS-3758: clean up lots of tests that never run, remove related files + dependencies and some unnecessary deps 2022-04-07 11:29:52 +01:00
Robbie Gemmell
94aa67bd81 ARTEMIS-3762: update docs build, add version overrides to clear security warnings 2022-04-07 11:18:29 +01:00
Robbie Gemmell
fc3a17c33e This closes #4014 2022-04-07 11:01:06 +01:00
Domenico Francesco Bruscino
6f4fc12d24 ARTEMIS-3760 Upgrade jackson version to 2.13.2 2022-04-07 11:00:21 +01:00
Justin Bertram
b48037a1e6 ARTEMIS-3764 wrong CONNACK return code for MQTT5
This bug is causing tests in o.a.a.a.t.i.m.s.c.ConnectTestsWithSecurity
to fail.

This commit fixes the problem by setting the session's version earlier
in the logic handling the CONNECT packet so that the proper CONNACK
return code can be supplied to the remote client in case of
authentication failure.
2022-04-06 17:02:19 -04:00
Gary Tully
825264257a ensure temp files are off the base class temp folder rule root to get cleaned up post test 2022-04-06 12:04:25 +02:00
Gary Tully
a739b9f068 ARTEMIS-3757 - allow system and env var substution of properties config, respect order of file loaded properties and add generic enum converter 2022-04-06 12:04:25 +02:00
Domenico Francesco Bruscino
4ff5d95b2c ARTEMIS-3752 Upgrade Spring Framework to 5.3.18 for examples and tests 2022-04-04 10:59:14 +02:00
Domenico Francesco Bruscino
ed4f80638a ARTEMIS-3752 Upgrade Spring Framework to 5.3.18 2022-04-01 12:19:02 -04:00
Domenico Francesco Bruscino
d7fbe852db ARTEMIS-3754 Upgrade tomcat-servlet-api to 8.5.78 2022-04-01 12:18:52 -04:00
Justin Bertram
723f977e94
This closes #3997 2022-03-30 11:57:50 -05:00
Justin Bertram
dce7ff2ef7
ARTEMIS-3744 NPE with empty security-manager config in bootstrap.xml 2022-03-30 11:57:50 -05:00
Justin Bertram
c3e6ce075c
This closes #3996 2022-03-30 11:57:28 -05:00
Justin Bertram
5d970576da
ARTEMIS-3741 Cache MBeanInfoHelper results
The utility methods in
`org.apache.activemq.artemis.core.management.impl.MBeanInfoHelper` are
executed *a lot* - especially for Jolokia which is used by the web
console. The `MBeanOperationInfo` and `MBeanAttributeInfo` results are
static and reflection is slow therefore they should not be calculated
over and over again. Rather they should be calculated once and cached
for later use.

Caching these results significantly improves performance. Over the
course of 1,000,000 invocations the difference is several orders of
magnitude. This improves usability substantially when dealing with,
for example, tens of thousands of addresses and/or queues.
2022-03-30 11:57:28 -05:00
Justin Bertram
3ec88c5ea4
ARTEMIS-3740 Upgrade Johnzon 2022-03-30 11:57:27 -05:00
Justin Bertram
abfabfce57
This closes #4002 2022-03-30 11:56:47 -05:00
Vilius Šumskas
d42d654874
NO-JIRA addUser is also applicable for ActiveMQBasicSerurityManager 2022-03-30 11:56:46 -05:00
Justin Bertram
dfb987844e
This closes #3998 2022-03-30 11:15:26 -05:00
AntonRoskvist
bb44e37e84
ARTEMIS-3733 - Destination cache size too small for OpenWire clients 2022-03-30 11:15:25 -05:00
Tiago Bueno
84c1feae8c NO-JIRA fix duplicate text in security.md doc
Remove the duplicate text in CertificateLoginModule section of the
the security.md doc
2022-03-30 11:48:30 -04:00
Tiago Bueno
dbd60d0afb ARTEMIS-3749 e2e-tests improvements
Scripts:
- Fix the preapre-docker.sh to exit with 0 instead of 1 on success

On pom files:
- Change e2e-tests variable names to e2e-tests.xxxxxx for clarity on
  e2e-tests variables
- Add e2e-tests.skipImageBuild variable to control if the docker image
  will be build (defaults to not build)
- Add e2e-tests.dockerfile variable to specify the dockerfile to be
  used (defaults to Dockerfile-centos)
- Bump testcontainers version to 1.16.3
- Add artemis distribution dependency since the docker image build
  depends on it

On ContainerService class:
- Fix exposePorts and exporseFolder to use SELinux shared mode
  otherwise the mount fails on machines with SELinux enabled
- Move the logic to use specific user on container from generic start
  method to broker specific method to avoid affect other images
- Update the broker image name to a more generic name (activemq-artemis
  instead of artemis-centos)
- Update the broker image tag to match with the project version in pom
  file
2022-03-30 11:48:05 -04:00
Justin Bertram
7d03f714dd
Fix typo 2022-03-29 15:19:43 -05:00
Justin Bertram
122edfbdb8
NO-JIRA add version/upgrade info for 2.21.0 2022-03-29 15:12:47 -05:00
Justin Bertram
e766b2e6f6
NO-JIRA improve Wait.asserEquals error message 2022-03-24 13:15:50 -05:00
Clebert Suconic
a0e7cb4eae [maven-release-plugin] prepare for next development iteration 2022-03-22 13:34:58 -04:00
Clebert Suconic
d57ac487c7 [maven-release-plugin] prepare release 2.21.0 2.21.0 2022-03-22 13:34:55 -04:00
Clebert Suconic
2ce2fdfd03 NO-JIRA updating git clone URI on Release instructions 2022-03-22 12:25:44 -04:00
Clebert Suconic
4bca3d1375 ARTEMIS-3734 Correcting typo on documentation for CLI Transfer 2022-03-22 11:52:46 -04:00
Domenico Francesco Bruscino
41463c8397 ARTEMIS-3710 Deprecate queues config element 2022-03-22 09:37:31 -04:00
Clebert Suconic
49276ae633 NO-JIRA fixing MessagesExpiredPagingTest
There is a reference expiring in one hour. It should not leave page mode.
This is about still flowing messages, not leaving page mode.
2022-03-22 09:15:08 -04:00
Domenico Francesco Bruscino
603462a1a5 ARTEMIS-3708 Collapse key transformer into policy 2022-03-21 19:34:48 -04:00
Tiago Bueno
2a26e46a8c NO-JIRA fix ManifestTest
As the test needs the generated jms jars to be verified I moved it from
unit-tests to smoke-tests.
Updated the test to look for the correct jars as the originally
specified does not exist.
Update the test to assert against Implementation-Version instead of
ActiveMQ-Version in the manifest file as the ActiveMQ-Version property does not exist.
2022-03-21 19:00:00 -04:00
Clebert Suconic
0c651dd17b ARTEMIS-3720 Exposing global-max-messages on the CLI 2022-03-21 18:50:08 -04:00
Justin Bertram
3627ba57c9 ARTEMIS-3711 support AMQ_SCHEDULED_DELAY for OpenWire clients 2022-03-21 18:49:48 -04:00
Clebert Suconic
5f22a51926 ARTEMIS-3720 Improvements on Paging MaxMessages usage
I "used" the broker a little bit around max-messages and found a few minor issues.
2022-03-21 16:51:22 -04:00
Clebert Suconic
7bdb3dc176 This closes #3994 2022-03-21 16:50:17 -04:00
Emmanuel Hugonnet
3dc434a311 [ARTEMIS-3732]: ServerLocator disableFinalizeCheck method has been removed without being deprecated first.
* Adding back empty default method for retro compatibility.

Jira: https://issues.apache.org/jira/browse/ARTEMIS-3732
2022-03-21 16:50:00 -04:00
Clebert Suconic
978b7d217f This closes #3980 2022-03-21 16:48:39 -04:00
Tiago Bueno
968e4886c8 ARTEMIS-3716 move e2e tests to e2e-tests module
Move all tests which are related to end-to-end testing from smoke-tests
module to a new module named e2e-tests.

These e2e tests are those which are dependent of ContainerService
class. ContainerService class uses artemis inside a container by using
the testcontainers library and for that reason these tests are usually
a quite slow and tecnically they are not a smoke test.

The new e2e-tests module is part of tests module but it is not enabled
by default and to get executed it requires the e2e-tests profile
specification on maven command.
2022-03-21 16:48:29 -04:00