Commit Graph

3051 Commits

Author SHA1 Message Date
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
JianBo He 607f68bab1 chore(schema): don't automaticly add ipv4 address if configured as
`:1883`
2022-09-27 13:01:39 +08:00
JianBo He 03eaa07c02 chore: add more comments for bind display perference 2022-09-27 12:51:00 +08:00
Thales Macedo Garitezi 129f09f88b chore: remove extra information from denied lwt log 2022-09-26 15:23:59 -03:00
Shawn 19e3f5919e chore: release e5.0.0-beta.4 2022-09-26 19:54:01 +08:00
JianBo He c9904e78aa chore: remove colon port in HTTP-API and CLI
In the https://github.com/emqx/emqx/pull/8571, we add a colon before the
port. But it was not popular, so we removed ta in this PR
2022-09-26 17:30:54 +08:00
Shawn 4135910b42 chore: merge master into dev/ee5.0 2022-09-26 09:52:33 +08:00
JimMoen 2984397e73 chore: apps vsn bump 2022-09-23 17:09:15 +08:00
JimMoen 85835256f1 Merge tag 'v5.0.8' into merge-release-v5.0.8-into-master 2022-09-23 16:06:44 +08:00
Zaiming (Stone) Shi 516d60c7da build: fix deps consistency check 2022-09-23 09:00:17 +02:00
firest 89af9c4a5f fix(slow_subs): fix timestamp unit error and update config not work
1. The unit of `deliver_begin_at` is incorrectly used the `seconds`, the resulting is incorrect when `stats_type` is `internal` or `response`
2. The config update doesn't actually take effect, the `load` function always used the old config
2022-09-22 17:57:51 +08:00
zhongwencool 8c718d891f
Merge pull request #9002 from zhongwencool/fix-listener-crash
fix: /listeners API crash when there are nodes still in initial conf
2022-09-20 15:25:03 +08:00
Zhongwen Deng 2551c51a8c fix: ct failed 2022-09-20 11:37:49 +08:00
ieQu1 62957b298b chore(ekka): Bump version to 0.13.5 2022-09-19 18:21:32 +02:00
Zhongwen Deng 0241185225 chore: Add test coverage for listeners API 2022-09-19 18:25:25 +08:00
Zhongwen Deng 386110ae1e fix: /listeners API crash when some nodes still in init configuration 2022-09-19 15:24:36 +08:00
Thales Macedo Garitezi c20ad3733a fix: check for authorization on topic before publishing last will testament
fixes #8978

Without checking for authorization, a client can, on abnormal
termination, publish a message to any topic, including `$SYS` ones.
2022-09-16 17:31:22 -03:00
Thales Macedo Garitezi dca522d7d3 test: add tests for publishing lwt when deny_action is disconnect 2022-09-16 15:11:54 -03:00
Thales Macedo Garitezi 87ab2e3a2d fix: check conn state before sending will message 2022-09-16 15:11:54 -03:00
zhouzb ba37ab4938 chore: bump vsn to 5.0.8 2022-09-16 19:32:17 +08:00
Zhongwen Deng 6bd72fe5a1 fix: check authn's mechanism field 2022-09-16 09:45:37 +08:00
Zhongwen Deng 49829caaa0 fix: check authn(lazy type) config when boot 2022-09-16 09:45:36 +08:00
Zhongwen Deng 0b07561e9b fix: ensure authentication is array, not struct 2022-09-16 09:45:36 +08:00
zhouzb 8054144357 chore: bump vsn 2022-09-15 10:20:25 +08:00
Zaiming (Stone) Shi 0c1595be02 feat: Add Kafka connector 2022-09-13 19:46:56 +02:00
zhongwencool 0e633f87b3
Merge branch 'master' into denny-update-local-override-conf 2022-09-08 17:17:07 +08:00
Zaiming (Stone) Shi befc4acced Merge remote-tracking branch 'origin/master' into merge-master-to-ee50-a 2022-09-06 20:31:38 +02:00
firest 3f758ca36f fix(tls): fix ciphers cache return `ok` at the first time call 2022-09-06 16:42:02 +08:00
Zhongwen Deng 499da1ebe0 chore: add emqx_release:edition_longstr() 2022-09-06 15:46:18 +08:00
Zaiming (Stone) Shi 9408aeb719
Merge pull request #8420 from zmstone/0705-refactor-delete-unused-module
chore: delete unused schema module
2022-09-05 16:33:07 +02:00
Thales Macedo Garitezi 09d640c1b6
Merge pull request #8887 from thalesmg/bugfix-will-msg-not-connected
bugfix: do not publish last will when authentication failed
2022-09-05 10:38:47 -03:00
ieQu1 9dfa82b448 fix(shared_sub): Dispatch shared messages via gen_rpc 2022-09-05 14:06:59 +02:00
Thales Macedo Garitezi e0fcf07cf9 fix: do not publish last will when authentication failed
fixes #8886
2022-09-05 08:55:47 -03:00
ieQu1 03766d54cc feat(emqx_rpc): call with timeout 2022-09-05 13:38:34 +02:00
ieQu1 c2d03838e2 fix(bpapi): Return undefined for unknown API on the node 2022-09-05 12:29:33 +02:00
Shawn c695e67e18 chore: release e5.0.0-beta.3 2022-09-03 12:27:20 +08:00
JimMoen d533e35df0 chore: update app vsn 2022-09-02 22:26:21 +08:00
JimMoen 1d70e0b0ec Merge tag 'v5.0.7' into fix-mqtt-bridge-fields 2022-09-02 10:43:23 +08:00
Zaiming (Stone) Shi 8a5a9ca2bf
Merge pull request #8854 from zmstone/0831-chore-merge-main-to-dev-ee50
0831 chore merge main to dev ee50
2022-09-01 11:35:23 +01:00
zhouzb ee91128cef chore: bump vsn 2022-09-01 15:05:18 +08:00
JianBo He dda0b4ac8c chore: update emqtt vsn 2022-09-01 12:35:37 +08:00
JianBo He c1afb34a86 test: fix failed tests 2022-09-01 11:34:31 +08:00
Zhongwen Deng 7bb592a2e1 fix: default override_to is cluster 2022-09-01 09:25:23 +08:00
Zaiming (Stone) Shi 5a3fb4a011 Merge remote-tracking branch 'origin/master' into dev/ee5.0 2022-08-31 17:11:15 +02:00
firest 71aaf5c538 fix(authz): fix dialyzer && test case && proper error 2022-08-31 16:49:27 +08:00
Zhongwen Deng 5718b28eeb feat: Deny hot updates to the configuration in local-override.conf 2022-08-31 14:55:10 +08:00
JianBo He 168f44e45b fix: exhook client.authorize never be execauted
see: https://github.com/emqx/emqx/issues/8779
2022-08-31 14:34:02 +08:00
Shawn 9e50866cd0 fix: rename queue_max_bytes -> max_queue_bytes 2022-08-30 17:18:54 +08:00
zhouzb 0aac916c1a
Merge branch 'release-v5.0.7' into sync-changes-from-506 2022-08-30 15:30:41 +08:00
William Yang 7451351c42 fix: quic listener idle_timeout type err 2022-08-29 16:19:19 +02:00
Zaiming (Stone) Shi 2eb078ff3b chore: bump changed app versions 2022-08-26 14:32:28 +02:00
zhouzb ecb79716ad
Merge branch 'master' into merge-506-to-master 2022-08-26 17:40:26 +08:00
Zaiming (Stone) Shi 97856f2e42 fix: allow empty string as ciphers 2022-08-24 21:02:21 +02:00
Zaiming (Stone) Shi 7851a3aefd refactor(ssl): use 'available' for defaults
prior to this change, for TLS versions, 'default's are 'available's
there is no need for such an alias.

