Bug 7449: Add maximum-message-slice-size config param
[controller.git] / opendaylight / md-sal / sal-distributed-datastore / src / main / yang / distributed-datastore-provider.yang
index 2ae5f1878512ae0a90137604cd890c032e776530..8b3d72d6948ac1b3976c5b9c14e297d1e0eb8454 100644 (file)
@@ -228,18 +228,42 @@ module distributed-datastore-provider {
         }
 
         leaf shard-snapshot-chunk-size {
+            status deprecated;
             default 2048000;
             type non-zero-uint32-type;
             description "When sending a snapshot to a follower, this is the maximum size in bytes for
                          a chunk of data.";
         }
 
+        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.";
+        }
     }
 
     // Augments the 'configuration' choice node under modules/module.