Commit Graph

10125 Commits

Author SHA1 Message Date
Stefan Strigler 71607aa2ad feat(emqx_bridge_mysql): port to shared connectors 2023-12-08 16:15:18 +01:00
firest 1a8b59045b fix(gbt): Add unimplemented command call 2023-12-08 20:55:20 +08:00
firest f4f45cf634 fix(authn_ldap): Improve the type inference of method union 2023-12-08 19:26:29 +08:00
Kjell Winblad 0c80c74554 fix: remove unnecessary prepare_statement from pgsql action 2023-12-08 09:59:19 +01:00
Zaiming (Stone) Shi 41679808fe chore: add version number in license apply link 2023-12-08 08:35:58 +01:00
Zaiming (Stone) Shi e5cf9e40ac refactor: update default enterprise license 2023-12-08 08:25:20 +01:00
firest e57d796df5 fix(ldap): Adjust logger level for authentication failures 2023-12-08 12:47:32 +08:00
zhongwencool 45c4fb33a8 fix: occasionally return stale view when updating configurations on different nodes concurrently 2023-12-08 09:56:31 +08:00
JimMoen 17e6703ba2
Merge pull request #12120 from qzhuyan/dev/william/bump-new-quicer
chore: bump emqtt 1.10.1 and quicer 0.0.307
2023-12-07 22:10:43 +08:00
William Yang 499f4d4bc5 chore(quicer): dialyzer 2023-12-07 13:52:48 +01:00
William Yang 583645d97b chore: bump emqtt 1.10.1 and quicer 0.0.308 2023-12-07 13:52:44 +01:00
Thales Macedo Garitezi c45ed7b888 fix(connectors_api): fill default raw config values before returning
Fixes https://emqx.atlassian.net/browse/EMQX-11562
2023-12-07 09:44:48 -03:00
Thales Macedo Garitezi c274450c5e
Merge pull request #12118 from thalesmg/fix-missing-type-name-api-actions-r54-20231206
fix(actions_api): add missing fields to API spec and returned data
2023-12-07 09:34:29 -03:00
Zaiming (Stone) Shi 7e3ed05f87
Merge pull request #12115 from zmstone/1206-fix-dialyzer
1206 fix dialyzer
2023-12-07 12:24:47 +01:00
zhongwencool 253ea6093a
Merge pull request #12111 from zhongwencool/fix-token-not-found
fix: use sync_transaction when update admin/token
2023-12-07 09:56:20 +08:00
zhongwencool 850c6027d4
Merge pull request #12113 from zhongwencool/log-fix
fix: audit log format
2023-12-07 09:56:01 +08:00
Zaiming (Stone) Shi 7560016f0e fix(hocon): upgrade hocon from 0.40.0 to 0.40.1
fixed type spec, exported some public types from emqx_schema module
2023-12-06 20:39:26 +01:00
Zaiming (Stone) Shi 33a7282cdd fix(dialyzer): only include eunit when TEST is defined 2023-12-06 20:39:26 +01:00
Zaiming (Stone) Shi 9a6056ff2f refactor(emqx_machine): move system_monitor to included_applications
system_monitor has to be found in application (or included_applications)
otherwise dialyzer fails with Unknown function

