Commit Graph

717 Commits

Author SHA1 Message Date
Robbie Gemmell 32f5c9ccf4 ARTEMIS-4271: update to Spring 5.3.27 2023-05-04 09:54:36 +01:00
Emmanuel Hugonnet 31095682ee ARTEMIS-4269 Update Netty from 4.1.86 to 4.1.92
Changes:
https://netty.io/news/2023/04/25/4-1-92-Final.html
https://netty.io/news/2023/04/03/4-1-91-Final.html
https://netty.io/news/2023/03/14/4-1-90-Final.html
https://netty.io/news/2023/02/13/4-1-89-Final.html
https://netty.io/news/2023/02/12/4-1-88-Final.html
https://netty.io/news/2023/01/12/4-1-87-Final.html

Issue: https://issues.apache.org/jira/browse/ARTEMIS-4269

Signed-off-by: Emmanuel Hugonnet <ehugonne@redhat.com>
2023-05-02 19:31:06 +02:00
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
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 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
Robbie Gemmell 61d1ca674c ARTEMIS-4220: update spring to 5.3.26 2023-03-28 15:00:10 +01:00
Clebert Suconic ed620d09c8 ARTEMIS-4171 Skip Leaking Tests on FastTests 2023-03-06 17:04:18 -08:00
Clebert Suconic 0971886a36 ARTEMIS-4198 Upgrade qpid/proton-j at 0.34.1 2023-03-06 17:04:18 -08:00
Robbie Gemmell 1f3745c87d ARTEMIS-4160: update the files used for the config upgrade testing to use the new comment.
Fixes the CompareUpgradeTest by removing this unimportant difference from a fresh broker instances jolokia-access.xml file, given that we dont actually update jolokia-access.xml currently during upgrade.

Tweaks or unwinds earlier changes in aae65fd527 and 3e7cb24381
2023-03-03 14:58:22 +00:00
Clebert Suconic 3e7cb24381 NO-JIRA Adding CompareUpgradeTest to fast-tests 2023-03-02 18:12:51 -08:00
Clebert Suconic a2ba6ed298 ARTEMIS-4161 AMQP and OpenWire leaking leaking objects in certain conditions
The issue identified with AMQP was under Transaction usage, and while opening and closing sessions.
It seems the leak would be released once the connection is closed.

We added a new testsuite under ./tests/leak-tests To fix and validate these issues
2023-02-16 12:10:54 -08:00
Justin Bertram f154c0b7dd ARTEMIS-4153 Support 'offline' Maven 2023-02-06 13:20:34 -06:00
Justin Bertram 8f30347b18 ARTEMIS-4143 improve mitigation against split-brain with shared-storage
Configurations employing shared-storage with NFS are susceptible to
split-brain in certain scenarios. For example:

  1) Primary loses network connection to NFS.
  2) Backup activates.
  3) Primary reconnects to NFS.
  4) Split-brain.

In reality this situation is pretty unlikely due to the timing involved,
but the possibility still exists. Currently the file lock held by the
primary broker on the NFS share is essentially worthless in this
situation. This commit adds logic by which the timestamp of the lock
file is updated during activation and then routinely checked during
runtime to ensure consistency. This effectively mitigates split-brain in
this situation (and likely others). Here's how it works now.

  1) Primary loses network connection to NFS.
  2) Backup activates.
  3) Primary reconnects to NFS.
  4) Primary detects that the lock file's timestamp has been updated and
     shuts itself down.

When the primary shuts down in step #4 the Topology on the backup can be
damaged. Protections were added for this via ARTEMIS-2868 but only for
the replicated use-case. This commit applies the protection for
removeMember() so that the Topology remains intact.

There are no tests for these changes as I cannot determine how to
properly simulate this use-case. However, there have never been robust,
automated tests for these kinds of NFS use-cases so this is not a
departure from the norm.
2023-02-03 10:40:08 -05:00
Clebert Suconic 2378d187af [maven-release-plugin] prepare for next development iteration 2023-01-31 07:22:48 -05:00
Clebert Suconic 893e1e7916 [maven-release-plugin] prepare release 2.28.0 2023-01-31 07:22:47 -05:00
Robbie Gemmell 3908dfc055 ARTEMIS-2876: re-fix JUnit 4 license note (it was changed to EPL 1.0 in 2013)
earlier fixup  undone by later commit to junit test modules
2023-01-30 15:01:21 +00:00
Domenico Francesco Bruscino b1d70a24fd ARTEMIS-4138 Upgrade jackson version to 2.14.1 2023-01-20 11:17:54 +01:00
Andy Taylor b02002fc66 ARTEMIS-3875 - adding consumer and producer metrics
https://issues.apache.org/jira/browse/ARTEMIS-3875
2023-01-13 15:49:44 -05:00
eidottermihi 76b8acc1dc
ARTEMIS-2876 Add JUnit5 Extensions for testing
Adds a new module 'artemis-junit-5' which adds JUnit 5 Extensions for
unit testing. For backwards compability, 'artemis-junit' still uses
JUnit 4. Common stuff has been moved to 'artemis-junit-commons'. Work is
based on the initial PR
https://github.com/apache/activemq-artemis/pull/3436 by @luisalves00
2022-12-17 01:44:57 -06:00
Justin Bertram 1846f3dad7
ARTEMIS-4117 bump Netty from 4.1.82.Final to 4.1.86.Final 2022-12-15 13:40:02 -06:00
Robbie Gemmell 776b4436df ARTEMIS-4099: Update to PostgreSQL 42.4.3 2022-11-24 10:45:37 +00:00
ruromero 3e50014e0d [ARTEMIS-3168] Implement Kubernetes JaaS LoginModule
Signed-off-by: ruromero <rromerom@redhat.com>
2022-11-22 11:44:00 +00:00
Justin Bertram dce4ba3c1a [maven-release-plugin] prepare for next development iteration 2022-11-08 13:17:38 -06:00
Justin Bertram 1fd6cb6239 [maven-release-plugin] prepare release 2.27.0 2022-11-08 12:46:20 -06:00
Justin Bertram ccb76c0a2a ARTEMIS-4064 Harden MetricsManager
In order to improve trouble-shooting for the MetricsManager there should
be additional logging and exceptions. In all, this commit contains the
following changes:

 - Additional logging
 - Throw an exception when registering meters if meters already exist
 - Rename a few variables & methods to more clearly identify what they
   are used for
 - Upgrade Micrometer to 1.9.5
 - Simplify/clarify a few blocks of code
 - No longer pass the ManagementServiceImpl when registering the
   metrics, but instead pass the Object the meter is observing (e.g.
   broker, address, or queue)