now we call available_versions with a specific tag:
tls, dtls, or all
2022-08-24 21:02:21 +02:00
Zaiming (Stone) Shi 8717535d32 refactor: populate ciphers list at runtime
Populating ciphers list when checking schema makes the
config file example and the schmea documents quite bloated
2022-08-24 21:02:21 +02:00
Shawn f75932e49f chore: release e5.0.0-beta.2 2022-08-24 22:28:29 +08:00
JianBo He 97b9d378a5 Merge tag 'v5.0.6' into merge-506-to-master 2022-08-23 09:08:55 +08:00
ieQu1 5aceeff7b4 refactor(cm_registry): Export transactions 2022-08-22 19:52:37 +02:00
JianBo He 46f743d16b chore: bump emqx vsn 2022-08-22 14:37:16 +08:00
JianBo He ad96bb551e chore: update changes and release vsn 2022-08-22 12:30:42 +08:00
JimMoen 2648362c62 fix(bridge): password for bridge/db format as `password` for dashboard 2022-08-19 15:54:19 +08:00
JianBo He d1c676a1c5 chore: bump vsn 2022-08-19 14:08:09 +08:00
JianBo He 7ffdd95aa3 chore: bind option support `:1883` style config
see: https://github.com/emqx/emqx/pull/8571
2022-08-19 11:12:17 +08:00
ieQu1 c89de81e19 refactor(bpapi): Export transactions 2022-08-18 12:27:13 +02:00
ieQu1 7292095951 test(router_helper): Refactoring 2022-08-18 12:27:13 +02:00
ieQu1 4fa06fcd63 refactor(exclusive_sub): Export transaction 2022-08-18 12:27:13 +02:00
ieQu1 b962a71da2 refactor(shared_sub): Export transactions 2022-08-18 12:20:42 +02:00
ieQu1 cd3aa476c6 refactor(router_helper): Export transactions 2022-08-18 12:20:42 +02:00
ieQu1 8ef1c2db26 refactor(banned): Export transactions 2022-08-18 12:20:42 +02:00
ieQu1 5c260dfbd0 refactor(alarm): Export transaction functions 2022-08-18 12:20:42 +02:00
ieQu1 cdde392d6e refactor(emqx_trace): Extract transactions to DL module 2022-08-18 12:02:54 +02:00
ieQu1 b8a7ab9ad3 fix(connector_psql): Wrap password in a fun 2022-08-17 14:31:12 +02:00
Zaiming (Stone) Shi 050f68cf5d test: allow missing schema for app in tests 2022-08-17 08:33:17 +02:00
Thales Macedo Garitezi f0436a2bd6 chore: bump ekka -> `0.13.4`
ZSTD fix for RocksDB.

https://github.com/emqx/mnesia_rocksdb/pull/6
2022-08-16 09:48:32 -03:00
Xinyu Liu 84a8f8b218
Merge branch 'dev/ee5.0' into copy-of-master 2022-08-15 21:46:42 +08:00
Zaiming (Stone) Shi ecbf867551 refactor: rename Field to Struct for ref type create function
Hocon type reference is actually a child-struct's struct name
not necessarily the same name as the parent-sutrct's field name

This commit changes the variable name for more clarity
2022-08-15 09:17:44 +02:00
Shawn b3162fe5ff fix: conflicts between master and ee5.0 2022-08-14 22:24:09 +08:00
Shawn 18d710e932 chore: release v5.0.5-beta.1 2022-08-12 18:37:27 +08:00
Xinyu Liu 4318159b85
Merge pull request #8673 from qzhuyan/dev/william/quic-listener-config-timeouts
feat(quic): more listener options
2022-08-12 18:30:53 +08:00
Xinyu Liu fc6d79c2da
fix: typos in emqx_schema_i18n.conf 2022-08-12 18:30:34 +08:00
Shawn bed10b097f chore: release e5.0.0-beta.1 2022-08-12 00:27:13 +08:00
William Yang 7ca8550a5d feat(quic): more listener options 2022-08-10 12:37:12 +02:00
Zaiming (Stone) Shi 18614ad291 fix(connector): add back deleted fields as deprecated
max_retries and retry_interval were removed from 5.0.4 wihtout
backward compatibliity.
This commit adds the fields back as deprecated
2022-08-10 09:50:12 +02:00
Shawn 8f0954837b fix: update test cases for emqx_connector 2022-08-10 00:34:35 +08:00
William Yang 30f24131e2
Merge pull request #8650 from qzhuyan/fix/william/keep-alive-check
fix: keep alive check
2022-08-09 11:37:12 +02:00
Benjamin Krenn 70cb7768b0
Merge branch 'emqx:master' into feat_round_robin_per_node 2022-08-05 11:12:23 +02:00
Benjamin Krenn 71f31ab5cd feat(shared-sub): add round_robin_per_group strategy
remove flaky tests that provide little value
2022-08-05 11:10:54 +02:00
Thales Macedo Garitezi 5bd2875db8
Merge pull request #8637 from thalesmg/esockd-tls-gc
feat: add option to gc after TLS/SSL handshake
2022-08-04 14:18:45 -03:00
Benjamin Krenn 5fa2a2aa44
Merge branch 'emqx:master' into feat_round_robin_per_node 2022-08-04 11:02:51 +02:00
Benjamin Krenn dec892e867 feat(shared-sub): add round_robin_per_group strategy
add round robin per group strategy that balances load in a more predictable fashion when using no replication
2022-08-04 10:40:50 +02:00
William Yang 01b9115fd8 fix: keep alive check
According to MQTT spec, MQTT Server should check a complete MQTT message
recv in last keep-alive time frame instead of number of received bytes
from the socket.

