412 Commits

Author SHA1 Message Date
Justin Bertram
d54c771b2c ARTEMIS-5281 use isEmpty() where possible 2025-01-30 17:37:25 +00:00
Justin Bertram
9af357bae0 ARTEMIS-5278 use pattern matching for instanceof 2025-01-30 17:37:25 +00:00
Justin Bertram
fecbd73e12 ARTEMIS-5273 use collection interfaces where possible 2025-01-30 17:37:25 +00:00
Justin Bertram
89e23c2fa0 ARTEMIS-5268 avoid EMPTY_ properties in Collections
Type safety is better with the empty methods (e.g. emptyList, emptyMap,
etc.).
2025-01-30 17:37:25 +00:00
Justin Bertram
bf1b3b7fa1 ARTEMIS-5234 make style for parentheses consistent
This commit enforces a consistent style for parentheses, namely that
there is no padding. Futhermore, it updates all the code that violates
this styling so that the code is styled consistently across the entire
code-base.
2025-01-09 13:37:11 +00:00
Justin Bertram
a069a14d04 ARTEMIS-5233 make style for commas consistent
This commit enforces a consistent style for commas, namely that a space
should follow a comma. Futhermore, it update all the code that violates
this styling up to date so that the code is styled consistently across
the entire code-base.
2025-01-08 16:23:24 -05:00
Justin Bertram
d49476d0a1 [maven-release-plugin] prepare for next development iteration 2024-12-16 09:25:19 -06:00
Justin Bertram
fb1c6e3217 [maven-release-plugin] prepare release 2.39.0 2024-12-16 09:19:43 -06:00
Justin Bertram
e6f97f6e5c
Revert "[maven-release-plugin] prepare release 2.39.0"
This reverts commit 0604de39d6cc1f2946368d5775a9ef4ff753cbbf.
2024-12-16 08:55:55 -06:00
Justin Bertram
6b6ae242ed
Revert "[maven-release-plugin] prepare for next development iteration"
This reverts commit 918ef0efbe62ed5c64a0c2f8adc8f0cc3aba35d2.
2024-12-16 08:55:38 -06:00
Justin Bertram
918ef0efbe [maven-release-plugin] prepare for next development iteration 2024-12-13 08:10:30 -06:00
Justin Bertram
0604de39d6 [maven-release-plugin] prepare release 2.39.0 2024-12-13 08:05:42 -06:00
Justin Bertram
d01ea80df9 ARTEMIS-5110 add ability to identify retired IDs in log annotations
The broker uses unique IDs for logging statements. As logging changes
over time we need a way to "retire" these IDs (e.g. when certain
logging statements are no longer needed) to ensure they are not used

This commit does the following:

 - Removes all the logging methods which are no longer used and
   "retires" the corresponding ID (i.e. adds them to the `retiredIDs`
   list for that LogBundle).
 - Updates the validation for IDs that have been retired or are in
   active use including a new suggestion about a valid ID to use when an
   invalid ID is found.
 - Fixes all the regular expressions in all the various uses of
   `@LogBundle` to ensure there are no overlaps to prevent duplicates
   between bundles.

Changes from myself and Robbie Gemmell (see PR). This closes #5303.
2024-10-25 15:14:07 +01:00
Justin Bertram
9380235a5e [maven-release-plugin] prepare for next development iteration 2024-10-16 10:10:37 -05:00
Justin Bertram
241e76f9da [maven-release-plugin] prepare release 2.38.0 2024-10-16 10:08:10 -05:00
Justin Bertram
1503a40fe7 ARTEMIS-4965 mitigate NPE when missing SQL property 2024-09-10 18:03:21 +01:00
Clebert Suconic
ffafbf350a ARTEMIS-5001 Relax consistency requirement on OperationContext for Mirror send operations.
Send operations should ignore replication, while the ack of the message should wait a round trip in replication.
That will allow us to ack the message faster and still have consistency with its replica.
2024-08-29 14:42:48 -04:00
Clebert Suconic
4ba9f67d80 ARTEMIS-5010 AckManager records are not replicated 2024-08-28 11:53:16 -04:00
Clebert Suconic
38693370c9 Revert "ARTEMIS-5001 Option to relax sync on journal replication for Mirroring"
This reverts commit d41f01a5aa3722002fc8199eda34198753cc23f2.
2024-08-26 12:49:42 -04:00
Clebert Suconic
d41f01a5aa ARTEMIS-5001 Option to relax sync on journal replication for Mirroring
Say you use Mirroring and journal replication combined.

The target will wait a round trip on replica before sends are done.
It is possible to ignore that rountrip now with an option added into Configuration#mirrorReplicaSync
2024-08-20 16:03:57 -04:00
Clebert Suconic
c042fb9e13 [maven-release-plugin] prepare for next development iteration 2024-08-16 10:23:18 -04:00
Clebert Suconic
0ec68a93d3 [maven-release-plugin] prepare release 2.37.0 2024-08-16 10:23:17 -04:00
Clebert Suconic
209f293922 [maven-release-plugin] prepare for next development iteration 2024-08-14 14:39:34 -04:00
Clebert Suconic
de6efc82d1 [maven-release-plugin] prepare release 2.37.0 2024-08-14 14:39:21 -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
7c573db6a1 ARTEMIS-4949 TimedBuffer.checkSync could fail on ClosedChannelException 2024-07-23 12:56:33 -04:00
Justin Bertram
642a2c79fd ARTEMIS-4913 provide more details on error callbacks 2024-07-22 15:38:25 +01:00
Robbie Gemmell
d45349fa67 ARTEMIS-4872: use explicit annotationProcessorPaths compiler config
Updates artemis-log-annotation-processor to use artemis-project so that
artemis-pom can reference artemis-log-annotation-processor without cycle.

