Commit Graph

752 Commits

Author SHA1 Message Date
Zhongwen Deng 8facd130f6 chore: update cluster_hocon_file/0 function 2023-04-14 23:19:38 +08:00
Thales Macedo Garitezi 14ed4a7ada feat(buffer_worker): set default queue mode to `memory_only`
Fixes https://emqx.atlassian.net/browse/EMQX-9367

For better user experience and performance for the average bridge, we
should change the default queue mode to `memory_only`, as was the
behavior of most bridges in e4.x.  This leads to better performance
when message rate is high enough and the remote resource is not
keeping up with EMQX.

Also, we set the default segment size to equal max queue bytes.
2023-04-14 11:37:19 -03:00
Andrew Mayorov 5e92ba6fa9
Merge pull request #10359 from ft/EMQX-9136/no-ask-metrics
feat(resource): ask for metrics only when needed
2023-04-14 12:28:52 +03:00
zhongwencool 1e07f37ab0
Merge pull request #10354 from zhongwencool/straightforward-log-info
feat: more straightforward log for force_shutdown reason
2023-04-14 10:15:32 +08:00
zhongwencool 0553facfca
Merge pull request #10391 from zhongwencool/04-13-hide-conf
feat: hide ex_hook/rewrite/topic_metric/persistent_session_store
2023-04-14 09:39:29 +08:00
zhongwencool 626e814e9a
Merge pull request #10385 from zhongwencool/hide-conf
feat: hide data items from configuration files and documentation.
2023-04-14 09:38:34 +08:00
zhongwencool 835f66a8d2
Merge pull request #10375 from zhongwencool/trace-conf
feat: deprecated trace config
2023-04-14 09:22:12 +08:00
Kjell Winblad d3ccd8a65d feat: add date_to_unix_ts/3 function to the rule engine
Fixes:
https://emqx.atlassian.net/browse/EMQX-9245
2023-04-13 16:14:03 +02:00
某文 3431a1b123 chore: add changelog 2023-04-13 21:55:01 +08:00
某文 dc71a97d26 chore: add changelog for max_heap_size 2023-04-13 20:35:22 +08:00
某文 cbd2d90bb3 chore: add changelog for hide data items 2023-04-13 19:45:49 +08:00
zhongwencool cf2f00c937
Merge pull request #10381 from zhongwencool/hiden-auto-subscribe-conf
feat: hiden auto_subscribe conf
2023-04-13 14:42:59 +08:00
zhongwencool 17b2a62246
chore: update changes/ce/feat-10381.en.md
Co-authored-by: JianBo He <heeejianbo@163.com>
2023-04-13 11:02:10 +08:00
Zhongwen Deng 48600cbc8e chore: add auto_subscribe changelog 2023-04-13 09:50:11 +08:00
Ivan Dyachkov bdffa925db chore: merge upstream/master release-50 2023-04-12 15:30:20 +02:00
Andrew Mayorov 9c9f39d0f7
feat(resman): also move out metrics collection for debugging
Now `emqx_resource:list_instances_verbose/0` will populate the metrics
for each instance, for the sake of simplicity.
2023-04-12 16:14:42 +03:00
Zhongwen Deng 45254c5936 chore: add changelog for create trace 2023-04-12 17:59:14 +08:00
Stefan Strigler f668ad7b9e
Merge pull request #10336 from sstrigler/EMQX-8507-rule-engine-need-a-new-api-to-crud-rule-engines-setting-configs
feat: add `/rule_engine` API endpoint
2023-04-12 11:44:42 +02:00
Andrew Mayorov d5ae5ebfd8
chore: add changelog entry
Co-Authored-By: ieQu1 <99872536+ieQu1@users.noreply.github.com>
2023-04-11 16:26:56 +03:00
Ivan Dyachkov 00301935bb chore: update changelog entries 2023-04-11 11:42:07 +02:00
JianBo He e186477531
Merge pull request #10278 from HJianBo/refactor-gw-dir
Refactor gateway application dirs
2023-04-08 09:42:14 +08:00
Kjell Winblad 1938882f16
Merge pull request #10318 from kjellwinblad/kjell/feat/rule_engine_from_clause_support_both_string_types
feat(rule engine sql): enable both ' and " strings in FROM clause
2023-04-06 09:19:44 +02:00
JimMoen ab807fba51
Merge pull request #10329 from kjellwinblad/kjell/EMQX-9138-e-5-0-2-ensure-that-the-error-messages-returned-are-consistent
fix: create consistent interface 'with_node' for API access
2023-04-06 14:47:42 +08:00
JianBo He 702ecbcb6e Merge remote-tracking branch 'upstream/master' into refactor-gw-dir 2023-04-06 10:44:59 +08:00
Stefan Strigler aea870f319 feat: add `/rule_engine` API endpoint 2023-04-05 15:19:31 +02:00
Stefan Strigler f3446c48f7
Merge pull request #10315 from sstrigler/EMQX-8945-crash-for-bad-param-value-to-mqtt-delayed-messages-api-call
EMQX 8945 crash for bad param value to mqtt delayed messages api call
2023-04-05 13:44:22 +02:00
Zaiming (Stone) Shi a9bf633e03
Merge pull request #10320 from zmstone/0403-sync-release-50-back-to-master
0403 sync release 50 back to master
2023-04-04 23:31:24 +02:00
Thales Macedo Garitezi 5d5b7ea215
Merge pull request #10306 from thalesmg/enable-async-buffer-workers-all-bridges-v50
feat(bridges): enable async query mode for all bridges with buffer workers
2023-04-04 17:10:46 -03:00
Ivan Dyachkov 2571da368c chore: add changelog 2023-04-04 19:58:43 +02:00
Stefan Strigler 04626ce9cc fix: create consistent interface 'with_node' for API access 2023-04-04 16:54:14 +02:00
Zaiming (Stone) Shi 68c15ffd48 Merge remote-tracking branch 'origin/release-50' into 0403-sync-release-50-back-to-master 2023-04-04 16:42:58 +02:00
SergeTupchiy 877b828d4a
Merge pull request #10327 from SergeTupchiy/EMQX-8786-fix-unknown-counter-inc-on-unrecoverable-err
fix(rule_engine): don't increment unknown counter on unrecoverable er…
2023-04-04 16:51:34 +03:00
Zaiming (Stone) Shi eeb7b32bc8
Merge pull request #10317 from zmstone/0403-refactor-hide-listener-level-authentication
0403 refactor hide listener level authentication
2023-04-04 15:04:35 +02:00
Serge Tupchii aca65ca2d4 fix(rule_engine): don't increment unknown counter on unrecoverable errors
Closes: EMQX-8786
2023-04-04 15:59:53 +03:00
Thales Macedo Garitezi 0b6fd7fe14 fix(buffer_worker): check request timeout and health check interval
Port of https://github.com/emqx/emqx/pull/10154 for `release-50`