This commit change to check the recv pkt counter from process dict
instead.

Also it could save some calls to erlang port.
2022-08-03 17:14:19 +02:00
Thales Macedo Garitezi 7f932d64be docs: adjust descriptions
Co-authored-by: Zaiming (Stone) Shi <zmstone@gmail.com>
2022-08-03 09:38:51 -03:00
Thales Macedo Garitezi 19e101445c feat: add option to gc after TLS/SSL handshake 2022-08-03 09:38:51 -03:00
lafirest 11165f4a9c
Merge pull request #8626 from lafirest/fix/connect_event_5
fix(channel): Adjust the timing of the `client.connected` event
2022-08-03 16:01:17 +08:00
JianBo He cffaf95d00
chore: update apps/emqx/src/emqx_channel.erl 2022-08-02 17:20:58 +08:00
Thales Macedo Garitezi a78760dbac chore: bump app vsns 2022-08-01 10:57:34 -03:00
firest 78deee6846 fix(channel): Adjust the timing of the `client.connected` event 2022-08-01 17:35:48 +08:00
JianBo He 14920743ca
Merge pull request #8513 from lafirest/fix/limiter_interface
refactor(limiter): refactor the user interface
2022-08-01 11:02:15 +08:00
Thales Macedo Garitezi a9b176b8bd
Merge pull request #8598 from thalesmg/license-fixes-50
license fixes (5.0)
2022-07-29 13:13:51 -03:00
JianBo He be679f8128
Merge pull request #8589 from emqx/release-v5.0.4
Merge v5.0.4 into master branch
2022-07-29 08:49:10 +08:00
Thales Macedo Garitezi 8e08f045aa chore(bpapi): add new vsn 2022-07-28 17:59:54 -03:00
Thales Macedo Garitezi f8a1bd0715 feat(license): copy license file to cluster when updating it 2022-07-28 17:29:59 -03:00
JianBo He 5835120d8e chore: relealse v5.0.4 2022-07-28 13:47:41 +08:00
zhouzb 9323878442 chore: bump vsn 2022-07-27 16:23:54 +08:00
Thales Macedo Garitezi b4be9b6fae chore: bump ekka -> 0.13.3
Mainly: https://github.com/emqx/erlang-rocksdb/pull/7
2022-07-26 09:50:14 -03:00
JianBo He 257e310931 chore: ensure the `bind` output style
e.g:
- Configured as `1883`, printed as `:1883`
- Configured as `0.0.0.0:1883`, printed as `:1883`
- Configured as `127.0.0.1:1883`, printed as `127.0.0.1:1883`
- Configured as `::1:1883`, printed as `[::1]:1883`
- Configured as `[::1]:1883`, printed as `[::1]:1883`
2022-07-26 19:02:04 +08:00
firest bc716884e0 fix(limiter): fix spellcheck error 2022-07-26 15:16:53 +08:00
firest bcc78950a9 fix(limiter): fix schema error 2022-07-26 14:33:04 +08:00
Chris Hicks bc93d5f525
Merge pull request #8567 from emqx/EMQX-6018-v-5-0-4-cli-command-to-verify-config-syntax-against-schema
feat: Added emqx command to check configs
2022-07-25 17:14:42 +02:00
Ilya Averyanov 2f470b8878
Merge pull request #8554 from savonarola/authn-logging
Add more tracing for authentication
2022-07-25 17:43:00 +03:00
Ilya Averyanov 1a236db91b chore(log): add authentication tracing 2022-07-25 17:14:19 +03:00
Chris 24f88679ae feat: Added emqx command to check configs 2022-07-25 11:01:08 +02:00
JianBo He 74c5fd411b chore(schema): trim space in ip_port 2022-07-25 09:33:47 +08:00
JianBo He e0b33dc258 fix(listener): support listen on ipv6 address 2022-07-25 09:31:16 +08:00
Thales Macedo Garitezi 343a78b08a feat(persistent_sessions): don't use rocksdb when unavailable 2022-07-22 10:59:41 -03:00
firest ce46cb9216 fix(limiter): fix test case error 2022-07-22 18:59:02 +08:00
firest 15c8110af2 fix(limiter): lift the level of the `client` field 2022-07-22 17:14:24 +08:00
Zhongwen Deng 4d5dfe265b fix: logger json formatter's config not working 2022-07-22 09:48:11 +08:00
Zhongwen Deng 116c664df1 feat: add sysmon config handler to reload conf 2022-07-21 12:33:56 +08:00
firest dbab1bc96a fix(limiter): fix elvis && dialyzer error 2022-07-20 15:00:12 +08:00
firest d3f965dfe7 refactor(limiter): refactor the user interface 2022-07-20 13:57:31 +08:00
zhongwencool b1c259191c
Merge pull request #8502 from ieQu1/wait-cluster-rpc-shard
Wait cluster rpc shard
2022-07-19 11:29:02 +08:00
ieQu1 6f00f51457 chore(ekka): Bump version 2022-07-18 15:13:40 +02:00
William Yang 4481ae6ff8 feat(quicer): bump to 0.0.16 2022-07-18 12:08:22 +02:00
Zhongwen Deng 421251f4c8 chore: improve the dashboard listener startup log 2022-07-14 09:49:54 +08:00
JimMoen f42c8ffcfa test(connector): redis sentinel include name 2022-07-13 10:37:16 +08:00
firest bcc16230cc fix(stats): fix topic name error 2022-07-12 13:55:36 +08:00
Zaiming (Stone) Shi 49d008371f chore: bump version to 5.0.4 2022-07-08 22:35:16 +02:00
Shawn b55048f705 chore: update app versions 2022-07-08 16:29:07 +08:00
Shawn 9ca5927b88 fix: issue in test cases 2022-07-08 14:07:28 +08:00
Shawn 71f642518a fix: the file cluster-override.conf is emptied if hocon_pp:do/2 failed 2022-07-08 09:17:23 +08:00
Zhongwen Deng 0b1117df47 chore: upgrade hocon to 0.28.3 to speed up schema cache 2022-07-07 15:00:41 +08:00
Zaiming (Stone) Shi 07783249bb chore: move emqx API version (in generated doc) to emqx_release.hrl
So we have one place to bump all versions
2022-07-06 14:01:35 +02:00
Zaiming (Stone) Shi fa89b633d8 chore: bump version to 5.0.3 2022-07-04 23:23:20 +02:00
Zaiming (Stone) Shi a7e948b0f4 fix(ws): websocket header get expects bin-string 2022-07-04 23:20:22 +02:00
Zaiming (Stone) Shi 4b383a42f3
Merge pull request #8399 from zmstone/0702-no-relup-for-opensource-edition
0702 no relup for opensource edition
2022-07-02 11:57:36 +01:00
Zaiming (Stone) Shi 999eac5376 chore: bump emqx app version to 5.0.2 2022-07-02 11:44:19 +02:00
Zaiming (Stone) Shi c602ef708f chore: bump version to 5.0.2 2022-07-02 11:44:19 +02:00
Zhongwen Deng 3675ba0c9f fix: restricted_shell not working 2022-07-02 16:58:52 +08:00
zhouzb 0cce1df2b6 chore: bump release vsn 2022-07-01 22:03:47 +08:00
JimMoen 2ad99fca7a chore: update appup.src 2022-07-01 21:07:33 +08:00
ieQu1 7d46e8671e
Merge pull request #8376 from ieQu1/nicer-bpapi-errors
fix(bpapi): Make error messages nicer
2022-07-01 14:50:49 +02:00
zhongwencool 670f83e415
Merge pull request #8369 from zhongwencool/sync-authz-certs
fix: sync data's authz and certs
2022-07-01 17:32:22 +08:00
DDDHuang 25c37a63ef
Merge pull request #8356 from DDDHuang/pubsub_api
Pubsub api
2022-07-01 17:24:18 +08:00
JianBo He a13d726d17
Merge pull request #8315 from lafirest/v5.0
feat: add exclusive subscription
2022-07-01 16:00:10 +08:00
JianBo He 127ecdbf77
Merge pull request #8375 from lafirest/fix/authn_metrics_clause
fix(metrics): fix authn metrics count clause error
2022-07-01 15:53:52 +08:00
Zhongwen Deng c23ccbd370 chore: update bpapi.verions 2022-07-01 15:51:25 +08:00
ieQu1 e2c2f7b224 feat(bpapi): Add a header to bpapi.versions file 2022-07-01 09:50:04 +02:00
ieQu1 2f7078f314 fix(bpapi): Make error messages nicer 2022-07-01 09:34:35 +02:00
DDDHuang 6c9cad366b fix(api): client sub & unsub batch 2022-07-01 15:21:11 +08:00
William Yang ff9ed0eab9
Merge pull request #8365 from qzhuyan/dev/william/bump-quicer
fix(quic): overload protection follows zone config
2022-07-01 09:17:22 +02:00
firest 9170a05990 fix(metrics): fix authn metrics count clause error 2022-07-01 15:14:46 +08:00
Zhongwen Deng 9af470dee9 chore: upgrade emqx_conf bpapi to version 2 2022-07-01 15:00:14 +08:00
firest d205f10fab chore: add upgarde callback for emqx_exclusive_subscription 2022-07-01 14:59:10 +08:00
firest 5981a23fe4 fix(exclusive): add upgarde API && fix description error 2022-07-01 14:44:51 +08:00
firest b1b1d40528 fix(exclusive): fix xref error && change exclusive default value 2022-07-01 14:43:32 +08:00
firest 85f6846f89 chore: update emqx.appup.src 2022-07-01 14:43:30 +08:00
firest af5bf52ddf feat: add exclusive subscription 2022-07-01 14:36:41 +08:00
firest 9ce2dbb77a fix(metrics): adjust metrics count codes 2022-07-01 13:42:40 +08:00
firest 7f18969f1e fix(metrics): revert client.authenticate count method 2022-07-01 12:22:48 +08:00
firest c45cf62b3d chore: update emqx.appup.src 2022-07-01 12:22:48 +08:00
firest 9415a94c7f feat(metrics): optimize client.authenticate 2022-07-01 12:22:48 +08:00
Shawn 264cf036c7 chore: release 5.0.1-beta.1 2022-07-01 11:12:08 +08:00
William Yang ecf0c8d7e2 fix(quic): overload protection follows zone config 2022-06-30 20:51:45 +02:00
ieQu1 227602fa3a fix(bpapi): Don't check forward compatibility from old release 2022-06-30 14:09:43 +02:00
Thales Macedo Garitezi e70ab24a48 fix(hooks): return error on hook-removed subscription rather than deleting it (5.0)
Port of https://github.com/emqx/emqx/pull/8346
2022-06-29 11:10:36 -03:00
Zaiming (Stone) Shi b3f16ccb36 fix: Erlang distribution over TLS 2022-06-28 21:49:02 +02:00
Zaiming (Stone) Shi e4b22e2dc7 fix: enable -ssl_dist_optfile option in vm.args by default
this config has no effect if inet_tcp is in use
2022-06-28 21:49:02 +02:00
Zhongwen Deng 6372456211 chore: move vm.args.* to etc/ 2022-06-28 10:36:43 +08:00
Thales Macedo Garitezi 57a36e53da
Merge pull request #8304 from thalesmg/fix-client-sub-hook-50
fix(hooks): allow `client.subscribe` hook to reject subscriptions
2022-06-27 10:44:55 -03:00
Zaiming (Stone) Shi 55558ccfbd chore: allow lazy type environment variable override 2022-06-26 14:16:08 +02:00
Zaiming (Stone) Shi 5dec0be6e4 refactor(emqx_schema): remove union wrapper around array of maps
it's previously a union of array (of maps) and map.
since the second union member has been removed
there is no point of keeping the union wrapper
2022-06-26 14:13:14 +02:00
Thales Macedo Garitezi 4b44fda16b fix(hooks): allow `client.subscribe` hook to reject subscriptions
Port of https://github.com/emqx/emqx/pull/8288
2022-06-23 11:33:55 -03:00
Zaiming (Stone) Shi 54f3dd3ddc chore(appup): add appup for emqx_conf 2022-06-22 00:06:26 +02:00
Zaiming (Stone) Shi 0e62f4e70d docs: escape <foobar> as \<foobar> 2022-06-21 21:32:06 +02:00
ieQu1 78ffb2b2b1 test(bpapi): Add API dump for 5.0.0 2022-06-21 09:31:59 +02:00
Zaiming (Stone) Shi b467e11b2e fix(appup): fixed appup and version check scripts for 5.0 2022-06-20 22:20:31 +02:00
Zaiming (Stone) Shi 7ae3b4e28c chore: bump emqx app vsn to 5.0.1 2022-06-20 20:28:21 +02:00
JianBo He 366779e621 chore: bump version 2022-06-17 20:41:30 +08:00
JianBo He e6fde4d292
Merge pull request #8259 from HJianBo/fix-url-conflict
fix(mgmt): avoid to HTTP dispatch failure due to an URI defination conflict
2022-06-17 20:40:07 +08:00
JianBo He 403ee13e17 test: increase waiting time 2022-06-17 20:00:38 +08:00
Zaiming (Stone) Shi 701a113aa4 ci: pin quicer 0.0.14 2022-06-17 12:35:54 +02:00
JianBo He ca10340eed
Merge pull request #8253 from lafirest/fix/retainer_bucket
fix(retainer): check does the bucket is exists when update the retain…
2022-06-17 15:20:17 +08:00
Zhongwen Deng bdb35c2e0b fix: keepalive_backoff should be a number(int|float) 2022-06-17 12:03:47 +08:00
firest 2444970b0b fix(retainer): check does the bucket is exists when update the retainer config 2022-06-17 10:25:08 +08:00
Xinyu Liu c47d28cdc3
Merge pull request #8247 from terry-xiaoyu/mongo_auth_timeout
feat: add start_after_created option to resource:create/4
2022-06-17 07:51:52 +08:00
Shawn d6ef2f7502 refactor: graceful recreate resources 2022-06-17 05:29:18 +08:00
Zaiming (Stone) Shi 7824ae5f09 fix(pmap): try not to exit abnormal as much as possible 2022-06-16 21:03:19 +02:00
zhongwencool 7088b02480
Merge pull request #8239 from zhongwencool/listener-options-default
fix: default nodelay(true),buffer(4kb)
2022-06-16 21:57:13 +08:00
Zaiming (Stone) Shi fa41c9ff35 chore: pin quicer 0.0.12
quicer (quic.git) 0.0.12 has a build cache enabled which can spped up
the builds
2022-06-16 12:17:02 +02:00
William Yang 3c7dd5d6c4
Merge pull request #8092 from qzhuyan/dev/william/bump-quicer
feat: new quicer 0.0.11
2022-06-16 11:48:31 +02:00
William Yang a911c27962 feat(quic): bump emqtt to 1.6.0 with quic 0.0.11 2022-06-16 10:38:46 +02:00
Zhongwen Deng d8af08b292 fix: nodelay(true),buffer(4k) 2022-06-16 15:27:10 +08:00
Zaiming (Stone) Shi d0709798e7
Merge pull request #8229 from zmstone/0615-delete-appname-for-k8s-and-dns-discovery
Delete app name config for k8s and dns discovery
2022-06-16 07:29:02 +01:00
Zhongwen Deng 634a75341a fix: remove nonexistent listener should always return ok 2022-06-16 11:33:24 +08:00
Zhongwen Deng c6271de174 fix: restart started listener when listener connection options update 2022-06-16 11:26:54 +08:00
Xinyu Liu 3b00b16abe
Merge pull request #8221 from terry-xiaoyu/fix_delayed_module_disbled_after_emqx_stop
feat: fix the hook priorities
2022-06-16 09:42:42 +08:00
JianBo He 584a1a6415
Merge pull request #8226 from savonarola/listener-anonymous
feat(authn): add enable_authn flag for listeners
2022-06-16 09:40:24 +08:00
Shawn f59443eaee fix: add macro HP_HIGHEST=1000 2022-06-16 09:16:43 +08:00
Zaiming (Stone) Shi 67b8e6c3bd test: add a script to test dns cluster node discovery 2022-06-16 01:34:16 +02:00
Ilya Averyanov e381e3698f feat(authn): add enable_authn flag for listeners 2022-06-15 22:26:08 +03:00
Zaiming (Stone) Shi efda516125 chore: fix typos 2022-06-15 19:05:09 +02:00
Shawn 48f685a0dd fix: remove the APIs for emqx_hooks:put/2 and emqx_hooks:add/2 2022-06-16 00:43:50 +08:00
zhongwencool 604f0d9511
Merge pull request #8224 from zhongwencool/gateway-authn-mismatch
fix: don't merge gateway's authn
2022-06-15 23:04:52 +08:00
zhongwencool fbfed35371
Merge pull request #8214 from zmstone/0613-best-effort-json-for-hocon-type-check-errors
refactor: best-effort json for hocon type check errors
2022-06-15 22:45:05 +08:00
Zhongwen Deng 5561fa6e06 fix: listener_SUITE failed 2022-06-15 21:20:25 +08:00
Zaiming (Stone) Shi 738a551550 refactor: best-effort json for hocon validation errors 2022-06-15 15:01:15 +02:00
William Yang 2908c06c54 fix(quic): default quic listener 2022-06-15 14:39:29 +02:00
William Yang 45e2605485 build: workaround for windows build 2022-06-15 14:39:29 +02:00
William Yang 96a510fbf1 feat(quic): fix some listener 2022-06-15 14:39:29 +02:00
William Yang 6349b5e5e0 feat(quic): bump to quicer 0.0.11 2022-06-15 14:39:29 +02:00
William Yang 219f159fe7
Merge pull request #8219 from qzhuyan/dev/william/emqx-conf-vm-args
chore(conf): mv some default val of vmargs to emqx_conf
2022-06-15 14:14:57 +02:00
JianBo He 89ff67a1e6
Merge pull request #8211 from lafirest/fix/limiter_infinity_update
fix(limiter): set maximum value for `infinity` rate and capacity
2022-06-15 20:04:55 +08:00
zhongwencool 14ba93d1df
Merge pull request #8218 from zhongwencool/enabled-listener
feat: add enabled for listeners
2022-06-15 19:28:28 +08:00
Shawn 39b1b20506 feat: fix the hook priorities 2022-06-15 19:03:40 +08:00
JianBo He 67063cd088
Merge pull request #8190 from HJianBo/fix-authz-setting-required
fix(authz): fix required not working for authz-cache
2022-06-15 18:52:03 +08:00
firest 28d9939713 fix(limiter): fix test case errors 2022-06-15 17:35:13 +08:00
firest 4e05d751c1 fix(limiter): change limiter log level to debug 2022-06-15 16:01:16 +08:00
Zhongwen Deng 042b88db2d fix: don't start listener when update stopped listener 2022-06-15 15:20:53 +08:00
William Yang efed970aab chore(conf): mv some default val of vmargs to emqx_conf 2022-06-15 09:06:06 +02:00
firest c147743895 fix(limiter): move default connection setting into schema 2022-06-15 14:57:49 +08:00
Zhongwen Deng 36af3d066f feat: add enabled for listeners 2022-06-15 14:39:58 +08:00
firest fa99b65c91 fix(limiter): refresh dispatcher limiter when retainer config updated 2022-06-15 14:11:15 +08:00
firest 6ca58e5fbc fix(limiter): fix test case error 2022-06-15 14:11:15 +08:00
firest e5d223000e fix(limiter): set maximum value for `infinity` rate and capacity
There are now two types of limiters, `infinity` and `limited`.
When `infinity` is updated to `limited` by config, the changes only take effect for new users.
When `limited` is updated to `infinity`, old users will never get tokens, because the `countes`
they hold are no longer updated.
Setting the maximum value for `infinity` rate and capacity can unify these two limiters and slove this problem
2022-06-15 14:11:12 +08:00
JianBo He 03967a83de chore(authz): make `authorization.cache.enable` required 2022-06-15 13:46:17 +08:00
JianBo He f1d4bab97d
Merge pull request #8156 from lafirest/fix/default_con_limiter
fix(limiter): add default connection limiter for listeners
2022-06-15 13:38:13 +08:00
JianBo He 5817b7a9a9
Merge pull request #8157 from lafirest/fix/rmv_client_prefix
fix(metrics): remove the `client.` prefix for AuthN/AuthZ metrics
2022-06-14 17:23:48 +08:00
firest 45aa9d604b fix(metrics): remove the client. prefix for AuthN/AuthZ metrics 2022-06-14 14:08:25 +08:00
Xinyu Liu e9f2ba4c71
Merge pull request #8203 from terry-xiaoyu/force_sync_configs
Change the default retry_interval of cluster_rpc call to 1min
2022-06-14 11:27:24 +08:00
Thales Macedo Garitezi 4d0c60cacf
Merge pull request #8178 from thalesmg/fix-connack-auth-err-mqtt3-50
fix(metrics): inc `connack.auth_error` when using MQTT 3.1 (5.0)
2022-06-13 16:07:25 -03:00
Thales Macedo Garitezi 5f9778237a test(fix): avoid depending on other apps; fix setup 2022-06-13 12:00:00 -03:00
Shawn dd099137f0 fix: catch errors when load bridges 2022-06-13 22:31:58 +08:00
Zaiming (Stone) Shi 01118cb804
Merge pull request #8195 from zmstone/0613-refactor-display-rfc3339
refactor: expose rfc3339 datetime string
2022-06-13 14:19:19 +01:00
Zaiming (Stone) Shi b18290626d
Merge pull request #8194 from zmstone/0613-uptime-format-as-string-in-cli-printout
fix: uptime display in CLI printout should be human-readable
2022-06-13 13:55:42 +01:00
William Yang 5b79fd55a2
Merge pull request #8176 from qzhuyan/dev/william/kill-quic
chore: don't build quic on MacOS
2022-06-13 14:34:39 +02:00
Zaiming (Stone) Shi 08d5f4869b
Merge pull request #8183 from zmstone/0612-chore-pin-rebar3_hex-plugin-version-7.0.2
build: pin rebar3_hex plugin version 7.0.2
2022-06-13 12:33:18 +01:00
William Yang d49a75ae28 chore: don't build quic on MacOS 2022-06-13 13:09:20 +02:00
Zaiming (Stone) Shi 8518e71db1
Merge pull request #8182 from zmstone/0611-fix-config-update-race-condition
fix(cluster_rpc): config update race condition
2022-06-13 11:46:08 +01:00
Zaiming (Stone) Shi 10add62206 refactor: expose rfc3339 datetime string 2022-06-13 11:56:07 +02:00
Zaiming (Stone) Shi ba23771a0a fix: uptime display in CLI printout should be human-readable 2022-06-13 11:44:26 +02:00
Zaiming (Stone) Shi 2e6af5f2e1 test: fix a flaky test
emqtt client may start before listener is ready
2022-06-13 10:46:31 +02:00
firest f5c1221ec8 fix(limiter): fix test case error 2022-06-13 15:58:22 +08:00
firest 7e3c8162ea fix(limiter): remove the `enable` field 2022-06-13 14:43:10 +08:00
firest d13055be43 fix(limiter): add default connection limiter for listeners 2022-06-13 14:43:10 +08:00
firest 2512ebf58e fix(limiter): fix counter rate calc error 2022-06-13 14:18:20 +08:00
lafirest 1963441472
Merge pull request #8167 from lafirest/fix/limiter_period
fix(limiter): fix precision issue
2022-06-13 10:13:05 +08:00
Zaiming (Stone) Shi 2065be569e fix(emqx_cluster_rpc): fail fast on stale state
Due to:

