Commit Graph

1909 Commits

Author SHA1 Message Date
Clebert Suconic ef9011a83c ARTEMIS-3519 OperationContext not respecting store lineups and dones on store only 2021-10-06 14:56:19 -04:00
Clebert Suconic 481b73c8ca ARTEMIS-3502 Auto delete & auto create leading to inconsistencies 2021-10-05 17:53:30 -04:00
Clebert Suconic ef63dc95bb ARTEMIS-3513 Compacting exception invalidates deletes and updates 2021-10-05 11:44:24 -04:00
Justin Bertram 8cf428ad49 ARTEMIS-3433 mitigate NPE
It is technically possible for
OpenSSLContextFactoryProvider.getOpenSSLContextFactory() to return
null so we need to check to avoid an NPE.
2021-10-04 14:47:08 -05:00
AntonRoskvist 919245b3b3 ARTEMIS-3501 Added exception handling on #handleAddMessage to not stop broker from starting with currupted messages 2021-09-29 13:39:49 -05:00
Robbie Gemmell 20511375de NO-JIRA: update to errorprone 2.9.0, fix errors, enable it when running on Java 17+ 2021-09-29 11:55:40 +01:00
Andy Taylor e37175784c ARTEMIS-3493 - expose User ID (JMS Message ID) in send tab of console
https://issues.apache.org/jira/browse/ARTEMIS-3493
2021-09-28 08:11:26 +01:00
Clebert Suconic 116545c589 ARTEMIS-3498 Bridge reconnects will not clear delivering count statistics on internal queues 2021-09-24 16:40:59 -04:00
Clebert Suconic e4276e8cd0 NO-JIRA Update Paging Logging with extra information 2021-09-24 13:18:35 -04:00
gtully 72cfda6b1a ARTEMIS-2007 - refactor to make use of existing refCountForConsumers for tracking consumer count and remove need for volatile redistributor 2021-09-24 15:07:01 +01:00
gtully 28a10450b7 ARTEMIS-3106 - add some doc for SASL SCRAM-SHA
Update docs/user-manual/en/security.md
Co-authored-by: Robbie Gemmell <robbie@apache.org>
2021-09-24 15:03:00 +01:00
Emmanuel Hugonnet fa439375e9 [ARTEMIS-3494]: ActiveMQClientProtocolManagerFactory shouldn't have a private constructor.
* Removing the 'private' constructor
* Removing the use of a static getInstance

