Przeglądaj źródła

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

0213 merge release 50 to master
Zaiming (Stone) Shi 3 lat temu
rodzic
commit
3bf8a7ede7

+ 1 - 1
apps/emqx/include/emqx_release.hrl

@@ -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 - 0
changes/v5.0.17-en.md

@@ -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 - 0
changes/v5.0.17-zh.md

@@ -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" 选项。

+ 0 - 1
changes/v5.0.17/feat-9802.en.md

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

+ 0 - 1
changes/v5.0.17/feat-9802.zh.md

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

+ 0 - 3
changes/v5.0.17/feat-9871.en.md

@@ -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"]}.`

+ 0 - 3
changes/v5.0.17/feat-9871.zh.md

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

+ 0 - 1
changes/v5.0.17/feat-9910.en.md

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

+ 0 - 1
changes/v5.0.17/feat-9910.zh.md

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

+ 0 - 1
changes/v5.0.17/feat-9917.en.md

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

+ 0 - 1
changes/v5.0.17/feat-9917.zh.md

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

+ 0 - 1
changes/v5.0.17/feat-9930.en.md

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

+ 0 - 1
changes/v5.0.17/feat-9930.zh.md

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

+ 0 - 1
changes/v5.0.17/feat-9936.en.md

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

+ 0 - 1
changes/v5.0.17/feat-9936.zh.md

@@ -1 +0,0 @@
-在发行版中默认禁用diskup(os_mon的一部分)。

+ 0 - 1
changes/v5.0.17/fix-9864.en.md

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

+ 0 - 1
changes/v5.0.17/fix-9864.zh.md

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

+ 0 - 1
changes/v5.0.17/fix-9875.en.md

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

+ 0 - 1
changes/v5.0.17/fix-9875.zh.md

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

+ 0 - 2
changes/v5.0.17/fix-9916.en.md

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

+ 0 - 1
changes/v5.0.17/fix-9916.zh.md

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

+ 0 - 1
changes/v5.0.17/fix-9922.en.md

@@ -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.

+ 0 - 1
changes/v5.0.17/fix-9922.zh.md

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

+ 0 - 1
changes/v5.0.17/fix-9923.en.md

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

+ 0 - 1
changes/v5.0.17/fix-9923.zh.md

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

+ 0 - 1
changes/v5.0.17/fix-9938.en.md

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

+ 0 - 1
changes/v5.0.17/fix-9938.zh.md

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

+ 0 - 3
changes/v5.0.17/fix-9946.en.md

@@ -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).

+ 0 - 2
changes/v5.0.17/fix-9946.zh.md

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

+ 0 - 1
changes/v5.0.17/fix-9951.en.md

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

+ 0 - 1
changes/v5.0.17/fix-9951.zh.md

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

+ 0 - 2
changes/v5.0.17/fix-9952.en.md

@@ -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.

+ 0 - 2
changes/v5.0.17/fix-9952.zh.md

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

+ 0 - 1
changes/v5.0.17/perf-9954.en.md

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

+ 0 - 1
changes/v5.0.17/perf-9954.zh.md

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

+ 2 - 2
deploy/charts/emqx/Chart.yaml

@@ -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

+ 3 - 0
scripts/format-changelog.sh

@@ -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)