Zaiming (Stone) Shi
018d79b498
Merge pull request #12993 from zmstone/0508-fix-update-listener-zone-from-dashboard
...
0508 fix update listener zone from dashboard
2024-05-08 22:03:10 +02:00
Thales Macedo Garitezi
8d0574abf0
Merge pull request #12979 from thalesmg/fix-ps-monitor-topic-count-r57-20240506
...
fix(monitor api): count persistent routes and subscriptions
2024-05-08 15:09:16 -03:00
Andrew Mayorov
3e956e8711
fix(sessds): use milder log level for regular error conditions
...
Especially when such events are emitted in (potentially) tight loops,
i.e. pulling messages from iterators pointing to remote shards.
2024-05-08 17:40:08 +02:00
zmstone
9edbad5459
fix(listener_api): do not allow update listener with unknown zone name
2024-05-08 16:37:55 +02:00
JianBo He
4403b4f5ce
Merge pull request #12976 from HJianBo/fix-duplicated-disconnect
...
Fix duplicated disconnect event
2024-05-08 14:43:19 +08:00
Kjell Winblad
72f68afbca
Merge pull request #12981 from kjellwinblad/kjell/fixup_trace_all_http_and_error
...
Make formatting of action result trace entries better
2024-05-08 06:10:03 +02:00
Thales Macedo Garitezi
0c7b221c42
fix(clients mgmt api): set `durable` flag for DS sessions and subscriptions
2024-05-07 14:55:50 -03:00
Thales Macedo Garitezi
2989793f4c
Merge pull request #12980 from thalesmg/fix-ds-get-offline-client-stuff-r57-20240506
...
fix(mgmt clients api): hold channel info after client disconnects for display in API
2024-05-07 11:18:00 -03:00
Kjell Winblad
09ee7ec0e2
fix(rule tracing): make sure that recoverable errors are traced
2024-05-07 15:49:38 +02:00
Thales Macedo Garitezi
6d6eb42fa3
fix(mgmt clients api): hold channel info after client disconnects for display in api
...
Fixes https://emqx.atlassian.net/browse/EMQX-12266
2024-05-07 09:22:33 -03:00
Thales Macedo Garitezi
28355a4cfc
fix(monitor api): count persistent routes and subscriptions
...
Fixes https://emqx.atlassian.net/browse/EMQX-12267
2024-05-06 16:51:31 -03:00
JimMoen
1df2d837ee
chore: fix typo
2024-05-06 17:37:32 +08:00
JianBo He
b320b20c7b
fix(mqtt): disconnected event should not be sent twice
2024-05-06 16:17:02 +08:00
Kjell Winblad
004dc80fb2
Merge pull request #12958 from kjellwinblad/kjell/fixup_trace
...
fix: rule trace formatting, republish and console stop after rendering
2024-05-03 16:24:17 +02:00
Zaiming (Stone) Shi
52357742aa
Merge pull request #12962 from zmstone/0502-fix-ssl-client-opts-to-allow-wildcard-cert-by-default
...
fix(ssl-clients): allow wildcard certificates by default
2024-05-03 15:19:37 +02:00
Kjell Winblad
5bfe31b691
fix: issues found during PR review (thanks @thalesmg and @zmstone)
...
* Simpler handling of true and false in best effort JSON formatter
* inet:ntoa/1 to format IP addresses
* Made a record for lazy formatted trace values and formatter to improve
maintainability
* Added callback to format return value from connector
* Extended test case to check that the format return value callback
works
* Added handling of "lazy" trace entry data to the text formatter. Do we
need to handle this data in the normal log formatters as well?
2024-05-03 15:04:57 +02:00
Kjell Winblad
76ccef7ce3
fix(trace api): trace should be ready after create
...
Fixes:
https://emqx.atlassian.net/browse/EMQX-12276
2024-05-03 15:02:37 +02:00
Kjell Winblad
ea7633c484
fix: rule trace formatting, republish and console stop after rendering
...
* Better rule trace formatting for many trace entries
* The republish and console actions have got working stop after
rendering functionality
2024-05-03 15:02:36 +02:00
zmstone
37d66e90fb
fix(ssl-clients): allow wildcard certificates by default
2024-05-03 12:52:42 +02:00
Ilya Averyanov
80d724c504
feat(authn): add connection expire based on authn data
2024-04-30 17:04:55 +03:00
zmstone
1974ec15ec
fix(client_attrs): fix client_attrs extraction loop
2024-04-30 12:12:35 +02:00
zmstone
9917293fd0
fix(schema): description should be in binary() type
2024-04-29 21:44:55 +02:00
zmstone
7a05a4754f
docs: expose zone config in schema doc
2024-04-29 13:57:18 +02:00
zmstone
10625eacac
chore: upgrade to hocon-0.42.2
...
hocon pretty-print quotes more string values
if a string has '.' or '-', or if it starts with a digit 0-9,
then it's quoted.
see details here: https://github.com/emqx/hocon/pull/293
2024-04-28 14:05:30 +02:00
zmstone
5f4215b333
fix(mgmt): avoid 500 error when hocon syntax error
2024-04-27 21:12:42 +02:00
JimMoen
8db5e51592
feat: plugin config with avro schema and apis
2024-04-26 10:25:04 +08:00
Zaiming (Stone) Shi
6af651cf2f
Merge pull request #12931 from zmstone/0425-fix-acl.conf-topic-template-render-fialure-handling
...
0425 fix acl.conf topic template render fialure handling
2024-04-25 20:30:02 +02:00
zmstone
01923147a2
fix(variform and authz): do not initialize empty client_attrs field
...
when client_attrs_init expression renders to empty string,
do not initialize the attribute.
also fixed an ACL error: a template render failure for a topic
would stop the ACL checks for the following topics if more
than one topic is configured.
2024-04-25 17:32:07 +02:00
Kjell Winblad
ef9884cf47
refactor(rule trace): templates rendered trace to increase code reuse
...
* The code for passing the trace context to a sub process has been
improved to increase code reuse. This code is used when the action
templates are rendered in a sub process.
* A macro has also been added for the error term that is thrown when the
action shall be stopped after the templates has been rendered. This is
also done to reduce code duplication and to reduce the risk of
introducing bugs due to typos.
* Fix incorrect type spec
Thanks to @zmstone for suggesting these improvements in comments to a PR
(https://github.com/emqx/emqx/pull/12916 ).
2024-04-25 13:15:36 +02:00
Kjell Winblad
a2dd8f5aee
feat: add stop after render and after render trace to cassandra action
2024-04-25 11:51:46 +02:00
Kjell Winblad
b02ed4e6ec
feat: add stop after render and after render trace to pgsql action
2024-04-25 11:51:46 +02:00
Kjell Winblad
5ca90ccced
fix: improve structure of log trace entries for HTTP action
...
Fixes:
https://emqx.atlassian.net/browse/EMQX-12025
2024-04-25 11:51:46 +02:00
zmstone
f2fa35efdf
Merge remote-tracking branch 'origin/master' into 0424-merge-latest-master-to-release-57
2024-04-24 22:02:56 +02:00
Serge Tupchii
02a0faa1d6
refactor: avoid evaluating Data more than once in SLOG_THROTTE macro
2024-04-24 16:26:34 +03:00
zmstone
b66d7a688e
Merge remote-tracking branch 'origin/release-57' into release-57
2024-04-24 13:09:06 +02:00
zhongwencool
6049b4966f
fix: bump escokd to 5.11.2 to handle udp_error/closed message
2024-04-22 16:41:09 +08:00
Ivan Dyachkov
b723e87e54
Merge remote-tracking branch 'upstream/release-56' into 0422-sync-release-56
2024-04-22 08:12:05 +02:00
Kjell Winblad
6e99f01ecd
Merge pull request #12863 from kjellwinblad/kjell/new_trace_log_formatter/EMQX-12025
...
feat(emqx_trace): add JSON trace log entry formatter
2024-04-22 06:25:18 +02:00
ieQu1
bac5100635
Merge pull request #12874 from ieQu1/dev/EMQX-12030-subscriptions-api
...
API for durable subscriptions
2024-04-19 17:11:53 +02:00
Kjell Winblad
2890bc2619
fix(tracing): remove internal extra field from the trace config
...
This commit removes the internal extra field from the trace config
structure exposed to the user via the HTTP API.
2024-04-19 17:05:34 +02:00
Kjell Winblad
9e46c18443
fix(emqx_trace_SUITE:t_base_create_delete): broken test case
2024-04-19 15:41:50 +02:00
ieQu1
ede7246882
fix(sessds): Avoid double-enriching transient messages
2024-04-19 13:39:04 +02:00
Zaiming (Stone) Shi
a8b1224225
Merge pull request #12893 from zmstone/0416-add-is-template-flag-to-dashboard-schema
...
0416 add `is_template` flag to dashboard schema
2024-04-19 10:41:43 +02:00
Kjell Winblad
c163956d08
fix(trace formatter): remove record field to enable rolling upgrade
2024-04-19 09:52:20 +02:00
ieQu1
f1e6565ddd
refactor(sessds): Move all subscription logic to the subs module
2024-04-19 01:20:29 +02:00
ieQu1
d12966db5b
test: Avoid dumping raw snabbkaffe traces to the console
2024-04-19 01:20:29 +02:00
Kjell Winblad
285bfa9367
fix: improve rendering of action_template_rendered trace
2024-04-18 17:00:47 +02:00
Kjell Winblad
f5b0439724
fix(emqx_rule_engine_api_rule_apply_SUITE): flaky test case
2024-04-18 14:28:28 +02:00
Kjell Winblad
aa388adba9
fix(json trace format): format client_ids and rule_ids as lists
2024-04-18 11:27:39 +02:00
Kjell Winblad
10957e7d79
fix: change name of the default trace log format from plain to text
2024-04-18 10:42:51 +02:00
Kjell Winblad
ef9f8a8fdf
fix: unreachable clause found by dialyzer
2024-04-18 10:28:37 +02:00
Kjell Winblad
6c0ee8bb01
test(emqx_trace_SUITE): fix failure due to new field
2024-04-18 10:28:37 +02:00
Kjell Winblad
968dc2ccda
fix(json trace format): use best_effort_json instead of new encoder
2024-04-18 10:28:37 +02:00
Kjell Winblad
aa39835242
feat(emqx_cli): add parameter for trace format (plain or json)
2024-04-18 10:28:29 +02:00
Kjell Winblad
6fd7a06c5d
fix: problems reported by dialyzer
2024-04-18 10:20:18 +02:00
Kjell Winblad
a6558740e8
feat(emqx_trace): add JSON trace log entry formatter
...
This commit makes it possible to select the JSON trace log entry
formatter when crating a trace pattern. This will make it easier for the
dashboard and automatic tests to parse the log entries.
Fixes: EMQX-12025 (partly)
2024-04-18 10:20:11 +02:00
Kjell Winblad
2a2fadfbff
Merge pull request #12827 from kjellwinblad/kjell/emqx_rule_tracing/EMQX-11966
...
Add rule ID tracing support
2024-04-18 09:06:31 +02:00
Ivan Dyachkov
e93bd314bc
chore: 5.6.1
2024-04-18 08:03:56 +02:00
zmstone
5a4bfff9e5
refactor: add template_str type
2024-04-17 20:34:33 +02:00
Kjell Winblad
6cf29ba688
fix: clean up traces to make them easier to parse and understand
2024-04-17 18:20:17 +02:00
zmstone
51c8173174
feat(bridge): add is_template flag to bridge config fields
2024-04-17 13:10:55 +02:00
ieQu1
124c5047d0
feat(sessds): Add API for getting session data from the cold storage
2024-04-17 12:31:54 +02:00
ieQu1
e439a2e0f2
fix(sessds): Save protocol name and version in the session metadata
2024-04-17 12:31:54 +02:00
ieQu1
197a4c30be
fix(sessds): Strip unneccessary data from the durable session state
2024-04-17 01:21:52 +02:00
ieQu1
87ffaf89e5
refactor(sessds_state): Use macros for map keys
2024-04-17 01:21:52 +02:00
ieQu1
113a990482
feat(sessds): Support max subscriptions
2024-04-17 01:21:51 +02:00
ieQu1
6c897c26ae
fix(sessds): Commit session on unsubscribe
2024-04-17 01:21:51 +02:00
ieQu1
b30ddc206e
fix(sessds): Immutable subscriptions
...
This commit fixes two issues:
- Behavior of overlapping subscriptions has been aligned with the
in-memory session.
- Fixed handling of replays when subscription changes (either by
client or EMQX configuration)
2024-04-17 01:21:51 +02:00
ieQu1
3e0c649e8e
feat(sessds): Store awaiting rel
2024-04-17 01:21:51 +02:00
Zaiming (Stone) Shi
4d38a8fd44
Merge pull request #12872 from zmstone/0412-support-variform-for-client_attrs
...
0412 use variform for client_attrs
2024-04-16 13:29:56 +02:00
ieQu1
c645cfa5d6
fix(sessds): Graceful handling of shared subscription error
2024-04-16 12:37:01 +02:00
Ivan Dyachkov
f3bb28c6af
chore: 5.6.1-rc.2
2024-04-16 09:47:32 +02:00
Ivan Dyachkov
a0ffe5e7ae
chore: 5.6.1-rc.1
2024-04-15 22:05:05 +02:00
Ivan Dyachkov
3ef160eed2
Merge remote-tracking branch 'upstream/release-56' into 0415-sync-release-56
2024-04-15 08:09:03 +02:00
zmstone
b76b6fbe63
feat(variform): initialize client_attrs with variform
...
Moved regular expression extraction as a variform function.
2024-04-14 10:13:24 +02:00
zmstone
da5b01aa46
refactor(client_attr): allow more than one initial extraction
2024-04-13 01:00:25 +02:00
Kjell Winblad
6777f04780
fix: iolist_to_binrary -> unicode:characters_to_binary
...
It is not always safe to use iolist_to_binrary on the output of an
io_lib:format call with the ~ts placeholder.
2024-04-12 15:21:25 +02:00
Kjell Winblad
9998940aa2
fix(trace): several improvements thanks to comments from @zmstone
2024-04-11 16:48:43 +02:00
Ivan Dyachkov
3b7cade671
chore: 5.6.1-beta.1
2024-04-11 13:49:40 +02:00
Serge Tupchii
55179ccfed
chore: update ekka to 0.19.3
...
Included updates:
- https://github.com/emqx/mria/pull/178
2024-04-09 19:04:38 +03:00
Kjell Winblad
7bcd553786
test: move test case with rule_engine dep from emqx to emqx_rule_engine
2024-04-09 14:08:46 +02:00
Kjell Winblad
3898950017
test: fix test by adding dependency
2024-04-09 11:38:35 +02:00
JimMoen
03a9c46ca7
fix(sys_topic): format shared topics
2024-04-09 17:06:36 +08:00
JimMoen
47e0f3bb1f
fix(mgmt): $queue shared topics format in mgmt topics api
2024-04-09 17:06:32 +08:00
JianBo He
e11c4a9c83
Merge pull request #12826 from emqx/import-source-bridges
...
fix: source bridges missing after restore the backup files
2024-04-08 16:02:15 +08:00
Kjell Winblad
5479932190
feat(apply rule test): make option to stop action after render work
...
This commit makes the apply rule HTTP API option to stop an action work
for the HTTP action, and adds infrastructure that makes it easy to add
this functionality to other actions.
2024-04-06 17:21:12 +02:00
Kjell Winblad
ef705c2285
feat: add apply rule API, clientid/ruleid tracing for rule and connector
...
This commit adds:
* Support for forwarding the rule id and client id to the connector so
that events such as template rendered successfully can be traced.
* HTTP API for for applying/activating a rule with the given context
2024-04-06 17:20:47 +02:00
Andrew Mayorov
70396e9766
Merge pull request #12825 from keynslug/feat/EMQX-12110/repl-meta-api
...
feat(dsrepl): add APIs to manage DB replication sites
2024-04-04 22:32:03 +02:00
Andrew Mayorov
ad52f7838e
feat(dsrepl): add APIs to manage DB replication sites
2024-04-04 21:22:01 +02:00
Kjell Winblad
59a442cdb5
feat(rule trace): add support for ruleid as a trace type
2024-04-04 14:55:32 +02:00
Shawn
319ec50c0d
fix: source bridges missing after restore the backup files
2024-04-03 18:26:51 +08:00
ieQu1
b379f331de
fix(sessds): Handle errors when storing messages
2024-04-02 16:47:41 +02:00
ieQu1
b9ad241658
feat(sessds): Add metrics for the number of persisted messages
2024-04-02 16:45:52 +02:00
ieQu1
d8204021dc
refactor(metrics): Move metrics worker to emqx_utils application
2024-04-02 16:25:04 +02:00
Andrew Mayorov
2d074df209
Merge pull request #12797 from keynslug/fix/dsrepl-error-handling
...
fix(dsrepl): handle RPC errors gracefully when storage is down
2024-04-02 13:40:31 +02:00
JimMoen
5759ba5162
chore: bump app version
2024-04-02 17:09:22 +08:00
JimMoen
50bceee9ab
fix(stats): `'subscribers.count'` contains shared-subscriber
2024-04-02 16:56:40 +08:00
JimMoen
0f4b148294
refactor: uniform shared_sub table macros
2024-04-02 16:56:39 +08:00
Serge Tupchii
3eda182e9a
fix: prevent a node from discovering and re-joining the same cluster after it has (manually) left it.
2024-03-28 18:09:27 +02:00
Andrew Mayorov
35c43eb8a0
feat(sessds): handle recoverable errors in stream scheduler
2024-03-28 15:17:01 +01:00
Thales Macedo Garitezi
8fb4ef9fe3
test: fix flaky test
2024-03-28 10:53:44 -03:00
Ivan Dyachkov
9b4d960888
chore: prepare for 5.7.x releases
2024-03-28 13:52:48 +01:00
ieQu1
b1855f95c1
fix(bpapi): Add exceptions for experimental features
2024-03-28 12:07:45 +01:00
ieQu1
8c6d8bdd12
fix(bpapi): Add exceptions for experimental features
2024-03-28 12:03:41 +01:00
ieQu1
02b72d79fc
fix(bpapi): Fix comparison of releases during compatibility check
2024-03-28 11:21:30 +01:00
Ivan Dyachkov
db9efb9317
chore: bump apps versions
2024-03-28 10:19:09 +01:00
Ivan Dyachkov
f4446ec680
Merge remote-tracking branch 'upstream/release-56' into 0328-sync-release-56
2024-03-28 09:59:54 +01:00
Ivan Dyachkov
ea917d6b2b
Merge pull request #12795 from id/0327-cut-5.6.0
...
chore: 5.6.0
2024-03-28 09:30:08 +01:00
ieQu1
4b3c29ded8
fix(bpapi): Add 5.5 dump
2024-03-27 17:39:38 +01:00
Zaiming (Stone) Shi
beb9152d50
Merge pull request #12750 from zmstone/0316-introduce-client-attrs
...
0316 introduce client_attrs
2024-03-27 16:19:47 +01:00
ieQu1
5ed20e15cd
fix(bpapi): Add 5.5 bpapi file
2024-03-27 13:45:00 +01:00
Ivan Dyachkov
33d9619271
chore: 5.6.0
2024-03-27 11:17:13 +01:00
Serge Tupchii
a3b730ff10
fix(emqx_session_mem): keep msg inflight insert timestamp in Inflight after retry
2024-03-27 11:31:51 +02:00
JianBo He
4f9daa0d4a
chore: bump version to 5.6.0-rc.6
2024-03-27 14:04:27 +08:00
JianBo He
d82b6d216d
chore: remove the duplicated time field
...
Fixes https://emqx.atlassian.net/browse/EMQX-12104
2024-03-27 12:09:21 +08:00
Ivan Dyachkov
f127bf53b3
chore: 5.6.0-rc.5
2024-03-26 17:52:57 +01:00
ieQu1
291cf689e2
Merge pull request #12786 from ieQu1/dev/check-core-emqx-vsn
...
fix(mria): Strictly check compatibility of the replicant with core
2024-03-26 17:49:37 +01:00
ieQu1
ba43da1b8e
fix(mria): Strictly check compatibility of the replicant with core
2024-03-26 16:32:01 +01:00
zmstone
b1c9bb63d7
chore: delete dead code
...
hocon schema validator never validates 'undefined'
2024-03-26 13:20:48 +01:00
zmstone
c42e980442
feat(log): configurable time format
...
now logs can be configured to use 'epoch' or 'rfc3339' time format
2024-03-26 13:09:32 +01:00
Thales Macedo Garitezi
cc37030265
Merge pull request #12770 from thalesmg/mv-metrics-m-20240321
...
feat(message validation): implement metrics
2024-03-26 08:59:05 -03:00
zhongwencool
56a40d61ae
fix: bpapi undef abort on old node
2024-03-26 13:06:56 +08:00
Ivan Dyachkov
2ae973821f
chore: 5.6.0-rc.4
2024-03-25 20:00:10 +01:00
Zaiming (Stone) Shi
b06d3932af
Merge pull request #12768 from keynslug/fix/EMQX-12068/routing-schema-conflict
...
fix(routing): add heuristic for routing schema in empty cluster
2024-03-25 19:50:51 +01:00
Thales Macedo Garitezi
0f426e6e77
feat(ds): make durable sessions handle will messages
...
Fixes https://emqx.atlassian.net/browse/EMQX-10431
2024-03-25 14:18:25 -03:00
Thales Macedo Garitezi
8c1a1d21a7
feat(session): pass will message down to session when creating/opening
2024-03-25 14:18:23 -03:00
ieQu1
8b963d5960
Merge pull request #12739 from ieQu1/dev/zone-durability
...
feat(sessds): Add zone overrides for session durability settings
2024-03-25 17:32:53 +01:00
zmstone
b8b0b809b4
chore: add a warning log if conflict is detected
2024-03-25 17:07:56 +01:00
zmstone
9411d6078e
docs: remove unnecessary restart instruction
2024-03-25 16:50:51 +01:00
zmstone
d38545010a
fix: case_clause
2024-03-25 16:43:24 +01:00
Ivan Dyachkov
c93145cb97
fix: function clause
2024-03-25 16:40:53 +01:00
zmstone
3aff9eb2a4
fix(route schema): allow boot if all peer nodes agree on one version
2024-03-25 16:33:27 +01:00
Ivan Dyachkov
fe3cc25855
chore: update instructions for routing schema conflict
2024-03-25 15:22:43 +01:00
Thales Macedo Garitezi
59ff43ec87
feat(message validation): implement metrics
...
Fixes https://emqx.atlassian.net/browse/EMQX-12071
2024-03-25 10:55:01 -03:00
Andrew Mayorov
849fe0c2c8
feat(routing): add schema conflict resolution procedure
...
In the log message printed when a schema conflict in cluster routing
is detected.
2024-03-25 13:43:46 +01:00
JimMoen
5f7f9e43f9
fix(stats): `'subscribers.count'` contains shared-subscriber
2024-03-25 15:12:57 +08:00
zhongwencool
2926518b3d
Merge pull request #12764 from zhongwencool/fix-bpapi-undef
...
fix: bpapi undef on old node
2024-03-25 13:37:37 +08:00
zmstone
22838f027a
fix: mountpoint template render should not replace unknown as undefined
...
For backward compatibility, the unknown vars used in mountpoint
is kept unchanged.
e.g. '${unknown}/foo/bar' should be rendered as '${unknown}/foo/bar'
but not 'undefined/foo/bar'
2024-03-23 10:16:05 +01:00
zmstone
3136ec5958
feat: allow mountpoint to use client_attrs
2024-03-23 10:16:05 +01:00
zmstone
8e8fc6a3d1
test: fix config test
2024-03-23 10:16:05 +01:00
zmstone
5e9814d171
fix: add debug level logging for invalid client attributes
2024-03-23 10:16:05 +01:00
zmstone
8254b801ae
feat: support initialize client attribute from user property
2024-03-23 10:16:02 +01:00
zmstone
2fd0a2cd4d
feat: support extracting initial client attrs from clientinfo
2024-03-23 10:16:02 +01:00
zmstone
9ec99fef4a
feat: allow client_attr used in authz rules
2024-03-23 10:16:02 +01:00
zmstone
e5816f5a13
refactor: rename attr to client_attr
...
client_attr is unique enough for all contexts
so the name can be unified from external responses
to internal template rendering, and rule-engine template rendering
2024-03-23 10:16:02 +01:00
zmstone
cc4805b1ac
feat: extract attrs field from http and jwt auth response
2024-03-23 10:16:02 +01:00
zmstone
f9d51484cc
feat: introuce attrs field in clientinfo
...
the 'attrs' field is to be used as extra attributes extracted
from various client properties
for example, HTTP auth result can return an extra client_attributes
field in the result which will get merged into the original
attrs field in clientinfo
2024-03-23 10:16:02 +01:00
Andrew Mayorov
cbc84900b2
chore: update bpapi versions dump
2024-03-22 16:24:52 +01:00
Ivan Dyachkov
9986de49d1
chore: make dyalizer happy
2024-03-22 16:16:49 +01:00
Ivan Dyachkov
be1886fb91
chore: make dyalizer happy and update changelog
2024-03-22 15:56:44 +01:00
Andrew Mayorov
b81a11b790
chore(routing): mark function that is now an RPC target
2024-03-22 15:14:53 +01:00
Andrew Mayorov
ba276d807f
fix(routing): add heuristic for routing schema in empty cluster
...
When the cluster is empty but comprised of different versions of EMQX,
try to additionally ask the cluster nodes for the routing schema in use,
to be able to make more informed decisions.
2024-03-22 15:14:32 +01:00
JimMoen
42faffc320
refactor: uniform shared_sub table macros
2024-03-22 18:03:13 +08:00
zhongwencool
45eedbb9c6
fix: bpapi undef on old node
2024-03-22 17:02:09 +08:00
Serge Tupchii
5d77e1b01e
fix: return not_implemented error for mqueue/inflight msgs queries
2024-03-22 10:02:31 +02:00
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
Ivan Dyachkov
93c80bc912
chore: 5.6.0-rc.3
2024-03-21 18:10:59 +01: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
Andrew Mayorov
7d6fde5960
fix(topics-api): respond with correct totals to paged queries
2024-03-21 16:02:16 +01: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
Ivan Dyachkov
49e0488498
chore: 5.6.0-rc.2
2024-03-20 17:11:37 +01:00
Zaiming (Stone) Shi
bede5a5b85
Merge pull request #12746 from zmstone/0320-add-throttle-log-for-auth-failure
...
feat: add authentication_failure throttled log
2024-03-20 17:06:36 +01:00
SergeTupchiy
27c1f1a4e4
Merge pull request #12732 from SergeTupchiy/EMQX-11861-client-mqueue-inflight-API-updates
...
EMQX-11861 client mqueue inflight api updates
2024-03-20 16:27:44 +02:00
Andrew Mayorov
7257fe526b
fix(ci): add `ra` to emqx app dependencies as well
2024-03-20 14:46:53 +01:00
zmstone
2c81b56377
feat: add authentication_failure throttled log
...
also included changes:
1. add 'username' to log metadata
2. add 'tag' to authz warning logs
2024-03-20 14:42:01 +01:00
Serge Tupchii
cb5fdb3c79
fix: rework In-flight / Mqueue API
...
- use timestamp 'position' to find the next chunk of data
- add 'start' position to response meta
- sort In-flight messages by insertion time
- sort Mqueue messages by priority
2024-03-20 15:25:33 +02: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
ieQu1
783f769a98
fix(mgmt): Fix bulk kickout of durable sessions
2024-03-20 12:52:44 +01:00
ieQu1
0547b32727
feat(sessds): Add zone overrides for session durability settings
2024-03-19 22:51:06 +01:00
ieQu1
611e4f6710
Merge pull request #12740 from ieQu1/dev/kick-durable-sessions
...
fix(sessds): Channel must destroy sessions that are kicked
2024-03-19 21:30:40 +01:00
Andrew Mayorov
e2db038e7c
Merge pull request #12734 from keynslug/fix/EMQX-12030/topics-api
...
fix(api-topics): expose persistent session topics in APIs
2024-03-19 21:08: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
Andrew Mayorov
f453bdf055
chore(topic-api): describe `emqx_persistent_session_ds_router:stream/1`
2024-03-19 18:51:06 +01:00
Andrew Mayorov
027b237f07
test(ds): stabilize `t_session_replay_retry` testcase
2024-03-19 18:33:38 +01:00
ieQu1
236685f714
fix(sessds): Channel must destroy sessions that are kicked
2024-03-19 17:49:04 +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
Andrew Mayorov
e1b3263177
fix(sessds): make dialyzer a tad happier
2024-03-19 13:11:32 +01:00
Andrew Mayorov
985f1c4879
fix(api-topics): expose persistent session topics in APIs
2024-03-19 11:01:26 +01: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