Split out its tests to their own module to faciltate, also exercising the
profile mechanism to enable the processor usage with trigger file.

Simplify disabling processing in the module using maven.compiler.proc prop
available since maven-compiler-plugin 3.13.0

Uses a dummy non-processor path at root to 'disable' processsing on JDK < 23,
accounting for Maven 3 not being able to unset maven.compiler.proc from a
parent, and JDKs < 21 requiring newest builds to support -proc:full value
needed otherwise to reenable processing once explicitly disabled.
2024-06-28 16:49:27 +01:00
Justin Bertram
d7cf5dfa44 ARTEMIS-4829 use lambdas consistently
This commit uses lambdas or method references wherever possible. There
are still a handful of places that appear like they could be changed but
couldn't mainly because they use "this" and the meaning of "this"
changes when using a lambda.
2024-06-21 12:01:16 -04:00
Clebert Suconic
f4fd259f07 [maven-release-plugin] prepare for next development iteration 2024-06-12 11:58:53 -04:00
Clebert Suconic
b4d3a77649 [maven-release-plugin] prepare release 2.35.0 2024-06-12 11:58:52 -04:00
Robbie Gemmell
362dbd11ac ARTEMIS-4790: use JUnit 5 for the tests 2024-06-03 10:06:37 -05:00
Clebert Suconic
6cd9c9730b [maven-release-plugin] prepare for next development iteration 2024-05-29 12:13:17 -04:00
Clebert Suconic
30ea6eeae0 [maven-release-plugin] prepare release 2.34.0 2024-05-29 12:13:16 -04:00
Clebert Suconic
c523458a9a ARTEMIS-4758 Hardening Mirroring
This is a list of improvements done as part of this commit / task:

* Page Transactions on mirror target are now optional.

If you had an interrupt mirror while the target destination was paging, duplicate detection would be ineffective unless you used paged transactions
Users can now configure the ack manager retries intervals.
Say you need some time to remove a consumer from a target mirror. The delivering references would prevent acks from happening. You can allow bigger retry intervals and number of retries by tinkiering with ack manager retry parameters.

* AckManager restarted independent of incoming acks

The ackManager was only restarted when new acks were coming in. If you stopped receiving acks on a target server and restarted that server with pending acks, those acks would never be exercised. The AckManager is now restarted as soon as the server is started.
2024-05-02 17:23:28 -04:00
Clebert Suconic
04f6424928 ARTEMIS-4694 Redistribution issues with Almost Large Header
Redistribution would add data to the record which would then in turn make the record too large to redistribute.

The Redistributor and Bridges should not be removed.

Also a warning should be added to warn users about the situation.
2024-04-01 15:39:41 -04:00
Justin Bertram
2cc3704551 [maven-release-plugin] prepare for next development iteration 2024-03-19 15:22:47 -05:00
Justin Bertram
900d217bf9 [maven-release-plugin] prepare release 2.33.0 2024-03-19 15:21:32 -05:00
Clebert Suconic
db94b18b73 ARTEMIS-4651 Performance improvements on Mirror and Paging 2024-02-26 11:01:04 -05:00
Alexey Markevich
9cd598ebf4 ARTEMIS-1230 Added artemis-bom 2024-02-14 10:33:19 +00:00
Clebert Suconic
e513e6d2dd [maven-release-plugin] prepare for next development iteration 2024-01-24 14:21:08 -05:00
Clebert Suconic
dbaa508d07 [maven-release-plugin] prepare release 2.32.0 2024-01-24 14:21:07 -05:00
Justin Bertram
85b2f4b126 ARTEMIS-3474 replace non-inclusive terms
This commit does the following:

 - Replaces non-inclusive terms (e.g. master, slave, etc.) in the
   source, docs, & configuration.
 - Supports previous configuration elements, but logs when old elements
   are used.
 - Provides migration documentation.
 - Updates XSD with new config elements and simplifies by combining some
    overlapping complexTypes.
 - Removes ambiguous "live" language that's used with regard to high
   availability.
 - Standardizes use of "primary," "backup," "active," & "passive" as
   nomenclature to describe both configuration & runtime state for high
   availability.
2024-01-08 13:32:31 -05:00
Clebert Suconic
d8ac2d99e0 ARTEMIS-4543 Reverting to previous semantic on MappedSequentialFile 2023-12-19 22:08:31 -05:00
Clebert Suconic
a1add09734 ARTEMIS-4543 Journal/NIO Sync is not scalling up with TimedBuffer 2023-12-19 16:56:41 -05:00
Clebert Suconic
a3126f9950 ARTEMIS-4536 Improving JournalTransactions 2023-12-19 09:54:40 -05:00
Robbie Gemmell
66dd52fcf2 ARTEMIS-4490: update to SLF4J 2.0.9 2023-11-03 17:55:48 +00:00
Robbie Gemmell
bbe40c4b45 [maven-release-plugin] prepare for next development iteration 2023-10-27 11:14:45 +01:00
Robbie Gemmell
f4bccc1a26 [maven-release-plugin] prepare release 2.31.2 2023-10-27 11:14:19 +01:00