Commit Graph

895 Commits

Author SHA1 Message Date
Zaiming (Stone) Shi
91cdc69976
Merge pull request #10867 from zmstone/0530-merge-release-50-to-master
0530 merge release 50 to master
2023-05-30 09:54:57 +02:00
Thales Macedo Garitezi
67e182e0c9
Merge pull request #10813 from thalesmg/refactor-kafka-on-stop-v50
feat(kafka): ensure allocated resources are removed on failures
2023-05-29 16:49:29 -03:00
Thales Macedo Garitezi
3edbad9f56 feat(pulsar_producer): add validation for empty message key when strategy = key_dispatch 2023-05-29 10:04:19 -03:00
Kjell Winblad
b87e0a2cdd docs: add changelog entry 2023-05-29 14:45:37 +02:00
Thales Macedo Garitezi
1f5714b3f0 docs: Generate changelog for v5.0.26 2023-05-29 09:31:30 -03:00
Thales Macedo Garitezi
639feefab6 Merge remote-tracking branch 'origin/master' into tag-v5026 2023-05-29 09:15:48 -03:00
JimMoen
6551eb21f2
Merge pull request #10851 from JimMoen/fix-bad-api-logging
fix: redact api request to hide auth token
2023-05-29 17:40:44 +08:00
JimMoen
e287cf9a09
Merge pull request #10820 from JimMoen/fix-license-checker-update
fix: reboot `emqx_license` app for join cluster
2023-05-29 17:40:29 +08:00
zhongwencool
2b6d3bb748
Merge pull request #10833 from zhongwencool/telemtry-report
fix: only report enable authn/authz in telemetry
2023-05-29 15:14:36 +08:00
Zaiming (Stone) Shi
87ebbc2cf0 docs: format en changelog for v5.0.26 2023-05-29 09:06:53 +02:00
Zaiming (Stone) Shi
25319c3151
Merge pull request #10839 from zmstone/0526-merge-release-50-to-master
0526 merge release 50 to master
2023-05-29 08:56:20 +02:00
Zhongwen Deng
8c814bc861 fix: only report enable authn/authz in telemetry 2023-05-29 14:17:46 +08:00
JimMoen
cb05406a00
fix: reboot emqx_license app for join cluster 2023-05-29 13:47:46 +08:00
JimMoen
dcfe985ee9
fix: redact api request to hide auth token 2023-05-29 11:02:02 +08:00
Thales Macedo Garitezi
9b7e473cf6 feat(kafka_producer): add validation for empty message key when strategy = key_dispatch
Fixes https://emqx.atlassian.net/browse/EMQX-9979
2023-05-26 12:02:58 -03:00
Zaiming (Stone) Shi
cc5b4d3748 Merge remote-tracking branch 'origin/release-50' into 0526-ci-delete-otp-24-from-standalone-app-test 2023-05-26 15:58:16 +02:00
Zaiming (Stone) Shi
eaba36fdca docs: restore e5.0.4 changelog to manually updated version 2023-05-26 15:43:01 +02:00
Zaiming (Stone) Shi
72da3af08f docs: add changelog 2023-05-26 15:17:42 +02:00
Zaiming (Stone) Shi
99b56a53d1 docs: Generate changelog for e5.0.4 2023-05-26 14:34:31 +02:00
Zaiming (Stone) Shi
467a2acdb8 docs: add missing changes 2023-05-26 13:02:27 +02:00
Zaiming (Stone) Shi
8941b6c287 docs: add merged change logs e5.0.4.en.md 2023-05-26 12:47:34 +02:00
JimMoen
0788f2f197
fix: emqx_ctl traces ... command args
* use second time as trace `start_at` and `end_at`
* default trace time duration 30min to same as api created
* prevent format line broken
2023-05-26 09:48:56 +08:00
Zaiming (Stone) Shi
407cab220b
Merge pull request #10760 from paulozulato/fix-failure-joining
fix: avoid error 500 when node is re-joining cluster
2023-05-26 03:08:17 +02:00
Thales Macedo Garitezi
5df7314255 feat(kafka): ensure allocated resources are removed on failures 2023-05-25 16:38:09 -03:00
Paulo Zulato
ea86f4442b fix: avoid error 500 when node is re-joining cluster
Fixes https://emqx.atlassian.net/browse/EMQX-9899
2023-05-25 13:32:28 -03:00
JianBo He
de7f1c8aec test: add tests for auto_restart_interval 2023-05-25 17:15:19 +08:00
Thales Macedo Garitezi
297b8b380d docs: improve changelog 2023-05-24 16:25:22 -03:00
Zaiming (Stone) Shi
a0d4120f8c
Merge pull request #10807 from zmstone/0524-delete-license-installer
0524 delete license installer
2023-05-24 21:01:51 +02:00
Thales Macedo Garitezi
37061b484a
Merge pull request #10778 from thalesmg/refactor-pulsar-on-stop-v50
feat(pulsar): ensure allocated resources are removed on failures (v5.0)
2023-05-24 16:00:50 -03:00
Paulo Zulato
50ff6c4aa4
Merge pull request #10741 from paulozulato/fix-oracle-passwd-leaking
fix(oracle): hide password on stacktrace
2023-05-24 15:31:00 -03:00
ieQu1
2b79196a03
Merge pull request #10809 from ieQu1/ekka-0.15.2
chore(ekka): Bump version to 0.15.2
2023-05-24 18:13:04 +02:00
Thales Macedo Garitezi
fd2940cd77 feat(pulsar): ensure allocated resources are removed on failures (v5.0)
Fixes https://emqx.atlassian.net/browse/EMQX-9937
2023-05-24 12:29:00 -03:00
ieQu1
3d3dacfcf6 chore(ekka): Bump version to 0.15.2 2023-05-24 15:43:49 +02:00
Zaiming (Stone) Shi
ae2398defe docs: add changelogs 2023-05-24 15:00:53 +02:00
JimMoen
28015597ee
Merge remote-tracking branch 'emqx/release-50' into merge-release-50 2023-05-24 19:34:12 +08:00
JimMoen
e38645aa28
fix: lookup topic without force percent decode
* the minirest handler would do it
2023-05-24 17:28:32 +08:00
Zaiming (Stone) Shi
5fe58c5051 docs: add changelog for 10785 2023-05-23 14:13:18 +02:00
Zaiming (Stone) Shi
732a7be187 Merge remote-tracking branch 'origin/release-50' 2023-05-22 17:46:54 +02:00
zhongwencool
a35c510c03
Merge pull request #10769 from zhongwencool/fix-bad-changelog
chore: bad change log file
2023-05-22 22:16:39 +08:00
lafirest
88e4078885
Merge pull request #10747 from lafirest/fix/rule_funs_time_offset
fix: port the `emqx_calendar` from v4.4
2023-05-22 20:52:21 +08:00
lafirest
42f9c9aa9a
Merge pull request #10746 from lafirest/fix/events_api
fix: supports test the `$events/delivery_dropped` event by API
2023-05-22 20:50:03 +08:00
Zhongwen Deng
d7bd2227db chore: bad change log file 2023-05-22 17:35:46 +08:00
William Yang
e824e1db39
Merge pull request #10698 from qzhuyan/perf/william/force-atom-conf-path
perf(config): enforcing atom key  path in hotcode path
2023-05-22 09:38:09 +02:00
firest
da7d351cc6 chore: update changes 2023-05-22 15:25:29 +08:00
某文
27fca0ef3c fix: check authz's file rule before save to file 2023-05-22 14:22:20 +08:00
zhongwencool
c65e3a46b1
Merge pull request #10742 from zhongwencool/fix-authz-file-rule-check
fix: check authz's file source rules in pre_config_update
2023-05-22 14:15:18 +08:00
firest
d3e38bd7f9 chore: update changes 2023-05-22 10:06:29 +08:00
某文
cd753622e3 chore: add change for fix bad default SSL certificate 2023-05-21 07:42:59 +08:00
Zaiming (Stone) Shi
3e98b3b050
Merge pull request #10755 from zmstone/0517-fix-bridge-update-timeout-issue
0517 fix bridge update timeout issue
2023-05-20 06:19:26 +02:00
Zaiming (Stone) Shi
cb76e5a241 docs: add changelog for 10755 2023-05-19 20:41:26 +02:00
Andrew Mayorov
9aaa0b6fe1
Merge pull request #9927 from emqx/file-transfer
feat: implement file transfer over mqtt
2023-05-19 18:35:13 +03:00
lafirest
264404e180
Merge pull request #10511 from lafirest/fix/resource_safe_log
fix(resource): make some logging of the resource manager more secure
2023-05-19 20:42:21 +08:00
lafirest
1aa904d019
Merge pull request #10738 from lafirest/fix/tdengine_template
fix(tdengine): add supports for the `super table` feature in the SQL template
2023-05-19 20:41:50 +08:00
Thales Macedo Garitezi
8cfcc8fbaf
Merge pull request #10743 from thalesmg/fix-bridge-metric-aggregation-r50
fix(bridge_api): don't crash when formatting empty/unknown bridge metrics
2023-05-19 09:07:22 -03:00
Kjell Winblad
28dda39e39
Merge pull request #10724 from kjellwinblad/kjell/docs/missing_http_api_endpoint_descriptions/EMQX-9767
docs: make sure there is a summary for all API endpoints
2023-05-19 12:05:41 +02:00
firest
baeb96a6e4 chore: update changes 2023-05-19 15:36:18 +08:00
firest
5a08a7b9de fix(tdengine): minor improvement of code and changes 2023-05-19 11:14:31 +08:00
JianBo He
48ceb14755
Merge pull request #10737 from HJianBo/fix-mqtt-sn-bugs
Avoid urldecode clientid twice
2023-05-19 09:19:12 +08:00
Paulo Zulato
f9a75cb2a9 fix(oracle): hide password on stacktrace 2023-05-18 16:00:02 -03:00
Thales Macedo Garitezi
09ea2e2224 fix(bridge_api): don't crash when formatting empty/unknown bridge metrics
Fixes https://emqx.atlassian.net/browse/EMQX-9872
2023-05-18 14:25:13 -03:00
某文
52e2caa671 fix: check authz's file rule before save to file 2023-05-18 22:33:12 +08:00
Paulo Zulato
5d289ade56 fix: validate range for some bridge options
Fixes https://emqx.atlassian.net/browse/EMQX-9864

