Andrew Mayorov
cf45e80c71
feat(topicidx): iterate on trie search implementation
...
This improves matching performance and decreases GC pressure on
synthetic workloads.
2023-08-25 01:47:11 +04:00
Kjell Winblad
9fe5080705
build: bump versions before release
2023-08-24 16:46:27 +02:00
Zaiming (Stone) Shi
62423b0b12
refactor(topic_index): less special handling for leading $ words
2023-08-24 13:30:10 +02:00
Zaiming (Stone) Shi
a30d87e14f
refactor(topic_index): remove more unnecessary next calls
...
also avoid using records (setelement) for recursive return values
2023-08-24 12:25:04 +02:00
Zaiming (Stone) Shi
a1e6635614
refactor(topic_index): no forced ceiling entry in index table
2023-08-24 12:25:04 +02:00
Zaiming (Stone) Shi
f4c8c6be55
refactor(topic_index): optimize trie-search performance
2023-08-24 12:25:04 +02:00
Zaiming (Stone) Shi
6b152b3cb7
test: add more debug output
2023-08-24 12:25:04 +02:00
zhongwencool
2322b27542
Merge pull request #11497 from zhongwencool/prometheus-metrics
...
Prometheus metrics
2023-08-24 12:06:32 +08:00
zhongwencool
8d2be27ade
chore: add changlog for 11466
2023-08-24 06:46:50 +08:00
zhongwencool
84dd3b83bb
fix: hocon converter not working when make_serializable is true(check_plain)
2023-08-24 06:46:47 +08:00
zhongwencool
d287b736ec
chore: add changelog for 11497
2023-08-23 17:02:30 +08:00
zhongwencool
6bb15541c7
feat: rename olp metrics to overload_protection metrics
2023-08-23 15:25:54 +08:00
zhongwencool
b9a97923c4
feat: add some authz/connection missing metrics
2023-08-23 14:47:53 +08:00
zhongwencool
ae10415fc3
feat: disabled the Erlang VM Prometheus exporter by default to improve performance and security
2023-08-23 09:03:22 +08:00
Thales Macedo Garitezi
ee2897e5de
test(refactor): move test to integration tests dir
2023-08-22 13:29:15 -03:00
Thales Macedo Garitezi
c1f49abad2
test: fix inter-suite flakiness
2023-08-22 13:29:15 -03:00
Thales Macedo Garitezi
dad27091be
test: rm custom option
2023-08-22 13:29:15 -03:00
Thales Macedo Garitezi
65085d012b
refactor: rename fn
2023-08-22 13:29:15 -03:00
Thales Macedo Garitezi
c46b8de938
test: remove unused things, refactor some functions
2023-08-22 13:29:15 -03:00
Thales Macedo Garitezi
e8c73b06e1
docs: add comment about future test failure
2023-08-22 13:29:15 -03:00
Thales Macedo Garitezi
6de0bbe76a
test(refactor): always allocate listeners for emqx app
2023-08-22 13:29:15 -03:00
Thales Macedo Garitezi
a15405a800
test: fix assertions
2023-08-22 13:29:15 -03:00
Thales Macedo Garitezi
c74abe79d0
refactor: reduce arity
2023-08-22 13:29:15 -03:00
Thales Macedo Garitezi
021755b82b
refactor: rm iterators from DS `#session{}` record
2023-08-22 13:29:15 -03:00
Thales Macedo Garitezi
e4e88ebf36
test: add scenario for node stopping midway during subscribe
2023-08-22 13:29:15 -03:00
Thales Macedo Garitezi
c28c6d1b7e
fix: ensure iterator is opened
2023-08-22 13:29:15 -03:00
Thales Macedo Garitezi
33ddbe80ad
refactor: remove persistence leakeage from emqx_cm level
2023-08-22 13:29:15 -03:00
Thales Macedo Garitezi
e8d7bb9a67
refactor: rename module
2023-08-22 13:29:15 -03:00
Thales Macedo Garitezi
9463e271c0
feat(ds): open iterators when handling `SUBSCRIBE` packets
...
Fixes https://emqx.atlassian.net/browse/EMQX-9741
2023-08-22 13:29:15 -03:00
Ilya Averyanov
ed67303281
Merge pull request #11382 from savonarola/0801-auth-refactor
...
Auth refactor stage 1
2023-08-21 00:24:15 +03:00
Ivan Dyachkov
e2b9d905d7
Merge pull request #11465 from id/0718-e5.2.0-alpha.3
2023-08-17 20:59:13 +02:00
Andrew Mayorov
75ed6aa8e7
Merge pull request #11396 from keynslug/ft/EMQX-10712/ruleeng-topic-index-vol-2
...
perf(ruleeng): employ `emqx_topic_index` to speed up topic matching
2023-08-17 20:43:09 +04:00
Ivan Dyachkov
a0c2fe8cc1
chore: e5.2.0-alpha.3
2023-08-17 17:55:56 +02:00
lafirest
5e448f5a02
Merge pull request #11446 from lafirest/refactor/calendar
...
refactor(calendar): refactor datetime-related code and remove redundant
2023-08-17 07:40:44 +08:00
Andrew Mayorov
5d79823891
perf(topicidx): preserve next key on the stack to reuse later
...
This should further optimize the number of `ets:next/2` calls
required for a single match query.
2023-08-17 01:13:19 +04:00
Thales Macedo Garitezi
f03733ba6b
Merge pull request #11460 from thalesmg/integration-tests-dir-20230816
...
ci: add `integration_test` dir to `emqx` application
2023-08-16 17:47:14 -03:00
Ilya Averyanov
3943830eae
chore(auth): remove unnecessary atom conversions
2023-08-16 20:50:35 +03:00
Ilya Averyanov
0dae040047
chore(auth): restore injected schema key position
2023-08-16 20:50:35 +03:00
Ilya Averyanov
db31e5f0d9
chore(auth): tidy up the code
2023-08-16 20:50:35 +03:00
Ilya Averyanov
67e06b3171
chore(auth): make schema injection be more universal
2023-08-16 20:41:05 +03:00
Ilya Averyanov
f00f4568dc
chore(auth): simplify schema injection
2023-08-16 20:41:05 +03:00
Ilya Averyanov
8a3e8ee528
chore(auth): add config propagation tests for authn
2023-08-16 20:41:05 +03:00
Ilya Averyanov
128aa19d47
chore(auth): improve emqx_config_handler to replace adhoc config updates
2023-08-16 20:41:05 +03:00
Ilya Averyanov
8213aa42c9
chore(auth): move authn leftovers to the authn app
2023-08-16 18:52:14 +03:00
Ilya Averyanov
ca8c1e3ef8
chore(auth): removed direct usages of authn from emqx core app
2023-08-16 18:52:14 +03:00
Ilya Averyanov
ce2b159022
chore(auth): make pre_hook_authenticate be part of emqx_access_control domain
2023-08-16 18:52:14 +03:00
zhongwencool
e6f0dead9e
Merge pull request #11445 from zhongwencool/remove-os-mon-from-windows
...
fix: remove os_mon application in Windows release
2023-08-16 23:30:24 +08:00
Thales Macedo Garitezi
a6a023eff7
ci: add `integration_test` dir to `emqx` application
...
This gives us a place where to put tests that exercise multiple umbrella application,
which is more closely related to `emqx`, but in a way that doesn't affect the standalone
app tests.
2023-08-16 11:48:47 -03:00
Andrew Mayorov
c84ee66d80
Merge pull request #11450 from keynslug/fix/dirty-testsuite-flapping
...
fix(test): switch `emqx_flapping_SUITE` to cth tooling
2023-08-16 17:20:31 +04:00
zhongwencool
78356d2625
chore: start os_mon in handle_continue/2
2023-08-16 20:54:53 +08:00
zhongwencool
8b23ee86b3
fix: hide cpu_status if os_check is not supported
2023-08-16 20:49:28 +08:00
zhongwencool
b817e03c08
fix: start os_mon application temporary
2023-08-16 20:49:27 +08:00
zhongwencool
848eb7e3c3
fix: remove os_mon application in Windows release
2023-08-16 20:49:27 +08:00
zhongwencool
b733adca06
fix: allow empty cacertfile pem
2023-08-16 20:15:21 +08:00
zhongwencool
1af0407c48
fix: don't crash when debug huge payload
2023-08-16 15:35:09 +08:00
firest
b08102269a
refactor(calendar): refactor datetime-related code and remove redundant
2023-08-16 10:55:46 +08:00
Andrew Mayorov
0b21b87296
fix(test): switch `emqx_flapping_SUITE` to cth tooling
2023-08-15 21:29:42 +04:00
Andrew Mayorov
5560e6ed4f
fix(cthsuite): also prevent `emqx` from loading default conf
2023-08-15 21:25:39 +04:00
Thales Macedo Garitezi
5d707c8b7d
Merge pull request #11403 from thalesmg/gcp-produ-attr-20230728
...
feat(gcp_producer): add support for defining message attributes and ordering key
2023-08-15 13:22:31 -03:00
Zaiming (Stone) Shi
fa9e9f3348
Merge pull request #11442 from zmstone/0814-sync-release-52-to-master
...
0814 sync release 52 to master
2023-08-15 16:21:55 +02:00
Andrew Mayorov
e39bbf4c49
chore(topicidx): add more descriptive comments and specs
...
To (hopefully) better illustrate what is happening there.
2023-08-15 16:55:48 +04:00
Thales Macedo Garitezi
82b8538041
feat(gcp_producer): add support for defining message attributes and ordering key
...
Fixes https://emqx.atlassian.net/browse/EMQX-10652
2023-08-14 10:33:17 -03:00
lafirest
1bda8020f5
Merge pull request #11436 from lafirest/feat/banned_clear
...
feat(banned): add a new API used to clear all banned data
2023-08-14 20:48:43 +08:00
Andrew Mayorov
9a249e4b01
test(topicidx): increase test coverage
2023-08-14 15:36:58 +04:00
Andrew Mayorov
fd0986071c
perf(topicidx): implement fast-forwarding prefixes
...
This should give less `ets:next/2` calls in general and much less
when index has relatively small number of long non-wildcard topics.
2023-08-14 15:36:58 +04:00
Andrew Mayorov
0c7bdbdab4
test(topicidx): add property test
...
Co-Authored-By: JianBo He <heeejianbo@gmail.com>
2023-08-14 15:36:57 +04:00
Andrew Mayorov
48a50c9137
fix(topicidx): fix missing matches when 'a/b' and 'a/b/#' both exist
...
Thanks to @HJianBo for spotting this issue. The approach to fix it
is different though: we try to keep the "recurrency branch factor"
to a minimum, instead introducing new condition for the case when
filter does not match, but iteration with `ets:next/2` is not yet
finished for the prefix.
Co-Authored-By: JianBo He <heeejianbo@gmail.com>
2023-08-14 15:36:57 +04:00
Andrew Mayorov
6a13406363
fix(topicidx): use custom topic words to keep required ordering
...
Otherwise, topic with empty tokens (e.g. `a/b///c`) would have
some of their tokens ordered before `#` / `+`, because empty
token was represented as empty atom (`''`).
2023-08-14 15:36:57 +04:00
Andrew Mayorov
28bcb394d1
fix(topicidx): allow to return matches unique by record id
2023-08-14 15:36:57 +04:00
Andrew Mayorov
8feda315f6
feat(index): add topic index facility
...
Somewhat similar to `emqx_trie` in design and logic, yet built on
top of a single, potentially pre-existing table.
2023-08-14 15:36:54 +04:00
Zaiming (Stone) Shi
970ff28200
Merge remote-tracking branch 'origin/master' into release-52
2023-08-14 11:50:40 +02:00
zhongwencool
41180170f4
fix: update error msg
2023-08-14 15:45:57 +08:00
zhongwencool
e10f9e5e9b
feat: change mqtt.max_packet_size type from string to bytesize
2023-08-14 10:10:46 +08:00
lafirest
b8d3dcf59a
Merge pull request #11424 from lafirest/fix/epoch_maximum_val
...
fix(datetime): make sure the epoch is not larger than the maximum supported value
2023-08-11 20:37:56 +08:00
firest
749c2d075f
chore: update changes && bump app version
2023-08-11 17:57:27 +08:00
firest
bc417a6764
fix(datetime): make sure the epoch is not larger than the maximum supported value
2023-08-11 17:57:21 +08:00
firest
2fc0468e0c
feat(banned): add a new API used to clear all banned data
2023-08-11 17:25:49 +08:00
Ivan Dyachkov
7852af896c
chore: e5.2.0-alpha.1
2023-08-11 11:16:30 +02:00
Ivan Dyachkov
bab05b6613
Merge pull request #11433 from id/0811-ci-upgrade-push-helm-action
2023-08-11 11:03:00 +02:00
Ivan Dyachkov
b6084b0001
chore: bump apps/emqx version
2023-08-11 09:19:51 +02:00
lafirest
4eaced241d
Merge pull request #11423 from lafirest/chore/limiter_utils
...
fix(limiter): simplify the code of the limiter
2023-08-11 15:17:42 +08:00
Ivan Dyachkov
801c93dd46
chore: v5.1.5-build.3
2023-08-10 12:56:28 +02:00
Ivan Dyachkov
6ead09b28d
chore: merge 'upstream/master'
2023-08-10 12:56:00 +02:00
firest
6dbddfb089
fix(limiter): simplify the code of the limiter
...
move runtime code out from the schema
2023-08-10 18:20:05 +08:00
zhongwencool
aa798e531e
Merge pull request #11409 from zhongwencool/opentelemetry-metrics
...
feat: support opentelemetry metrics
2023-08-10 14:35:25 +08:00
zhongwencool
5a4dd3a5e5
fix: truncate large payload
2023-08-10 09:35:12 +08:00
zhongwencool
d5fe891961
fix: don't be kill when send large payload when log is debug
2023-08-10 09:22:30 +08:00
Thales Macedo Garitezi
bb8ce68c2e
docs: Generate changelog for v5.1.5-patch.2
2023-08-09 16:38:28 -03:00
Thales Macedo Garitezi
95df958f10
docs: Generate changelog for v5.1.5-patch.1
2023-08-09 13:18:09 -03:00
Thales Macedo Garitezi
cce0d144f9
Merge branch 'master' into release-v515-patch1-20230809
2023-08-09 13:08:43 -03:00
zhongwencool
3933227636
feat: support opentelemetry metrics
2023-08-09 20:23:40 +08:00
lafirest
bef8eddad3
Merge pull request #11405 from lafirest/fix/kal_kialo
...
fix(calendar): make date parse error reason more sense
2023-08-09 14:42:08 +08:00
Thales Macedo Garitezi
fdfdb105f0
docs: Generate changelog for v5.1.5
2023-08-08 10:33:34 -03:00
Thales Macedo Garitezi
a1ffd0263d
fix(cacerts): add `cacerts` back as deprecated to allow upgrading from older versions
...
See https://github.com/emqx/emqx/issues/11380
2023-08-08 10:13:13 -03:00
firest
9f38f5f26a
fix(calendar): make date parse error reason more sense
2023-08-08 14:28:38 +08:00
lafirest
2b03436552
Merge pull request #11392 from lafirest/feat/ldap_authz
...
feat(ldap-authz): integrate the LDAP authorization
2023-08-07 11:12:05 +08:00
zhongwencool
665695a977
Merge pull request #11388 from SergeTupchiy/EMQX-10703-fix-replicant-crash-when-core-terminates-abnormally
...
fix: increase emqx_router_sup restart intensity
2023-08-06 14:40:32 +08:00
Serge Tupchii
2b7798608d
fix(emqx_router_helper): don't cleanup down node on a replicant
...
The cleanup on a replicant node is redundant, as Mria would delegate this delete op
to a core node (via RPC), and the core node is expected to receive the same
`nodedown` message and process it.
2023-08-04 16:55:36 +03:00
SergeTupchiy
2044326734
Merge pull request #11390 from SergeTupchiy/EMQX-10661-improve-perf-high-latency-cluster-network
...
EMQX-10661 improve performance on high latency cluster network
2023-08-04 16:41:08 +03:00
firest
b24a9d5343
chore(ldap-authz): update apps version && changes
2023-08-04 18:14:09 +08:00
Serge Tupchii
f276ea9e91
fix: 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 may fail,
if the core node is being stopped / restarted / not ready.
Fixes: EMQX-10703, #11310
2023-08-04 10:49:59 +03:00
firest
7055eafb91
fix(ldap): fix license date and some minor problems
2023-08-04 11:01:13 +08:00
Serge Tupchii
466fe7e009
perf: add broker_pool_size, generic_pool_size and channel_cleanup_batch_size config options
...
Tuning these options can improve performance if cluster interconnect network latency is high.
Fixes: EMQX-10661
2023-08-03 19:44:00 +03:00
Andrew Mayorov
39bb9d5136
chore: bump ekka to 0.15.10
...
Which sports mria 0.6.0 with dirty activities support.
2023-08-03 11:38:53 +04:00
Ivan Dyachkov
0f161a81c3
chore: v5.1.4
2023-08-01 09:20:46 +02:00
Thales Macedo Garitezi
7687770821
fix(tls): remove `cacerts` config for now
...
Fixes https://github.com/emqx/emqx/issues/11370
Related: https://github.com/emqx/emqx/pull/11371
2023-07-31 10:44:05 -03:00
Thales Macedo Garitezi
a3be1529c6
fix(schema): ensure enterprise module is correctly loaded
...
Fixes https://emqx.atlassian.net/browse/EMQX-10654
Despite loading the application in `nodetool`, we need to invoke `:module_info()` to force
the module to be actually loaded, especially when it's called in `call_hocon` to generate
the initial configurations. Otherwise, it'll fail to list all the bridge schemas.
2023-07-28 16:27:43 -03:00
Thales Macedo Garitezi
2ee1aa6d60
Merge pull request #11347 from thalesmg/fix-ocsp-path-encoding-20230725
...
fix(ocsp): URL encode request path
2023-07-28 09:01:39 -03:00
Ivan Dyachkov
d51b5b739b
chore: v5.1.3
2023-07-27 17:00:20 +02:00
Ivan Dyachkov
5ac01c9b85
Merge pull request #11360 from id/0727-sync-release-51-to-master
2023-07-27 16:58:09 +02:00
Thales Macedo Garitezi
ee3d002fca
Merge pull request #11329 from thalesmg/aeh-bridge-20230720
...
feat: add Azure Event Hub Producer bridge
2023-07-27 11:18:40 -03:00
Ivan Dyachkov
cbfca8c043
chore: merge master into release-51
2023-07-27 15:19:57 +02:00
Ivan Dyachkov
50a0900d92
chore: e5.1.1
2023-07-27 12:18:03 +02:00
Thales Macedo Garitezi
d3d52695d5
feat(tls): automatically add `cacerts` to client opts
...
`public_key:cacerts_get/0` was introduced in OTP 25 and allows us to
load the system trusted CA certificates.
https://www.erlang.org/doc/man/public_key.html#cacerts_get-0
2023-07-25 17:43:33 -03:00
Thales Macedo Garitezi
d0deaca00d
fix(ocsp): URL encode request path
...
Fixes https://emqx.atlassian.net/browse/EMQX-10624
2023-07-25 17:39:38 -03:00
Serge Tupchii
77184c00ff
chore(ekka): Bump version to 0.15.9
2023-07-25 19:29:18 +03:00
Ivan Dyachkov
f9d3d3325b
chore: e5.1.1-rc.1
2023-07-25 16:34:25 +02:00
Ilya Averyanov
deaac9bd73
fix(authz): correctly identify qos of subscribe actions
2023-07-25 15:20:52 +03:00
firest
8439ce0e84
chore: update app version && reboot_lists
2023-07-24 19:08:41 +08:00
Andrew Mayorov
81793c31fc
Merge pull request #11315 from keynslug/ft/EMQX-9593/peek-mqueue-info
...
refactor(session): allow peeking at mqueue less intrusively
2023-07-24 09:57:05 +02:00
Ivan Dyachkov
29432009db
chore: 5.1.1-alpha.4
2023-07-21 18:42:14 +02:00
ieQu1
485e495b98
chore(ekka): Bump version to 0.15.8 (mria 0.5.10)
2023-07-21 18:31:02 +02:00
Ivan Dyachkov
c2c3da073f
chore: v5.1.2
2023-07-21 13:26:29 +02:00
Ivan Dyachkov
243b8f5b67
chore: merge 'upstream/master' into v5.1.2
2023-07-21 13:25:46 +02:00
zhongwencool
520ae0e9d3
chore: remove zone desc from document
2023-07-21 15:51:21 +08:00
zhongwencool
d3e4fda21d
fix: hocon_pp quote string for special char
2023-07-21 12:31:22 +08:00
Andrew Mayorov
e1e4c64a30
refactor(session): allow peeking at mqueue less intrusively
2023-07-20 21:21:30 +02:00
Andrew Mayorov
f2a32e8ed2
Merge pull request #11304 from keynslug/ft/EMQX-9593/ds-session-connect
...
refactor(session): minimize `emqx_session` interface surface
2023-07-20 14:33:21 +02:00
SergeTupchiy
8480a26b66
Merge pull request #11065 from SergeTupchiy/EMQX-9992-fix-async-cleanup-error-logs
...
fix: avoid logging unnecessary errors in async cleanup functions
2023-07-20 12:20:57 +03:00
Serge Tupchii
ff4119e8b3
chore(emqx_config): fix typo in the log message
2023-07-19 16:58:21 +03:00
ieQu1
57e39f42c5
Merge pull request #11294 from ieQu1/mria-fixes
...
Mria fixes
2023-07-19 15:10:42 +02:00
Andrew Mayorov
dd31487b4a
refactor(session): drop `is_session/1` helper as useless
...
This is a part of effort to minimize `emqx_session` module
interface to simplify adding alternative session implementations.
2023-07-19 14:55:26 +02:00
Andrew Mayorov
0cd2351134
refactor(session): hide `no_local` logic behind enqueue / deliver
...
This is a part of effort to minimize `emqx_session` module
interface to simplify adding alternative session implementations.
2023-07-19 14:55:26 +02:00
Ivan Dyachkov
f29a9ed9d5
Merge pull request #11301 from id/0719-sync-release-51-to-master
2023-07-19 14:21:26 +02:00
Andrew Mayorov
92166f287a
Merge pull request #11293 from keynslug/fix/EMQX-9591/phase-out-persistence
...
chore(ps): phase out existing session persistence mechanism
2023-07-19 10:36:46 +02:00
Ivan Dyachkov
b7f0f7b32d
chore: merge master into release-51
2023-07-19 09:28:05 +02:00
zhongwencool
402f75592e
chore: move rpc call from emqx_management_proto to emqx_conf_proto
2023-07-19 11:05:14 +08:00
zhongwencool
8a0f7bfd99
chore: update version bpapi.versions
2023-07-19 11:05:14 +08:00
ieQu1
ce76d4ab04
chore(ekka): Bump version to 0.15.7 (mria 0.5.9)
2023-07-18 21:45:00 +02:00
Ivan Dyachkov
de4cc492d4
chore: e5.1.1-alpha.2
2023-07-18 18:55:24 +02:00
Andrew Mayorov
0a00c39282
chore(ps): phase out existing session persistence mechanism
...
* It's not really working currently in a cluster setup.
* It's not really working well.
* It would be much easier to integrate `emqx_durable_storage` w/o
the need to support existing solution.
2023-07-18 15:46:04 +02:00
Thales Macedo Garitezi
4a889c0994
chore: bump ekka -> 0.15.6
...
https://github.com/emqx/erlang-rocksdb/releases/tag/1.8.0-emqx-1
2023-07-18 09:00:29 -03:00
Thales Macedo Garitezi
1fdcfba629
fix(shared_sub): restore support for `$queue/` shared subscription
...
Partially addresses: https://emqx.atlassian.net/browse/EMQX-4589
There's still a problem with the handling of shared groups that is
_not particular to the `$queue/` syntax_ and preexistent that the same
client cannot subscribe to _different groups_ that have the same
_topic filter_.
2023-07-17 16:41:24 -03:00
zhongwencool
f853f3d3bd
Merge pull request #11271 from zhongwencool/fix-precent-check
...
fix: keep percentage type's range is 0%~100%
2023-07-14 22:07:41 +08:00
Serge Tupchii
950d5edc41
fix: avoid logging unnecessary errors in async cleanup functions
...
Cleanup functions that access ETS tables may fail with `badarg` error during EMQX shutdown.
They are called asynchronously by `emqx_pool` workers and accessed ETS tables
may be already destroyed as their owners are shut down.
This fix catches ETS `badarg` errors before they can be caught and logged by `emqx_pool`.
Fixes: EMQX-9992
2023-07-14 14:22:43 +03:00
firest
fea73cf17d
fix(log): fix the `pubrel` typo in the log
2023-07-14 17:19:50 +08:00
zhongwencool
11ee6abf02
fix: keep precent range is 0%~100%
2023-07-14 16:48:50 +08:00
Thales Macedo Garitezi
06010f7ca9
Merge remote-tracking branch 'origin/release-51' into sync-r51-20230712
2023-07-12 16:47:45 -03:00
SergeTupchiy
fce3060634
Merge pull request #11251 from SergeTupchiy/EMQX-10392-cluster-topology-api
...
Add cluster topology HTTP API endpoint
2023-07-11 17:45:00 +03:00
Serge Tupchii
19de10be7c
feat(emqx_management): add /cluster/topology HTTP API endpoint
...
The endpoint shows Mria RLOG cluster topology info:
connections between core and replicant nodes.
Closes: EMQX-10392
2023-07-11 16:25:36 +03:00
firest
211486a946
fix(ws): fix MQTT packets may be reversed in the WS
...
Fix when a WS packet contains many MQTT packets, the order of MQTT packets will be reversed
2023-07-11 18:40:06 +08:00
Andrew Mayorov
21fbf79c29
Merge pull request #11191 from keynslug/ft/EMQX-9591/msg-persistence-minimal
...
feat(ds): hardwire emqx_durable_storage message persistence
2023-07-10 21:05:04 +02:00
Andrew Mayorov
d91ab7dec9
test(ds): make `emqx_persistent_messages_SUITE` setup cleaner
...
Co-authored-by: Thales Macedo Garitezi <thalesmg@gmail.com>
2023-07-10 18:12:16 +02:00
Ivan Dyachkov
fb96c1e20d
chore: bump to e5.1.1-alpha.1
2023-07-10 17:25:07 +02:00
Ilya Averyanov
58a83739b8
Merge pull request #10986 from savonarola/ft/EMQX-9523/config-api
...
feat(ft-api): provide configuration API
2023-07-10 15:32:30 +03:00
Ilya Averyanov
12e237c36d
Merge pull request #11132 from savonarola/0531-authz-qos-retain
...
feat(authz): use extensible map format for actions in authz rules
2023-07-10 15:32:02 +03:00
Andrew Mayorov
576eab9717
Merge pull request #11193 from keynslug/fix/emqx-ft-test-flaps
...
fix(ft-test): use new cth tooling in emqx_ft_storage_fs_SUITE
2023-07-10 11:55:16 +02:00
JianBo He
f144bb0571
Merge pull request #11226 from zhongwencool/listener-conf-enabled-to-enable
...
fix: alias listeners.Type.Name.enabled as listeners.Type.Name.enable
2023-07-10 17:15:24 +08:00
zhongwencool
802a50601a
chore: add comment for init_loader_done
2023-07-10 12:03:36 +08:00
zhongwencool
c4ba558ee3
fix: unset config_loader in emqx's env when stop emqx app
2023-07-10 11:06:08 +08:00
zhongwencool
d661b10355
fix: emqx CI failed
2023-07-10 10:34:36 +08:00
zhongwencool
c0ee47dc08
chore: add changelog for 11226 pr
2023-07-10 10:34:36 +08:00
zhongwencool
d781346efc
fix: alias listeners.Type.Name.enabled as listeners.Type.Name.enable
2023-07-10 10:34:36 +08:00
Andrew Mayorov
030beb3e6a
fix(ds): drop debug printouts in test suite
2023-07-07 21:56:20 +02:00
Andrew Mayorov
daf4e86da1
feat(ds): add `ensure_shard/2` shortcut
...
And use it in `emqx_persistent_session_ds:init()` backend initialization
function.
2023-07-07 21:56:20 +02:00
Ilya Averyanov
77895f2555
feat(authz): fix typos and style for Retain & QoS authz feature
...
Co-authored-by: Thales Macedo Garitezi <thalesmg@gmail.com>
2023-07-07 19:40:34 +03:00
Ilya Averyanov
7de26a1776
feat(authz): use extensible map format for actions in authz rules
...
* support authorization on retain, qos fields
* refactored authz tests heavily
2023-07-07 19:40:34 +03:00
Ilya Averyanov
e0353ab750
fix(ft-api): update FT API tests to use emqx_cth_suite
2023-07-07 19:15:42 +03:00
Andrew Mayorov
97b6c43062
fix(ft-test): use new cth tooling in `emqx_ft_storage_fs_SUITE`
...
In attempt to battle test flakiness.
2023-07-07 14:00:33 +02:00
Andrew Mayorov
7e76914599
feat(ds): hardwire emqx_durable_storage message persistence
...
Only message persistence is currently implemented, irrespectively of
whether there are persistent sessions around or not.
2023-07-07 13:46:12 +02:00
zhongwencool
352d818e3b
chore: update hocon to 0.39.13
2023-07-07 16:39:26 +08:00
zhongwencool
221f6eba06
fix: bad tnx-id when rejoin cluster
2023-07-07 12:25:34 +08:00
firest
a1d2b2ca51
chore: bump app versions
2023-07-07 11:17:54 +08:00
Stefan Strigler
9bcabe0a9e
Merge pull request #11184 from sstrigler/EMQX-10270-e-5-1-0-missing-value-range-validation-for-the-max-packet-size-of-mqtt-settings
...
fix: limit mqtt max_packet_size to 256MB
2023-07-06 10:20:24 +02:00
Ilya Averyanov
9af0030538
chore: bump to v5.1.1
2023-07-05 18:43:45 +03:00
Stefan Strigler
263890be47
fix: limit mqtt max_packet_size to 256MB
2023-07-04 16:03:11 +02:00
Andrew Mayorov
8cc7022760
Merge pull request #11120 from ft/EMQX-10329/tooling
...
test: add tooling to make testruns more isolated and predictable
2023-07-04 14:36:39 +02:00
zhongwencool
f2c5f4932c
Merge pull request #11148 from lafirest/fix/mcall_error_report
...
fix(emqx_conf): don't sync the MFA to a leaved node
2023-07-04 19:56:52 +08:00
Andrew Mayorov
9ed75085b7
chore: drop dead commented out code
2023-07-04 13:20:04 +02:00
Andrew Mayorov
c7ba300efc
fix(cthsuite): use correct type for "smth serializable as HOCON"
2023-07-04 13:20:04 +02:00
Andrew Mayorov
d568d43fe4
test(bridge): switch `emqx_bridge_api_SUITE` to use new tooling
2023-07-04 13:20:03 +02:00
Andrew Mayorov
2c50e61cee
fix(cth): reduce amount of logging + streamline logging
...
Also make sure that code running on `emqx_cth_cluster` nodes don't
crash when using `ct:pal` and friends.
2023-07-04 13:20:03 +02:00
Andrew Mayorov
9bda4192e5
fix(cthsuite): disable default `acl.conf` authz source
...
So that users of `emqx_cth_suite` won't have to deal with providing
correct filepath each time they start `emqx_conf` and/or `emqx_authz`
up.
2023-07-04 13:20:03 +02:00
Andrew Mayorov
24a16ea247
fix(cthsuite): bump to hocon 0.39.11 with atom prettyprint fix
2023-07-04 13:20:03 +02:00
Andrew Mayorov
6a7254f55e
fix(cthcluster): match correct driver in `stop_node/2`
...
Co-authored-by: Ilya Averyanov <av@rubybox.dev>
2023-07-04 13:20:02 +02:00
Andrew Mayorov
fe0b8cfbaf
test(conf): respect `init_config_load_done` in emqx_conf itself
...
This should make task of configuring various applications (emqx_conf
/ emqx) during testsuites setup much simpler.
2023-07-04 13:20:02 +02:00
Andrew Mayorov
f76f3b77d7
test: add tooling to make testruns more isolated and predictable
...
Also showcase their usage in some of the existing testsuites.
2023-07-04 12:53:39 +02:00
zhongwencool
d509c47344
feat: add conf load api
2023-07-04 14:17:11 +08:00
Andrew Mayorov
0f25df3aa8
perf(router): employ `maps:foreach/2` instead
2023-07-03 15:01:47 +02:00
Andrew Mayorov
57da71eb1d
perf(broker): avoid usorting aggregated routes in a loop
2023-07-03 15:01:33 +02:00
zhongwencool
e26c30ff0c
feat: refactor dashboard https ssl_options
2023-06-29 10:49:39 +08:00
firest
8e68af14ef
chore: bump ekka version
2023-06-29 01:45:47 +00:00
Andrew Mayorov
30d78aaac2
Merge pull request #11152 from keynslug/test/ft-prop-aggressive
...
test(ft): make proptests even less aggressive
2023-06-27 17:44:54 +02:00
Andrew Mayorov
ff327609db
test(ft): generate segments manually in proptests
...
In order to avoid spamming proptest logs with HUGE type instances,
and make proptests themselves simpler. Proper now should refuse
shrinking altogether, instances that cause prop function to timeout
do not shrink well for some reason, making proptests stuck.
2023-06-27 17:13:23 +02:00
Zaiming (Stone) Shi
9b6ed09513
refactor: call hocon_tconf:check_plain/4 directly for example conf check
...
the attemp to re-use emqx_hocon:check failed because
hocon_tconf:check_plain/3 and check_plain/4 behaves slightly different
for unknown root fields.
To keep the old logic unchanged, for example config checks, we call
check_plain/4 directly
2023-06-27 14:23:18 +02:00
Zaiming (Stone) Shi
a069b351fd
test: add test script to verify config example files
2023-06-27 14:23:18 +02:00
Serge Tupchii
116675e86f
chore: bump ekka to 0.15.4
2023-06-27 13:24:49 +03:00
lafirest
f2e3446e29
Merge pull request #11135 from lafirest/pref/calendar_timeoffset
...
perf(rule_engine): improve the time offset parser
2023-06-26 18:54:00 +08:00
lafirest
850d642ec2
Merge pull request #11108 from ieQu1/emqx-ds
...
Durable storage
2023-06-25 11:36:34 +08:00
firest
c8c2793944
perf(rule_engine): improve the time offset parser
2023-06-24 13:05:27 +00:00
Thales Macedo Garitezi
7ef03d9e1f
Merge pull request #11090 from thalesmg/gcp-pubsub-consumer
...
feat(gcp_pubsub_consumer): implement GCP PubSub Consumer bridge
2023-06-22 09:17:45 -03:00
Zaiming (Stone) Shi
c58a98954b
Merge remote-tracking branch 'origin/master' into 0621-merge-release-51-to-master
2023-06-22 11:05:51 +02:00
ieQu1
efed7cdc2f
chore(ds): behavior -> behaviour
2023-06-22 10:20:18 +02:00
Andrew Mayorov
86d787eced
chore: bump hocon to 0.39.10
...
Which comes with a fix for slightly more user-friendly validation error
messages.
2023-06-21 21:25:43 +02:00
Zaiming (Stone) Shi
7cf8a6c892
chore: bump app vsns
2023-06-21 16:36:51 +02:00
Zaiming (Stone) Shi
5fa87091c4
Merge remote-tracking branch 'origin/master' into 0621-merge-release-51-to-master
2023-06-21 16:08:41 +02:00
Zaiming (Stone) Shi
dddccfdc5c
chore: bump to v5.1.0 official cut
2023-06-20 17:09:17 +02:00
Zaiming (Stone) Shi
728656d4f6
chore: bump to e5.1.0 official cut
2023-06-20 17:08:18 +02:00
Zaiming (Stone) Shi
f95787d229
test: make possible to test core/replica locally
2023-06-20 12:42:00 +02:00
zhongwencool
856de78698
chore: remove the is_list guard
2023-06-20 08:39:23 +08:00
zhongwencool
093cdab838
chore: to_integer to make sure integer is converted
2023-06-20 08:39:23 +08:00
zhongwencool
07172e42f0
test: integer CI check failed
2023-06-20 08:39:23 +08:00
zhongwencool
a4be9b8281
chore: bump hocon to 0.39.9
2023-06-20 08:39:23 +08:00
zhongwencool
45963b6a95
fix: ip_port schema type crash
2023-06-20 08:39:23 +08:00
Zaiming (Stone) Shi
ead511a128
chore: bump to 5.1.0-rc.1
2023-06-19 23:19:27 +02:00
ieQu1
86b78981c4
Merge pull request #11092 from ieQu1/mria-0.5.5
...
chore(mria): Bump version to 0.5.5
2023-06-19 23:13:36 +02:00
Thales Macedo Garitezi
01d758e4c0
fix(bpapi): fix `query_mode` type(spec)
...
The previous spec was wrong due to a mismatch between type declaration and usage in specs:
it would never be `dynamic`, and it was lacking the `simple_async`, `simple_sync` and
`no_queries` constructors.
2023-06-19 16:04:12 -03:00
ieQu1
f82c56ae16
chore(mria): Bump version to 0.5.5
2023-06-19 19:28:17 +02:00
JianBo He
cc939d2bda
Merge pull request #11087 from zhongwencool/bump-v5.1.0.alpha.8
...
chore: bump to v5.1.0.alpha.8
2023-06-19 23:00:53 +08:00
JianBo He
b0a6c18917
chore: bump vsn to 5.1.0-alpha.8
2023-06-19 22:59:05 +08:00
zhongwencool
1f1d61cef6
Merge pull request #11084 from zhongwencool/hide-plugins-from-cli
...
chore: hide plugins from conf load cli
2023-06-19 19:11:52 +08:00
zhongwencool
64612cab14
chore: bump to v5.1.0.alpha.8
2023-06-19 18:22:51 +08:00
zhongwencool
a578d6fa1d
chore: release e5.1.0-alpha.8
2023-06-19 17:19:03 +08:00
zhongwencool
803cd6c812
Merge pull request #11082 from emqx/release-51
...
sync release-51 to master
2023-06-19 15:12:37 +08:00
JimMoen
30ac6c4e48
Merge pull request #11074 from JimMoen/fix-share-sub-nl-protocol-error
...
fix: shared-sub with nl sub-option should cause protocol error
2023-06-19 10:39:08 +08:00
Andrew Mayorov
13d9f5c3e7
Merge pull request #11053 from fix/EMQX-10231/cluster-view
...
fix(ft-fs): use `emqx:running_nodes()` as default cluster view
2023-06-17 00:54:24 +02:00
JimMoen
178711f742
fix: shared-sub with nl sub-option should cause protocol error
2023-06-16 18:19:23 +08:00
Serge Tupchii
b49b80d36c
fix(emqx_schema): use non negative integer type for 'depth' SSL option
...
Closes: EMQX-10276
2023-06-16 10:59:39 +08:00
zhongwencool
9b56f116f4
Merge pull request #11062 from zhongwencool/log-file-rename
2023-06-15 20:51:52 +08:00
zhongwencool
3406a5d916
Merge pull request #11063 from zhongwencool/bump-to-alpha.7
...
chore: bump to e5.1.0-alpha.7
2023-06-15 19:22:37 +08:00
zhongwencool
9060a2dc05
chore: bump to e5.1.0-alpha.7
2023-06-15 19:05:13 +08:00
zhongwencool
e6c2da8d19
feat: rename log.file.to to log.file.path
2023-06-15 18:24:21 +08:00
zhongwencool
84a5d0c3c1
fix: delete a default listener then recreate it, it's disabled
2023-06-15 17:19:11 +08:00
zhongwencool
0adbb0deec
feat: try to save config when post_config_update failed not in init mfa status
2023-06-15 17:19:11 +08:00
zhongwencool
c160301dbe
fix: don't log enoent error
2023-06-15 17:06:09 +08:00
zhongwencool
7dade3a52c
fix: tls_certfile_gc notice log don't print abspath
2023-06-15 17:06:09 +08:00
Serge Tupchii
64bbe21209
fix(emqx_schema): use non negative integer type for 'depth' SSL option
...
Closes: EMQX-10276
2023-06-15 11:22:58 +03:00
zhongwencool
e42cc58694
Merge pull request #11050 from emqx/release-51
...
chore: sync release-51 back to master
2023-06-15 09:45:31 +08:00
Andrew Mayorov
acd6e5635b
fix(ct): adapt cluster setup helper to replicant nodes
...
Before this change, trying to start cluster consisting of cores +
replicants resulted in error joining replicant node to the cluster.
2023-06-15 00:50:15 +03:00
zhongwencool
41004e86da
Merge pull request #10959 from qzhuyan/dev/william/remove-depre-quic-config
...
chore: remove deprecated QUIC listener config
2023-06-14 23:01:00 +08:00
Serge Tupchii
7882755114
chore: bump cowboy to 2.9.2
...
cowboy 2.9.2 uses ranch 1.8.1-emqx that fixes incompatible TLS options
2023-06-14 17:35:17 +03:00
Serge Tupchii
4425942030
fix(emqx_schema): move tls version gap validation to emqx_schema
2023-06-14 17:29:56 +03:00
Ivan Dyachkov
6d88cd7a20
fix(tls): fix incompatible tls options and issue with tls version gap
2023-06-14 17:29:56 +03:00
zhongwencool
267053cc35
Merge pull request #11045 from zhongwencool/hide-zones-authn-in-listeners
...
feat: hide zone/authn in listeners and remove listeners's authn api
2023-06-14 20:32:27 +08:00
zhongwencool
7668753f50
feat: hide zone/authn in listeners and remove /listeners/:id/authentication api
2023-06-14 15:17:12 +08:00
JianBo He
8ce0380704
chore: bump vsn to e5.1.0-alpha.6
2023-06-14 12:49:02 +08:00
zhongwencool
091c49277f
fix: api_listener crash when setting max_connnections as string
2023-06-14 11:26:41 +08:00
zhongwencool
7f0f40cb58
Merge pull request #11034 from zhongwencool/mqtt-conf
...
feat: move shared_subscription_strategy from broker to mqtt
2023-06-14 10:00:38 +08:00
Thales Macedo Garitezi
b609792a90
fix(pulsar_producer): do not return `disconnected` when checking status (r5.1)
...
Fixes https://emqx.atlassian.net/browse/EMQX-10278
Since Pulsar client has its own replayq that lives outside the management of the buffer
workers, we must not return disconnected status for such bridge: otherwise, the resource
manager will eventually kill the producers and data may be lost.
2023-06-13 11:44:45 -03:00
zhongwencool
946de4a303
chore: dialyzer warning
2023-06-13 20:11:49 +08:00
zhongwencool
50041fdddf
feat: hide broker rootkey and move broker.shared_subscription_strategy to mqtt.shared_subscription_strategy
2023-06-13 19:35:52 +08:00
William Yang
8fa743fa22
chore: mark deprecated QUIC listener config for 5.1
2023-06-13 06:00:57 +02:00
Thales Macedo Garitezi
5ef7102cba
fix(listener_mgmt_api): use union member selector fn for better error messages (r5.1)
...
Fixes https://emqx.atlassian.net/browse/EMQX-10247
2023-06-12 16:48:13 -03:00
zhongwencool
58dc042279
chore: bump to e/v5.1.0-alpha.5
2023-06-13 00:06:54 +08:00
zhongwencool
0fc10ad239
Merge pull request #10984 from zhongwencool/reload-cli
...
feat: support reload cli
2023-06-12 17:21:29 +08:00
Zaiming (Stone) Shi
12b73ba1c0
Merge remote-tracking branch 'origin/master' into release-51
2023-06-12 10:35:47 +02:00
firest
947d99218b
chore: upgrade emqtt to avoid sensitive data leakage in the debug log
2023-06-12 16:32:24 +08:00
zhongwencool
1550158ddd
fix: update emqx_flapping process's state when emqx:update_config([flapping_detect],Conf)
2023-06-11 18:23:15 +08:00
Zaiming (Stone) Shi
654a9dcab5
Merge pull request #11006 from zmstone/0610-fix-quic-default-certs-path
...
fix(quic): environment variables as cert file prefix for quic listener
2023-06-11 11:52:56 +02:00
zhongwencool
c8cf8d1def
Merge pull request #11009 from zhongwencool/persistent_session_store-default-value
...
chore: correct persistent_session_store's default value type to boolean
2023-06-11 17:26:58 +08:00
zhongwencool
072f6fac8d
chore: update hocon to 0.39.8
2023-06-11 09:11:17 +08:00
zhongwencool
346b363cb5
test: config SUITE failed
2023-06-11 09:11:17 +08:00
zhongwencool
505d677685
chore: move reload_local_etc_config from emqx_conf to emqx_conf_cli
2023-06-11 09:11:17 +08:00
zhongwencool
6c6ff4ea1f
chore: rename {mod} to module
2023-06-11 09:11:17 +08:00
zhongwencool
cf9a207743
feat: check all config schema before loading
2023-06-11 09:11:17 +08:00
zhongwencool
21ffd958b4
feat: support authn merge_authenticators
2023-06-11 09:11:17 +08:00
zhongwencool
994db58cbf
fix: load authz's default sources
2023-06-11 09:11:17 +08:00
zhongwencool
c819ac27f4
feat: add conf reload cli
2023-06-11 09:11:17 +08:00
zhongwencool
599eb9fef5
chore: correct persistent_session_store's default value type to boolean
2023-06-10 19:36:05 +08:00
Zaiming (Stone) Shi
97850de524
Merge remote-tracking branch 'origin/release-51' into 0610-merge-release-51-to-master
2023-06-10 12:23:55 +02:00
Zaiming (Stone) Shi
9f135d1f2b
fix(quic): environment variables as cert file prefix for quic listener
2023-06-10 12:23:20 +02:00
Serge Tupchii
87b57112df
refactor: move tcp keepalive options helper to emqx_utils
2023-06-09 21:43:50 +03:00
Andrew Mayorov
b930f4cc73
Merge pull request #10987 from keynslug/fix/EMQX-9257/sep-placeholder
...
refactor: tear `emqx_plugin_libs` application apart
2023-06-09 17:02:14 +02:00
Thales Macedo Garitezi
20a7ce64cd
Merge pull request #10919 from thalesmg/test-flakiness-20230601-a
...
test(pulsar_producer): attempt to fix flaky test
2023-06-09 09:30:30 -03:00
Andrew Mayorov
7d0abb6146
feat(emqx): add `emqx_topic:match_any/2` utility
2023-06-09 14:44:37 +03:00
SergeTupchiy
e61b2100a3
Merge pull request #10676 from SergeTupchiy/EMQX-9203-config-backup
...
feat: implement configuration and user data export/import
2023-06-09 14:18:39 +03:00
Serge Tupchii
e4d09d4ad4
feat: implement configuration and user data export/import CLI
...
Closes: EMQX-9203
2023-06-09 14:11:47 +03:00
Zaiming (Stone) Shi
ee697831f6
Merge pull request #10926 from zmstone/0602-add-enable-as-an-alias-for-enabled
...
0602 add enable as an alias for enabled
2023-06-09 08:44:20 +02:00
Zaiming (Stone) Shi
af5c6720de
Merge remote-tracking branch 'origin/master' into release-51
2023-06-09 08:37:29 +02:00
Zaiming (Stone) Shi
47f826f99a
chore: fix typo
2023-06-09 09:31:32 +08:00
Serge Tupchii
53ec8326b0
fix(emqx_listeners): convert authentication certs
2023-06-08 20:44:18 +03:00
Serge Tupchii
33fa053b9b
test(emqx_common_test_helpers): keep EMQX ENV vars on a child node for its lifetime
2023-06-08 20:42:51 +03:00
Serge Tupchii
5f526d548a
style: use double percent (%%) comments
2023-06-08 20:42:51 +03:00
Kjell Winblad
273dedf7a6
Merge pull request #10911 from kjellwinblad/kjell/bridge/atom_length_too_long/EMQX-9609
...
fix: friendly error message when creating bridges with too long names
2023-06-08 15:46:42 +02:00
Ivan Dyachkov
abbba71191
fix(tls): issue when ssl listner is configured to use tls v1.3 only
...
clients could not connect due to incompatible tls options if ssl listner is configured to use tls v1.3 only
2023-06-08 15:13:22 +02:00
Zaiming (Stone) Shi
b481994e74
chore: bump to version 5.1.0-alpha.4
2023-06-08 12:30:35 +02:00
Zaiming (Stone) Shi
c1cf2365c2
Merge remote-tracking branch 'origin/master' into release-51
2023-06-08 12:30:02 +02:00
Zaiming (Stone) Shi
641166a67a
Merge pull request #10971 from zmstone/0607-merge-master-to-release-51
...
0607 merge master to release 51
2023-06-08 09:22:21 +02:00
Zaiming (Stone) Shi
641aca00d8
Merge pull request #10954 from zhongwencool/flapping-detect-conf
...
feat: don't hide enable in flapping detect conf
2023-06-07 23:04:56 +02:00
Zaiming (Stone) Shi
ccd2589ff2
Merge remote-tracking branch 'origin/master' into release-51
2023-06-07 21:43:29 +02:00
Andrew Mayorov
39b0d41527
fix(bpapi): ignore dropped BPAPI module
...
It doesn't really breaks interoperability.
2023-06-07 21:33:47 +03:00
Zaiming (Stone) Shi
aecea50564
Merge pull request #10902 from zmstone/0529-donot-copy-cluster-conf-from-newer-version
...
0529 donot copy cluster conf from newer version
2023-06-07 20:32:11 +02:00
Zaiming (Stone) Shi
ed1ad4e684
chore(emqx_schema): add 'eanble' as an alias to 'enabled' fields
2023-06-07 20:19:48 +02:00
Thales Macedo Garitezi
105c26afb5
Merge pull request #10964 from thalesmg/fix-hocon-compact-errors-v50
...
fix(schema): avoid `function_clause` error when compacting errors
2023-06-07 14:00:24 -03:00
Andrew Mayorov
79d430cf03
refactor(pluglib): move `emqx_plugin_libs_proto_v1` into emqx app
...
And rename it to `emqx_metrics_proto_v1` in the process.
2023-06-07 18:30:12 +03:00
Zaiming (Stone) Shi
622ac4d195
fix(emqx_schema): binary for string default value
2023-06-07 17:14:10 +02:00
JimMoen
4ea3483083
perf(topic): use tail recursive to joining a topic
2023-06-07 22:59:53 +08:00
JimMoen
b0e18f5e75
fix(shared-sub): validate share topic error send DISCONNECT
2023-06-07 22:59:52 +08:00
JimMoen
070e410c69
refactor: variable and func rename
2023-06-07 22:59:52 +08:00
JimMoen
ea81a924f1
refactor: move topic() types def in `emqx_types.erl`
2023-06-07 22:59:52 +08:00
JimMoen
65483e972e
refactor: use unified table define
2023-06-07 22:51:44 +08:00
zhongwencool
70e800f8a4
chore: delete unuse default value and make flapping_detect middle improtance
2023-06-07 22:50:11 +08:00
zhongwencool
5659cc2b47
feat: add converter to flapping_detect
2023-06-07 21:54:32 +08:00
zhongwencool
1d33b7dbd8
chore: make static check happy
2023-06-07 21:54:32 +08:00
zhongwencool
535870386a
fix: zones update api failed
2023-06-07 21:54:32 +08:00
zhongwencool
d58506a7c3
feat: always update default zones
2023-06-07 21:54:32 +08:00
zhongwencool
48381d4c86
feat: refactor flapping detect conf
2023-06-07 21:54:32 +08:00
Thales Macedo Garitezi
cc8631223e
fix(schema): avoid `function_clause` error when compacting errors
...
Fixes https://emqx.atlassian.net/browse/EMQX-10168
The bridge probe API displayed the typecheck errors for the new
timeout duration types correctly, but when an user tried to create the
bridge anyway a `function_clause` error was raised when trying to
compact hocon errors:
```
09:47:19.045 [warning] [exception: :error, path: '/bridges', reason: {:case_clause, {:error, {:config_update_crashed, :function_clause}}}, stacktrace: [{:emqx_bridge_api, :create_or_update_bridge, 4, [file: '/home/thales/dev/emqx/emqx/apps/emqx_bridge/src/emqx_bridge_api.erl', line: 602]}, {:minirest_handler, :apply_callback, 3, [file: '/home/thales/dev/emqx/emqx/deps/minirest/src/minirest_handler.erl', line: 111]}, {:minirest_handler, :handle, 2, [file: '/home/thales/dev/emqx/emqx/deps/minirest/src/minirest_handler.erl', line: 44]}, {:minirest_handler, :init, 2, [file: '/home/thales/dev/emqx/emqx/deps/minirest/src/minirest_handler.erl', line: 27]}, {:cowboy_handler, :execute, 2, [file: '/home/thales/dev/emqx/emqx/deps/cowboy/src/cowboy_handler.erl', line: 41]}, {:cowboy_stream_h, :execute, 3, [file: '/home/thales/dev/emqx/emqx/deps/cowboy/src/cowboy_stream_h.erl', line: 318]}, {:cowboy_stream_h, :request_process, 3, [file: '/home/thales/dev/emqx/emqx/deps/cowboy/src/cowboy_stream_h.erl', line: 302]}, {:proc_lib, :init_p_do_apply, 3, [file: 'proc_lib.erl', line: 240]}]]
```
This fixes the issue so that both APIs return more friendly error messages.
2023-06-07 10:34:58 -03:00
Paulo Zulato
a4407764f3
feat(connection): configurable TCP keepalive
...
Fixes https://emqx.atlassian.net/browse/EMQX-9852
2023-06-07 10:23:38 -03:00
Andrew Mayorov
c05f462d0a
fix(tlslib): bring back deterministic filenames for managed certs
2023-06-07 13:32:35 +03:00
William Yang
c1be86c5ec
Merge pull request #10931 from qzhuyan/perf/william/save-times-of-maps-build
...
Perf/william/save times of maps build
2023-06-07 10:32:45 +02:00
Zaiming (Stone) Shi
cb3e787cb1
Merge remote-tracking branch 'origin/master' into 0529-donot-copy-cluster-conf-from-newer-version
2023-06-07 09:14:04 +02:00
Serge Tupchii
bf2b5a9f24
fix(emqx_listeners): fix listener authentication create/update
...
Listener authentication is a list of authenticators, so each of them must be created
or updated individually.
2023-06-06 19:00:35 +03:00
Serge Tupchii
1968589f81
fix(emqx_schema): don't allow enabling `fail_if_no_peer_cert` if `verify_none` is set
...
Setting `fail_if_no_peer_cert = true` and `verify = verify_none` causes connection errors.
Closes: EMQX-9586
2023-06-06 17:20:22 +03:00
Thales Macedo Garitezi
2c97ee1b3f
test(conf_app): fix test after common test helpers changes
2023-06-06 09:32:38 -03:00
Thales Macedo Garitezi
97a9bb484a
test(pulsar_producer): attempt to fix flaky test
2023-06-06 09:32:38 -03:00
Thales Macedo Garitezi
770dd188b1
Merge pull request #10947 from emqx/release-51
...
Release 51 to master
2023-06-06 09:32:16 -03:00
Andrew Mayorov
d5aedaac7d
fix(tlslib): append random suffix to managed certfiles
...
In order to lessen the chance of ambiguity in determining collectable
certfiles during GC.
2023-06-06 11:21:03 +03:00
zhongwencool
ddb4a09a3d
Merge pull request #10935 from zhongwencool/listeners-conf-update
...
feat: update listeners from cli
2023-06-06 08:10:45 +08:00
Zaiming (Stone) Shi
3caf114f68
test: fix test case is_list(Config) function guard
2023-06-05 23:00:41 +02:00
Zaiming (Stone) Shi
bb1cf9beaa
Merge remote-tracking branch 'origin/master' into 0529-donot-copy-cluster-conf-from-newer-version
2023-06-05 22:56:58 +02:00
Andrew Mayorov
750b7158d4
fix(tlsgc): make computing orphans safe against symlinking
...
Before this commit, `orphans/1` considered managed file an orphan based
on its absolute filename, which is not safe when, for example, emqx has
a symlink configured as `data_dir` while config references certfiles
through realpaths.
2023-06-05 22:41:08 +03:00
Andrew Mayorov
31d38e18c9
refactor(tlsgc): simplify `fold_config/4`
2023-06-05 22:41:08 +03:00
Andrew Mayorov
f8e8b7993b
fix(tlsgc): anticipate only binaries as string in raw config
...
Co-authored-by: Zaiming (Stone) Shi <zmstone@gmail.com>
2023-06-05 22:41:08 +03:00
Andrew Mayorov
3c2a7dbadc
fix(tlsgc): consolidate conf keypaths knowledge in `emqx_tls_lib`
...
So that this GC mechanism will be easier to maintain.
2023-06-05 22:41:08 +03:00
Andrew Mayorov
ec06850bd0
test(auth): drop obsolete testcase altogether
...
Most of the stuff that was tested by this test case is now covered
by `emqx_tls_certfile_gc_SUITE`.
2023-06-05 22:41:08 +03:00
Andrew Mayorov
206d0472e0
fix(emqx): avoid interference in testsuites
...
Also remove that `?wait_async_action` in `emqx_trace_SUITE` which
consistently becomes stuck for 100 seconds. It's not clear why it
was there in the first place because listeners should start
synchronously, so `emqx_common_test_helpers:start_apps/1` won't return
until required listeners are started.
2023-06-05 22:41:08 +03:00
Andrew Mayorov
8a31e5639b
fix(emqx): ensure that standalone build works
...
Turns out rebar3 `path` resource has troubles with dangling
symlinks and non-ASCII filenames. 🥲
2023-06-05 22:41:07 +03:00
Andrew Mayorov
99ea9b86c2
feat(tlslib): add separate managed certfiles GC process
...
Which periodically inpects managed certificates directory and tries
to collect "orphans" here, in other words files that aren't
referenced anywhere in the current emqx config.
2023-06-05 22:41:07 +03:00
Andrew Mayorov
95f706bb9e
fix(ssl): avoid explicit deletion of managed certs / keys
...
This logic was incorrect because it didn't take into account
certfiles / keyfiles "refcounts".
2023-06-05 22:41:07 +03:00
Zaiming (Stone) Shi
67db9d6fe9
chore: bump version to 5.1.0-alpha.3
2023-06-05 20:25:48 +02:00
Thales Macedo Garitezi
75df622426
Merge pull request #10930 from thalesmg/max-int-timeout-v50
...
check maximum timeout values in schema (5.1)
2023-06-05 12:51:36 -03:00
Thales Macedo Garitezi
46393343e2
chore: use `timeout_duration` types for timer fields
...
Fixes https://emqx.atlassian.net/browse/EMQX-10020
2023-06-05 11:46:38 -03:00
Thales Macedo Garitezi
9bd37937f1
feat(types): add `timeout_duration{,_ms,_s}` types
2023-06-05 11:46:32 -03:00
某文
d0d6992a14
feat: update listeners from cli
2023-06-04 20:07:33 +08:00
Zaiming (Stone) Shi
f469b31fee
Merge remote-tracking branch 'origin/master' into 0529-donot-copy-cluster-conf-from-newer-version
2023-06-03 11:21:22 +02:00
Zaiming (Stone) Shi
1ba07e1040
Merge remote-tracking branch 'origin/release-51' into 0529-donot-copy-cluster-conf-from-newer-version
2023-06-02 16:30:58 +02:00
Zaiming (Stone) Shi
28c564d15b
Merge remote-tracking branch 'origin/master' into release-51
2023-06-02 16:25:48 +02:00
William Yang
b1c188f9b1
perf(mqtt-caps): dont filter cap keys
...
save map builds
2023-06-02 16:24:52 +02:00
William Yang
4961aca3d0
perf(mqtt-caps): save some map builds
2023-06-02 16:19:58 +02:00
Zaiming (Stone) Shi
367fc95976
Merge pull request #10923 from zmstone/0602-fix-channel-data-registration-race-condition
...
fix(emqx_cm): fix channel data registration race-condition
2023-06-02 14:20:18 +02:00
Thales Macedo Garitezi
2d7c1da901
Merge pull request #10913 from thalesmg/fix-plugin-proto-multicall-v50
...
fix(plugins): use `emqx:running_nodes` for multicall operations
2023-06-02 09:03:42 -03:00
Zaiming (Stone) Shi
c75e9bbe0d
fix(emqx_cm): fix channel data registration race-condition
...
when clustered, there are chances the a mqtt client process
get killed (e.g. holding the channel registeration lock for too long),
if the channel data inserts happen before casting out the message
for channel process monitoring, there is a chance for the
stale message left in the ets tables indefinitely.
this commit changes the order of the non-atomic operations:
it casts out the monitor request message before inserting
channel data.
2023-06-02 11:43:35 +02:00
zhongwencool
dd85c981cd
Merge pull request #10783 from zhongwencool/improve-authn
...
feat: load changes to the authentication configuration from command line
2023-06-02 15:58:13 +08:00
zhongwencool
9d8a5716ec
Merge pull request #10822 from zhongwencool/authz-improve
...
feat: support emqx_config:update([authrization],Conf) update
2023-06-02 15:43:09 +08:00
Andrew Mayorov
76e5243211
Merge pull request #10901 from fix/EMQX-9985/ft-fin-checksum
...
fix(ft): respect checksum in `fin` packets
2023-06-01 23:49:55 +03:00
Thales Macedo Garitezi
64258120d7
fix(plugins): use `emqx:running_nodes` for multicall operations
...
Fixes https://emqx.atlassian.net/browse/EMQX-10079
2023-06-01 14:00:43 -03:00
某文
2e5401f3cb
fix: delete rule_engine failed
2023-06-02 00:30:07 +08:00
某文
c27d844244
feat: improve authz/bridge/rule_engine/schema_registry config update
2023-06-01 23:20:56 +08:00
某文
94b86f01a5
chore: reformat SUITE case
2023-06-01 22:32:31 +08:00
zhongwencool
21df321d89
Merge branch 'master' into improve-authn
2023-06-01 22:24:59 +08:00
Kjell Winblad
75ff76a16b
fix: friendly error message when creating bridges with too long names
...
This commit makes the error message and log entry that appear when one
tries to create a bridge with a name the exceeds 255 bytes (the max
length for atoms) more friendly and easier to understand.
An even better fix would be to not store bridge names as atoms but this
probably requires a more substantial change.
Fixes:
https://emqx.atlassian.net/browse/EMQX-9609
2023-06-01 15:30:06 +02:00
William Yang
c1d9bc8033
perf(emqx_mqtt_caps): direct read mqtt from zone conf
2023-06-01 14:54:44 +02:00
William Yang
923913e15c
feat(config): merge with global defaults when put new zone
2023-06-01 14:54:44 +02:00
William Yang
a2f8e87389
test(config): default zone and global defaults
2023-06-01 14:54:14 +02:00
William Yang
e693c6ec54
test: fix emqx_takeover_SUITE
2023-06-01 14:52:33 +02:00
William Yang
8c26ee75db
test: remove hardcoded configs
...
test with schema defaults
2023-06-01 14:52:33 +02:00
William Yang
4416122cf3
test: fix longname/shortname
2023-06-01 14:52:33 +02:00
William Yang
f621bf1f8e
test(config): update emqx_client_SUITE
2023-06-01 14:52:33 +02:00
William Yang
98d6ed4251
test: fix emqx_session_SUITE
2023-06-01 14:52:33 +02:00
William Yang
88f9782db0
perf(config): read zone conf once
2023-06-01 14:52:30 +02:00
Zhongwen Deng
7eea693422
fix: reorder authn when updating
2023-06-01 17:24:39 +08:00
Zhongwen Deng
4f5d5216bb
test: bad authn handler callback module in SUITE
2023-06-01 17:24:39 +08:00
Zhongwen Deng
8f12d81878
feat: support emqx_ctl conf command
2023-06-01 17:24:39 +08:00
Zaiming (Stone) Shi
feecd53436
chore: bump to version 5.1.0-alpha.2 for both ce and ee
2023-06-01 10:13:56 +02:00
Zaiming (Stone) Shi
15ffa98bc5
chore: fix a typo in test case function name
2023-06-01 08:18:26 +02:00
Zaiming (Stone) Shi
cb2be1811e
docs: fix function doc annotation
2023-06-01 08:17:36 +02:00
Thales Macedo Garitezi
f83f112189
fix(config): enforce root key name to be a binary (raw config)
...
Fixes this flaky test:
https://github.com/emqx/emqx/actions/runs/5134910014/jobs/9239826162#step:8:1299
```
=ERROR REPORT==== 31-May-2023::16:16:10.710969 ===
exception: error
key_path: [listeners,tcp,default,authentication]
module: emqx_schema
msg: change_config_crashed
reason: {config_not_found,[<<"listeners">>,<<"tcp">>,<<"default">>,
<<"authentication">>]}
stacktrace: [{emqx_utils_maps,deep_get,2,
[{file,
"/__w/emqx/emqx/source/apps/emqx_utils/src/emqx_utils_maps.erl"},
{line,49}]},
{emqx_config_handler,return_change_result,2,
[{file,
"/__w/emqx/emqx/source/apps/emqx/src/emqx_config_handler.erl"},
{line,456}]},
{emqx_config_handler,check_and_save_configs,7,
[{file,
"/__w/emqx/emqx/source/apps/emqx/src/emqx_config_handler.erl"},
{line,284}]},
{emqx_config_handler,handle_update_request,4,
[{file,
"/__w/emqx/emqx/source/apps/emqx/src/emqx_config_handler.erl"},
{line,195}]},
{emqx_config_handler,handle_call,3,
[{file,
"/__w/emqx/emqx/source/apps/emqx/src/emqx_config_handler.erl"},
{line,124}]},
{gen_server,try_handle_call,4,
[{file,"gen_server.erl"},{line,1149}]},
{gen_server,handle_msg,6,
[{file,"gen_server.erl"},{line,1178}]},
{proc_lib,init_p_do_apply,3,
[{file,"proc_lib.erl"},{line,240}]}]
update_req: {{update,
{create_authenticator,'tcp:default',
#{backend => built_in_database,enable => true,
mechanism => password_based}}},
#{rawconf_with_defaults => true}}
```
Which was cause because there were both binary and atom `listeners`
keys in the `persistent_term` storage:
```erlang
%% persistent_term:get()
{{emqx_config,raw_conf,<<"listeners">>},
#{<<"ssl">> =>
#{<<"default">> => ...
...
{{emqx_config,raw_conf,listeners},#{}},
```
... and the atom one was winning when fetching the whole config with
`emqx_config:get_raw([])`.
2023-05-31 18:03:58 -03:00
Thales Macedo Garitezi
b7c72e6cfb
Merge pull request #10890 from thalesmg/test-flakiness-20230530-e
...
more attempts to fix more test flakiness
2023-05-31 16:07:18 -03:00
Zaiming (Stone) Shi
5146de5b1c
feat: add a backup copies for cluster.hocon
2023-05-31 20:34:25 +02:00
Zaiming (Stone) Shi
39d6f612ca
feat(emqx_release): add new APIs to parse/compare release versions
2023-05-31 20:34:25 +02:00
Andrew Mayorov
aa98740280
Merge pull request #10903 from fix/ci-flaky-dashboard
...
test(dashboard): fix inter-suite test flakiness
2023-05-31 20:28:39 +03:00
Andrew Mayorov
f90ce9bbfe
test(dashboard): fix inter-suite test flakiness
2023-05-31 19:09:37 +03:00
Andrew Mayorov
0293b54211
fix(ft): respect checksum in `fin` packets
2023-05-31 18:50:38 +03:00
Thales Macedo Garitezi
189e2c87be
test(channel): fix flaky test
...
```
%%% emqx_channel_SUITE ==> t_handle_kicked_publish_will_msg: FAILED
%%% emqx_channel_SUITE ==> will_message_not_published
```
The problem was that the whole generated message was compared for
equality when receiving the will message, but the timestamp may be
different at publishing time...
2023-05-31 12:42:24 -03:00
JianBo He
a3a6480f00
Merge pull request #10880 from HJianBo/batch-kickout-clients
...
feat: support kickout clients in batch
2023-05-31 22:36:35 +08:00
Thales Macedo Garitezi
77c9eda036
test: rm stray `clear_screen` calls
2023-05-31 11:07:44 -03:00
Thales Macedo Garitezi
0d539e91d1
test(pulsar_producer): attempt to stabilize flaky test
...
https://github.com/emqx/emqx/actions/runs/5125166433/jobs/9218613872?pr=10886#step:7:679
```
=CRITICAL REPORT==== 30-May-2023::19:38:58.003170 ===
Run stage failed: error:{badmatch,
{timeout,
[#{msg => pulsar_producer_bridge_started,
'~meta' =>
#{gl => <97891.472.0>,
location =>
#Fun<emqx_bridge_pulsar_impl_producer.11.109752493>,
node => 'autocluster_node1@127.0.0.1',
pid => <97891.787.0>,
time => -576460611692219}}]}}
Stacktrace: [{emqx_bridge_pulsar_impl_producer_SUITE,'-t_cluster/1-fun-10-',
6,
[{file,
"/emqx/apps/emqx_bridge_pulsar/test/emqx_bridge_pulsar_impl_producer_SUITE.erl"},
{line,1073}]},
{emqx_bridge_pulsar_impl_producer_SUITE,t_cluster,1,
[{file,
"/emqx/apps/emqx_bridge_pulsar/test/emqx_bridge_pulsar_impl_producer_SUITE.erl"},
{line,1064}]}]
```
2023-05-31 10:19:55 -03:00
zhongwencool
26c2ab0bef
Merge pull request #10894 from zhongwencool/crl-cache-conf-hot-update
...
feat: update crl_cache conf at runtime
2023-05-31 17:59:09 +08:00
William Yang
2250ed7052
Merge pull request #10823 from qzhuyan/dev/william/meck-olp
...
test: use meck in olp tests
2023-05-31 11:01:56 +02:00
Zhongwen Deng
38e57f511c
feat: update crl_cache conf at runtime
2023-05-31 16:18:03 +08:00
JianBo He
afcd9fcb5e
chore: update bpapi.versions
2023-05-31 11:29:55 +08:00
zhongwencool
6202cefd5a
Merge pull request #10870 from zhongwencool/stop-dashboard-listener-waiting
...
fix: flaky test when stopping dashboard listener
2023-05-31 10:54:12 +08:00
firest
79d08e4d26
fix(limiter): temporarily hide the node-level settings
2023-05-31 09:43:14 +08:00
firest
55809f801c
test: fix test case error
2023-05-31 09:43:14 +08:00
firest
be2dfa51df
fix(limiter): improve the default configuration
2023-05-31 09:43:14 +08:00
Zhongwen Deng
5690469896
fix: flaky test when stopping dashboard listener
2023-05-31 07:53:10 +08:00
Thales Macedo Garitezi
299a67656e
Merge pull request #10886 from thalesmg/test-flakiness-20230530-d
...
test(quic_multistreams): attempt to fix flaky tests
2023-05-30 17:34:23 -03:00
Thales Macedo Garitezi
4f1c55f3fb
Merge pull request #10885 from thalesmg/test-flakiness-20230530-c
...
test(olp): fix inter-suite flakiness
2023-05-30 16:09:17 -03:00
Thales Macedo Garitezi
596f05f981
test(channel): attempt to reduce test flakiness
...
https://github.com/emqx/emqx/actions/runs/5124277038/jobs/9217362541?pr=10886#step:5:1582
```
%%% emqx_channel_SUITE ==> t_handle_kicked_publish_will_msg: FAILED
%%% emqx_channel_SUITE ==> will_message_not_published
```
2023-05-30 15:48:48 -03:00
Thales Macedo Garitezi
c43e5b8406
Merge pull request #10883 from thalesmg/test-flakiness-20230530-b
...
test(exclusive_sub): fix test flakiness
2023-05-30 15:46:14 -03:00
Thales Macedo Garitezi
98a99d47cb
test(shared_sub): attempt to reduce test flakiness
...
https://github.com/emqx/emqx/actions/runs/5122717037/jobs/9215439237#step:8:565
```
%%% emqx_shared_sub_SUITE ==> t_local_fallback: FAILED
%%% emqx_shared_sub_SUITE ==> {{badmatch,<<"not yet?">>},
[{emqx_shared_sub_SUITE,t_local_fallback,1,
[{file,"/__w/emqx/emqx/source/apps/emqx/test/emqx_shared_sub_SUITE.erl"},
{line,669}]},
```
2023-05-30 14:03:14 -03:00
Thales Macedo Garitezi
fa9afcd7e4
test(quic_multistreams): attempt to fix flaky tests
...
https://github.com/emqx/emqx/actions/runs/5122717037/jobs/9214950882#step:8:1757
```
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
test_server:ts_tc failed on line 1782
Reason: {test_case_failed,Client <0.6075.5> did not die: stacktrace: {current_stacktrace,
[{gen_statem,loop_receive,3,
[{file,"gen_statem.erl"},
{line,1281}]},
{proc_lib,init_p_do_apply,3,
[{file,"proc_lib.erl"},
{line,240}]}]}}
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Testing lib.emqx.emqx_quic_multistreams_SUITE: *** FAILED test case 335 of 364 ***
%%% emqx_quic_multistreams_SUITE ==> shutdown.abort_recv_shutdown.ctrl_stream_shutdown.t_multi_streams_remote_shutdown: FAILED
%%% emqx_quic_multistreams_SUITE ==> {test_case_failed,"Client <0.6075.5> did not die: stacktrace: {current_stacktrace,\n [{gen_statem,loop_receive,3,\n [{file,\"gen_statem.erl\"},\n {line,1281}]},\n {proc_lib,init_p_do_apply,3,\n [{file,\"proc_lib.erl\"},\n {line,240}]}]}"}
```
```
%%% emqx_quic_multistreams_SUITE ==> mstream.profiles.profile_max_throughput.pub_qos2.sub_qos2.qos.t_multi_streams_unsub: FAILED
%%% emqx_quic_multistreams_SUITE ==> {{case_clause,
{ok,#{packet_id => 8,properties => #{},reason_code => 0,
reason_code_name => success,
via =>
{quic,#Ref<0.686875463.2755788802.201649>,
#Ref<0.686875463.2755788804.193527>}}}},
[{emqx_quic_multistreams_SUITE,t_multi_streams_unsub,1,
[{file,
"/home/thales/dev/emqx/emqx/apps/emqx/test/emqx_quic_multistreams_SUITE.erl"},
{line,1094}]},
{test_server,ts_tc,3,[{file,"test_server.erl"},{line,1783}]},
{test_server,run_test_case_eval1,6,[{file,"test_server.erl"},{line,1292}]},
{test_server,run_test_case_eval,9,[{file,"test_server.erl"},{line,1224}]}]}
```
2023-05-30 13:56:05 -03:00
Thales Macedo Garitezi
37b4a44e23
test(olp): fix inter-suite flakiness
...
https://github.com/emqx/emqx/actions/runs/5122717037/jobs/9212645120?pr=10883#step:8:2538
```
emqx_olp_SUITE:t_overload_cooldown_conn failed on line 96
Reason: {assertMatch,[{module,...},{...}|...]}
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Testing lib.emqx.emqx_olp_SUITE: *** FAILED test case 3 of 4 ***
%%% emqx_olp_SUITE ==> t_overload_cooldown_conn: FAILED
%%% emqx_olp_SUITE ==>
Failure/Error: ?assertMatch({ ok , _Pid }, emqtt : connect ( C ))
expected: = { ok , _Pid }
got: {error,econnrefused}
line: 96
%%% emqx_olp_SUITE ==> t_overloaded_conn: OK
Testing lib.emqx.emqx_olp_SUITE: TEST COMPLETE, 3 ok, 1 failed of 4 test cases
```
```sh
make ct-suite SUITE=apps/emqx/test/emqx_access_control_SUITE.erl,apps/emqx/test/emqx_olp_SUITE.erl
```
2023-05-30 13:39:52 -03:00
William Yang
f2e54c9a6e
test: use meck in olp tests
...
avoid flaky test results by using mecks.
2023-05-30 17:57:09 +02:00
Thales Macedo Garitezi
a28580248a
test(exclusive_sub): fix test flakiness
...
https://github.com/emqx/emqx/actions/runs/5115608275/jobs/9208594481?pr=10864#step:8:735
```
Testing lib.emqx.emqx_access_control_SUITE: TEST COMPLETE, 4 ok, 0 failed of 4 test cases
Testing lib.emqx.emqx_exclusive_sub_SUITE: Starting test, 5 test cases
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Error detected: {'EXIT',{shutdown,econnrefused}}
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Testing lib.emqx.emqx_exclusive_sub_SUITE: *** FAILED test case 1 of 5 ***
%%% emqx_exclusive_sub_SUITE ==> t_allow_normal_sub: FAILED
%%% emqx_exclusive_sub_SUITE ==> {'EXIT',{shutdown,econnrefused}}
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
emqx_exclusive_sub_SUITE:t_clean_session failed on line 128
Reason: {badmatch,{error,econnrefused}}
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Testing lib.emqx.emqx_exclusive_sub_SUITE: *** FAILED test case 2 of 5 ***
%%% emqx_exclusive_sub_SUITE ==> t_clean_session: FAILED
```
To reproduce:
```
make ct-suite SUITE=apps/emqx/test/emqx_access_control_SUITE.erl,apps/emqx/test/emqx_exclusive_sub_SUITE.erl
```
2023-05-30 11:23:17 -03:00
Thales Macedo Garitezi
cb7929a2fc
test(broker): attempt to reduce flakiness
2023-05-30 11:12:18 -03:00
Thales Macedo Garitezi
26992e9d98
test(banned): attempt to improve flaky test
2023-05-30 11:08:31 -03:00
Thales Macedo Garitezi
6b5b9fc8b8
Merge pull request #10864 from thalesmg/fix-flaky-channel-test-20230529
...
test(channel): fix flaky test
2023-05-30 10:18:47 -03:00
Zaiming (Stone) Shi
d2ce7c22fd
chore: bump app vsn, core app 'emqx' is now at 5.1
2023-05-30 11:32:18 +02:00
Zaiming (Stone) Shi
1e8ed89db8
Merge remote-tracking branch 'origin/master' into release-51
2023-05-30 11:29:44 +02:00
Zaiming (Stone) Shi
91cdc69976
Merge pull request #10867 from zmstone/0530-merge-release-50-to-master
...
0530 merge release 50 to master
2023-05-30 09:54:57 +02:00
Zaiming (Stone) Shi
367de2a2eb
docs: update bpapi readme
2023-05-30 08:29:43 +02:00
Zaiming (Stone) Shi
941939f7d7
build: finalize 5.0.bpapi
2023-05-30 08:28:45 +02:00
Zaiming (Stone) Shi
3b8cba6ba0
chore: bump rlease versions
2023-05-30 08:28:45 +02:00
Zaiming (Stone) Shi
747eb6fcff
Merge remote-tracking branches 'origin/release-50' and 'origin/master' into release-51
2023-05-30 07:54:34 +02:00
JimMoen
909d348570
chore: fix spec typo
2023-05-30 11:31:37 +08:00
Thales Macedo Garitezi
1aff46b7c9
test(channel): fix flaky test
2023-05-29 19:04:48 -03:00
Thales Macedo Garitezi
67e182e0c9
Merge pull request #10813 from thalesmg/refactor-kafka-on-stop-v50
...
feat(kafka): ensure allocated resources are removed on failures
2023-05-29 16:49:29 -03:00
Thales Macedo Garitezi
79f6861499
chore: prepare to tag v5.0.26
2023-05-29 09:17:59 -03:00
Zaiming (Stone) Shi
8e6dc29637
chore: bump release version to v5.0.26-alpha.1
2023-05-29 08:57:28 +02:00
Zaiming (Stone) Shi
25319c3151
Merge pull request #10839 from zmstone/0526-merge-release-50-to-master
...
0526 merge release 50 to master
2023-05-29 08:56:20 +02:00
Zaiming (Stone) Shi
c2450d230d
Merge pull request #10605 from zmstone/0503-no-telemetry-app-for-ee
...
0503 refactoring: no telemetry app for ee
2023-05-27 10:57:15 +02:00
Thales Macedo Garitezi
d27f593309
test: fix flaky authn test
2023-05-26 16:44:00 -03:00
Zaiming (Stone) Shi
fe81e9521a
Merge pull request #10600 from zmstone/0504-delete-statsd-all-together
...
0504 delete statsd all together
2023-05-26 16:29:59 +02:00
Zaiming (Stone) Shi
36e268c933
chore: bump app versions
2023-05-26 16:05:37 +02:00
Zaiming (Stone) Shi
cc5b4d3748
Merge remote-tracking branch 'origin/release-50' into 0526-ci-delete-otp-24-from-standalone-app-test
2023-05-26 15:58:16 +02:00
Zaiming (Stone) Shi
6e2cde8224
refactor: delete emqx_statsd all together
2023-05-26 15:17:42 +02:00
Andrew Mayorov
45b128946a
Merge pull request #10825 from fix/EMQX-9991/bugs
...
fix(ft): avoid leaking secrets
2023-05-26 16:08:14 +03:00
Zaiming (Stone) Shi
7eb22e27c4
chore: bump release version to e5.0.4
2023-05-26 14:34:01 +02:00
Zhongwen Deng
9b6da3ff10
chore: bump hocon to 0.39.7
2023-05-26 19:00:58 +08:00
Zhongwen Deng
df4a0afdf5
fix: zones api default value
2023-05-26 18:59:38 +08:00
Zaiming (Stone) Shi
2d986140df
chore: bump version to e5.0.4-rc.2
2023-05-26 12:01:10 +02:00
Andrew Mayorov
48858dee33
fix(s3): wrap S3 secrets during config load
2023-05-26 12:59:21 +03:00
JimMoen
a3b77563ba
fix: make static check happy
2023-05-26 10:34:15 +08:00
Paulo Zulato
ea86f4442b
fix: avoid error 500 when node is re-joining cluster
...
Fixes https://emqx.atlassian.net/browse/EMQX-9899
2023-05-25 13:32:28 -03:00
Zaiming (Stone) Shi
e8a4df96bc
Merge remote-tracking branch 'origin/master' into 0503-no-telemetry-app-for-ee
2023-05-25 16:43:20 +02:00
ieQu1
2b79196a03
Merge pull request #10809 from ieQu1/ekka-0.15.2
...
chore(ekka): Bump version to 0.15.2
2023-05-24 18:13:04 +02:00
zhongwencool
14a6b36899
Merge pull request #10803 from JimMoen/merge-release-50
...
Merge release-50 into master
2023-05-24 23:08:46 +08:00
ieQu1
3d3dacfcf6
chore(ekka): Bump version to 0.15.2
2023-05-24 15:43:49 +02:00
JimMoen
28015597ee
Merge remote-tracking branch 'emqx/release-50' into merge-release-50
2023-05-24 19:34:12 +08:00
Zaiming (Stone) Shi
2fdf4b5dac
Merge pull request #10744 from savonarola/0518-fix-eviction
...
fix(evacuation): handle expire interval correctly
2023-05-24 09:20:53 +02:00
Thales Macedo Garitezi
8e6da40a31
test: fix flaky ocsp test setup (v5.0)
2023-05-23 17:52:02 -03:00
Zaiming (Stone) Shi
b8b1779627
Merge remote-tracking branch 'origin/master' into 0503-no-telemetry-app-for-ee
2023-05-23 21:42:07 +02:00
Zaiming (Stone) Shi
2fa5b511bf
chore: hide stale config
2023-05-23 14:20:49 +02:00
Zaiming (Stone) Shi
3bb1f7ab2b
Merge remote-tracking branch 'origin/master' into 0503-no-telemetry-app-for-ee
2023-05-23 13:03:55 +02:00
某文
ed1268ed30
Merge branch 'release-50' into 0522-merge-release-50-to-master
2023-05-23 07:56:35 +08:00
Zaiming (Stone) Shi
68f4ae70b2
chore: bump ee release version to e5.0.4-alpha.2
2023-05-22 22:41:19 +02:00
Zaiming (Stone) Shi
732a7be187
Merge remote-tracking branch 'origin/release-50'
2023-05-22 17:46:54 +02:00
Zaiming (Stone) Shi
1f44dd4579
Merge pull request #10756 from zmstone/0519-refactor-move-lib-ee-emqx_ee_conf-to-apps-emqx_enterprise
...
0519 refactor move lib ee emqx ee conf to apps emqx enterprise
2023-05-22 16:56:51 +02:00
Andrew Mayorov
3f882ddcc6
Merge pull request #10751 from ci/ct-flap-listener-api
...
fix(listen): wait until port is free when stopping ranch listeners
2023-05-22 17:00:45 +03:00
lafirest
88e4078885
Merge pull request #10747 from lafirest/fix/rule_funs_time_offset
...
fix: port the `emqx_calendar` from v4.4
2023-05-22 20:52:21 +08:00
Zaiming (Stone) Shi
40e8d5d039
refactor: rename lib-ee/emqx_ee_conf to apps/emqx_enterprise
2023-05-22 14:51:27 +02:00
Andrew Mayorov
23542d1262
fix(listen): wait until port is free when stopping ranch listeners
...
Simple `cowboy:stop_listener/1` will not close the listening socket
explicitly, it was the source of test flaps before this fix.
2023-05-22 12:29:40 +03:00
William Yang
e824e1db39
Merge pull request #10698 from qzhuyan/perf/william/force-atom-conf-path
...
perf(config): enforcing atom key path in hotcode path
2023-05-22 09:38:09 +02:00
某文
082214d039
feat: add authz file rule validator
2023-05-22 14:25:05 +08:00
firest
56a6b699ac
fix: port the `emqx_calendar` from v4.4
2023-05-22 09:55:31 +08:00
某文
7c2aac64bc
fix: bad cert file path in dashboard https listener
2023-05-21 07:41:46 +08:00
Andrew Mayorov
9aaa0b6fe1
Merge pull request #9927 from emqx/file-transfer
...
feat: implement file transfer over mqtt
2023-05-19 18:35:13 +03:00
某文
6cb9efd7d3
feat: add authz file rule validator
2023-05-19 18:41:59 +08:00
Ilya Averyanov
9c48b016a9
fix(evacuation): handle expire interval correctly
2023-05-18 22:34:54 +03:00
Thales Macedo Garitezi
09ea2e2224
fix(bridge_api): don't crash when formatting empty/unknown bridge metrics
...
Fixes https://emqx.atlassian.net/browse/EMQX-9872
2023-05-18 14:25:13 -03:00
Thales Macedo Garitezi
56634e5238
Merge pull request #10725 from thalesmg/bump-gproc-091-r50
...
chore: bump gproc -> 0.9.0.1 (r5.0)
2023-05-18 10:38:06 -03:00
zhongwencool
ba43a0e30f
Merge pull request #10734 from thalesmg/merge-r50-into-v50-a
...
merge `release-50` into `master`
2023-05-18 14:24:53 +08:00
zhongwencool
bf5ee41009
Merge pull request #10702 from zhongwencool/keepalive-backoff-rename
...
feat: deprecated keepalive_backoff, introduce keepalive_multiplier
2023-05-18 10:00:17 +08:00
某文
d4d25d2660
chore: don't lost previous's statval
2023-05-18 09:49:11 +08:00
Thales Macedo Garitezi
447b76464b
Merge branch 'release-50' into merge-r50-into-v50-a
2023-05-17 14:50:18 -03:00
William Yang
727ad59995
chore(test): improve coverage
2023-05-17 16:58:49 +02:00
Thales Macedo Garitezi
060efd6964
chore: bump gproc -> 0.9.0.1 (r5.0)
...
Includes this fix: https://github.com/uwiger/gproc/pull/193
2023-05-17 11:05:44 -03:00
Zhongwen Deng
e26ce5816e
feat: hide keepalive_backoff, introduce keepalive_multiplier
2023-05-17 21:25:10 +08:00
William Yang
cdf42760fa
chore: little change avoid atom leak
2023-05-17 11:01:03 +02:00
Ilya Averyanov
b71955e368
fix(ft): bump application versions
2023-05-17 00:29:15 +03:00
Ilya Averyanov
1a8cf0e392
Merge branch 'release-50' into file-transfer
...
* release-50:
fix(pulsar): use a binary duration as default `health_check_interval`
docs: add changelog entry
docs: clarify description of bridge username and password
chore: bump to v5.0.25
fix(limiter): adjust type for compatibility
fix(limiter): fix that update node-level limiter config will not working
chore: upgrade dashboard to v1.2.4-1 for ce
chore: upgarde rulesql to 0.1.6 to fix invaid utf8 input
chore: add changelog for 10659
fix: crash when sysmon.os.mem_check_interval = disabled
chore: bump influxdb version && update changes
refactor(influxdb): move influxdb bridge into its own app
chore: add listener default changelog
fix: ocsp cache SUITE failed
fix: ensure atom key for emqx_config:get
fix: only fill cerf_file default in server side
fix: authn init is empty
fix: bad listeners default ssl_options
2023-05-17 00:27:55 +03:00
Andrew Mayorov
3cd95f40e5
test(chan): verify hooks receive peercert until connected
2023-05-16 19:35:56 +03:00
Andrew Mayorov
967b2e72e0
test(emqx): remove `peercert` from clientinfo fixtures
...
According to typespec, there's no place for `peercert` in
`clientinfo()`.
2023-05-16 19:35:55 +03:00
Andrew Mayorov
b341a04955
fix(chan): postpone trimming conninfo until `connected` hooks run
...
Some users expect to get the peer certificate in `connected` hooks, but
the `conninfo` was trimmed before `connected` hooks run.
2023-05-16 19:35:55 +03:00
Andrew Mayorov
6f8f21106b
fix(assert): use unpredictable binding names in macros
...
Also translate macro vars to ALLCAPS for consistency.
2023-05-16 16:46:05 +03:00
Andrew Mayorov
be3a0ce974
fix(maybe): correct `apply/2` typespec
...
Co-authored-by: ieQu1 <99872536+ieQu1@users.noreply.github.com>
2023-05-16 16:26:26 +03:00
Andrew Mayorov
6813ea8e7a
test(client): dedicate separate testcase to peercert cleaning
2023-05-16 13:25:33 +03:00
firest
255f616d26
chore: bump emqx app version
2023-05-16 16:36:36 +08:00
William Yang
1c746ed289
perf(config): enforcing atom key path in hotcode path
2023-05-16 09:57:04 +02:00
firest
50e7de9db2
fix(limiter): a bucket with an infinity rate shouldn't be added to limiter server
2023-05-16 13:30:41 +08:00
lafirest
67ada52808
Merge pull request #10682 from lafirest/fix/will_msg_timestamp
...
fix: update the will message timestamp when it is ready to publish
2023-05-12 22:25:32 +08:00
某文
5ef2a603a1
chore: bump to v5.0.25
2023-05-12 20:27:36 +08:00
firest
95a67f390f
fix(limiter): adjust type for compatibility
2023-05-12 18:41:41 +08:00
zhongwencool
a953b951fe
Merge branch 'master' into sync-release-50-to-master
2023-05-12 18:01:58 +08:00
firest
a38b270b03
fix(limiter): fix that update node-level limiter config will not working
2023-05-12 17:39:49 +08:00
Zhongwen Deng
90549abec7
fix: crash when sysmon.os.mem_check_interval = disabled
2023-05-12 14:42:23 +08:00
firest
dcd4640a57
fix: update the will message timestamp when it is ready to publish
2023-05-12 14:28:26 +08:00
Thales Macedo Garitezi
c4f2dba9c5
Merge pull request #10643 from thalesmg/test-sanity-checks-v50
...
test: perform sanity checks when starting apps
2023-05-11 14:00:22 -03:00
某文
91f97f6c29
fix: ocsp cache SUITE failed
2023-05-11 21:26:23 +08:00
Ilya Averyanov
5b5d7ceac5
Merge branch 'release-50' into file-transfer
...
* release-50:
fix(limiter): fix an error when setting `max_conn_rate` in a listener
chore: bump erlcloud dependencies vsns
chore: rename dynamo template files
refactor(dynamo): move dynamo bridge into its own app
chore: update changes && bump app versions
fix: issues with the RabbitMQ config
refactor(pgsql): move pgsql && matrix && timescale bridges into their own app
fix: the iotdb password field so it has the password format
chore: update changes
refactor(tdengine): move tdengine bridge into its own app
feat: deprecate listeners's authn http api
2023-05-11 16:15:38 +05:00
Zhongwen Deng
3d41449fde
fix: only fill cerf_file default in server side
2023-05-11 17:33:18 +08:00
SergeTupchiy
0617a9b11c
Merge pull request #10653 from SergeTupchiy/convert-gateway-authn-certs
...
fix(emqx_gateway): convert and clear authentication certificates
2023-05-11 11:35:55 +03:00
Zhongwen Deng
d9f9e951ec
fix: bad listeners default ssl_options
2023-05-11 16:25:25 +08:00
zhongwencool
a736b633b0
Merge pull request #10607 from zhongwencool/log-conf-refactor
...
feat: simplify log configuration
2023-05-11 16:12:27 +08:00
Zaiming (Stone) Shi
b3e35dac1c
Merge pull request #10584 from paulozulato/debug-ssl-handshake
...
feat: add log level configuration to ssl communication
2023-05-11 08:59:13 +02:00
firest
b7126257a5
fix(limiter): fix an error when setting `max_conn_rate` in a listener
2023-05-11 13:52:13 +08:00
zhongwencool
7e720ca260
Merge pull request #10641 from thalesmg/bump-gproc-091-v50
...
chore: bump gproc -> 0.9.0.1
2023-05-10 16:16:26 +08:00
Ilya Averyanov
8d9b785bd7
Merge branch 'release-50' into file-transfer
...
* release-50:
chore(rebalance): fix app metadata
chore(rebalance): move apps from lib-ee, add READMEs
docs: refine zh tr
docs: delete APL header from ee file
docs: delete zh changelog
chore(rebalance): review fixes
chore(rebalance): rebase and review fixes
feat(rebalance): port apps from 4.x
2023-05-10 11:55:23 +05:00
Zhongwen Deng
b80227a02a
fix: crash when sysmon.os.mem_check_interval = disabled
2023-05-10 14:49:34 +08:00
Ilya Averyanov
7fa166f034
Merge branch 'release-50' into file-transfer
...
* release-50: (73 commits)
feat: add RabbitMQ bridge
docs: improve rule engine labels and descriptions
chore: bump version && update changes
refactor(rocketmq): move rocketmq bridge into its own app
test: dashboard_listener_test crash
chore: bump chart versions
chore: bump ee version to e5.0.4-alpha.1
test: fix inter-suite flakiness
build: compatibility to make 4.4+
feat: add IotDB bridge
ci: ensure git safe dir in build_packages
ci: ensure git safe dir
test: check_oom's max_mailbox_size
feat: rename max_message_queue_len to max_mailbox_size
fix(buffer_worker): fix inflight count when updating inflight item
chore: prepare for v5.0.25-rc.1 release
docs: add change log entry
fix: non_neg_integer() translated to minimum = 1 in bridge-api-en.json
chore: `MQTT X` -> `MQTTX`
chore: make sure brod_gssapi app is included in relese package
...
2023-05-09 23:30:22 +05:00
Ilya Averyanov
e683d28973
chore(rebalance): rebase and review fixes
2023-05-09 20:51:24 +05:00
Ilya Averyanov
609f7bd8fd
feat(rebalance): port apps from 4.x
2023-05-09 20:51:22 +05:00
Serge Tupchii
b98a7168c4
fix(emqx_gateway): convert and clear authentication certificates
2023-05-09 17:32:44 +03:00
Thales Macedo Garitezi
5643c12930
chore: bump gproc -> 0.9.0.1
...
Includes fix: https://github.com/uwiger/gproc/pull/193
Prior to the fix, when using the `random` pool strategy, one of the
workers receives about double the load of other workers, which
decreases throughput of bridges like webhook.
2023-05-09 11:27:25 -03:00
William Yang
328add3a02
Merge pull request #10563 from qzhuyan/fix/william/no_local_filter_all
...
fix(mqtt): drop all local messages in session deliver
2023-05-09 15:29:12 +02:00
Kjell Winblad
70cf1533db
feat: add RabbitMQ bridge
2023-05-09 14:32:26 +02:00
Zhongwen Deng
428cc45c69
fix: filter disable file handler
2023-05-09 17:50:06 +08:00
lafirest
b94290db58
Merge pull request #10625 from lafirest/refactor/limiter_cfg
...
refactor(limiter): simplify limiter configuration
2023-05-09 11:40:05 +08:00
Zhongwen Deng
ad111a27f9
feat: alias log.file.to to log.file.file
2023-05-09 11:24:51 +08:00
Zhongwen Deng
bf87aebbba
chore: upgrade hocon to 0.39.5
2023-05-09 11:24:51 +08:00
某文
7b000157d0
feat: refactor log configuration
2023-05-09 11:24:51 +08:00
Zaiming (Stone) Shi
4456a32465
chore: bump ee version to e5.0.4-alpha.1
2023-05-08 22:08:51 +02:00
Zaiming (Stone) Shi
a22dd399b6
Merge remote-tracking branch 'origin/master' into 0508-prepare-for-e5.0.4
2023-05-08 21:16:12 +02:00
Stefan Strigler
1ade7ce9a3
Merge pull request #10560 from sstrigler/EMQX-8390-5-0-x-io-tdb-bridge-port-conf-and-api-to-5-0
...
IoTDB Bridge
2023-05-08 20:27:01 +02:00
Paulo Zulato
77176787ca
feat: add log level configuration to ssl communication
...
Fixes https://emqx.atlassian.net/browse/EMQX-9781
2023-05-08 15:11:49 -03:00
Paulo Zulato
83c4b2f2d4
Merge pull request #10568 from paulozulato/feat-shutdown-count
...
feat: add shutdown count
2023-05-08 15:07:51 -03:00
Thales Macedo Garitezi
306a732e5e
test: perform sanity checks when starting apps
...
These are checks to detect inter-suite or inter-testcase flakiness
early. One suite might forget one application running
and stop others, and then the `application:start/2' callback is never
called again for this application.
One example of this was that: i) `emqx_rule_engine` was left running by
one suite; ii) `emqx` app was stopped, taking `emqx_config_handler`
down with it and losing the rule engine handler; iii) another suite
that uses rule engine "started" it (a no-op) and then the config
handler was never installed again.
2023-05-08 14:00:23 -03:00
Zaiming (Stone) Shi
4a2e583e3f
refactor: move telemetry to its own app
2023-05-08 15:16:27 +02:00
William Yang
8545d3d4a7
test: subscribe with no_local, mixed pub from different clients
2023-05-08 14:40:37 +02:00
Zhongwen Deng
04e62f6a2d
test: check_oom's max_mailbox_size
2023-05-08 20:27:52 +08:00
Zhongwen Deng
eaa129d0d7
feat: rename max_message_queue_len to max_mailbox_size
2023-05-08 20:27:52 +08:00
Zaiming (Stone) Shi
0250718910
chore: prepare for v5.0.25-rc.1 release
2023-05-08 14:04:22 +02:00
Zaiming (Stone) Shi
f450dc49ba
Merge remote-tracking branch 'origin/release-50' into 0508-prepare-for-e5.0.4
2023-05-08 14:03:42 +02:00
Zaiming (Stone) Shi
83257617cd
Merge pull request #10630 from zhongwencool/sync-release-50-to-master
...
Sync release 50 to master
2023-05-08 14:02:27 +02:00
Zaiming (Stone) Shi
f2a223c1e9
chore: prepare for e5.0.3 release
2023-05-08 10:59:04 +02:00
Stefan Strigler
d920f415cd
fix(emqx_logger): fix spec for set_log_level
2023-05-08 09:57:26 +02:00
William Yang
b6c7e55348
Merge pull request #10528 from qzhuyan/perf/william/force-config-atom-path
...
perf(config): ensure root keys of 'conf' config is atom
2023-05-08 09:37:18 +02:00
Zhongwen Deng
4f396a36a9
Merge remote-tracking branch 'upstream/master' into release-50
2023-05-08 14:58:03 +08:00
firest
d914d1ee1d
refactor(limiter): simplify limiter configuration
2023-05-08 11:45:49 +08:00
zhongwencool
d7b10fc329
Merge pull request #10489 from zhongwencool/warning-config-unknown-key
...
feat: warning unknown config root key
2023-05-06 14:28:56 +08:00
Zhongwen Deng
f45efbd12d
feat: warning unknown config root key
2023-05-06 10:43:52 +08:00
William Yang
48cf089870
fix(mqtt): drop all local messages in session deliver
2023-05-05 18:38:18 +02:00
William Yang
08d67aac9f
test: fix emqx_mqtt_caps_SUITE
2023-05-05 17:45:11 +02:00
Ilya Averyanov
dd3471bc22
Merge branch 'master' into file-transfer
...
* master: (194 commits)
fix(limiter): update change && fix deprecated version
chore: update changes
perf(limiter): simplify the memory represent of limiter configuration
ci(perf test): update tf variable name and set job timeout
ci: fix artifact name in scheduled packages workflow
fix: build_packages_cron.yaml workflow
ci: move scheduled builds to a separate workflow
build: check mnesia compatibility when generating mria config
docs: fix a typo in api doc description
feat(./dev): use command style and added 'ctl' command
test: fix delayed-pubish test case flakyness
refactor: remove raw_with_default config load option
chore: add changelog for trace timestrap
feat: increase the time precision of trace logs to microseconds
chore: make sure topic_metrics/rewrite's default is []
docs: Update changes/ce/perf-10417.en.md
chore: bump `snabbkaffe` to 1.0.8
ci: run static checks in separate jobs
chore(schema): mark deprecated quic listener fields ?IMPORTANCE_HIDDEN
chore: remove unused mqtt cap 'subscription_identifiers'
...
2023-05-05 16:50:18 +03:00
zhongwencool
fb3c0c1fe9
Merge pull request #10546 from zhongwencool/04-27-ssl_options
...
feat: organize the ssl_options
2023-05-05 20:51:19 +08:00
Zaiming (Stone) Shi
8ce2122516
chore: prepare to cut e5.0.3-rc.1
2023-05-05 12:56:34 +02:00
lafirest
335d948bce
Merge pull request #10591 from lafirest/fix/simplify_limiter_client_cfg
...
perf(limiter): simplify the memory represent of limiter configuration
2023-05-05 16:59:04 +08:00
firest
7a96a9772d
fix(limiter): update change && fix deprecated version
2023-05-05 16:26:06 +08:00
William Yang
e4f501417b
Merge pull request #10525 from qzhuyan/perf/william/avoid-new-map-when-get-mqtt-caps
...
perf(config): avoid build new map in emqx_mgmt_caps:get_caps
2023-05-05 10:22:08 +02:00
firest
4f47e65b7b
perf(limiter): simplify the memory represent of limiter configuration
2023-05-05 16:21:21 +08:00
Zaiming (Stone) Shi
14e055f18b
Merge pull request #10578 from zmstone/0502-refactor-delete-stale-config-check-opt
...
0502 refactor delete stale config check opt
2023-05-04 16:32:49 +02:00
Zaiming (Stone) Shi
856129984b
refactor: remove raw_with_default config load option
...
This option was previously only in tests to avoid
emqx_conf app overwriting previously set configs with default values.
After a03f2dd64b
, the issue for
test cases had been resolved.
This commit is to get rid of the option all together
2023-05-04 09:48:28 +02:00
Zhongwen Deng
06960853e0
feat: increase the time precision of trace logs to microseconds
2023-05-04 14:41:02 +08:00
Paulo Zulato
f965fa7b9a
feat: add shutdown count
...
Fixes https://emqx.atlassian.net/browse/EMQX-9008
Fixes https://emqx.atlassian.net/browse/EMQX-9219
2023-05-03 20:00:38 -03:00
William Yang
c38cec77a7
Merge pull request #10417 from qzhuyan/perf/william/no-make-ref-in-get-config
...
perf(config): eliminate make_ref() calls in config get calls
2023-05-03 16:56:44 +02:00
William Yang
2ded8e3836
Merge pull request #10577 from qzhuyan/dev/william/importance-mark-quic-listener
...
chore(schema): mark deprecated quic listener fields ?IMPORTANCE_HIDDEN
2023-05-03 13:23:32 +02:00
Andrew Mayorov
754045173e
chore: bump `snabbkaffe` to 1.0.8
2023-05-03 11:16:51 +03:00
William Yang
a4a5599636
chore(schema): mark deprecated quic listener fields ?IMPORTANCE_HIDDEN
2023-05-02 22:20:39 +02:00
Thales Macedo Garitezi
8aa7c014e7
perf(buffer_worker): avoid calling `ets:info/2`
...
(Almost?) fixes https://emqx.atlassian.net/browse/EMQX-9637
During the course of performance tests comparing the performance of
e5.0.3 and e4.4.16 regarding the webhook bridge in sync mode, we
observed that the throughput in e5.0.3 (sync) was much lower than in
e4.4.16: ~ 9 k msgs / s vs. ~ 50 k msgs / s, respectively.
Analyzing `observer_cli` output, we noticed that a lot of the time
both buffer workers and ehttpc processes was spent in `ets:info/2`.
That function was called to check the size of the inflight table when
updating metrics and checking if the inflight table was full. Other
uses of `ets:info/2` were contained inside the arguments to some
`?tp/2` macro usages (https://github.com/kafka4beam/snabbkaffe/pull/60 ).
By using a specific record to track the size of the table, we managed
to improve the bridge performance to ~ 45 k msgs / s in sync mode.
2023-05-02 17:05:32 -03:00
William Yang
c7af43bd72
chore: bump app vsn emqx 5.0.25
2023-05-02 21:51:43 +02:00
William Yang
e5884e0e87
chore: remove unused mqtt cap 'subscription_identifiers'
2023-05-02 21:50:36 +02:00
William Yang
be6cd5705f
fix(mqtt-cap): use global config as defaults
...
Don't use default values in module, use global mqtt config as default
2023-05-02 21:50:36 +02:00
William Yang
df0911be6e
Revert "perf: keep defaults of zone.mqtt"
...
This reverts commit 6184bc02ee30aa2d022793762e626893a8a32599.
2023-05-02 21:50:36 +02:00
William Yang
77405d9cd7
perf: keep defaults of zone.mqtt
2023-05-02 21:50:36 +02:00
William Yang
265c9ea668
chore: bump emqx app vsn to 5.0.25
2023-05-02 21:50:36 +02:00
William Yang
3d7201502b
perf(config): avoid build new map in emqx_mqtt_caps:get_caps
2023-05-02 21:50:36 +02:00
William Yang
77f67a9d07
perf(config): get_raw with 'binary' root key
2023-05-02 21:49:55 +02:00
William Yang
ce6343a4f3
perf(config): ensure root keys of 'conf' config is atom
2023-05-02 21:49:55 +02:00
Zaiming (Stone) Shi
d5f5f35787
Merge remote-tracking branch 'origin/release-50' into 0502-merge-release-50-back-to-master
2023-05-02 18:08:04 +02:00
Zaiming (Stone) Shi
0fd5fee4ca
Merge pull request #10547 from zmstone/0427-default-listeners-in-schema
...
0427 default configs in schema
2023-05-02 15:03:49 +02:00
Zaiming (Stone) Shi
2dd9191718
refactor: use different terms for config tombstone
...
there are 3 different kind of Erlang terms for tombstone related configs
1. the schema type (must be an atom)
2. the config value (must be a binary)
3. the config change comamnd (request) which is only used
in the code, but never persisted
2023-05-02 13:24:59 +02:00
Zaiming (Stone) Shi
b1dfbf7984
refactor: move shared macros to header file
2023-05-02 13:24:59 +02:00
Zaiming (Stone) Shi
674f837f36
refactor(emqx_listeners): better variable names
2023-05-02 13:24:59 +02:00
Zaiming (Stone) Shi
b65a71b498
test: allow emqx_ws_connection_SUITE to run without erasing configs
2023-05-01 19:37:12 +02:00
Zaiming (Stone) Shi
95cb262067
test: fix authn test cases
2023-05-01 18:42:45 +02:00
Zaiming (Stone) Shi
a03f2dd64b
test: allow pre-load configs before emqx_conf app
2023-05-01 15:35:33 +02:00
Zaiming (Stone) Shi
43c80ba635
chore: always init_load config wiht defaults populated
...
this effectively eliminates the need for raw_with_default
because it's now always set to true everywhere.
will remove it in a followup.
2023-04-30 21:24:46 +02:00
Zhongwen Deng
2ab0e30489
chore: seperate avail and default tls version
2023-04-30 10:48:54 +08:00
Zhongwen Deng
d8c4c6637b
feat: mark ssl_options.password as low level
2023-04-30 10:48:54 +08:00
Zhongwen Deng
cc2d529562
feat: remove tlsv1.1,tlsv1,dtlsv1 from default ssl version
2023-04-30 10:48:54 +08:00
Zaiming (Stone) Shi
2e9dca280c
refactor(listener-schema): use a tombstone for deleted listeners
2023-04-29 22:10:19 +02:00
Zaiming (Stone) Shi
4d705817d8
refactor(log): move default values to schema
2023-04-29 22:10:19 +02:00
Zaiming (Stone) Shi
a1551213c8
test: EMQX_ETC_DIR for test is app's etc dir
2023-04-29 22:10:19 +02:00
Zaiming (Stone) Shi
e0dc5645ab
fix(config): always fill defautls for all roots
...
prior to this commit, if a root existed in config files
it skips populating default values in raw config,
this made impossible to add default values for authz sources.
2023-04-29 22:10:19 +02:00
Zaiming (Stone) Shi
7c5a9e0e20
refactor: move the env interpolation function to emqx_schema
...
also added test cases
2023-04-29 22:10:19 +02:00
Zaiming (Stone) Shi
b0f3a654ee
refactor: delete default listeners from default config
...
The new config overriding rule is very much confusing for
people who wants to persist listener config changes made from
dashboard
This commit moves the default values from default config file
to schema source code.
In order to support build-time cert path at runtime, there
is also a naive environment variable interplation feature added.
2023-04-29 22:10:19 +02:00
Zaiming (Stone) Shi
c58ffce75f
fix(hocon): pin 0.38.2 with the map type value converter fixed
2023-04-29 22:10:19 +02:00
Zaiming (Stone) Shi
6e36139a17
chore: bump to e5.0.3-alpha.5
2023-04-27 22:56:34 +02:00
Thales Macedo Garitezi
270fa5d19d
Merge pull request #10550 from thalesmg/fix-ocsp-disabled-r50
...
fix(ocsp): disable periodic refresh when listener or stapling are disabled
2023-04-27 17:22:44 -03:00
Thales Macedo Garitezi
2bb40787f7
Merge pull request #10552 from thalesmg/fix-flaky-banned-test-v50
...
test(banned): attempt to fix flaky test
2023-04-27 15:47:37 -03:00
Thales Macedo Garitezi
0bd4beae6e
Merge pull request #10549 from thalesmg/tests-is-ci-var-v50
...
ci: set `IS_CI=yes` when running tests
2023-04-27 14:12:31 -03:00
Thales Macedo Garitezi
d845c4807d
fix(ocsp): disable periodic refresh when listener or stapling are disabled
...
Fixes https://emqx.atlassian.net/browse/EMQX-9773
2023-04-27 14:02:55 -03:00
Thales Macedo Garitezi
d0c4c70f74
test(banned): attempt to fix flaky test
...
Example failure:
https://github.com/emqx/emqx/actions/runs/4821105856/jobs/8587006829#step:8:4495
```
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
emqx_common_test_helpers:wait_for_down failed on line 434
Reason: {{t_session_taken,178,timeout},[{emqx_common_test_helpers,...},{...}|...]}
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Testing lib.emqx.emqx_banned_SUITE: *** FAILED test case 4 of 5 ***
%%% emqx_banned_SUITE ==> t_session_taken: FAILED
%%% emqx_banned_SUITE ==> {{t_session_taken,178,timeout},
[{emqx_common_test_helpers,wait_for_down,6,
[{file,"/__w/emqx/emqx/source/apps/emqx/test/emqx_common_test_helpers.erl"},
{line,434}]},
{emqx_banned_SUITE,t_session_taken,1,
[{file,"/__w/emqx/emqx/source/apps/emqx/test/emqx_banned_SUITE.erl"},
{line,176}]},
{test_server,ts_tc,3,[{file,"test_server.erl"},{line,1782}]},
{test_server,run_test_case_eval1,6,[{file,"test_server.erl"},{line,1291}]},
{test_server,run_test_case_eval,9,[{file,"test_server.erl"},{line,1223}]}]}
```
2023-04-27 13:19:26 -03:00
Thales Macedo Garitezi
c984449bad
Merge pull request #10530 from thalesmg/fix-wait-ssl-crl-test-v50
...
test(crl): ensure ssl_manager is ready to avoid flakiness
2023-04-27 11:59:34 -03:00
Thales Macedo Garitezi
521b549049
test(peer): define cookie when using `ct_slave` module
2023-04-27 11:58:40 -03:00
Thales Macedo Garitezi
99448151e9
test(crl): ensure ssl_manager is ready to avoid flakiness
...
Example failure: https://github.com/emqx/emqx/actions/runs/4806430125/jobs/8555021522?pr=10524#step:8:49138
2023-04-27 09:12:40 -03:00
Thales Macedo Garitezi
7e24b35bb3
chore: bump release version to `e5.0.3-alpha.4`
2023-04-26 17:09:39 -03:00
Ivan Dyachkov
35c48ef009
chore: v5.0.24
2023-04-26 18:02:44 +02:00
William Yang
15fe445c66
Merge pull request #10527 from qzhuyan/test/william/test-use-os-selected-port
...
fix(test): avoid port collision
2023-04-26 13:39:36 +02:00
William Yang
abf150518c
fix(test): avoid port collision
...
Use OS selected free port to avoid port collision among the test runs.
2023-04-26 12:16:16 +02:00
William Yang
5ed3c3a92c
perf(config): eliminate make_ref() calls in config get calls
2023-04-26 10:58:08 +02:00
SergeTupchiy
d398276852
Merge pull request #10518 from SergeTupchiy/upgrade-ekka-to-0.15.1-mria-0.5.2
...
chore: bump ekka to 0.15.1
2023-04-26 11:03:23 +03:00
zhongwencool
62e1dbdb4e
Merge pull request #10521 from zhongwencool/sync-release-50-to-master
...
Sync release 50 to master
2023-04-26 14:27:51 +08:00
zhongwencool
713e050a79
Merge pull request #10512 from zhongwencool/hocon-0.39.3
...
feat: improved the storage format of Unicode characters in data files
2023-04-26 13:59:51 +08:00
zhongwencool
9d893b49eb
Merge branch 'master' into sync-release-50-to-master
2023-04-26 10:54:46 +08:00
Thales Macedo Garitezi
79cf5cad19
Merge pull request #10378 from thalesmg/pulsar-producer-e50
...
feat: implement Pulsar Producer bridge (e5.0)
2023-04-25 18:01:43 -03:00
Serge Tupchii
19b5ebff81
chore: bump ekka to 0.15.1
...
ekka 0.15.1 uses mria 0.5.2, which includes the following changes:
- fix(mria_membership): call `mria_rlog:role/1` safely
- feat: add extra field to ?rlog_sync table (for future use)
2023-04-25 23:21:07 +03:00
Thales Macedo Garitezi
a703707803
chore: tag e5.0.3-alpha.3
2023-04-25 10:51:34 -03:00
Thales Macedo Garitezi
3138e2b3a1
chore: un-hide ocsp stapling config
...
Undoing https://github.com/emqx/emqx/pull/10160
2023-04-25 09:33:24 -03:00
Zhongwen Deng
308056f0fc
feat: improved the storage format of Unicode characters in data files
2023-04-25 18:08:34 +08:00
Zhongwen Deng
d6208d8847
test: add test for depreated config file
2023-04-25 14:47:05 +08:00
Zhongwen Deng
f84fc6f8b9
fix: can't update authentication when cluster-override.conf
2023-04-25 11:59:06 +08:00
Zhongwen Deng
3f689d0fdf
feat: don't do rpc call to check deprecated file
2023-04-25 10:10:56 +08:00
lafirest
29d3afd692
Merge pull request #10487 from lafirest/fix/limiter_instance
...
fix(limiter): optimize the instance of limiter
2023-04-25 09:43:04 +08:00
Andrew Mayorov
5efd590ca4
feat(ft): properly propagate config updates
...
Ensure that:
* Storage config might be removed.
* Local FS GC process is set up when Local FS storage is configured.
* Local FS GC process gets its timer reset on config updates.
* Storage / exporter gets chosen based on `type` only.
* Exporter config updates propagated as before.
Also employ `emqx_ft_schema:translate/1` instead of duplicating
defaults where applicable.
2023-04-24 21:51:54 +03:00
Serge Tupchii
99e892b5c4
chore: bump ekka to 0.15.0
...
ekka 0.15.0 uses mria 0.5.0, which adds several fixes, enhancements and features:
- protect `mria:join/1,2` with a global lock
- implement new function `mria:sync_transaction/4,3,2`, which waits for
a transaction replication to be ready on the local node
(if the local node is a replicant)
- optimize `mria:running_nodes/0`
- optimize `mria:ro_transaction/2` when called on a replicant node.
Fixes: EMQX-9588 (#10380 ), EMQX-9102, EMQX-9152, EMQX-9213
2023-04-24 20:52:20 +03:00
Thales Macedo Garitezi
377b143325
refactor: split `parse_server` into smaller functions, improve return type to use map
2023-04-24 14:17:29 -03:00
lafirest
2845469c48
Merge pull request #10490 from lafirest/fix/rmv_def_conn_limit
...
fix(limiter): remove the default limit of connect rate
2023-04-24 22:04:29 +08:00
Thales Macedo Garitezi
ad4be08bb2
feat: implement Pulsar Producer bridge (e5.0)
...
Fixes https://emqx.atlassian.net/browse/EMQX-8398
2023-04-24 10:28:26 -03:00
Thales Macedo Garitezi
f6da118ebd
test: fix flaky test
2023-04-24 09:28:36 -03:00
Thales Macedo Garitezi
dc48032309
feat(schema): add support for schemes in server parser/validator
2023-04-24 09:28:36 -03:00
Zaiming (Stone) Shi
366aa53c80
Merge pull request #10462 from zmstone/0430-EMQX-8434-shared-dispatch-ack-deprecated
...
chore: Hide config shared_dispatch_ack_enabled
2023-04-24 09:42:09 +02:00
Ivan Dyachkov
988e4ec1aa
Merge pull request #10476 from id/e5.0.3-alpha.2
...
chore: e5.0.3-alpha.2
2023-04-24 09:08:29 +02:00
firest
7b51a49f84
fix(limiter): remove the default limit of connect rate
2023-04-24 14:09:23 +08:00
firest
c2e35a42b0
fix(limiter): optimize the instance of limiter
...
We can reduce a limiter container with all types are `infinity` to just a `infinity` atom
2023-04-24 10:43:55 +08:00
某文
8bfee90322
chore: make static_check happy
2023-04-23 20:06:51 +08:00
Ivan Dyachkov
6beb9e00b6
chore: e5.0.3-alpha.2
2023-04-22 20:09:40 +02:00
Ilya Averyanov
0211bcf030
Merge branch 'master' into file-transfer
...
* master: (279 commits)
chore: shorten ct/run.sh script
chore: rename cassandra_impl to cassandra_connector
chore: fix mix.exs checking
refactor(cassandra): move cassandra bridge into its own app
chore: apply review suggestions
chore: update changes/ce/fix-10449.en.md
test: add a test for authn {}
chore: add changlog for authn_http validation
fix: always check authn_http's header and ssl_option
chore: apply suggestions from code review
fix(emqx_bridge): validate Webhook bad URL and return 'BAD_REQUEST' if it's invalid
fix(emqx_alarm): add safe call API to activate/deactivate alarms and use it in resource_manager
perf(emqx_alarm): use dirty Mnesia operations to activate an alarm
ci: simplify find-apps.sh for ee apps
perf(emqx_resource): don't reactivate alarms on reoccurring errors
ci: check if Elixir files are formatted in pre-commit hook
fix(dynamo): fix field name errors
chore: remove *_collector for prometheus api's example
chore: make plugins config to low level
chore: re-split dynamo i18n file
...
2023-04-21 17:37:17 +03:00
Zaiming (Stone) Shi
701a1f65f9
chore: Hide config shared_dispatch_ack_enabled
2023-04-21 13:59:55 +02:00
SergeTupchiy
b38ae7f78f
Merge pull request #10407 from SergeTupchiy/EMQX-9529-resource-manager-crash-on-alarm-timeout
...
fix(emqx_resource): call emqx_alarm safely and don't reactivate alarm on reoccurring errors
2023-04-20 17:53:56 +03:00
Serge Tupchii
423a30fbb3
fix(emqx_alarm): add safe call API to activate/deactivate alarms and use it in resource_manager
...
Don't let 'emqx_resource_manager' crash because of emqx_alarm timeouts.
Fixes: EMQX-9529/#10357
2023-04-20 17:15:13 +03:00
Serge Tupchii
b960d2ecb3
perf(emqx_alarm): use dirty Mnesia operations to activate an alarm
...
Alarms are stored in a local content shard and all 'activate' operations
are serialized as they are called by one process ('emqx_alarm' gen_server), so
using dirty operations gives performance gain without sacrificing consistency.
Fixes: EMQX-9529/#10357
2023-04-20 17:15:13 +03:00
Zaiming (Stone) Shi
415830a0a2
Merge remote-tracking branch 'origin/release-50' into 0420-sync-release-50-to-masteer
2023-04-20 11:03:39 +02:00
lafirest
8ccfbe9e16
Merge pull request #10448 from lafirest/fix/limiter_compatibility
...
fix(limiter): fix compatibility problem of configuration
2023-04-19 23:19:19 +08:00
Thales Macedo Garitezi
cb3ef65775
Merge pull request #10439 from thalesmg/unhide-ocsp-config-v50
...
chore: un-hide ocsp stapling config
2023-04-19 09:21:10 -03:00
firest
4f0c891aa6
chore: bump version && update changes
2023-04-19 15:45:31 +08:00
firest
5455500647
fix(limiter): fix compatibility problem of configuration
2023-04-19 15:12:55 +08:00
Thales Macedo Garitezi
6a1ef5e68a
Merge pull request #10422 from thalesmg/fix-plugin-sync-single-node-v50
...
fix(plugins): attempt to extract plugin from current node on startup
2023-04-18 14:39:02 -03:00
Thales Macedo Garitezi
199cbc60d9
chore: un-hide ocsp stapling config
...
Undoing https://github.com/emqx/emqx/pull/10160
2023-04-18 14:38:03 -03:00
Zaiming (Stone) Shi
f361870ca7
refactor: hide sysmon.top config
2023-04-18 19:17:03 +02:00
Zaiming (Stone) Shi
d51cc750de
refactor: hide psk user_lookup_fun
2023-04-18 19:17:03 +02:00
Zaiming (Stone) Shi
a30e08d06a
refactor: set authn config at 'low' prio instead of 'hidden'
2023-04-18 19:17:03 +02:00
Ivan Dyachkov
c858fba9d4
chore: v5.0.23
2023-04-18 17:34:28 +02:00
Ivan Dyachkov
dc78ecb41c
chore: merge upstream/master
2023-04-18 17:33:32 +02:00
Thales Macedo Garitezi
89cd6cfede
fix(plugins): attempt to extract plugin from current node on startup
...
Fixes https://emqx.atlassian.net/browse/EMQX-9605
Fixes https://github.com/emqx/emqx-elixir-plugin/issues/25
If an user happens to configure a plugin in a lone-node cluster via
environment variables, it would fail to start up as there are no other
nodes to copy the plugin from. Here, we attempt to check if the
package is present in the current node but not yet extracted.
2023-04-18 11:10:23 -03:00
Zhongwen Deng
22a1d05d7b
feat: hide ssl_options.user_lookup_fun
2023-04-18 20:13:44 +08:00
Zaiming (Stone) Shi
d0a7e7c406
Merge pull request #10421 from zmstone/0417-refine-authn-schema-namespace
...
0417 refine authn schema namespace
2023-04-18 14:04:20 +02:00
Zaiming (Stone) Shi
6dd7befaab
refactor: unify authn authz type names
2023-04-18 09:48:28 +02:00
ieQu1
282bfee8ff
feat(emqx): Add an API that returns the list of running nodes
2023-04-18 09:22:58 +02:00
zhongwencool
ad3e529994
chore: update changes/ce/feat-10389.en.md
...
Co-authored-by: Thales Macedo Garitezi <thalesmg@gmail.com>
2023-04-18 09:34:01 +08:00
Ivan Dyachkov
c03a94bae9
chore: e5.0.3-alpha.1
2023-04-17 16:48:07 +02:00
Zaiming (Stone) Shi
6969c2a670
refactor: not leagal -> invalid
2023-04-17 13:58:14 +02:00
Zaiming (Stone) Shi
1aa5b528e9
feat: generate hotconf and bridge schema on the fly
2023-04-17 13:58:14 +02:00
Zaiming (Stone) Shi
18974a8e11
refactor: make schema dump and swagger spec work with split desc files
2023-04-17 13:58:11 +02:00
Ivan Dyachkov
9712aad7a8
Merge pull request #10413 from id/0416-e5.0.3-code-freeze
...
0416 e5.0.3 code freeze
2023-04-17 13:51:58 +02:00
某文
e9e0ae7f0a
chore: When matching authz's and/or rules, check the simple ones first to improve efficiency
2023-04-17 17:23:39 +08:00
Ivan Dyachkov
9fc8a498f8
chore: bump apps versions
2023-04-17 09:09:08 +02:00
firest
02f8d073f8
test(limiter): fix test errors and make spellcheck happy
2023-04-17 10:06:43 +08:00
firest
55376144ce
fix(limiter): simplify the configuration of the limiter
2023-04-17 10:06:36 +08:00
zhongwencool
69d1a35c90
Merge pull request #10156 from zhongwencool/conf-refactor
...
feat: configuration priority ENV > emqx.conf > API
2023-04-16 13:45:35 +08:00
Zhongwen Deng
ad65fefac2
fix: rename emqx_misc to emqx_utils
2023-04-16 10:27:23 +08:00
zhongwencool
a00daa4d97
Merge branch 'master' into deprecated-stats-conf
2023-04-15 06:47:28 +08:00
zhongwencool
494ffe86ad
Merge branch 'master' into conf-refactor
2023-04-15 06:40:38 +08:00
Stefan Strigler
7df0493312
Merge pull request #10390 from sstrigler/EMQX-9549-new-emqx-utils-app-to-collect-utility-modules
...
New emqx_utils app to collect utility modules
2023-04-14 20:33:11 +02:00
Zhongwen Deng
97a936ad4f
test: fix failed test
2023-04-14 23:46:05 +08:00
Zhongwen Deng
8facd130f6
chore: update cluster_hocon_file/0 function
2023-04-14 23:19:38 +08:00
zhongwencool
7c5dead03a
chore: update cluster_hocon_file doc
...
Co-authored-by: Zaiming (Stone) Shi <zmstone@gmail.com>
2023-04-14 22:30:35 +08:00
zhongwencool
bcce989906
chore: update has_deprecated_file doc
...
Co-authored-by: Zaiming (Stone) Shi <zmstone@gmail.com>
2023-04-14 22:30:11 +08:00
Zhongwen Deng
3789ca2622
chore: revert stats desc
2023-04-14 21:31:34 +08:00
Zhongwen Deng
7934a1cea1
feat: hide overload_protection,conn_congestion,flapping_detect
2023-04-14 21:29:27 +08:00
某文
e5b85916b6
feat: hidden stats config
2023-04-14 21:29:27 +08:00
Zhongwen Deng
c0e6e79bcd
feat: don't remove default value when save config
2023-04-14 21:17:34 +08:00
Zhongwen Deng
c21744c260
fix: hocon_pp crash when atom_key
2023-04-14 20:51:58 +08:00
Zhongwen Deng
a271ba5ff9
feat: don't check_permission on local.conf
2023-04-14 20:51:58 +08:00
Zhongwen Deng
5f4ea3b6d8
feat: deprecated cluster-override.conf
2023-04-14 20:51:58 +08:00
Zhongwen Deng
180f571765
feat: configuration priority ENV > emqx.conf > API
2023-04-14 20:51:58 +08:00
zhongwencool
57e8e2dae2
Merge pull request #10401 from zhongwencool/hide-conf-04-14
...
feat: hide shared_subscription_group,rpc,slow_subs
2023-04-14 20:36:10 +08:00
Stefan Strigler
a295d0f134
fix: add rebar3_path_deps plugin
2023-04-14 14:29:25 +02:00
Stefan Strigler
1bad6ca67d
fix: jiffy pretty print is a bit different from jsx
2023-04-14 13:41:34 +02:00
Stefan Strigler
4f80690162
fix: byebye jsx
2023-04-14 13:41:34 +02:00
Stefan Strigler
19981757ae
fix: add is_json
2023-04-14 13:41:34 +02:00
Stefan Strigler
062ce5f819
refactor: rename emqx_map_lib to emqx_utils_maps
2023-04-14 13:41:34 +02:00
Stefan Strigler
6e8665365b
refactor: rename emqx_tables to emqx_utils_ets
2023-04-14 13:41:33 +02:00
Stefan Strigler
d0df086c80
refactor: rename emqx_api_lib to emqx_utils_api
2023-04-14 13:41:33 +02:00
Stefan Strigler
9c11bfce80
refactor: rename emqx_misc to emqx_utils
2023-04-14 13:41:27 +02:00
Stefan Strigler
f8e9e54393
refactor: move emqx_json to emqx_utils_json
2023-04-14 13:31:27 +02: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
Zhongwen Deng
be35ae2132
feat: hide shared_subscription_group,rpc,slow_subs
2023-04-14 17:14:11 +08: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
某文
58e31d5efd
feat: hide ex_hook/rewrite/topic_metric/persistent_session_store/overload_protection
2023-04-13 21:52:35 +08:00
某文
c1163d1952
chore: share emqx_trace.hrl between code and test
2023-04-13 20:51:14 +08:00
某文
dd7dcfe373
fix: fix dialyzer warning
2023-04-13 20:04:03 +08:00
Zhongwen Deng
cc2beda37a
feat: hiden rule_engine/bridge/authz/authn from doc/example
2023-04-13 14:42:21 +08:00
Ivan Dyachkov
1e33600190
chore: bump version to v5.0.22
2023-04-12 17:33:53 +02:00
Ivan Dyachkov
f01e2f358b
Merge pull request #10367 from id/0411-sync-release-50-back-to-master
...
0411 sync release 50 back to master
2023-04-12 17:23:17 +02:00
Ivan Dyachkov
bdffa925db
chore: merge upstream/master release-50
2023-04-12 15:30:20 +02:00
JianBo He
d16b5c40d6
Merge pull request #10356 from HJianBo/async-batch-cassa
...
feat: support async and batch callback for cassandra connector
2023-04-12 20:59:36 +08:00
Zhongwen Deng
45254c5936
chore: add changelog for create trace
2023-04-12 17:59:14 +08:00
Zhongwen Deng
f161399bcc
feat: deprecated trace config
2023-04-12 17:07:45 +08:00
Thales Macedo Garitezi
914184697e
Merge pull request #10337 from thalesmg/schema-registry-v50
...
feat: implement schema registry for 5.0 (avro)
2023-04-11 16:46:27 -03:00
Andrew Mayorov
e70deae1c3
feat(resource): ask for metrics only when needed
2023-04-11 12:00:19 +03:00
JianBo He
d501c1ee9c
chore: update changes
2023-04-11 14:04:41 +08:00
Ivan Dyachkov
a711ce6b93
chore: bump version to e5.0.2
2023-04-10 18:10:31 +02:00
Zhongwen Deng
c68909767a
feat: more straightforward log for force_shutdown reason
2023-04-10 11:21:07 +08:00
Ilya Averyanov
d7a85242de
fix(ft-s3): fix s3 listing
2023-04-07 17:36:47 +03:00
Andrew Mayorov
b6b044f429
feat(ft): move out exporter concept into dedicated modules
2023-04-07 17:25:22 +03:00
Andrew Mayorov
0d39546080
feat(wdgraph): add `fold/3` which folds over graph edges
2023-04-07 17:25:22 +03:00
Ilya Averyanov
15dc7c3e84
fix(test): fix node helper usage
2023-04-07 17:25:22 +03:00
Andrew Mayorov
715816e67b
feat(ft): add GC logic and process for the FS storage backend
2023-04-07 17:25:22 +03:00
Andrew Mayorov
b189ee463c
feat: add weighted directional graph ADT with shortest path
...
Basically, separate what abstraction was in `emqx_ft_assembly` into
dedicated module with a compact interface and a basic testsuite.
2023-04-07 17:25:22 +03:00
Andrew Mayorov
130601376a
perf(ft-asm): express coverage through shortest path on graph
...
Coverage becomes the shortest path problem on graph where nodes are
offsets and edges are nodes' segments. Implement a simple Dijkstra
algorithm to find one.
2023-04-07 17:25:22 +03:00
Andrew Mayorov
97cfdf8eef
test(ft-asm): add property tests for file assembly
2023-04-07 17:25:22 +03:00
Andrew Mayorov
10d4c4305a
feat(maybe): add basic tests for the new module
2023-04-07 17:25:22 +03:00
Andrew Mayorov
58115715dd
fix(ft): require final size in `fin` packet
...
Otherwise there are situations when it's not entirely clear if a
transfer is really ready to be assembled. Since the `size` field
in a filemeta is not required (and rightly so), we need client to
tell us the final transfer size at the end of the process.
Also synthesize a testcase to show why it's needed.
Also worth noting that right now `fin` packets require final size,
even if a client already told us the size through filemeta. The
latter is regarded as serving informational purposes only (which
means that, for example, it might differ from the final size, or
some tranfer progress might show >100% somewhere because of that).
2023-04-07 17:25:22 +03:00
Ilya Averyanov
c073914f75
chore(ft): fix gen_rpc flakyness
2023-04-07 17:25:22 +03:00
Ilya Averyanov
1c61165a91
fix(ft): fix emqx_cm takover
2023-04-07 17:25:22 +03:00
Ilya Averyanov
bc0a15afd7
feat(ft): fix test for CI
2023-04-07 17:25:21 +03:00
Ilya Averyanov
f6a0598f27
feat(ft): add file transfer tests
2023-04-07 17:25:21 +03:00
Ilya Averyanov
2e889f4ac7
feat(ft): add emqx_ft tests and fixes
2023-04-07 17:25:21 +03:00
Ilya Averyanov
eae3dc7b4b
feat(ft): update BPAPI
2023-04-07 17:25:21 +03:00
Ilya Averyanov
9e4a37a398
fix(ft): fix typespecs
2023-04-07 17:25:21 +03:00
Ilya Averyanov
836ec213c9
feat(ft): add responder tests
2023-04-07 17:25:21 +03:00
Ilya Averyanov
b4a42a447c
feat(ft): removed replicated data
2023-04-07 17:25:21 +03:00
Ilya Averyanov
d36ca18bff
feat(ft): tie file transfer frontend and backend together
2023-04-07 17:25:21 +03:00
Ilya Averyanov
aaaef30be6
feat(ft): add file transfer app and bootstrap replicated ft data structure
2023-04-07 17:25:21 +03:00
Ilya Averyanov
d976943f99
feat(ft): add basic hooks
2023-04-07 17:25:21 +03:00
Thales Macedo Garitezi
7c05304ff4
chore: bump version to e5.0.2-rc.6
2023-04-06 16:53:55 -03:00
Thales Macedo Garitezi
33100ecca6
feat: implement schema registry for 5.0 (avro)
...
Part of https://emqx.atlassian.net/browse/EMQX-9251
This ports part of the Schema Registry app from 4.x to 5.0. Here,
only support for Avro is added. Subsequent PRs will follow to add
support for other formats.
2023-04-06 16:28:45 -03:00
Zaiming (Stone) Shi
11a7770d16
chore: bump version to e5.0.2-rc.5
2023-04-06 11:57:39 +02:00
JimMoen
bbb3fdb49e
fix: make emqx_api_lib compatible
2023-04-06 17:03:39 +08: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
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
Ivan Dyachkov
9d1a16aae1
feat: add emqx_rpc:multicall_on_running
...
also move emqx:is_running multicall to emqx_proto_v2:are_running
2023-04-04 20:40:47 +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
Zaiming (Stone) Shi
d25db3ace4
chore: bump version to e5.0.2-rc.4
2023-04-04 16:38:25 +02: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
Thales Macedo Garitezi
a8f8228a12
Merge pull request #10308 from thalesmg/test-increase-peer-timeout-v50
...
test(peer): increase init and startup timeout for peer nodes
2023-04-03 15:46:13 -03: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
Zaiming (Stone) Shi
2f2e8b8218
chore: bump version to e5.0.2-rc.3
2023-04-03 20:23:31 +02:00
Thales Macedo Garitezi
06048ae4ff
Merge pull request #10316 from thalesmg/flaky-crl-emqtt-test-v50
...
test(crl): fix flaky test (v5.0)
2023-04-03 15:12:36 -03:00
Thales Macedo Garitezi
8b5a717a1f
test(peer): increase init and startup timeout for peer nodes
...
Attempt to stabilize tests that use cluster nodes.
2023-04-03 13:20:22 -03:00
Zaiming (Stone) Shi
2d6ca69ffb
refactor: no support for listener level authentication for now
2023-04-03 16:49:35 +02:00
Thales Macedo Garitezi
ed25ee6fec
test(crl): fix flaky test (v5.0)
2023-04-03 10:58:31 -03:00
Thales Macedo Garitezi
ec1871ffde
test(janitor): catch each callback invocation
2023-04-03 10:20:19 -03:00
Zaiming (Stone) Shi
36000abf51
refactor: relocate i18n files for apps/emqx
2023-04-03 13:12:24 +02:00
zhongwencool
d63680cf25
Merge pull request #10307 from emqx/release-50
...
Sync release-50 back to master
2023-04-02 11:36:41 +08:00
Zaiming (Stone) Shi
b17548f382
Merge pull request #10265 from HJianBo/improve-some-options-desc
...
docs: improve some mqtt options description
2023-04-01 16:43:15 +02:00
Zaiming (Stone) Shi
abf0329b60
test(emqx_banned_SUITE): fix flaky test case
2023-03-31 13:03:00 +02:00
William Yang
d9bec63733
Merge pull request #10284 from qzhuyan/docs/william/shared-subs
...
chore(docs): update shared_subscription_strategy
2023-03-31 09:44:12 +02: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
William Yang
3c52faa55e
chore(docs): update shared_subscription_strategy
2023-03-30 13:32:45 +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
Zaiming (Stone) Shi
494e4b639a
chore: exit with non-zero status if config initialization failed
2023-03-30 12:52:51 +02:00
JianBo He
1ff8ecf604
chore: fix typos
2023-03-30 15:10:10 +08:00
JianBo He
3c495f8fd2
chore: update apps/emqx/i18n/emqx_schema_i18n.conf
2023-03-30 08:44:28 +08:00
JianBo He
758e610059
chore: apply suggestions from code review
...
Co-authored-by: Zaiming (Stone) Shi <zmstone@gmail.com>
2023-03-30 08:42:08 +08: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
27aa3f49aa
docs: improve some mqtt options description
2023-03-29 15:02:01 +08:00
Zaiming (Stone) Shi
11c120f87c
chore: bump emqx app vsn
2023-03-28 21:19:03 +02:00
Zaiming (Stone) Shi
4b428f7a29
chore: bump version to e5.0.2-rc.2
2023-03-28 21:18:21 +02:00
William Yang
ecc2cd1a94
test: password cert for SSL listener
2023-03-28 17:15:59 +02:00
Zaiming (Stone) Shi
3f9ed08308
fix(emqx_schema): ocsp field use 'importance' to replace 'hidden'
2023-03-28 14:29:24 +02:00
Zaiming (Stone) Shi
d07987288a
chore: add some example annotations for config importance level
2023-03-28 14:29:24 +02:00
Zaiming (Stone) Shi
5a19b6f73e
chore: pin hocon 0.38.0 (with config importance level annotation)
2023-03-28 14:29:24 +02:00
Zaiming (Stone) Shi
813ccd7df1
chore: hide node.perf configs
...
these configs are rarely needed by regular users
and if they are to be changed, it should be done by
someone who really understands what they mean
2023-03-28 14:29:24 +02:00
Xinyu Liu
c607e4ed92
Merge pull request #10243 from terry-xiaoyu/remove-peercert-from-conninfo50
...
chore: remove peercert from the state of connection processes
2023-03-28 17:22:57 +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
Andrew Mayorov
89108594f0
Merge pull request #10212 from keynslug/test/EMQX-9269/cluster-env
...
test(bridge-api): also run testcases in cluster environment
2023-03-28 11:36:48 +03:00
Andrew Mayorov
b14a420885
fix(test): delete mnesia schema in-between test suites
...
When using `emqx_common_test_helpers` at least. This should help
reduce the need for superfluous cleanups and test failures due to
unclean state.
2023-03-27 23:41:19 +03:00
Andrew Mayorov
11b5b7b638
test(bridge-api): also run testcases in cluster environment
...
Excluding a couple of testcases which does not make much sense running
in the cluster. Also try to reduce amount of "noise" in the testcases,
making them easier to comprehend.
Co-authored-by: Thales Macedo Garitezi <thalesmg@gmail.com>
2023-03-27 23:41:08 +03:00
Stefan Strigler
64a1d84a44
fix: create consistent interface 'with_node' for API access
2023-03-27 12:14:48 +02:00
William Yang
cec77c2b65
test(quic): chasing flaky tc.
2023-03-27 11:54:08 +02:00
William Yang
169cc9f822
chore(quic): unhide TLS certfile password
2023-03-27 11:54:08 +02:00
Shawn
07ac2cd57a
chore: remove peercert from the state of connection processes
2023-03-27 09:33:17 +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
dd996ad1dc
chore: bump app vsns
2023-03-24 21:47:15 +01: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
bf29919708
Merge pull request #10160 from thalesmg/hide-ocsp-v50
...
chore(ocsp): hide ocsp from schema for now
2023-03-24 15:32:47 +01:00
Thales Macedo Garitezi
166191abd6
chore(ocsp): hide ocsp from schema for now
...
We're going to release it in a later version. So, for now, we'll just
hide it.
2023-03-24 10:04:16 -03:00
Ivan Dyachkov
0208fc8296
chore: e5.0.2-rc.1
2023-03-24 08:55:31 +01:00
William Yang
7e15f90bf5
chore(test): check openssl cmd returns
2023-03-23 15:06:21 +01:00
William Yang
88731fd145
feat(quic): support TLS password protected keyfile
2023-03-23 15:06:21 +01:00
Serge Tupchii
e3541d8947
test: move dashboard specific cleanup call from emqx_common_test_helpers to the relevant test suite
2023-03-23 11:59:43 +02: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
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
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
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
84fc64822e
style: fix wording for nxdomain and malformed_username_or_password
...
Co-authored-by: Zaiming (Stone) Shi <zmstone@gmail.com>
2023-03-21 15:02:29 +01:00
Stefan Strigler
8af3fb4ee7
feat: move human readable error translations to emqx_misc
2023-03-21 15:02:29 +01:00
William Yang
7d8fc3d2ad
Merge pull request #10185 from qzhuyan/dev/william/bump-quicer
...
chore(build): Support fetching binary for macOS M1 [quicer 0.0.114]
2023-03-21 11:32:33 +01:00
William Yang
092daf409a
chore(testlib): update include for CI of emqtt lib
2023-03-21 09:03:31 +01:00
William Yang
b6e583143f
chore: bump quicer 0.0.114
...
for fetching quicer binary for macOS M1 builds.
2023-03-21 09:01:25 +01:00
Thales Macedo Garitezi
f2b54588e7
docs: improve descriptions
...
Co-authored-by: Zaiming (Stone) Shi <zmstone@gmail.com>
2023-03-20 18:09:38 -03:00
Thales Macedo Garitezi
7a71d64686
feat(crl): add crl check support
2023-03-20 18:09:38 -03:00
Ilya Averyanov
ee403423b9
Merge pull request #10166 from savonarola/0318-mix-build
...
chore(mix): fix mix builds
2023-03-20 22:37:21 +02: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
Ilya Averyanov
39f22585d0
chore(mix): fix mix builds
2023-03-19 01:39:56 +02:00
Zaiming (Stone) Shi
149afe863f
chore: e5.0.2/v5.0.21 code freeze
2023-03-17 13:19:44 +01:00
Thales Macedo Garitezi
cf1cce011b
Merge pull request #9564 from thalesmg/kafka-source-ee50
...
feat: implement kafka consumer (ee5.0)
2023-03-17 09:04:53 -03:00
Zhongwen Deng
3c1254d873
fix: newly created listeners have no limiter restrictions
2023-03-17 14:32:42 +08:00
Thales Macedo Garitezi
966276127e
test: trying to make tests more stable
2023-03-16 13:43:01 -03:00
Thales Macedo Garitezi
947e014132
test: improve cluster node helpers
...
* Add option to start autocluster. This is useful for scenarios where
a cluster is already running and has some configurations set (via
config handler/cluster rpc) and later another node joins.
* Improve mnesia data directory isolation for nodes. A new dir is set
so that we may avoid intra and inter-suite flakiness due to dirty
tables and schema.
* The janitor is now called synchronously. This ensures the cleanup
is done before the test pid dies.
2023-03-16 13:43:01 -03:00
Thales Macedo Garitezi
b9e92173cf
test: improve cluster helper
...
1) Make each node have its own isolated data dir to avoid false
negatives.
2) Allow parameterizing the peer module.
3) Fix cluster RPC after a node joins the cluster.
2023-03-16 13:42:59 -03:00
Thales Macedo Garitezi
561c25f0e3
feat: update snabbkaffe -> 1.0.7
2023-03-16 13:42:38 -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
a614bdc94a
chore(ocsp): catch unexpected error when fetching ocsp response
2023-03-16 09:55:52 -03:00
Thales Macedo Garitezi
d1f58d6e2d
refactor: replace macro by simple function
2023-03-16 09:32:40 -03:00
Thales Macedo Garitezi
e5645a7b21
refactor: rename macros
2023-03-16 09:18:16 -03:00
JimMoen
afd29b69c4
chore: refine i18n doc punctuation
2023-03-16 18:22:29 +08:00
Ivan Dyachkov
e3d4deb8a0
Merge pull request #10147 from id/chore-minor-improvements
...
Chore minor improvements
2023-03-16 08:18:43 +00:00
Andrew Mayorov
816667d85c
Merge pull request #10123 from fix/EMQX-9136/lookup-busy-resources
...
perf(bridge-api): ask nodes' bridge listings in parallel
2023-03-16 00:07:12 +03:00
Ivan Dyachkov
5258b4c6e9
chore: bump ekka to 0.14.5
...
to make use of erlang-rocksdb 1.7.2-emqx-9
2023-03-15 19:54:55 +01:00
Andrew Mayorov
cad6492c99
perf(bridge-api): ask bridge listings in parallel
...
Also rename response formatting functions to better clarify their
purpose.
2023-03-15 19:17:29 +03:00
Thales Macedo Garitezi
0deb9925c1
docs: improve descriptions
...
Co-authored-by: William Yang <mscame@gmail.com>
2023-03-15 10:30:02 -03:00
Ivan Dyachkov
c9b736ae23
Merge pull request #10141 from id/0315-chore-merge-release-50-to-master
...
0315 chore merge release 50 to master
2023-03-15 12:11:54 +00:00
Thales Macedo Garitezi
04378f242c
feat(ocsp_cache): give ocsp cache table an heir
2023-03-14 16:09:06 -03:00
Thales Macedo Garitezi
f6707d1dd0
test: fix how ocsp client is run in tests
...
For some yet unknown reason the old test version using `open_port`
does not work in OTP 25, but works fine in OTP 24. There are no
messages at all received from The openssl client port program in OTP
25.
2023-03-14 16:09:06 -03:00
Thales Macedo Garitezi
63ef2f9b79
feat: save uploaded OCSP issuer pem like other ssl certs
2023-03-14 16:09:06 -03:00
Thales Macedo Garitezi
158f054187
docs: improve descriptions
...
Co-authored-by: Zaiming (Stone) Shi <zmstone@gmail.com>
2023-03-14 16:09:06 -03:00
Thales Macedo Garitezi
57e38c8502
refactor(ocsp): add reusable type for normalized binary URLs
2023-03-14 16:09:05 -03:00
Thales Macedo Garitezi
067747c2de
docs: improve descriptions
...
Co-authored-by: ieQu1 <99872536+ieQu1@users.noreply.github.com>
2023-03-14 16:08:47 -03:00
Thales Macedo Garitezi
52263a0448
feat: add ocsp stapling and crl support to mqtt ssl listener
2023-03-14 16:08:47 -03:00
Thales Macedo Garitezi
65fee34fe4
test: fix inter-suite test teardowns
2023-03-14 16:08:47 -03:00
Thales Macedo Garitezi
4880a849b9
chore: update emqtt -> 1.8.5
...
Needed for OCSP / CRL tests because of a bug that makes emqtt hang
forever on TLS handshake errors.
2023-03-14 16:08:47 -03:00
SergeTupchiy
9f9d16dd48
Merge pull request #10117 from SergeTupchiy/EMQX-8889_copy_plugins_on_joining_a_cluster
...
fix: copy plugins to a new node joining a cluster
2023-03-14 21:07:12 +02:00
Zaiming (Stone) Shi
6cbc17f110
Merge pull request #10135 from zmstone/0314-upgrade-to-hocon-0.37.0
...
chore: upgrade to hocon 0.37.0
2023-03-14 19:55:41 +01:00
Stefan Strigler
255117f2c4
chore: bump vsn e5.0.2-alpha.1
2023-03-14 19:51:35 +01: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
William Yang
fffb92ebb7
test(quic): make tc run independent
2023-03-14 11:46:24 +01:00
William Yang
4c28b9f839
chore(test): use power of 2 recvbuff size in quic test
...
Make msquic assertions happy while in debug mode.
2023-03-14 11:46:24 +01:00
Zaiming (Stone) Shi
18b145ab67
chore: upgrade to hocon 0.37.0
...
hocon 0.37.0 introduced schema field aliases
this change does not impact anything until we start using aliases
2023-03-14 11:39:55 +01:00
Zhongwen Deng
80205d9704
chore: apply code review
2023-03-14 10:54:05 +08:00
Zhongwen Deng
ee2847dcd9
test: make schema test happy
2023-03-14 09:17:45 +08:00
Zhongwen Deng
5be4d97c42
fix: don't allow empty string in server_port schema
2023-03-14 09:17:45 +08:00
Thales Macedo Garitezi
25c28eab81
chore: remove committed rebar3 binary
...
We already set up our custom rebar3 binary in CI, so this doesn't need
to be committed. It is also outdated with our currently used version.
2023-03-13 14:11:39 -03:00
lafirest
e8cf604ad4
Merge pull request #9893 from lafirest/feat/filiter_banned
...
feat(banned): filter out banned messages from mqueue
2023-03-13 09:58:39 +08:00
ieQu1
e3595f2e79
chore(mria): Bump version to 0.4.0
2023-03-11 00:37:25 +01:00
Andrew Mayorov
a86d06f043
chore: bump app versions following last merge-back
2023-03-10 16:44:15 +03: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
3f461f312a
chore: bump version to e5.0.1 and v5.0.20
2023-03-09 18:34:26 +01:00
Ilya Averyanov
cba0287439
fix(mqtt): fix channel crash for slow clients with enhanced authn
2023-03-09 17:27:24 +02: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
c773f5f5e1
chore: bump version to e5.0.1-rc.2
2023-03-08 13:55:37 +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
ieQu1
6f88cb7d9e
chore(ekka): Bump version to 0.14.3
2023-03-07 12:07:07 +01: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
Zaiming (Stone) Shi
133734b345
chore: bump version number to e5.0.1-rc.1 and v5.0.20
2023-03-07 08:41:13 +01:00
William Yang
7c65f6f9a9
fix: i18n desc of broker_shared_subscription_strategy
2023-03-06 15:09:56 +01:00
William Yang
abb5271177
test(quic): start listener with invalid parameter
2023-03-06 14:58:35 +01:00
William Yang
27c5389fdc
fix(quic): inval listener option casue segfault
...
bump quicer to 0.0.113
2023-03-06 14:05:33 +01:00
Zhongwen Deng
f498a3538b
fix: update max_awaiting_rel in session
2023-03-06 17:06:40 +08:00
William Yang
baf01617cd
fix(quic): mark unsupp TLS options deprecated
2023-03-02 14:03:44 +01:00
Zaiming (Stone) Shi
0185c81f69
chore: bump opensource edition version to v5.0.19
2023-03-01 11:53:24 +01:00
Zaiming (Stone) Shi
2b06089250
test: stop apps in end_per_suite
2023-03-01 08:48:23 +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
427e65bf21
fix: bump hocon to 0.36.0 disallow dup fields
2023-02-28 14:55:45 +01:00
William Yang
7136cc94f4
chore(quic): remove dup handshake_idle_timeout_ms
2023-02-28 14:55:45 +01:00
William Yang
f3e1860562
test: fix flaky olp tcs
...
Leave only one scheduler online to make test result stable.
2023-02-27 20:01:29 +01:00
William Yang
6dd99b3331
Merge pull request #10030 from qzhuyan/test/william/fix-quic-flaky-tc
...
chore: fix quic flaky tc
2023-02-27 10:04:12 +01:00
William Yang
58af936120
test: fix flaky emqx_broker_helper_SUITE:t_shard_seq
2023-02-24 21:21:12 +01:00
William Yang
60532569a2
test(quic): fix flaky
2023-02-24 21:21:12 +01:00
Zaiming (Stone) Shi
5150407f7b
chore: bump to version v5.0.18
2023-02-24 20:06:43 +01:00
Zaiming (Stone) Shi
b3f3bdeafe
Merge remote-tracking branch 'origin/master' into release-50
2023-02-24 20:05:59 +01: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
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
William Yang
fde19e2b4b
docs(quic): fix typos
2023-02-24 10:20:28 +01:00
William Yang
f61c3c47ca
docs(quic): add zh
2023-02-24 10:20:28 +01:00
William Yang
681fd80cab
docs(quic): move desc to i18n.
2023-02-24 10:20:28 +01:00
William Yang
ee77c113aa
test(quic): tuned listener
2023-02-24 10:20:28 +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
3413af76be
fix(emqx_misc): ensure flatten list for safe dir
2023-02-23 09:05:52 +01:00
ieQu1
b0777ca73b
chore(ekka): Bump version
2023-02-22 20:55:04 +01:00
Stefan Strigler
0cfa5e2ce1
Merge pull request #9994 from sstrigler/EMQX-3688-emqx-mgmt
...
emqx mgmt code coverage and cleanup
2023-02-22 14:30:36 +01:00
William Yang
969cbecf91
Merge pull request #10010 from qzhuyan/dev/william/new-emqtt-quicer
...
chore: bump quicer 0.0.111 and emqtt 1.8.2
2023-02-21 13:30:27 +01:00
William Yang
0a207856aa
chore: bump quicer 0.0.111 and emqtt 1.8.2
2023-02-21 10:36:15 +01:00
Stefan Strigler
fc33bce40d
test(emqx_mgmt): test list_nodes/0
2023-02-21 09:41:00 +01:00
Zaiming (Stone) Shi
9316690c29
fix(schema): binary string for default values
...
A lot of the string value fields had default value defined in
schema as list-string rather than binary-string.
This caused the generated schema dump (in JSON format)
to have raw_default field as an integer array.
2023-02-21 09:09:51 +01:00
William Yang
31cfd728c4
ci(quic): bump to quicer 0.0.109 for ubuntu22.04 prebuilds
2023-02-20 14:50:35 +01:00
William Yang
bd4a84ac0a
test(quic): adapt to new emqtt reconnect mechanism.
2023-02-20 14:48:39 +01:00
William Yang
296e271b97
fix(quic): bump to emqtt 1.8.1
2023-02-20 10:53:51 +01:00
William Yang
cf72947f0a
test(quic): use quic.ssl_options
2023-02-20 10:53:42 +01:00
William Yang
ebd0fb74a3
test(quic): by default, bind to port not IPv4
2023-02-20 10:43:24 +01:00
William Yang
3f7032fbe9
chore(quic): troubleshooting large payload
2023-02-20 10:43:21 +01:00
William Yang
fef0a9375c
chore(quic): make spell check happy
2023-02-20 10:43:17 +01:00
William Yang
b81b62c639
chore(quic): doc about deprecated fields.
2023-02-20 10:43:17 +01:00
William Yang
45718dd77f
chore(quic): debug flaky large payload tc.
2023-02-20 10:43:17 +01:00
William Yang
f106f30a96
chore: fix comments in emqx_connection
2023-02-20 10:43:17 +01:00
William Yang
c6c3bd0396
chore(quic): schema format fix
2023-02-20 10:42:55 +01:00
William Yang
0e40f6cf48
feat(quic): listener use common server ssl_options
2023-02-20 10:42:55 +01:00
William Yang
fc3e8715a1
feat(quic): bump to emqtt 1.8.0
2023-02-20 10:42:55 +01:00
William Yang
04f502fb54
feat(quic): support mTLS with 'verify' and 'cacertfile'
2023-02-20 10:42:55 +01:00
William Yang
c7efccb996
chore: bump emqtt 1.7.1-pre2 & quicer 0.0.108
2023-02-20 10:42:55 +01:00
William Yang
c457c1092b
fix(quic): show QUIC listeners in dashboard
2023-02-20 10:42:55 +01:00
William Yang
3c73c6b7c6
feat(quic): bump quicer to 0.0.107
2023-02-20 10:42:55 +01:00
William Yang
0351b32cf4
test(quic): disable shutdown policy for large payload test
2023-02-20 10:42:55 +01:00
William Yang
f4f346e387
test(quic): fix flaky test
2023-02-20 10:42:55 +01:00
William Yang
db544cf9ad
fix: emqtt vsn in rebar after rebase
2023-02-20 10:42:55 +01:00
William Yang
dc26790495
test(quic): trace why we get verify_peer
2023-02-20 10:42:55 +01:00
William Yang
f8fd201a8c
test(quic): fix flaky test
2023-02-20 10:42:55 +01:00
William Yang
d8fa65ea09
fix(quic): handle timeout event in data stream
2023-02-20 10:42:55 +01:00
William Yang
38247a9d62
feat(quic): bump quicer to 0.0.106
2023-02-20 10:42:55 +01:00
William Yang
381eb8ec68
chore(quic): fix dialyzer
2023-02-20 10:42:55 +01:00
William Yang
282d1a6829
ci: build dialyzer PLT with quicer, jq and bcrypt
2023-02-20 10:42:55 +01:00
William Yang
88cdfcc4a6
test(quic): excl. multistream SUITE when BUILD_WITHOUT_QUIC
2023-02-20 10:42:55 +01:00
William Yang
de810e04fd
chore(quic): clean test code
2023-02-20 10:42:55 +01:00
William Yang
98a72d40ce
fix(emqx_connection): do not raise an exception for normal shutdown
2023-02-20 10:42:55 +01:00
William Yang
1692a16778
feat(quic): handle ctrl stream normal shutdown
2023-02-20 10:42:55 +01:00
William Yang
2a6cdd9da6
test(quic): enhance large payload test
2023-02-20 10:42:55 +01:00
William Yang
00f615a1e3
chore(quic): clean code
2023-02-20 10:42:55 +01:00
William Yang
22dcf5907e
feat(quic): bump to quicer 0.0.104
2023-02-20 10:42:55 +01:00
William Yang
f65ac5422e
test(quic): improve coverage
2023-02-20 10:42:55 +01:00
William Yang
5764994436
feat(quic): bump to quicer 0.0.103
2023-02-20 10:42:55 +01:00
William Yang
1e8b2e247e
feat(quic): 0-RTT multi-streams data
2023-02-20 10:42:55 +01:00
William Yang
71d3148544
feat(quic): stream use active_n 10
2023-02-20 10:42:55 +01:00
William Yang
0173121a30
feat(quic): improve coverage and remove unused code
2023-02-20 10:42:55 +01:00
William Yang
0544a3ca0c
fix(quic): setops on stream and handle peer needs stream
...
- setopts should go for stream
- handle peer_needs_streams for none msquic clients
2023-02-20 10:42:55 +01:00
William Yang
ceac5a0ec7
feat(quic): bump to quicer 0.0.101
2023-02-20 10:42:55 +01:00
William Yang
1840a7f923
test(quic): improve coverage
2023-02-20 10:42:55 +01:00
William Yang
5bdcb0562d
feat(quic): workaround to flushing the send buffer after conn shutdown
...
Could not find a way to ensure msquic flush the send buffer after
calling ConnectionShutdown.
So just close the ctrl stream and let conn owner shutdown the conn.
2023-02-20 10:42:55 +01:00
William Yang
04a8a49dbe
test: update testcase for new emqtt
2023-02-20 10:42:55 +01:00
William Yang
7d9bd33de9
feat(quic): bump quicer version to 0.0.100
2023-02-20 10:42:55 +01:00
William Yang
9b52beaee9
fix(quic): handle fast_close while handshake fail
2023-02-20 10:42:55 +01:00
William Yang
9f696928b6
feat(quic): multi streams
2023-02-20 10:42:55 +01:00
William Yang
a51c886908
fix: prepare for multi stream
2023-02-20 10:42:55 +01:00
William Yang
2d09a054e3
chore: add some typing
2023-02-20 10:42:55 +01:00
William Yang
00b59b4939
feat(quic): WIP multi-stream
2023-02-20 10:42:55 +01:00
Zaiming (Stone) Shi
6f1eaca253
chore: bump version to e5.0.1-alpha.1
2023-02-20 08:28:14 +01:00
ieQu1
794bedef9f
fix(emqx_ctl): Start CLI before ekka
2023-02-17 09:50:50 +01:00
Zaiming (Stone) Shi
719e02cc96
fix(metrics): use the same data source for RAM usage info
2023-02-15 16:11:39 +01:00
William Yang
4e6c7bfcbe
chore: changelog for hibernate_after
2023-02-14 16:26:58 +01:00
William Yang
d424d77e84
chore(TLS): hibernate_after default to 5s, follow version 4.x
2023-02-14 16:26:58 +01:00
William Yang
572e50e0a2
perf: add TLS config hibernate_after, reduce memory footprint
2023-02-14 16:26:55 +01:00
Zaiming (Stone) Shi
7d9b0f4826
chore: bump version to v5.0.17
2023-02-13 08:53:09 +01:00
Zaiming (Stone) Shi
a11217aa0f
chore: bump version to v5.0.17
2023-02-12 11:36:53 +01:00
Zaiming (Stone) Shi
d1eb788ee1
Merge pull request #9916 from qzhuyan/fix/william/bridge-mqtt-TLS-verify-wildcard-peer
...
fix(mqtt-bridge): support verify TLS wildcard cert
2023-02-10 09:39:35 +01:00
Zaiming (Stone) Shi
40f719a34d
Merge pull request #9936 from id/feat-disable-disksup
...
feat: disable disksup by default
2023-02-10 09:17:13 +01:00
Zaiming (Stone) Shi
42dfaf3ef2
Merge pull request #9910 from sstrigler/EMQX-8861-improve-bridge-restart-button-behaviour
...
EMQX 8861 improve bridge restart button behaviour
2023-02-09 18:00:48 +01:00
Zaiming (Stone) Shi
4e71f1cbc5
Merge pull request #9940 from zmstone/0208-ensure-no-leading-br-in-docs
...
Add style checks for i18n.conf files
2023-02-09 17:37:44 +01:00
Zaiming (Stone) Shi
157c919ba1
ci: add i18n style check script
2023-02-09 11:41:52 +01:00
ieQu1
123fea44de
chore(ekka): Bump version to 0.14.0
2023-02-08 17:35:14 +01:00
Zaiming (Stone) Shi
5df667738a
docs: fix bad i18n files
2023-02-08 17:25:22 +01:00
Ivan Dyachkov
fdb802975c
feat: disable disksup by default
2023-02-08 15:33:35 +01:00
Zaiming (Stone) Shi
d628aba079
Merge pull request #9718 from zmstone/0108-refactor-authn-schema-union-member-selector
...
0108 refactor authn schema union member selector
2023-02-07 16:45:47 +01:00
William Yang
6113d467c1
fix(mqtt-bridge): support verify TLS wildcard cert
2023-02-07 16:40:55 +01:00
Stefan Strigler
86f3f5787f
feat: allow to manually re-connect disconected bridge
2023-02-07 11:58:30 +01:00
Zaiming (Stone) Shi
4653ca65f7
fix(logger): fix REPORT_CB/2 CRASH logs
2023-02-06 23:46:49 +01:00
Zaiming (Stone) Shi
dc8f0c5101
refactor(authn): no need to check config at app boot
2023-02-06 18:19:22 +01:00
Zaiming (Stone) Shi
83e66da2aa
fix(authn): throw exception on invalid config from the API
2023-02-06 14:12:50 +01:00
Zaiming (Stone) Shi
a9c650da66
refactor: for better test coverage
2023-02-04 07:59:49 +01:00
Zaiming (Stone) Shi
2ebc89e339
refactor: authn schema union selector
2023-02-04 07:58:43 +01:00
Zaiming (Stone) Shi
4f91bf415c
fix: schema check error reason pattern
2023-02-04 07:58:06 +01:00
Zaiming (Stone) Shi
65319567cc
chore: no type check for 3rd party auth
2023-02-04 07:56:29 +01:00
Zaiming (Stone) Shi
fbc52330f3
refactor: do not re-check config in post_config_update
...
now that the type is not lazy, it should have already been checked
when reaching the post_config_update step
2023-02-04 07:56:29 +01:00
Zaiming (Stone) Shi
15035f7eb0
refactor: remove lazy type for authentication
...
The idea of using lazy type for authentication was to make the
config check easy to extend at runtime. However the reality
is: it's overly complicated.
It's more likely that people will just continue to implementing
the auth hook callbacks instead of injecting config schema
at runtime.
2023-02-04 07:56:29 +01:00
Zaiming (Stone) Shi
1e0fe270bc
chore: bump emqx app vsn to 5.0.17
2023-02-02 20:32:09 +01:00
Zaiming (Stone) Shi
94768c9f44
Merge remote-tracking branch 'origin/master' into 0202-merge-release-50-back-to-master
2023-02-02 20:21:26 +01:00
Zaiming (Stone) Shi
5fe3a0b1b3
Merge pull request #9898 from zmstone/0202-upgrade-to-dashboard-e1.0.3
...
chore: upgrade dashboard to v1.1.7 for ce and e1.0.3 for ee
2023-02-02 17:41:52 +01:00
Zaiming (Stone) Shi
42462db8b8
chore: bump version to v5.0.16 and e5.0.0
2023-02-02 17:26:00 +01:00
Zaiming (Stone) Shi
7ea140599a
Merge pull request #9894 from id/ci-always-run-static-checks
...
ci: always run static_checks
2023-02-02 16:33:19 +01:00
Zaiming (Stone) Shi
980ba2fd35
docs: Update apps/emqx/i18n/emqx_schema_i18n.conf
...
Co-authored-by: Ivan Dyachkov <dev@dyachkov.org>
2023-02-02 14:19:37 +01:00
Zaiming (Stone) Shi
0e299642cb
chore: function renamed but forgot to update xref excemption
2023-02-02 14:16:23 +01:00
Zaiming (Stone) Shi
d5c482b0b0
docs: remove timer unit from description
...
the user input has time unit. e.g. "5s" for 5 seconds etc.
2023-02-02 13:49:20 +01:00
firest
031b36da32
feat(banned): filter out banned messages from mqueue
2023-02-02 20:20:52 +08:00
Kjell Winblad
2cf193e2fd
Merge pull request #9839 from kjellwinblad/kjell/fix/Authorization_header_log_leak_webhook/EMQX-8791
...
fix: Authorization header leak in log entries for webhook
2023-02-02 10:38:42 +01:00
zhongwencool
e5bc787467
Merge pull request #9872 from zmstone/0131-improve-help-text
...
docs: improve docs for system monitoring config
2023-02-02 14:45:03 +08:00
Zaiming (Stone) Shi
6fd30a7e81
docs: improve docs for system monitoring config
2023-02-01 20:21:08 +01:00
Zaiming (Stone) Shi
ec3031271b
Merge pull request #9883 from zmstone/0201-upgrade-enterprise-dashboard-to-e1.0.2
...
0201 upgrade enterprise dashboard to e1.0.2
2023-02-01 16:26:21 +01:00
Zaiming (Stone) Shi
32d18ec594
Merge pull request #9878 from zmstone/0201-upgrade-ehttpc-0.4.6
...
fix(ehttpc): fix crash when webhook bridge uses `hash` pool type.
2023-02-01 15:00:28 +01:00
Zaiming (Stone) Shi
38ef37d109
chore: bump release version to e5.0.0-rc.4
2023-02-01 14:52:08 +01:00
zhongwencool
13511d2782
Merge pull request #9856 from zhongwencool/alarm-percent-decimals
...
fix: /api/nodes is timeout when emqx in high load
2023-02-01 19:40:53 +08:00
Zaiming (Stone) Shi
96a18e7105
chore: upgrade to hocon 0.35.3
2023-02-01 10:52:01 +01:00
Zhongwen Deng
ced55719ef
chore: only run t_sys_mem_check ct in linux
2023-02-01 14:47:41 +08:00
Zhongwen Deng
95ef1e806c
chore: don't crash when add_handler failed
2023-02-01 11:24:27 +08:00
Zhongwen Deng
9cbad5297c
fix: primary logger level not update
2023-02-01 11:16:30 +08:00
Zhongwen Deng
b6e6315b50
feat: change loads from string to float
2023-02-01 10:07:22 +08:00
Zhongwen Deng
0b19be074c
feat: cache OTP_VERSION in persistent_term
2023-02-01 10:07:22 +08:00
Zhongwen Deng
6162f90610
fix: don't crash when OTP_VERSION file is missing
2023-02-01 10:07:22 +08:00
Zhongwen Deng
5783127c30
test: cpu_sup:load mock test
2023-02-01 10:07:22 +08:00
Zhongwen Deng
2d67bb3fb6
fix: /api/nodes is timeout if emqx in high load
2023-02-01 10:07:22 +08:00
Zaiming (Stone) Shi
7e8253e3af
chore: bump version to e5.0.0-rc.3
2023-01-31 20:45:28 +01:00
Zaiming (Stone) Shi
ddfbc0a19f
refactor: refresh logger config before starting listeners
2023-01-31 18:50:16 +01:00
Zaiming (Stone) Shi
605d9972e4
fix(config): avoid calling emqx:update_config/2 for logger refresh
...
Prior to this fix, whatever configured for loggers are persisted to
cluster-override.conf.
This may cause troulbe for users who changes boot mode.
For example if the node is once started in console mode,
the logging config is persisted, with console enabled, but file
disabled.
Then if the user decide to start in daemon mode, all the logs
will silently go to erlang.log.N and emqx.log.N will be empty.
After this fix, only changes really made into cluter-override.conf
will take effect.
2023-01-31 18:50:16 +01:00
Zaiming (Stone) Shi
b0ac924ca9
refactor: less copy-paste
2023-01-31 18:40:55 +01:00
Zaiming (Stone) Shi
f6dafc20ea
feat: export API to read cluster and local overrides
2023-01-31 14:20:34 +01:00
firest
3bdffca488
fix: the exclusive topics aren't removed when the session has already been cleaned
2023-01-30 18:17:00 +08:00
Zhongwen Deng
bb636394e1
chore: add debug log for raw data
2023-01-30 16:35:06 +08:00
Zhongwen Deng
b73d11675e
chore: log the bad mqtt packet(frame error)
2023-01-30 15:05:49 +08:00
Zhongwen Deng
3d07271ea5
fix: crash when mfa not found
2023-01-30 14:30:20 +08:00
Zhongwen Deng
25090563af
chore: use brackets to wrap the mqtt packet when logging
2023-01-30 12:29:00 +08:00
Zhongwen Deng
ce32ea7334
feat: Make the log output format order fixed
2023-01-30 12:18:22 +08:00
Zhongwen Deng
6cbad047cd
fix: don't log CONNECT twice when debug
2023-01-30 12:16:17 +08:00
Zaiming (Stone) Shi
6a58bafcb0
chore: bump release version to e5.0.0-rc.2
2023-01-27 14:38:21 +01:00
Zaiming (Stone) Shi
f6b3b930b0
chore: improve a error log
2023-01-26 14:21:27 +01:00
Kjell Winblad
86cfbfb43c
fix: Authorization header leak in log entries for webhook
...
There might be another possibility for leakage. If the resource mangager
for the webhook resource crashes, OTP might log the spec for the
resource manager which contains the Config and thus the Authorization
header. This is probably an issue for other resources as well and should
be fixed in another commit. The following issue has been created for
that:
https://emqx.atlassian.net/browse/EMQX-8794
Fixes:
https://emqx.atlassian.net/browse/EMQX-8791
2023-01-26 12:44:16 +01:00
Zaiming (Stone) Shi
7575120ea6
test: use snabbkaffe retry macro
2023-01-24 10:54:20 +01:00
Zaiming (Stone) Shi
140cda2f13
fix(emqx_connection): crash when idle_timeout is set to infinity
2023-01-24 10:14:35 +01:00
Zaiming (Stone) Shi
727100e094
chore: prepare for v5.0.15 release
2023-01-20 16:42:01 +01:00
Zaiming (Stone) Shi
57607ca0ce
chore: prepare for v5.0.15 release
2023-01-20 11:20:34 +01:00
Zaiming (Stone) Shi
1716a5da99
chore: bump version to e5.0.0-rc.1
2023-01-18 17:22:05 +01:00
Zaiming (Stone) Shi
7abba17b25
Merge pull request #9765 from zmstone/0115-add-password-converter
...
fix(schema): add password converter to ensure its binary() type
2023-01-18 15:09:05 +01:00
Andrew Mayorov
33b3c4fa9a
Merge pull request #9753 from feat/EMQX-8738/convert-ordered-sets
...
feat: turn tables queried with search APIs into ordered sets
2023-01-18 18:05:57 +04:00
Zaiming (Stone) Shi
7e8381f4c7
Merge pull request #9785 from savonarola/fix-authn-handling
...
fix(authn): stop authn handling when emqx_authentication provides a result
2023-01-18 13:24:22 +01:00
ieQu1
d7242739e0
chore(ekka): Bump version to 0.13.9
2023-01-18 12:01:03 +01:00
Ivan Dyachkov
430b0a03d4
Merge pull request #9780 from id/fix-ensure-no-colon-in-filenames
...
fix: ensure no colon in filenames
2023-01-18 09:36:16 +01:00
Zaiming (Stone) Shi
fc992f28bc
test: add test coverage
2023-01-17 20:13:01 +01:00
Ilya Averyanov
1d7364dab1
fix(authn): fix authn hook chain evaluation
...
Stop authentication handling when
`emqx_authentication` provides a definitive result.
2023-01-17 20:06:20 +02:00
Zhongwen Deng
5a56013193
docs: more detail about crashdump config
2023-01-17 20:33:01 +08:00
zhongwencool
9f80eb2497
Merge pull request #9777 from zmstone/0116-refactor-config_files-is-readonly
...
refactor: config_files is a readonly config
2023-01-17 20:32:39 +08:00
Zaiming (Stone) Shi
263deae1f3
refactor: add a more generic name for password_converter
2023-01-17 11:12:17 +01:00
Zaiming (Stone) Shi
4a7e74f5d6
fix(schema): add password converter to ensure its binary() type
2023-01-17 11:12:17 +01:00
Zhongwen Deng
3dfdad9cc9
test: dashboard default password
2023-01-17 11:30:42 +08:00
Zaiming (Stone) Shi
33be7672ad
test: recover boot_modules app env after test
2023-01-17 00:43:25 +01:00
Ivan Dyachkov
676f017ec0
fix: ensure no colon in filenames
2023-01-16 21:27:01 +01:00
Zaiming (Stone) Shi
e668044ebc
fix: version number previs in restricted shell
2023-01-16 13:47:00 +01:00
Andrew Mayorov
34571c779d
feat: make `suboption` table ordering more natural
2023-01-16 15:39:10 +03:00
Andrew Mayorov
ce2dba15b4
feat: turn tables queried with search APIs into ordered sets
...
This is needed to ensure more or less consistent client experience
for the new planned cursor-based search APIs.
2023-01-16 15:39:10 +03:00
Zaiming (Stone) Shi
a7fc5e8fe1
Merge pull request #9761 from zmstone/0114-fix-kafka-value-template-and-docs
...
feat: introduce 'this' concept for placeholder, and use it in Kafka bridge
2023-01-16 13:37:29 +01:00
Zaiming (Stone) Shi
376dab7cd8
Merge pull request #9743 from zmstone/0112-docs-fix-some-descriptions
...
0112 docs fix some descriptions
2023-01-16 09:56:56 +01:00
Zaiming (Stone) Shi
089389100e
Merge pull request #9763 from zmstone/0114-fix-crash-when-password-undefined
...
0114 fix crash when password undefined
2023-01-15 12:41:02 +01:00
Zaiming (Stone) Shi
df202c69ad
Merge pull request #9746 from zmstone/0113-fix-mqtt-connect-packet-format-when-password-is-empty
...
fix(emqx_packet): log empty string if password value is missing
2023-01-14 19:42:07 +01:00
Zaiming (Stone) Shi
0f2f5fbbe0
fix(authn): no exception when password is 'undefined'
2023-01-14 17:58:55 +01:00
Zaiming (Stone) Shi
7073c62dd9
feat: add a 'this' for rule engine put env
...
now a dot is allowed in front of a var (path)
e.g. ${.clientid} is equivalent to ${clientid}
${.} however, means everything.
the parsed var is interally represented as $_THIS_
to make it easier to read/search.
2023-01-14 11:03:58 +01:00
Zaiming (Stone) Shi
002f5dbd89
Merge pull request #9750 from zhongwencool/bootstrap-app-env
...
fix: save app's env when bootstrapping and reloading
2023-01-14 07:33:13 +01:00
Zhongwen Deng
b07befbf56
test: conf_app ct failed
2023-01-14 01:03:57 +08:00
Zhongwen Deng
588140b842
chore: why we should ingore save kernel app env when init
2023-01-13 23:35:45 +08:00
Zhongwen Deng
1fe0061123
fix: node.config_files type is hocon:array(string()))
2023-01-13 23:35:45 +08:00
Zhongwen Deng
c9f0355f5a
fix: save app env when bootstrap and reload
2023-01-13 23:35:45 +08:00
Zhongwen Deng
1085492171
chore: don't refresh when CT is running
2023-01-13 23:35:45 +08:00
Zhongwen Deng
91d38b410d
fix: refresh logger handler when starting
2023-01-13 23:35:45 +08:00
Stefan Strigler
1690a6dcfc
Merge branch 'master' into dev/api-refactor
2023-01-13 15:34:13 +01:00
Zaiming (Stone) Shi
a77d33b97d
Merge pull request #9751 from lafirest/fix/un_cleared_ca
...
fix that obsoleted cert file will not be deleted after the listener is updated/deleted
2023-01-13 14:38:55 +01:00
Zaiming (Stone) Shi
2974269f2a
Merge pull request #9723 from emqx/release-50
...
chore: sync release-50 to master
2023-01-13 14:13:12 +01:00
firest
0a965879dd
fix: fix that obsoleted cert file will not be deleted after the listener is updated/deleted
2023-01-13 18:42:27 +08:00
Zhongwen Deng
f15b29b1ef
chore: upgrade app version
2023-01-13 18:22:29 +08:00
zhongwencool
383a6812d1
Merge pull request #9748 from zhongwencool/listener-max-connections-default-value
...
fix: default max_connections in raw config should be binary not atom
2023-01-13 17:55:22 +08:00
zhongwencool
0049b4a294
Merge branch 'master' into release-50
2023-01-13 16:39:35 +08:00
Zhongwen Deng
eacdaffe3c
fix: default max_connections in raw config should be binary not atom
2023-01-13 16:01:57 +08:00
Zaiming (Stone) Shi
2bc19c3a62
fix(emqx_packet): log empty string if password value is missing
...
to keep it a consistent behaviour comparing when logging username
2023-01-13 08:21:09 +01:00
Zaiming (Stone) Shi
153d64068a
refactor: rename root level cache type to authz_cache
2023-01-13 07:47:54 +01:00
Zaiming (Stone) Shi
b40ce0fc2d
Merge pull request #9626 from id/fix-enable-authz-cache-by-default
...
fix: enable authorization cache by default
2023-01-13 07:39:38 +01:00
firest
c5f557e315
fix: disable basic auth for HTTP API
2023-01-12 21:35:49 +08:00
Ivan Dyachkov
f90c41f769
fix: set default value in schema
2023-01-12 13:49:52 +01:00
Thales Macedo Garitezi
254b92a3c1
docs: add comma to please spellcheck
2023-01-11 10:31:23 -03:00
Thales Macedo Garitezi
d5a462486e
feat: tag another emqx schema as `emqx`
2023-01-11 09:31:38 -03:00
Thales Macedo Garitezi
e6a8be1ff6
docs: fix closing tag
2023-01-11 09:10:04 -03:00
Thales Macedo Garitezi
48e1ba4832
feat(docs): add tags to schemas
...
This'll allow us to split the generated `schema.json` file into
subsections for better documentation navigation.
2023-01-11 09:10:03 -03:00
Zhongwen Deng
fdc0682c3f
fix: elvis warning
2023-01-11 17:30:45 +08:00
Zhongwen Deng
d9429bba00
fix: bump hocon to 0.35.0(don't log overriding structs)
2023-01-11 14:44:34 +08:00
Zhongwen Deng
ba738d7707
chore: bump to 5.0.14
2023-01-11 14:39:32 +08:00
Zhongwen Deng
21dbc21dc8
chore: add changelog for api_key.bootstrap_file
2023-01-10 19:15:01 +08:00
Zhongwen Deng
f6a47e5cf6
chore: support api_key.bootstrap_file config
2023-01-10 19:03:49 +08:00
ieQu1
13f1ab6344
Merge pull request #9671 from ieQu1/metrics
...
feat(emqx_metrics): Sliding window samples
2023-01-10 11:08:43 +01:00
Zaiming (Stone) Shi
e52f9d5920
refactor: use union member type selector for authz sources
2023-01-09 14:26:16 +01:00
Stefan Strigler
903ae9a644
style: fix typo in fun name
2023-01-09 09:59:42 +01:00
Thales Macedo Garitezi
fd360ac6c0
feat(buffer_worker): refactor buffer/resource workers to always use queue
...
This makes the buffer/resource workers always use `replayq` for
queuing, along with collecting multiple requests in a single call.
This is done to avoid long message queues for the buffer workers and
rely on `replayq`'s capabilities of offloading to disk and detecting
overflow.
Also, this deprecates the `enable_batch` and `enable_queue` resource
creation options, as: i) queuing is now always enables; ii) batch_size
> 1 <=> batch_enabled. The corresponding metric
`dropped.queue_not_enabled` is dropped, along with `batching`. The
batching is too ephemeral, especially considering a default batch time
of 20 ms, and is not shown in the dashboard, so it was removed.
2023-01-05 10:15:09 -03:00
ieQu1
5d9f9671e9
feat(emqx_metrics): Sliding window samples
2023-01-05 13:55:52 +01:00
ieQu1
93c205db7c
fix(router_helper): Reduce log verbosity of expected events
2023-01-05 12:17:27 +01:00
firest
b016695cb1
fix(bridges): obfuscate the password in bridges API responses
2023-01-03 22:09:29 +08:00
Thales Macedo Garitezi
7e02eac3bc
Merge pull request #9619 from thalesmg/refactor-gauges-v50
...
refactor(metrics): use absolute gauge values rather than deltas (v5.0)
2023-01-02 10:56:47 -03:00
Zaiming (Stone) Shi
dbc10c2eed
chore: update copyright year 2023
2023-01-02 09:22:27 +01:00
Thales Macedo Garitezi
305ed68916
chore: bump app vsns
2022-12-30 16:51:24 -03:00
Thales Macedo Garitezi
8b060a75f1
refactor(metrics): use absolute gauge values rather than deltas
...
https://emqx.atlassian.net/browse/EMQX-8548
Currently, we face several issues trying to keep resource metrics
reasonable. For example, when a resource is re-created and has its
metrics reset, but then its durable queue resumes its previous work
and leads to strange (often negative) metrics.
Instead using `counters` that are shared by more than one worker to
manage gauges, we introduce an ETS table whose key is not only scoped
by the Resource ID as before, but also by the worker ID. This way,
when a worker starts/terminates, they should set their own gauges to
their values (often 0 or `replayq:count` when resuming off a queue).
With this scoping and initialization procedure, we'll hopefully avoid
hitting those strange metrics scenarios and have better control over
the gauges.
2022-12-30 16:51:24 -03:00
Zaiming (Stone) Shi
b30f2ea58b
fix(statsd schema): a field is not 'required' when it has 'default'
2022-12-30 14:20:24 +01:00
Zaiming (Stone) Shi
0ce1ca89b7
refactor: use string type for server and servers
2022-12-30 14:20:23 +01:00
Zaiming (Stone) Shi
cac7e0c5f0
refactor: move version prefix string detection to a static fun
...
this is to make dialyzer happy
2022-12-30 14:19:03 +01:00
zhongwencool
f92b1fb8f4
Merge pull request #9633 from zhongwencool/fix-json-fmt
...
fix: bad best fmt json []
2022-12-30 09:08:13 +08:00
Zhongwen Deng
4e62aff3ab
fix: bad best fmt json []
2022-12-29 14:53:00 +08:00
Zaiming (Stone) Shi
2790d5697d
test: add a 2 seconds sleep between listener sotp and restart
...
to lower the chance of eaddrinuse
2022-12-28 18:48:53 +01:00
Thales Macedo Garitezi
4819794401
test(refactor): decrease test teardown noise
2022-12-27 10:30:14 -03:00
Thales Macedo Garitezi
6fdcba641e
test(refactor): no need for monitor
...
the janitor is already linked to the parent
2022-12-27 10:30:14 -03:00
Zaiming (Stone) Shi
a777bac38c
build: prepare for v5.0.13 release
2022-12-27 11:54:09 +01:00
Zaiming (Stone) Shi
15bd797b36
ci: bump to v5.0.13-rc.3
2022-12-27 11:24:47 +01:00
Zaiming (Stone) Shi
580137de0d
Merge remote-tracking branch 'origin/master' into release-50
2022-12-27 11:06:17 +01:00
lafirest
2ff6ef01f1
Merge pull request #9599 from lafirest/fix/blacklist_default_exp
...
fix(banned): ensure the default expiration time of `banned` is large enough
2022-12-27 17:30:10 +08:00
Zaiming (Stone) Shi
0517541f34
ci: bump to v5.0.13-rc.2
2022-12-27 09:54:34 +01:00
Zaiming (Stone) Shi
18246442aa
chore: prepare v5.0.13-rc.1
...
bump dashboard version to v1.1.4
2022-12-26 21:45:48 +01:00
firest
af3f0c9bb0
fix(banned): ensure the default timeout of `banned` is large enough
2022-12-26 10:17:31 +08:00
Zaiming (Stone) Shi
269a40a9ea
fix: format psk user lookup fun back to string
2022-12-23 19:22:15 +01:00
Zaiming (Stone) Shi
350023e757
fix(config): option only_fill_defaults renamed to make_serializable
2022-12-23 14:27:04 +01:00
Zaiming (Stone) Shi
59970272ff
chore: pin hocon 0.33.0
2022-12-23 12:07:36 +01:00
lafirest
f660724bf7
Merge pull request #9582 from lafirest/fix/fix_field_name
...
fix(limiter): change limiter `cache` to `buffer`
2022-12-21 18:12:40 +08:00
firest
a8e020af58
fix(limiter): change limiter `cache` to `buffer`
2022-12-20 22:30:52 +08:00
Zaiming (Stone) Shi
e932569f34
refactor: delete stale code
...
'hash' strategy has been removed from config schema
hence no need to keep the compatibility code
2022-12-19 20:20:58 +01:00
Zaiming (Stone) Shi
ad3a793910
fix(shared_sub): insert alive pid table at mnesia table event
2022-12-19 20:12:38 +01:00
Zaiming (Stone) Shi
4f1fb0b629
refactor(shared_sub): improve sticky strategy performance
...
* avoid calling ets:select twice for sticky strategy
* when the calling process is terminating, no loop-back dispatch
2022-12-19 20:04:33 +01:00
Zaiming (Stone) Shi
29f394aa70
fix(shared): handle unsubscribe for sticky strategy
...
prior to this change, the message is dispatched to a shared subscriber
even after unsubscribed
2022-12-19 19:12:38 +01:00
Zaiming (Stone) Shi
67718ef84f
docs: prepare to deprecate broker.shared_dispatch_ack_enabled
2022-12-19 17:07:52 +01:00
Andrew Mayorov
fed7c80a9a
fix(ci): spec function with explicit exception
2022-12-16 13:45:05 +03:00
Andrew Mayorov
8a0ca38a77
fix: drop no longer supported dialyzer option
2022-12-16 13:45:05 +03:00
Andrew Mayorov
c301c8e992
chore: drop few unused macros / includes
2022-12-16 13:45:04 +03:00
Andrew Mayorov
a614e3065a
chore(tls): drop OTP-22-related workaround
2022-12-16 13:45:04 +03:00
JimMoen
23d5d5329e
test(session): ensure 'message.dropped' hook ran with named reason
2022-12-15 16:16:27 +08:00
JimMoen
b88398c3c6
fix: run `message.dropped` hook, inc `messages.dropped` metrics
...
- when awaiting_rel full
- packet identifier in use (QoS2 packet resend)
2022-12-15 16:16:26 +08:00
Zaiming (Stone) Shi
9e3da5b661
chore: bump app versions
2022-12-14 20:07:41 +01:00
Zaiming (Stone) Shi
56066a03b5
Merge remote-tracking branch 'origin/release-50' into 1214-sync-master-upstreams
2022-12-14 20:04:20 +01:00
Zaiming (Stone) Shi
82db73c3f7
chore: bump version to v5.0.12
2022-12-14 20:02:42 +01:00
Zaiming (Stone) Shi
7137a422df
refactor(emqx_authn): make error messages more readable
2022-12-14 15:53:42 +01:00
Zaiming (Stone) Shi
abef881a73
refactor(config): no need to explicitly remove env metadata
...
after upgraded to honcon 0.32.0, the env meta is removed
by default.
2022-12-14 15:53:42 +01:00
Zaiming (Stone) Shi
34f7fff97d
chore: pin hocon 0.32.0
2022-12-14 15:53:42 +01:00
Zaiming (Stone) Shi
42c58e2a91
Merge remote-tracking branch 'origin/release-50' into 1214-sync-master-upstreams
2022-12-14 15:29:13 +01:00
Thales Macedo Garitezi
464d0a5057
refactor(test): use a linked janitor for test teardown
2022-12-12 17:18:19 -03:00
Thales Macedo Garitezi
a095867358
test(refactor): add ids to namespace `on_exit` callbacks
2022-12-12 17:18:19 -03:00
Thales Macedo Garitezi
697b3ecf2d
docs: improve descriptions
...
Co-authored-by: Zaiming (Stone) Shi <zmstone@gmail.com>
2022-12-12 17:18:19 -03:00
Thales Macedo Garitezi
1cd91a24e9
feat(gcp_pubsub): implement GCP PubSub bridge (ee5.0)
2022-12-12 17:18:19 -03:00
Thales Macedo Garitezi
fffce9316c
test(fix): avoid trying to connect to system_monitor db in tests
...
When `system_monitor`'s application is loaded, it sets a default
hostname:
```erlang
1> application:get_env(system_monitor, db_hostname).
undefined
2> application:load(system_monitor).
ok
3> application:get_env(system_monitor, db_hostname).
{ok,"localhost"}
```
And that makes tests crash when somehow it gets loaded.
By having a semantic `enable` field, we could avoid starting this
application by checking if the hostname is filled or not.
```
=ERROR REPORT==== 1-Dec-2022::13:57:20.855070 ===
** Generic server <0.7646.3> terminating
** Last message in was {command,epgsql_cmd_connect,
#{codecs => [],database => "postgres",
host => [],
password =>
#Fun<epgsql_cmd_connect.0.29916615>,
port => 5432,timeout => 5000,
username => "system_monitor"}}
** When Server state == {state,undefined,undefined,<<>>,undefined,on_message,
undefined,
{[],[]},
undefined,undefined,undefined,undefined,[],
information_redacted,[],undefined,undefined,
undefined,undefined,undefined,#{}}
** Reason for termination ==
** {badarg,
[{gen_tcp,connect_0,4,[{file,"gen_tcp.erl"},{line,207}]},
{epgsql_cmd_connect,open_socket,2,
[{file,
"/emqx/_build/default/lib/epgsql/src/commands/epgsql_cmd_connect.erl"},
{line,94}]},
{epgsql_cmd_connect,execute,2,
[{file,
"/emqx/_build/default/lib/epgsql/src/commands/epgsql_cmd_connect.erl"},
{line,54}]},
{epgsql_sock,command_exec,4,
[{file,"/emqx/_build/default/lib/epgsql/src/epgsql_sock.erl"},
{line,338}]},
{gen_server,try_handle_call,4,[{file,"gen_server.erl"},{line,721}]},
{gen_server,handle_msg,6,[{file,"gen_server.erl"},{line,750}]},
{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,226}]}]}
** Client system_monitor_pg stacktrace
** [{gen,do_call,4,[{file,"gen.erl"},{line,214}]},
{gen_server,call,3,[{file,"gen_server.erl"},{line,243}]},
{epgsql,call_connect,2,
[{file,"/emqx/_build/default/lib/epgsql/src/epgsql.erl"},
{line,203}]},
{system_monitor_pg,connect,0,
[{file,"/emqx/_build/default/lib/system_monitor/src/system_monitor_pg.erl"},
{line,151}]},
{system_monitor_pg,initialize,0,
[{file,"/emqx/_build/default/lib/system_monitor/src/system_monitor_pg.erl"},
{line,142}]},
{system_monitor_pg,handle_info,2,
[{file,"/emqx/_build/default/lib/system_monitor/src/system_monitor_pg.erl"},
{line,92}]},
{gen_server,try_dispatch,4,[{file,"gen_server.erl"},{line,695}]},
{gen_server,handle_msg,6,[{file,"gen_server.erl"},{line,771}]},
{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,226}]}]
=CRASH REPORT==== 1-Dec-2022::13:57:20.855697 ===
crasher:
initial call: epgsql_sock:init/1
pid: <0.7646.3>
registered_name: []
exception exit: badarg
in function gen_tcp:connect_0/4 (gen_tcp.erl, line 207)
in call from epgsql_cmd_connect:open_socket/2 (/emqx/_build/default/lib/epgsql/src/commands/epgsql_cmd_connect.erl, line 94)
in call from epgsql_cmd_connect:execute/2 (/emqx/_build/default/lib/epgsql/src/commands/epgsql_cmd_connect.erl, line 54)
in call from epgsql_sock:command_exec/4 (/emqx/_build/default/lib/epgsql/src/epgsql_sock.erl, line 338)
in call from gen_server:try_handle_call/4 (gen_server.erl, line 721)
in call from gen_server:handle_msg/6 (gen_server.erl, line 750)
ancestors: [system_monitor_pg,system_monitor2_sup,system_monitor_sup,
<0.4297.3>]
message_queue_len: 0
messages: []
links: [<0.4303.3>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 29
reductions: 734
neighbours:
```
2022-12-12 17:18:19 -03:00
Zaiming (Stone) Shi
61da68ff40
fix(emqx_schema): handshake_timeout is common for all listeners
2022-12-09 16:47:19 +01:00
Zaiming (Stone) Shi
6a4fb1241b
Merge remote-tracking branch 'origin/release-50' into 1209-chore-merge-dev/ee5.0-to-release-50
2022-12-09 12:54:16 +01:00
Ilya Averyanov
a26964291d
Merge pull request #9496 from savonarola/fix-auth-chain
...
Fix `emqx_authentication` hook cooperation with other hooks
2022-12-09 14:48:18 +03:00
Ilya Averyanov
7ae3ecfccb
chore(retainer): optimize index writes
2022-12-09 14:42:43 +03:00
Ilya Averyanov
cd0ae62995
fix(auth): fix emqx_authenticator cooperation with other 'client.authenticate' hooks
2022-12-09 13:57:48 +03:00
Zaiming (Stone) Shi
40809b2ad0
Merge remote-tracking branch 'origin/dev/ee5.0' into release-50
2022-12-09 11:45:52 +01:00
lafirest
3705d5bc73
Merge pull request #9505 from lafirest/fix/psk_r50
...
fix(psk): Add more PSK ciphers support
2022-12-09 00:00:52 +08:00
Zaiming (Stone) Shi
e1f09d9899
Merge remote-tracking branch 'origin/release-50' into 1208-merge-release-50-back-to-master
2022-12-08 14:27:01 +01:00
firest
21a908167d
fix(psk): Add more PSK ciphers support
2022-12-08 11:41:42 +08:00
Zaiming (Stone) Shi
dc14cd450d
test: render config for emqx_conf only for ee bridge tests
2022-12-07 18:27:06 +01:00
Zaiming (Stone) Shi
c9d84b2fda
test: do not load emqx_conf app when it's not found
...
also remove stale code in emqx_common_test_helpers
2022-12-07 16:49:54 +01:00
Zaiming (Stone) Shi
d89dbb7caa
Merge remote-tracking branch 'origin/release-50' into 1206-chore-merge-ee50-to-release-50
2022-12-07 16:24:13 +01:00
Zaiming (Stone) Shi
f3b069a0d9
test: fix config load for lib-ee tests
2022-12-07 15:50:50 +01:00
Zaiming (Stone) Shi
b897d64b75
test: fix emqx_frame_SUITE
2022-12-07 12:20:03 +01:00
Ilya Averyanov
6692b0c895
feat(bridge): add Redis bridge
2022-12-06 23:15:42 +03:00
Zaiming (Stone) Shi
1c2fc4b6c3
Merge remote-tracking branch 'origin/release-50' into 1206-chore-merge-ee50-to-release-50
2022-12-06 16:35:56 +01:00
Zaiming (Stone) Shi
817554c7d7
refactor(emqx_frame): better error handling
2022-12-06 01:48:52 +08:00
firest
72669080a1
fix(frame): fix potential parse errors found by fuzzing test
2022-12-05 23:16:07 +08:00
Zaiming (Stone) Shi
7adb539ae1
chore: pin hocon 0.31.2
2022-12-01 16:50:10 +01:00
firest
88a0c77707
fix(limiter): add `limiter` back to the configs API
2022-12-01 15:07:15 +08:00
Zaiming (Stone) Shi
983e904858
fix(connector): fix ssl clear
2022-11-30 17:03:41 +01:00
Zaiming (Stone) Shi
311e4cd583
Merge pull request #9440 from zmstone/1128-chore-sync-release-branch-back-to-master
...
1128 chore sync release branch back to master
2022-11-29 11:47:01 +01:00
Zaiming (Stone) Shi
b398617614
chore: bump app versions
2022-11-28 21:12:43 +01:00
Zaiming (Stone) Shi
77341e7a3c
chore: bump app versions
2022-11-28 21:06:33 +01:00
Zaiming (Stone) Shi
9f3a9efbad
Merge remote-tracking branch 'origin/release-v50'
2022-11-28 21:02:39 +01:00
Zaiming (Stone) Shi
7ee53e5319
Merge tag 'v5.0.11' into dev/ee5.0
2022-11-28 21:02:21 +01:00
Erik Timan
95faf56077
feat: remove $queue in favor of $shared
...
This commit removes support for setting shared subscriptions with the
non-standard $queue feature. Shared subscriptions is now part of the MQTT
spec (using $shared) and we will only support that from now on.
2022-11-28 11:00:18 +01:00
Zaiming (Stone) Shi
05719daff2
chore: bump version to v5.0.11
2022-11-27 11:15:28 +01:00
Zaiming (Stone) Shi
970b3eb1a0
chore: bump to version v5.0.11-rc.1
2022-11-26 15:51:38 +01:00
lafirest
345fa65241
Merge pull request #9416 from lafirest/fix/emqx_ctl
...
fix(ctl): fix unsafe `list_to_atom`
2022-11-25 09:58:07 +08:00
JianBo He
ffb3f2d2d2
chore: change emqx_live_connection tab type to ordered_set
...
Co-authored-by: Zaiming (Stone) Shi <zmstone@gmail.com>
2022-11-24 20:14:33 +01:00
JianBo He
6d9e1e0d7a
test(mgmt): cover emqx_mgmt_api:cluster_query
2022-11-24 20:14:33 +01:00
JianBo He
36de83a50a
feat(cm): change emqx_channel_info to ordered_set table
2022-11-24 20:14:33 +01:00
JianBo He
0c1412315c
chore(bpapi): ignore emqx_mgmt_api:collect_total_from_tail_nodes/3
2022-11-24 20:14:33 +01:00
JianBo He
79a2682fd3
chore: improve the no-conditions query
2022-11-24 20:14:33 +01:00
JianBo He
08121e7df6
fix(mgmt): optimize the speed of query tail pages
...
In the previous, when you query the tail pages, all the front of rows
will be queried out and formatted. It greatly hurts the speed of query.
Currently, we only format the final result rows. i.e, the query for the
last page of data will be 10x faster.
2022-11-24 20:14:33 +01:00
Zaiming (Stone) Shi
6837af2308
Merge branch 'release-v50' into 0720-feat-direct-deny-when-anonymous-is-not-allowed
2022-11-24 16:07:58 +01:00
firest
03fb543ba8
fix(ctl): fix unsafe `list_to_atom`
...
A command can be called only when it is exists
2022-11-24 17:28:53 +08:00
firest
2bc8b00419
feat(authn): support quick deny anonymous
2022-11-24 09:44:19 +01:00
Zaiming (Stone) Shi
b879c935eb
Merge pull request #9404 from JimMoen/fix-typo-50
...
fix(typo): typo in code
2022-11-24 09:39:43 +01:00
Zhongwen Deng
282e6ff218
chore: set channel info once
2022-11-24 09:59:39 +08:00
Zaiming (Stone) Shi
6f67e3b333
feat(emqx_map_lib): add a binary_key_map help function
2022-11-23 23:49:43 +01:00
kraftwerk28
00c57de4c3
feat: do not drop MQTTv5 properties in rule/bridge
2022-11-22 20:09:59 +01:00
firest
118a97a0d8
fix: change the defualt value of `max_topic_levels` to 128
2022-11-22 18:45:44 +08:00
JimMoen
c21fa3c339
fix(typo): typo in code
2022-11-22 09:51:30 +08:00
JianBo He
fcbf1bc890
fix(will-msg): fix mountpoint not working for will-msg.
2022-11-21 21:41:00 +08:00
Zhongwen Deng
1845e472e0
fix: create trace sometime failed by end_at time has already passed
2022-11-21 09:54:36 +08:00
Zaiming (Stone) Shi
458d23ebc4
chore: bump version to v5.0.0-beta.5
2022-11-20 09:11:53 +01:00
Zaiming (Stone) Shi
83fe35b148
Merge remote-tracking branch 'origin/dev/ee5.0' into 1116-sync-v5.0.10-to-ee50
2022-11-18 19:23:31 +01:00
lafirest
4ce3d43446
Merge pull request #9386 from lafirest/fix/flaky_banned_case
...
test: fix flaky banned case
2022-11-17 21:29:45 +08:00
Ilya Averyanov
e301ca09d5
Merge pull request #9373 from savonarola/fix-access-test
...
chore(acl): fix acl test
2022-11-17 18:06:43 +05:00
firest
7b93b166dc
test: fix flaky banned case
...
since this suite has changed its start method to the `emqx_common_test_helpers:start_apps/1`, the `emqx_banned` server will never stop (its restart type is permanent), thus there is no need to manually start or stops it.
2022-11-17 14:48:25 +08:00
Zaiming (Stone) Shi
c940b901f5
chore: fix app versions
2022-11-16 16:26:43 +01:00
Zaiming (Stone) Shi
09455edae8
Merge tag 'v5.0.10' into dev/ee5.0
2022-11-16 16:20:30 +01:00
Thales Macedo Garitezi
2ae0125562
test(refactor): encode toxiproxy payloads with emqx_json
2022-11-16 10:57:13 -03:00
firest
b1889fa203
chore: bump emqx version && update changes
2022-11-16 18:00:32 +08:00
firest
085074ac41
feat(banned): kick session when it is banned by clientid
2022-11-16 18:00:22 +08:00
Ilya Averyanov
25c32dd2f5
chore(acl): fix acl test
2022-11-15 23:30:19 +03:00
Stefan Strigler
b5a84b8b0f
test: increase timeout creating listeners
2022-11-11 13:34:46 +01:00
Zaiming (Stone) Shi
354b94fc2d
test: ensure all modules start
2022-11-08 20:59:24 +01:00
JimMoen
2cd457e07c
fix(channel): session takenover & discarded maybe call disconnect hook
2022-11-08 23:22:58 +08:00
firest
ebaba0c2b1
fix: Revert "feat(banned): clean retained/delayed data when client is banned"
...
This reverts commit 69701ff578
.
2022-11-08 11:36:11 +08:00
Thales Macedo Garitezi
04588148b7
test(influxdb): increase influxdb bridge/connector coverage (ee5.0)
2022-11-07 15:15:49 -03:00
firest
bd13ae0ad6
fix(acl): Check the real topic in delayed messages
...
We need to check the true topic of the delayed message correctly
the cheapest way to do this is to extract the true topic from the original topic when doing ACL check
2022-11-04 10:51:52 +08:00
firest
bb7476d3af
fix(listeners): Constraints the atom convert when parsing the esockd access rules
...
esockd rules only use words 'allow' and 'deny', both are existing,
so it is better to restrict the conversion and print a log when errors
2022-11-02 14:45:47 +08:00
Thales Macedo Garitezi
b6445cdc14
test: remove unused var warning
2022-11-01 16:53:20 -03:00
firest
6c52d5de1f
fix(bridge): Ensure that the node name is known
2022-11-01 15:36:10 +08:00
Zhongwen Deng
18235a7125
chore: update emqx_managment bpapi.versions
2022-10-28 09:16:05 +08:00
Zhongwen Deng
af79e652da
chore: clear dialyzer warning.
2022-10-28 09:16:05 +08:00
Zhongwen Deng
ea95f792e0
refactor: multicall node_info to improve /node speed
2022-10-28 09:14:33 +08:00
Zaiming (Stone) Shi
4cadb86b18
docs: fix typos
2022-10-27 20:09:31 +02:00
Zaiming (Stone) Shi
c157392452
docs: fix self-closing html tag, change </br> to <br/>
2022-10-27 13:57:18 +02:00
Zaiming (Stone) Shi
fd2a3f816e
Merge pull request #9238 from zmstone/1026-fix-docs
...
docs: fix zh punctuations
2022-10-27 10:39:22 +02:00
Zaiming (Stone) Shi
a314950be9
docs: fix zh punctuations
2022-10-26 16:19:38 +02:00
ieQu1
6c8936467e
chore(ekka): Bump version to 0.13.6
2022-10-26 12:08:14 +02:00
Zaiming (Stone) Shi
637bc886bb
chore: bump release version to 5.0.10
2022-10-24 11:49:20 +02:00
Zaiming (Stone) Shi
e3240b52a8
chore: bump app versions
2022-10-24 11:48:17 +02:00
Zaiming (Stone) Shi
508c0e84d0
Merge branch 'release-v50' into master
2022-10-24 11:46:31 +02:00
Zaiming (Stone) Shi
11daaa08e2
chore: bump version numbers to 5.0.9
2022-10-24 09:42:25 +02:00
Zaiming (Stone) Shi
fa5d756ae6
Merge pull request #9186 from HJianBo/more-understanderable-trans
...
chore(docs): translate Max Awaiting PUBREL confs
2022-10-21 17:29:28 +02:00
Zaiming (Stone) Shi
ca052bd0f4
docs: Update apps/emqx/i18n/emqx_schema_i18n.conf
2022-10-21 17:28:49 +02:00
JianBo He
0f03449b43
chore: improve max_awating_rel_timeout conf docs
...
Co-authored-by: Zaiming (Stone) Shi <zmstone@gmail.com>
2022-10-21 16:08:09 +08:00
JianBo He
49dd25cb14
chore: make spellcheck happy
2022-10-21 14:38:46 +08:00
firest
1d564ab8d5
test(shared_sub): remove redundant test case
2022-10-21 14:37:46 +08:00
Zaiming (Stone) Shi
0ca4f30a34
Merge pull request #9193 from zmstone/1020-chore-upgrade-gun-1.3.9
...
1020 chore upgrade gun 1.3.9
2022-10-21 08:13:21 +02:00
JianBo He
6d232fda5c
chore(i18n): improve the max_awaiting_rel desc
2022-10-21 10:27:20 +08:00
JianBo He
72a228c521
chore: update apps/emqx/i18n/emqx_schema_i18n.conf
...
Co-authored-by: Zaiming (Stone) Shi <zmstone@gmail.com>
2022-10-21 09:53:31 +08:00
Zaiming (Stone) Shi
d1332b72e7
feat(api/publish): return detailed publish results
...
Prior to this change, the publish API returns 200 in most of
the cases.
This change provides more insights to the publish result.
For single message publish endpoint (`publish/`):
HTTP error codes are:
200: Everything is OK
202: No subscriber for the topic
400: When mesage is invalid message.
e.g. bad topic name or QoS out of range.
503: Failed to dispatch the message. e.g. during EMQX restart.
The response body is a JSON object with two fields
`message_id`, and `publish_result`.
The `message_id` is a globally unique ID for tracing.
`publish_result` is `"OK"` when the message is delivered
to at least one subscriber.
Otherwise `"no_subscriber"`.
`publish_result` may also be some other informative
message to hint the failure result, the content of which
may change in the future.
For `publish/bulk` endpoint:
200: When all message in the bulk are published OK
202: If at least one message in the bulk had `"no_subscriber"` result
400: When mesage is invalid message. e.g. bad topic name or
QoS out of range.
503: When there is at least one message failed at dispatch.
The reply body is a list of JSON objects having the same layout
as for hte `publish` endpoint.
2022-10-20 20:03:27 +02:00
Zaiming (Stone) Shi
b3ffe89f35
test: assert message receive pid is in the expected pids list
2022-10-20 19:10:45 +02:00
JianBo He
fa020d036f
chore(docs): translate Max Awaiting PUBREL confs
2022-10-20 20:14:36 +08:00
Zaiming (Stone) Shi
c7a90d73b2
fix(shared): do not redispatch shared messages for certain shutdown
...
For takeover, there should be no message re-dispatch because
the messages will be retried by the new session.
For kick, messages should not be re-dispatched for security reason.
i.e. if admin has identified that there are malicious messages
stored in persisted sessions, killing the session should not
cause messages to be re-dispatched
2022-10-20 13:51:48 +02:00
lafirest
c0c2657a80
Merge pull request #9139 from lafirest/fix/clean_blocked_user_data
...
feat(banned): clean retained/delayed data when client is banned
2022-10-20 18:00:48 +08:00
lafirest
0546cd3d1a
Merge pull request #9123 from lafirest/fix/kick_seesion_redispatch
...
fix(shared_sub): kick session should not cause session message redispatch
2022-10-19 09:47:10 +08:00
firest
7b3c67fbe9
test(shared_sub): ensure snabbkaffe will be stopped
2022-10-18 13:47:57 +08:00
firest
3f1f244310
fix: fix bpapi versions
2022-10-18 13:39:48 +08:00
firest
69701ff578
feat(banned): clean retained/delayed data when client is banned
2022-10-18 13:35:09 +08:00
Zhongwen Deng
58b990064c
chore: update bpapi.verions
2022-10-17 09:43:17 +08:00
Zhongwen Deng
4d9cae0387
feat: get trace file's detail via /trace/:name/log_detail
2022-10-17 09:43:15 +08:00
zhongwencool
bfc780f95b
Merge branch 'master' into authn-config-check
2022-10-14 16:36:50 +08:00
JianBo He
56000cbf3e
refactor: more rigorous checking of flapping to improve stability of the system
...
port: https://github.com/emqx/emqx/pull/9045
2022-10-12 10:03:47 +08:00
firest
b4eb0f18f9
fix(shared_subs): rename redispatch function name and simply test case
2022-10-10 18:06:55 +08:00
firest
f0769cb765
fix(shared_sub): kick session should not cause session message redispatch
2022-10-10 13:52:09 +08:00
Zaiming (Stone) Shi
1c29e2806a
test(shared): add a test case to ensure shared dispatch retry
...
to ensure retry will not enter a dead loop
2022-10-05 22:33:49 +02:00
Zaiming (Stone) Shi
e8279a02ef
fix(shared): re-dispatch inflight (QoS1) and mqueue messages
...
when session terminates (not due to take over)
shared delivery should be re-dispatched to other members
in the group
2022-10-05 22:33:48 +02:00
Zaiming (Stone) Shi
242a69359c
Merge pull request #9047 from HJianBo/remove-colon-port
...
Improve the `ip_port()` definition and `bind` print format
2022-09-29 05:56:50 +02:00
JianBo He
6581911d5c
Merge remote-tracking branch 'stone/0922-upgrade-ip-port-schema' into remove-colon-port
2022-09-27 15:08:27 +08:00
Zaiming (Stone) Shi
00e4b4da5a
fix(schema): support hostname.domain:port for mqtt bridge
2022-09-27 09:02:49 +02:00