Fixes https://emqx.atlassian.net/browse/EMQX-9099

Originally, the `resume_interval`, which is what defines how often a
buffer worker will attempt to retry its inflight window, was set to
the same as the `health_check_interval`.  This had the problem that,
with default values, `health_check_interval = request_timeout`.  This
meant that, if a buffer worker with those configs were ever blocked,
all requests would have timed out by the time it retried them.

Here we change the default `resume_interval` to a reasonable value
dependent on `health_check_interval` and `request_timeout`, and also
expose that as a hidden parameter for fine tuning if necessary.
2023-04-04 08:58:36 -03:00
Kjell Winblad 0e66eb5f3f feat(rule engine sql): enable both ' and " strings in FROM clause
This commit upgrades the rulesql dependency to version 1.5 instead of
1.4. The difference between these two versions is that strings surrounded
by ' and " are supported in FROM clauses in version 1.5, but in version
1.4, only strings surrounded by " are supported.

Fixes:
https://emqx.atlassian.net/browse/EMQX-9243
2023-04-04 10:36:48 +02:00
firest a7e5709f86 chore: update changes 2023-04-04 16:31:54 +08:00
Zaiming (Stone) Shi 429b3d9efd Merge remote-tracking branch 'origin/master' into 0403-sync-release-50-back-to-master 2023-04-03 20:32:33 +02:00
Thales Macedo Garitezi f3ffc02bff feat(bridges): enable async query mode for all bridges with buffer workers
Fixes https://emqx.atlassian.net/browse/EMQX-9130

Since buffer workers always support async calls ("outer calls"), we
should decouple those two call modes (inner and outer), and avoid
exposing the inner call configuration to user to avoid complexity.

For bridges that currently only allow sync query modes, we should
allow them to be configured with async.  That means basically all
bridge types except Kafka Producer.
2023-04-03 14:49:51 -03:00
Zaiming (Stone) Shi a4e27e56a8 docs: add change logs 2023-04-03 16:52:49 +02:00
Stefan Strigler 5d722f8d46 style: add changelog 2023-04-03 15:55:25 +02:00
JimMoen 53712e6146
fix: running nodes should not include replica nodes 2023-04-03 20:01:37 +08:00
JianBo He 5138e6371c chore: update changes 2023-04-03 09:47:05 +08:00
Thales Macedo Garitezi 53d760ec69
Merge pull request #10300 from thalesmg/fix-plugin-upload-v50
fix(plugins): create directory before uploading
2023-03-31 16:28:18 -03:00
Paulo Zulato 3765f5f120
Merge pull request #10297 from paulozulato/fix-eval
fix: keep eval command backward compatible with v4
2023-03-31 11:29:57 -03:00
Thales Macedo Garitezi a2b82dae69 fix(plugins): create directory before uploading
Fixes https://emqx.atlassian.net/browse/EMQX-9434

Fixes https://github.com/emqx/emqx-elixir-plugin/issues/23
2023-03-30 17:51:16 -03:00
Paulo Zulato 161435d29d fix: keep eval command backward compatible with v4
Keeps "eval" command evaluating only Erlang expressions, even on Elixir
node.