Setting a very large interval can cause `erlang:start_timer` to crash.
Also, setting auto_restart_interval or health_check_interval to "0s"
causes the state machine to be in loop as time 0 is handled separately:

| state_timeout() = timeout() | integer()
| (...)
| If Time is relative and 0 no timer is actually started, instead the the
| time-out event is enqueued to ensure that it gets processed before any
| not yet received external event.
from "https://www.erlang.org/doc/man/gen_statem.html#type-state_timeout"

Therefore, both fields are now validated against the range [1ms, 1h],
which doesn't cause above issues.
2023-05-18 10:10:58 -03:00
firest
f1a3e5965e chore: update apps version && changes 2023-05-18 17:34:28 +08:00
JianBo He
f42cab9c56 chore: update changes 2023-05-18 16:24:37 +08:00
zhongwencool
ba43a0e30f
Merge pull request #10734 from thalesmg/merge-r50-into-v50-a
merge `release-50` into `master`
2023-05-18 14:24:53 +08:00
zhongwencool
bf5ee41009
Merge pull request #10702 from zhongwencool/keepalive-backoff-rename
feat: deprecated keepalive_backoff, introduce keepalive_multiplier
2023-05-18 10:00:17 +08:00
Thales Macedo Garitezi
447b76464b Merge branch 'release-50' into merge-r50-into-v50-a 2023-05-17 14:50:18 -03:00
Thales Macedo Garitezi
10f6edd6ea
Merge pull request #10717 from thalesmg/fix-bw-flush-timer-full-infl-r50
fix(buffer_worker): avoid setting flush timer when inflight is full
2023-05-17 14:49:27 -03:00
Thales Macedo Garitezi
b2afe4e90c
Merge pull request #10690 from thalesmg/perf-webhook-retry-async-reply-v50
perf(webhook): add async retries and evaluate reply callback in fresh process
2023-05-17 11:06:48 -03:00
Zhongwen Deng
e26ce5816e feat: hide keepalive_backoff, introduce keepalive_multiplier 2023-05-17 21:25:10 +08:00
zhongwencool
ea8ac877b0
Merge pull request #10713 from zhongwencool/put-webhook-request-timeout-into-resource-opts
feat: update wehbook's request_timeout into resource_opts
2023-05-17 21:20:42 +08:00
William Yang
ea4fbb8b6e chore: add changelog 2023-05-17 14:46:07 +02:00
Thales Macedo Garitezi
a7b41e1cdf perf(webhook): add retry attempts for async
This is a performance improvement for webhook bridge.

