emqx/changes/e5.6.1.en.md

3.6 KiB

e5.6.1

Bug Fixes

  • #12759 Do not save invalid uploaded backup files.

  • #12766 Rename message_queue_too_long error reason to mailbox_overflow

    mailbox_overflow is consistent with the corresponding config parameter: force_shutdown.max_mailbox_size.

  • #12773 Upgrade HTTP client libraries.

    The HTTP client library (gun-1.3) incorrectly appends a :portnumber suffix to the Host header for standard ports (http on port 80, https on port 443). This could cause compatibility issues with servers or gateways performing strict Host header checks (e.g., AWS Lambda, Alibaba Cloud HTTP gateways), leading to errors such as InvalidCustomDomain.NotFound or "The specified CustomDomain does not exist."

  • #12802 Improve cluster discovery behaviour when a node is manually removed from a cluster using 'emqx ctl cluster leave' command. Previously, if the configured cluster 'discovery_strategy' was not 'manual', the left node might re-discover and re-join the same cluster shortly after it left (unless it was stopped). After this change, 'cluster leave' command disables automatic cluster_discovery, so that the left node won't re-join the same cluster again. Cluster discovery can be re-enabled by running 'emqx ctl discovery enable` or by restarting the left node.

  • #12814 Handle several errors in /clients/{clientid}/mqueue_messages and /clients/{clientid}/inflight_messages APIs:

    • Internal timeout, which means that EMQX failed to get the list of Inflight/Mqueue messages within the default timeout of 5 s. This error may occur when the system is under a heavy load. The API will return 500 {"code":"INTERNAL_ERROR","message":"timeout"} response and log additional details.
    • Client shutdown. The error may occur if the client connection is shutdown during the API call. The API will return 404 {"code": "CLIENT_SHUTDOWN", "message": "Client connection has been shutdown"} response in this case.
  • #12824 Make sure stats 'subscribers.count' 'subscribers.max' countains shared-subscribers. It only contains non-shared subscribers previously.

  • #12826 Fixed an issue that prevented importing source data integrations and retained messages.

    Before the fix:

    • source data integrations are ignored from the backup file
    • importing the mnesia table for retained messages are not supported
  • #12843 Fixed cluster_rpc_commit transaction ID cleanup procedure after cluster leave on replicant nodes. Previously, the transaction id of the core node would be deleted prematurely, blocking configuration updates on the core node.

  • #12882 The RocketMQ action has been fixed so that the topic configiuration works correctly. If more than one action used a single connector before this fix, all actions messages got delivered to the topic that was used first.

  • #12885 Fixed an issue when users were not able to see the "Retained Messages" under the "Monitoring" menu in the admin dashboard.

"Retained messages" backend API uses qlc, and qlc uses file_sorter that puts temporary files in the working directory by default, which is not writable by emqx user since 58d0f04.

This patch fixes this by making /opt/emqx directory owned by emqx:emqx.