* Cluster RPC MFA is not idempotent!
* There is a lack of rollback for callback's side-effects

For instance, when two nodes try to add a cluster-singleton
concurrently, one of them will have to wait for the table lock
then try to catch-up, then try to apply MFA.
The catch-up will have the singleton created, but the initiated
initiated multicall apply will fail causing the commit to rollback,
but not to 'undo' the singleton creation.
Later, the retries will fail indefinitely.
2022-06-12 20:18:48 +02:00
Zaiming (Stone) Shi d418850d3c
Merge pull request #8165 from zmstone/0609-chore-update-to-mria-0.2.8
chore: update mria to 0.2.8
2022-06-11 16:53:04 +01:00
Thales Macedo Garitezi 7cd35c9d44
fix(metrics): inc `connack.auth_error` when using MQTT 3.1 (5.0)
Since MQTT 3.1 uses a different reason code for auth failures, it was
failing to increase the corresponding metric that works for MQTT 5.0.
2022-06-10 17:40:27 -03:00
gsychev 86c1610d26
Merge pull request #8039 from gsychev/multinode_helper
Multinode helper
2022-06-10 13:10:38 +00:00
Zaiming (Stone) Shi 1b4f29bd64 chore: update ekka to 0.12.9
compring to 0.12.8, it included a version bump of erlang_rocksdb
which fixed a CI build issue (bad version number uploaded to github
artifacts, caused cached build result to always fail to download
hence fallback to compile from source code)
2022-06-10 13:59:30 +02:00
Georgy Sychev c29eb8a409 feat(testing): Multinode testing helper 2022-06-09 13:33:01 +04:00
firest e01f8ecccb fix(limiter): fix precision issue
When the global rate is less than 1/s, the bad code produces a long period, this will make the rate not correct
2022-06-09 10:39:21 +08:00
Shawn dcc8e27bcd fix: change default idle_timeout of ws connections to 7200s 2022-06-09 10:29:49 +08:00
lafirest 0aab063dd5
Merge pull request #8153 from lafirest/fix/limiter_obtained
fix(limiter): fix initial value error for `obtained`
2022-06-08 13:46:30 +08:00
lafirest 787724bb99
Merge pull request #8143 from lafirest/chore/bump_esockd_version
chore: bump esockd version
2022-06-08 10:17:02 +08:00
Zhongwen Deng 853ead3aaf fix: reload ssl listener failed 2022-06-08 06:25:13 +08:00
Zhongwen Deng 5e92ef54c5 fix: ct failed 2022-06-07 20:13:57 +08:00
firest d863a60cff fix(limiter): fix initial value error for `obtained` 2022-06-07 18:17:06 +08:00
Zhongwen Deng dd873147b3 feat: make tcp/ssl options more straightforward 2022-06-07 17:17:06 +08:00
firest 0b84479221 chore: bump esockd version 2022-06-07 13:20:56 +08:00
zhongwencool 914fbedd7e
Merge pull request #8116 from zhongwencool/better-hocon-validate-msg
chore: better hocon validate msg
2022-06-06 20:29:25 +08:00
Zhongwen Deng de5e388afb chore: hocon validate message 2022-06-06 09:55:12 +08:00
Zhongwen Deng c7cc2e85b2 fix: add default&example for schema 2022-06-06 09:52:10 +08:00
Ilya Averyanov 4adfe75530
Merge pull request #8108 from savonarola/authn-delete-chain
Authn delete chain
2022-06-03 12:16:42 +03:00
Zaiming (Stone) Shi a272951415
Merge pull request #8107 from zmstone/0531-test-fix-flaky-test-case
test: wait for listener to be ready before running test case
2022-06-02 15:52:40 +01:00
Ilya Averyanov 0893a36dec fix(authn): removed explicit chain creation for security reasons 2022-06-02 14:03:19 +03:00
Ilya Averyanov 92145d0275 fix(metrics): make metric id unique for authn provider instances 2022-06-02 14:03:19 +03:00
Ilya Averyanov d32b2ecd81 fix(authn api): update removing listener-specific chain logic 2022-06-02 14:03:14 +03:00
Ilya Averyanov 1bad5f8b7c
Merge pull request #8088 from savonarola/authn-import-users-request
feat(authn api): add method for user file upload
2022-06-02 13:51:46 +03:00
Ilya Averyanov 2d53c21d45 chore(authn api): replace user import api with upload api 2022-06-01 19:56:23 +03:00
Shawn 88ca25c60c fix(resource): fast return when starting a unavailable resource 2022-06-01 08:24:53 +08:00
Zaiming (Stone) Shi a7148a4a43 test: wait for listener to be ready before running test case 2022-05-31 20:08:21 +02:00
Shawn 4c247c2c3c chore: release v5.0.0-rc.4 2022-05-31 23:35:46 +08:00
Xinyu Liu d9a5f53601
Merge pull request #8097 from zhongwencool/ct-failed
fix: ct failed
2022-05-31 22:02:35 +08:00
JianBo He f4db4ffa7d chore: change idle_timeout 24h -> 15s 2022-05-31 21:47:54 +08:00
Zhongwen Deng 9861e07426 fix: ct failed 2022-05-31 21:21:15 +08:00
Zaiming (Stone) Shi 9dda0a663f fix(emqx_schema): sync default values 2022-05-31 15:13:38 +02:00
JianBo He 11ef46bc1d fix: fix badmatch for emqx_os_mon:update_mem_alarm_status/1 2022-05-31 20:46:48 +08:00
zhongwencool 55d2e5aee7
Merge pull request #8009 from zhongwencool/simplify-conf
feat: generate a minimized emqx.conf
2022-05-31 20:32:42 +08:00
Zhongwen Deng d61b44ef97 fix: ct failed again 2022-05-31 19:20:27 +08:00
Zhongwen Deng 0fcc02caf4 chore: comment quic listener from emqx.conf 2022-05-31 19:20:27 +08:00
Zhongwen Deng 6c9b959651 fix: ct failed 2022-05-31 19:20:27 +08:00
Zhongwen Deng 26a57a00bb fix: cluster crash 2022-05-31 19:20:27 +08:00
Zhongwen Deng 1345b7e993 chore: bump hocon to 0.28.0 2022-05-31 19:20:27 +08:00
Zhongwen Deng 61237cd97b chore: debug for docker start failed 2022-05-31 19:20:27 +08:00
Zhongwen Deng 9ec804ae03 feat: generate example.conf from schemas 2022-05-31 19:20:27 +08:00
Zhongwen Deng 2b4b3d1b56 test: debug broker segmentation fault 2022-05-31 19:20:27 +08:00
Zhongwen Deng d215f5e4e6 test: add default quic conf 2022-05-31 19:20:27 +08:00
Zhongwen Deng 239949ff0b fix: elvis warning 2022-05-31 19:20:27 +08:00
Zhongwen Deng 96baf4ccdb fix: don't add default if root_key not found 2022-05-31 19:20:27 +08:00
Zhongwen Deng 8aa60cc0a5 feat: generate a minimized emqx.conf 2022-05-31 19:20:27 +08:00
Zaiming (Stone) Shi f4886206ef fix: ignore other os when updating sysmem alarm 2022-05-31 12:51:23 +02:00
ieQu1 06d2e1d05a
Merge pull request #8082 from ieQu1/mria-0.2.6
chore(mria): Bump version to 0.2.7
2022-05-31 10:22:52 +02:00
William Yang f6e53c7f55
Merge pull request #8086 from qzhuyan/dev/william/no-def-quic-listen 2022-05-31 07:39:10 +02:00
JianBo He 96f58d0ec8 Merge remote-tracking branch 'ce/master' into authn-import-users-request 2022-05-31 10:11:21 +08:00
JianBo He f1c596134a
Merge pull request #8084 from savonarola/authn-delete-chain
fix(authn api): add method for removing listener-specific chains
2022-05-31 09:50:53 +08:00
William Yang 3955456c8a chore: remove default quic listener 2022-05-30 23:58:44 +02:00
Ilya Averyanov 3be617cf40 feat(authn api): add method for user file upload 2022-05-31 00:40:10 +03:00
ieQu1 d5649d1f89 chore(mria): Bump version to 0.2.7 2022-05-30 20:20:23 +02:00
Ilya Averyanov 4cae80c8d2 fix(authn api): add method for removing listener-specific chains 2022-05-30 15:33:21 +03:00
gsychev b80f038fcc
Merge pull request #7860 from gsychev/shared_redispatch5
Shared redispatch for 5.0
2022-05-30 11:20:51 +00:00
Shawn 004a784952 fix(test): stop apps at the end of the emqx_bpapi_SUITE 2022-05-30 11:17:43 +08:00
Thales Macedo Garitezi f187ba4a62
Merge pull request #8074 from thalesmg/fix-flaky-test-responser
test(flaky): attempt to fix more flaky tests
2022-05-27 17:14:53 -03:00
Thales Macedo Garitezi 718989c0c9
test(flaky): attempt to fix more flaky tests 2022-05-27 16:35:50 -03:00
gsychev db368e83b1
fix(session): takenover
Co-authored-by: Thales Macedo Garitezi <thalesmg@gmail.com>
2022-05-27 14:54:18 +00:00
Zaiming (Stone) Shi eacd3847ed fix(emqx_mgmt): show used and total ram from lc 2022-05-27 14:04:30 +02:00
Zaiming (Stone) Shi 7b9a600c20
Merge pull request #8055 from zmstone/0526-delete-edge-edition
refactor: stop releasing edge edition
2022-05-27 00:13:47 +01:00
Zaiming (Stone) Shi a76e258d41 test: fix flaky test 2022-05-26 20:05:46 +02:00
Zaiming (Stone) Shi ebe4d7c3fb refactor: stop releasing edge edition
Prior to EMQX 5.0, the edge edition's main difference comaring
to standard edition are:
* Less number of plugins in the release (smaller package size)
* Smaller number is vm.args (for lower memory usage)