Issue: https://issues.apache.org/jira/browse/ARTEMIS-3494
2021-09-23 11:28:06 +02:00
Domenico Francesco Bruscino 569c5994a5 ARTEMIS-3491 Fix cluster connection restart 2021-09-17 19:45:08 +02:00
Robbie Gemmell 515ac3a7cb ARTEMIS-3475: fix recursion and duplicate class name print from 2481a784f3 2021-09-17 15:48:48 +01:00
JiriOndrusek 4d429b115c [ARTEMIS-1946] Cluster with allow-direct-connections-only="true" and localAddress in netty connections with allow-direct-connections-only="true" prevents core bridge to be created. 2021-09-16 18:48:28 -05:00
Andy Taylor 0545664b3d ARTEMIS-3474 - replace whitelist with allowlist in management.xml
https://issues.apache.org/jira/browse/ARTEMIS-3474
2021-09-16 17:19:02 -05:00
Clebert Suconic c3b403a980 ARTEMIS-3482 Removing non used methods and some reorg on message methods 2021-09-15 09:17:01 -04:00
Clebert Suconic 2481a784f3 ARTEMIS-3475 avoiding possible recursion on toString and improving overal PacketImpl toString 2021-09-13 14:51:55 -04:00
Clebert Suconic 14457c4308 ARTEMIS-3464 Protecting scheduled tasks counter with a synchronized 2021-09-13 14:35:45 -04:00
Clebert Suconic 6db6b8cf9e ARTEMIS-3442 Removing input for journal retention on cli create 2021-09-12 20:11:16 -04:00
Clebert Suconic 2fb23474ce ARTEMIS-3464 Improving ACK reliability on Paging and code improvements 2021-09-10 18:27:00 -04:00
Clebert Suconic 7792d8f7b3 ARTEMIS-3473 Some tests were leaving a directory named null for journal files under tests/integration-tests 2021-09-10 17:43:06 -04:00
franz1981 e379b447ff ARTEMIS-3465 BufferSplitter::split shouldn't consume input buffer 2021-09-09 15:37:51 -04:00
Clebert Suconic 7fb4f80649 ARTEMIS-3464 Missing ACKs on Page and Mirror 2021-09-08 15:30:39 -04:00
franz1981 a4c311f368 ARTEMIS-3449 Speedup AMQP large message streamig 2021-09-08 15:22:22 -04:00
Domenico Francesco Bruscino 9d04c9d51d ARTEMIS-3462 Improve MBean Guard exception messages 2021-09-08 10:28:36 +02:00
Domenico Francesco Bruscino 0a88aafd74 ARTEMIS-3450 Fix StaticPoolTest and DiscoveryPoolTest intermittent failures 2021-09-07 10:01:14 +01:00
franz1981 f4d7c8ae69 ARTEMIS-3219 Save allocating map entries during bindings iteration 2021-09-07 09:18:16 +02:00
franz1981 f150fe5095 NO-JIRA Fix HAPolicyConfigurationTest::PrimaryReplicationTest NPE on assert 2021-09-07 07:11:14 +02:00
franz1981 ce3b50c1a6 ARTEMIS-3430 Activation Sequence Auto-Repair 2021-09-06 18:14:29 +02:00
franz1981 44dd84d704 ARTEMIS-3429 Backup forget coordination-id after quorum loss 2021-09-06 18:14:29 +02:00
gtully 276f822a0e ARTEMIS-1925 - allow redistribution with new loadbalance type of OFF_WITH_REDISTRIBUTION to ensure local consumers get priority, we only optionally redistribute when messages are stuck 2021-09-06 11:18:11 +01:00
gtully b27aa03a37 ARTEMIS-1612 - strip any acceptor matching prefix from the message address such that further routing will match the lack of prefixes in broker routing, different fix for redistribution with prefixes 2021-09-06 11:08:36 +01:00
gtully e985df77fb ARTEMIS-3223 - ensure distribution uses the address from the message, rather than the address from the queue which may be a wildcard sub and not valid for publishng on, fix and test 2021-09-06 11:08:36 +01:00
gtully 224b89810d ARTEMIS-2007 - allow redistribution if there are unmatched messages pending on a queue and there is new remote demand 2021-09-06 10:40:39 +01:00
Justin Bertram 13df6a8fb9 ARTEMIS-3457 log WARN for OpenWire property conversion problem
While converting a core message to an OpenWire message there may be an
error processing a property value. Currently this results in an
exception and the message is not dispatched to the client. The broker
eventually attempts to redeliver this message resulting in the same
error. Instead of throwing an exception the broker should simply log a
WARN message and skip the property. This will allow clients to receive
the message without the problematic property and the broker will not
have to attempt to redeliver the message again.
2021-09-03 16:51:02 -04:00
Justin Bertram 6ee7e72db1 ARTEMIS-3445 automatically clean-up abandoned MQTT subscriptions 2021-09-03 16:48:01 -04:00
gtully c7b672d8b9 ARTEMIS-3365 - fix intermittent ci failure on test 2021-09-02 12:09:31 +01:00
Clebert Suconic 0266582a8f ARTEMIS-3441 Remove a few finalize methods 2021-08-24 19:08:00 -04:00
Clebert Suconic 4d2fd89882 ARTEMIS-3436 Journal Replay operation 2021-08-24 19:07:15 -04:00
Justin Bertram 3fd0eea667 ARTEMIS-3438 legacy updateQueue doesn't respect ringSize 2021-08-20 17:00:23 -04:00
Justin Bertram c8d71cbebc ARTEMIS-3422 mitigate NPE for audit logging 2021-08-20 16:33:21 -04:00
Robbie Gemmell 02a8296821 ARTEMIS-3435: fail-fast if AIO check fouls, rather than burning hours and still failing, and report/log detals to aid analysis 2021-08-20 16:38:08 +01:00
Clebert Suconic 3edb96b09b ARTEMIS-3425 Possible NPE on Page reload 2021-08-18 17:49:35 -04:00
Justin Bertram 82f0ece67c ARTEMIS-3329 ability to purge all queues on address 2021-08-18 12:33:01 -04:00
Clebert Suconic b8c64590f9 [maven-release-plugin] prepare for next development iteration 2021-08-09 11:58:28 -04:00
Clebert Suconic 37cc298973 [maven-release-plugin] prepare release 2.18.0 2021-08-09 11:58:27 -04:00
Clebert Suconic cc4a51a3ea [maven-release-plugin] prepare for next development iteration 2021-08-06 17:04:18 -04:00
Clebert Suconic 0b30187091 [maven-release-plugin] prepare release 2.18.0 2021-08-06 17:04:16 -04:00
Clebert Suconic 0e2ce484ba [maven-release-plugin] prepare for next development iteration 2021-08-06 13:46:56 -04:00
Clebert Suconic cb705b5c5c [maven-release-plugin] prepare release 2.18.0 2021-08-06 13:46:54 -04:00
Domenico Francesco Bruscino 3555dd7d25 ARTEMIS-3365 Add broker balancers 2021-08-06 08:33:21 -04:00
franz1981 49e3843aa7 ARTEMIS-3340 Atomic server restart and clean dirty activation: fix testFailbackTimeout 2021-08-06 08:29:54 -04:00
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
Erwin Dondorp abcfe2fe6f ARTEMIS-3177 allow a NOT-CONTAINS filter 2021-08-05 09:21:55 -04:00
Clebert Suconic f9aa0a98b4 ARTEMIS-3411 Add PrintData information on Divert records 2021-08-04 17:18:15 -04: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
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 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
franz1981 2694f8b52e ARTEMIS-3402 Split Brain detection should reject bad member updates 2021-08-03 14:43:20 +02:00
franz1981 63577c7264 ARTEMIS-3405 Log the end of paging mode for a destination 2021-07-28 10:02:14 -04:00
Andy Taylor 57790a93a9 ARTEMIS-3403 - wrong debug level in ArtemisMBeanServerGuard
https://issues.apache.org/jira/browse/ARTEMIS-3403
2021-07-27 22:52:56 -04: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
Andy Taylor 82e40ce229 ARTEMIS-3398 - fix filtering in console with filter
https://issues.apache.org/jira/browse/ARTEMIS-3398
2021-07-22 11:24:14 -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
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
Justin Bertram 9f96e2d270 ARTEMIS-3379 add message details to consumer audit log 2021-07-06 16:15:50 -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
Justin Bertram 47d4b8fff4 ARTEMIS-3343 log WARN & ignore duplicate address-setting match 2021-07-04 16:00:31 -05:00
Michal Petrov 33e13ebc14 ARTEMIS-3356: fix debug message arguments 2021-07-04 14:37:51 -05:00
franz1981 bea0568a88 ARTEMIS-3360 Backup connector ignores TTL settings on the connection factories 2021-07-04 14:32:58 -05:00
Justin Bertram 45ae64a01c ARTEMIS-3366 deleteAddress can remove SnF queue 2021-06-24 13:27:35 -05:00
Domenico Francesco Bruscino b1d326ba8b ARTEMIS-3339 Fix management role match key comparator 2021-06-15 15:06:55 -04: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
Justin Bertram a4c1155a01 ARTEMIS-3341 update checkstyle to latest + update code
As a follow-up to #3618/dc7de893747b90b627d729f9f18a758bb4dad9d5 update
checkstyle to the latest version, restoring the originally intended
"RightCurly" style, and updating all the code to properly adhere to the
style as enforced by the new checkstyle version.