Since this bridge is called using `async` callback mode, and `ehttpc`
frequently returns errors of the form `normal` and `{shutdown,
normal}` that are retried "for free" by `ehttpc`, we add this behavior
to async requests as well.  Other errors are retried too, but they are
not "free": 3 attempts are made at a maximum.

This is important because, when using buffer workers, we should avoid
making them enter the `blocked` state, since that halts all progress
and makes throughput plummet.
2023-05-17 09:20:50 -03:00
Kjell Winblad
397dce0d78
Merge pull request #10654 from kjellwinblad/kjell/refactor/clickhouse_bridge/EMQX-9538
refactor: the clickhouse bridge to use the new bridge app structure
2023-05-17 11:19:33 +02:00
Kjell Winblad
bce43978a2 refactor: the clickhouse bridge to use the new bridge app structure
Fixes:
https://emqx.atlassian.net/browse/EMQX-9538
2023-05-17 10:12:43 +02:00
Kjell Winblad
ab8b8ccaad docs: make sure there is a summary for all API endpoints
Many HTTP API endpoints did not have a summary when looking at the API
docs at "http://emqx_host_name:18083/api-docs". This has been fixed by
making sure there is a summary corresponding to all endpoints.

Fixes:
https://emqx.atlassian.net/browse/EMQX-9767
2023-05-17 09:58:56 +02:00
某文
2b99a9b988 feat: hide resource_opts's request_timeout 2023-05-17 13:41:11 +08:00
firest
1f7ede90a4 chore: update app version && changes 2023-05-17 11:01:31 +08:00
JianBo He
5aabd03bd0
Merge pull request #10718 from zhongwencool/log-changelog
chore: update 10607's log config changelog
2023-05-17 08:54:48 +08:00
Ilya Averyanov
1a8cf0e392 Merge branch 'release-50' into file-transfer
* release-50:
  fix(pulsar): use a binary duration as default `health_check_interval`
  docs: add changelog entry
  docs: clarify description of bridge username and password
  chore: bump to v5.0.25
  fix(limiter): adjust type for compatibility
  fix(limiter): fix that update node-level limiter config will not working
  chore: upgrade dashboard to v1.2.4-1 for ce
  chore: upgarde rulesql to 0.1.6 to fix invaid utf8 input
  chore: add changelog for 10659
  fix: crash when sysmon.os.mem_check_interval = disabled
  chore: bump influxdb version && update changes
  refactor(influxdb): move influxdb bridge into its own app
  chore: add listener default changelog
  fix: ocsp cache SUITE failed
  fix: ensure atom key for emqx_config:get
  fix: only fill cerf_file default in server side
  fix: authn init is empty
  fix: bad listeners default ssl_options
