Class ConcurrentDOMDataBroker
java.lang.Object
org.opendaylight.mdsal.dom.spi.AbstractDOMDataBroker
org.opendaylight.controller.cluster.databroker.ConcurrentDOMDataBroker
- All Implemented Interfaces:
AutoCloseable
,DOMDataBroker
,DOMService<DOMDataBroker,
,DOMDataBroker.Extension> DOMTransactionFactory
,PingPongMergingDOMDataBroker
,ExtensibleObject<DOMDataBroker,
DOMDataBroker.Extension>
ConcurrentDOMDataBroker commits transactions concurrently. The 3
commit phases (canCommit, preCommit, and commit) are performed serially and non-blocking
(ie async) per transaction but multiple transaction commits can run concurrent.
- Author:
- Thomas Pantelis
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.opendaylight.mdsal.dom.api.DOMDataBroker
DOMDataBroker.CommitCohortExtension, DOMDataBroker.DataTreeChangeExtension, DOMDataBroker.Extension
-
Constructor Summary
ConstructorsConstructorDescriptionConcurrentDOMDataBroker
(Map<LogicalDatastoreType, DOMStore> datastores, Executor listenableFutureExecutor) ConcurrentDOMDataBroker
(Map<LogicalDatastoreType, DOMStore> datastores, Executor listenableFutureExecutor, DurationStatisticsTracker commitStatsTracker) ConcurrentDOMDataBroker
(DataBrokerCommitExecutor commitExecutor, DOMStore configDatastore, DOMStore operDatastore) -
Method Summary
Modifier and TypeMethodDescriptionprotected final void
void
close()
protected FluentFuture
<? extends CommitInfo> commit
(DOMDataTreeWriteTransaction transaction, DOMStoreThreePhaseCommitCohort cohort) protected final Map
<LogicalDatastoreType, DOMStore> toString()
Methods inherited from class org.opendaylight.mdsal.dom.spi.AbstractDOMDataBroker
createTransactionChain, newTransactionIdentifier, supportedExtensions
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.opendaylight.mdsal.dom.api.DOMTransactionFactory
newReadOnlyTransaction, newReadWriteTransaction, newWriteOnlyTransaction
Methods inherited from interface org.opendaylight.yangtools.concepts.ExtensibleObject
extension, findExtension
Methods inherited from interface org.opendaylight.mdsal.dom.spi.PingPongMergingDOMDataBroker
createMergingTransactionChain
-
Constructor Details
-
ConcurrentDOMDataBroker
public ConcurrentDOMDataBroker(Map<LogicalDatastoreType, DOMStore> datastores, Executor listenableFutureExecutor) -
ConcurrentDOMDataBroker
public ConcurrentDOMDataBroker(Map<LogicalDatastoreType, DOMStore> datastores, Executor listenableFutureExecutor, DurationStatisticsTracker commitStatsTracker) -
ConcurrentDOMDataBroker
public ConcurrentDOMDataBroker(DataBrokerCommitExecutor commitExecutor, DOMStore configDatastore, DOMStore operDatastore)
-
-
Method Details
-
close
public void close()- Specified by:
close
in interfaceAutoCloseable
-
commit
protected FluentFuture<? extends CommitInfo> commit(DOMDataTreeWriteTransaction transaction, DOMStoreThreePhaseCommitCohort cohort) -
toString
-
newReadOnlyTransaction
-
newWriteOnlyTransaction
-
newReadWriteTransaction
-
getTxFactories
-
checkNotClosed
protected final void checkNotClosed()
-