A deadlock happens when two or more transactions are waiting for each other to give up locks. Three different types of deadlocks can occur with Business Continuity Manager.
- Deadlocks within Business Continuity Manager-Managed Sessions
- Business Continuity Manager performs deadlock detection for all managed sessions (sessions associated with managed routing rules). Since Business Continuity Manager does its own locking for all requests of managed sessions, Business Continuity Manager detects deadlocks before they have a chance to happen on the underlying managed systems. Business Continuity Manager resolves the deadlock at the time of detection.
- Deadlocks on Underlying Business Continuity Manager-Managed Systems
- With passive sessions, deadlocks at the database are possible. Because passive sessions bypass Business Continuity Manager standard locking and deadlock detection and are sent straight to the system (through the dispatcher process), deadlocks can occur at the Teradata system. Once Teradata detects a deadlock, it automatically takes appropriate action to resolve the deadlock.
- Deadlocks Between Teradata and Business Continuity Manager
- With Business Continuity Manager passive routing, deadlocks may not occur on the managed server or within Business Continuity Manager independently, but the system deadlocks. Business Continuity Manager periodically obtains blocking locks information from the underlying systems, using the Teradata PMPC API. This lock information is combined with Business Continuity Manager lock information to detect deadlocks. If Business Continuity Manager finds a deadlock, Business Continuity Manager or the Teradata server takes action to resolve the deadlock.