v4.4.12
Enhancements
Added Amazon Linux 2 (amzn2) package release #9498.
Upgrade http client library
ehttpc
from0.2.1
to0.4.2
#9456.Add more PSK ciphers support #9493.
Users can define the
externalTrafficPolicy
of service in EMQX Helm Chart #9527.Start building MacOS packages for Apple Silicon M1/M2 #9558.
Bug Fixes
Fixed load bootstrap file when no bootstrap user in
mqtt_app
#9474.Trigger
message.dropped
hook when QoS2 message is resend by client with a same packet id, or 'awaiting_rel' queue is full #9486.When dashboard creates a new user, the password length must match 3-32 and the format is
^[A-Za-z0-9]+[A-Za-z0-9-_]*$
#9475.Fixed EMQX Helm Chart using incorrect secret values when custom credentials are provided #9508.
Fixed EMQX Helm Chart can not set JSON type value for EMQX Broker configuration items #9504.
When resource creation is too slow, there may be some temporary probing connections left #9539.
After a reconnect, the unacknowledged QoS1/QoS2 messages in non-clean session were not retransmitted periodically as before the reconnect #9627. The configuration
zone.<zone-name>.retry_interval
specifies the retransmission interval of unacknowledged QoS1/QoS2 messages (defaults to 30s). Prior to this fix, unacknowledged messages buffered in the session are re-sent only once after session take-over, but not retried at configured interval.The expired 'awaiting_rel' queue is not cleared after persistent session MQTT client disconnected #9627. Before this change, if the 'awaiting_rel' queue is full when the MQTT client reconnect to the broker and publish a QoS2 message, the client will get disconnected by the broker with reason code RC_RECEIVE_MAXIMUM_EXCEEDED(0x93), even if the packet IDs in the 'awaiting_rel' queue have already expired.