Persistent Reservation Command Filtering in Distributed Storage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Distributed storage systems using Persistent Reservations face issues with data synchronization between group leaders and backup group leaders, leading to potential 'split-brain' syndrome and data integrity problems due to communication failures, causing incoming commands to be blocked and resulting in data inaccessibility.

Innovation Solution

Implementing a filtering mechanism for Persistent Reservation commands, where commands indicating persistence through power loss are checked for synchronization, and those without this feature are processed regardless of synchronization state, while commands requesting persistence are conditionally processed based on synchronization state, reducing data interruptions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If synchronization checking is performed for all Persistent Reservation commands, then data integrity is improved, but command processing speed deteriorates and data accessibility worsens

Engineering Contradiction:
Improvedata integrityVSAvoidcommand processing speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies different synchronization checking policies to different types of commands based on their persistence requirements. Non-persistent commands (without persistence through power loss indication) are processed without synchronization checking, while persistent commands are checked for synchronization. This local differentiation resolves the contradiction by applying strict integrity checks only where necessary.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent uses the persistence parameter (persistence through power loss indication) as a conditional parameter to change the processing behavior. When this parameter is false, commands are processed immediately without synchronization checks; when true, synchronization checks are performed. This parameter-based conditional processing resolves the speed-integrity tradeoff.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If synchronization checking is performed for all Persistent Reservation commands, then data integrity is improved, but data accessibility deteriorates due to command blocking

Engineering Contradiction:
Improvedata integrityVSAvoiddata accessibility
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent creates different processing paths based on command type: non-persistent commands access storage immediately without synchronization barriers, while persistent commands wait for synchronization. This local quality approach ensures data accessibility for non-critical operations while maintaining integrity for persistent operations.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

By allowing non-persistent commands to proceed without synchronization checks, the system maintains continuous operation for these commands. Only persistent commands are blocked during synchronization issues, ensuring that useful actions continue uninterrupted where possible while maintaining integrity where required.

Inventive Principle:
Principle #20Continuity of useful action

3Reliability

If full synchronization is required before processing commands, then split-brain syndrome is prevented, but system availability deteriorates

Engineering Contradiction:
Improvesplit-brain preventionVSAvoidsystem availability
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent applies synchronization requirements selectively: non-persistent commands are processed locally without requiring group leader synchronization, preventing split-brain for these operations. Persistent commands do require synchronization to prevent split-brain. This local differentiation maintains availability while preventing split-brain where necessary.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

Instead of requiring full synchronization for all commands (excessive action), the patent applies synchronization only to persistent commands (partial action). This partial approach is sufficient to prevent split-brain syndrome for critical operations while maintaining system availability for non-critical operations.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS10733066B2Persistent reservation commands in a distributed storage system
Publication Date: 2020.08.04 HEWLETT PACKARD ENTERPRISE DEV LP
  • US10733066B2 patent drawing
  • US10733066B2 patent drawing
  • US10733066B2 patent drawing

AI summary

Certain examples described herein relate to Persistent Reservation commands in a distributed storage system. In one example, a Persistent Reservation command is received. It is determined whether the Persistent Reservation command indicates persistence through power loss. It is also determined whether a group leader of the distributed storage system is synchronized with a backup group leader. Responsive to the group leader being synchronized with the backup group leader, the command is admitted.