Starting from 5.0 most of the plugins are included as features,
the tuned vm.args arguments does not justify a special release edition.

Also as nanomq is getting mature,
EMQ's recommendtation for MQTT broker in edge is https://nanomq.io/
2022-05-26 20:05:46 +02:00
JimMoen 6c91cf3c72 fix: typo in authn/authz metrics sup 2022-05-26 20:11:45 +08:00
Shawn 9c5c961356 fix(test): emqx_mqtt_caps_SUITE failed with {config_not_found,[zones]} 2022-05-26 08:45:25 +08:00
Xinyu Liu ea09ad6403
Merge pull request #8034 from emqx/update_relup_script
fix: porting the install_upgrade.escript from v4.4
2022-05-25 15:46:13 +08:00
Shawn 3d7cab4288 fix: porting emqx_relup.erl from 4.4 2022-05-25 12:37:03 +08:00
Zaiming (Stone) Shi 24529337d9
Merge pull request #8038 from zmstone/0524-fix-typo
chore(emqx_os_mon): fix a typo
2022-05-24 18:51:04 +01:00
Zaiming (Stone) Shi ff9ba3e862 chore(emqx_os_mon): fix a typo 2022-05-24 18:08:34 +02:00
Zhongwen Deng e40d3c6228 chore: fix emqx_trace_SUITE failed 2022-05-24 22:26:55 +08:00
ieQu1 48c143b97a fix(emqx_trace): Read the data locally 2022-05-24 14:39:55 +02:00
Georgy Sychev d911a5a9d4 fix(shared): fixed logging 2022-05-24 15:57:38 +04:00
ieQu1 e7d70c142c fix(emqx_shared_sub): Don't crash on table schema change 2022-05-24 13:03:18 +02:00
Georgy Sychev d0cf112e17 fix(shared): dialyzer 2022-05-24 11:17:34 +04:00
zhongwencool 875b40a4fc
Merge pull request #8016 from lafirest/fix/simplify_limiter_cfg
fix(limiter): Simplified limiter configuration
2022-05-24 14:01:08 +08:00
firest 89de8274a0 test(retainer): fix flow control test case error 2022-05-24 12:44:47 +08:00
Georgy Sychev ea313df2cc fix(shared): removed emqx_message:format 2022-05-24 00:06:29 +04:00
Georgy Sychev 671906dd59 fix: typo 2022-05-23 22:46:49 +04:00
Georgy Sychev f964989d6b feat(shared): redispatch QoS1 messages when sub dies 2022-05-23 17:52:39 +04:00
firest 74f715ca08 fix(limiter): Simplified limiter configuration
1. Simplified limiter configuration
2. add switch for limiter server
2022-05-23 17:45:42 +08:00
firest 6a2a7b96ea fix(limiter): remove the unused limit conf 2022-05-20 18:02:14 +08:00
JianBo He 0a6276f9fe test: suppress ct:print/2 producing ton of useless logs 2022-05-19 14:16:21 +08:00
Yang Miao bf552f2c4b
Merge pull request #7980 from EMQ-YangM/fix_zero_padding
fix: zero padding should be to the MSB side
2022-05-18 17:22:23 +08:00
EMQ-YangM 66c62f432b fix: zero padding should be to the MSB side 2022-05-18 15:28:01 +08:00