Fixes: https://emqx.atlassian.net/browse/EMQX-8947
2023-03-30 14:20:49 -03:00
Zaiming (Stone) Shi 36043dd651
Merge pull request #10286 from zmstone/0330-exit-with-non-zero-code-if-conf-init-failed
0330 exit with non zero code if conf init failed
2023-03-30 17:41:14 +02:00
Zaiming (Stone) Shi 14039e393a
docs: Update changes/ce/fix-10286.en.md
Co-authored-by: Thales Macedo Garitezi <thalesmg@gmail.com>
2023-03-30 17:11:10 +02:00
Zaiming (Stone) Shi da8794ede0 docs: Add change logs 2023-03-30 14:17:29 +02:00
William Yang 65ef9c9086
Merge pull request #10077 from qzhuyan/dev/william/quic-cert-password
feat(quic): support TLS password protected keyfile
2023-03-30 12:59:50 +02:00
Paulo Zulato 03a70bb527
Merge pull request #10263 from paulozulato/feat-eval-ex
feat: add new command for Elixir expression evaluation
2023-03-29 12:04:46 -03:00
Thales Macedo Garitezi 6e596ec322
Merge pull request #10224 from thalesmg/helm-cluster-ip
feat(helm): add option to customize `clusterIP`
2023-03-29 09:44:42 -03:00
Zaiming (Stone) Shi 80eb9d7542
Merge pull request #10252 from emqx/release-50
0327 merge release-50 to master
2023-03-29 12:33:17 +02:00
JianBo He fee4ff6a07
Merge pull request #10257 from HJianBo/gw-lwm2m-fixes
Fixed the issue where `auto_observe` was not working in LwM2M Gateway
2023-03-29 15:20:46 +08:00
Paulo Zulato d9fc8fbc87 feat: add new command for Elixir expression evaluation
Currently, Elixir expressions are evaluated on an EMQX node using the
'eval' command, which works for both Erlang and Elixir expressions.
This commit adds the new command 'eval-ex' exclusively for evaluating
Elixir expressions on Elixir nodes, similar to 'eval-erl' for Erlang.
2023-03-28 18:45:48 -03:00
Thales Macedo Garitezi 1824e7efcc fix(rule_engine): count referenced bridges in `from` clauses as dependencies (rv5.0)
Fixes https://emqx.atlassian.net/browse/EMQX-9325

Currently, ingress bridges referenced in the `FROM` clause of rules
are not being accounted as dependencies.

When we try to delete an ingress bridge that's referenced in a rule
like `select * from "$bridges/mqtt:ingress"`, that bridge does not
trigger an UI warning about dependent actions.
2023-03-28 10:31:10 -03:00
Zaiming (Stone) Shi d35c5e0516 docs: add changelogs 2023-03-28 14:29:24 +02:00
JianBo He 447f5bf9c5 chore: add changes 2023-03-28 19:05:51 +08:00
Stefan Strigler 193905c7b9
Merge pull request #10237 from sstrigler/EMQX-9138-e-5-0-2-ensure-that-the-error-messages-returned-are-consistent
fix: create consistent interface 'with_node' for API access
2023-03-28 10:41:10 +02:00
Zaiming (Stone) Shi 7a6494cda6
Merge pull request #10242 from zmstone/0326-fix-logging-avoid-using-pid-as-log-data-field
fix: avoid uisng 'pid' as log data field
2023-03-27 16:13:50 +02:00
Thales Macedo Garitezi 2f344ec9d3
docs: improve formatting
Co-authored-by: Zaiming (Stone) Shi <zmstone@gmail.com>
2023-03-27 11:02:59 -03:00
Stefan Strigler 64a1d84a44 fix: create consistent interface 'with_node' for API access 2023-03-27 12:14:48 +02:00
William Yang 70a1c25d0f docs: add changelogs feat-10077
Co-authored-by: Thales Macedo Garitezi <thalesmg@gmail.com>
2023-03-27 11:54:03 +02:00
JianBo He b77aeb69cb
Merge pull request #10172 from HJianBo/fix-typos-acl-file
fix(acl): fix wrong default ACL rules
2023-03-27 09:51:02 +08:00
Zaiming (Stone) Shi 19e136bb66 fix: avoid uisng 'pid' as log data field
Since it clashes with log metad data field
2023-03-26 10:33:18 +02:00
Zaiming (Stone) Shi b37f186142 Merge remote-tracking branch 'origin/master' into 0324-merge-release-50-back-to-master 2023-03-24 21:47:15 +01:00
Zaiming (Stone) Shi e59362a332 docs: fix both original and merged change logs 2023-03-24 21:39:04 +01:00
Thales Macedo Garitezi ff272a2071
Merge pull request #10206 from thalesmg/decouple-buffer-worker-query-call-mode-v50
feat(buffer_worker): decouple query mode from underlying connector call mode
2023-03-24 13:49:00 -03:00
SergeTupchiy f4472f66de
Merge pull request #10225 from SergeTupchiy/EMQX-9290-fix-plugin-name-clash
fix(emqx_management): resolve plugin name clashes
2023-03-24 16:17:20 +02:00
Serge Tupchii b02d0088ea fix(emqx_management): resolve plugin name clashes
Allow installing a plugin if its name matches the beginning of another (already installed) plugin name.
For example: if plugin "emqx_plugin_template_a" is installed, it must not block installing plugin "emqx_plugin_template".

Closes: #10213, EMQX-9290
2023-03-24 16:11:31 +02:00
Stefan Strigler 8d084ed13b
Merge pull request #10226 from sstrigler/EMQX-9273-e-5-0-2-creating-a-data-bridge-the-name-verification-returned-an-incorrect-error-code-of-500
fix(emqx_bridge): don't crash on validation error
2023-03-24 14:48:03 +01:00
Thales Macedo Garitezi 9031c398fb feat(helm): add option to customize `clusterIP`
Fixes https://github.com/emqx/emqx/issues/10223

