diff --git a/changes/ce/feat-13191.en.md b/changes/ce/feat-13191.en.md new file mode 100644 index 000000000..925b6addf --- /dev/null +++ b/changes/ce/feat-13191.en.md @@ -0,0 +1,22 @@ +Upgrade EMQX Docker images to run on Erlang/OTP 26. + +EMQX had been running on Erlang/OTP 26 since 5.5 except for docker images which were on Erlang/OTP 25. +Now all releases are on Erlang/OTP 26. + +A known issue: +When an older version EMQX joins cluster with newer version nodes. +The older version node's schema registry may encounter an issue which emits logs like below: + +``` +Error loading module '$schema_parser___CiYAWBja87PleCyKZ58h__SparkPlug_B_BUILT-IN':, +This BEAM file was compiled for a later version of the runtime system than the current (Erlang/OTP 25). +``` + +This issue is fixed in newer version, however for older versions, a manual step is required. +Execute this in one of the clustered nodes before the older version EMQX joins the cluster. + +```shell +emqx eval 'lists:foreach(fun(Key) -> mnesia:dirty_delete(emqx_ee_schema_registry_protobuf_cache_tab, Key) end, mnesia:dirty_all_keys(emqx_ee_schema_registry_protobuf_cache_tab)).' +``` + +Or if the older version EMQX is already in the cluster, execute the above command, and restart this node.