2022-10-31 09:04:20 -04:00
Robbie Gemmell e1903bf67c ARTEMIS-4068: skip the 'default' subset of tests run twice during release steps
They, and many more, are also run in CI during the process, so its largely redundant.
2022-10-21 17:04:07 +01:00
Robbie Gemmell d286339a84 ARTEMIS-4067: remove unused/stale site distributionManagement settings 2022-10-21 16:57:12 +01:00
Robbie Gemmell 669bdc3a12 ARTEMIS-4062: update to Mockito 4.8.0 2022-10-20 15:59:49 +01:00
Robbie Gemmell b8148e6358 ARTEMIS-4063: update to jacoco 0.8.8 2022-10-20 15:59:25 +01:00
Robbie Gemmell 16ef6855af ARTEMIS-4060: update commons-text transitive dep to 1.10.0 2022-10-19 17:52:12 +01:00
Robbie Gemmell 7bd67d2eb5 ARTEMIS-4061: update maven-bundle-plugin to 5.1.8 2022-10-19 17:32:15 +01:00
Robbie Gemmell f17d975138 ARTEMIS-4039: Update to jackson-databind 2.13.4.2 2022-10-18 11:02:29 +01:00
Robbie Gemmell ffc155f910 ARTEMIS-4055: update to apache parent 27, stop overriding some plugin versions, align others, override checksum config as appropriate 2022-10-18 10:50:22 +01:00
Robbie Gemmell a6e69aaccf ARTEMIS-4054: have release plugin autoVersionSubmodules, and configure the tagNameFormat to simplify setting release tag 2022-10-17 15:45:01 +01:00
Robbie Gemmell d6ec80d8f1 ARTEMIS-4053: ensure scm tag ref reflects it is currently non-release, using HEAD, rather than incorrectly having release version 2.19.0 2022-10-17 12:56:14 +01:00
Justin Bertram 5cf84bffbe
NO-JIRA restore commons-codec dependency; remove REST property 2022-10-11 11:10:11 -05:00
Justin Bertram 4a0bca3f64
NO-JIRA remove missed dependency from ARTEMIS-3137 2022-10-11 10:52:33 -05:00
Justin Bertram 5b200f84ee
NO-JIRA remove vestigial REST dependencies 2022-10-11 10:27:12 -05:00
Domenico Francesco Bruscino 2384a50e17 ARTEMIS-4039 Upgrade jackson version to 2.13.4 2022-10-11 15:52:57 +01:00
Robbie Gemmell d08af2bf6d ARTEMIS-4040: Update to Netty 4.1.82 2022-10-11 13:44:19 +01:00
Domenico Francesco Bruscino 288b013183 ARTEMIS-4038 Upgrade groovy version to 4.0.5 2022-10-11 11:17:43 +02:00
Robbie Gemmell 9873fccf74 ARTEMIS-4020: switch to using SLF4J API for logging, use Log4J 2 as impl for broker distribution and tests
PR includes work from myself and Clebert Suconic, squashed from the new-logging branch.
2022-09-28 14:01:54 -04:00
Clebert Suconic 5d8e7fe829 [maven-release-plugin] prepare for next development iteration 2022-09-21 13:00:47 -04:00
Clebert Suconic 2d7b1a3ef7 [maven-release-plugin] prepare release 2.26.0 2022-09-21 13:00:46 -04:00
Robbie Gemmell 4ab947f2d9 ARTEMIS-4008: update to qpid-jms 1.7.0 2022-09-21 13:33:28 +01:00
Robbie Gemmell 3aeb24ae01 ARTEMIS-3997: update vertx-proton test dep to 4.3.3 2022-09-15 09:33:48 +01:00
Robbie Gemmell 164ae04218 AARTEMIS-3996: update to proton-j 0.34.0 2022-09-15 09:33:39 +01:00