Multi-Host Record Lock Deadlock Feedback Mechanism
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Deadlocks occur in clustered databases when processes request locks for objects in an inconsistent order, leading to a situation where neither process can proceed, causing system inefficiency and potential data integrity issues.
Innovation Solution
A method involving a processor that retrieves entries from a global wait list, decreases a deadlock timer, and selects a victim from a deadlock victim selection list to resolve deadlocks by canceling or delaying lock requests, thereby freeing up resources and allowing the system to recover from deadlocks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If processes request locks for objects in different orders to achieve flexibility in accessing clustered database objects, then adaptability is improved, but deadlocks occur causing system reliability to deteriorate
Solution Approach 1:
The system performs preliminary deadlock detection by examining the global wait list and constructing potential deadlock cycles before actually granting locks. This allows the system to identify and prevent deadlock situations in advance, resolving the contradiction by maintaining flexibility while preventing reliability issues through proactive intervention
Solution Approach 2:
The system implements feedback mechanisms by continuously monitoring lock requests and wait queues, detecting potential deadlocks, and providing control signals to abort or reorder transactions. This closed-loop control maintains system reliability while preserving access flexibility through dynamic adjustment of lock granting decisions
2Reliability
If the system implements deadlock detection and resolution mechanisms to maintain reliability, then system reliability is improved, but device complexity increases
Solution Approach 1:
The deadlock management system is segmented into distinct functional components: global wait list maintenance, cycle detection algorithms, victim selection logic, and transaction abort mechanisms. This modular segmentation reduces overall complexity by making each component independent and manageable while collectively ensuring system reliability
Solution Approach 2:
The patent introduces intermediary data structures (global wait list, deadlock detection queue) and control mechanisms that mediate between lock requests and resource allocation. These intermediaries simplify the complexity by providing a structured interface for deadlock management without requiring complex changes to the core database operations
3Productivity
If the system aborts transactions to resolve deadlocks, then productivity is improved by preventing system stalls, but loss of time occurs due to transaction restarts
Solution Approach 1:
The system dynamically changes parameters such as transaction priority, lock timeout values, and victim selection criteria based on current system state and deadlock patterns. This allows the system to minimize productivity loss by adapting transaction management parameters in real-time, reducing unnecessary aborts while maintaining efficient deadlock resolution
Solution Approach 2:
The deadlock detection and resolution operates periodically through scheduled examinations of the global wait list and cycle detection. This periodic action balances productivity maintenance with controlled transaction aborts, preventing system stalls while managing time loss through rhythmic rather than continuous intervention
Data Source
AI summary
A method includes retrieving, by a processor, a first entry from a global wait list as a current waiting lock. The method further includes decreasing, by the processor, a deadlock timer of the current waiting lock. The method further includes determining, by the processor, whether the deadlock timer equals zero. The method further includes appending, by the processor, the current waiting lock to an end of a deadlock victim selection list, if the deadlock timer equals zero. The method further includes selecting, by the processor, a victim from the deadlock victim selection list.


