Commit Graph

142 Commits

Author SHA1 Message Date
William Yang
7961f9206b
Merge pull request #8205 from qzhuyan/dev/william/emqx-conf-vm-args
fix(emqx_conf): add missing vm.args
2022-06-14 23:23:07 +02:00
William Yang
2ec1a5bdb8 fix(emqx_conf): add missing vm.args
- process_limit
- max_ports
- dist_buffer_size
- max_ets_tables
2022-06-14 10:31:29 +02:00
Shawn
c72a0c386f fix: set retry interval to 1s in test cases 2022-06-14 10:34:33 +08:00
Shawn
f4f263f91e fix: change the default retry_interval of cluster_rpc call to 1min 2022-06-13 22:52:51 +08:00
Zaiming (Stone) Shi
8518e71db1
Merge pull request #8182 from zmstone/0611-fix-config-update-race-condition
fix(cluster_rpc): config update race condition
2022-06-13 11:46:08 +01:00
Zaiming (Stone) Shi
2065be569e fix(emqx_cluster_rpc): fail fast on stale state
Due to:

* Cluster RPC MFA is not idempotent!
* There is a lack of rollback for callback's side-effects

For instance, when two nodes try to add a cluster-singleton
concurrently, one of them will have to wait for the table lock
then try to catch-up, then try to apply MFA.
The catch-up will have the singleton created, but the initiated
initiated multicall apply will fail causing the commit to rollback,
but not to 'undo' the singleton creation.
Later, the retries will fail indefinitely.
2022-06-12 20:18:48 +02:00
Zaiming (Stone) Shi
0e06e4acaa fix(emqx_conf): throw exception on clusetr_call falure
Not all callers handle error, some even ignore errors!
2022-06-12 20:18:48 +02:00
Zaiming (Stone) Shi
4fdd793071 refactor: move config template file to rel dir 2022-06-12 19:57:08 +02:00
Shawn
b0cd83254d fix: schema and desc for time_offset of the log handlers 2022-06-09 17:59:35 +08:00
Zhongwen Deng
c7cc2e85b2 fix: add default&example for schema 2022-06-06 09:52:10 +08:00
Zhongwen Deng
6c9b959651 fix: ct failed 2022-05-31 19:20:27 +08:00
Zhongwen Deng
1345b7e993 chore: bump hocon to 0.28.0 2022-05-31 19:20:27 +08:00
Zhongwen Deng
86113f3494 chore: don't gen example.conf in v5.0.0 2022-05-31 19:20:27 +08:00
Zhongwen Deng
9ec804ae03 feat: generate example.conf from schemas 2022-05-31 19:20:27 +08:00
Zhongwen Deng
8aa60cc0a5 feat: generate a minimized emqx.conf 2022-05-31 19:20:27 +08:00
Zhongwen Deng
b456ef711c fix: always commit to TargetTnxId when init 2022-05-30 16:35:14 +08:00
Thales Macedo Garitezi
d0c5de1da6
chore(config): move db configs under cluster/node keys 2022-05-26 14:02:22 -03:00
Thales Macedo Garitezi
e0054f6a4e
Merge pull request #7906 from thalesmg/doc-hide-per-shard
docs: hide shard transport config from docs
2022-05-11 11:02:48 -03:00
Thales Macedo Garitezi
135cf4fac2
docs: hide shard transport config from docs
Those configurations are too "magical" for the average user, and
keeping them in the docs might confuse users.
2022-05-10 11:40:49 -03:00
Zhongwen Deng
7c34c8a8b1 fix: retry if init_disaptch failed 2022-05-10 09:38:48 +08:00
Thales Macedo Garitezi
1be9d4f48f
Merge pull request #7731 from thalesmg/fix-copy-conf-override-startup
fix(emqx_conf): avoid crash/deadlock depending on node startup order
2022-04-27 10:01:06 -03:00
Zhongwen Deng
55be66a5eb feat: add self node to /cluster 2022-04-27 13:55:42 +08:00
Zhongwen Deng
a99c49e75f fix: limit file ^[/\_a-zA-Z0-9\.\-]*$ 2022-04-27 13:55:42 +08:00
Zhongwen Deng
8cfcb10c7e fix: make logger config options more specific 2022-04-27 13:55:42 +08:00
Thales Macedo Garitezi
67ed7ba7b8
refactor: do not differentiate node roles 2022-04-26 12:14:38 -03:00
Thales Macedo Garitezi
8519948742
refactor: use macro to denote initial transaction id 2022-04-26 12:03:53 -03:00
Thales Macedo Garitezi
6b969c5c84
fix(emqx_conf): avoid crash/deadlock depending on node startup order
Depending on the order that a cluster of core nodes might be stopped
and then restarted, there might be a deadlock or crash during the
configuration loading.  The nodes try to check with each other which
has the latest cluster overrides and copy that info.  However, in some
cases, Mnesia on node A might still think that it needs to consult
another node C that is still down, so that this node proceeds with its
boot sequence but `mnesia:wait_for_tables` in `emqx_cluster_rpc` is
stuck.  Meanwhile, a node B can come up, try to copy from the sole
online node A, and fail because it's not ready yet.
2022-04-26 12:03:53 -03:00
zhongwencool
4b763a3a12
Merge pull request #7742 from zhongwencool/schema-namespace
fix: add namespace to schema
2022-04-26 09:26:04 +08:00
Zaiming (Stone) Shi
a4feb3e6e9 style: reformat emqx_auto_subscribe and emqx_conf 2022-04-25 18:05:10 +02:00
Zhongwen Deng
7d9403d056 fix: add namespace to schema 2022-04-24 15:47:23 +08:00
Shawn
984a26945c docs: add i18n ids 2022-04-23 03:51:38 +08:00
JimMoen
14e0296221
Merge pull request #7728 from zhongwencool/fix-swagger
fix: swagger crash/ copy conf failed from core node
2022-04-22 20:49:21 +08:00
Zaiming (Stone) Shi
ce902b5405 refactor(bin/emqx): speed up boot
The main slow-down is the overheads of booting up beam with the
'start_clean' boot file (which loads all modules).

