Просмотр исходного кода

Merge pull request #11427 from id/0810-cut-v5.1.5-build.3

v5.1.5-build.3
Thales Macedo Garitezi 2 лет назад
Родитель
Сommit
65aee8870b

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

@@ -32,7 +32,7 @@
 %% `apps/emqx/src/bpapi/README.md'
 
 %% Opensource edition
--define(EMQX_RELEASE_CE, "5.1.4").
+-define(EMQX_RELEASE_CE, "5.1.5-build.3").
 
 %% Enterprise edition
 -define(EMQX_RELEASE_EE, "5.1.1").

+ 1 - 1
apps/emqx/src/emqx.app.src

@@ -2,7 +2,7 @@
 {application, emqx, [
     {id, "emqx"},
     {description, "EMQX Core"},
-    {vsn, "5.1.5"},
+    {vsn, "5.1.7"},
     {modules, []},
     {registered, []},
     {applications, [

+ 8 - 0
apps/emqx/src/emqx_schema.erl

@@ -2017,6 +2017,14 @@ common_ssl_opts_schema(Defaults, Type) ->
                     desc => ?DESC(common_ssl_opts_schema_cacertfile)
                 }
             )},
+        {"cacerts",
+            sc(
+                boolean(),
+                #{
+                    default => false,
+                    deprecated => {since, "5.1.4"}
+                }
+            )},
         {"certfile",
             sc(
                 binary(),

+ 1 - 1
apps/emqx_conf/src/emqx_conf.app.src

@@ -1,6 +1,6 @@
 {application, emqx_conf, [
     {description, "EMQX configuration management"},
-    {vsn, "0.1.25"},
+    {vsn, "0.1.26"},
     {registered, []},
     {mod, {emqx_conf_app, []}},
     {applications, [kernel, stdlib, emqx_ctl]},

+ 1 - 1
apps/emqx_machine/src/emqx_machine.app.src

@@ -3,7 +3,7 @@
     {id, "emqx_machine"},
     {description, "The EMQX Machine"},
     % strict semver, bump manually!
-    {vsn, "0.2.10"},
+    {vsn, "0.2.11"},
     {modules, []},
     {registered, []},
     {applications, [kernel, stdlib, emqx_ctl]},

+ 1 - 1
build

@@ -382,7 +382,7 @@ make_docker() {
     # shellcheck disable=SC2155
     local VSN_MINOR="$(scripts/semver.sh "$PKG_VSN" --minor)"
     # shellcheck disable=SC2155
-    local VSN_MINOR="$(scripts/semver.sh "$PKG_VSN" --patch)"
+    local VSN_PATCH="$(scripts/semver.sh "$PKG_VSN" --patch)"
     local SUFFIX=''
     if [[ "$PROFILE" = *-elixir ]]; then
         SUFFIX="-elixir"

+ 3 - 0
changes/ce/fix-11410.en.md

@@ -0,0 +1,3 @@
+Reintroduce `cacerts` TLS client option as a deprecated option.
+
+This fixes issues found when trying to upgrade from 5.1.3 where that option is set in the configuration files or persisted in EMQX Operator settings.

+ 37 - 0
changes/v5.1.5-build.3.en.md

@@ -0,0 +1,37 @@
+# v5.1.5-build.3
+
+## Enhancements
+
+- [#10697](https://github.com/emqx/emqx/pull/10697) This change allows to set the minReadySeconds for the StatefulSet. This allows to add a gap between the restarts of each pod by upgrade or restart command.
+
+- [#11390](https://github.com/emqx/emqx/pull/11390) Add `node.broker_pool_size`, `node.generic_pool_size`, `node.channel_cleanup_batch_size` options to EMQX configuration.
+
+  Tuning these options can significantly improve performance if cluster interconnect network latency is high.
+
+- [#11389](https://github.com/emqx/emqx/pull/11389) Improved retained message publishing latency by consolidating multiple index update operations into a single mnesia activity, leveraging the new APIs introduced in mria 0.6.0.
+
+- [#11399](https://github.com/emqx/emqx/pull/11399) Improved the placeholder syntax of rule engine.
+
+  The parameters of actions support using placeholder syntax to
+  dynamically fill in the content of strings. The format of the
+  placeholder syntax is `${key}`.
+  Before this improvement, the `key` in `${key}` could only contain
+  letters, numbers, and underscores. Now the `key` supports any UTF8
+  characters.
+
+- [#11405](https://github.com/emqx/emqx/pull/11405) Improve the error reason of the `date_to_unix_ts` to make more sense.
+
+## Bug Fixes
+
+- [#11279](https://github.com/emqx/emqx/pull/11279) Prevent client disconnected when sending large payloads with debug/trace logging is enabled.
+
+- [#11388](https://github.com/emqx/emqx/pull/11388) Increase `emqx_router_sup` restart intensity.
+
+  The goal is to tolerate occasional crashes that can happen under relatively normal conditions
+  and don't seem critical to shutdown the whole app (emqx).
+  For example, mria write/delete call delegated from a replicant to a core node by `emqx_router_helper` may fail,
+  if the core node is being stopped / restarted / not ready.
+
+- [#11410](https://github.com/emqx/emqx/pull/11410) Reintroduce `cacerts` TLS client option as a deprecated option.
+
+  This fixes issues found when trying to upgrade from 5.1.3 where that option is set in the configuration files or persisted in EMQX Operator settings.

+ 26 - 0
changes/v5.1.5-patch.1.en.md

@@ -0,0 +1,26 @@
+# v5.1.5-patch.1
+
+## Enhancements
+
+- [#10697](https://github.com/emqx/emqx/pull/10697) This change allows to set the minReadySeconds for the StatefulSet. This allows to add a gap between the restarts of each pod by upgrade or restart command.
+
+- [#11390](https://github.com/emqx/emqx/pull/11390) Add `node.broker_pool_size`, `node.generic_pool_size`, `node.channel_cleanup_batch_size` options to EMQX configuration.
+
+  Tuning these options can significantly improve performance if cluster interconnect network latency is high.
+
+- [#11389](https://github.com/emqx/emqx/pull/11389) Improved retained message publishing latency by consolidating multiple index update operations into a single mnesia activity, leveraging the new APIs introduced in mria 0.6.0.
+
+- [#11405](https://github.com/emqx/emqx/pull/11405) Improve the error reason of the `date_to_unix_ts` to make more sense.
+
+## Bug Fixes
+
+- [#11388](https://github.com/emqx/emqx/pull/11388) Increase `emqx_router_sup` restart intensity.
+
+  The goal is to tolerate occasional crashes that can happen under relatively normal conditions
+  and don't seem critical to shutdown the whole app (emqx).
+  For example, mria write/delete call delegated from a replicant to a core node by `emqx_router_helper` may fail,
+  if the core node is being stopped / restarted / not ready.
+
+- [#11410](https://github.com/emqx/emqx/pull/11410) Reintroduce `cacerts` TLS client option as a deprecated option.
+
+  This fixes issues found when trying to upgrade from 5.1.3 where that option is set in the configuration files or persisted in EMQX Operator settings.

+ 26 - 0
changes/v5.1.5-patch.2.en.md

@@ -0,0 +1,26 @@
+# v5.1.5-patch.2
+
+## Enhancements
+
+- [#10697](https://github.com/emqx/emqx/pull/10697) This change allows to set the minReadySeconds for the StatefulSet. This allows to add a gap between the restarts of each pod by upgrade or restart command.
+
+- [#11390](https://github.com/emqx/emqx/pull/11390) Add `node.broker_pool_size`, `node.generic_pool_size`, `node.channel_cleanup_batch_size` options to EMQX configuration.
+
+  Tuning these options can significantly improve performance if cluster interconnect network latency is high.
+
+- [#11389](https://github.com/emqx/emqx/pull/11389) Improved retained message publishing latency by consolidating multiple index update operations into a single mnesia activity, leveraging the new APIs introduced in mria 0.6.0.
+
+- [#11405](https://github.com/emqx/emqx/pull/11405) Improve the error reason of the `date_to_unix_ts` to make more sense.
+
+## Bug Fixes
+
+- [#11388](https://github.com/emqx/emqx/pull/11388) Increase `emqx_router_sup` restart intensity.
+
+  The goal is to tolerate occasional crashes that can happen under relatively normal conditions
+  and don't seem critical to shutdown the whole app (emqx).
+  For example, mria write/delete call delegated from a replicant to a core node by `emqx_router_helper` may fail,
+  if the core node is being stopped / restarted / not ready.
+
+- [#11410](https://github.com/emqx/emqx/pull/11410) Reintroduce `cacerts` TLS client option as a deprecated option.
+
+  This fixes issues found when trying to upgrade from 5.1.3 where that option is set in the configuration files or persisted in EMQX Operator settings.

+ 24 - 0
changes/v5.1.5.en.md

@@ -0,0 +1,24 @@
+# v5.1.5
+
+## Enhancements
+
+- [#10697](https://github.com/emqx/emqx/pull/10697) This change allows to set the minReadySeconds for the StatefulSet. This allows to add a gap between the restarts of each pod by upgrade or restart command.
+
+- [#11390](https://github.com/emqx/emqx/pull/11390) Add `node.broker_pool_size`, `node.generic_pool_size`, `node.channel_cleanup_batch_size` options to EMQX configuration.
+
+  Tuning these options can significantly improve performance if cluster interconnect network latency is high.
+
+- [#11389](https://github.com/emqx/emqx/pull/11389) Improved retained message publishing latency by consolidating multiple index update operations into a single mnesia activity, leveraging the new APIs introduced in mria 0.6.0.
+
+## Bug Fixes
+
+- [#11388](https://github.com/emqx/emqx/pull/11388) Increase `emqx_router_sup` restart intensity.
+
+  The goal is to tolerate occasional crashes that can happen under relatively normal conditions
+  and don't seem critical to shutdown the whole app (emqx).
+  For example, mria write/delete call delegated from a replicant to a core node by `emqx_router_helper` may fail,
+  if the core node is being stopped / restarted / not ready.
+
+- [#11410](https://github.com/emqx/emqx/pull/11410) Reintroduce `cacerts` TLS client option as a deprecated option.
+
+  This fixes issues found when trying to upgrade from 5.1.3 where that option is set in the configuration files or persisted in EMQX Operator settings.

+ 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.1.4
+version: 5.1.5
 
 # 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.1.4
+appVersion: 5.1.5

+ 2 - 2
scripts/parse-git-ref.sh

@@ -20,7 +20,7 @@ if [[ $1 =~ ^refs/tags/v[5-9]+\.[0-9]+\.[0-9]+$ ]]; then
     PROFILE=emqx
     RELEASE=true
     LATEST=$(is_latest "$1")
-elif [[ $1 =~ ^refs/tags/v[5-9]+\.[0-9]+\.[0-9]+-[0-9]+$ ]]; then
+elif [[ $1 =~ ^refs/tags/v[5-9]+\.[0-9]+\.[0-9]+-build\.[0-9]+$ ]]; then
     PROFILE=emqx
     RELEASE=true
     LATEST=$(is_latest "$1")
@@ -28,7 +28,7 @@ elif [[ $1 =~ ^refs/tags/e[5-9]+\.[0-9]+\.[0-9]+$ ]]; then
     PROFILE=emqx-enterprise
     RELEASE=true
     LATEST=$(is_latest "$1")
-elif [[ $1 =~ ^refs/tags/e[5-9]+\.[0-9]+\.[0-9]+-[0-9]+$ ]]; then
+elif [[ $1 =~ ^refs/tags/e[5-9]+\.[0-9]+\.[0-9]+-build\.[0-9]+$ ]]; then
     PROFILE=emqx-enterprise
     RELEASE=true
     LATEST=$(is_latest "$1")

+ 9 - 9
scripts/semver.sh

@@ -6,21 +6,21 @@ function parseSemver() {
     local RE='^([0-9]+)\.([0-9]+)\.([0-9]+)(-([a-z]+\.[0-9]+))?$'
     echo "$1" | grep -qE "$RE" || exit 1
     #shellcheck disable=SC2155
-    local MAJOR=$(  echo "$1" | sed -r "s#$RE#\1#")
+    local MAJOR=$(echo "$1" | sed -r "s#$RE#\1#")
     #shellcheck disable=SC2155
-    local MINOR=$(  echo "$1" | sed -r "s#$RE#\2#")
+    local MINOR=$(echo "$1" | sed -r "s#$RE#\2#")
     #shellcheck disable=SC2155
-    local PATCH=$(  echo "$1" | sed -r "s#$RE#\3#")
+    local PATCH=$(echo "$1" | sed -r "s#$RE#\3#")
     #shellcheck disable=SC2155
-    local SPECIAL=$(echo "$1" | sed -r "s#$RE#\5#")
+    local BUILD=$(echo "$1" | sed -r "s#$RE#\5#")
     case "${2}" in
-        --major)   echo "${MAJOR}"   ;;
-        --minor)   echo "${MINOR}"   ;;
-        --patch)   echo "${PATCH}"   ;;
-        --special) echo "${SPECIAL}" ;;
+        --major) echo "${MAJOR}" ;;
+        --minor) echo "${MINOR}" ;;
+        --patch) echo "${PATCH}" ;;
+        --build) echo "${BUILD}" ;;
         *)
             cat <<EOF
-{"major": ${MAJOR}, "minor": ${MINOR}, "patch": ${PATCH}, "special": "${SPECIAL}"}
+{"major": ${MAJOR}, "minor": ${MINOR}, "patch": ${PATCH}, "build": "${BUILD}"}
 EOF
             ;;
     esac

+ 12 - 2
scripts/shelltest/parse-git-ref.test

@@ -8,12 +8,22 @@ Unrecognized tag: refs/tags/v5.2.0-foobar.1
 Unrecognized git ref: v5.2.0
 >>>= 1
 
+./parse-git-ref.sh v5.2.0-1
+>>>2
+Unrecognized git ref: v5.2.0-1
+>>>= 1
+
+./parse-git-ref.sh e5.2.0-1
+>>>2
+Unrecognized git ref: e5.2.0-1
+>>>= 1
+
 ./parse-git-ref.sh refs/tags/v5.1.0
 >>>
 {"profile": "emqx", "release": true, "latest": false}
 >>>= 0
 
-./parse-git-ref.sh refs/tags/v5.1.5-1
+./parse-git-ref.sh refs/tags/v5.1.5-build.1
 >>>
 {"profile": "emqx", "release": true, "latest": false}
 >>>= 0
@@ -43,7 +53,7 @@ Unrecognized tag: refs/tags/v5.2.0-alpha-1
 {"profile": "emqx-enterprise", "release": true, "latest": false}
 >>>= 0
 
-./parse-git-ref.sh refs/tags/e5.1.5-1
+./parse-git-ref.sh refs/tags/e5.1.5-build.1
 >>>
 {"profile": "emqx-enterprise", "release": true, "latest": false}
 >>>= 0

+ 8 - 8
scripts/shelltest/semver.test

@@ -3,30 +3,30 @@
 
 ./semver.sh 5.1.0
 >>>
-{"major": 5, "minor": 1, "patch": 0, "special": ""}
+{"major": 5, "minor": 1, "patch": 0, "build": ""}
 >>>= 0
 
-./semver.sh 5.1.0-patch.3
+./semver.sh 5.1.0-build.3
 >>>
-{"major": 5, "minor": 1, "patch": 0, "special": "patch.3"}
+{"major": 5, "minor": 1, "patch": 0, "build": "build.3"}
 >>>= 0
 
-./semver.sh 5.1.0-patch.3 --major
+./semver.sh 5.1.0-build.3 --major
 >>>
 5
 >>>= 0
 
-./semver.sh 5.1.0-patch.3 --minor
+./semver.sh 5.1.0-build.3 --minor
 >>>
 1
 >>>= 0
 
-./semver.sh 5.1.0-patch.3 --patch
+./semver.sh 5.1.0-build.3 --patch
 >>>
 0
 >>>= 0
 
-./semver.sh 5.1.0-patch.3 --special
+./semver.sh 5.1.0-build.3 --build
 >>>
-patch.3
+build.3
 >>>= 0