Commit Graph

10909 Commits

Author SHA1 Message Date
Jean-Baptiste Onofré c2cfa67578 [AMQ-8580] Upgrade to shiro 1.9.0
(cherry picked from commit 3a8e68f719)
2022-04-11 07:43:11 +02:00
Jean-Baptiste Onofré 1d0c7e08ec [AMQ-8582] Upgrade to ASM 9.3
(cherry picked from commit d26182d9b5)
2022-04-10 18:22:46 +02:00
Mikhail Pavlovich Sidorenko da51980aef Use UTF-8 instead ISO-8859-1
(cherry picked from commit 6e2759f031)
2022-04-10 07:51:18 +02:00
Matt Pavlovich 4bd21c558c [AMQ-8560] Upgrade geronimo-transaction 3.1.5
(cherry picked from commit 50d0b1e724)
2022-04-10 07:14:24 +02:00
Matt Pavlovich 9a30357386 [AMQ-8556] Upgrade Jackson 2.13.2 (#805)
(cherry picked from commit a4c03a1509)
2022-04-10 06:56:19 +02:00
Robbie Gemmell deada823e4 AMQ-8576: update to Qpid JMS 0.61.0 2022-04-07 13:29:26 +01:00
Christopher L. Shannon f759fb0bd1 AMQ-8548 - Don't log full stack trace on Async error at WARN level 2022-04-06 10:11:12 -04:00
Christopher L. Shannon (cshannon) 04e5114e21 AMQ-8554 - Add missing jetty-continuation jar to assembly
(cherry picked from commit 291f925601)
(cherry picked from commit 4eb9c33492)
2022-04-06 09:51:45 -04:00
Jean-Baptiste Onofré 3669b90feb [AMQ-8561] Add missing jetty-webapp dependency in activemq-web
(cherry picked from commit 2959d800fe)
2022-04-06 14:03:34 +02:00
Robbie Gemmell f86378c7d9 AMQ-8569: set xstream osgi import optional to match with its dependency declaration
Backports 558bb8cf88
2022-04-06 12:21:00 +01:00
Lucas Tétreault 4b90e99783 AMQ-8549: Update copyright years
(cherry picked from commit aa1729ba2b)
2022-03-29 10:12:51 +02:00
ilyes Ajroud 072217f33c add the capability to override memory options
since the last release , the xmx and xms are hardcoded on `env` , the goal is to use ACTIVEMQ_OPTS_MEMORY environement variable if needed to override memory options

(cherry picked from commit 1ba4628be6)
2022-03-06 07:49:56 +01:00
Jean-Baptiste Onofré 538d86fbff [AMQ-8522] Secure /api path on the web console
(cherry picked from commit a74fe37582)
2022-03-06 07:46:53 +01:00
Jean-Baptiste Onofré b9d24e586d Use Jetty atomic jar files instead of jetty-all (deprecated) and update to Jetty 9.4.45.v20220203 (#784)
* [AMQ-7358] Use jetty atomic jar files instead of jetty-all uber jar
(deprecated according to Jetty team)
[AMQ-8461] Upgrade to Jetty 9.4.45.v20220203

(cherry picked from commit fa461c876a)
2022-03-02 16:24:56 +01:00
Matt Pavlovich 9db5f436cf [AMQ-8515] FailoverTransport should handle MaxFrameSizeExceededException (#785)
(cherry picked from commit 094dbc89f3)
2022-03-02 15:41:25 +01:00
Jean-Baptiste Onofré bd3175281c [AMQ-8512] Upgrade to rome 1.18.0
(cherry picked from commit 0673f78091)
2022-02-25 10:19:34 +01:00
Matt Pavlovich 5fe6854b62 [AMQ-6883] Update wrapper confs to be consistent memory and dedicatedTaskRunner
(cherry picked from commit cb27fd06ee)
2022-02-23 18:32:47 +01:00
Cesar Hernandez 8566957b02 [AMQ-8503] Upgrade to jackson 2.13.1
(cherry picked from commit 80d4804221)
2022-02-23 16:37:34 +01:00
Jean-Baptiste Onofré ded7a43d20 [AMQ-8497] Upgrade to Apache POM 25
(cherry picked from commit 56b5608233)
2022-02-23 14:45:35 +01:00
Christopher L. Shannon (cshannon) 8674538d61 AMQ-8509: Update TempStore Usage test to verify cleanup
Add a unit test to the previous tests added in AMQ-7085 to verify
TempUsage is cleaned up and stopped on Queue.stop()

(cherry picked from commit df354fa023)
2022-02-23 07:43:24 -05:00
Artur Pedroso 84a28d78f2 AMQ-8509: Fix TempUsage memory leak
If you have an application that creates lots of queues it will eventually
fail with OOM because TempUsage is started on Queue#start but never stopped.

The `systemUsage.getTempUsage().start()` used on the Queue#start
adds elements on a List from TempUsage parent and these elements
are never removed.

To reproduce this issue you need to leave an application
running for a long time creating different queues.

The only way to avoid the leak right now is to stop the BrokerService,
which isn't a solution.

(cherry picked from commit d1e9ba68b3)
2022-02-23 07:43:15 -05:00
Robbie Gemmell e84025c267 AMQ-8488: make the build fail quickly and obviously if not run on Java 8, which is required.
Overrides the existing parent pom enforcer check and restricts the version range. Updates to current plugin that works across newer versions.
2022-02-16 11:01:09 +00:00
Jean-Baptiste Onofré 2a9161116f [maven-release-plugin] prepare for next development iteration 2022-02-11 17:28:32 +01:00
Jean-Baptiste Onofré 025f99f245 [maven-release-plugin] prepare release activemq-5.16.4 2022-02-11 17:18:49 +01:00
Jean-Baptiste Onofré 6139556e81
Merge pull request #766 from jbonofre/AMQ-8484
[AMQ-8472] Fix reload4j scope in activemq-partition module
2022-02-11 16:44:23 +01:00
Jean-Baptiste Onofré c0377213ba [AMQ-8472] Fix reload4j scope in activemq-partition module 2022-02-11 16:13:26 +01:00
Robbie Gemmell 3b283fe440 NO-JIRA: update year in source + bin assembly NOTICE files
(cherry picked from commit 2c3a7c68df)
2022-02-11 14:03:21 +01:00
Robbie Gemmell d719a8bed1 NO-JIRA: update RAT plugin to 0.13
(cherry picked from commit 01af3e87d7)
2022-02-11 14:02:59 +01:00
Jean-Baptiste Onofré fdee757fcd
Merge pull request #765 from jbonofre/AMQ-8410
[AMQ-8410] Fix OSGi imports
2022-02-10 18:32:34 +01:00
Jean-Baptiste Onofré ff601a5122 [AMQ-8410] Fix OSGi imports 2022-02-10 14:21:58 +01:00
Jean-Baptiste Onofré cade46f4a4
Merge pull request #754 from coheigea/AMQ-8472
AMQ-8472 - Switch to reload4j for logging
2022-02-10 06:07:25 +01:00
Matt Pavlovich 0b7ebc5ad1 [AMQ-8443] Add unit test
(cherry picked from commit 09458713aa)
2022-02-09 10:50:23 -05:00
Matt Pavlovich acc3c694ab [AMQ-8397] Add unit tests for AMQ-8397
(cherry picked from commit 9d8ee0d3b7)
2022-02-09 06:35:57 -05:00
Colm O hEigeartaigh 1f01a61426
AMQ-8472 - Switch to reload4j for logging 2022-02-08 14:02:31 +00:00
Matt Pavlovich 3b5ebd0bb7 [AMQ-8413] NetworkConnectore remote user and pass unit test
(cherry picked from commit 2a9f777aab)
2022-02-07 11:28:28 -05:00
Christopher L. Shannon (cshannon) 5f71b848a5 [AMQ-8412] - Add some comments for maxFrameSizeEnabled
(cherry picked from commit 19949e36bc)
2022-02-07 08:53:49 -05:00
Matt Pavlovich c1cf24cb2a [AMQ-8053] UserIDBroker unit tests
(cherry picked from commit 49f1b2c903)
2022-02-07 08:29:09 -05:00
Christopher L. Shannon (cshannon) 42e65f88e3 AMQ-8412 - Add wireformat negotiation test for maxFrameSizeEnabled
Verify that maxFrameSizeEnabled being configured on the client or the
server is not negotiated and won't affect the other

(cherry picked from commit 26a3c55833)
2022-02-07 08:04:42 -05:00
Matt Pavlovich e630a3cc61 [AMQ-8412] Update client-side maxFrameSize handling to be more symetrical with server-side
- Handle in the OpenWireFormat class
 - Add unit tests to confirm
 - Verify compression is accounted for
 - Verify the ability to disable using wireFormat.maxFrameSizeEnabled=false
 - [cshannon] Reworked max frame size test case to add in all transports and all client/server cases

(cherry picked from commit 67a2edbf0d)
2022-02-07 08:04:33 -05:00
Jean-Baptiste Onofré 90b29cd0a5 Fix maven plugins version and options 2022-02-01 18:07:22 +01:00
Jean-Baptiste Onofré 369696892c Downgrade to Apache POM 20 to avoid javadoc generation error (it will be
fixed on main/5.17)
2022-02-01 15:21:28 +01:00
Jean-Baptiste Onofré 3d55f2d452 Update schema location in preparation for 5.16.4 release 2022-02-01 14:35:39 +01:00
Colm O hEigeartaigh b572d0cd5a AMQ-8648 - CVE-2022-23437: Infinite loop within Apache XercesJ xml parser
(cherry picked from commit 70915ea5c0)
2022-02-01 14:26:56 +01:00
Jean-Baptiste Onofré 3bebc11229 Fix javadoc generation related to reproducible build 2022-01-31 18:17:42 +01:00
Jean-Baptiste Onofré fbdf3c5061 [AMQ-8467] Upgrade to xstream 1.4.19
(cherry picked from commit 2206eb3ad6)
2022-01-31 17:23:16 +01:00
Endre Stølsvik c81740592b StatisticsBrokerPlugin: Add feat: request destination firstMessageTimestamp
Adding a feature (STATS_FIRST_MESSAGE_TIMESTAMP) to the
StatisticsBrokerPlugin's destination-statistics for getting the
timestamp of the first message in the destination(s) being requested: If
you on the query-message set the property
StatisticsBroker.STATS_FIRST_MESSAGE_TIMESTAMP to anything (e.g. boolean
true), a long value "firstMessageTimestamp" will be added to the
statistics reply message(s). Since the reply message has JMSTimestamp
set, which is the broker's now-timestamp, you may also on the query side
calculate the age of the first message in milliseconds. The key name was
chosen since that is the name of the corresponding feature in Artemis.

This extension of the existing feature is implemented to be as
non-intrusive as possible, adding very little runtime cost if not
requested. It also seems like the runtime cost for enabling this
feature, thus finding and adding the firstMessageTimestamp, is small.

While at it, also slightly improving an existing feature
(STATS_DENOTE_END_LIST) where a reply to a destination query can be
"null terminated": After sending the relevant replies, the
StatisticsBroker also sends an empty message. This feature is relevant
if the query is a wildcard query, thus returning multiple messages: The
empty message denotes the end of the replies. However, to activate this
feature, a somewhat complicated query destination had to be constructed.
Adopting the solution for the other StatisticsBroker feature where you
may reset the broker statistics by adding a property to the query
message, this null-termination feature now /also/ checks for the
presence of this query modifier STATS_DENOTE_END_LIST as a property.
(This property based solution was thus also adopted for the present
'firstMessageTimestamp' solution, as it was found much more intuitive).

Added tests for both the STATS_FIRST_MESSAGE_TIMESTAMP query modifier,
and the improved STATS_DENOTE_END_LIST property-based query modifier.

Had to make the Topic.doBrowse(List browseList, int max) public - the
corresponding method for Queue was already public.

Made the evaluation of whether this is a StatisticsBroker-relevant
message a microscopic bit more performant (exiting faster if not
relevant): To the initial test of whether the message is relevant, which
only checked for replyTo being set, a check for 'destination.
startsWith("ActiveMQ.Statistics")' was added. Only if so, the rest of
the evaluations kick in. Also using 'string.startsWith(..)' instead of
the verbose 'string.regionMatches(..)'.

Removed an unused import on PartitionBrokerTest.java, as IntelliJ
complained about not finding it.

(cherry picked from commit 9167a79b79)
2022-01-30 16:07:11 +01:00
Matt Pavlovich afc50ee727 [AMQ-8412] Client-side management of max frame size
- Store maxFrameSize on client-side
 - Check messages on outbound send to send an actionable exception to the caller
 - Add a reason code for max message size exceeded (client-side)

(cherry picked from commit 48d0fb1171)
2022-01-29 07:08:34 +01:00
Matt Pavlovich f1b37e0a4f [AMQ-8462] Remove double call to listConnectionStates during connection close
(cherry picked from commit 6a944a05d9)
2022-01-24 18:48:05 +01:00
Alexej Timonin 7a8d517436 Allow custom delimiter when sending TextMessages via MBean
This enables possibility to send messages containing commas in the body
with tools such as jconsole.
Example simple text as body: body=Hello, world!
Example json as body: body={"a":"b","c":"d"}

(cherry picked from commit 7c63227003)
2022-01-22 17:14:44 +01:00
Lucas Tétreault fc7a68a8bc Use B+ Tree iterator instead of DFS to find scheduled jobs to be executed
(cherry picked from commit 60859b0b7f)
2022-01-19 19:02:09 +01:00