k32
1db8483bb3
feat(node_dump): Hide `secret' configuration keys
...
Co-authored-by: Zaiming (Stone) Shi <zmstone@gmail.com>
2021-05-06 14:19:09 +02:00
k32
e6c85dfb04
fix(node_dump): Attempt to censor passwords
2021-05-06 14:19:09 +02:00
Zaiming Shi
4cff5c4dac
chore: fix config doc
2021-05-06 11:03:02 +02:00
Zaiming Shi
6b0487d69d
feat(logger): merge metadata to log data
2021-05-06 11:03:02 +02:00
Zaiming Shi
79181072e2
feat(logger): add formatter emqx_logger_jsonfmt
2021-05-06 11:03:02 +02:00
Zaiming Shi
92d3e16d43
perf(router): receive-mark optimise for short-lived transaction process
2021-05-05 11:00:00 +02:00
Zaiming Shi
f8700e3f27
fix(emqx_packet): no crash if publish packet has no data
2021-05-04 13:48:35 +02:00
Zaiming Shi
bf4baf708a
fix(emqx_packet): list element index out of range
2021-05-04 09:24:54 +02:00
Zaiming Shi
171933301a
fix(dashboard): display full Erlang/OTP version
2021-04-30 12:26:59 +02:00
William Yang
e122ac5716
perf(broker): speedup trans when broker has a big mqueue
2021-04-29 08:52:42 +02:00
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
29475eb610
feat(emqx_http_lib): try to parse host ip
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
Zaiming Shi
d926800204
chore: add emqx_broker_bench.erl
2021-04-26 14:40:39 +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
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
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
Zaiming Shi
2e6ad828a0
chore: remove copyright and license Erlang macros
2021-04-23 20:43:00 +02:00
Zaiming Shi
6354e75626
chore: update copyrights
2021-04-23 20:43:00 +02:00
William Yang
9b13bab2c9
perf: new perf toggle broker.perf.route_lock_type
2021-04-23 13:51:42 +02:00
Zaiming Shi
3547dc4c93
fix(log): client id as string for log metadata
...
so it does not print <<"...">> to the logs
2021-04-23 06:54:10 +02:00
Zaiming Shi
fd69969014
refactor(logging): Log to single line
2021-04-23 06:54:10 +02:00
William Yang
0166bb5a87
fix: broker call should not timeout before client timeout
...
So change broker call timeout to infinity.
2021-04-21 18:59:46 +02:00
William Yang
17870fdb39
perf(router): add route runs in async dirty context
2021-04-21 18:59:46 +02:00
William Yang
3972a6b435
perf(trie): use global lock
...
Use global lock to reduce remote lock overhead.
So that emqx route trans can run in dirty *sync* context.
At least 10X subscribe/unsubscribe improvments.
2021-04-21 18:59:24 +02:00
Zaiming Shi
97f2e5d544
test(auth_http): test unset acl_req app env
2021-04-19 08:39:26 +02:00
zhouzb
49502b4e7c
feat(uri): add missed function
2021-04-16 20:19:45 +08:00
zhouzb
bd1051d1e6
feat(uri): support decoding uri in string
2021-04-16 20:19:45 +08:00
Shawn
4885171e4f
fix(emqx): add timeout for open/kick a session
2021-04-15 23:09:58 +08:00
zhanghongtong
446a69c814
fix(ws connection): fix peer_cert_as_username error when ws connect
2021-04-15 09:06:27 +08:00
z8674558
a48e7df4f5
feat(emqx_ws_connection): check http header to know real IP/port
2021-04-14 06:45:39 +00:00
JianBo He
49b7d870e0
fix(modules): load application first for ekka_mnesia scanner
2021-04-13 09:57:33 +08:00
JianBo He
16c999ed9b
Start emqx-modules application by default ( #4518 )
...
* fix(modules): start emqx_modules by default
* chore(test): eliminate some compile warnings
2021-04-12 09:45:31 +08:00
Shawn
f902d880c1
fix(emqx): rename wont_clear_alarm_in to min_alarm_sustain_duration
2021-04-10 12:17:04 +08:00
Shawn
df0e905754
refactor(emqx): the congestion alarm
2021-04-10 12:17:04 +08:00
Shawn
327b0c0995
fix(mqtt_sn): send pingresp until all pubacks received
2021-04-10 09:36:56 +08:00
Yudai Kiyofuji
e3a5f65c88
feat(config): print override env ( #4517 )
2021-04-09 16:28:01 +02:00
Zaiming Shi
7667b65710
fix(emqx): Do not io:format when testing
2021-04-09 10:18:25 +02:00
Zaiming Shi
6f5aa88562
chore(emqx_connection): Add a test case to cover oom kill
2021-03-30 10:08:13 +02:00
Zaiming Shi
6e1a55e9ed
perf(emqx_connection): no priority receive
...
Prior to this change the main message receive loop of emqx_connection
is a priority receive which selects system messages and parent EXIT
signals prior to other message.
This accidental (not intended) design may cause the receive operation
to scan potentially large mail box.
2021-03-30 10:08:13 +02:00
Zaiming Shi
66693d6846
fix(emqx_connection): connection OOM kill immediately
...
Prior to this change, connection process' OOM kill is a loopback
message, which results in a delayed kill when message queue length
is large.
In this change, the loopback message is changed to an exit signal.
2021-03-30 10:08:13 +02:00