Matt Pavlovich
680717cb95
[AMQ-8976] Add maxConnectionExceededCount metric for connectors ( #850 )
2022-07-18 16:20:25 -05:00
Enrico Olivelli
4b08978062
AMQ-8613 Improve performance of selectors with a big sequence of OR and AND logical expressions
2022-05-31 12:07:23 +02:00
Endre Stølsvik
393a696955
AMQ-8617: RedeliveryPolicy:Exponential Backoff + NonBlockingRedelivery = too long delays
...
Scenario on client:
1. Employing RedeliveryPolicy with exponential backoff (keeping maximum
redeliveries at default 6)
2. Enabled non-blocking redelivery
3. Receiving e.g. 100 consecutive poison messages (which eventually
should DLQ after max redeliveries)
This will result in massive redelivery delays due to a logic bug.
The reason is that redeliveryDelay is a field variable kept on the
ActiveMQMessageConsumer, instead of being a property on the message - or
that the redelivery delay was calculated per message based on the
redelivery count.
When consecutive messages rollbacks multiple times, the redeliveryDelay
field is continuously multiplied by the backoff multiplier, resulting in
enormous delays.
Fix: Ditch the field variable, instead calculating the redeliveryDelay
per delivery from the redelivery count. (This happens to be identical to
how it is done in afterRollback() in ActiveMQSession:1004.)
Test is added - which fails with the previous code, and passes with
this. Added a debug log line for the calculated delay.
2022-05-31 01:56:30 +02:00
Jean-Baptiste Onofré
0849ae0211
[AMQ-8518] Avoid NPE if path is null (at startup)
2022-04-18 16:52:46 +02:00
Christopher L. Shannon
4ae145352b
Merge pull request #812 from cshannon/AMQ-8550
...
AMQ-8550 - Check for null keystore/truststore passwords
2022-04-05 13:36:09 -04:00
Christopher L. Shannon
b93d58259c
AMQ-8550 - Check for null keystore/truststore passwords
...
Inside ActiveMQSslConnectionFactory the passwords should be checked for
null so a NPE isn't thrown. Null will be passed to the factories instead
and the keystore/truststore factories will try and load the keystores
using null for the password which may or may not work depending on the
implementation and if password is set.
2022-04-05 12:17:14 -04:00
Robbie Gemmell
558bb8cf88
AMQ-8569: set xstream osgi import optional to match with its dependency declaration
2022-04-05 15:44:16 +01:00
Jean-Baptiste Onofré
9ba7aab24d
[AMQ-8533] Fix maven-bundle-plugin instructions to avoid shading all packages
2022-03-09 20:51:56 +01:00
Christopher L. Shannon (cshannon)
00253b3219
NO-JIRA: Updating next development version to 5.18.0-SNAPSHOT
2022-03-01 09:36:34 -05:00
Jean-Baptiste Onofré
e597017200
Merge pull request #662 from jbonofre/AMQ-7426
...
[AMQ-7426] Upgrade to log4j2
2022-02-27 13:23:53 +01:00
Matt Pavlovich
094dbc89f3
[AMQ-8515] FailoverTransport should handle MaxFrameSizeExceededException ( #785 )
2022-02-25 19:46:45 -06:00
jbonofre
472dcf8497
[AMQ-7426] Upgrade to log4j2
2022-02-24 15:20:51 +01:00
Matt Pavlovich
00925c1eff
[AMQ-8493] Minor deprecation cleanups in activemq-client
2022-02-16 12:58:29 -06:00
Christopher L. Shannon (cshannon)
19949e36bc
[AMQ-8412] - Add some comments for maxFrameSizeEnabled
2022-02-07 08:45:28 -05:00
Christopher L. Shannon (cshannon)
26a3c55833
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
2022-02-07 08:03:06 -05:00
Matt Pavlovich
67a2edbf0d
[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
2022-02-06 17:45:11 -06:00
Matt Pavlovich
48d0fb1171
[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)
2022-01-26 09:49:42 -06:00
Jean-Baptiste Onofré
de563e76ce
Merge pull request #738 from mattrpav/AMQ-8341
...
[AMQ-8341] Remove FTP Blob strategy
2022-01-15 07:01:25 +01:00
Matt Pavlovich
2e784d07be
[AMQ-8341] Remove FTP Blob strategy
...
- Remove commons-net dependency
2022-01-12 11:05:43 -06:00
Matt Pavlovich
bc9ff5a09f
[AMQ-8443] Allow reconnect command to work
2022-01-12 11:05:17 -06:00
Jean-Baptiste Onofré
c2e2c818b5
[AMQ-8445] Fix SSLParameters set in the SSL transport
2022-01-12 08:48:00 +01:00
Jean-Baptiste Onofré
18b231bf9f
Merge pull request #711 from jgallimore/AMQ-8275
...
AMQ-8275 - Java 16 SSL - reflection warning
2021-12-19 08:01:05 +01:00
Matt Pavlovich
67256c61b1
[AMQ-7309] Update to jakarta.jms/jakarta.jms-api:2.0.3 ( #682 )
...
- API update only
- Throw UnsupportedOperationException
- Disable activemq-camel from build
- Formatting fixes
- Use geronimo-jms for osgi-related artifacts
- Fix features.xml invalid xml header
- Add a unit test to confirm JMS 2.0 methods for phase 1 (throw UnsupportedOperationException)
- Add deliveryTime field to Message
- Minor formatting fixes
2021-11-10 11:56:04 -06:00
Jean-Baptiste Onofré
66a7d700fb
[AMQ-8408] Remove JavaSE requirement in ActiveMQ bundles
2021-10-22 15:52:17 +02:00
Jonathan Gallimore
34c4e186fe
AMQ-8275 eliminate use of reflection for SNI on SslTransport
2021-09-14 12:53:35 +01:00
xingrufei
dbbf3cb3f3
[AMQ-8350] ActiveMQMessage.getStringProperty() should exchange equals method call objects
2021-08-06 10:22:38 +08:00
dvhvsekhar
8584b46e76
AMQ-8304: Added a check with !isStopping() also before attempting to read input stream ( #672 )
2021-07-04 06:42:45 +02:00
Christopher L. Shannon (cshannon)
3f5abd4433
AMQ-6660 - Use a separate lock for lazy scheduler creation to prevent
...
deadlocks
Switch to using a dedicated lock to initialize the Scheduler object
inside of ActiveMQConnection to prevent a deadlock scenario that occurs
when using the intrinsic ActiveMQConnection lock. This is using double
checked locking so this lock will only be contended with during lazy
creation and then will rely on the volatile reference for future reads
and when stopping/closing.
2021-06-25 11:37:25 -04:00
Jean-Baptiste Onofré
ae777e9571
Merge pull request #665 from mattrpav/AMQ-8282
...
[AMQ-8282] Migrate from deprecated .newInstance() calls to .getConstr…
2021-06-04 06:18:27 +02:00
Christopher L. Shannon (cshannon)
2fcf2fd75f
AMQ-8287 - fix NIOSSLTransport deadlock with serviceRead lock
...
This narrows the lock that was added to serviceRead() to secureRead()
which prevents processing commands while locked which should solve the
deadlock issues
2021-06-02 09:47:24 -04:00
Matt Pavlovich
950a140455
[AMQ-8282] Migrate from deprecated .newInstance() calls to .getConstructors().newInstance
2021-06-02 08:30:36 -05:00
Matt Pavlovich
2cc17a2fa0
[AMQ-8279] Compiler warning cleanups
...
- Remove unsused imports (exept for generated classes)
- Convert to T.valueOf on boxed primitives from new T()
2021-05-25 09:34:35 -05:00
Jean-Baptiste Onofré
fc80b86ac6
[AMQ-7442] Support JDK11 full build and code style ( #647 )
2021-05-25 06:55:39 +02:00
gtully
c4d2ddfce9
AMQ-7298 - fix regression with broker redelivery plugin, fix and test relates to AMQ-8168
2021-04-16 13:12:13 +01:00
Jean-Baptiste Onofré
db6098c53a
Merge pull request #365 from jgallimore/master-AMQ-7149
...
AMQ-7149 Remove dependency activemq-http and activemq-stomp
2021-03-24 11:36:04 +01:00
Jean-Baptiste Onofré
4c7bb06503
Merge pull request #423 from mdaley/master
...
Stop failed timer task from breaking timers.
2021-03-23 14:43:43 +01:00
Jean-Baptiste Onofré
ea5b2d8813
Merge pull request #274 from ashakirin/master
...
AMQ-6894: limit poison exception message to 1024
2021-03-22 06:02:38 +01:00
Christopher L. Shannon (cshannon)
944ca6c7e1
AMQ-8183 - prevent infinite loop when maxFrameSize is exceeded
...
This makes sure the nio transport thread properly terminates if
maxFrameSize is exceeded with OpenWire to prevent an infinite loop that
uses up all the cpu
2021-03-11 09:59:36 -05:00
Christopher L. Shannon (cshannon)
1654e6c79c
AMQ-8169: Synchronize on serviceRead inside NIOSSLTransport
...
This is needed to prevent concurrent access to the SSLEngine during
initialization. This is a regression from when auto+nio+ssl was added.
2021-03-08 11:28:33 -05:00
jbonofre
cbc1baa07a
[AMQ-8097] Deal with deserialization with xstream unmarshal poison ack
2021-01-13 16:13:25 +01:00
Jean-Baptiste Onofré
02d4f8efec
Merge pull request #565 from alevandoski/master
...
AMQ-8011 - Performance Related issue in ClassLoadingAwareObjectInputS…
2020-11-21 19:05:54 +01:00
Jean-Baptiste Onofré
5bc7532d42
Merge pull request #569 from garydgregory/NPE_NetworkInterface_getNetworkInterfaces
...
Guard against null NetworkInterface.getNetworkInterfaces()
2020-11-20 18:13:19 +01:00
Gary Gregory
d292372902
Guard against null return value from
...
java.net.NetworkInterface.getNetworkInterfaces().
2020-11-05 10:13:50 -05:00
Benjamin Graf
a2e718f259
AMQ-8055 - rename posion to correct poison
2020-10-23 09:50:18 +02:00
Andrew Levandoski
f3e0ab4c5a
AMQ-8011 - Performance Related issue in ClassLoadingAwareObjectInputStream.checkSecurity()
2020-10-20 17:21:31 -04:00
gtully
0c986c33f6
AMQ-8039 - support system property configuration of the inactivity monitor thread pool, follow example of nio. new test to verify
2020-09-11 10:39:15 +01:00
Christopher L. Shannon (cshannon)
17defa79d4
NO-JIRA: Update branch to 5.17.0-SNAPSHOT after release
2020-07-14 07:27:43 -04:00
Jean-Baptiste Onofré
334476ac63
[maven-release-plugin] prepare for next development iteration
2020-06-25 07:26:41 +02:00
Jean-Baptiste Onofré
86dd78b1aa
[maven-release-plugin] prepare release activemq-5.16.0
2020-06-25 07:26:13 +02:00
Jean-Baptiste Onofré
6908749c2f
Fix version
2020-06-25 07:13:04 +02:00
Jean-Baptiste Onofré
ff2dae82f3
[maven-release-plugin] prepare release activemq-5.16.0
2020-06-24 21:56:52 +02:00
jbonofre
4ed2ba22a9
Cancel 5.16.0 release
2020-06-24 15:19:34 +02:00
Jean-Baptiste Onofré
cd1e9f8697
[maven-release-plugin] prepare for next development iteration
2020-06-23 17:40:26 +02:00
Jean-Baptiste Onofré
2e890c6224
[maven-release-plugin] prepare release activemq-5.16.0
2020-06-23 17:39:53 +02:00
Jean-Baptiste Onofré
4991668549
Merge pull request #517 from coheigea/AMQ-7450
...
AMQ-7450 - Put some restrictions on the URLs that are allowed in Blob…
2020-06-23 07:01:38 +02:00
jbonofre
88525ce650
[AMQ-7121] Set setter accessible (for JDK 11)
2020-06-22 17:35:49 +02:00
gtully
ed41101755
AMQ-7497 - support reconnect of the single RA xaResource connection
2020-06-11 19:39:18 +01:00
Colm O hEigeartaigh
45108a2328
AMQ-7450 - Put some restrictions on the URLs that are allowed in BlobMessages
2020-05-25 14:24:10 +01:00
Pascal Schumacher
efcca7d062
Fix javadoc warnings related to non-existing parameter names.
2020-05-22 10:49:39 +02:00
gtully
62cfe83e9d
[AMQ-7291] rework fix to initializeWriting but just with the read only properties check
2020-05-21 10:41:58 +01:00
Jean-Baptiste Onofré
173426c55c
Merge pull request #535 from jbonofre/AMQ-7480
...
[AMQ-7480] Avoid NPE if original exception is null
2020-05-21 09:52:33 +02:00
jbonofre
ecbeb6d2eb
[AMQ-7480] Avoid NPE if original exception is null
2020-05-19 16:51:23 +02:00
Pascal Schumacher
67e06c82f7
Fix some javadoc warnings releated to non-existing parameter names.
2020-05-17 11:38:05 +02:00
Jean-Baptiste Onofré
079d9d7fe4
Merge pull request #504 from PascalSchumacher/ServiceStopper#throwFirstException_remove_unreachable_code
...
Remove unreachable code in ServiceStopper#throwFirstException.
2020-05-16 07:20:39 +02:00
Jean-Baptiste Onofré
0444dd96b2
Merge pull request #505 from PascalSchumacher/potential_overflow_in_int_multiplication
...
Avoid potential overflow in int multiplication before it is converted…
2020-05-16 07:17:13 +02:00
gtully
0ebb0f88ef
[AMQ-7485] add check for rollbackonly flag in session send such that failed ended transactions prevent further work till next transaction boundary
2020-05-15 15:39:56 +01:00
Jean-Baptiste Onofré
41bef94293
Merge pull request #521 from coheigea/AMQ-7458
...
AMQ-7458 - Implement bounds checking on the message scheduling proper…
2020-05-15 15:52:23 +02:00
anushaCoder
a5e70fa2d7
[AMQ-7463] Use ConcurrentHashMap in client connection state to avoid ConcurrentModificationException
2020-05-15 06:40:36 +02:00
gtully
aa03f295f5
AMQ-7464 - ensure message.copy before server session run dispatch
2020-04-08 14:57:49 +01:00
Colm O hEigeartaigh
24aaa4698c
AMQ-7458 - Implement bounds checking on the message scheduling properties
2020-03-27 12:14:03 +00:00
jbonofre
6355f507c3
Revert "AMQ-7291 - allow setting properties after clearProperties for BytesMessage, closes #420"
...
This reverts commit 503416a001
.
2020-03-10 16:16:01 +01:00
Pascal Schumacher
b43f5b8cf2
Avoid potential overflow in int multiplication before it is converted to long.
2020-03-08 11:50:21 +01:00
Pascal Schumacher
68355136d2
Remove unreachable code in ServiceStopper#throwFirstException.
2020-03-08 11:27:24 +01:00
Colm O hEigeartaigh
67fb6f8871
AMQ-7423 - Remove synchronization from JAAS PropertiesLoader
2020-02-27 15:29:26 +00:00
Jean-Baptiste Onofré
bfb810c507
Merge pull request #466 from coheigea/misc_fixes
...
AMQ-7413 - Misc logging fixes
2020-02-22 07:49:55 +01:00
gtully
503416a001
AMQ-7291 - allow setting properties after clearProperties for BytesMessage, closes #420
2020-02-19 13:01:25 +00:00
Daniel Trebbien
b020cba744
Fix some incorrect SLF4J logger calls
...
In some cases, there were an inconsistent number of formatting anchors.
In other cases, formatting anchors were used, but because the
trace/debug/info/warn/error(String, Throwable) variant was used, the
string is a message string rather than a format string.
These issues were found by SLF4J Helper for NetBeans IDE:
http://plugins.netbeans.org/plugin/72557/
2020-02-19 08:26:36 +00:00
Daniel Trebbien
7b528ecee7
Fix some typos
2020-02-19 08:01:41 +00:00
Daniel Trebbien
252dda94a3
Reformat some code
2020-02-19 07:50:20 +00:00
Jean-Baptiste Onofré
a9d89572ef
Merge pull request #449 from PascalSchumacher/setter_getter_synchronization
...
AMQ-7402: Inconsistent synchronization of getters/setters of some cla…
2020-02-13 08:15:57 +01:00
Jean-Baptiste Onofré
4ecdd5a2a8
Merge pull request #448 from PascalSchumacher/fix_unused_format_arguments_in_log_messages
...
Fix unused format arguments in log messages.
2020-02-13 07:53:32 +01:00
Pascal Schumacher
6764511fa1
Fix unused format arguments in log messages.
2020-02-12 17:52:28 +01:00
Pascal Schumacher
5356893fac
AMQ-7402: Inconsistent synchronization of getters/setters of some classes
...
Make synchronization consistent or remove it and declare the field volatile.
2020-02-12 17:48:34 +01:00
jbonofre
097506a458
[AMQ-7399] org.apache.activemq.SERIALIZABLE_PACKAGES doesn't include java* by default
2020-02-12 13:43:03 +01:00
Pascal Schumacher
dac97e6294
[AMQ-7401] Make double-checked locking thread-safe by declaring the field volatile.
2020-02-10 19:06:17 +01:00
gtully
5a0c853ba0
AMQ-7353 - fix visibility of marshalledProperties to ensure competing threads don't see partial objects in error. Little test case that demonstrates the problem in isolation
2019-11-26 16:58:30 +00:00
Matt Daley
b379879dbf
Stop failed timer task from breaking timers.
2019-11-23 15:00:23 +00:00
Christopher L. Shannon (cshannon)
0c6f9a9a1e
AMQ-7352 - Add support for anonymous producer advisories
...
By default this behavior is turned off but can be enabled by setting
anonymousProducerAdvisorySupport on the BrokerService to true
2019-11-22 13:35:32 -05:00
Jean-Baptiste Onofré
a59ebe7d09
Merge pull request #283 from SaivR1t/master
...
AMQ-6963 Fix calling the toString() method in case of different log level.
2019-11-18 05:50:37 +01:00
Jean-Baptiste Onofré
057b950485
Merge pull request #322 from deeyes24/failing_cronparsertest_inIndia
...
NO-JIRA: CronParserTest is failing in Indian StandardTime
2019-11-17 06:56:20 +01:00
Christopher L. Shannon (cshannon)
65de327369
AMQ-7300 - Remove unnecessary call to sequence updater as read is already volatile
2019-09-06 12:19:23 -04:00
Christopher L. Shannon (cshannon)
4db2656066
AMQ-7300 - Improve performance of LongSequenceGenerator
...
LongSequenceGenerator now uses an AtomicLongFieldUpdater instead of
synchronized
2019-09-06 11:55:54 -04:00
gtully
02548777c2
AMQ-7298 - rework redelivery message tracking to ensure no duplicate suppression (and dlq) in error for local transaction batches that failover
2019-09-04 12:24:42 +01:00
Jean-Baptiste Onofré
7e72fbc98b
[AMQ-7254] Fix OSGi headers
2019-08-05 08:38:47 +02:00
gtully
de3f77063f
AMQ-7234 - fix up memory usage wait timeout such that topic pfc in a transaction can see connection context state changes, fix and test
2019-06-21 16:55:13 +01:00
Jonathan Gallimore
82b3d02fc2
Remove dependency activemq-http and activemq-stomp
2019-06-06 14:42:49 +01:00
gtully
30abc45f62
no jira - remove extraneous printStackTrace, ex is propagated up
2019-04-18 14:38:30 +01:00
gtully
487d4a112e
AMQ-7185 - track durable sub prepared acks in preCommit callback and release/remove on xa outcome, avoid duplicate delivery; fix and test
2019-04-17 14:31:11 +01:00
gtully
b9bcd2fcc3
AMQ-7165 - ensure failover updated uris are additive such that statically configured uris are respected
2019-03-12 12:24:20 +00:00
Alan Protasio
4b51f8b66c
AMQ-7132 - ActiveMQ reads lots of index pages upon startup (after a graceful or ungraceful shutdown)
2019-01-14 10:54:26 -05:00