Adds an option to set `clusterIP` to a fixed IP if the user wants
that.
2023-03-24 09:50:05 -03:00
Stefan Strigler fbfdaf44e0 fix(emqx_bridge): don't crash on validation error 2023-03-24 11:46:41 +01:00
JimMoen 1574b54666
chore: refine change for merged PRs 2023-03-24 11:17:34 +08:00
Thales Macedo Garitezi f8d5d53908 feat(buffer_worker): decouple query mode from underlying connector call mode
Fixes https://emqx.atlassian.net/browse/EMQX-9129

Currently, if an user configures a bridge with query mode sync, then
all calls to the underlying driver/connector ("inner calls") will
always be synchronous, regardless of its support for async calls.

Since buffer workers always support async queries ("outer calls"), we
should decouple those two call modes (inner and outer), and avoid
exposing the inner call configuration to user to avoid complexity.

There are two situations when we want to force synchronous calls to
the underlying connector even if it supports async:

1) When using `simple_sync_query`, since we are bypassing the buffer
workers;
2) When retrying the inflight window, to avoid overwhelming the
driver.
2023-03-23 13:40:31 -03:00
Stefan Strigler 678400bc0a fix: add summary to schemas where description has html 2023-03-23 16:40:43 +01:00
Stefan Strigler 2803aff798
Merge pull request #10207 from sstrigler/EMQX-9286-use-label-from-i-18-n-files-as-summary-for-open-api-spec
feat(emqx_dashboard): use label as summary in OpenAPI spec
2023-03-23 14:58:21 +01:00
Serge Tupchii 50bbf4f231 chore: bump ekka to 0.14.6
ekka 0.14.6 uses mria 0.4.2, which unregisters mnesia_hook upon stopping mria.
This fixes mnesia_hook errors on restarting mria.

Closes: EMQX-9101
2023-03-23 11:59:43 +02:00
JianBo He db97b36cd6
chore: update changes/ce/fix-10172.en.md
Co-authored-by: Andrew Mayorov <encube.ul@gmail.com>
2023-03-23 11:47:12 +08:00
Thales Macedo Garitezi ddffba0355
Merge pull request #10154 from thalesmg/fix-buffer-worker-default-req-timeout
fix(buffer_worker): calculate default `resume_interval` based on `request_timeout` and `health_check_interval`
2023-03-22 20:21:04 -03:00
Thales Macedo Garitezi cb65cded88 fix(last_will_testament): don't publish LWT if client is banned when kicked
Fixes https://emqx.atlassian.net/browse/EMQX-9288

Related issue:
https://github.com/emqx/emqx/issues/10192#issuecomment-1478809900
2023-03-22 16:47:58 -03:00
Stefan Strigler 944d456f94 chore: add changelog 2023-03-22 16:32:34 +01:00
Thales Macedo Garitezi 61cb03b45a fix(buffer_worker): change the default `resume_interval` value and expose it as hidden config
Also removes the previously added alarm for request timeout.

There are situations where having a short request timeout and a long
health check interval make sense, so we don't want to alarm the user
for those situations.  Instead, we automatically attempt to set a
reasonable `resume_interval` value.
2023-03-22 11:47:36 -03:00
Zaiming (Stone) Shi e43aa5d841
Merge pull request #10199 from zmstone/0321-merge-release-50-to-master
0321 merge release 50 to master
2023-03-22 10:20:48 +01:00
Zaiming (Stone) Shi db6afb40b0
Merge pull request #10174 from zmstone/0320-upgrade-esockd-to-5.9.6
fix: upgrade esockd from 5.9.4 to 5.9.6
2023-03-22 09:50:38 +01:00
Andrew Mayorov 5d31f85aec
chore: remove irrelevant changelog entry 2023-03-22 11:43:25 +03:00
Andrew Mayorov bf35419b52
Merge pull request #10190 from keynslug/fix/EMQX-9269/bridge-list
fix(bridge-api): unflatten nodes' bridge lists back
2023-03-22 00:53:03 +03:00
Zaiming (Stone) Shi e6091db351 Merge remote-tracking branch 'origin/release-50' into 0321-merge-release-50-to-master 2023-03-21 22:03:31 +01:00
Stefan Strigler 6c24b3a77d
Merge pull request #10196 from sstrigler/EMQX-9201-the-case-is-not-correct-for-some-of-menu
Emqx 9201 the case is not correct for some of menu
2023-03-21 19:42:10 +01:00
Thales Macedo Garitezi 4bbbaf8b13
Merge pull request #10164 from thalesmg/crl-v50-mkIII
feat(crl): add crl check support
2023-03-21 14:42:01 -03:00
Stefan Strigler 394a455903 chore: add changelog 2023-03-21 17:07:13 +01:00
Andrew Mayorov e2ff8c1c8f
chore: add changelog entry 2023-03-21 18:59:30 +03:00
Stefan Strigler c1384b6e6e feat(emqx_resource): include error with alarm for resource_down 2023-03-21 15:02:29 +01:00
Stefan Strigler 53825b9aba fix(emqx_bridge): propagate connection error to resource status 2023-03-21 15:02:29 +01:00
JianBo He 84636a3575 chore: improve changes 2023-03-21 09:10:20 +08:00
JianBo He b059bad08a
chore(acl): fully match `dashboard` username
Co-authored-by: Ilya Averyanov <av@rubybox.dev>
2023-03-21 09:06:46 +08:00
Thales Macedo Garitezi 7a71d64686 feat(crl): add crl check support 2023-03-20 18:09:38 -03:00
Zaiming (Stone) Shi 6f71898546 fix: upgrade esockd from 5.9.4 to 5.9.6
changes in esockd are

