From a92970a9047c72a1181a8f3b7f2bac15344825f2 Mon Sep 17 00:00:00 2001
From: k32 <10274441+k32@users.noreply.github.com>
Date: Tue, 30 Nov 2021 11:44:15 +0100
Subject: [PATCH] feat(mria): Add RPC-related configuration to the schema
---
apps/emqx_conf/src/emqx_conf_schema.erl | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/apps/emqx_conf/src/emqx_conf_schema.erl b/apps/emqx_conf/src/emqx_conf_schema.erl
index d8bb2423b..bd897d730 100644
--- a/apps/emqx_conf/src/emqx_conf_schema.erl
+++ b/apps/emqx_conf/src/emqx_conf_schema.erl
@@ -347,6 +347,27 @@ to rlog
.
List of core nodes that the replicant will connect to.
Note: this parameter only takes effect when the backend
is set
to rlog
and the role
is set to replicant
.
+"""
+ })}
+ , {"rpc_module",
+ sc(hoconsc:enum([gen_rpc, rpc]),
+ #{ mapping => "mria.rlog_rpc_module"
+ , default => gen_rpc
+ , desc => """
+Protocol used for pushing transaction logs to the replicant nodes.
+Important! This setting should be the same on all nodes in the cluster.
+Important! Changing this setting in the runtime is not allowed.
+"""
+ })}
+ , {"tlog_push_mode",
+ sc(hoconsc:enum([sync, async]),
+ #{ mapping => "mria.tlog_push_mode"
+ , default => sync
+ , desc => """
+In sync mode the core node waits for an ack from the replicant nodes before sending the next
+transaction log entry.
+Important! This setting should be the same on all nodes in the cluster.
+Important! Changing this setting in the runtime is not allowed.
"""
})}
];