Commit Graph

14084 Commits

Author SHA1 Message Date
Stefan Strigler a81d1a4618
Merge pull request #10066 from sstrigler/EMQX-8932-bridge-api-reports-500-for-most-errors-when-starting-a-resource
fix: return human readable error message for most common cases
2023-03-06 14:13:34 +01:00
Thales Macedo Garitezi 9825998207 chore(gcp_pubsub): just deprecate `request_timeout` instead of removing 2023-03-06 10:12:38 -03:00
Thales Macedo Garitezi f95a30ae89 fix(webhook): convert `request_timeout`s in root and resource_opts 2023-03-06 10:12:38 -03:00
Thales Macedo Garitezi 9b087a21f5 fix(gcp_pubsub): remove conflicting `request_timeout` option
Since the buffer worker schema already contains that configuration,
having it two places can lead to quite confusing behavior.
2023-03-06 10:12:38 -03:00
Thales Macedo Garitezi 167b7a212f refactor(buffer_worker): avoid starting 0-time timers 2023-03-06 10:12:38 -03:00
Thales Macedo Garitezi e9ffabf936 fix(buffer_worker): add batch time automatic adjustment
To avoid message loss due to misconfigurations, we adjust `batch_time`
based on `request_timeout`.  If `batch_time` > `request_timeout`, all
requests will timeout before being sent if the message rate is low.
Even worse if `pool_size` is high.  We cap `batch_time` at
`request_timeout div 2` as a rule of thumb.
2023-03-06 10:12:38 -03:00
William Yang 27c5389fdc fix(quic): inval listener option casue segfault
bump quicer to 0.0.113
2023-03-06 14:05:33 +01:00
Stefan Strigler bd7e789bea
Merge pull request #10074 from sstrigler/EMQX-8550-put-authorization-sources-type-doesnt-check-type-constraint
fix(emqx_authz): check if type param matches type in body
2023-03-06 13:39:59 +01:00
Ivan Dyachkov b8c0212113
Merge pull request #10065 from id/ci-release-packages-for-raspbian
ci: release packages for raspbian
2023-03-06 12:31:21 +00:00
Thales Macedo Garitezi 8fbb948b6f test: fix flaky mqtt bridge test
Sometimes, this test fails because the metrics are still in the
inflight phase.
2023-03-06 09:09:33 -03:00
Stefan Strigler d0ea7f4647 fix(emqx_authz): check if type param matches type in body 2023-03-06 11:10:31 +01:00
Zhongwen Deng f498a3538b fix: update max_awaiting_rel in session 2023-03-06 17:06:40 +08:00
Zaiming (Stone) Shi a4aece396a
Merge pull request #10052 from zmstone/0301-optimize-boot-error-log
0301 optimize boot failure logs
2023-03-06 08:32:15 +01:00
Ivan Dyachkov 0a70f676a9 ci: release packages for raspbian 2023-03-04 10:58:12 +01:00
Kjell Winblad a638cc6566
Merge pull request #9985 from kjellwinblad/kjell/feat/clickhouse_bridge_2/EMQX-8391
feat: add clickhouse database bridge
2023-03-04 07:05:05 +01:00
Serge Tupchii b3907128e8 fix: set statsd flush_time_interval = max(flush_time_interval, sample_time_interval)
flush_time_interval is used to calculate statsd sampling rate:
    rate = sample_time_interval / flush_time_interval
This means that flush_time_interval must always be greater than (or equal to)
sample_time_interval, otherwise, the sampling rate will be invalid (> 1).

Relates to EMQX-9055
2023-03-03 22:24:00 +02:00
Serge Tupchii bff087f40a fix: restart emqx_statsd with the updated configuration
emqx_config_handler:post_config_update/5 cb is called before an updated config is saved.
Thus, a process being restarted in that callback cannot get the latest config by calling
emqx_conf:get/2, because that update is not saved yet.

Relates to EMQX-9055
2023-03-03 22:24:00 +02:00
Stefan Strigler 570bf165af fix: return human readable error message for most common cases 2023-03-03 16:49:09 +01:00
Ivan Dyachkov d90e7d568e
Merge pull request #10064 from id/230303-chore-reenable-apps-version-check-release-50
230303 chore reenable apps version check release 50
2023-03-03 14:19:09 +00:00
Ivan Dyachkov c01f62a1c1 chore: bump apps versions 2023-03-03 13:58:32 +01:00
Ivan Dyachkov ea68a75725 chore: reenable scripts/apps-version-check.sh 2023-03-03 13:56:21 +01:00
Kjell Winblad c24a84e370 docs: fix spelling 2023-03-03 12:06:18 +01:00
Stefan Strigler 6cbabab35c
Merge pull request #10059 from sstrigler/EMQX-8740-e-5-0-optimize-the-api-to-return-error-messages
rule engine api format errors in a human readable way
2023-03-03 11:31:41 +01:00
Stefan Strigler 6ebd3dc747 feat(emqx_rule_engine): decompose error tuples
sqltester for instance returns sth like {"...sytnax error...", OrigSql}
2023-03-03 09:59:24 +01:00
Stefan Strigler 44eca1fa72 fix(emqx_rule_engine): don't crash if we can't encode json 2023-03-03 09:36:13 +01:00
Stefan Strigler 072d310507 style: fix zn translation 2023-03-03 09:32:28 +01:00
Kjell Winblad 6a87b119b0 docs: add word to spellcheck dict 2023-03-03 08:32:43 +01:00
Stefan Strigler 64b5e9585e feat(emqx_rule_engine): API format errors in a human readable way 2023-03-02 16:49:11 +01:00
William Yang 6649a4f7d1 docs: add change logs 2023-03-02 15:57:01 +01:00
Zaiming (Stone) Shi 4eb9a69df0 feat(bin/emqx): diagnose boot failure
Prior to this change, when EMQX daemon mode failed to start
it's not quite easy for users to understand what went wrong.
All the know is the node did not start in time
and then instructed to boot the node in 'console' mode wishing
for some logs.
However, the node might actuay be running, causing 'console' mode
to fail with a different reason.