* 5.9.5: added API to retrieve SNI
* 5.9.6: avoid error log if socket is closed before sending
         proxy protocol headers
2023-03-20 19:27:32 +01:00
Thales Macedo Garitezi f9044a0959 docs(changelog): fix en changelog 2023-03-20 11:30:29 -03:00
Zaiming (Stone) Shi 2c6f977cac chore: delete old changelogs 2023-03-20 13:36:56 +01:00
Erik Timan 2d75c7d6d9 fix(emqx_bridge): remove metrics from non-dedicated bridge API endpoints
Metrics should only be exposed via the /bridges/:id/metrics endpoint,
and not in other operations such as getting the list of all bridges, or
in the response when a bridge has been created. This commit removes all
traces of metrics for the non-dedicated API endpoints.
2023-03-20 09:43:11 +01:00
JianBo He 5b9867dc13 chore: add changes 2023-03-20 14:01:05 +08:00
Ivan Dyachkov 66d8e4e1e2
Merge pull request #10139 from Rory-Z/feat/helm-support-extra-volume
feat(helm): helm chart support extraVolumeMounts and extraVolumes
2023-03-17 15:16:36 +00:00
Zaiming (Stone) Shi 2e762d1f50 docs: delete two change logs
10065 will be enabled in a future PR
10128 will have the code merged, but feature not exposed yet
2023-03-17 13:28:09 +01:00
Thales Macedo Garitezi 20414d7373 fix(buffer_worker): check request timeout and health check interval
Fixes https://emqx.atlassian.net/browse/EMQX-9099

The default value for `request_timeout` is 15 seconds, and the default
resume interval is also 15 seconds (the health check timeout, if
`resume_interval` is not explicitly given).  This means that, in
practice, if a buffer worker ever gets into the blocked state, then
almost all requests will timeout.

Proposed improvement:

- `request_timeout` should by default be twice as much as
health_check_interval.
- Emit a alarm if `request_timeout` is not greater than
`health_check_interval`.
2023-03-16 13:46:45 -03:00
Thales Macedo Garitezi 91a57faa95
Merge pull request #10128 from thalesmg/ocsp-v50-mkII
feat: add ocsp stapling support to mqtt ssl listener (5.0)
2023-03-16 13:10:48 -03:00
Thales Macedo Garitezi 75dad647a9
docs: improve descriptions
Co-authored-by: Zaiming (Stone) Shi <zmstone@gmail.com>
2023-03-16 09:57:01 -03:00
JimMoen d147299e23
chore: refine changes for merged PRs 2023-03-16 18:22:29 +08:00
Ivan Dyachkov f5a756a7a8
Merge pull request #10144 from id/fix-no-default-cookie-in-docker
fix: ensure cookie for emqx ctl
2023-03-15 15:44:51 +00:00
Thales Macedo Garitezi 0deb9925c1 docs: improve descriptions
Co-authored-by: William Yang <mscame@gmail.com>
2023-03-15 10:30:02 -03:00
zhongwencool 597bfbe310
chore: update changes/ce/fix-10130.en.md
Co-authored-by: Zaiming (Stone) Shi <zmstone@gmail.com>
2023-03-15 20:48:29 +08:00
Ivan Dyachkov d43ee0be60 chore: add changelog 2023-03-15 13:36:27 +01:00
Zhongwen Deng fc2ddc6349 chore: add changelog for configuration information on Dashboard is garbled 2023-03-15 20:36:09 +08:00
Rory Z 604ef774be feat(helm): helm chart support extraVolumeMounts and extraVolumes
Done of https://github.com/emqx/emqx/issues/10116
2023-03-15 16:41:40 +08:00
Thales Macedo Garitezi 52263a0448 feat: add ocsp stapling and crl support to mqtt ssl listener 2023-03-14 16:08:47 -03:00
Serge Tupchii bde4215a11 fix: copy plugins to a new node joining a cluster
Closes: EMQX-8889
2023-03-14 20:42:57 +02:00
zhongwencool 4f1da5e9fa
Merge pull request #10132 from zhongwencool/systemd-stop-crash-log
fix: stop port apps when emqx_machine_terminator shutdown
2023-03-14 17:40:26 +08:00
Zhongwen Deng 4b46c35e74 chore: add changelog 2023-03-14 15:53:32 +08:00
Zhongwen Deng 80205d9704 chore: apply code review 2023-03-14 10:54:05 +08:00
Zhongwen Deng cec399c602 chore: add changelog for statsd.server 2023-03-14 09:17:46 +08:00
Kjell Winblad 87ede1b1f7
Merge pull request #10124 from kjellwinblad/kjell/mongodb/default_heartbeat
fix: increase heartbeat time to avoid extreme MongoDB logging
2023-03-13 18:56:49 +01:00
Stefan Strigler 62aec87c56
Merge pull request #10107 from sstrigler/EMQX-9147-bridges-api-fix-handling-unknown-bridge-id
Bridges API: fix handling unknown bridge-id
2023-03-13 16:40:46 +01:00
Kjell Winblad 1cf01197bb fix: increase heartbeat time to avoid extreme MongoDB logging
Our MongoDB driver creates a new temporary connection, for every active
connection, to just do a single heartbeat test. There is configurable
delay between every heartbeat test. When the user has an EMQX cluster
with a MongoDB bridge (to a MongoDB replica set), there will be a lot of
connections. Furthermore, as MongoDB creates a log entry every time a
new connection is created, the log will be flooded with info about new
connection. One user have reported more than 1MB of log data in a 10
minute period.

