Commit Graph

10908 Commits

Author SHA1 Message Date
Clebert Suconic 4cc43323bc ARTEMIS-4986 incrementing version on activemq-version.properties 2024-08-13 16:33:00 -04:00
Clebert Suconic 10b6ab9bd3 ARTEMIS-4986 Providing a test that will look for the distribution from a System Variable
if you define TEST_ROLLED_DISTRIBUTION=your artemis home

testRollUpgrade_Provided_Distribution will execute the rolling upgrade from that distribution
2024-08-13 16:33:00 -04:00
Clebert Suconic 537e0023fc ARTEMIS-4986 Compatibility issue on Quorum Voting 2024-08-13 14:45:00 -04:00
Justin Bertram 0ecbae6108 ARTEMIS-4939 allow config of header sizes for embedded web server 2024-08-13 10:38:06 -05:00
Justin Bertram ef3b5fa02c ARTEMIS-4985 message priority occasionally broken
The test in this commit was distilled down from a much more complex
integration test that rarely reproduced the problem. It is short and
sweet and reproduces the problem every time.

The problem exists in the iterator's `remove()` method where it uses
`index` instead of `i` when calculating a new highest priority.
2024-08-12 14:55:25 -07:00
Robbie Gemmell c442c9b7e6 ARTEMIS-4984: update ErrorProne to 2.30.0 2024-08-12 17:47:14 +01:00
Timothy Bish f031481012 ARTEMIS-4982 Cleanup AMQP large message files for rejected sends
When an incoming AMQP large message send is rejected the broker should delete the
large message file as part of the reject handling.
2024-08-12 17:39:51 +01:00
Robbie Gemmell 2839b595b6 ARTEMIS-4981: update commons-lang3 to 3.16.0 2024-08-08 15:40:18 +01:00
Robbie Gemmell b59dc42410 ARTEMIS-4980: move sources jar creation to typical package phase, isolate to release profiles 2024-08-08 15:30:11 +01:00
Robbie Gemmell 3f32e53dc6 ARTEMIS-4979: update asciidoctorj-pdf to 2.3.18 2024-08-08 11:49:16 +01:00
Robbie Gemmell 4cc86eef03 ARTEMIS-4977: update to jgroups 5.3.10 2024-08-07 15:59:27 +01:00
Robbie Gemmell 3ae4f2fb47 ARTEMIS-4976: update to testcontainers 1.20.1 2024-08-07 15:54:35 +01:00
Erwin Dondorp 14b6800810 ARTEMIS-4909 use names that match original xml tags 2024-08-06 15:52:31 -05:00
Clebert Suconic 5ab9765345 ARTEMIS-4974 Removing Run from Shell 2024-08-06 18:43:30 +01:00
Timothy Bish be4995a530 ARTEMIS-4969 Ensure AMQP senders can target FQQN if authorized
When using targeted FQQN permissions the AMQP sender needs to check that
it can access not only the address but also the queue if sent an FQQN so
that the security can validate if the sender has been granted directed
access to the FQQN as a whole.
2024-08-06 10:21:57 +01:00
Clebert Suconic 49b1bd26ad ARTEMIS-4974 Removing 'dead' code
Since we now disable run from the Shell, this code I'm removing would be "dead code"
2024-08-05 16:30:27 -04:00
Clebert Suconic 07a7928483 ARTEMIS-4974 Dot not allow run in the Shell execution 2024-08-05 16:16:08 -04:00
Domenico Francesco Bruscino d820c61e1a NO-JIRA Remove first empty line from cherry-pick-report.sh
A shebang only has an effect when it appears as the first line in a script.
2024-08-05 16:05:22 -04:00
Timothy Bish 8250e611df ARTEMIS-4963 Check send auth on openwire producer create
Check that an attaching Openwire producer has SEND permission on the target
destination and reject it if it does not instead of delaying checks until the
actual send. For anonymous producers check early in the send process to reduce
overhead in the JVM handling messages that are going to fail to send.
2024-08-02 16:38:20 +01:00
Clebert Suconic 47acdc4517 ARTEMIS-4964 Fast ACK Test with Mirror
One side of the mirror will send and ack messages one by one.

As the message arrives in the mirror the ack comes before the persistence finishes, so we need to retry and configure retry accordingly.
2024-08-01 23:09:54 -04:00
Domenico Francesco Bruscino 4d8ccc4b2f ARTEMIS-4955 Support broker properties from JSON files 2024-08-01 11:16:38 +01:00
Clebert Suconic d7078cabf5 NO-JIRA tweak on DivertQueueMirrorTest 2024-07-30 20:44:01 -04:00
Clebert Suconic cbbaa7a8e0 NO-JIRA Mirror and Divert Smoke Test
I was doing some verification with Diverts and Mirror in the form of a smoke test.

