deliver_rate to delivery_rate in the configuration of retainer, while being compatible with the previous deliver_rate.ssl_options field for SSL settings.api_server from http://127.0.0.1:9091 to https://kubernetes.default.svc:443.
emqx_ctl conf show cluster no longer displays irrelevant configuration items when discovery_strategy=static.
Configuration information related to etcd/k8s/dns will not be shown.zones(deprecated config key) from emqx_ctl conf show_keys./configs/limiter API from swagger.json. Only the API documentation was removed,
and the /configs/limiter API functionalities remain unchanged.random(): Generates a random number between 0 and 1 (0.0 =< X < 1.0).uuid_v4(): Generates a random UUID (version 4) string.uuid_v4_no_hyphen(): Generates a random UUID (version 4) string without hyphens./configs (GET/PUT) that supports reloading the HOCON format configuration file.enable, while being compatible with the previous enabled./license/setting REST API endpoint to read and update licensed connections usage alarm watermark./cluster/topology REST API endpoint:
A GET request to this endpoint returns the cluster topology, showing connections between RLOG core and replicant nodes./clients endpoint with default parameters.div and mod operations within the rule engine. Previously, the div' operation could only be used as an infix operation, and mod could only be applied through a function call. Now, both div and mod can be used via function call syntax and infix syntax.erlcloud dependency.worker_pool_size of a bridge resource.
Now the maximum amount is 1024 to avoid large memory consumption from an unreasonable number of workers.{"value": 42, "reason": {"expected": "1..10"}, ...}, replacing the previous usage of expected_type with expected.authorization header not being obfuscated in the log.mria_lb was trying to ping both stopped and running
replicant nodes, which could result in timeout errors.
Mria PRnull_copies storage when copying $mria_rlog_sync table.
This fix has no effect on EMQX for now, as $mria_rlog_sync is only used in mria:sync_transaction/2,3,4,
which is not utilized by EMQX.
Mria PR${payload.a.b.c}) placeholders for extracting data from rule action messages without the need for calling json_decode(payload) first.payload field in rule engine SQL being duplicated in the below situations:
foreach sentence without the as sub-expression and selecting all fields (using the * or omitting the do sub-expression).
For example:
FOREACH payload.sensors FROM "t/#"payload field and all fields.
For example:
SELECT payload.sensors, * FROM "t/#"server key coming from an ingress MQTT bridge.
Before the fix, it was encoded as a list of integers corresponding to the ASCII characters of the server string.mqtt.max_packet_size now has a max value of 256MB as defined by the protocol." around keys and latin1 strings from HOCON file.username and password params of CoAP client optional in connection mode.DELETE operations on non-existent resources now consistently returns 404.emqx ctl conf load.headers default value in /prometheus API should be a map instead of a list.sysom.os.sysmem_high_watermark=101% is invalid now.PUBREL packet was mistakenly referred to as pubrec.$queue/ shared subscription topic prefix.emqx ctl cluster join, leave, and status commands.emqx ctl import command):
topology.pool_size in MondoDB bridges and fixed it to 1 to avoid confusion./api/v5/load_rebalance/global_status API method could return incomplete results if handled by a replicant node.username field in PostgreSQL/Timescale/MatrixDB bridges configuration is now a required one.insert syntax:
insert into table_1 values (${ts}, '${id}', '${topic}')
table_2 values (${ts}, '${id}', '${topic}')insert into table_${topic} values (${ts}, '${id}', '${topic}')
Note: This is a breaking change. Previously, the values of string type were quoted automatically, but now they must be quoted explicitly.
For example:
insert into table values (${ts}, '${a_string}')