e5.0.3
版本发布时间: 2023-05-08 23:31:19
emqx/emqx最新发布版本:v5.8.2(2024-11-12 22:20:49)
e5.0.3
Enhancements
-
#10128 Add support for OCSP stapling for SSL MQTT listeners.
-
#10156 Change the configuration overlay order:
If it is a new installation of EMQX,
emqx.conf
+ Environment variables overlays on top of API Updated Configs (cluster.hocon
)If EMQX is upgraded from an older version (i.e., the
cluster-override.conf
file still exists in EMQX'sdata
directory), then it’s the same as before, that iscluster-override.conf
overlays on top ofemqx.conf
+ Environment variables.Please note that
data/configs/cluster-override.conf
is considered deprecated. After upgrade, you are encouraged to updateemqx.conf
to delete configs which are overridden bycluster-override.conf
and move the configs incluster-override.conf
tocluster.hocon
. After upgrade, EMQX will continue to readlocal-override.conf
(if it exists) as before, but you are encouraged to merge the configs toemqx.conf
. -
#10164 Add CRL check support for TLS MQTT listeners.
-
#10207 Improve OpenAPI (swagger) document readability. Prior to this change, there were a few
summary
docs which are lengthy and lack of translation, now it makes use of the more conciselabel
field from schema i18n database instead. -
#10210 Eliminated a few harmless error level logs. Prior to this change, there might be some Mnesia callback (hook) failures occasionally occurring when stopping/restarting Mria. Now the callbacks (hooks) are unregistered prior to stop. See also Mria PR.
-
#10224 Add the option to customize
clusterIP
in Helm chart, so that a user may set it to a fixed IP. -
#10263 Add command
eval-ex
for Elixir expression evaluation. -
#10278 Refactor the directory structure of all gateways.
-
#10206 Support async query mode for all data bridges.
Prior to this change, setting the query mode of a resource such as a bridge to sync would force the buffer to call the underlying connector in a synchronous way, even if it supports async calls.
-
#10306 Add support for async query mode for most bridges.
This is a follow-up change after #10206. Before this change, some bridges (Cassandra, MongoDB, MySQL, Postgres, Redis, RocketMQ, TDengine) were only allowed to be created with a sync query mode. Now async mode is also supported.
-
#10318 Prior to this enhancement, only double quotes (") were allowed in rule engine SQL language's FROM clause. Now it also supports single quotes (').
-
#10336 Add
/rule_engine
API endpoint to manage configuration of rule engine. -
#10354 More specific error messages when configure with
bad max_heap_size
value. Log current value and the max value when themessage_queue_too_long
error is thrown. -
#10358 Hide
flapping_detect/conn_congestion/stats
configuration. Deprecateflapping_detect.enable
. -
#10359 Metrics now are not implicitly collected in places where API handlers don't make any use of them. Instead, a separate backplane RPC gathers cluster-wide metrics.
-
#10373 Deprecate the
trace.payload_encode
configuration. Addpayload_encode=[text,hidden,hex]
option when creating a trace via HTTP API. -
#10381 Hide the
auto_subscribe
configuration items so that they can be modified later only through the HTTP API. -
#10391 Hide a large number of advanced options to simplify the configuration file.
That includes
rewrite
,topic_metric
,persistent_session_store
,overload_protection
,flapping_detect
,conn_congestion
,stats,auto_subscribe
,broker_perf
,shared_subscription_group
,slow_subs
,ssl_options.user_lookup_fun
and some advance items innode
anddashboard
section, #10358, #10381, #10385. -
#10404 Change the default queue mode for buffer workers to
memory_only
. Before this change, the default queue mode wasvolatile_offload
. When under high message rate pressure and when the resource is not keeping up with such rate, the buffer performance degraded a lot due to the constant disk operations. -
#10140 Integrate Cassandra into bridges as a new backend. At the current stage only support Cassandra version 3.x, not yet 4.x.
-
#10143 Add RocketMQ data integration bridge.
-
#10165 Support escaped special characters in InfluxDB data bridge
write_syntax
. This update allows to use escaped special characters in string elements in accordance with InfluxDB line protocol. -
#10211 Hide
broker.broker_perf
config and API documents. The two configsroute_lock_type
andtrie_compaction
are rarely used and requires a full cluster restart to take effect. They are not suitable for being exposed to users. Detailed changes can be found here: https://gist.github.com/zmstone/01ad5754b9beaeaf3f5b86d14d49a0b7/revisions. -
#10294 When configuring a MongoDB bridge, you can now use the
${field}
syntax to reference fields in the message. This enables you to select the collection to insert data into dynamically. -
#10363 Implement Microsoft SQL Server bridge.
-
#10573 Improved performance of Webhook bridge when using synchronous query mode. This also should improve the performance of other bridges when they are configured with no batching.
Bug Fixes
-
#10145 Add field
status_reason
toGET /bridges/:id
response in case this bridge is in statusdisconnected
if internal health-check reports an error condition. Include this same error condition in message when creating an alarm for a failing bridge. -
#10172 Fix the incorrect regular expression in default ACL rule to allow specify username(dashboard) to subscribe
$SYS/#
. -
#10174 Upgrade library
esockd
from 5.9.4 to 5.9.6. Fix an unnecessary error level logging when a connection is closed before proxy protocol header is sent by the proxy. -
#10195 Add labels to API schemas where description contains raw HTML, which would break formatting of generated documentation otherwise.
-
#10196 Use lower-case for schema summaries and descriptions to be used in menu of generated online documentation.
-
#10209 Fix bug where a last will testament (LWT) message could be published when kicking out a banned client.
-
#10225 Allow installing a plugin if its name matches the beginning of another (already installed) plugin name. For example: if plugin
emqx_plugin_template_a
is installed, it must not block installing pluginemqx_plugin_template
. -
#10226 Handle validation error in
/bridges
API and return400
instead of500
. -
#10242 Fixed a log data field name clash. Prior to this fix, some debug logs may report a wrong Erlang PID which may affect troubleshooting session takeover issues.
-
#10257 Fixed the issue where
auto_observe
was not working in LwM2M Gateway.Before the fix,
OBSERVE
requests were sent without a token, causing failures that LwM2M clients could not handle.After the fix, LwM2M Gateway can correctly observe the resource list carried by client, furthermore, unknown resources will be ignored and printing the following warning log:
2023-03-28T18:50:27.771123+08:00 [warning] msg: ignore_observer_resource, mfa: emqx_lwm2m_session:observe_object_list/3, line: 522, peername: 127.0.0.1:56830, clientid: testlwm2mclient, object_id: 31024, reason: no_xml_definition
-
#10286 Enhance logging behaviour during boot failure. When EMQX fails to start due to corrupted configuration files, excessive logging is eliminated and no crash dump file is generated.
-
#10297 Keeps
eval
command backward compatible with v4 by evaluating only Erlang expressions, even on Elixir node. For Elixir expressions, useeval-ex
command. -
#10300 Fixed issue with Elixir builds that prevented plugins from being configured via environment variables.
-
#10315 Fix crash checking
limit
andpage
parameters in/mqtt/delayed/messages
API call. -
#10317 Do not expose listener level authentications before extensive verification.
-
#10323 For security reasons, the value of the password field in the API examples is replaced with
******
. -
#10410 Fix config check failed when gateways are configured in emqx.conf. This issue was first introduced in v5.0.22 via #10278, the boot-time config check was missing.
-
#10533 Fixed an issue that could cause (otherwise harmless) noise in the logs.
During some particularly slow synchronous calls to bridges, some late replies could be sent to connections processes that were no longer expecting a reply, and then emit an error log like:
2023-04-19T18:24:35.350233+00:00 [error] msg: unexpected_info, mfa: emqx_channel:handle_info/2, line: 1278, peername: 172.22.0.1:36384, clientid: caribdis_bench_sub_1137967633_4788, info: {#Ref<0.408802983.1941504010.189402>,{ok,200,[{<<"cache-control">>,<<"max-age=0, ...">>}}
Those logs are harmless, but they could flood and worry the users without need.
-
#10449 Validate the
ssl_options
andheader
configurations when creating authentication http (authn_http
). Prior to this, incorrectssl
configuration could result in successful creation but the entire authn being unusable. -
#10548 Fixed a race condition in the HTTP driver that would result in an error rather than a retry of the request. Related fix in the driver: https://github.com/emqx/ehttpc/pull/45
-
#10201 In TDengine data bridge, removed the redundant database name from the SQL template.
-
#10270 ClickHouse data bridge has got a fix that makes the error message better when users click the test button in the settings dialog.
-
#10324 Previously, when attempting to reconnect to a misconfigured ClickHouse bridge through the dashboard, users would not receive an error message. This issue is now resolved, and error messages will now be displayed.
-
#10438 Fix some configuration item terminology errors in the DynamoDB data bridge:
- Changed
database
totable
- Changed
username
toaws_access_key_id
- Changed
password
toaws_secret_access_key
- Changed
1、 emqx-enterprise-5.0.3-amzn2-amd64.rpm 47.11MB
2、 emqx-enterprise-5.0.3-amzn2-amd64.rpm.sha256 64B
3、 emqx-enterprise-5.0.3-amzn2-amd64.tar.gz 67.51MB
4、 emqx-enterprise-5.0.3-amzn2-amd64.tar.gz.sha256 64B
5、 emqx-enterprise-5.0.3-amzn2-arm64.rpm 46.63MB
6、 emqx-enterprise-5.0.3-amzn2-arm64.rpm.sha256 64B
7、 emqx-enterprise-5.0.3-amzn2-arm64.tar.gz 60.99MB
8、 emqx-enterprise-5.0.3-amzn2-arm64.tar.gz.sha256 64B
9、 emqx-enterprise-5.0.3-debian10-amd64.deb 41.23MB
10、 emqx-enterprise-5.0.3-debian10-amd64.deb.sha256 64B
11、 emqx-enterprise-5.0.3-debian10-amd64.tar.gz 71.02MB
12、 emqx-enterprise-5.0.3-debian10-amd64.tar.gz.sha256 64B
13、 emqx-enterprise-5.0.3-debian10-arm64.deb 40.46MB
14、 emqx-enterprise-5.0.3-debian10-arm64.deb.sha256 64B
15、 emqx-enterprise-5.0.3-debian10-arm64.tar.gz 62.71MB
16、 emqx-enterprise-5.0.3-debian10-arm64.tar.gz.sha256 64B
17、 emqx-enterprise-5.0.3-debian11-amd64.deb 41.29MB
18、 emqx-enterprise-5.0.3-debian11-amd64.deb.sha256 64B
19、 emqx-enterprise-5.0.3-debian11-amd64.tar.gz 69.46MB
20、 emqx-enterprise-5.0.3-debian11-amd64.tar.gz.sha256 64B
21、 emqx-enterprise-5.0.3-debian11-arm64.deb 40.5MB
22、 emqx-enterprise-5.0.3-debian11-arm64.deb.sha256 64B
23、 emqx-enterprise-5.0.3-debian11-arm64.tar.gz 62.37MB
24、 emqx-enterprise-5.0.3-debian11-arm64.tar.gz.sha256 64B
25、 emqx-enterprise-5.0.3-el7-amd64.rpm 47.14MB
26、 emqx-enterprise-5.0.3-el7-amd64.rpm.sha256 64B
27、 emqx-enterprise-5.0.3-el7-amd64.tar.gz 61.42MB
28、 emqx-enterprise-5.0.3-el7-amd64.tar.gz.sha256 64B
29、 emqx-enterprise-5.0.3-el7-arm64.rpm 46.59MB
30、 emqx-enterprise-5.0.3-el7-arm64.rpm.sha256 64B
31、 emqx-enterprise-5.0.3-el7-arm64.tar.gz 60.39MB
32、 emqx-enterprise-5.0.3-el7-arm64.tar.gz.sha256 64B
33、 emqx-enterprise-5.0.3-el8-amd64.rpm 45.76MB
34、 emqx-enterprise-5.0.3-el8-amd64.rpm.sha256 64B
35、 emqx-enterprise-5.0.3-el8-amd64.tar.gz 71.07MB
36、 emqx-enterprise-5.0.3-el8-amd64.tar.gz.sha256 64B
37、 emqx-enterprise-5.0.3-el8-arm64.rpm 45.01MB
38、 emqx-enterprise-5.0.3-el8-arm64.rpm.sha256 64B
39、 emqx-enterprise-5.0.3-el8-arm64.tar.gz 62.84MB
40、 emqx-enterprise-5.0.3-el8-arm64.tar.gz.sha256 64B
41、 emqx-enterprise-5.0.3-el9-amd64.rpm 43.29MB
42、 emqx-enterprise-5.0.3-el9-amd64.rpm.sha256 64B
43、 emqx-enterprise-5.0.3-el9-amd64.tar.gz 69.63MB
44、 emqx-enterprise-5.0.3-el9-amd64.tar.gz.sha256 64B
45、 emqx-enterprise-5.0.3-el9-arm64.rpm 42.78MB
46、 emqx-enterprise-5.0.3-el9-arm64.rpm.sha256 64B
47、 emqx-enterprise-5.0.3-el9-arm64.tar.gz 62.61MB
48、 emqx-enterprise-5.0.3-el9-arm64.tar.gz.sha256 64B
49、 emqx-enterprise-5.0.3-macos11-amd64.zip 52.11MB
50、 emqx-enterprise-5.0.3-macos11-amd64.zip.sha256 65B
51、 emqx-enterprise-5.0.3-macos12-amd64.zip 52.11MB
52、 emqx-enterprise-5.0.3-macos12-amd64.zip.sha256 65B
53、 emqx-enterprise-5.0.3-macos12-arm64.zip 51.41MB
54、 emqx-enterprise-5.0.3-macos12-arm64.zip.sha256 65B
55、 emqx-enterprise-5.0.3-ubuntu18.04-amd64.deb 41.34MB
56、 emqx-enterprise-5.0.3-ubuntu18.04-amd64.deb.sha256 64B
57、 emqx-enterprise-5.0.3-ubuntu18.04-amd64.tar.gz 68.06MB
58、 emqx-enterprise-5.0.3-ubuntu18.04-amd64.tar.gz.sha256 64B
59、 emqx-enterprise-5.0.3-ubuntu18.04-arm64.deb 40.47MB
60、 emqx-enterprise-5.0.3-ubuntu18.04-arm64.deb.sha256 64B
61、 emqx-enterprise-5.0.3-ubuntu18.04-arm64.tar.gz 61.23MB
62、 emqx-enterprise-5.0.3-ubuntu18.04-arm64.tar.gz.sha256 64B
63、 emqx-enterprise-5.0.3-ubuntu20.04-amd64.deb 41.37MB
64、 emqx-enterprise-5.0.3-ubuntu20.04-amd64.deb.sha256 64B
65、 emqx-enterprise-5.0.3-ubuntu20.04-amd64.tar.gz 71.92MB
66、 emqx-enterprise-5.0.3-ubuntu20.04-amd64.tar.gz.sha256 64B
67、 emqx-enterprise-5.0.3-ubuntu20.04-arm64.deb 40.58MB
68、 emqx-enterprise-5.0.3-ubuntu20.04-arm64.deb.sha256 64B
69、 emqx-enterprise-5.0.3-ubuntu20.04-arm64.tar.gz 63.38MB
70、 emqx-enterprise-5.0.3-ubuntu20.04-arm64.tar.gz.sha256 64B
71、 emqx-enterprise-5.0.3-ubuntu22.04-amd64.deb 42.95MB
72、 emqx-enterprise-5.0.3-ubuntu22.04-amd64.deb.sha256 64B
73、 emqx-enterprise-5.0.3-ubuntu22.04-amd64.tar.gz 69.93MB
74、 emqx-enterprise-5.0.3-ubuntu22.04-amd64.tar.gz.sha256 64B
75、 emqx-enterprise-5.0.3-ubuntu22.04-arm64.deb 42.42MB
76、 emqx-enterprise-5.0.3-ubuntu22.04-arm64.deb.sha256 64B
77、 emqx-enterprise-5.0.3-ubuntu22.04-arm64.tar.gz 62.85MB
78、 emqx-enterprise-5.0.3-ubuntu22.04-arm64.tar.gz.sha256 64B