The version of checkstyle we used before the aforementioned commit had
a bug which didn't properly enforced our intended "RightCurly" style
(see https://github.com/checkstyle/checkstyle/issues/6345). That commit
changed the style to accommodate the handful of unintended style
violations. This commit reverts that change for 2 main reasons:
 - The style was always intended to use `alone` for both `METHOD_DEF`
and `CTOR_DEF`.
 - There are over 1,000 existing uses of the intended style and around
30 violations of this style which were unintentionally allowed.

Reverting the style back to the original and cleaning up the unintented
violations makes the code more consistent and prevents further style
inconsistencies in the future.

There were a handful of other changes related to checkstyle bugs which
allowed unintended style violations. These were related to indentation
levels.

This closes #3619
(with some minor changes from Robbie to fix remaining violations)
2021-06-11 12:16:04 +01:00
Domenico Francesco Bruscino bafefdc8ec ARTEMIS-3338 Preserve prepared XA transactions on connection failure 2021-06-09 15:00:45 -04:00
Clebert Suconic 05498c350e ARTEMIS-3261 Remove need to lookup replaceableRecords on the hot path
We known it's a replaceable record as part of the logic, no need to lookup the record type unless it's a reload from the system.
2021-06-09 14:52:06 -04:00
gtully 73bcc78beb no jira - update commons.io version to latest 2021-06-04 13:46:34 +01:00
Clebert Suconic 7137252c5d NO-JIRA fixing spelling udpate as update 2021-06-03 10:43:11 -04:00
Clebert Suconic cfd032799c ARTEMIS-3327 removing unecessary blocking operations on update and delete records 2021-06-03 10:37:16 -04:00
gtully 0e77f93f83 ARTEMIS-3326 - fix state visibility between netty and actor thread after initial connection info processing. fix and test 2021-06-03 09:37:23 +01:00
Robbie Gemmell c993b5a0e9 NO-JIRA: fix javadoc errors on JDK11+, enable CI javadoc check on JDK11+ 2021-06-02 17:37:06 +01:00
franz1981 14dddb04d7 ARTEMIS-3280 Netty Pool micrometer metric plugin 2021-05-27 13:32:06 -05:00
Clebert Suconic f0476d6a12 ARTEMIS-3318/ARTEMIS-2931 Fixing potential issue
The issue here is not supposed to happen,
however I'm changing the return here to true and logging the warn properly
2021-05-27 08:51:41 -04:00
Clebert Suconic cfee2035c8 ARTEMIS-3318 Invalid data on page should not hold page cleanup 2021-05-27 08:08:47 -04:00
Justin Bertram e9c94e57d9 ARTEMIS-3288 support bulk user loading with basic security manager 2021-05-25 11:13:35 -05:00
Clebert Suconic f6df6083e3 ARTEMIS-3283 Fixing Slow Consuemr Test and speeding it up
I am removing some combinations that are not needed here,
and I'm adding another extra test to valiate the rate per minutes
2021-05-25 11:29:04 -04:00
Justin Bertram 3621258458 ARTEMIS-3285 potential duplicate messages with LVQ + non-destructive 2021-05-24 16:42:10 -04:00
Domenico Francesco Bruscino e03c4fe193 ARTEMIS-3309 Add a parameter to limit messages to move or transfer 2021-05-24 14:09:20 -04:00
Justin Bertram e543aa3bd5 ARTEMIS-3159 errors during concurrent expiration with auto-creation 2021-05-24 13:02:08 -05:00