Commit Graph

7248 Commits

Author SHA1 Message Date
firest
56a6b699ac fix: port the emqx_calendar from v4.4 2023-05-22 09:55:31 +08:00
Paulo Zulato
9c15720fee
Merge pull request #10726 from paulozulato/fix-large-health-check-interval
fix: validate range for some bridge options
2023-05-18 19:25:24 -03:00
Thales Macedo Garitezi
56634e5238
Merge pull request #10725 from thalesmg/bump-gproc-091-r50
chore: bump gproc -> 0.9.0.1 (r5.0)
2023-05-18 10:38:06 -03:00
Thales Macedo Garitezi
49424cc9a2
Merge pull request #10733 from thalesmg/fix-pulsar-sensitive-struct-r50
fix(pulsar): mark whole auth struct as sensitive, update dashboard version and improve bridge type matching errors (r5.0)
2023-05-18 10:15:10 -03: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
Thales Macedo Garitezi
5d5c16a56d feat(bridges): use union member selector function for better error messages 2023-05-17 17:57:29 -03:00
Thales Macedo Garitezi
659cf64ad7 feat(pulsar): use an union member selector for better error messages 2023-05-17 17:56:53 -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
dcccc0910a fix(pulsar): mark whole auth struct as sensitive (r5.0)
Fixes https://emqx.atlassian.net/browse/EMQX-9900

I tried to patch hocon itself to filter the sensitive data, but the
way it's currently structured doesn't seem to keep that field
metadata.  So, for now, we can just mark the whole auth union as
sensitive.
2023-05-17 11:50:22 -03:00
Thales Macedo Garitezi
060efd6964 chore: bump gproc -> 0.9.0.1 (r5.0)
Includes this fix: https://github.com/uwiger/gproc/pull/193
2023-05-17 11:05:44 -03: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
Ilya Averyanov
c54d04450c
Merge pull request #10723 from savonarola/0516-improve-rebalance-logging
Improve rebalance logging
2023-05-17 09:21:10 +03:00
某文
2b99a9b988 feat: hide resource_opts's request_timeout 2023-05-17 13:41:11 +08:00
lafirest
b5da9eb9ad
Merge pull request #10728 from lafirest/fix/port_ruleengine_export_colums
fix: cannot access columns exported by FOREACH in DO clause
2023-05-17 11:46:17 +08:00
firest
1f7ede90a4 chore: update app version && changes 2023-05-17 11:01:31 +08:00
firest
18043150be fix: cannot access columns exported by FOREACH in DO clause 2023-05-17 10:55:47 +08:00
JianBo He
0dd3325d70
Merge pull request #10711 from lafirest/fix/fix_infinity_bucket
fix(limiter): a bucket with an infinity rate shouldn't be added to limiter server
2023-05-17 10:40:59 +08:00
Thales Macedo Garitezi
85089a3210 fix(buffer_worker): correctly flush the buffer workers when inflight table room is made
The previous commit uncovered another bug that was hidden by it:
`maybe_flush_after_async_reply` was sending a message to the wrong
PID.  It was sending a message to `self()` meaning to target a buffer
worker, but `self()` in that context is never the buffer worker, it's
the connector's worker.

This change also revealed a race condition where the buffer workers
could stop flushing messages.  So we piggy-backed on the atomic update
of the table size count to check if the buffer worker should be poked
to continue flushing.  This allows us to get rid of
`maybe_flush_after_async_reply` altogether.
2023-05-16 17:15:42 -03:00
Ilya Averyanov
d4b60c5610 chore(rebalance): improve debug logging 2023-05-16 18:59:12 +03:00
Thales Macedo Garitezi
cebde87114 fix(pulsar): use a binary duration as default health_check_interval
Fixes https://emqx.atlassian.net/browse/EMQX-9885

The frontend needs the default value to match the duration (binary)
type to display correctly.
2023-05-16 11:29:29 -03: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
某文
a2aa6b4666 chore: make ci happy again 2023-05-16 21:29:52 +08:00
firest
255f616d26 chore: bump emqx app version 2023-05-16 16:36:36 +08:00
某文
7d7c069257 feat: update wehbook's request_timeout into resource_opts 2023-05-16 15:32:43 +08:00
firest
50e7de9db2 fix(limiter): a bucket with an infinity rate shouldn't be added to limiter server 2023-05-16 13:30:41 +08:00
某文
5ef2a603a1 chore: bump to v5.0.25 2023-05-12 20:27:36 +08:00
firest
95a67f390f fix(limiter): adjust type for compatibility 2023-05-12 18:41:41 +08:00
firest
a38b270b03 fix(limiter): fix that update node-level limiter config will not working 2023-05-12 17:39:49 +08:00
Zhongwen Deng
90549abec7 fix: crash when sysmon.os.mem_check_interval = disabled 2023-05-12 14:42:23 +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
zhongwencool
1aceed7b7c
Merge pull request #10672 from zhongwencool/fix-listener-default
fix: bad listeners default ssl_options
2023-05-12 14:28:23 +08:00
firest
7d46fe8390 chore: bump influxdb version && update changes 2023-05-12 11:48:56 +08:00
firest
6497bcae46 refactor(influxdb): move influxdb bridge into its own app 2023-05-12 11:48:49 +08:00
某文
91f97f6c29 fix: ocsp cache SUITE failed 2023-05-11 21:26:23 +08:00
某文
6056b0e7a8 fix: ensure atom key for emqx_config:get 2023-05-11 17:40:03 +08:00
Zhongwen Deng
3d41449fde fix: only fill cerf_file default in server side 2023-05-11 17:33:18 +08:00
Zhongwen Deng
78c2c53daa fix: authn init is empty 2023-05-11 16:26:47 +08:00
Zhongwen Deng
d9f9e951ec fix: bad listeners default ssl_options 2023-05-11 16:25:25 +08:00
lafirest
d3a7d6d9d8
Merge pull request #10668 from lafirest/fix/max_conn_rate
fix(limiter): fix an error when setting `max_conn_rate` in a listener
2023-05-11 15:49:44 +08:00
firest
b7126257a5 fix(limiter): fix an error when setting max_conn_rate in a listener 2023-05-11 13:52:13 +08:00
JimMoen
fbd516d740
Merge pull request #10622 from JimMoen/refactor-dynamo-bridge
refactor(dynamo): move dynamo bridge into its own app
2023-05-11 11:00:50 +08:00
lafirest
c8758190b5
Merge pull request #10662 from lafirest/refactor/pgsql_dir
refactor(pgsql): move pgsql && matrix && timescale bridges into their own app
2023-05-11 10:05:51 +08:00
Kjell Winblad
296c870896
Merge pull request #10664 from kjellwinblad/kjell/fix/rabbitmq_and_iotdb_issues
Fix small RabbitMQ and IotDB issues
2023-05-10 14:48:20 +02:00
JimMoen
e32ab10d01
chore: rename dynamo template files 2023-05-10 18:49:21 +08:00
JimMoen
8914e006c2
refactor(dynamo): move dynamo bridge into its own app 2023-05-10 18:49:21 +08:00
firest
f6a2f752ff chore: update changes && bump app versions 2023-05-10 17:23:26 +08:00
Kjell Winblad
41f5eff014 fix: issues with the RabbitMQ config 2023-05-10 10:53:40 +02:00
firest
066ed5c6ec refactor(pgsql): move pgsql && matrix && timescale bridges into their own app 2023-05-10 16:51:33 +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
Kjell Winblad
08af90daa9 fix: the iotdb password field so it has the password format 2023-05-10 10:38:40 +02:00