Dynamic Winner Loser Role Assignment for Deadlock Resolution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In data storage systems with active-active configurations, deadlocks can occur when both nodes attempt to acquire exclusive access to the same metadata pages concurrently, leading to performance degradation due to fixed permanent dedicated assignments of winner and loser roles, which result in load imbalance and fairness issues.

Innovation Solution

A method is introduced to dynamically assign winner and loser roles between nodes based on current processing states, allowing the system to resolve deadlocks by having the winner node proceed while the loser node aborts its transaction and retries, with role assignments switching periodically or based on transaction occurrences.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If fixed permanent dedicated assignments of winner and loser roles are used between nodes, then deadlock resolution can be achieved, but load imbalance and fairness issues occur

Engineering Contradiction:
Improvedeadlock resolution capabilityVSAvoidload balance and system fairness
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements dynamic role assignment where winner and loser roles are not permanently fixed to specific nodes but are reassigned based on current processing states and synchronization status. This allows the system to adapt role assignments in real-time, preventing permanent load imbalance while maintaining deadlock resolution capability.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the parameter of role assignment from static (fixed permanent dedication) to dynamic (based on current state and synchronization). By monitoring whether first processing is in progress and role assignment synchronization status, the system adjusts which node assumes the winner or loser role, achieving both reliability and fairness.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If role assignment of winner and loser roles is performed without checking current state synchronization, then deadlock resolution processing can be executed, but inconsistent role assignment may occur between nodes

Engineering Contradiction:
Improvedeadlock resolution speedVSAvoidrole assignment consistency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent performs preliminary checks of the first current state to determine whether first processing is in progress and whether role assignment is synchronized before executing deadlock resolution. This preliminary validation ensures that role assignments are consistent across nodes before resolution actions are taken, preventing inconsistent state.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system continuously monitors and checks the current state of the first node regarding processing status and role assignment synchronization. This feedback mechanism ensures that deadlock resolution only proceeds when role assignments are consistent, maintaining reliability while enabling timely resolution.

Inventive Principle:
Principle #23Feedback

3Reliability

If the system waits for role assignment synchronization before resolving deadlock, then consistent role assignment is maintained, but resolution time increases

Engineering Contradiction:
Improverole assignment consistencyVSAvoiddeadlock resolution time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs preliminary checks of the first current state to determine if role assignment is already synchronized before initiating deadlock resolution. By checking the synchronization status in advance, the system avoids unnecessary delays while ensuring consistency, resolving the time-consistency tradeoff.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12131200B2Balanced winner assignment for deadlock resolution
Publication Date: 2024.10.29 EMC IP HLDG CO LLC
  • US12131200B2 patent drawing
  • US12131200B2 patent drawing
  • US12131200B2 patent drawing

AI summary

Processing may be performed in accordance with a policy to assign roles of winner and loser between two nodes. The roles may be used in connection with deadlock resolution processing. A deadlock or potential deadlock may be detected between the two nodes performing processing for two transactions In response to detecting the deadlock or potential deadlock, using a current state may be used to determine whether to perform the deadlock resolution processing to resolve the deadlock or potential deadlock. The current state may indicate whether assignment of the winner and loser roles between the two nodes is in progress. Responsive to the current state indicating that processing is not in progress to assign roles of winner and loser between the two nodes, the current state may be used perform deadlock resolution processing to resolve the deadlock or potential deadlock. The current state may denote which node is the current winner.