Commit Graph

4875 Commits

Author SHA1 Message Date
Zhongwen Deng be7724b4e7 chore: add emqx-example-en.conf in release 2022-06-15 22:45:43 +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
Zhongwen Deng 6cd123e6fc fix: don't merge gateway's authn 2022-06-15 21:07:05 +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
Ilya Averyanov 73dd969843
Merge pull request #8210 from savonarola/jwt-authn-add-from
feat(jwt authn): allow to specify JWT field
2022-06-15 14:56:04 +03:00
zhongwencool c4be262819
Merge pull request #8208 from DDDHuang/changepwd400
fix: user change pwd failed, response 400
2022-06-15 19:55:40 +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
Zaiming (Stone) Shi e0aa8641af chore: fix typo uncatched -> uncaught 2022-06-15 13:07:37 +02: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
Zaiming (Stone) Shi c371dd2464
Merge pull request #8202 from zmstone/0613-fix-no-alarm-when-init-rpc-call-failed
fix(cluster_rpc): no alarm when failed to initiate RPC call
2022-06-15 11:36:58 +01:00
Shawn 4ef86b47c7 fix: flaky test case for emqx_delayed 2022-06-15 18:21:57 +08:00
JianBo He 57e57205a0
Merge pull request #8207 from HJianBo/gw-fixes
Gateway restart won't make built-in-database data lost
2022-06-15 17:41:13 +08:00
firest 28d9939713 fix(limiter): fix test case errors 2022-06-15 17:35:13 +08:00
Xinyu Liu 17b2665a6d
Merge pull request #8217 from terry-xiaoyu/fix_delayed_module_disbled_after_emqx_stop
fix: the delayed module is disbled after ./bin/emqx stop
2022-06-15 16:42:29 +08:00
Zaiming (Stone) Shi 541bc223f8
Merge pull request #8213 from zmstone/fix-throw-error-message
chore(connector): schema validator throw error messages directly
2022-06-15 09:38:12 +01: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 78dd9fe247 fix(gw): compatible with the max_connection is string type 2022-06-15 13:48:15 +08:00
JianBo He 77d4faa632 fix(gw): not updating the authenticator using re-creation 2022-06-15 13:48:15 +08:00
JianBo He 7d38f83aef feat(gw): keep authenticator resource after gateway disabled
After a gateway is disabled, we should turn off the authenticator instead of destroying it.
Once built-in-database authenticator is destroyed, it discards all
user's data and can't be managed
2022-06-15 13:48:15 +08:00
JianBo He 6c465cfb8f fix(gw): fix list listeners failed if gateway disabled 2022-06-15 13:48:15 +08:00
JianBo He 14a26fc876 fix(redis): make sentinel required 2022-06-15 13:48:15 +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
Shawn 590a87a72b fix: the delayed module is disbled after ./bin/emqx stop 2022-06-15 12:00:41 +08:00
JianBo He ec840222cd
Merge pull request #8192 from HJianBo/authn-fuzzy-searching
fix(authn): fix enhance_authn fuzzy searching not working
2022-06-15 10:20:49 +08:00
William Yang 7961f9206b
Merge pull request #8205 from qzhuyan/dev/william/emqx-conf-vm-args
fix(emqx_conf): add missing vm.args
2022-06-14 23:23:07 +02:00
Zaiming (Stone) Shi aea4180aa0 chore(connector): schema validator throw error messages directly 2022-06-14 16:20:10 +02:00
Ilya Averyanov d0f686d19d feat(jwt authn): allow to specify JWT field 2022-06-14 14:34:45 +03:00
ieQu1 9ca2e3bc2a feat(retainer): CLI to list and clean retained messages 2022-06-14 11:24:15 +02: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
DDDHuang de10149133 fix: user change pwd failed, response 400 2022-06-14 17:21:53 +08:00
William Yang 2ec1a5bdb8 fix(emqx_conf): add missing vm.args
- process_limit
- max_ports
- dist_buffer_size
- max_ets_tables
2022-06-14 10:31:29 +02:00
JianBo He 2ad2da082b
Merge pull request #8139 from savonarola/authn-jwt-test
chore(jwt authn): improve tests
2022-06-14 14:23:23 +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
Shawn c72a0c386f fix: set retry interval to 1s in test cases 2022-06-14 10:34:33 +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 f4f263f91e fix: change the default retry_interval of cluster_rpc call to 1min 2022-06-13 22:52:51 +08:00
Zaiming (Stone) Shi e2ba1f1538 refactor: refuse initiating cluster call from stale node 2022-06-13 16:50:19 +02:00
Shawn dd099137f0 fix: catch errors when load bridges 2022-06-13 22:31:58 +08:00
ieQu1 04863dca1b
Merge pull request #8198 from ieQu1/list-rule-cli
feat(rule_engine): CLI to list rules
2022-06-13 16:05:22 +02:00
Zaiming (Stone) Shi 7e98bd7d2f fix(cluster_rpc): no alarm when failed to initiate a new cluster call 2022-06-13 15:56:00 +02: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
ieQu1 7817aec0d0 feat(rule_engine): CLI to list rules 2022-06-13 15:16:54 +02: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
JianBo He 4ac151c9d8
Merge pull request #8193 from lafirest/fix/limiter_infinity_rate
fix(limiter): fix counter rate calc error
2022-06-13 17:31:54 +08: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
JianBo He 29baf0f68a fix(authn): fix enhance_authn fuzzy searching not working 2022-06-13 13:38:06 +08:00
firest 2bab8884f9 fix(gateway): catch the error of invalid address 2022-06-13 10:58:43 +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 0e06e4acaa fix(emqx_conf): throw exception on clusetr_call falure
Not all callers handle error, some even ignore errors!
2022-06-12 20:18:48 +02:00
Zaiming (Stone) Shi 186e26e417 fix(emqx_plugins): call cluster_rpc to update config 2022-06-12 20:18:48 +02:00
Zaiming (Stone) Shi 4fdd793071 refactor: move config template file to rel dir 2022-06-12 19:57:08 +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
Xinyu Liu 0c95c7342f
Merge pull request #8175 from terry-xiaoyu/create_bridge_connector_in_single_post
feat: support configure connector configs directly in bridges
2022-06-11 10:00:30 +08: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
Shawn 9a0fdc4b11 feat: support configure connector configs directly in bridges 2022-06-10 23:06:20 +08: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
Ilya Averyanov 7301009b8e chore(jwt authn): improve tests, add pool_size to schema 2022-06-10 14:28:43 +03:00
ieQu1 48e2f0969a
Merge pull request #8169 from ieQu1/zero-length-retainer
fix(retainer): Handle zero-length topic levels
2022-06-10 13:05:04 +02:00
Ilya Averyanov 4e76797927 fix(retainer): add additional test 2022-06-10 12:33:27 +03:00
Shawn 146b8f34aa fix(spell): please the spell check 2022-06-10 14:22:40 +08:00
Shawn f18eab402a fix(CI): don't use any authz sources when testing 2022-06-10 14:21:20 +08:00
Shawn f159e081fa fix: deny all subscribes to '#' topics in the default acl.conf 2022-06-10 14:21:20 +08:00
ieQu1 8ff9a03df3 fix(retainer): Handle zero-length topic levels 2022-06-09 13:46:56 +02:00
Xinyu Liu 012e77b8a9
Merge pull request #8161 from terry-xiaoyu/fix_ws_default_idle_timeout
fix: change default idle_timeout of ws connections to 7200s
2022-06-09 18:48:23 +08:00
Shawn b0cd83254d fix: schema and desc for time_offset of the log handlers 2022-06-09 17:59:35 +08: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 91578a10f3
Merge pull request #8150 from lafirest/fix/authz_insert
fix(authz): prohibit overriding of existing client/user
2022-06-08 13:46:10 +08:00