no issue found but I'm keeping the test.
2024-07-30 20:41:53 -04:00
Howard Gao 4ce0dfca2d ARTEMIS-4959 moveMessages operation can move more messages than max messageCount 2024-07-30 11:55:53 -04:00
Justin Bertram 86f36e95b0 ARTEMIS-4960 Ubuntu package name change preventing Docker image build 2024-07-29 16:28:45 -05:00
Howard Gao 096a869c1e ARTEMIS-4954 AddressControl.pause() can pause the snf queue 2024-07-25 19:51:30 -04:00
Timothy Bish 284ce80618 ARTEMIS-4952 Use getObjectPropertyForFilter when applying filters
When counting messages with provided filters and grouping use the API
getObjectPropertyForFilter which translates values from AMQP message
annotations that are otherwise missed by the filters.
2024-07-25 19:51:19 -04:00
Clebert Suconic fa917ae3fd [maven-release-plugin] prepare for next development iteration 2024-07-25 13:47:10 -04:00
Clebert Suconic 75f17ba64d [maven-release-plugin] prepare release 2.36.0 2024-07-25 13:47:09 -04:00
Clebert Suconic db0ba73aa4 ARTEMIS-4941 Remove lazy update after application properties only when it's paging
for regular messages it's quite obvious when the message is leaving the queue but for paged messages it becomes a challenge. We should just ignore the update for paged messages.
2024-07-25 13:01:57 -04:00
Clebert Suconic 1a5c2ec51c Revert "ARTEMIS-4941 Remove lazy update after application properties as it's no longer needed"
This reverts commit fb2a57f3ed.
2024-07-25 13:01:57 -04:00
Robbie Gemmell 90797e1c42 ARTEMIS-4953: update to activemq 5.18.5 2024-07-25 13:06:52 +01:00
Domenico Francesco Bruscino c50f0e7001 ARTEMIS-4951 Support multiple connection router occurrences with same policy 2024-07-25 11:04:09 +01:00
Justin Bertram 8841c50591
NO-JIRA flesh out 2.36.0 highlights 2024-07-24 12:46:23 -05:00
Clebert Suconic 00e400c96c Edit on versions.adoc 2024-07-24 13:23:03 -04:00
Clebert Suconic e05549603a Update versions.adoc 2024-07-24 13:16:51 -04:00
Clebert Suconic ca44ad2a33 ARTEMIS-3509 Improving assertions in StompTest 2024-07-24 12:13:07 -04:00
Clebert Suconic e50c73eac9 Revert "ARTEMIS-3509 Improving assertions on StompTest"
Sorry for the spam, I pushed this commit by mistake / accident

This reverts commit db0a0975bb.
2024-07-24 10:42:19 -04:00
Clebert Suconic db0a0975bb ARTEMIS-3509 Improving assertions on StompTest 2024-07-24 09:59:43 -04:00
Justin Bertram 8d1a66fbbd ARTEMIS-4931 fix bridge config encoding
This commit fixes 3 distinct issues with bridge configuration encoding:

 - The encoding size was calculated incorrectly in three ways:
   - Using 0 instead of `DataConstants.SIZE_NULL` when no transformer is
     defined resulting in a calculated size discrepancy of -1.
   - Using `DataConstants.INT` instead of `DataConstants.SIZE_INT` for
     the number of transformer properties resulting in a calculated size
     discrepancy of +2 when using a configuration with a transformer.
   - Using 0 or `sizeOfNullableInteger` instead of
     `DataConstants.SIZE_INT` for the number of static connectors
     resulting in a variable calculated size discrepancy of either -4 or
     +1 respectively.
 - Encoding was using `writeString` instead of `writeNullableString` for
   the name of the transformer class resulting in an actual buffer size
   discrepancy of -1.

Aside from these fixes this commit also adds new tests specifically for
encoding & decoding include a test to verify known bytes during
encoding.

Lastly, it's worth noting that this *won't fix* bad data that was
already stored to disk by an older broker or bad data that comes over
the wire from an older broker (e.g. if a older primary broker paired
with a newer backup).
2024-07-24 14:51:55 +01:00
Justin Bertram 5c160ae1a8 ARTEMIS-4930 refactor storage manager tests
During the investigation for ARTEMIS-4910 it was noted that some of the
storage manager tests didn't actually force a full reload (i.e.
decoding) of the various configurations from disk. This commit does the
following:

 - refactors these tests so that they all force a reload from disk
 - organizes imports
 - eliminates various bits of repeated code in all the tests
 - improves code formatting

