v5.3.0
Enhancements
- #11597 Upgraded ekka to 0.15.13, which incorporates the following changes:
- Upgraded Mria to 0.6.2.
- Introduced the ability to configure the bootstrap data sync batch size, as detailed in Mria PR.
- Enhanced the reliability of mria_membership processes, as described in Mria PR.
- Fix log message formatting error.
- Added
node.default_bootstrap_batch_size
option to EMQX configuration. Increasing the value of this option can greatly reduce a replicant node startup time, especially when the EMQX cluster interconnect network latency is high and the EMQX built-in database holds a large amount of data, e.g. when the number of subscriptions is high. - #11620 Added a new rule-engine SQL function
bytesize
to get the size of a byte-string. e.g.SELECT * FROM "t/#" WHERE bytesize(payload) > 10
. - #11642 Updated to quicer version 0.0.200 in preparation for enabling openssl3 support for QUIC transport.
Bug Fixes
- #11682 Fixed an issue where logging would stop if "Rotation Size" would be set to
infinity
on file log handlers. - #11567 Improve EMQX graceful shutdown (
emqx stop
command): - Increase timeout from 1 to 2 minutes.
- Printed an error message if EMQX can't stop gracefully within the configured timeout.
- Print periodic status messages while EMQX is shutting down.
- #11584 Fixed telemetry reporting error on Windows when os_mon module is unavailable.
- #11605 Lowered CMD_overridden log severity from warning to info.
- #11622 Upgraded rpc library gen_rpc from 2.8.1 to 3.1.0.
- #11623 Upgraded library
esockd
from 5.9.6 to 5.9.7. This upgrade included: - Enhancements regarding proxy protocol error and timeout. esockd pr#178
- Lowered
ssl_error
exceptions to info-level logging. esockd pr#180 - Malformed MQTT packet parsing exception log level is lowered from
error
toinfo
. - In command
emqx ctl listeners
output, theshutdown_count
counter is incremented when TLS handshake failure (ssl_error
) or Malformed packet (frame_error
) happens. - #11661 Fixed log formatter when log.HANDLER.formatter is set to 'json'. The bug was introduced in v5.0.4 where the log line was no longer a valid JSON, but prefixed with timestamp string and level name.
- #11667 Disable access to the
logout
endpoint by the API key, this endpoint is for the Dashboard only.