Clément Nussbaumer
c22687e322
feat(helm): only keep last digits for ipv6 ports
...
permits specifying ports such as :::18083, a somewhat strange but needed
syntax when trying to make emqx listen on IPv6 addresses
The solution here is to split by colon `:` and to only keep the last
entry, which will corespond to the actual number for the port.
Signed-off-by: Clément Nussbaumer <clement@n8r.ch>
2024-01-01 16:14:48 +01:00
Andrew Mayorov
a87df28dfc
Merge pull request #12243 from keynslug/fix/EMQX-11483/route-async-repl
...
fix(router): rely on local sync state updates to propagate routes
2023-12-29 16:31:00 +01:00
Andrew Mayorov
42da329b34
chore: add changelog entry
2023-12-29 14:05:50 +01:00
Andrew Mayorov
5c91984ad7
chore: leave comment describing need for tighter synchronization
2023-12-29 14:04:48 +01:00
Ilya Averyanov
02110bc79d
Merge pull request #12245 from savonarola/1229-improve-emqx_ds-interface
...
feat(ds): restore original add_generation/update_db_config callback semantics
2023-12-29 14:40:42 +02:00
Ilya Averyanov
9e0f3ce53b
feat(ds): restore original add_generation/update_db_config callback semantics
2023-12-29 13:12:15 +03:00
JimMoen
a3fc4fa5c3
Merge pull request #12242 from JimMoen/1228-chore-typo-and-style
...
chore: typo and style
2023-12-29 16:39:03 +08:00
JimMoen
8f8ad2895b
chore: bump git-blame-ignore-revs
2023-12-29 09:08:21 +08:00
JimMoen
5e100f52b8
style: erlfmt all `rebar.config` files and `bin/nodetool`
2023-12-29 09:08:03 +08:00
JimMoen
0f10d9a8bb
build: erlfmt `rebar.config` files and `bin/nodetool`
2023-12-29 09:08:03 +08:00
JimMoen
a3f33cc8bc
chore: fix typos in code and suite
2023-12-29 09:07:51 +08:00
JimMoen
a35ed4dacb
docs: enhance markdown indent and fix typos
2023-12-29 09:07:26 +08:00
JimMoen
572f465346
fix(typo): sync to enterprise
...
- follow up emqx/emqx#10398
2023-12-29 09:07:26 +08:00
JimMoen
ed10827343
docs: README spell
2023-12-29 09:07:25 +08:00
Andrew Mayorov
b9627c420f
fix(router): rely on local sync state updates to propagate routes
...
Instead of (potentially lagging) global table state itself. Local
state should be the only source of truth anyway. Moreover,
synchronize parts of local state update logic through the broker
pool to ensure consistency.
The problem was that `emqx_router:has_route/2` check may observe a
stale route, which deletion is not yet replicated from the core node
to the local replicant node.
For example:
1. The only one subscriber per a given topic A unsubscribes from
a replicant node.
2. The route to A is deleted by the emqx_broker.
3. Mria makes RPC to a core node, it succeeds and returns.
4. The client resubscribes or another client subscribes to the same
topic A.
5. emqx_broker tries to add a route again:
`emqx_router:do_add_route(Topic)`.
6. `emqx_router` checks if the route is present.
7. The stale route is present because deletion not replicated yet,
so no route is being added.
8. Route deletion is replicated locally but it's too late:
we already have a local subscriber without a route.
Co-Authored-By: Serge Tupchii <serge.tupchii@protonmail.com>
2023-12-28 19:16:31 +01:00
Andrew Mayorov
331bfaa535
fix(broker): avoid reclaiming per-topic counter twice
2023-12-28 17:43:50 +01:00
Andrew Mayorov
a8cd609ff4
chore(broker): simplify subscribe code path
2023-12-28 17:43:42 +01:00
Zaiming (Stone) Shi
2b61f5290d
Merge pull request #12236 from zmstone/1227-ensure-short-mqtt-bridge-clientid
...
fix(bridge/mqtt): ensure short clientid
2023-12-28 16:06:09 +01:00
zhongwencool
a6acebb4aa
Merge pull request #12240 from zhongwencool/ft-api-e-541
...
fix: return raw config when update ft's config
2023-12-28 22:25:22 +08:00
Andrew Mayorov
0eb737c96e
Merge pull request #12241 from keynslug/fix/EMQX-11665/s3-headers
...
fix(s3): handle extra configured headers correctly
2023-12-28 15:23:53 +01:00
Andrew Mayorov
72677f69d4
chore: add changelog entry
2023-12-28 14:49:05 +01:00
Andrew Mayorov
18dc9b2516
fix(s3): remove `emqx_bridge_http` from runtime dependencies
...
Otherwise it's impossible to test `emqx_s3` in isolation.
2023-12-28 14:13:22 +01:00
Andrew Mayorov
1d9374125c
chore: bump `emqx_s3` to 5.0.13
2023-12-28 14:12:33 +01:00
Andrew Mayorov
33ef964582
fix(s3): handle extra configured headers correctly
...
* Header names in config become atoms.
(Probably because of blanket `unsafe_atom_key_map/1` in `emqx_config`)
* Header names should be normalized to lowercase.
(Otherwise signature will be incorrect)
2023-12-28 13:55:05 +01:00
Zaiming (Stone) Shi
4669c4d552
fix(bridge/mqtt): ensure short clientid
...
Some mqtt brokers do not allow long client IDs.
To make it compatible with this limitation, this commit
tries to limit the number of bytes under 23 with a best-effort
attempt to derive it from the bridge name.
2023-12-28 11:53:27 +01:00
JianBo He
d26f56e99b
Merge pull request #12238 from emqx/compatible-bridge-http-conf
...
fix(bridge-http): compatible conf with the error format introduced in 5.3.2
2023-12-28 16:18:44 +08:00
zhongwencool
1fd67564ce
fix: return raw config when update ft's config
2023-12-28 14:49:36 +08:00
JianBo He
3ce2f225d7
test: update the test config
2023-12-28 13:48:51 +08:00
JianBo He
c0aba14d27
chore: update changes
2023-12-28 11:41:20 +08:00
JianBo He
b6391cf18c
fix(bridge-http): compatible conf with the error format introduced in 5.3.2
2023-12-28 11:36:48 +08:00
SergeTupchiy
2d209ec576
Merge pull request #12234 from SergeTupchiy/EMQX-11643-fix-otel-conf-incompatibility
...
fix(emqx_opentelemetry): use converter to convert legacy metrics config
2023-12-27 15:44:28 +02:00
zhongwencool
e645fa4874
fix: ft config update api return raw config
2023-12-27 21:13:47 +08:00
Serge Tupchii
423b8b4274
fix(emqx_opentelemetry): use converter to convert legacy metrics config
...
HOCON converter is cleaner and safer option,
that will also work for configurations defined in emqx.conf.
Previously used `upgrade_raw_conf/1` is currently not supported in hocon_cli (used in bin/emqx).
Fixes: EMQX-11643
2023-12-27 14:15:12 +02:00
zhongwencool
711a9a06c8
Merge pull request #12221 from thalesmg/test-flaky-retry-m-20231222
...
test: reduce flakiness
2023-12-27 14:30:25 +08:00
JianBo He
4ebf776f65
Merge pull request #12232 from zhongwencool/force-leave-clean-rpc-commit
...
fix: remove rpc commit info when force_leave cluster
2023-12-27 09:25:17 +08:00
zhongwencool
11feab983f
fix: clean rpc_commit when force_leave cluster
2023-12-26 15:25:58 +08:00
Zaiming (Stone) Shi
95194216cc
Merge pull request #12226 from zmstone/1222-sync-e5.4.0-build.2-to-master
...
1222 sync `e5.4.0-build.2` to master
2023-12-23 11:22:47 +01:00
Zaiming (Stone) Shi
e421e9ce56
Merge remote-tracking branch 'origin/release-54' into 1222-sync-e5.4.0-build.2-to-master
2023-12-23 11:22:05 +01:00
Zaiming (Stone) Shi
f36b842d94
chore: prepare for e5.4.0 retag
2023-12-23 11:18:19 +01:00
Zaiming (Stone) Shi
86a018d921
chore: bump app versions
2023-12-22 21:28:26 +01:00
Zaiming (Stone) Shi
9fdac4af0c
Merge remote-tracking branch 'origin/master' into 1222-sync-e5.4.0-build.2-to-master
2023-12-22 21:27:27 +01:00
Zaiming (Stone) Shi
f1e1a05f4c
docs: rename changelog e5.4.0-build.1.en.md to e5.4.0-build.2.en.md
2023-12-22 20:12:10 +01:00
Zaiming (Stone) Shi
77c0a288b2
Merge pull request #12225 from zmstone/1222-fix-config-update-for-ft
...
1222 fix config update for ft
2023-12-22 20:10:54 +01:00
Thales Macedo Garitezi
890970345b
test: reduce flakiness
2023-12-22 15:31:56 -03:00
Thales Macedo Garitezi
0e172f6d1f
Merge pull request #12222 from thalesmg/test-fix-after-fix-m-20231222
...
test: restore connect timeout for test case
2023-12-22 15:28:49 -03:00
Zaiming (Stone) Shi
ac6e4cf2cc
fix: config update for ft
2023-12-22 19:01:14 +01:00
Zaiming (Stone) Shi
733196aa83
chore: prepare for e5.4.0-build.2
2023-12-22 18:59:46 +01:00
Thales Macedo Garitezi
85963d3b45
test: restore connect timeout for test case
2023-12-22 14:10:24 -03:00
Zaiming (Stone) Shi
4c3c38a35a
Merge pull request #12220 from zmstone/1221-prepare-bpapi-on-otp-26
...
1221 prepare bpapi on otp 26
2023-12-22 18:08:09 +01:00
Zaiming (Stone) Shi
23ded313ec
chore: update app versions
2023-12-22 15:29:22 +01:00