Adding to 'applications' would cause a deadlock because one
cannot call application:ensure_all_started in the application/2
callback.
2023-12-06 20:39:26 +01:00
Zaiming (Stone) Shi 6b553e37c0 chore: pin ekka 0.17.0 previously 0.15.16
change summary:
1. otp 26
2. type spec fixes
3. dropped UDP mcast clustering
2023-12-06 20:39:26 +01:00
Zaiming (Stone) Shi 423b586c56 fix(dialyzer): fix some dialyzer issues found on otp 26 2023-12-06 20:32:49 +01:00
Zaiming (Stone) Shi 6affda8194 refactor(emqx_gateway_cm): no need to keep locker pid in state
For two reasons
1. Every other places computes the process register name from gwname
2. The ekka_locker api spec only accepts atom but not pid
2023-12-06 19:20:24 +01:00
Zaiming (Stone) Shi 71f9838fd7 chore: upgrade to emqtt 1.10.0 2023-12-06 19:18:15 +01:00
Zaiming (Stone) Shi 83206daa20 refactor(emqx_cm_locker): delete dead code 2023-12-06 19:18:15 +01:00
Zaiming (Stone) Shi de61d9d609 chore: upgrade to jiffy from 1.0.5 to 1.0.6
1.0.5 has an unexported type which causes dialyzer to fail on otp 26
2023-12-06 19:18:15 +01:00
William Yang 64401cb6cc
Merge pull request #12042 from qzhuyan/dev/william/rel54/esockd-robustnes
fix: bump to esockd 8.9.9  improve robustness
2023-12-06 17:39:38 +01:00
Thales Macedo Garitezi fdeedc360e fix(actions_api): add missing fields to `POST` API schema 2023-12-06 11:13:09 -03:00
Thales Macedo Garitezi 2757b95850 fix(actions_api): fill raw config defaults before returning
Fixes https://emqx.atlassian.net/browse/EMQX-11541
2023-12-06 11:13:09 -03:00
Thales Macedo Garitezi 8a5b0d252d
Merge pull request #12110 from thalesmg/test-plugin-flaky-r54-20231205
test(cth_peer): use an exclusive current dir for each peer
2023-12-06 10:16:13 -03:00
Thales Macedo Garitezi 17b6143c30
Merge pull request #12102 from thalesmg/nit-postgres-log-m-20231205
chore(postgres): prettify logged errors
2023-12-06 10:10:02 -03:00
William Yang c4956d99d1 fix: bump to esockd 8.9.9 improve listener robustness 2023-12-06 13:55:13 +01:00
Thales Macedo Garitezi b82189fb4d test(cth_peer): use an exclusive current dir for each peer 2023-12-06 09:35:13 -03:00
SergeTupchiy 28ff53e99c
Merge pull request #11984 from SergeTupchiy/EMQX-10535-openetelmetry-tracing-new
Integrate OpenTelmetry tracing
2023-12-06 11:45:41 +02:00
Zaiming (Stone) Shi d945a26c06
Merge pull request #12112 from zmstone/1206-refactor-delete-mcast-cluster-strategy
refactor: delete UDP multicast clustering strategy
2023-12-06 10:01:26 +01:00
zhongwencool 8965aa2a21 fix: audit log format 2023-12-06 16:58:04 +08:00
Andrew Mayorov 3798060543
Merge pull request #12109 from keynslug/test/emqx-cth-suite
test(emqx): switch select test suites to use `emqx_cth_suite`
2023-12-06 09:48:53 +01:00
Zaiming (Stone) Shi d0732aa2a6 refactor: delete UDP multicast clustering strategy 2023-12-06 08:39:08 +01:00
zhongwencool b015d08cba fix: use sync_transation when update admin/token 2023-12-06 09:04:27 +08:00
Thales Macedo Garitezi e03b8fd80e chore(postgres): prettify logged errors
Fixes https://emqx.atlassian.net/browse/EMQX-11490
2023-12-05 15:55:18 -03:00
Andrew Mayorov 83bea2254d
test(ocsp): switch test suite to use `emqx_cth_suite`
And simplify it slightly in the process.
2023-12-05 19:16:37 +01:00
Andrew Mayorov 6f5228e991
test(emqx): switch select test suites to use `emqx_cth_suite` 2023-12-05 19:16:37 +01:00
Thales Macedo Garitezi 99399c6e95
Merge pull request #12098 from thalesmg/revert-downgrade-bridge-id-m-20231205
chore: stop downgrading action id in rule API responses
2023-12-05 14:26:23 -03:00
Thales Macedo Garitezi f489de8860
Merge pull request #12100 from thalesmg/fix-password-action-probe-m-20231205
fix(bridges/actions api): correctly deobfuscate passwords when probing
2023-12-05 14:25:32 -03:00
Thales Macedo Garitezi 2579f8ea92
Merge pull request #12096 from thalesmg/fix-delete-deps-rules-m-20231204
fix(api): return list of dependent rule ids when trying to delete bridge/action
2023-12-05 14:24:50 -03:00
Serge Tupchii 938508b270 refactor(emqx_opentelemetry): pass only channel info to trace functions 2023-12-05 19:01:08 +02:00
Ivan Dyachkov f5e184ec24
Merge pull request #12101 from id/1205-scheduled-build-of-release54
ci: run scheduled packages build of release-54
2023-12-05 17:37:38 +01:00
Thales Macedo Garitezi f30c97f190 chore: bump app vsn 2023-12-05 13:26:02 -03:00
Thales Macedo Garitezi deb3fcd606 Merge remote-tracking branch 'origin/master' into sync-m-r54-20231205 2023-12-05 13:25:45 -03:00
Serge Tupchii 195a23ae27 chore(emqx_opentelemetry): bump opentelemetry to v1.4.6-emqx 2023-12-05 18:18:31 +02:00
Serge Tupchii 85441fda0f test(emqx_opentelemetry): add trace test suite 2023-12-05 18:18:31 +02:00
Serge Tupchii c8e69357cc feat(emqx_opentelemetry): use one global exporter config for all otel signals 2023-12-05 18:18:31 +02:00
Serge Tupchii 2a3f6b749c fix(emqx_opentelemetry): avoid using `application:ensure_all_started/1` for better deadlock safety 2023-12-05 18:18:31 +02:00
Serge Tupchii 8d3f98eff2 fix(emqx_opentelemetry): fix dialyzer warnings 2023-12-05 18:18:31 +02:00
Serge Tupchii 60da6427ca fix: move openetelmetry deps to emqx_openetelmetry app
This is to fix elixir build, as mix can't find included opentelemetry hrl files.
2023-12-05 18:18:31 +02:00
ieQu1 2a50ec3f7d
Merge pull request #12104 from ieQu1/dev/gcp-logs
fix(bridge_gcp): Don't print config to the logs
2023-12-05 17:15:11 +01:00
Serge Tupchii 7fdc650448 feat: integrate OpenTelemetry traces 2023-12-05 18:11:00 +02:00
Thales Macedo Garitezi e42f4155d3 fix(bridges/actions api): correctly deobfuscate passwords when probing
Fixes https://emqx.atlassian.net/browse/EMQX-11533
2023-12-05 11:49:50 -03:00
ieQu1 b2ca59dfa7 fix(bridge_gcp): Don't print config to the logs 2023-12-05 15:48:53 +01:00
Thales Macedo Garitezi e5a4be11f5 chore: stop downgrading action id in rule API responses
Fixes https://emqx.atlassian.net/browse/EMQX-11405
2023-12-05 11:48:46 -03:00
Thales Macedo Garitezi 1b68fbff05 fix(api): return list of dependent rule ids when trying to delete bridge/action
Fixes https://emqx.atlassian.net/browse/EMQX-11523
2023-12-05 11:47:26 -03:00
Andrew Mayorov 286d483a3a
Merge pull request #12055 from keynslug/ft/EMQX-11474/subopts
fix(sessds): respect subscription options when publishing
2023-12-05 15:45:25 +01:00
Ivan Dyachkov e995b3948e chore: bump emqx_gateway_coap version 2023-12-05 15:17:53 +01:00
Thales Macedo Garitezi b6e8f5a37c
Merge pull request #12095 from thalesmg/fix-rule-test-api-m-20231204
fix(rule_api): fix sql test when testing against events
2023-12-05 08:57:54 -03:00
SergeTupchiy 7b9d12f20e
Merge pull request #12048 from SergeTupchiy/fix-coap_sub-opts
Fix COAP sub opts
2023-12-05 10:27:04 +02:00
Thales Macedo Garitezi c1c7d1246f
Merge pull request #12084 from thalesmg/refactor-resource-status-state-m-20231201
refactor(resource_manager): use macros and better differentiate status from state
2023-12-04 17:55:27 -03:00
Thales Macedo Garitezi d594b38ceb
Merge pull request #12083 from thalesmg/fix-connector-bws-m-20231201
fix(connector): don't start buffer workers for the connector itself
2023-12-04 16:14:15 -03:00
Thales Macedo Garitezi 984e2ccc74
Merge pull request #12082 from thalesmg/test-ensure-res-opts-conn-m-20231201
add missing `resource_opts` fields to connectors schemas
2023-12-04 16:13:32 -03:00
Thales Macedo Garitezi cea857cb8e fix(rule_api): fix sql test when testing against events
Fixes https://emqx.atlassian.net/browse/EMQX-11449
2023-12-04 15:24:09 -03:00
Thales Macedo Garitezi b2cd8aaab7 refactor: use single clause
Co-authored-by: Zaiming (Stone) Shi <zmstone@gmail.com>
2023-12-04 10:02:05 -03:00
Thales Macedo Garitezi ac2c99f996 test(connector): add test to ensure connector schema has `resource_opts`
https://emqx.atlassian.net/browse/EMQX-11509
2023-12-04 10:02:05 -03:00
Thales Macedo Garitezi bb04a2d89e fix(bridge_redis): add `resource_opts` to connector schema 2023-12-04 10:02:05 -03:00
Thales Macedo Garitezi 87a13aa316 fix(bridge_mongo): add `resource_opts` to connector schema 2023-12-04 10:02:05 -03:00
Thales Macedo Garitezi 7a1288e802 fix(bridge_postgres): add `resource_opts` to connector schema 2023-12-04 10:02:05 -03:00
Thales Macedo Garitezi 3078de6e97 fix(bridge_syskeeper): add `resource_opts` to connector schema 2023-12-04 10:02:05 -03:00
Thales Macedo Garitezi 5bdfac52b8 fix(bridge_kafka_producer): add missing `resource_opts` sub-fields to connector schema 2023-12-04 10:02:05 -03:00
Thales Macedo Garitezi 626bcc1c62 fix(bridge_http): add `resource_opts` to connector schema 2023-12-04 10:02:05 -03:00
Thales Macedo Garitezi 10b1a8bbda feat(connector): add some `resource_opts` schema facilities 2023-12-04 10:02:05 -03:00
Andrew Mayorov 130a5a5442
fix(ds): pass topics to `emqx_topic:words/1` before feeding LTS tree
So that empty levels in topics will be properly mapped into `''` atoms.
2023-12-04 13:39:01 +03:00
Andrew Mayorov 92c4b29a4c
feat(topic): match empty topic levels more loosely
So that the result of `emqx_topic:tokens/1` would be perfectly
matchable with the result of `emqx_topic:words/1` of a topic filter
with empty levels.
2023-12-04 13:38:55 +03:00
Andrew Mayorov b5c485cd55
test(sessds): add empty level topic subscription testcase 2023-12-04 13:38:42 +03:00
Serge Tupchii e455433694 test(emqx_gateway): fix test failures caused by grpc-erl upgrade 2023-12-04 12:17:58 +02:00
JimMoen cb992fcf55
Merge pull request #12059 from JimMoen/1130-fix-vm-time-warp
fix: vm.args use `multi_time_warp`
2023-12-04 11:56:08 +08:00
Andrew Mayorov 627c58b07d
fix(sessds): handle `expire_awaiting_rel` common timer with no-op
Otherwise, the channel crashes when the timer is triggered.
2023-12-02 15:00:30 +03:00
Andrew Mayorov 47bc747323
fix(sessds): drop everything related to session on CleanStart 2023-12-02 15:00:30 +03:00
Andrew Mayorov ee9a98f0a4
chore: bump emqx_gateway_mqttsn to 0.1.7 2023-12-02 15:00:29 +03:00
Andrew Mayorov fd26e690b8
refactor(sessds): move parts of message processing to replayer
To simplify the processing flow, reducing the number of back-and-forth
between the session and the replayer.
2023-12-02 15:00:29 +03:00
Andrew Mayorov 29ec73847a
fix(utils): make `flattermap/2` results less variative 2023-12-02 14:38:04 +03:00
Andrew Mayorov 6255ee0833
fix(sessmem): avoid defining unsafe defaults in `#session` 2023-12-02 14:38:04 +03:00
Andrew Mayorov b5ad0f9815
fix(test): subscribe with QoS 2 to receive QoS 2 message 2023-12-02 14:38:04 +03:00
Andrew Mayorov 1948719eec
test(sessds): unskip testcase related to QoS2 handling 2023-12-02 14:38:04 +03:00
Andrew Mayorov 3265d2f2aa
fix(sessds): respect subscription options when publishing 2023-12-02 14:38:03 +03:00
Andrew Mayorov b5f39f89e3
feat(utils): add `flattermap/2` as slightly more generic `flatmap/2` 2023-12-02 14:36:21 +03:00
Andrew Mayorov 508346f095
refactor(topicidx): split persistent term stuff off gbt-based index 2023-12-02 14:36:21 +03:00
Andrew Mayorov 88103c5f0e
refactor(session): pass config to `SessionImpl:open/3` as well
* Anticipate that connection info may change during session takeover.
* Avoid persisting session conf as part of persistent session state.
2023-12-02 14:36:21 +03:00
Andrew Mayorov 6eba082992
Merge pull request #12075 from keynslug/fix/EMQX-11474/function-clause
fix(channel): expect there's no session yet on disconnect
2023-12-02 14:32:50 +03:00
Thales Macedo Garitezi dc5e3b939c refactor(resource_manager): use macros and better differentiate status from state
Internally in `emqx_resource_manager`, there seems to be many points where the
`gen_statem` states are conflated with resource status, since their names coincide.  While
that works for now, introducing a new `gen_statem` state, an internal state, shouldn't
necessarily imply a new, externally facing resource status.

Here we also introduce the usage of some macros to avoid the pitfalls of making a typo in
a state/status name.
2023-12-01 18:23:05 -03:00
Zaiming (Stone) Shi 55621fbb86
Merge pull request #12074 from zmstone/1201-user-peer-module-for-all
test: replace 'slave' and 'ct_slave' with 'peer'
2023-12-01 21:35:40 +01:00
Thales Macedo Garitezi 29ae45c39d fix(connector): don't start buffer workers for the connector itself
Fixes https://emqx.atlassian.net/browse/EMQX-11448
2023-12-01 17:20:38 -03:00
Zaiming (Stone) Shi 6e30718818 test: allow join cluster later 2023-12-01 20:33:39 +01:00
ieQu1 3d2e95fe3e
Merge pull request #12081 from ieQu1/dev/gen-rpc-3.3.0
chore(gen_rpc): Bump version to 3.3.0
2023-12-01 17:57:33 +01:00