- // Augments the 'configuration' choice node under modules/module.
- augment "/config:modules/config:module/config:configuration" {
- case distributed-config-datastore-provider {
- when "/config:modules/config:module/config:type = 'distributed-config-datastore-provider'";
- container config-schema-service {
- uses config:service-ref {
- refine type {
- mandatory false;
- config:required-identity sal:schema-service;
- }
- }
- }
-
- container config-actor-system-provider {
- uses config:service-ref {
- refine type {
- mandatory false;
- config:required-identity actor-system:actor-system-provider-service;
- }
- }
- }
-
- container config-properties {
- uses data-store-properties;
- }
+ leaf maximum-message-slice-size {
+ default 2048000;
+ type non-zero-uint32-type;
+ description "When fragmenting messages thru the akka remoting framework, this is the
+ maximum size in bytes for a message slice.";
+ }
+
+ leaf use-tell-based-protocol {
+ default false;
+ type boolean;
+ description "Use a newer protocol between the frontend and backend. This feature is considered
+ exprerimental at this point.";
+ }
+
+ leaf file-backed-streaming-threshold-in-megabytes {
+ default 128;
+ type non-zero-uint32-type;
+ description "When streaming large amounts of data, eg when sending a snapshot to a follower, this
+ is the threshold in terms of number of megabytes before it should switch from storing in memory to
+ buffering to a file.";
+ }
+
+ leaf sync-index-threshold {
+ default 10;
+ type non-zero-uint32-type;
+ description "Permitted synchronization lag, expressed in terms of RAFT entry count. It a follower's
+ commitIndex trails the leader's journal by more than this amount of entries the follower
+ is considered to be out-of-sync.";
+ }
+
+ leaf backend-aliveness-timer-interval-in-seconds {
+ default 30;
+ type non-zero-uint32-type;
+ description "The timer interval whereby, on expiration after response inactivity from the back-end,
+ the connection to the back-end is torn down and reconnection is attempted.";
+ }
+
+ leaf frontend-request-timeout-in-seconds {
+ default 120; // 2 minutes
+ type non-zero-uint32-type;
+ description "The timeout interval whereby client frontend transaction requests are failed.";
+ }
+
+ leaf frontend-no-progress-timeout-in-seconds {
+ default 900; // 15 minutes
+ type non-zero-uint32-type;
+ description "The timeout interval whereby the client front-end hasn't made progress with the
+ back-end on any request and terminates.";