William Yang
e7fc75fdf2
perf(broker): Optimization for handling bursty traffic
...
intro. new lock type: 'spawn' of broker.perf.route_lock_type
mnesia get lock calls are not optimized for selective receive.
hence taking locks would be very expensive while there are tones of
messages in the brokers message queue.
This optimization run the transaction in a separate process to utilize
the selective receive optimization of the compiler.
2021-04-28 15:39:46 +02:00
Zaiming Shi
4bdcdfb9b9
chore(config): Add new configs to emqx.conf
2021-04-28 15:19:53 +02:00
wwhai
54dc75ed79
fix(deps): fix function clause at apply_new_config
2021-04-28 20:39:16 +08:00
Zaiming Shi
fbe15859f5
fix(emqx_rule_utils): http connectivity check ipv6 support
2021-04-28 10:43:36 +02:00
Zaiming Shi
078ca67268
test(emqx_auth_http): test ipv6 + hostname resolution
2021-04-28 10:43:36 +02:00
Zaiming Shi
29475eb610
feat(emqx_http_lib): try to parse host ip
2021-04-28 10:43:36 +02:00
Zaiming Shi
a37f47887a
fix(ipv6): add ipv6_probe socket option only when supported
...
ipv6_probe is a socket option supported in EMQ's otp.git fork.
If the target hostname has a ipv6 DNS resolution, gen_tcp
tries to establish a connection on ipv6.
If it fails, then a fallback to default gen_tcp:connection
2021-04-28 10:43:36 +02:00
zhouzb
d9c7c72612
feat(ipv6 probe): automatically probe whether it is IPv6
2021-04-28 10:43:36 +02:00
Zaiming Shi
b688bcfe74
feat(eqmx_misc): add an api to ensure ipv6_probe socket option
2021-04-28 10:43:36 +02:00
Zaiming Shi
e54433d342
feat(emqx_vm): add api to inspect which otp version running on
2021-04-28 10:43:36 +02:00
wwhai
4facf4afe0
fix(deps): change ecpool to 0.5.1
2021-04-28 09:50:31 +08:00
Zaiming Shi
cacb56a25c
build: pin erl23.2.7.2-emqx-1
2021-04-27 21:23:40 +02:00
JianBo He
7ae06590de
test(auth-mnesia): test the password_hash option
2021-04-27 21:10:33 +08:00
JianBo He
d5abfd0caa
fix(auth-mnesia): fix env name typos
2021-04-27 21:10:33 +08:00
wwhai
773b8eef2f
fix(deps): increase time sleep
2021-04-27 21:04:24 +08:00
Shawn
bea28d887c
fix(rule_engine): refresh rules and then re-enable it
2021-04-27 15:45:25 +08:00
Shawn
6557b132a2
fix(rule_engine): only refresh enabled rules at bootup
2021-04-27 11:17:12 +08:00
Shawn
7198c018e2
fix(rule_engine): change the rule state when force enabled/disabled
2021-04-27 11:17:12 +08:00
Shawn
18688da0c1
fix(rule_engine): only auto re-enable the rule when it was force disabled
2021-04-27 11:17:12 +08:00
Shawn
da81ab7988
fix(rule_engine): remove sleep before refresh rules
2021-04-27 11:17:12 +08:00
Shawn
e3501acc02
fix(rule_engine): delete resource crashes when dependent rule exists
2021-04-27 11:17:12 +08:00
Shawn
3646e76a7a
fix(rule_engine): re-enable rules after resource started
2021-04-27 11:17:12 +08:00
Shawn
9fd43ef882
fix(rule_engine): reformat some code for dependent rules discovery
2021-04-27 11:17:12 +08:00
Ertan Deniz
07d5c0f9df
feat(exhook): add ssl cert info to ClientInfo
2021-04-27 09:20:38 +08:00
k32
18ea764628
Merge pull request #4683 from k32/ignore-coverall-errors
...
chore(ci): Don't fail builds when coveralls is misbehaving
2021-04-26 14:58:45 +02:00
zhanghongtong
883614e8c3
chore(release): update emqx release version
2021-04-26 20:42:36 +08:00
Zaiming Shi
d926800204
chore: add emqx_broker_bench.erl
2021-04-26 14:40:39 +02:00
k32
5fe1e30ad9
chore(ci): Don't fail builds when coveralls is misbehaving
2021-04-26 14:27:22 +02:00
JianBo He
910449e67b
fix(exhook): allow certificate options absent
2021-04-26 20:27:17 +08:00
k32
6d4da4a01a
chore(snabbkaffe): Update version to 0.12.0
2021-04-26 14:20:52 +02:00
Zaiming Shi
cdacaf8694
perf(emqx_trie): use ordered_set
2021-04-26 14:18:40 +02:00
Zaiming Shi
b1df759adc
refactor(emqx_trie): rename internal function to match_#
2021-04-26 14:18:40 +02:00
Zaiming Shi
8d55d425dc
chore(emqx_trie): add test case to cover multiple levels of + wildcards
2021-04-26 14:18:40 +02:00
Zaiming Shi
eb946eb80c
fix(emqx_trie): do not try to match wildcard topics
2021-04-26 14:18:40 +02:00
Zaiming Shi
22e72cdd82
refactor(emqx_trie): rename record from eqmx_topic to emqx_trie
2021-04-26 14:18:40 +02:00
Zaiming Shi
bc6a87946c
refactor(emqx_trie): store only prefixes
...
This commit refactors emqx_trie implementation
with mainly two changes
1. Deleted the edge table.
In the old implementation, trie consist of nodes and edges.
e.g. for topic 'a/b/+/d', node 'a' with edge 'b'
points to node 'a/b' and so on.
However, edges can be computed at runtime,
so there is no need to store them in a table.
2021-04-26 14:18:40 +02:00
Zaiming Shi
7128bc9e6e
chore(emqx_app): do not print 'starting' log when test
2021-04-26 14:18:40 +02:00
Zaiming Shi
b97b36d077
test(emqx_coap): publish to non-wildcard topic
2021-04-26 14:18:40 +02:00
Zaiming Shi
5569c86319
docs(emqx_trie): no doc for internal functions
2021-04-26 14:18:40 +02:00
Zaiming Shi
6be28cecab
chore(logging): default to multi-line logging
2021-04-26 11:11:27 +02:00
Zaiming Shi
4bc349b596
chore: move docker env var from Dockerfile to entrypoints
2021-04-26 11:08:23 +02:00
Zaiming Shi
6c403061db
chore(docker): manual port setting for gen_rpc when start in docker
2021-04-26 15:38:56 +08:00
DDDHuang
29592fe1b4
Fix rule engine build fail ( #4673 )
...
* fix: add rule engine resources time
2021-04-26 15:32:54 +08:00
wwhai
92e8ba574c
fix(deps): update ecpool to 0.5.2
2021-04-26 15:15:30 +08:00
William Yang
907502fed0
Merge pull request #4645 from qzhuyan/dev/william/fix-issue-2985-c3
...
fix: issue 2985 attempt 3
2021-04-25 12:39:52 +02:00
Zaiming Shi
708420eb97
fix(emqx_connection): log true stacktrace
2021-04-25 12:01:05 +02:00
Shawn
ab5b4beffe
fix(gen_rpc): the port discovery not working on a large offset
2021-04-25 13:58:33 +08:00
Shawn
dc95c1476a
fix(emqx_sn): willmsgs not sent
2021-04-25 09:45:16 +08:00
zhanghongtong
5154a00252
chore(CI): fix packages version error for windows
2021-04-24 15:10:34 +02:00
Zaiming Shi
d61b100cc9
chore: more copyright updates
2021-04-23 20:43:00 +02:00