This commit tries to fix this by increasing the default delay between
heartbeats. A better fix would be to change the MongoDB driver so that
it does not create a new connection just to do a heartbeat check, but
this is more complicated so we leave this to the future. We might also
swap out the current MongoDB driver to something better.

Fixes:
https://github.com/emqx/emqx/issues/9851
2023-03-13 14:58:53 +01:00
Stefan Strigler 18c3b9bb1c style: fix wording 2023-03-13 11:14:59 +01:00
Kjell Winblad baf39fe080
Merge pull request #10098 from kjellwinblad/kjell/fix/mongo_authz_crash
fix: mongodb authz crash
2023-03-13 10:46:49 +01:00
Stefan Strigler cf73aacd7b chore: add changelog 2023-03-13 10:38:51 +01:00
ieQu1 e3595f2e79 chore(mria): Bump version to 0.4.0 2023-03-11 00:37:25 +01:00
Ilya Averyanov 5650ad20f8
Merge pull request #10100 from savonarola/0308-fix-scram-auth
Fix channel crash for slow clients with enhanced authentication
2023-03-10 12:58:43 +02:00
Ivan Dyachkov 951e89134c Merge remote-tracking branch 'upstream/release-50' into 0310-merge-release-50-to-master 2023-03-10 08:48:32 +01:00
Zaiming (Stone) Shi f231042e76 chore: Generate changelog for e5.0.1 and v5.0.20 2023-03-09 18:47:02 +01:00
Ilya Averyanov cba0287439 fix(mqtt): fix channel crash for slow clients with enhanced authn 2023-03-09 17:27:24 +02:00
Kjell Winblad aa57ea9ee1 fix: mongodb authz crash
This fixes a crash with an error in the log file (see below) that
happened when the MongoDB authorization module queried the database. The
reason is that the collection name that was sent to the mongodb
connection was an atom. This is fixed by making sure it is not an atom.

