Add MD-SAL artifacts
[controller.git] / opendaylight / md-sal / sal-distributed-datastore / src / main / yang / distributed-datastore-provider.yang
index af43f953ffb52ffdd24bd892fe60d8369a0d74da..4d3d438b3267b857457e4f7a5c767c52a9338c6a 100644 (file)
@@ -70,7 +70,7 @@ module distributed-datastore-provider {
          leaf max-shard-data-change-listener-queue-size {
             default 1000;
             type non-zero-uint32-type;
-            description "The maximum queue size for each shard's data store data change listeners.";
+            description "The maximum queue size for each shard's data store data change listener.";
          }
 
          leaf max-shard-data-store-executor-queue-size {
@@ -109,6 +109,33 @@ module distributed-datastore-provider {
             description "The maximum number of journal log entries to batch on recovery for a shard before committing to the data store.";
          }
 
+         leaf shard-transaction-commit-timeout-in-seconds {
+            default 30;
+            type non-zero-uint32-type;
+            description "The maximum amount of time a shard transaction three-phase commit can be idle without receiving the next messages before it aborts the transaction";
+         }
+
+         leaf shard-transaction-commit-queue-capacity {
+            default 20000;
+            type non-zero-uint32-type;
+            description "The maximum allowed capacity for each shard's transaction commit queue.";
+         }
+
+         leaf shard-initialization-timeout-in-seconds {
+            default 300; // 5 minutes
+            type non-zero-uint32-type;
+            description "The maximum amount of time to wait for a shard to initialize from persistence
+                         on startup before failing an operation (eg transaction create and change
+                         listener registration).";
+         }
+
+         leaf shard-leader-election-timeout-in-seconds {
+            default 30;
+            type non-zero-uint32-type;
+            description "The maximum amount of time to wait for a shard to elect a leader before failing
+                          an operation (eg transaction create).";
+         }
+
          leaf enable-metric-capture {
             default false;
             type boolean;
@@ -120,6 +147,19 @@ module distributed-datastore-provider {
              type non-zero-uint32-type;
              description "Max queue size that an actor's mailbox can reach";
          }
+
+         leaf persistent {
+            default true;
+            type boolean;
+            description "Enable or disable data persistence";
+         }
+
+        leaf shard-isolated-leader-check-interval-in-millis {
+            default 5000;
+            type heartbeat-interval-type;
+            description "The interval at which the leader of the shard will check if its majority
+                        followers are active and term itself as isolated";
+        }
     }
 
     // Augments the 'configuration' choice node under modules/module.