Merge pull request #9960 from zmstone/0213-merge-release-50-to-master

0213 merge release 50 to master
This commit is contained in:
Zaiming (Stone) Shi 2023-02-13 13:38:01 +01:00 committed by GitHub
commit 3bf8a7ede7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
37 changed files with 89 additions and 45 deletions

View File

@ -32,7 +32,7 @@
%% `apps/emqx/src/bpapi/README.md'
%% Community edition
-define(EMQX_RELEASE_CE, "5.0.16").
-define(EMQX_RELEASE_CE, "5.0.17").
%% Enterprise edition
-define(EMQX_RELEASE_EE, "5.0.0").

43
changes/v5.0.17-en.md Normal file
View File

@ -0,0 +1,43 @@
# v5.0.17
## Enhancements
- [#9802](https://github.com/emqx/emqx/pull/9802) Support HAProxy protocol for HTTP API.
- [#9871](https://github.com/emqx/emqx/pull/9871) Allow the placeholder to be anywhere in the topic for `authz` rules.
e.g:
`{allow, {username, "who"}, publish, ["t/foo${username}boo/${clientid}xxx"]}.`
- [#9910](https://github.com/emqx/emqx/pull/9910) Add `start` operation to bridges API to allow manual reconnect after failure.
- [#9917](https://github.com/emqx/emqx/pull/9917) Stop building -alpine docker image because it's size is larger than the regular one based on debian slim
- [#9930](https://github.com/emqx/emqx/pull/9930) Expose the stats `live_connections.count` and `live_connections.max` to Prometheus.
- [#9936](https://github.com/emqx/emqx/pull/9936) Disable disksup (part of os_mon) in releases by default, no warnings are issued when a disk error occurs.
- [#9954](https://github.com/emqx/emqx/pull/9954) Improve bridge performance
## Bug fixes
- [#9864](https://github.com/emqx/emqx/pull/9864) Fix the exclusive topics aren't removed when the session has already been cleaned.
- [#9875](https://github.com/emqx/emqx/pull/9875) Return `400` if a broken plugin package is uploaded from HTTP API, also cleanup if plugin is not accepted.
- [#9916](https://github.com/emqx/emqx/pull/9916) Fix MQTT bridge fails to verify TLS wildcard server certificate.
- [#9922](https://github.com/emqx/emqx/pull/9922) Fix the issue with the bridge resource buffer where it might become stuck if enough async queries fill the inflight window full before failing with retryable errors.
- [#9923](https://github.com/emqx/emqx/pull/9923) Fix REPORT_CB/2 CRASH error logs when errors happen during boot-up or shutdown.
- [#9938](https://github.com/emqx/emqx/pull/9938) Report some egress MQTT bridge errors as recoverable, and thus retryable.
- [#9946](https://github.com/emqx/emqx/pull/9946) Add back `reconnect_interval` as deprecated field for MQTT bridge.
The field was removed from v5.0.16/e5.0.0 by mistake, caused new version unable to start on old config.
Now it's added back as deprecated (config value is ignored if provided).
- [#9951](https://github.com/emqx/emqx/pull/9951) Propagate errors from operations (`start|stop|restart`) on bridges API if called for all nodes.
- [#9952](https://github.com/emqx/emqx/pull/9952) Disallow subscribing with QoS 2 for ingress MQTT bridges.
Allow user to configure `clean_start` option for ingress MQTT bridges, however.

40
changes/v5.0.17-zh.md Normal file
View File

@ -0,0 +1,40 @@
# v5.0.17
## 增强
- [#9802](https://github.com/emqx/emqx/pull/9802) 现在 HTTP API 增加对 `HAProxy protocol` 的支持。
- [#9871](https://github.com/emqx/emqx/pull/9871) 允许占位符出现在 `authz` 规则中的主题里的任意位置。
例如:
`{allow, {username, "who"}, publish, ["t/foo${username}boo/${clientid}xxx"]}.`
- [#9910](https://github.com/emqx/emqx/pull/9910) 桥接 API 中增加 `start` 操作,允许失败后手动重新连接。
- [#9917](https://github.com/emqx/emqx/pull/9917) 停止构建 -alpine docker 镜像,因为它的大小比基于 debian slim 的普通镜像要大。
- [#9930](https://github.com/emqx/emqx/pull/9930) Prometheus 统计指标增加 `live_connections.count``live_connections.max` 指标。
- [#9936](https://github.com/emqx/emqx/pull/9936) 默认禁用 diskup os_mon 的一部分),不会在磁盘出现错误时发出警告。
- [#9954](https://github.com/emqx/emqx/pull/9954) 提升大并发下桥接性能。
## 修复
- [#9864](https://github.com/emqx/emqx/pull/9864) 修复会话清除后相关的排他订阅主题没有被清理的问题。
- [#9875](https://github.com/emqx/emqx/pull/9875) 当通过 HTTP API 上传一个损坏的插件包时,返回 `400`,且删除该插件包。
- [#9916](https://github.com/emqx/emqx/pull/9916) 修复 MQTT 桥接器无法验证 TLS 通配符服务器证书的问题。
- [#9922](https://github.com/emqx/emqx/pull/9922) 修复桥接资源缓冲区问题,如果大量异步查询失败将 inflight window 填满,则可能会卡住。
- [#9923](https://github.com/emqx/emqx/pull/9923) 修复在启动和关闭过程中发生错误时,日志中的 REPORT_CB/2 CRASH 错误。
- [#9938](https://github.com/emqx/emqx/pull/9938) 将一些 egress MQTT 桥接错误报告为 recoverable便于稍后重试。
- [#9946](https://github.com/emqx/emqx/pull/9946) MQTT 桥接配置参数 `reconnect_interval` 在 v5.0.16/e5.0.0 中被误删,
导致旧版本配置格式在升级后无法通过校验。此修复把配置格式还原,但是会忽略配置值。
- [#9951](https://github.com/emqx/emqx/pull/9951) 返回桥接 API 操作(`start|stop|restart`) 的多节点远程调用的错误信息。
- [#9952](https://github.com/emqx/emqx/pull/9952) 不允许对 ingress MQTT 桥接的 QoS 2 进行订阅。 但允许用户为 ingress MQTT 桥接配置 "clean_start" 选项。

View File

@ -1 +0,0 @@
Support HAProxy protocol for dashboard API.

View File

@ -1 +0,0 @@
现在 dashboard 增加了对 `HAProxy` 协议的支持。

View File

@ -1,3 +0,0 @@
Allow the placeholder to be anywhere in the topic for `authz` rules.
e.g:
`{allow, {username, "who"}, publish, ["t/foo${username}boo/${clientid}xxx"]}.`

View File

@ -1,3 +0,0 @@
允许占位符出现在 `authz` 规则中的主题里的任意位置。
例如:
`{allow, {username, "who"}, publish, ["t/foo${username}boo/${clientid}xxx"]}.`

View File

@ -1 +0,0 @@
Add `start` operation to bridges API to allow manual reconnect after failure.

View File

@ -1 +0,0 @@
在桥接 API 中增加 `start` 操作,允许失败后手动重新连接。

View File

@ -1 +0,0 @@
Stop building -alpine docker image because it's size is larger than the regular one based on debian slim

View File

@ -1 +0,0 @@
停止构建-alpine docker镜像因为它的大小比基于debian slim的普通镜像要大。

View File

@ -1 +0,0 @@
Expose the stats `live_connections.count` and `live_connections.max` to Prometheus.

View File

@ -1 +0,0 @@
将统计数据 `live_connections.count``live_connections.max` 公开给 Prometheus.

View File

@ -1 +0,0 @@
Disable disksup (part of os_mon) in releases by default.

View File

@ -1 +0,0 @@
在发行版中默认禁用diskupos_mon的一部分

View File

@ -1 +0,0 @@
Fix the exclusive topics aren't removed when the session has already been cleaned.

View File

@ -1 +0,0 @@
修复会话清除后相关的排他订阅主题没有被清理的问题。

View File

@ -1 +0,0 @@
Return `400` if a broken plugin package is uploaded from HTTP API. Also cleanup if plugin is not accepted.

View File

@ -1 +0,0 @@
当通过 HTTP API 上传一个损坏的插件包时,返回 `400`,且删除该插件包。

View File

@ -1,2 +0,0 @@
Fix MQTT bridge fails to verify TLS wildcard server certificate.

View File

@ -1 +0,0 @@
修复MQTT桥接器无法验证TLS通配符服务器证书的问题。

View File

@ -1 +0,0 @@
Fix the issue with the bridge resource buffer where it might become stuck if enough async queries fill the inflight window full before failing with retryable errors.

View File

@ -1 +0,0 @@
修复桥接资源缓冲区的问题,如果足够多的异步查询在失败并出现可重试错误之前将机上窗口填满,则可能会卡住。

View File

@ -1 +0,0 @@
Fix REPORT_CB/2 CRASH error logs when erros happen during boot-up or shutdown.

View File

@ -1 +0,0 @@
修复在启动和关闭过程中发生错误时,日志中的 REPORT_CB/2 CRASH 错误。

View File

@ -1 +0,0 @@
Report some egress MQTT bridge errors as recoverable, and thus retryable.

View File

@ -1 +0,0 @@
将一些出口 MQTT 网桥错误报告为可恢复,因此可重试。

View File

@ -1,3 +0,0 @@
Add back `reconnect_interval` as deprecated field for MQTT bridge.
The field was removed from v5.0.16/e5.0.0 by mistake, caused new version unable to start on old config.
Now it's added back as deprecated (config value is ignored if provided).

View File

@ -1,2 +0,0 @@
MQTT 桥接配置参数 `reconnect_interval` 在 v5.0.16/e5.0.0 中被错误删除,
导致旧版本配置在升级后无法使用。此修复把配置加回,但是值会忽略。

View File

@ -1 +0,0 @@
Propagate errors from operations (`start|stop|restart`) on bridges API if called for all nodes.

View File

@ -1 +0,0 @@
返回桥接 API 操作(`start|stop|restart`) 的多节点远程调用的错误信息。

View File

@ -1,2 +0,0 @@
Disallow subscribing with QoS 2 for ingress MQTT bridges.
Allow user to configure `clean_start` option for ingress MQTT bridges however.

View File

@ -1,2 +0,0 @@
不允许对 ingress MQTT 网桥的 QoS 2 进行订阅。
但允许用户为 ingress MQTT 桥配置 "clean_start" 选项。

View File

@ -1 +0,0 @@
Improve bridge performance

View File

@ -1 +0,0 @@
优化桥接性能

View File

@ -14,8 +14,8 @@ type: application
# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
version: 5.0.16
version: 5.0.17
# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application.
appVersion: 5.0.16
appVersion: 5.0.17

View File

@ -39,6 +39,7 @@ if [ "${language}" = "en" ]; then
## Enhancements
$(section feat)
$(section perf)
## Bug fixes
@ -53,6 +54,8 @@ elif [ "${language}" = "zh" ]; then
$(section feat)
$(section perf)
## 修复
$(section fix)