v5.7.2
版本发布时间: 2024-08-07 17:30:03
emqx/emqx最新发布版本:v5.8.2(2024-11-12 22:20:49)
Enhancements
-
#13317 Added a new per-authorization source metric type:
ignore
. This metric increments when an authorization source attempts to authorize a request but encounters scenarios where the authorizer is not applicable or encounters an error, resulting in an undecidable outcome. -
#13336 Added functionality to initialize authentication data in the built-in database of an empty EMQX node or cluster using a bootstrap file in CSV or JSON format. This feature introduces new configuration entries,
bootstrap_file
andbootstrap_type
. -
#13348 Added a new field
payload_encode
in the log configuration to determine the format of the payload in the log data. -
#13436 Added the option to add custom request headers to JWKS requests.
-
#13507 Introduced a new built-in function
getenv
in the rule engine and variform expression to facilitate access to environment variables. This function adheres to the following constraints:- Prefix
EMQXVAR_
is added before reading from OS environment variables. For example,getenv('FOO_BAR')
is to readEMQXVAR_FOO_BAR
. - These values are immutable once loaded from the OS environment.
- Prefix
-
#13521 Resolved an issue where LDAP query timeouts could cause the underlying connection to become unusable, potentially causing subsequent queries to return outdated results. The fix ensures the system reconnects automatically in case of a timeout.
-
#13528 Applied log throttling for the event of unrecoverable errors in data integrations.
-
#13548 EMQX now can optionally invoke the
on_config_changed/2
callback function when the plugin configuration is updated via the REST API. This callback function is assumed to be exported by the<PluginName>_app
module. For example, if the plugin name and version aremy_plugin-1.0.0
, then the callback function is assumed to bemy_plugin_app:on_config_changed/2
. -
#13386 Added support for initializing a list of banned clients on an empty EMQX node or cluster with a bootstrap file in CSV format. The corresponding config entry to specify the file path is
banned.bootstrap_file
. This file is a CSV file with,
as its delimiter. The first line of this file must be a header line. All valid headers are listed here:- as :: required
- who :: required
- by :: optional
- reason :: optional
- at :: optional
- until :: optional
See the Configuration Manual for details on each field.
Each row in the rest of this file must contain the same number of columns as the header line, and the column can be omitted then its value is
undefined
.
Bug Fixes
-
#13222 Resolved issues with flags checking and error handling associated with the Will message in the
CONNECT
packet. For detailed specifications, refer to:- MQTT-v3.1.1-[MQTT-3.1.2-13], MQTT-v5.0-[MQTT-3.1.2-11]
- MQTT-v3.1.1-[MQTT-3.1.2-14], MQTT-v5.0-[MQTT-3.1.2-12]
- MQTT-v3.1.1-[MQTT-3.1.2-15], MQTT-v5.0-[MQTT-3.1.2-13]
-
#13307 Updated
ekka
library to version 0.19.5. This version ofekka
utilizesmria
0.8.8, enhancing auto-heal functionality. Previously, the auto-heal worked only when all core nodes were reachable. This update allows to apply auto-heal once the majority of core nodes are alive. For details, refer to the Mria PR. -
#13334 Implemented strict mode checking for the
PasswordFlag
in the MQTT v3.1.1 CONNECT packet to align with protocol specifications.Note: To ensure bug-to-bug compatibility, this check is performed only in strict mode.
-
#13344 Resolved an issue where the
POST /clients/:clientid/subscribe/bulk
API would not function correctly if the node receiving the API request did not maintain the connection to the specifiedclientid
. -
#13358 Fixed an issue when the
reason
in theauthn_complete_event
event was incorrectly displayed. -
#13375 The value
infinity
has been added as default value to the listener configuration fieldsmax_conn_rate
,messages_rate
, andbytes_rate
. -
#13382 Updated the
emqtt
library to version 0.4.14, which resolves an issue preventingemqtt_pool
s from reusing pools that are in an inconsistent state. -
#13389 Fixed an issue where the
Derived Key Length
forpbkdf2
could be set to a negative integer. -
#13389 Fixed an issue where topics in the authorization rules might be parsed incorrectly.
-
#13393 Fixed an issue where plugin applications failed to restart after a node joined a cluster, resulting in hooks not being properly installed and causing inconsistent states.
-
#13398 Fixed an issue where ACL rules were incorrectly cleared when reloading the built-in database for authorization using the command line.
-
#13403 Addressed a security issue where environment variable configuration overrides were inadvertently logging passwords. This fix ensures that passwords present in environment variables are not logged.
-
#13408 Resolved a
function_clause
crash triggered by authentication attempts with invalid salt or password types. This fix enhances error handling to better manage authentication failures involving incorrect salt or password types. -
#13419 Resolved an issue where crash log messages from the
/configs
API were displaying garbled hints. This fix ensures that log messages related to API calls are clear and understandable. -
#13422 Fixed an issue where the option
force_shutdown.max_heap_size
could not be set to 0 to disable this tuning. -
#13442 Fixed an issue where the health check interval configuration for actions/sources was not being respected. Previously, EMQX ignored the specified health check interval for actions and used the connector's interval instead. The fix ensures that EMQX now correctly uses the health check interval configured for actions/sources, allowing for independent and accurate health monitoring frequencies.
-
#13503 Fixed an issue where connectors did not adhere to the configured health check interval upon initial startup, requiring an update or restart to apply the correct interval.
-
#13515 Fixed an issue where the same client could not subscribe to the same exclusive topic when the node was down for some reason.
-
#13527 Fixed an issue in the Rule Engine where executing a SQL test for the Message Publish event would consistently return no results when a
$bridges/...
source was included in theFROM
clause. -
#13541 Fixed an issue where disabling CRL checks for a listener required a listener restart to take effect.
-
#13552 Added a startup timeout limit for EMQX plugins with a default timeout of 10 seconds. Before this update, problematic plugins could cause runtime errors during startup, leading to potential issues where the main startup process might hang when EMQX is stopped and restarted.
Breaking Changes
-
#12947 For JWT authentication, a new boolean option
disconnect_after_expire
has been added with default value set totrue
. When enabled, the client will be disconnected after the JWT token expires.Previously, the clients with actual JWTs could connect to the broker and stay connected even after the JWT token expired. Now, the client will be disconnected after the JWT token expires. To preserve the previous behavior, set
disconnect_after_expire
tofalse
.
1、 emqx-5.7.2-amzn2-amd64.rpm 58.69MB
2、 emqx-5.7.2-amzn2-amd64.rpm.sha256 64B
3、 emqx-5.7.2-amzn2-amd64.tar.gz 86.94MB
4、 emqx-5.7.2-amzn2-amd64.tar.gz.sha256 64B
5、 emqx-5.7.2-amzn2-arm64.rpm 57.73MB
6、 emqx-5.7.2-amzn2-arm64.rpm.sha256 64B
7、 emqx-5.7.2-amzn2-arm64.tar.gz 84.54MB
8、 emqx-5.7.2-amzn2-arm64.tar.gz.sha256 64B
9、 emqx-5.7.2-amzn2023-amd64.rpm 44.35MB
10、 emqx-5.7.2-amzn2023-amd64.rpm.sha256 64B
11、 emqx-5.7.2-amzn2023-amd64.tar.gz 89.17MB
12、 emqx-5.7.2-amzn2023-amd64.tar.gz.sha256 64B
13、 emqx-5.7.2-amzn2023-arm64.rpm 44.25MB
14、 emqx-5.7.2-amzn2023-arm64.rpm.sha256 64B
15、 emqx-5.7.2-amzn2023-arm64.tar.gz 86.15MB
16、 emqx-5.7.2-amzn2023-arm64.tar.gz.sha256 64B
17、 emqx-5.7.2-debian10-amd64.deb 42.83MB
18、 emqx-5.7.2-debian10-amd64.deb.sha256 64B
19、 emqx-5.7.2-debian10-amd64.tar.gz 90.97MB
20、 emqx-5.7.2-debian10-amd64.tar.gz.sha256 64B
21、 emqx-5.7.2-debian10-arm64.deb 41.23MB
22、 emqx-5.7.2-debian10-arm64.deb.sha256 64B
23、 emqx-5.7.2-debian10-arm64.tar.gz 87.93MB
24、 emqx-5.7.2-debian10-arm64.tar.gz.sha256 64B
25、 emqx-5.7.2-debian11-amd64.deb 42.89MB
26、 emqx-5.7.2-debian11-amd64.deb.sha256 64B
27、 emqx-5.7.2-debian11-amd64.tar.gz 89.18MB
28、 emqx-5.7.2-debian11-amd64.tar.gz.sha256 64B
29、 emqx-5.7.2-debian11-arm64.deb 41.29MB
30、 emqx-5.7.2-debian11-arm64.deb.sha256 64B
31、 emqx-5.7.2-debian11-arm64.tar.gz 86.13MB
32、 emqx-5.7.2-debian11-arm64.tar.gz.sha256 64B
33、 emqx-5.7.2-debian12-amd64.deb 42.95MB
34、 emqx-5.7.2-debian12-amd64.deb.sha256 64B
35、 emqx-5.7.2-debian12-amd64.tar.gz 89.27MB
36、 emqx-5.7.2-debian12-amd64.tar.gz.sha256 64B
37、 emqx-5.7.2-debian12-arm64.deb 41.73MB
38、 emqx-5.7.2-debian12-arm64.deb.sha256 64B
39、 emqx-5.7.2-debian12-arm64.tar.gz 86.07MB
40、 emqx-5.7.2-debian12-arm64.tar.gz.sha256 64B
41、 emqx-5.7.2-el7-amd64.rpm 58.65MB
42、 emqx-5.7.2-el7-amd64.rpm.sha256 64B
43、 emqx-5.7.2-el7-amd64.tar.gz 79.15MB
44、 emqx-5.7.2-el7-amd64.tar.gz.sha256 64B
45、 emqx-5.7.2-el7-arm64.rpm 57.42MB
46、 emqx-5.7.2-el7-arm64.rpm.sha256 64B
47、 emqx-5.7.2-el7-arm64.tar.gz 77.62MB
48、 emqx-5.7.2-el7-arm64.tar.gz.sha256 64B
49、 emqx-5.7.2-el8-amd64.rpm 52.91MB
50、 emqx-5.7.2-el8-amd64.rpm.sha256 64B
51、 emqx-5.7.2-el8-amd64.tar.gz 91.05MB
52、 emqx-5.7.2-el8-amd64.tar.gz.sha256 64B
53、 emqx-5.7.2-el8-arm64.rpm 51.62MB
54、 emqx-5.7.2-el8-arm64.rpm.sha256 64B
55、 emqx-5.7.2-el8-arm64.tar.gz 87.99MB
56、 emqx-5.7.2-el8-arm64.tar.gz.sha256 64B
57、 emqx-5.7.2-el9-amd64.rpm 44.41MB
58、 emqx-5.7.2-el9-amd64.rpm.sha256 64B
59、 emqx-5.7.2-el9-amd64.tar.gz 89.14MB
60、 emqx-5.7.2-el9-amd64.tar.gz.sha256 64B
61、 emqx-5.7.2-el9-arm64.rpm 44.2MB
62、 emqx-5.7.2-el9-arm64.rpm.sha256 64B
63、 emqx-5.7.2-el9-arm64.tar.gz 86.14MB
64、 emqx-5.7.2-el9-arm64.tar.gz.sha256 64B
65、 emqx-5.7.2-elixir-ubuntu22.04-amd64.tar.gz 97.42MB
66、 emqx-5.7.2-elixir-ubuntu22.04-amd64.tar.gz.sha256 64B
67、 emqx-5.7.2-macos13-amd64.zip 54.87MB
68、 emqx-5.7.2-macos13-amd64.zip.sha256 65B
69、 emqx-5.7.2-macos14-arm64.zip 54.14MB
70、 emqx-5.7.2-macos14-arm64.zip.sha256 65B
71、 emqx-5.7.2-ubuntu18.04-amd64.deb 43.12MB
72、 emqx-5.7.2-ubuntu18.04-amd64.deb.sha256 64B
73、 emqx-5.7.2-ubuntu18.04-amd64.tar.gz 87.16MB
74、 emqx-5.7.2-ubuntu18.04-amd64.tar.gz.sha256 64B
75、 emqx-5.7.2-ubuntu18.04-arm64.deb 41.23MB
76、 emqx-5.7.2-ubuntu18.04-arm64.deb.sha256 64B
77、 emqx-5.7.2-ubuntu18.04-arm64.tar.gz 83.87MB
78、 emqx-5.7.2-ubuntu18.04-arm64.tar.gz.sha256 64B
79、 emqx-5.7.2-ubuntu20.04-amd64.deb 43.1MB
80、 emqx-5.7.2-ubuntu20.04-amd64.deb.sha256 64B
81、 emqx-5.7.2-ubuntu20.04-amd64.tar.gz 92.19MB
82、 emqx-5.7.2-ubuntu20.04-amd64.tar.gz.sha256 64B
83、 emqx-5.7.2-ubuntu20.04-arm64.deb 41.45MB
84、 emqx-5.7.2-ubuntu20.04-arm64.deb.sha256 64B
85、 emqx-5.7.2-ubuntu20.04-arm64.tar.gz 89.02MB
86、 emqx-5.7.2-ubuntu20.04-arm64.tar.gz.sha256 64B
87、 emqx-5.7.2-ubuntu22.04-amd64.deb 43.9MB
88、 emqx-5.7.2-ubuntu22.04-amd64.deb.sha256 64B
89、 emqx-5.7.2-ubuntu22.04-amd64.tar.gz 89.72MB
90、 emqx-5.7.2-ubuntu22.04-amd64.tar.gz.sha256 64B
91、 emqx-5.7.2-ubuntu22.04-arm64.deb 43.79MB
92、 emqx-5.7.2-ubuntu22.04-arm64.deb.sha256 64B
93、 emqx-5.7.2-ubuntu22.04-arm64.tar.gz 86.64MB
94、 emqx-5.7.2-ubuntu22.04-arm64.tar.gz.sha256 64B
95、 emqx-5.7.2-ubuntu24.04-amd64.deb 43.86MB
96、 emqx-5.7.2-ubuntu24.04-amd64.deb.sha256 64B
97、 emqx-5.7.2-ubuntu24.04-amd64.tar.gz 89.71MB
98、 emqx-5.7.2-ubuntu24.04-amd64.tar.gz.sha256 64B
99、 emqx-5.7.2-ubuntu24.04-arm64.deb 43.52MB
100、 emqx-5.7.2-ubuntu24.04-arm64.deb.sha256 64B
101、 emqx-5.7.2-ubuntu24.04-arm64.tar.gz 86.71MB