Commit Graph

2483 Commits

Author SHA1 Message Date
gtully ca7a100de0 ARTEMIS-3340 Sequential activation tracking for pluggable quorum replication policies + peer
Co-authored-by: franz1981 <nigro.fra@gmail.com>
2021-08-05 14:18:20 -04:00
Francesco Nigro 536271485f ARTEMIS-2716 Pluggable Quorum Vote 2021-08-05 14:18:20 -04:00
gtully c2da0fd663 ARTEMIS-3200 - remove braces from the belt and braces fix in ARTEMIS-2712, the braces are not necessary and leak, cleaning up in close negates the need to the session closeable 2021-08-05 09:27:12 -04:00
Robbie Gemmell 828d4940ec ARTEMIS-3302: enable some integration tests (primarily TLS+security) in the fast-tests profile
Help catch issues in these areas on PR runs rather than full builds.
2021-08-04 15:01:28 +01:00
Justin Bertram 9a2e2b3a34 ARTEMIS-3397 fix test failure 2021-08-04 09:20:12 -04:00
Robbie Gemmell 9726476c36 ARTEMIS-3410: disable karaf client integration tests on Java 16+ for now 2021-08-04 13:02:59 +01:00
Domenico Francesco Bruscino a741ae9994 ARTEMIS-3367 Set verifyHost true for connectors by default 2021-08-03 18:14:51 -04:00
Clebert Suconic 813ed88ecb ARTEMIS-3243 Implementing dual mirror with Broker Connections
There are some major tests added as part of this PR.

This PR has been done through an extensive collaboration with Robbie Gemmel on https://github.com/apache/activemq-artemis/pull/3633
2021-08-03 16:50:43 -04:00
Clebert Suconic b6d78076d4 NO-JIRA using latch::countdown on RedeployTest instead of new Runnable
I have done this just because I thought it was prettier
2021-08-03 12:34:21 -04:00
Justin Bertram 6bd30e8fe3 ARTEMIS-3385 management changes can be reverted by XML update
Durable changes made via the management API (e.g. adding
security-settings, adding address-settings, adding diverts) can be
reverted when reloading the XML at runtime.
2021-08-03 12:30:00 -04:00
Justin Bertram 516f3425e7 ARTEMIS-3393 support securityDomain on in-vm acceptor 2021-08-03 10:19:22 -04:00
Justin Bertram 8c3384a947 ARTEMIS-3397 remove queue rate metric from web console
This is a follow-up from ARTEMIS-2322.

The changes related to expired message are only there because
QueueFilterPredicate had a bug where the rate was correlated to expired
messages. When I fixed that I noticed that expired messages was actually
missing so I added it.
2021-08-03 10:15:57 -04:00
Justin Bertram 55533ae099 ARTEMIS-3394 ClassCastException when queue & divert have same name 2021-08-03 09:57:05 -04:00
Justin Bertram 7a9de8eea3 ARTEMIS-3302 swap deprecated X509Certificate
Casting the result of getPeerCertificates() to X509Certificate[] mirrors
what is done in the ActiveMQ "Classic" code-base.

A few tests which were imported from ActiveMQ "Classic" to verify our
OpenWire implementation were removed as they relied on a "stub"
implementation of javax.net.ssl.SSLSession that never would have worked
across multiple JDKs once javax.security.cert.X509Certificate[] was
removed. Furthermore, the tests appeared to be related to the OpenWire
*client* and not relevant to our broker-side implementation.
2021-08-03 09:55:36 -04:00
Andy Taylor c358688fd6 ARTEMIS-3404 - expose max retry interval on bridge mbean
https://issues.apache.org/jira/browse/ARTEMIS-3404
2021-08-03 09:07:39 -04:00
Robbie Gemmell 6b8fdcb079 ARTEMIS-3409: skip tests if preconditions cant be satisfied 2021-08-03 08:55:00 -04:00
franz1981 2694f8b52e ARTEMIS-3402 Split Brain detection should reject bad member updates 2021-08-03 14:43:20 +02:00
Robbie Gemmell ff9346d670 NO-JIRA: remove invalid tt tag usage to get javadoc building on Java 11 2021-07-30 15:39:20 +01:00
Robbie Gemmell 7ddc947413 ARTEMIS-3407: update pax-exam to 4.13.4 and karaf to 4.3.1, get tests working on Java 11
Also tweaks karaf test module name for clarity
2021-07-30 11:59:19 +01:00
Clebert Suconic eabfc0658f NO-JIRA Moving AssertionLoggerHandlerTest to Unit Tests
This would help capture issues with logging configuration on PR checks
2021-07-29 22:20:07 -04:00
Clebert Suconic 62c3d864a2 NO-JIRA Addressing Intermitent Failure on MessageExpirationTest 2021-07-29 17:50:26 -04:00
Clebert Suconic b8d0674ef9 NO-JIRA AssertionLoggerHandler improvements
I decided on NO-JIRA as this is only support tests themselves. No need for release notes on this commit:

