You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@artemis.apache.org by "ASF subversion and git services (Jira)" <ji...@apache.org> on 2026/09/02 19:24:00 UTC
[jira] [Commented] (ARTEMIS-6212) Support sending PUBREC(0x91) for duplicate PUBLISH with DUP=0
[ https://issues.apache.org/jira/browse/ARTEMIS-6212?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18110835#comment-18110835 ]
ASF subversion and git services commented on ARTEMIS-6212:
----------------------------------------------------------
Commit 3385d72661cb7cf13d9ea1e032a746d0f97e9f46 in artemis's branch refs/heads/main from Justin Bertram
[ https://gitbox.apache.org/repos/asf?p=artemis.git;h=3385d72661 ]
ARTEMIS-6212 support PUBREC(0x91) for dupe PUBLISH
When the broker receives a QoS 2 PUBLISH reusing a packet identifier
that is still in use, it currently acknowledges with PUBREC reason
code 0x00 (Success) and drops the reused-ID message as a duplicate even
when the DUP flag indicates an unexpected reuse rather than a
legitimate retransmission (typically a non-compliant client).
This commit adds a setting, rejectUnexpectedDuplicatePacketId,
configurable on the MQTT acceptor. When enabled, the broker responds to
this case for MQTT 5 clients with PUBREC reason code 0x91 (Packet
Identifier in use) instead of 0x80.
This is an opt-in diagnostic aid and is not required by the MQTT
specification.
Co-Authored-By: Claude <no...@anthropic.com>
> Support sending PUBREC(0x91) for duplicate PUBLISH with DUP=0
> -------------------------------------------------------------
>
> Key: ARTEMIS-6212
> URL: https://issues.apache.org/jira/browse/ARTEMIS-6212
> Project: Artemis
> Issue Type: Improvement
> Components: MQTT
> Reporter: Justin Bertram
> Assignee: Justin Bertram
> Priority: Major
>
> When the broker receives a QoS 2 {{PUBLISH}} reusing a packet identifier that is still in use, it currently acknowledges with {{PUBREC}} reason code {{0x00}} (Success) and drops the reused-ID message as a duplicate even when the {{DUP}} flag indicates an unexpected reuse rather than a legitimate retransmission (typically a non-compliant client).
> Add a setting, {{rejectQoS2PublishWithReusedPacketId}} (default {{false}}), configurable on the MQTT acceptor. When enabled, the broker responds to this case for MQTT 5 clients with {{PUBREC}} reason code {{0x91}} (Packet Identifier in use) instead of {{0x80}}.
> This is an opt-in diagnostic aid and is not required by the MQTT specification. See the updated MQTT documentation in the PR for more details.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@artemis.apache.org
For additional commands, e-mail: issues-help@artemis.apache.org