2023-05-17 00:27:55 +03:00
Andrew Mayorov
b2ecbef0f1
Merge pull request #10715 from fix/EMQX-9897/preserve-peercert-until-connected
fix(chan): postpone trimming conninfo after `connected` hook run
2023-05-16 22:56:41 +03:00
Andrew Mayorov
74c04b847c
chore: add changelog entry
Co-authored-by: Zaiming (Stone) Shi <zmstone@gmail.com>
2023-05-16 19:35:56 +03:00
某文
77cf19c96c chore: update 10340's changelog 2023-05-16 22:59:08 +08:00
Thales Macedo Garitezi
657df05ad9 fix(buffer_worker): avoid setting flush timer when inflight is full
Fixes https://emqx.atlassian.net/browse/EMQX-9902

When the buffer worker inflight window is full, we don’t need to set a
timer to flush the messages again because there’s no more room, and
one of the inflight windows will flush the buffer worker by calling
`flush_worker`.

Currently, we do set the timer on such situation, and this fact
combined with the default batch time of 0 yields a busy loop situation
where the CPU spins a lot while inflight messages do not return.
2023-05-16 11:28:58 -03:00
某文
17ab30d8bb chore: update 10607's log config changelog 2023-05-16 22:04:14 +08:00
Ilya Averyanov
c113a8ac6a
Merge pull request #10677 from savonarola/0511-fix-rule-api
fix(api): respond 404 on the deletion of nonexistent rule
2023-05-16 16:50:30 +03:00
某文
a2aa6b4666 chore: make ci happy again 2023-05-16 21:29:52 +08:00
Kjell Winblad
b1a4f6ea05 docs: add changelog entry 2023-05-15 16:37:54 +02:00
Ivan Dyachkov
bde086f549
Merge pull request #10701 from id/0510-bump-builder-version
ci: emqx-builder 5.0-35
2023-05-15 14:48:56 +02:00
firest
34b09e071f fix(limiter): fix a format error in the changelog 2023-05-15 18:08:33 +08:00
Ivan Dyachkov
8d8cf23fad chore: add changelog 2023-05-15 08:17:30 +02:00
lafirest
67ada52808
Merge pull request #10682 from lafirest/fix/will_msg_timestamp
fix: update the will message timestamp when it is ready to publish
2023-05-12 22:25:32 +08:00
zhongwencool
a953b951fe
Merge branch 'master' into sync-release-50-to-master 2023-05-12 18:01:58 +08:00
Zhongwen Deng
1141499b1b chore: add changelog for 10659 2023-05-12 14:42:33 +08:00
firest
2404d167c8 chore: update changes 2023-05-12 14:39:18 +08:00
lafirest
33d1872e8f
Merge pull request #10679 from lafirest/refactor/influxdb_dir
refactor(influxdb): move influxdb bridge into its own app
2023-05-12 14:31:29 +08:00
firest
7d46fe8390 chore: bump influxdb version && update changes 2023-05-12 11:48:56 +08:00
Zhongwen Deng
44212f6e06 chore: add listener default changelog 2023-05-12 11:18:15 +08:00
Thales Macedo Garitezi
64dc9ed46a perf(metrics): avoid increasing counters by 0
Some performance tests indicate that calling `telemetry` is costly in
hot paths.  Since increasing a counter by 0 is a no-op, we should
avoid calling `telemetry` if the amount to increase is 0.
2023-05-11 15:13:37 -03:00
Ilya Averyanov
49e9ace1c1 fix(api): respond 404 on the deletion of nonexistent rule 2023-05-11 23:12:59 +05:00
Ilya Averyanov
5b5d7ceac5 Merge branch 'release-50' into file-transfer
* release-50:
  fix(limiter): fix an error when setting `max_conn_rate` in a listener
  chore: bump erlcloud dependencies vsns
  chore: rename dynamo template files
  refactor(dynamo): move dynamo bridge into its own app
  chore: update changes && bump app versions
  fix: issues with the RabbitMQ config
  refactor(pgsql): move pgsql && matrix && timescale bridges into their own app
  fix: the iotdb password field so it has the password format
  chore: update changes
  refactor(tdengine): move tdengine bridge into its own app
  feat: deprecate listeners's authn http api
