Commit Graph

17403 Commits

Author SHA1 Message Date
Andrew Mayorov fd0986071c
perf(topicidx): implement fast-forwarding prefixes
This should give less `ets:next/2` calls in general and much less
when index has relatively small number of long non-wildcard topics.
2023-08-14 15:36:58 +04:00
Andrew Mayorov 0c7bdbdab4
test(topicidx): add property test
Co-Authored-By: JianBo He <heeejianbo@gmail.com>
2023-08-14 15:36:57 +04:00
Andrew Mayorov 48a50c9137
fix(topicidx): fix missing matches when 'a/b' and 'a/b/#' both exist
Thanks to @HJianBo for spotting this issue. The approach to fix it
is different though: we try to keep the "recurrency branch factor"
to a minimum, instead introducing new condition for the case when
filter does not match, but iteration with `ets:next/2` is not yet
finished for the prefix.

Co-Authored-By: JianBo He <heeejianbo@gmail.com>
2023-08-14 15:36:57 +04:00
Andrew Mayorov 6a13406363
fix(topicidx): use custom topic words to keep required ordering
Otherwise, topic with empty tokens (e.g. `a/b///c`) would have
some of their tokens ordered before `#` / `+`, because empty
token was represented as empty atom (`''`).
2023-08-14 15:36:57 +04:00
Andrew Mayorov 28bcb394d1
fix(topicidx): allow to return matches unique by record id 2023-08-14 15:36:57 +04:00
Andrew Mayorov 8feda315f6
feat(index): add topic index facility
Somewhat similar to `emqx_trie` in design and logic, yet built on
top of a single, potentially pre-existing table.
2023-08-14 15:36:54 +04:00
Zaiming (Stone) Shi 970ff28200 Merge remote-tracking branch 'origin/master' into release-52 2023-08-14 11:50:40 +02:00
Ivan Dyachkov 1e6ba2e748 ci: add daily build of emqx-enterprise for debian10 platform 2023-08-14 11:39:55 +02:00
firest 0b066fa20c fix(ldap): fix dependency problem 2023-08-14 16:59:37 +08:00
zhongwencool 41180170f4 fix: update error msg 2023-08-14 15:45:57 +08:00
zhongwencool 4ee4f59b41 chore: make spellcheck happy 2023-08-14 10:37:15 +08:00
zhongwencool e10f9e5e9b feat: change mqtt.max_packet_size type from string to bytesize 2023-08-14 10:10:46 +08:00
Ivan Dyachkov eb878f60b1
Merge pull request #11434 from id/0811-e5.2.0-alpha.1 2023-08-11 14:44:16 +02:00
lafirest b8d3dcf59a
Merge pull request #11424 from lafirest/fix/epoch_maximum_val
fix(datetime): make sure the epoch is not larger than the maximum supported value
2023-08-11 20:37:56 +08:00
firest 749c2d075f chore: update changes && bump app version 2023-08-11 17:57:27 +08:00
firest bc417a6764 fix(datetime): make sure the epoch is not larger than the maximum supported value 2023-08-11 17:57:21 +08:00
firest 81d200023d chore: update changes 2023-08-11 17:37:45 +08:00
Ivan Dyachkov e86a60fee3 docs: update build status badge in readme to point to actual workflow 2023-08-11 11:27:02 +02:00
firest 2fc0468e0c feat(banned): add a new API used to clear all banned data 2023-08-11 17:25:49 +08:00
Ivan Dyachkov 7852af896c chore: e5.2.0-alpha.1 2023-08-11 11:16:30 +02:00
Ivan Dyachkov 659647955a chore: remove support for docker-latest-* tag from cut.sh 2023-08-11 11:16:30 +02:00
Ivan Dyachkov 7bdefd065f chore: update scripts, workflows and documentation to support release-52 2023-08-11 11:11:58 +02:00
Ivan Dyachkov bab05b6613
Merge pull request #11433 from id/0811-ci-upgrade-push-helm-action 2023-08-11 11:03:00 +02:00
lafirest c9c0ce0734
Merge pull request #11432 from lafirest/chore/rate_limit_example
chore: add rate limit example
2023-08-11 15:47:38 +08:00
Ivan Dyachkov b6084b0001 chore: bump apps/emqx version 2023-08-11 09:19:51 +02:00
lafirest 4eaced241d
Merge pull request #11423 from lafirest/chore/limiter_utils
fix(limiter): simplify the code of the limiter
2023-08-11 15:17:42 +08:00
Ivan Dyachkov 8e384ddb6b chore: enforce chart version matching release version in emqx_release.hrl 2023-08-11 09:15:27 +02:00
Ivan Dyachkov be9b8e5fa8 ci: upgrade emqx/push-helm-action to v1.1 2023-08-11 08:51:17 +02:00
firest 2a0f5f8ba5 chore: add rate limit example 2023-08-11 13:51:21 +08:00
lafirest 4e974851e0
Merge pull request #11431 from JimMoen/fix-mgmt-api-500
fix: api total accumulate ignore `undefined` by down nodes result
2023-08-11 13:49:20 +08:00
JimMoen 060074e04a
fix: api total accumulate ignore `undefined` by down nodes result 2023-08-11 11:27:55 +08:00
Thales Macedo Garitezi 65aee8870b
Merge pull request #11427 from id/0810-cut-v5.1.5-build.3
v5.1.5-build.3
2023-08-10 09:52:58 -03:00
Paulo Zulato 9ca9c65af2
Merge pull request #11367 from paulozulato/feat-gcp-devices
feat(gcp-iot): port GCP IoT Core compatibility layer from e4.4
2023-08-10 09:44:55 -03:00
Ivan Dyachkov 10a1f1d43b docs: Generate changelog for v5.1.5-build.3 2023-08-10 12:56:40 +02:00
Ivan Dyachkov 801c93dd46 chore: v5.1.5-build.3 2023-08-10 12:56:28 +02:00
Ivan Dyachkov 6ead09b28d chore: merge 'upstream/master' 2023-08-10 12:56:00 +02:00
firest 6dbddfb089 fix(limiter): simplify the code of the limiter
move runtime code out from the schema
2023-08-10 18:20:05 +08:00
Ivan Dyachkov b3082c3f90
Merge pull request #11422 from id/0810-ci-fix-publishing-packages 2023-08-10 12:04:32 +02:00
Ivan Dyachkov 9ad44f1bba ci: do not run tests on tag push 2023-08-10 09:57:53 +02:00
Ivan Dyachkov 1c5b42806b build: correctly parse package version 2023-08-10 09:01:39 +02:00
zhongwencool aa798e531e
Merge pull request #11409 from zhongwencool/opentelemetry-metrics
feat: support opentelemetry metrics
2023-08-10 14:35:25 +08:00
Ivan Dyachkov d6476481c9 ci(packages): run publish_artifacts on github hosted runner to get sudo 2023-08-10 07:58:57 +02:00
zhongwencool d1dc37af4c
Merge pull request #11279 from zhongwencool/trace-log
fix: don't be kill when send large payload when log is debug
2023-08-10 11:58:31 +08:00
lafirest b2394cf92d
Merge pull request #11399 from lafirest/fix/ph_utf8
fix(placeholder): porting fix to support utf8 key in placeholder
2023-08-10 09:41:39 +08:00
zhongwencool 5a4dd3a5e5 fix: truncate large payload 2023-08-10 09:35:12 +08:00
zhongwencool d5fe891961 fix: don't be kill when send large payload when log is debug 2023-08-10 09:22:30 +08:00
Thales Macedo Garitezi dcaae0b946
Merge pull request #11419 from thalesmg/r-v515-patch2-20230809
prepare `v5.1.5-patch.2`
2023-08-09 18:13:59 -03:00
Thales Macedo Garitezi bb8ce68c2e docs: Generate changelog for v5.1.5-patch.2 2023-08-09 16:38:28 -03:00
Thales Macedo Garitezi 4491c3b882 Merge branch 'master' into r-v515-patch2-20230809 2023-08-09 16:36:50 -03:00
Ivan Dyachkov 4bd16ac4c9
Merge pull request #11418 from thalesmg/fix-ci-scripts-b-20230809 2023-08-09 21:33:58 +02:00