Commit Graph

135 Commits

Author SHA1 Message Date
Justin Bertram 14c564a481 ARTEMIS-4800 simplify QueueConfiguration API
This commit does the following:

 - deprecate all QueueConfiguration ctors
 - add `of` static factory methods for all the deprecated ctors
 - replace any uses of the normal ctors with the `of` counterparts

This makes the code more concise and readable.
2024-06-10 07:58:40 -07:00
Justin Bertram 7ca30e9a63 ARTEMIS-4796 simplify SimpleString API
This commit does the following:

 - deprecate the verbosely named `toSimpleString` static factory
   methods
 - add `of` static factory methods for all the ctors
 - replace any uses of the normal ctors with the `of` counterparts

This makes the code more concise and readable.
2024-06-06 11:53:03 -04:00
Robbie Gemmell 362dbd11ac ARTEMIS-4790: use JUnit 5 for the tests 2024-06-03 10:06:37 -05:00
Justin Bertram fc6f0ee9ec ARTEMIS-4740 reduce unnecessary boxing 2024-04-27 09:36:05 -05:00
Domenico Francesco Bruscino fe5afc1d69 ARTEMIS-4577 Send CONNECTION_CLOSED event after deleting temporary resources 2024-01-22 08:40:46 +01: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
Emmanuel Hugonnet 6bc7b1bc9f ARTEMIS-4508 the recovery connection factory ignores useTopologyForLoadBalancing.
Fixing the creation of the recovery connection factory so that
useTopologyForLoadBalancing is properly set.

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

Signed-off-by: Emmanuel Hugonnet <ehugonne@redhat.com>
2023-11-20 11:21:46 +01:00
Nicolas Filotto 8599917222 ARTEMIS-4141 Update credits even for expired messages
When big messages are produced if a consumer receives an expired message, the credits are not updated, so if the consumer is too slow and an expiry delay has been set, we can end up with a situation where there are no more credits which prevents the consumer from receiving any more messages.
2023-09-22 14:30:29 -04:00
Emmanuel Hugonnet 1d88b293c3 ARTEMIS-4427 MDB reusing Thread is using wrong transactionTimeout.
* Unsetting the transation timeout on the TransactionManager after the
  onMessage has been called

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

Signed-off-by: Emmanuel Hugonnet <ehugonne@redhat.com>
2023-09-12 11:58:20 -04:00
George Gastaldi 0776f33934
ARTEMIS-4411 reduce log level for RA message
This commit sets ActiveMQRALogger.instantiatingDestination to DEBUG as
this message is only useful during debugging.
2023-08-31 08:22:30 -05:00
Robbie Gemmell df410da7ae ARTEMIS-4402: add some unit tests exercising the semi-generated log/message bundles to make generation problems more quickly noticable 2023-08-25 15:02:24 +01:00
Robbie Gemmell cb9e1fedc8 ARTEMIS-4345: update to Error Prone 2.20.0 and fix up new errors 2023-07-05 09:40:24 +01:00
a181321 582a689cdb ARTEMIS-4186 Ability to set compressionLevel for compressLargeMessages 2023-06-14 04:42:38 -07:00
Justin Bertram 903e5888af ARTEMIS-4238 deprecate transactionTimeout activation config prop 2023-05-31 15:16:34 -05: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
Justin Bertram 6874556f7c ARTEMIS-4188 auto-create + MDB using selector on queue 2023-03-02 16:26:12 -08:00
Justin Bertram bf1d81e09e ARTEMIS-3707 fixing tests
A handful of tests started to fail after the original fix was committed.
This commit fixes those failures mainly by using a mock
`TransactionSynchronizationRegistry`.