Prior to this change, beam is started multiple times in order to
resolve configuration values.

After this change:
* For boot commands such as 'start', 'console' and
  'foreground', it starts beam twice:
  - 1st is to check platform compatibility
  - 2nd is to resolve all configs required for boot in a batch
* For non-boot commands, such as 'ctl' and 'ping', it does not
  require to start beam for config resolution at all
2022-04-22 11:35:50 +02:00
Zhongwen Deng
908019fff3 fix: only copy conf from ready node 2022-04-22 17:28:28 +08:00
Zhongwen Deng
05b4ed58e0 feat: add emqx_conf_schema i18n conf 2022-04-21 22:17:59 +08:00
EMQ-YangM
216ebade6d feat(emqx_conf_schema): log config add i18n support 2022-04-20 17:04:30 +08:00
Thales Macedo Garitezi
f691d9ef9d
Merge pull request #7598 from thalesmg/gen-rpc-oc
feat: use gen_rpc ordered cast for `emqx_rpc:cast/5`
2022-04-19 09:06:51 -03:00
Zhongwen Deng
700c2cfb39 feat: move *i18n.conf from etc to i18n dir 2022-04-15 10:43:37 +08:00
Zhongwen Deng
630cc8ee34 feat: support i18n with desc struct. 2022-04-15 08:42:13 +08:00
Thales Macedo Garitezi
3602e7552d
feat: use gen_rpc ordered cast for emqx_rpc:cast/5
From: https://github.com/emqx/emqx/pull/6554
2022-04-12 17:22:03 -03:00
Zaiming (Stone) Shi
356fbf6ce1
Merge pull request #7519 from zmstone/0405-5.0-sync-ssl-lib-from-4.3
5.0 refactor: delete deprecated emqx_plugin_libs_ssl module
2022-04-05 22:57:56 +01:00
Zaiming (Stone) Shi
32694e601a refactor: rename RUNNER_ETC_DIR to EMQX_ETC_DIR 2022-04-05 23:08:45 +02:00
ieQu1
99b3f2f83e docs(schema): Document missing records and fields 2022-04-04 23:58:43 +02:00
Thales Macedo Garitezi
59d5478d4e
Merge pull request #7463 from thalesmg/mria-shard-transport
feat: allow customizing per-shard transaction log transport
2022-04-01 13:16:28 -03:00
Thales Macedo Garitezi
5748b9b492
feat: allow customizing per-shard transaction log transport 2022-03-30 11:11:30 -03:00
ieQu1
d23a88d0a9 docs(schema): Minor improvements to spelling and formatting. 2022-03-30 13:05:56 +02:00
Dmitrii
fcc99b484f
docs(schema): Apply suggestions from code review
Co-authored-by: Thales Macedo Garitezi <thalesmg@gmail.com>
2022-03-30 10:12:04 +02:00
ieQu1
fff6bffa0c docs(schema): Add descriptions of the records 2022-03-29 14:09:32 +02:00
Zhongwen Deng
86f455fd3a fix: cluster conf must be readonly; add dashboard listener update hook 2022-03-25 18:43:15 +08:00
Dmitrii
f4125fbe0d
Merge pull request #7386 from ieQu1/doc-schema-3
docs(schema): Add descriptions to the schema
2022-03-24 14:05:38 +01:00