With this change, after a filure of daemon mode boot,
we issue a diagnosis.
1. if node can not be found from ps -ef, instruct the user
   to find information in erlang.log.N
2. if the node is found running, but not responding to pings
   instruct the user to check if the node name is
   resolvable and reachable
3. if the node is responding to pings but emqx app is not
   running, then it's likely a bug. so the user is advised
   to report a github issue.
2023-03-02 14:46:09 +01:00
Zaiming (Stone) Shi c4c0c9cc7e fix(bin/emqx): no need to ping node before attach 2023-03-02 14:32:10 +01:00
Zaiming (Stone) Shi 8a9984cce9 docs: add a comment in docker README.md 2023-03-02 14:32:10 +01:00
William Yang baf01617cd fix(quic): mark unsupp TLS options deprecated 2023-03-02 14:03:44 +01:00
SergeTupchiy 806503e36e
Merge pull request #10054 from emqx/9031-handle-obfuscated-fields-in-bridges-probe
fix: Handle obfuscated fields in bridges_probe API
2023-03-02 14:49:53 +02:00
Stefan Strigler be3fd24019
Merge pull request #10056 from sstrigler/EMQX-9064-bridge-api-do-not-return-403-in-case-of-inconsistency-in-application-logic
Bridge API: do not return 403 in case of inconsistency in application logic
2023-03-02 13:34:29 +01:00
Kjell Winblad 65f4a6feab build: fix diverged dependencies 2023-03-02 13:02:11 +01:00
Zaiming (Stone) Shi 8ec8b9075e
Merge pull request #10057 from id/ci-build-slim-packages-for-release-branch
ci: build slim packages on push to release-50
2023-03-02 12:31:04 +01:00
Kjell Winblad 96318bda1d build: run run.sh tests without being asked for sudo password
This commit makes it possible to run the scripts/ct/run.sh script
without being asked for sudo password if one instead wants to use the
run docker container with root user trick to reset owner of files.

One simply has to set the environment variable
EMQX_TEST_DO_NOT_RUN_SUDO.
2023-03-02 12:22:11 +01:00
Kjell Winblad 67acdf0888 feat: add clickhouse database bridge
This commit adds a Clickhouse bridge to EMQX 5. The bridge is similar to
the Clickhouse bridge in the 4.4, but adds the possibility to use
different formats (such as JSON) for values to be inserted.
2023-03-02 12:22:11 +01:00
Stefan Strigler 8bdef1300b
style: fix punctuation changes/ce/fix-10056.en.md
Co-authored-by: ieQu1 <99872536+ieQu1@users.noreply.github.com>
2023-03-02 12:16:17 +01:00
Ivan Dyachkov 258329b9c7 ci: build slim packages on push to release-50 2023-03-02 11:57:38 +01:00
Stefan Strigler 57ea098d90 chore: add changelog 2023-03-02 11:30:38 +01:00
Stefan Strigler 39e1cf9502 fix(emqx_bridge): let it crash instead of 400 on failed reset 2023-03-02 11:23:07 +01:00
Stefan Strigler 4c23ab097d fix(emqx_bridge): return 400 if operation not possible 2023-03-02 11:23:07 +01:00
Stefan Strigler 9fb74bfc87
Merge pull request #10050 from sstrigler/EMQX-9063-bridges-api-consistently-return-404-if-resource-does-not-exist
fix: consistently return 404 in case bridge is not found or invalid
2023-03-02 11:20:56 +01:00
Stefan Strigler 680a4362d1 fix: match macro variables 2023-03-02 10:12:56 +01:00
Zaiming (Stone) Shi 6679bfc49d
Merge pull request #10053 from id/chore-ensure-docker-latest-tag-release-50
Chore ensure docker latest tag release 50
2023-03-02 09:26:22 +01:00
Stefan Strigler 76f97010bb style: change wording 2023-03-02 09:14:52 +01:00
Serge Tupchii 77dea0c77a fix: Handle obfuscated fields in bridges_probe API 2023-03-01 22:05:23 +02:00
Ivan Dyachkov 6be9967d2d chore: add a reminder to push the tags 2023-03-01 20:51:12 +01:00