Storage Controller Journal Recovery via Contention Resolution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional storage systems face challenges in coordinated recovery across multiple journals of different types, particularly during clean-up operations, where failures can lead to logical address range lock contentions that prevent proper recovery.

Innovation Solution

Implementing a contention resolution algorithm within a distributed storage controller to resolve logical address range lock contentions between different entries of multiple journals, such as atomic transaction write journals and synchronous replication write journals, during clean-up operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If clean-up operations are performed on multiple journals during normal operation, then journal maintenance and entry swapping between journals can be accomplished, but logical address range lock contentions occur when failures happen during these operations, preventing proper journal recovery

Engineering Contradiction:
Improvejournal maintenance capabilityVSAvoidjournal recovery reliability
Core Design Contradiction:
Ease of manufactureVSReliability

Solution Approach 1:

The system performs preliminary actions by acquiring locks on logical address ranges before executing clean-up operations or entry swaps between journals. This preliminary locking prevents concurrent modifications that could cause contentions during failure scenarios, ensuring that recovery operations can proceed without lock conflicts.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an intermediary mechanism in the form of a coordination layer that manages lock acquisition and release between multiple journals. This intermediary coordination ensures that when one journal is being cleaned up or entries are being swapped, conflicting operations on overlapping logical address ranges are properly serialized, preventing deadlocks and contentions during recovery.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If multiple journals of different types are used for different IO requests, then comprehensive IO request tracking and recovery capability is achieved, but coordination complexity increases during clean-up operations and failure recovery

Engineering Contradiction:
ImproveIO request handling versatilityVSAvoidjournal coordination complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements a universal lock management mechanism that works across all types of journals (write journals, read journals, atomic transaction journals, synchronous replication journals). This universal approach provides a common framework for handling lock contentions regardless of journal type, reducing the complexity that would otherwise arise from implementing separate coordination logic for each journal type.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The system segments the journal management complexity by dividing logical address spaces into distinct ranges and assigning locks to specific segments. This segmentation allows independent management of different journal types operating on different logical address ranges, reducing coordination overhead while maintaining comprehensive tracking capability across all journal types.

Inventive Principle:
Principle #1Segmentation

3Productivity

If entry swapping operations are performed between journals to optimize storage, then journal efficiency and space utilization improve, but lock contention risks increase during subsequent clean-up operations

Engineering Contradiction:
Improvejournal efficiencyVSAvoidlock contention risk
Core Design Contradiction:
ProductivityVSObject-affected harmful factors

Solution Approach 1:

Before performing entry swapping operations between journals, the system acquires preliminary locks on the logical address ranges involved in the swap. This preliminary action ensures that subsequent clean-up operations on either source or destination journals will not encounter lock contentions, as the locks are already in place to coordinate access during the swap and subsequent cleanup phases.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11249834B2Storage system with coordinated recovery across multiple input-output journals of different types
Publication Date: 2022.02.15 EMC IP HLDG CO LLC
  • US11249834B2 patent drawing
  • US11249834B2 patent drawing
  • US11249834B2 patent drawing

AI summary

An apparatus includes at least one processing device comprising a processor coupled to a memory, with the processing device being configured to maintain at least first and second journals for respective first and second different types of input-output requests, to move one or more entries between the first journal and the second journal under one or more specified conditions, to perform a clean-up operation for at least one of the first and second journals in conjunction with the moving of the one or more entries, and responsive to a failure occurring during the clean-up operation, to execute a contention resolution algorithm to resolve logical address range lock contentions between different entries of the first and second journals. The processing device illustratively comprises a storage controller of a storage system. The storage system may be, for example, a source storage system configured to carry out a synchronous replication process with a target storage system.