This commit exposes a bug in the encoding/decoding of
BridgeConfiguration via a failing test in
BridgeConfigurationStorageTest. This test is disabled. This failure will
be resolved in a subsequent commit at which point the test will be
enabled again.
2024-07-24 14:51:55 +01:00
Andy Taylor 9853211913 ARTEMIS-4950 - MBeanGuard throws an NPE
Although this doesnt affect the current console it does the new so needs addressing
2024-07-24 09:50:03 -04:00
Clebert Suconic ae26a8640f NO-JIRA Removing System.out from a test 2024-07-23 16:28:15 -04:00
Clebert Suconic 7c573db6a1 ARTEMIS-4949 TimedBuffer.checkSync could fail on ClosedChannelException 2024-07-23 12:56:33 -04:00
Justin Bertram 10adca5479 ARTEMIS-4923 reduce synchronization in ManagementServiceImpl
The `ManagementService` is used by the broker to register and
unregister components for management as well as send notifications.
When the broker is busy dealing with new sessions and auto-creating
queues, addresses, etc. there is a lot of contention.

To reduce synchronization and improve the service overall this commit
does the following:

 - Remove `synchronized` from most methods. In most cases it's
   completely unnecessary because the methods are already using a
   thread-safe data-structure (e.g. `ConcurrentHashMap`) or more
   specific synchronization is already in place (e.g. on
   `mbeanServer`).
 - Adds new & clarifies existing logging.
 - Synchronizes `start` & `stop` methods and adds gates via `started`.
 - Simplifies the `sendNotification` method by synchronizing once rather
   than twice and performing legitimacy checks sooner.
 - Removing an unnecessary overload of the `registereQueue` method.

To be clear, there are no tests included with this commit as there
should be no semantic changes. Existing tests should be sufficient to
identify any regressions.
2024-07-23 09:19:18 -07:00
Justin Bertram 26cc17c337
ARTEMIS-4948 clarify failover-on-shutdown doc 2024-07-23 10:55:21 -05:00
Clebert Suconic 41ec279e22 NO-JIRA Making test more resilient 2024-07-22 18:57:27 -04:00
Justin Bertram 71187c475d
This closes #5105 2024-07-22 15:39:58 -05:00
dependabot[bot] 77a9d84a76
ARTEMIS-4946 Bump selenium.version from 4.22.0 to 4.23.0
Bumps `selenium.version` from 4.22.0 to 4.23.0.

Updates `org.seleniumhq.selenium:selenium-api` from 4.22.0 to 4.23.0
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Commits](https://github.com/SeleniumHQ/selenium/compare/selenium-4.22.0...selenium-4.23.0)

Updates `org.seleniumhq.selenium:selenium-firefox-driver` from 4.22.0 to 4.23.0
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Commits](https://github.com/SeleniumHQ/selenium/compare/selenium-4.22.0...selenium-4.23.0)

Updates `org.seleniumhq.selenium:selenium-chrome-driver` from 4.22.0 to 4.23.0
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Commits](https://github.com/SeleniumHQ/selenium/compare/selenium-4.22.0...selenium-4.23.0)

Updates `org.seleniumhq.selenium:selenium-chromium-driver` from 4.22.0 to 4.23.0
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Commits](https://github.com/SeleniumHQ/selenium/compare/selenium-4.22.0...selenium-4.23.0)

Updates `org.seleniumhq.selenium:selenium-remote-driver` from 4.22.0 to 4.23.0
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Commits](https://github.com/SeleniumHQ/selenium/compare/selenium-4.22.0...selenium-4.23.0)

Updates `org.seleniumhq.selenium:selenium-support` from 4.22.0 to 4.23.0
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Commits](https://github.com/SeleniumHQ/selenium/compare/selenium-4.22.0...selenium-4.23.0)

---
updated-dependencies:
- dependency-name: org.seleniumhq.selenium:selenium-api
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: org.seleniumhq.selenium:selenium-firefox-driver
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: org.seleniumhq.selenium:selenium-chrome-driver
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: org.seleniumhq.selenium:selenium-chromium-driver
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: org.seleniumhq.selenium:selenium-remote-driver
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: org.seleniumhq.selenium:selenium-support
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-22 15:39:23 -05:00
Justin Bertram c246df86b8
This closes #5106 2024-07-22 15:37:57 -05:00