Document debug-transactions
[controller.git] / opendaylight / md-sal / sal-clustering-config / src / main / resources / initial / datastore.cfg
index cfbf9450aa2b77661f21bd00904a995b48c9c3d7..20d28919f9bbae35072d438f108258a6b5f4da63 100644 (file)
@@ -24,40 +24,37 @@ operational.persistent=false
 # The maximum amount of time a shard transaction can be idle without receiving any messages before it self-destructs.
 #shard-transaction-idle-timeout-in-minutes=10
 
-# The maximum amount of time a shard transaction three-phase commit can be idle without receiving the 
+# The maximum amount of time a shard transaction three-phase commit can be idle without receiving the
 # next messages before it aborts the transaction.
 #shard-transaction-commit-timeout-in-seconds=30
 
 # The maximum allowed capacity for each shard's transaction commit queue.
 #shard-transaction-commit-queue-capacity=20000
 
-# The maximum amount of time to wait for a shard to initialize from persistence on startup before 
+# 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).
 #shard-initialization-timeout-in-seconds=300
 
-# The maximum number of journal log entries to batch on recovery for a shard before committing to the data store.
-#shard-journal-recovery-log-batch-size=1000
-
 # The minimum number of entries to be present in the in-memory journal log before a snapshot is to be taken.
 #shard-snapshot-batch-count=20000
 
 # The percentage of Runtime.totalMemory() used by the in-memory journal log before a snapshot is to be taken.
 #shard-snapshot-data-threshold-percentage=12
 
-# The interval at which the leader of the shard will check if its majority followers are active and 
+# The interval at which the leader of the shard will check if its majority followers are active and
 # term itself as isolated.
 #shard-isolated-leader-check-interval-in-millis=5000
 
-# The number of transaction modification operations (put, merge, delete) to batch before sending to the 
-# shard transaction actor. Batching improves performance as less modifications messages are sent to the 
+# The number of transaction modification operations (put, merge, delete) to batch before sending to the
+# shard transaction actor. Batching improves performance as less modifications messages are sent to the
 # actor and thus lessens the chance that the transaction actor's mailbox queue could get full.
-#shard-batched-modification-count=100
+#shard-batched-modification-count=1000
 
 # The maximum amount of time for akka operations (remote or local) to complete before failing.
 #operation-timeout-in-seconds=5
 
-# The initial number of transactions per second that are allowed before the data store should begin 
-# applying back pressure. This number is only used as an initial guidance, subsequently the datastore 
+# The initial number of transactions per second that are allowed before the data store should begin
+# applying back pressure. This number is only used as an initial guidance, subsequently the datastore
 # measures the latency for a commit and auto-adjusts the rate limit.
 #transaction-creation-initial-rate-limit=100
 
@@ -73,3 +70,27 @@ operational.persistent=false
 # The maximum queue size for each shard's data store executor.
 #max-shard-data-store-executor-queue-size=5000
 
+# A fully qualified java class name. The class should implement
+# org.opendaylight.controller.cluster.raft.policy.RaftPolicy. This java class should be
+# accessible to the distributed data store OSGi module so that it can be dynamically loaded via
+# reflection. For now let's assume that these classes to customize raft behaviors should be
+# present in the distributed data store module itself. If this property is set to a class which
+# cannot be found then the default raft policy will be applied
+#custom-raft-policy-implementation=
+
+# When fragmenting messages thru the akka remoting framework, this is the maximum size in bytes
+# for a message slice.
+#maximum-message-slice-size=20480000
+
+# Enable tell-based protocol between frontend (applications) and backend (shards). Using this protocol
+# should avoid AskTimeoutExceptions seen under heavy load. Defaults to false (use ask-based protocol).
+#use-tell-based-protocol=true
+
+# Tune the maximum number of entries a follower is allowed to lag behind the leader before it is
+# considered out-of-sync. This flag may require tuning in face of a large number of small transactions.
+#sync-index-threshold=10
+
+# Record new transaction allocation stack trace, useful for debugging.  This makes the log include
+# the stack trace of the creator of the Tx when there is an exception when the transaction is submitted 
+# (e.g. for a failed validation).  Defaults to false due to performance impact.
+#transaction-debug-context-enabled=true