Class ReconciliationManager

  • All Implemented Interfaces:
    AutoCloseable

    public class ReconciliationManager
    extends Object
    implements AutoCloseable
    Copied from org.opendaylight.ovsdb.southbound.reconciliation.ReconciliationManager.

    This class provides the implementation of ovsdb southbound plugins configuration reconciliation engine. This engine provide interfaces to enqueue (one time retry)/ enqueueForRetry(periodic retry)/ dequeue (remove from retry queue) reconciliation task. Reconciliation task can be a connection reconciliation or configuration reconciliation of any ovsdb managed resource like bridge, termination point etc. This engine execute all the reconciliation task through a fixed size thread pool. If submitted task need to be retry after a periodic interval they are submitted to a single thread executor to periodically wake up and check if task is ready for execution. Ideally, addition of any type of reconciliation task should not require any change in this reconciliation manager execution engine.

    3-Node Cluster: Reconciliation manager is agnostic of whether it's running in single node cluster or 3-node cluster. It's a responsibility of the task submitter to make sure that it submit the task for reconciliation only if it's an owner of that device EXCEPT controller initiated Connection. Reconciliation of controller initiated connection should be done by all the 3-nodes in the cluster, because connection to individual controller can be interrupted for various reason.

    Created by Anil Vishnoi (avishnoi@Brocade.com) on 3/9/16.