2023-03-08T17:16:34.215523+01:00 [error] msg: query_mongo_error, mfa:
emqx_authz_mongodb:authorize/4, line: 95, peername: 127.0.0.1:53212,
clientid: client123, collection: mqtt_acl, filter: #{username =>
<<"emqx_u">>}, reason: {resource_error,#{msg => #{error =>
{error,{error_cannot_parse_response,{op_msg_response,#{<<"code">> =>
73,<<"codeName">> => <<"InvalidNamespace">>,<<"errmsg">> => <<"Failed to
parse namespace element">>,<<"ok">> => 0.0}}}},id =>
<<"emqx_authz_mongodb:3">>,name => call_query,request =>
{find,mqtt_acl,#{username => <<"emqx_u">>},#{}},stacktrace =>
[{mc_connection_man,reply,1,[{file,"mc_connection_man.erl"},{line,123}],
...]}, reason => exception}}, resource_id: <<"emqx_authz_mongodb:3">>

Fixes: https://github.com/emqx/emqx/issues/9783
2023-03-09 16:01:23 +01:00
JimMoen 0c5e95e2d0
chore: refine change log for few PRs
PR#10032, PR#10044, PR#10054, PR#10056
2023-03-09 10:30:11 +08:00
Zaiming (Stone) Shi fe27604010 Merge remote-tracking branch 'origin/release-50' into 0308-merge-release-50-back-to-master 2023-03-08 16:46:45 +01:00
Zaiming (Stone) Shi ac6325c823 docs: add change log for PR 10086 2023-03-08 12:56:12 +01:00
Zaiming (Stone) Shi 116137a447
docs: fix typos in change log
Co-authored-by: Ivan Dyachkov <dev@dyachkov.org>
2023-03-07 21:58:05 +01:00
Zaiming (Stone) Shi 158b4a95df
Merge pull request #10079 from qzhuyan/fix/william/i18n-broker_shared_subscription_strategy
fix: i18n desc of broker_shared_subscription_strategy
2023-03-07 21:57:07 +01:00
Zaiming (Stone) Shi 93ebd59fb2 docs: add changelogs for PR 10076 2023-03-07 20:57:38 +01:00
Stefan Strigler 609cd01a35
Merge pull request #10085 from sstrigler/EMQX-8552-authorization-sources-type-status-move-shouldnt-exist-when-authorization-sources-type-doesnt-exist
emqx_authz API: return 404 for all requests on non existent source
2023-03-07 16:19:28 +01:00
Stefan Strigler 71cb3be1d0 chore: fix translation 2023-03-07 15:12:51 +01:00
Stefan Strigler e1054be319 chore: add changelog 2023-03-07 13:56:22 +01:00
ieQu1 0e9665fd99
fix(changelog): Apply suggestions from code review
Co-authored-by: William Yang <mscame@gmail.com>
2023-03-07 12:22:57 +01:00
ieQu1 6f88cb7d9e chore(ekka): Bump version to 0.14.3 2023-03-07 12:07:07 +01:00
zhongwencool 0a5b221984
Merge pull request #10055 from zhongwencool/fix-max-awaiting-rel
fix: update max_awaiting_rel in session
2023-03-07 18:37:20 +08:00
William Yang 2b1cf2fa52
Merge pull request #10058 from qzhuyan/dev/william/deprecated-unsupp-quic-TLS-options
fix: deprecate unsupp quic TLS options
2023-03-07 09:29:52 +01:00
William Yang 422f8e3be3
Merge pull request #10078 from qzhuyan/fix/william/inval-listener-options-segfault
fix: inval listener option cause segfault
2023-03-07 09:26:27 +01:00
Zhongwen Deng 00bfc66e91 chore: add changelog for mqtt.max_awaiting_rel 2023-03-07 10:53:16 +08:00
William Yang c283902a62 docs(quic): changelogs. 2023-03-06 16:29:35 +01:00
William Yang 1912027eb5 docs: changelogs 2023-03-06 16:28:28 +01:00
Stefan Strigler a81d1a4618
Merge pull request #10066 from sstrigler/EMQX-8932-bridge-api-reports-500-for-most-errors-when-starting-a-resource
fix: return human readable error message for most common cases
2023-03-06 14:13:34 +01:00
Stefan Strigler d0ea7f4647 fix(emqx_authz): check if type param matches type in body 2023-03-06 11:10:31 +01:00
Zaiming (Stone) Shi a4aece396a
Merge pull request #10052 from zmstone/0301-optimize-boot-error-log
0301 optimize boot failure logs
2023-03-06 08:32:15 +01:00
Stefan Strigler 570bf165af fix: return human readable error message for most common cases 2023-03-03 16:49:09 +01:00
Stefan Strigler 072d310507 style: fix zn translation 2023-03-03 09:32:28 +01:00
Stefan Strigler 64b5e9585e feat(emqx_rule_engine): API format errors in a human readable way 2023-03-02 16:49:11 +01:00
William Yang 6649a4f7d1 docs: add change logs 2023-03-02 15:57:01 +01:00
Zaiming (Stone) Shi 4eb9a69df0 feat(bin/emqx): diagnose boot failure
Prior to this change, when EMQX daemon mode failed to start
it's not quite easy for users to understand what went wrong.
All the know is the node did not start in time
and then instructed to boot the node in 'console' mode wishing
for some logs.
However, the node might actuay be running, causing 'console' mode
to fail with a different reason.

With this change, after a filure of daemon mode boot,
we issue a diagnosis.
1. if node can not be found from ps -ef, instruct the user
   to find information in erlang.log.N
2. if the node is found running, but not responding to pings
   instruct the user to check if the node name is
   resolvable and reachable
3. if the node is responding to pings but emqx app is not
   running, then it's likely a bug. so the user is advised
   to report a github issue.
2023-03-02 14:46:09 +01:00
Stefan Strigler 8bdef1300b
style: fix punctuation changes/ce/fix-10056.en.md
Co-authored-by: ieQu1 <99872536+ieQu1@users.noreply.github.com>
2023-03-02 12:16:17 +01:00
Stefan Strigler 57ea098d90 chore: add changelog 2023-03-02 11:30:38 +01:00
Stefan Strigler 9fb74bfc87
Merge pull request #10050 from sstrigler/EMQX-9063-bridges-api-consistently-return-404-if-resource-does-not-exist
fix: consistently return 404 in case bridge is not found or invalid
2023-03-02 11:20:56 +01:00
Stefan Strigler 3f324f85bc fix: consistently return 404 in case bridge is not found or invalid
Also: fix some typos and be more verbose
2023-03-01 18:03:49 +01:00
Zaiming (Stone) Shi a5f31d0bf4 Merge remote-tracking branch 'origin/master' into 0301-merge-release-50-to-master 2023-03-01 14:04:29 +01:00
Stefan Strigler bc1750703a chore: add changelog for PR 10013 2023-03-01 12:54:36 +01:00
Stefan Strigler c9f8e3ca03 chore: add changelog for PR 10014 2023-03-01 12:49:21 +01:00
Zaiming (Stone) Shi fdc0ad6669
Merge pull request #10044 from zmstone/0228-fix-node-info-format
fix(emqx_mgmt): format stoped nodes correctly
2023-03-01 11:39:09 +01:00
Zaiming (Stone) Shi c616192578
docs: Update changes/ce/fix-10044.zh.md
Co-authored-by: William Yang <mscame@gmail.com>
2023-03-01 09:39:16 +01:00
Zaiming (Stone) Shi 083330ad80 Merge remote-tracking branch 'origin/master' into 0301-merge-release-50-to-master 2023-03-01 08:53:03 +01:00
Zaiming (Stone) Shi 8d63c6c08d
Merge pull request #10041 from zmstone/0228-add-influx-line-protocol-desc
0228 add influx line protocol desc
2023-03-01 08:44:26 +01:00
Zaiming (Stone) Shi ceec7e9707
Merge pull request #10027 from zmstone/0224-fix-docker-entrypoint-env-overrides
0224 fix docker entrypoint env overrides
2023-03-01 08:10:55 +01:00
Zaiming (Stone) Shi a64f712353
Merge pull request #10043 from zmstone/0228-fix-ssl-dist-optfile
0228 fix ssl dist optfile
2023-03-01 00:33:23 +01:00
Zaiming (Stone) Shi 23fb924e54 docs: add changelogs 2023-02-28 21:53:32 +01:00
Zaiming (Stone) Shi a8d48bf571
docs: Update changes/ce/fix-10043.en.md
Co-authored-by: Thales Macedo Garitezi <thalesmg@gmail.com>
2023-02-28 21:42:06 +01:00
Zaiming (Stone) Shi 8331c8fff0 docs: add changelogs 2023-02-28 21:40:48 +01:00
Zaiming (Stone) Shi 4bc63a6103 docs: add changelogs 2023-02-28 21:17:07 +01:00
ieQu1 1554305236
fix(changelog): Apply suggestions from code review
Co-authored-by: Zaiming (Stone) Shi <zmstone@gmail.com>
2023-02-28 20:29:34 +01:00
ieQu1 f80c4e4084 chore(ekka): Bump version to 0.14.2 (mria 0.3.3) 2023-02-28 20:14:13 +01:00
William Yang 3a58a77bcd docs: add change logs 2023-02-28 14:55:45 +01:00
William Yang d775e6aaa7 chore: changelog translation fix. 2023-02-28 14:55:45 +01:00
Ivan Dyachkov ead29593df chore: update changelog 2023-02-27 23:16:30 +01:00
Ivan Dyachkov 78540fd0df chore: add changelog 2023-02-27 23:16:30 +01:00
Zaiming (Stone) Shi f749e1654a
Merge pull request #10018 from id/0222-chore-add-changelog-for-9986
chore: add changelog for #9986
2023-02-27 14:55:12 +01:00
Andrew Mayorov 3157a64eae
chore: add a changelog entry 2023-02-27 14:55:42 +03:00
Ivan Dyachkov ea5116740b chore: fix translation for #9213 2023-02-27 10:04:45 +01:00
Ivan Dyachkov 6ad31f7ada chore: add changelog for #9986 2023-02-27 10:03:41 +01:00
firest 2ea589648e chore: update changes 2023-02-27 11:41:40 +08:00
Zaiming (Stone) Shi df7e9db057
Merge pull request #10019 from qzhuyan/dev/william/quic-hidden-low-level-tunings
230222 feat(quic): add hidden low level settings for listeners.
2023-02-24 20:03:31 +01:00
Zaiming (Stone) Shi 80afb69bb2
Merge pull request #10015 from zmstone/0220-faile-fast-if-cookie-is-obviously-wrong
0220 fail fast if cookie is obviously wrong
2023-02-24 19:54:35 +01:00
Zaiming (Stone) Shi 79bf77c2f1
Merge pull request #10020 from zmstone/0222-fix-bridge-async-mode-counters
fix(bridge): fix dropped counter and inflight gauge
2023-02-24 19:51:24 +01:00
Zaiming (Stone) Shi 9bb5abf44a fix(docker-entrypoint.sh): allow setting EMQX_NODE__NAME for docker
Prior to this change EMQX_NODE__NAME is ignored by docker entrypoint
script which will in turn set EQMX_NODE_NAME by resolving
the node name and domain name respectively.
2023-02-24 16:01:38 +01:00
William Yang ea65ec10bf feat(quic): add hidden low level settings for listeners. 2023-02-24 10:20:28 +01:00
Zaiming (Stone) Shi a638cc1d74 docs: add change logs 2023-02-24 09:11:45 +01:00
Ilya Averyanov 5bfd690df6 fix(dashboard): fix swagger spec generation 2023-02-23 22:09:36 +02:00
Zaiming (Stone) Shi d298d603ac
Merge pull request #9999 from zmstone/0220-add-change-logs
docs: add missing changelogs for 9939
2023-02-23 16:02:06 +01:00
Zaiming (Stone) Shi 2811c371ad docs: add changelogs 2023-02-22 22:18:44 +01:00
ieQu1 b0777ca73b chore(ekka): Bump version 2023-02-22 20:55:04 +01:00
Ivan Dyachkov 6fd11904ee chore: add changelog for #9213 2023-02-22 10:10:56 +01:00
Stefan Strigler 7502e57066 chore: add changelog 2023-02-21 10:41:59 +01:00
Zaiming (Stone) Shi 88f099cc6f docs: add missing changelogs for 9939 2023-02-20 14:32:00 +01:00
William Yang 34869434d7 chore(quic): move changelog dir 2023-02-20 10:53:51 +01:00
firest 2e6aa6388f chore: update changelogs 2023-02-17 20:50:57 +08:00
firest 6599c44213 chore: refactor the format-changelog script 2023-02-16 15:25:31 +08:00