103 lines
6.8 KiB
Markdown
103 lines
6.8 KiB
Markdown
# e5.0.1
|
|
|
|
## Enhancements
|
|
|
|
- [#10019](https://github.com/emqx/emqx/pull/10019) Add low level tuning settings for QUIC listeners.
|
|
|
|
- [#10059](https://github.com/emqx/emqx/pull/10059) Errors returned by rule engine API are formatted in a more human readable way rather than dumping the raw error including the stacktrace.
|
|
|
|
- [#9213](https://github.com/emqx/emqx/pull/9213) Add pod disruption budget to helm chart
|
|
|
|
- [#9949](https://github.com/emqx/emqx/pull/9949) QUIC transport Multistreams support and QUIC TLS cacert support.
|
|
|
|
|
|
- [#9932](https://github.com/emqx/emqx/pull/9932) Integrate `TDengine` into `bridges` as a new backend.
|
|
|
|
- [#9967](https://github.com/emqx/emqx/pull/9967) New common TLS option 'hibernate_after' to reduce memory footprint per idle connecion, default: 5s.
|
|
|
|
## Bug Fixes
|
|
|
|
- [#10009](https://github.com/emqx/emqx/pull/10009) Validate `bytes` param to `GET /trace/:name/log` to not exceed signed 32bit integer.
|
|
|
|
- [#10015](https://github.com/emqx/emqx/pull/10015) To prevent errors caused by an incorrect EMQX node cookie provided from an environment variable,
|
|
we have implemented a fail-fast mechanism.
|
|
Previously, when an incorrect cookie was provided, the command would still attempt to ping the node,
|
|
leading to the error message 'Node xxx not responding to pings'.
|
|
With the new implementation, if a mismatched cookie is detected,
|
|
a message will be logged to indicate that the cookie is incorrect,
|
|
and the command will terminate with an error code of 1 without trying to ping the node.
|
|
|
|
- [#10020](https://github.com/emqx/emqx/pull/10020) Fix bridge metrics when running in async mode with batching enabled (`batch_size` > 1).
|
|
|
|
- [#10021](https://github.com/emqx/emqx/pull/10021) Fix error message when the target node of `emqx_ctl cluster join` command is not running.
|
|
|
|
- [#10032](https://github.com/emqx/emqx/pull/10032) When resources on some nodes in the cluster are still in the 'initializing/connecting' state, the `bridges/` API will crash due to missing Metrics information for those resources. This fix will ignore resources that do not have Metrics information.
|
|
|
|
- [#10037](https://github.com/emqx/emqx/pull/10037) Fix Swagger API doc rendering crash.
|
|
In version 5.0.18, a bug was introduced that resulted in duplicated field names in the configuration schema. This, in turn, caused the Swagger schema generated to become invalid.
|
|
|
|
- [#10041](https://github.com/emqx/emqx/pull/10041) For influxdb bridge, added integer value placeholder annotation hint to `write_syntax` documentation.
|
|
Also supported setting a constant value for the `timestamp` field.
|
|
|
|
- [#10042](https://github.com/emqx/emqx/pull/10042) Improve behavior of the `replicant` nodes when the `core` cluster becomes partitioned (for example when a core node leaves the cluster).
|
|
Previously, the replicant nodes were unable to rebalance connections to the core nodes, until the core cluster became whole again.
|
|
This was indicated by the error messages: `[error] line: 182, mfa: mria_lb:list_core_nodes/1, msg: mria_lb_core_discovery divergent cluster`.
|
|
|
|
[Mria PR](https://github.com/emqx/mria/pull/123/files)
|
|
|
|
- [#10043](https://github.com/emqx/emqx/pull/10043) Fixed two bugs introduced in v5.0.18.
|
|
* The environment varialbe `SSL_DIST_OPTFILE` was not set correctly for non-boot commands.
|
|
* When cookie is overridden from environment variable, EMQX node is unable to start.
|
|
|
|
- [#10044](https://github.com/emqx/emqx/pull/10044) Fix node information formatter for stopped nodes in the cluster. The bug was introduced by v5.0.18.
|
|
|
|
- [#10054](https://github.com/emqx/emqx/pull/10054) Fix the problem that the obfuscated password is used when using the `/bridges_probe` API to test the connection in Data-Bridge.
|
|
|
|
- [#10058](https://github.com/emqx/emqx/pull/10058) Deprecate unused QUIC TLS options.
|
|
Only following TLS options are kept for the QUIC listeners:
|
|
|
|
- cacertfile
|
|
- certfile
|
|
- keyfile
|
|
- verify
|
|
|
|
- [#10076](https://github.com/emqx/emqx/pull/10076) Fix webhook bridge error handling: connection timeout should be a retriable error.
|
|
Prior to this fix, connection timeout was classified as unrecoverable error and led to request being dropped.
|
|
|
|
- [#10078](https://github.com/emqx/emqx/pull/10078) Fix an issue that invalid QUIC listener setting could casue segfault.
|
|
|
|
|
|
- [#10084](https://github.com/emqx/emqx/pull/10084) Fix problem when joining core nodes running different EMQX versions into a cluster.
|
|
|
|
[Mria PR](https://github.com/emqx/mria/pull/127)
|
|
|
|
- [#10086](https://github.com/emqx/emqx/pull/10086) Upgrade HTTP client ehttpc to `0.4.7`.
|
|
Prior to this upgrade, HTTP clients for authentication, authorization and webhook may crash
|
|
if `body` is empty but content-type HTTP header is set.
|
|
For more details see [ehttpc PR#44](https://github.com/emqx/ehttpc/pull/44).
|
|
|
|
- [#9939](https://github.com/emqx/emqx/pull/9939) Allow 'emqx ctl cluster' command to be issued before Mnesia starts.
|
|
Prior to this change, EMQX `replicant` could not use `manual` discovery strategy.
|
|
Now it's possible to join cluster using 'manual' strategy.
|
|
|
|
- [#9958](https://github.com/emqx/emqx/pull/9958) Fix bad http response format when client ID is not found in `clients` APIs
|
|
|
|
- [#9961](https://github.com/emqx/emqx/pull/9961) Avoid parsing config files for node name and cookie when executing non-boot commands in bin/emqx.
|
|
|
|
- [#9974](https://github.com/emqx/emqx/pull/9974) Report memory usage to statsd and prometheus using the same data source as dashboard.
|
|
Prior to this fix, the memory usage data source was collected from an outdated source which did not work well in containers.
|
|
|
|
- [#9978](https://github.com/emqx/emqx/pull/9978) Fixed configuration issue when choosing to use SSL for a Postgres connection (`authn`, `authz` and bridge).
|
|
The connection could fail to complete with a previously working configuration after an upgrade from 5.0.13 to newer EMQX versions.
|
|
|
|
- [#9997](https://github.com/emqx/emqx/pull/9997) Fix Swagger API schema generation. `deprecated` metadata field is now always boolean, as [Swagger specification](https://swagger.io/specification/) suggests.
|
|
|
|
- [#10007](https://github.com/emqx/emqx/pull/10007) Change Kafka bridge's config `memory_overload_protection` default value from `true` to `false`.
|
|
EMQX logs cases when messages get dropped due to overload protection, and this is also reflected in counters.
|
|
However, since there is by default no alerting based on the logs and counters,
|
|
setting it to `true` may cause messages being dropped without noticing.
|
|
At the time being, the better option is to let sysadmin set it explicitly so they are fully aware of the benefits and risks.
|
|
|
|
- [#10087](https://github.com/emqx/emqx/pull/10087) Use default template `${timestamp}` if the `timestamp` config is empty (undefined) when inserting data in InfluxDB.
|
|
Prior to this change, InfluxDB bridge inserted a wrong timestamp when template is not provided.
|