I changed `o.a.a.a.r.ActiveMQRAManagedConnection#checkTransactionActive`
slightly because `getTransactionStatus` will never return `null` unlike
`getTransaction` would. The semantics should still be the same, though.
2023-01-07 22:54:17 -06:00
waldi5001 59a7257ce5
ARTEMIS-3707 remove use of TransactionManager
The TransactionManager interface defines the methods that allow an
*application server* to manage transaction boundaries. However, the
TransactionSynchronizationRegistry is intended for use by system level
application server components such as persistence managers, *resource
adapters*, as well as EJB and Web application components.
2022-12-16 23:08:15 -06:00
hawkdshrh d5ecfa26df ARTEMIS-4093 Changes to expose properties and support resource adapter in J2EE environments: fixing logging concatenation 2022-11-22 14:50:06 +01:00
Timothy Bish 617269319a ARTEMIS-4020: Remove string appends and various isXEnabled logger checks (add some where useful)
Logger statements should use formatting syntax and let the normal framework checks take care of
checking if a logger is enabled instead of string concats and isXEnabled logger checks except
in cases there is known expense to the specifc logging message/arg preparation or passing.

Changes from myself and Robbie Gemmell.

Co-authored-by: Robbie Gemmell <robbie@apache.org>
2022-10-07 15:40:53 -04:00
Clebert Suconic 12cc70c5bf ARTEMIS-4020 Using a little trick to create the Loggers
Trick provided by Tim Bish
2022-09-29 17:46:51 -04: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
Kerner, Dr. Patrick 72573d5ab0
ARTEMIS-3690 add missing getters/setters to RA ConnectionFactory 2022-02-27 19:02:17 -06:00
Ryan Yeats e460bea4b8 ARTEMIS-3596 Pass class loader to ServiceLoader.load to fix OSGi issues 2021-12-14 13:19:41 -05:00
Domenico Francesco Bruscino 3f7f8c0ecd ARTEMIS-3576 Fix toString methods throwing exceptions 2021-12-03 13:15:44 -05:00
Clebert Suconic 12a93e3c7e Revert "ARTEMIS-3576 Fix toString methods throwing exceptions"
This reverts commit fcd512f9de.

this will be re-applied after fixing the build and tests
2021-11-29 13:21:24 -05:00
Tiago Bueno f2ab5f7fed ARTEMIS-3586 - fix ActiveMQActivationSpec equals field verification switch
The equals method on ActiveMQActivationSpec has a switched
null pointer verification for singleConnection and useJNDI fields. 
Since both fields are initialized with a value by default it should
not be a problem but if one of these fields are set as null at some
point and then equals is called it throws a NPE.
2021-11-29 12:03:22 -05:00
Domenico Francesco Bruscino fcd512f9de ARTEMIS-3576 Fix toString methods throwing exceptions 2021-11-29 12:02:58 -05:00
Clebert Suconic 8b3663e827 ARTEMIS-3538 Removing a few extra // ----- structural comments 2021-11-02 21:45:09 -04:00
Asukwo-comfort 923e4cc892 ARTEMIS-3538: Removing // --------- comments from the codebase 2021-11-02 21:44:12 -04:00
Andy Taylor 6622675848 ARTEMIS-3539 allow a single connection for MDB's
https://issues.apache.org/jira/browse/ARTEMIS-3539
2021-10-26 11:39:56 +02:00
Emmanuel Hugonnet f19337901a [ARTEMIS-2545]: Auto queue creation does not work with MDBs.
* Adding support for queue autocreation from the resource adapter.

Issue: https://issues.apache.org/jira/browse/ARTEMIS-2545
2021-09-16 10:44:54 -04:00
Domenico Francesco Bruscino 3555dd7d25 ARTEMIS-3365 Add broker balancers 2021-08-06 08:33:21 -04:00
Andy Taylor 88122e0cd1 ARTEMIS-3331 - RA improvements to work well with more Servers
https://issues.apache.org/jira/browse/ARTEMIS-3331
2021-06-10 14:13:10 -04:00
Emmanuel Hugonnet 40f4c0218e
[ARTEMIS-3080]: Provide JakartaEE 9 artefacts.
* using batavia and eclipse transformer to transform JMS code to JakartaEE.
* adding a test with JakartaEE
* upgrading owasp plugin to 6.1.0

Jira: https://issues.apache.org/jira/browse/ARTEMIS-3080
2021-02-03 18:35:01 +01:00
Emmanuel Hugonnet 6a2a611d3c
[ARTEMIS-2954]: RA doesn't use the RA specified prefix when setting up a destination.
* Fixing the fix for double prefix issue as the destiantion name wasn't
  appended when the old prefix wasn't present.

