Commit Graph

3661 Commits

Author SHA1 Message Date
Thales Macedo Garitezi
e17f663fa5
Merge pull request #12749 from thalesmg/mv-followup1-m-20240320
Follow up features and fixes for message validation - part 1
2024-03-21 16:03:49 -03:00
Thales Macedo Garitezi
00aa7b5621 feat: create new message.validation_failed hookpoint and rule engine event 2024-03-21 13:46:27 -03:00
Thales Macedo Garitezi
7d7c6685d4
Merge pull request #12753 from thalesmg/test-flaky-retry-m-20240321
test: attempt to stabilize flaky test
2024-03-21 13:43:51 -03:00
Thales Macedo Garitezi
64399b6861 test: attempt to stabilize flaky test 2024-03-21 11:04:14 -03:00
ieQu1
cada944350
feat(sessds): Expose relevant durable session info in the REST API 2024-03-21 10:37:04 +01:00
Andrew Mayorov
7257fe526b
fix(ci): add ra to emqx app dependencies as well 2024-03-20 14:46:53 +01:00
Andrew Mayorov
e55e1dd1b2
chore: whitelist ra to make RPCs w/o BPAPIs 2024-03-20 13:20:25 +01:00
Andrew Mayorov
a8baff61ec
docs(dsrepl): describe briefly what n_sites is for 2024-03-20 13:20:25 +01:00
Andrew Mayorov
efac5c6197
test(ds): stabilize t_message_gc testcase 2024-03-20 13:20:25 +01:00
Andrew Mayorov
1b647035d0
chore(dsrepl): make dialyzer a bit happier 2024-03-20 13:20:23 +01:00
Andrew Mayorov
74881e8706
feat(dsrepl): make storage layer unaware of granularity of time
Storage also becomes a bit more pure, depending on the upper layer to
provide the timestamps, which also makes it possible to handle more
operations idempotently.
2024-03-20 13:20:23 +01:00
Andrew Mayorov
5cc0246351
feat(dsrepl): allow to tune select ra options 2024-03-19 20:21:55 +01:00
Andrew Mayorov
54b5adf868
feat(dsrepl): allocate shards predictably
To ensure strictly optimal and fair shard allocation across
cluster. Before this commit it was quite easy to end up with
an allocation significantly skewed towards some node, because
of the nature of randomness and relatively small number of
shards.
2024-03-19 20:21:55 +01:00
Andrew Mayorov
5e94bdb932
feat(dsrepl): allocate shards once predefined number of sites online
Before this commit the most likely shard allocation outcome was
that all shard are allocated to just one node.
2024-03-19 20:11:03 +01:00
Andrew Mayorov
146f082fdc
feat(dsrepl): implement raft-based replication
Still very rough but mostly working.
2024-03-19 20:09:44 +01:00
Ivan Dyachkov
923fd0a2a6
Merge pull request #12737 from id/0319-sync-release56
sync release-56
2024-03-19 19:09:41 +01:00
Ivan Dyachkov
f2dc940436 Merge remote-tracking branch 'upstream/release-56' into 0319-sync-release56 2024-03-19 15:20:08 +01:00
Thales Macedo Garitezi
a689ae72e3
Merge pull request #12711 from thalesmg/data-validation-m-20240311
feat: implement message validation
2024-03-19 11:12:28 -03:00
Thales Macedo Garitezi
f84a996671 feat: implement message validation
Fixes https://emqx.atlassian.net/browse/EMQX-11980
2024-03-18 13:11:39 -03:00
JimMoen
889eb48368
fix(shared-sub): update stats when unsub shared topic filter 2024-03-16 20:43:05 +08:00
Ivan Dyachkov
e28992d586 chore: 5.6.0-rc.1 2024-03-15 17:08:00 +01:00
Ivan Dyachkov
ea76dac760 chore: fix xref 2024-03-15 17:08:00 +01:00
ieQu1
b6cc9177a6 feat(sessds): Store peername in the persistent session state 2024-03-15 13:48:53 +01:00
SergeTupchiy
e35e8847b9
Merge pull request #12685 from SergeTupchiy/refactor-emqx-mgmt-call-client
Refactor emqx mgmt call client
2024-03-15 10:01:49 +02:00
ieQu1
69a9431471
Merge pull request #12665 from ieQu1/dev/sessds-hot-conf-disable
fix(sessds): Prevent hot update of session_persistence.enable config
2024-03-14 13:20:52 +01:00
Zaiming (Stone) Shi
cb77dea1e9
Merge pull request #12699 from zmstone/0313-fix-session-count-on-replicant-node
fix: do not crash on replicant node
2024-03-14 09:42:27 +01:00
Serge Tupchii
685f29d3f2 chore: upgrade hocon to 0.42.1
hocon 0.42.1 allows to use "b" or "B" (byte) unit in bytesize fields.
2024-03-13 19:30:28 +02:00
zmstone
ccd973d13e fix: do not crash on replicant node 2024-03-13 16:42:39 +01:00
Serge Tupchii
65be76aa06 refactor(emqx_mgmt): add call_client timeout and improve RPC error handling 2024-03-13 10:56:02 +02:00
JimMoen
0edeff4786
test: fix flaky 2024-03-12 15:21:17 +08:00
JimMoen
bc9084db79
test: cpu utilization value 2024-03-12 14:14:46 +08:00
JimMoen
0297c7b83b
refactor: conditional enclosed in parentheses 2024-03-12 14:14:45 +08:00
JimMoen
207f38c42a
fix(vm): cpu usage/idle handled by single worker 2024-03-12 14:14:44 +08:00
Andrew Mayorov
f7e3afde16
test(ds): avoid introducing new macros 2024-03-07 16:49:20 +01:00
Andrew Mayorov
69427dc42d
test(ds): add tests for error mapping and replay recovery 2024-03-07 12:59:58 +01:00
Andrew Mayorov
e7e8771277
fix(sessds): set replay retry timer if initial replay/3 fails 2024-03-07 12:59:58 +01:00
Andrew Mayorov
b604c3dbd4
refactor(sessds): make replay error handling a bit more clear
Also leave a forgotten TODO.
2024-03-07 12:59:57 +01:00
Andrew Mayorov
3f3e33b2cb
fix(sessds): untangle pull and replay retry timers
And restore the convention that timer handler always manages only
its own timers.
2024-03-07 12:59:57 +01:00
Andrew Mayorov
b39c710ec2
fix(ds): tidy up few typespecs 2024-03-07 12:59:57 +01:00
Andrew Mayorov
1cf672e78d
feat(sessds): handle recoverable errors during replay 2024-03-07 12:59:57 +01:00
SergeTupchiy
1f38813cb9
Merge pull request #12561 from SergeTupchiy/EMQX-11861-client-mqueue-inflight-API
feat: add client mqueue/inflight messages API
2024-03-07 13:20:31 +02:00
ieQu1
c62776edaf fix(sessds): Prevent hot update of session_persistence.enable config 2024-03-07 12:19:53 +01:00
Serge Tupchii
a2e761681e feat: add client mqueue/inflight messages API 2024-03-07 12:06:49 +02:00
zmstone
f57f2fa1b7 chore: bump app version numbers 2024-03-06 19:37:06 +01:00
zmstone
e99546e009 Merge remote-tracking branch 'origin/release-56' into sync-5.5.1 2024-03-06 17:27:54 +01:00
JianBo He
1737df05c7
Merge pull request #12641 from zmstone/0304-improve-text-log-formatter
0304 improve text log formatter
2024-03-06 09:12:18 +08:00
Kjell Winblad
8cf681ad3b
Merge pull request #12639 from kjellwinblad/kjell/fix_flaky_test_case/emqx_broker_SUITE.connected_client_count_group.quic.t_connected_client_count_transient_takeover
test(emqx_broker_SUITE): fix flaky test case
2024-03-05 18:02:07 +01:00
Thales Macedo Garitezi
c5489fee90 Merge remote-tracking branch 'origin/release-56' into sync-r56-m-20240304 2024-03-05 09:08:59 -03:00
Kjell Winblad
c8e42cf6b1 test(emqx_broker_SUITE): fix flaky test case 2024-03-05 10:14:07 +01:00
zmstone
cb0066d639 chore: add tag for logs from MQTT connection modules 2024-03-05 08:39:53 +01:00