2023-05-11 16:15:38 +05:00
SergeTupchiy
0617a9b11c
Merge pull request #10653 from SergeTupchiy/convert-gateway-authn-certs
fix(emqx_gateway): convert and clear authentication certificates
2023-05-11 11:35:55 +03:00
Zaiming (Stone) Shi
b3e35dac1c
Merge pull request #10584 from paulozulato/debug-ssl-handshake
feat: add log level configuration to ssl communication
2023-05-11 08:59:13 +02:00
firest
f6a2f752ff chore: update changes && bump app versions 2023-05-10 17:23:26 +08:00
lafirest
594ceaf9e6
Merge pull request #10650 from lafirest/refactor/tdengine_dir
refactor(tdengine): move tdengine bridge into its own app
2023-05-10 16:42:35 +08:00
Andrew Mayorov
04a5ab4498
chore: add changelog entry 2023-05-10 11:40:05 +03:00
Zhongwen Deng
898826f15f chore: add changelog for 10659 2023-05-10 14:56:56 +08:00
firest
cabbf0f768 chore: update changes 2023-05-10 14:14:15 +08:00
Zaiming (Stone) Shi
48b53b9ca4 docs: delete zh changelog 2023-05-09 20:51:24 +05:00
Ilya Averyanov
609f7bd8fd feat(rebalance): port apps from 4.x 2023-05-09 20:51:22 +05:00
Serge Tupchii
b98a7168c4 fix(emqx_gateway): convert and clear authentication certificates 2023-05-09 17:32:44 +03:00
William Yang
328add3a02
Merge pull request #10563 from qzhuyan/fix/william/no_local_filter_all
fix(mqtt): drop all local messages in session deliver
2023-05-09 15:29:12 +02:00
Kjell Winblad
70cf1533db feat: add RabbitMQ bridge 2023-05-09 14:32:26 +02:00
firest
12491e08db chore: bump version && update changes 2023-05-09 15:58:02 +08:00
lafirest
b94290db58
Merge pull request #10625 from lafirest/refactor/limiter_cfg
refactor(limiter): simplify limiter configuration
2023-05-09 11:40:05 +08:00
Stefan Strigler
1ade7ce9a3
Merge pull request #10560 from sstrigler/EMQX-8390-5-0-x-io-tdb-bridge-port-conf-and-api-to-5-0
IoTDB Bridge
2023-05-08 20:27:01 +02:00
Paulo Zulato
77176787ca feat: add log level configuration to ssl communication
Fixes https://emqx.atlassian.net/browse/EMQX-9781
2023-05-08 15:11:49 -03:00
Paulo Zulato
83c4b2f2d4
Merge pull request #10568 from paulozulato/feat-shutdown-count
feat: add shutdown count
2023-05-08 15:07:51 -03:00
zhongwencool
f6c5644448
Merge pull request #10623 from zhongwencool/rename-max-message-queue-len
feat: rename max_message_queue_len to max_mailbox_size
2023-05-08 23:08:06 +08:00
Stefan Strigler
d231e708cb feat: add IotDB bridge 2023-05-08 16:19:01 +02:00
zhongwencool
74d0436fbf
Merge pull request #10636 from kjellwinblad/kjell/fix/mongo/max_overflow/EMQX-9714
fix: non_neg_integer() translated to minimum = 1 in bridge-api-en.json
2023-05-08 20:45:57 +08:00
William Yang
fc46b81fb1 docs: change log for #10563 2023-05-08 14:40:40 +02:00
Zhongwen Deng
eaa129d0d7 feat: rename max_message_queue_len to max_mailbox_size 2023-05-08 20:27:52 +08:00
Zaiming (Stone) Shi
83257617cd
Merge pull request #10630 from zhongwencool/sync-release-50-to-master
Sync release 50 to master
2023-05-08 14:02:27 +02:00
Kjell Winblad
62570d076b docs: add change log entry 2023-05-08 12:50:31 +02:00
Stefan Strigler
b639353cf4 fix(emqx_connector_http): wrap and unwrap auth headers
This so we don't have sensitive information in a process' state
2023-05-08 09:56:43 +02:00
William Yang
b6c7e55348
Merge pull request #10528 from qzhuyan/perf/william/force-config-atom-path
perf(config): ensure root keys of 'conf' config is atom
2023-05-08 09:37:18 +02:00
Zhongwen Deng
4f396a36a9 Merge remote-tracking branch 'upstream/master' into release-50 2023-05-08 14:58:03 +08:00
firest
197ebccf95 chore: update changes 2023-05-08 11:45:55 +08:00
JianBo He
2fb4b5bcbc chore: fix bad indent 2023-05-06 13:54:34 +08:00
JianBo He
e7800f5a71
chore: apply suggestions from code review
Co-authored-by: yanzhiemq <125347458+yanzhiemq@users.noreply.github.com>
2023-05-06 13:49:26 +08:00
Ivan Dyachkov
8ecd6364d1 chore: update e5.0.3.zh.md changelog and minor changes in e5.0.3.en.md 2023-05-05 16:42:44 +02:00
Ivan Dyachkov
644a39520a chore: update e5.0.3.en.md changelog 2023-05-05 16:10:10 +02:00
Ivan Dyachkov
cd5a375aad chore: e5.0.3 changelog 2023-05-05 16:05:00 +02:00
lafirest
335d948bce
Merge pull request #10591 from lafirest/fix/simplify_limiter_client_cfg
perf(limiter): simplify the memory represent of limiter configuration
2023-05-05 16:59:04 +08:00
firest
7a96a9772d fix(limiter): update change && fix deprecated version 2023-05-05 16:26:06 +08:00
William Yang
e4f501417b
Merge pull request #10525 from qzhuyan/perf/william/avoid-new-map-when-get-mqtt-caps
perf(config): avoid build new map in emqx_mgmt_caps:get_caps
2023-05-05 10:22:08 +02:00
firest
1b066fc0b6 chore: update changes 2023-05-05 16:21:21 +08:00
Zhongwen Deng
e42e73e104 chore: add changelog for trace timestrap 2023-05-04 14:44:56 +08:00
Paulo Zulato
f965fa7b9a feat: add shutdown count
Fixes https://emqx.atlassian.net/browse/EMQX-9008
Fixes https://emqx.atlassian.net/browse/EMQX-9219
2023-05-03 20:00:38 -03:00
William Yang
c38cec77a7
Merge pull request #10417 from qzhuyan/perf/william/no-make-ref-in-get-config
perf(config): eliminate make_ref() calls in config get calls
2023-05-03 16:56:44 +02:00
William Yang
421efd561a
docs: Update changes/ce/perf-10417.en.md
Co-authored-by: Zaiming (Stone) Shi <zmstone@gmail.com>
2023-05-03 13:50:48 +02:00
William Yang
0428766a6e docs: changelog for forcing atom conf path 2023-05-03 09:59:18 +02:00
Zaiming (Stone) Shi
66112fceed
Merge pull request #10572 from zmstone/0502-merge-release-50-back-to-master
0502 merge release 50 back to master
2023-05-03 09:01:35 +02:00
Thales Macedo Garitezi
8aa7c014e7 perf(buffer_worker): avoid calling ets:info/2
(Almost?) fixes https://emqx.atlassian.net/browse/EMQX-9637