Issue: https://issues.apache.org/jira/browse/ARTEMIS-2954
2020-10-22 15:51:01 +02:00
Emmanuel Hugonnet f6353f5259
[ARTEMIS-2954] Fixing double preifx issue.
Avoiding double preifx with ARTEMIS-2954 fix.

Issue: ARTEMIS-2954
2020-10-20 16:41:06 +02:00
Emmanuel Hugonnet bd392e1f93
[ARTEMIS-2954]: RA doesn't use the RA specified prefix when setting up a
destination.

 * When creating a destination it should rely on the RA configuration if
   none is provided instead of relying directly on the default
configuration.

Issue: https://issues.apache.org/jira/browse/ARTEMIS-2954
2020-10-19 18:11:41 +02:00
Justin Bertram 676bb101d8 ARTEMIS-2896 RA can double legacy prefix 2020-09-16 10:12:20 -04:00
Justin Bertram 52d3ed1c68 ARTEMIS-2848 RA fails w/durable sub w/legacy prefix 2020-07-23 22:27:15 -04:00
Clebert Suconic 6254a70ddc NO-JIRA Fixing some javadoc statements 2020-07-09 12:23:46 -04:00
Justin Bertram 2efa44daf5 ARTEMIS-2692 refactor queue creation
This commit does the following:
- Deprecates existing overloaded createQueue, createSharedQueue,
  createTemporaryQueue, & updateQueue methods for ClientSession,
  ServerSession, ActiveMQServer, & ActiveMQServerControl where
  applicable.
- Deprecates QueueAttributes, QueueConfig, & CoreQueueConfiguration.
- Deprecates existing overloaded constructors for QueueImpl.
- Implements QueueConfiguration with JavaDoc to be the single,
  centralized configuration object for both client-side and broker-side
  queue creation including methods to convert to & from JSON for use in
  the management API.
- Implements new createQueue, createSharedQueue & updateQueue methods
  with JavaDoc for ClientSession, ServerSession, ActiveMQServer, &
  ActiveMQServerControl as well as a new constructor for QueueImpl all
  using the new QueueConfiguration object.
- Changes all internal broker code to use the new methods.
2020-04-13 14:25:30 -05:00
brusdev 98746a20a1 ARTEMIS-2523 Deprecate the parameter failoverOnInitialConnection
The parameter failoverOnInitialConnection wouldn't seem to be used and
makes no sense any more, because the connectors are retried in a loop.
So someone can just add the backup in the initial connection.
2019-10-21 07:04:21 +02:00
Patrick Zeller 1b5ed3d1a4 NO-JIRA fix log message format in ActiveMQRALogger
MessageFormat uses single quotes to escape so string ${0} was logged.
2019-08-21 22:05:07 -04:00
Emmanuel Hugonnet 394f238881 ARTEMIS-2405 Resource adapter getter should return wrapped objects and not primitive.
* updating getters/setters to used wrapped objects instead of primitive.

Jira: https://issues.apache.org/jira/browse/ARTEMIS-2405
2019-07-22 09:43:49 -04:00
Jiri Danek b33874488b ARTEMIS-2320 Assorted small code fixes, mostly from IntelliJ autofixes 2019-04-29 11:28:10 +01:00
Justin Bertram bfefd1f1ed NO-JIRA fix lgtm.com errors
Errors enumerated at
https://lgtm.com/projects/g/apache/activemq-artemis/alerts/?mode=tree&severity=error
2019-01-17 22:37:01 +00:00
Justin Bertram 57aacf784c NO-JIRA fix lgtm.com warnings
Warnings enumerated at
https://lgtm.com/projects/g/apache/activemq-artemis/alerts/?mode=tree&severity=warning
2019-01-17 22:30:28 +00:00
andytaylor 0f9bf15788 ARTEMIS-2144 - tx begin failure in ra doesn't get cleaned up
https://issues.apache.org/jira/browse/ARTEMIS-2144
2019-01-02 10:55:43 +00:00
Romain Pelisse 39b177d027 ARTEMIS-2085 - Improve validation of MDB activation config properties values 2018-12-13 11:14:37 -06:00