Justin Bertram
3339ca8b68
ARTEMIS-3801 fix test
2022-04-26 09:54:22 -05:00
Justin Bertram
506d59db03
ARTEMIS-3801 not getting messages on MQTT subscriptions with $
2022-04-25 21:41:20 -04:00
Justin Bertram
97b4f6a578
ARTEMIS-3788 don't send MQTT will message if will flag = false
2022-04-21 16:38:27 -04:00
Justin Bertram
96fa98fc93
ARTEMIS-3789 respect session expiry interval on MQTT disconnect message
2022-04-21 15:33:56 -04:00
Justin Bertram
c5f45ee44d
ARTEMIS-3781 send PUBREC on duplicate PUBLISH for MQTT QoS 2
...
The MQTT 5 (and 3.1.1) specification states:
Until it has received the corresponding PUBREL packet, the receiver
MUST acknowledge any subsequent PUBLISH packet with the same Packet
Identifier by sending a PUBREC. It MUST NOT cause duplicate messages to
be delivered to any onward recipients in this case [MQTT-4.3.3-10].
The broker prevents a duplicate message, but it doesn't respond with a
PUBREC. This commit fixes that.
2022-04-20 12:01:47 -04:00
Justin Bertram
b5539b9da4
NO-JIRA Fix MQTT trace logging NPE
2022-04-20 12:01:47 -04:00
Justin Bertram
40a191379b
ARTEMIS-3775 don't carry forward MQTT topic aliases to new connection
2022-04-18 21:10:49 -04:00
Justin Bertram
7d11cf81ba
ARTEMIS-3777 fix MQTT request/response + nolocal
...
Removing the connection ID property from the actual *message* breaks the
nolocal functionality. Removing the property isn't necessary in the
first place so this commit reomves that code.
2022-04-18 18:26:05 -04:00
Justin Bertram
1e1397935a
NO-JIRA improve MQTT trace logging
2022-04-18 18:26:05 -04:00
Justin Bertram
a6abf68ba5
ARTEMIS-3774 support user properties on MQTT will message
2022-04-13 10:25:57 -04:00
Justin Bertram
b48037a1e6
ARTEMIS-3764 wrong CONNACK return code for MQTT5
...
This bug is causing tests in o.a.a.a.t.i.m.s.c.ConnectTestsWithSecurity
to fail.
This commit fixes the problem by setting the session's version earlier
in the logic handling the CONNECT packet so that the proper CONNACK
return code can be supplied to the remote client in case of
authentication failure.
2022-04-06 17:02:19 -04:00
Clebert Suconic
a0e7cb4eae
[maven-release-plugin] prepare for next development iteration
2022-03-22 13:34:58 -04:00
Clebert Suconic
d57ac487c7
[maven-release-plugin] prepare release 2.21.0
2022-03-22 13:34:55 -04:00
Justin Bertram
2b5a25a106
ARTEMIS-3702 auth failures don't adhere to MQTT spec
...
The commit includes the following changes:
- Don't drop the connection on subscribe or publish authorization
failures for 3.1 clients.
- Don't drop the connection on subscribe authorization failures for
3.1.1 clients.
- Add configuration parameter to control behavior on publish
authorization failures for 3.1.1 clients (either disconnect or not).
2022-03-15 15:33:54 -04:00
gtully
dcaebfb24e
ARTEMIS-3660 - rename broker-balancer to connection-router
2022-03-01 11:15:16 +01:00
Justin Bertram
27d018327a
ARTEMIS-3678 return proper CONNACK code when MQTT 3.x auth fails
2022-02-10 10:30:44 -06:00
Justin Bertram
8063110644
ARTEMIS-3638 Support MQTT 5
...
MQTT 5 is an OASIS standard which debuted in March 2019. It boasts
numerous improvments over its predecessor (i.e. MQTT 3.1.1) which will
benefit users. These improvements are summarized in the specification
at:
https://docs.oasis-open.org/mqtt/mqtt/v5.0/os/mqtt-v5.0-os.html#_Toc3901293
The specification describes all the behavior necessary for a client or
server to conform. The spec is highlighted with special "normative"
conformance statements which distill the descriptions into concise
terms. The specification provides a helpful summary of all these
statements. See:
https://docs.oasis-open.org/mqtt/mqtt/v5.0/os/mqtt-v5.0-os.html#_Toc3901292
This commit implements all of the mandatory elements from the
specification and provides tests which are identified using the
corresponding normative conformance statement. All normative
conformance statements either have an explicit test or are noted in
comments with an explanation of why an explicit test doesn't exist. See
org.apache.activemq.artemis.tests.integration.mqtt5 for all those
details.
This commit also includes documentation about how to configure
everything related to the new MQTT 5 features.
2022-02-04 09:57:15 -05:00
Robbie Gemmell
8661cecb8f
ARTEMIS-3655: isolate the errorprone dependencies to its profiles, enable everywhere, fix related problems, and update to 2.10.
2022-01-26 16:32:34 +00:00
Clebert Suconic
e34677f5c0
[maven-release-plugin] prepare for next development iteration
2021-12-14 22:50:55 -05:00
Clebert Suconic
3dea7eeb71
[maven-release-plugin] prepare release 2.20.0
2021-12-14 22:50:53 -05:00
Domenico Francesco Bruscino
f8472fd736
ARTEMIS-3569 Validate users on AMQP remote open
2021-11-24 11:28:16 +01:00
gtully
b979189187
ARTEMIS-3569 - balancer role_name local target, matches role of authenticated user
2021-11-24 11:28:16 +01:00
Domenico Francesco Bruscino
8e92fd0f51
ARTEMIS-3559 Update netty version to 4.1.70.Final
2021-11-09 10:08:02 +01:00
Justin Bertram
402842062a
[maven-release-plugin] prepare for next development iteration
2021-10-11 13:35:57 -05:00
Justin Bertram
5fcb763234
[maven-release-plugin] prepare release 2.19.0
2021-10-11 13:35:06 -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
Justin Bertram
8f6dd3ea37
ARTEMIS-3471 implement "session present" for MQTT CONNACK
2021-09-10 14:41:02 -05: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
6ee7e72db1
ARTEMIS-3445 automatically clean-up abandoned MQTT subscriptions
2021-09-03 16:48:01 -04:00
Andy Taylor
364d4cc324
ARTEMIS-3426 - fix copying of large retained message
...
https://issues.apache.org/jira/browse/ARTEMIS-3426
2021-08-19 09:58:28 -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
Domenico Francesco Bruscino
6ec7a69d45
ARTEMIS-3236 Preserve managed queues on removing MQTT subscription
2021-05-25 11:24:53 -05:00
Domenico Francesco Bruscino
b4789a894f
ARTEMIS-3221 Migrating to Jakarta EE 8 artifacts
2021-04-09 11:49:59 -04:00
Robbie Gemmell
96a09041ee
ARTEMIS-3183: resolve various immediate warnings at build start
...
- Remove duplicates dependency definition following e7e3c71511
.
- Removes deprecated RELEASE version use, consolidate modules on single paho client version.
- Remove prerequisites entry as per warning, suggested enforcer rule already in place.
2021-03-16 12:48:48 +00:00
Justin Bertram
e548e0aab2
ARTEMIS-3182 remove defunct repo
...
This repo is no longer operative. See
https://jfrog.com/blog/into-the-sunset-bintray-jcenter-gocenter-and-chartcenter/
for more info. All dependencies are in Maven Central.
2021-03-15 20:00:09 -05:00
Clebert Suconic
12c8096a23
ARTEMIS-3093 Ordering on multiple consumers and core with rollback
2021-02-22 15:10:04 -05:00
Clebert Suconic
21ee5985ea
[maven-release-plugin] prepare for next development iteration
2021-02-11 12:00:04 -05:00
Clebert Suconic
36a771150b
[maven-release-plugin] prepare release 2.17.0
2021-02-11 11:59:51 -05:00
Clebert Suconic
c0867f0361
[maven-release-plugin] prepare for next development iteration
2021-02-09 12:12:48 -05:00
Clebert Suconic
9b473698e0
[maven-release-plugin] prepare release 2.17.0
2021-02-09 12:12:35 -05:00
Clebert Suconic
6ed1e4c87d
[maven-release-plugin] prepare for next development iteration
2021-02-08 15:56:31 -05:00
Clebert Suconic
06b29806ca
[maven-release-plugin] prepare release 2.17.0
2021-02-08 15:56:18 -05:00
Clebert Suconic
e75a679dec
ARTEMIS-2985 Ordered Executor not needed on Actor
...
The Actor is already an ordered executor. No need to create one here.
2020-11-20 10:42:07 -05:00
gtully
9675ecae42
ARTEMIS-2985 - don't block netty threads for mqtt protocol actions
2020-11-12 21:01:00 +00:00
Domenico Francesco Bruscino
14ec3cb7b0
ARTEMIS-2976 Remove password before creating server locator
2020-11-05 11:39:35 -05:00
Clebert Suconic
4e7bb97df7
[maven-release-plugin] prepare for next development iteration
2020-11-02 17:45:51 -05:00
Clebert Suconic
9768017530
[maven-release-plugin] prepare release 2.16.0
2020-11-02 17:45:38 -05:00
Clebert Suconic
28919b6ad8
[maven-release-plugin] prepare for next development iteration
2020-10-30 10:16:29 -04:00
Clebert Suconic
af5ca9f1e6
[maven-release-plugin] prepare release 2.16.0
2020-10-30 10:16:17 -04:00
Domenico Francesco Bruscino
32bf9680f2
[maven-release-plugin] prepare for next development iteration
2020-08-24 16:03:24 +02:00
Domenico Francesco Bruscino
a549fcedde
[maven-release-plugin] prepare release 2.15.0
2020-08-24 16:03:12 +02:00
Francesco Nigro
70068a0659
ARTEMIS-2844 Save additional copies and use pooled direct ByteBufs
2020-07-30 23:32:10 -04:00
Francesco Nigro
0db13ee8ab
ARTEMIS-2844 Use writeAndFlush with voidPromise to reduce GC pressure
2020-07-30 23:32:10 -04:00
Clebert Suconic
6690ba1d24
[maven-release-plugin] prepare for next development iteration
2020-07-09 12:49:08 -04:00
Clebert Suconic
a76f41a7ed
[maven-release-plugin] prepare release 2.14.0
2020-07-09 12:48:54 -04:00
Robbie Gemmell
d2c46762e8
ARTEMIS-2109: fix javadoc errors, remove doclint config for JDK8, remove superfluous plugin versions, update to 3.0.1 javadoc plugin
...
Using 3.0.1 like the current apache parent pom [not being used], and also as newer ones break build.
2020-06-11 18:50:01 +01:00
Emmanuel Hugonnet
efe0f468de
ARTEMIS-2109: Updating the build to be able to execute it on Java 11 and Java 8.
2020-06-11 18:50:01 +01:00
Clebert Suconic
faa83b2ba6
[maven-release-plugin] prepare for next development iteration
2020-05-16 18:38:47 -04:00
Clebert Suconic
5f49d89264
[maven-release-plugin] prepare release 2.13.0
2020-05-16 18:38:34 -04:00
Clebert Suconic
c99fcd501b
[maven-release-plugin] prepare for next development iteration
2020-05-15 16:42:54 -04:00
Clebert Suconic
47fafac760
[maven-release-plugin] prepare release 2.13.0
2020-05-15 16:42:41 -04:00
Andy Taylor
8a04ee07de
ARTEMIS-2648 - audit logging improvements
...
https://issues.apache.org/jira/browse/ARTEMIS-2648
2020-05-04 15:19:08 +01:00
Justin Bertram
6709883d0e
ARTEMIS-2738 implement per-acceptor security domains
2020-04-28 21:45:38 -04:00
Clebert Suconic
11a3e810bb
[maven-release-plugin] prepare for next development iteration
2020-04-21 17:06:21 -04:00
Clebert Suconic
30272e0c2f
[maven-release-plugin] prepare release 2.12.0
2020-04-21 17:06:08 -04:00
Clebert Suconic
d231e2ac63
[maven-release-plugin] prepare for next development iteration
2020-04-16 16:16:41 -04:00
Clebert Suconic
9636f4a3b0
[maven-release-plugin] prepare release 2.12.0
2020-04-16 16:16:28 -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
c36170477d
ARTEMIS-2686 Fix MQTT connect message rejection
...
Initialize the session state with a default value to fix a NPE, when an incoming
MQTT interceptor rejects a MqttConnectMessage.
2020-04-08 15:45:19 -04:00
Justin Bertram
b9fa8b96ec
NO-JIRA fix failing MQTT test
...
I've seen o.a.a.a.c.p.m.MQTTRetainMessageManagerTest fail a handful of
times recently in PR builds. This change fixes that failure.
2020-03-25 11:11:52 -05:00
Assen Sharlandjiev
2ce8f01911
ARTEMIS-2476: implemented MQTTRetainMessageManagerTest
2020-03-07 21:15:57 +00:00
Assen Sharlandjiev
e608c9af2c
fix for #ARTEMIS-2476
2020-03-07 21:15:57 +00:00
Clebert Suconic
ddd8ed4402
ARTEMIS-1975 Real Large Message support into AMQP
...
This is a Large commit where I am refactoring largeMessage Body out of CoreMessage
which is now reused with AMQP.
I had also to fix Reference Counting to fix how Large Messages are Acked
And I also had to make sure Large Messages are transversing correctly when in cluster.
2020-02-25 15:25:01 +01:00
Justin Bertram
a8cf6b04b4
ARTEMIS-2607 interceptor returns false but processing continues
2020-02-14 13:23:05 -05:00
Justin Bertram
97735ca72c
[maven-release-plugin] prepare for next development iteration
2020-01-10 09:00:58 -06:00
Justin Bertram
25a947f6cb
[maven-release-plugin] prepare release 2.11.0
2020-01-10 08:57:46 -06:00
Howard Gao
d02da18dab
ARTEMIS-2506 MQTT doesn't cleanup underlying connection for bad clients
...
When a bad MQTT clients drop its connection without proper closing
it the broker doesn't close the underlying physical connection.
2019-09-27 19:41:15 +08:00
Clebert Suconic
91f4d0a633
[maven-release-plugin] prepare for next development iteration
2019-09-23 11:19:54 -04:00
Clebert Suconic
86a975fdad
[maven-release-plugin] prepare release 2.10.1
2019-09-23 11:19:42 -04:00
Clebert Suconic
5016f69daa
[maven-release-plugin] prepare for next development iteration
2019-08-26 10:42:13 -04:00
Clebert Suconic
f092d5396a
[maven-release-plugin] prepare release 2.10.0
2019-08-26 10:42:01 -04:00
Clebert Suconic
61eb379741
ARTEMIS-2458 Fix AMQP Transaction Rollback Ordering by using a sorted add
2019-08-21 09:34:07 -04:00
Clebert Suconic
cd723aa528
ARTEMIS-2440 Connection.fail on sendBlock should be asynchronous
...
This is following up on ARTEMIS-2327.
2019-08-02 16:37:12 -04:00
Clebert Suconic
8a1f267bd5
Revert "ARTEMIS-2423 Improving Consumer/Queue Delivery lock"
...
This reverts commit 7507a9fd4b
.
2019-07-27 10:45:08 -04:00
Clebert Suconic
7507a9fd4b
ARTEMIS-2423 Improving Consumer/Queue Delivery lock
2019-07-26 15:05:51 -04:00
Andy
6a2e964f5b
ARTEMIS-2386 - use internal session for management queues for QOS2
...
https://issues.apache.org/jira/browse/ARTEMIS-2386
2019-06-18 08:21:39 +01:00
Justin Bertram
dbb2b54fa7
[maven-release-plugin] prepare for next development iteration
2019-05-29 22:02:00 -05:00
Justin Bertram
88c686cc99
[maven-release-plugin] prepare release 2.9.0
2019-05-29 21:59:18 -05:00
Clebert Suconic
2ae732cfc8
[maven-release-plugin] prepare for next development iteration
2019-05-16 09:58:27 -04:00
Clebert Suconic
481b9824a8
[maven-release-plugin] prepare release 2.8.1
2019-05-16 09:58:15 -04:00
Clebert Suconic
7f7194f779
ARTEMIS-2333 Making tests more reliable
2019-05-08 21:10:05 -04:00
Clebert Suconic
0e40984145
NO-JIRA speeding up a few tests
2019-05-06 20:22:47 -04:00
Clebert Suconic
56152a9e7c
[maven-release-plugin] prepare for next development iteration
2019-05-02 16:39:10 -04:00
Clebert Suconic
a8e7f9d07a
[maven-release-plugin] prepare release 2.8.0
2019-05-02 16:38:58 -04:00