During the course of performance tests comparing the performance of
e5.0.3 and e4.4.16 regarding the webhook bridge in sync mode, we
observed that the throughput in e5.0.3 (sync) was much lower than in
e4.4.16: ~ 9 k msgs / s vs. ~ 50 k msgs / s, respectively.

Analyzing `observer_cli` output, we noticed that a lot of the time
both buffer workers and ehttpc processes was spent in `ets:info/2`.
That function was called to check the size of the inflight table when
updating metrics and checking if the inflight table was full.  Other
uses of `ets:info/2` were contained inside the arguments to some
`?tp/2` macro usages (https://github.com/kafka4beam/snabbkaffe/pull/60).

By using a specific record to track the size of the table, we managed
to improve the bridge performance to ~ 45 k msgs / s in sync mode.
2023-05-02 17:05:32 -03:00
William Yang
3d7201502b perf(config): avoid build new map in emqx_mqtt_caps:get_caps 2023-05-02 21:50:36 +02:00
Zaiming (Stone) Shi
d5f5f35787 Merge remote-tracking branch 'origin/release-50' into 0502-merge-release-50-back-to-master 2023-05-02 18:08:04 +02:00
Ilya Averyanov
791010a65c chore(topic_metrics): do not complain on nonexisting ets while topic metrics stop 2023-05-02 15:59:50 +03:00
Thales Macedo Garitezi
77f5e461a3 chore: bump ehttpc -> 0.4.8
Fixes https://emqx.atlassian.net/browse/EMQX-9656

See also https://github.com/emqx/ehttpc/pull/45

This fixes a race condition where the remote server would close the
connection before or during requests, and, depending on timing, an
`{error, normal}` response would be returned.  In those cases, we
should just retry the request without using up "retry credits".
2023-04-27 14:10:37 -03:00
Paulo Zulato
dd90b2f498 feat(oracle): Oracle Database integration 2023-04-27 13:07:20 -03:00