[
https://issues.apache.org/jira/browse/ARTEMIS-4365?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Justin Bertram updated ARTEMIS-4365:
------------------------------------
Description:
The {{retain}} flag set on MQTT messages dispatched to clients is incorrect in
certain circumstances. This is demonstrated by using the {{test}} command from
the [MQTT CLI tool|https://hivemq.github.io/mqtt-cli/docs/test/], e.g.:
{noformat}
$ mqtt test --all
MQTT 3: OK
- Maximum topic length: 65535 bytes
- QoS 0: Received 100000/100000 publishes in 4847.01ms
- QoS 1: Received 100000/100000 publishes in 27413.45ms
- QoS 2: Received 100000/100000 publishes in 49551.40ms
- Retain: OK
- Wildcard subscriptions: OK
- Shared subscriptions: OK
- Payload size: >= 100000 bytes
- Maximum client id length: 65535 bytes
- Unsupported Ascii Chars: ALL SUPPORTED
MQTT 5: OK
- Connect restrictions:
> Retain: OK
> Wildcard subscriptions: OK
> Shared subscriptions: OK
> Subscription identifiers: OK
> Maximum QoS: 2
> Receive maximum: 65535
> Maximum packet size: 268435455 bytes
> Topic alias maximum: 65535
> Session expiry interval: Client-based
> Server keep alive: Client-based
- Maximum topic length: 65535 bytes
- QoS 0: Received 100000/100000 publishes in 706.21ms
- QoS 1: Received 100000/100000 publishes in 805.38ms
- QoS 2: Received 100000/100000 publishes in 972.98ms
- Retain: TIME_OUT
- Wildcard subscriptions: OK
- Shared subscriptions: OK
- Payload size: >= 100000 bytes
- Maximum client id length: 65535 bytes
- Unsupported Ascii Chars: ALL SUPPORTED{noformat}
Notice the result of {{TIME_OUT}} when testing retain functionality for MQTT 5.
was:
The {{retain}} flag set on MQTT messages dispatched to clients is incorrect in
certain circumstances. This is demonstrated by using the {{test}} command from
the [MQTT CLI tool|https://hivemq.github.io/mqtt-cli/docs/test/], e.g.:
{noformat}
$ java -jar /opt/cli-java/cli-hivemq-mqtt.jar test -h 10.128.2.227 -p 1883
--all --qosTries 100000
MQTT 3: OK
- Maximum topic length: 65535 bytes
- QoS 0: Received 100000/100000 publishes in 4847.01ms
- QoS 1: Received 100000/100000 publishes in 27413.45ms
- QoS 2: Received 100000/100000 publishes in 49551.40ms
- Retain: OK
- Wildcard subscriptions: OK
- Shared subscriptions: OK
- Payload size: >= 100000 bytes
- Maximum client id length: 65535 bytes
- Unsupported Ascii Chars: ALL SUPPORTED
MQTT 5: OK
- Connect restrictions:
> Retain: OK
> Wildcard subscriptions: OK
> Shared subscriptions: OK
> Subscription identifiers: OK
> Maximum QoS: 2
> Receive maximum: 65535
> Maximum packet size: 268435455 bytes
> Topic alias maximum: 65535
> Session expiry interval: Client-based
> Server keep alive: Client-based
- Maximum topic length: 65535 bytes
- QoS 0: Received 100000/100000 publishes in 706.21ms
- QoS 1: Received 100000/100000 publishes in 805.38ms
- QoS 2: Received 100000/100000 publishes in 972.98ms
- Retain: TIME_OUT
- Wildcard subscriptions: OK
- Shared subscriptions: OK
- Payload size: >= 100000 bytes
- Maximum client id length: 65535 bytes
- Unsupported Ascii Chars: ALL SUPPORTED{noformat}
Notice the result of {{TIME_OUT}} when testing retain functionality for MQTT 5.
> MQTT retain flag not set correctly
> ----------------------------------
>
> Key: ARTEMIS-4365
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4365
> Project: ActiveMQ Artemis
> Issue Type: Bug
> Reporter: Justin Bertram
> Assignee: Justin Bertram
> Priority: Major
>
> The {{retain}} flag set on MQTT messages dispatched to clients is incorrect
> in certain circumstances. This is demonstrated by using the {{test}} command
> from the [MQTT CLI tool|https://hivemq.github.io/mqtt-cli/docs/test/], e.g.:
> {noformat}
> $ mqtt test --all
> MQTT 3: OK
> - Maximum topic length: 65535 bytes
> - QoS 0: Received 100000/100000 publishes in 4847.01ms
> - QoS 1: Received 100000/100000 publishes in 27413.45ms
> - QoS 2: Received 100000/100000 publishes in 49551.40ms
> - Retain: OK
> - Wildcard subscriptions: OK
> - Shared subscriptions: OK
> - Payload size: >= 100000 bytes
> - Maximum client id length: 65535 bytes
> - Unsupported Ascii Chars: ALL SUPPORTED
> MQTT 5: OK
> - Connect restrictions:
> > Retain: OK
> > Wildcard subscriptions: OK
> > Shared subscriptions: OK
> > Subscription identifiers: OK
> > Maximum QoS: 2
> > Receive maximum: 65535
> > Maximum packet size: 268435455 bytes
> > Topic alias maximum: 65535
> > Session expiry interval: Client-based
> > Server keep alive: Client-based
> - Maximum topic length: 65535 bytes
> - QoS 0: Received 100000/100000 publishes in 706.21ms
> - QoS 1: Received 100000/100000 publishes in 805.38ms
> - QoS 2: Received 100000/100000 publishes in 972.98ms
> - Retain: TIME_OUT
> - Wildcard subscriptions: OK
> - Shared subscriptions: OK
> - Payload size: >= 100000 bytes
> - Maximum client id length: 65535 bytes
> - Unsupported Ascii Chars: ALL SUPPORTED{noformat}
> Notice the result of {{TIME_OUT}} when testing retain functionality for MQTT
> 5.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)