I changed logging-CI.properties to be the same as logging.properties, with the only exception as file and console are limited by WARN.
while the AssertionLogger would still get INFO. as that's required for certain tests.
2021-07-29 11:38:26 -04:00
franz1981 4a677d01f0 NO-JIRA Speeding-up I/O paging for tests 2021-07-28 10:02:14 -04:00
franz1981 63577c7264 ARTEMIS-3405 Log the end of paging mode for a destination 2021-07-28 10:02:14 -04:00
Robbie Gemmell d9a44002c5 ARTEMIS-3304: replace use of deprecated constructors marked as for-removal since Java 16
updates all the uses in tests, missed in original commit
2021-07-27 14:55:40 +01:00
Justin Bertram f554806ec3 ARTEMIS-3400 add audit logging for message ack
Aside from adding audit logging for message acknowledgement this commit
also consolidates the two nearly identical acknowledge method
implementations in o.a.a.a.c.s.i.QueueImpl. This avoids duplicating
code for audit logging, plugin invocation, etc. There is no semantic
change.
2021-07-26 23:27:36 -04:00
Justin Bertram 2954829e3e ARTEMIS-3399 fix audit logging for AMQP
Due to the multi-threaded AMQP implementation the ThreadLocal variables
used by the AuditLogger to track the username and remote address don't
work properly. Changes include:

 - Passing the audit Subject (set during authentication) and the remote
   address explicitly for audit logging on the relevant ServerSession
   methods rather than relying on the AuditLogger's ThreadLocal
   variables
 - Audit logging core session creation *after* successful authentication
   so that we have the proper Subject; this is especially important for
   the SSL certificate authentication use-case
 - Renaming some methods and variables in AuditLogger to more accurately
   reflect their intended use
 - Adding JavaDoc and refactoring the getCaller methods on AuditLogger
 - Refactor audit log testing and add a new test
2021-07-26 23:27:35 -04:00
Justin Bertram bb9bbf062d ARTEMIS-3395 ensure sending audit log contains message ID 2021-07-23 14:28:53 -04:00
Domenico Francesco Bruscino 51801d978e ARTEMIS-3396 Convert bytes properties to String for OpenWire 2021-07-22 11:23:28 -04:00
Howard Gao 8a88c5f913 ARTEMIS-3392 Scale down would fail if target queue's id greater than max int 2021-07-21 15:12:43 -04:00
Clebert Suconic c479cb558a ARTEMIS-3384 Adding tests around duplicate detection 2021-07-16 09:10:14 -04:00
Clebert Suconic 277aa3706a NO-JIRA Adding Core Bridge Transfer Test 2021-07-16 09:09:48 -04:00
Domenico Francesco Bruscino 2d07d0d844 ARTEMIS-3384 Fix bridge duplicate messages after reconnection 2021-07-15 14:20:45 -04:00
Clebert Suconic b4aef3fca8 ARTEMIS-3386 Expiry messages using too many threads 2021-07-15 13:51:52 -04:00
Clebert Suconic ee3814dbfd ARTEMIS-3383 AMQPMessage.isDurable wrongly returns false during persistent lazy reload state 2021-07-12 23:00:16 -04:00
Justin Bertram ec508d8306 ARTEMIS-3381 AMQP bypasses session when deleting queues
The AMQP implementation bypasses the ServerSession when deleting queues
which also bypasses security authorization.
2021-07-12 11:25:11 -04:00
Justin Bertram bf875c3a37 ARTEMIS-3374 fix tests and shared subscriber case
A couple of tests were explicitly written to delete the
configuration-managed queue. Since this is no longer allowed these
tests had to change.
2021-07-12 11:25:11 -04:00
gtully 4c06d447fd ARTEMIS-2974 - fix up the regexp used in the test to match to the end 2021-07-09 14:56:29 +01:00
gtully 3961fd1cf2 ARTEMIS-3372 - ensure test verification happens after expected failover event such that expected message is not tracked as a duplicate 2021-07-09 12:41:17 +01:00
Clebert Suconic 000f83dbc2 ARTEMIS-3327 Reverting 5c051e9832 and adding test to validate
contract with sync.

This reverts commit 5c051e9832.

However this is adding two tests to make sure there won't be a regression on this.
2021-07-07 18:46:52 -04:00
franz1981 bb3f31340d ARTEMIS-3354 journal-max-io cannot be set to 1 with ASYNCIO journal 2021-07-07 12:17:36 -04:00
gtully 7fc312ab5d ARTEMIS-3372 - disconnect consumers on queue deletion event 2021-07-06 16:16:33 -04:00
Justin Bertram b7f9807cd9 ARTEMIS-2919 support timestamping incoming messages 2021-07-06 14:09:00 -05:00
Justin Bertram 1d02d06eab ARTEMIS-3374 config-managed queue can be deleted by durable subscriber 2021-07-06 14:06:39 -05:00
franz1981 bea0568a88 ARTEMIS-3360 Backup connector ignores TTL settings on the connection factories 2021-07-04 14:32:58 -05:00
Clebert Suconic 200e436931 ARTEMIS-3371 Adding TestContainers support and adding QpidDispatchPeerTest
This is testing peer integration with qpid-dispatch by using TestContainer and a docker image for Artemis
Also, as I added QpidDispatchTest, I reorganized the brokerConnect tests a bit into a brokerConnect folder.
2021-06-29 17:46:26 -04:00
Justin Bertram 45ae64a01c ARTEMIS-3366 deleteAddress can remove SnF queue 2021-06-24 13:27:35 -05:00
Clebert Suconic afa7209011 NO-JIRA Fixing Intermittent failure on AutoCreateExpiryResourcesTest with a Wait.assert change 2021-06-16 09:20:12 -04:00
Robbie Gemmell 98e5e19849 ARTEMIS-3347: update various commons-io usages, and bump all to latest
Consolidates and aligns versions missed in 73bcc78beb
2021-06-15 12:55:20 +01:00
Justin Bertram 867bf5e01e ARTEMIS-3155 support better backwards compatibility
Support better backwards compability for SSL keyStoreProvider and
trustStoreProvider.
2021-06-14 18:04:06 -04:00