Metro Storage Abort Task Response Delay

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Inconsistencies arise when processing abort tasks in metro clusters, violating SCSI standards by providing different results for the same address on a stretched volume without an intervening host write, due to asynchronous data replication between storage systems.

Innovation Solution

The technique involves delaying the successful response to an abort task until the second array has locked the specified range of data, ensuring data consistency by coordinating the state between the first and second arrays, either by maintaining old data or updating it as per the aborted write request.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If the first array immediately reports success of the abort task to the host, then the response time is improved, but data consistency is violated and SCSI standards are breached

Engineering Contradiction:
Improveabort task response timeVSAvoiddata consistency
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The first array performs preliminary locking of the data range before reporting abort success to the host. This preliminary action ensures that no subsequent reads or writes can occur that would violate data consistency, while still allowing quick abort task response. The lock is acquired in advance to prevent any intervening operations during the abort processing.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces a locking mechanism as an intermediary between the abort task completion and the actual data state stabilization. This intermediary (the lock) allows the system to report abort success quickly while simultaneously preventing any operations that would create inconsistencies. The lock acts as a mediator that decouples the response time requirement from the data consistency requirement.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If the first array waits for the second array to lock the data range before reporting abort success, then data consistency is maintained, but the response time increases

Engineering Contradiction:
Improvedata consistencyVSAvoidabort task response delay
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The first array acquires the lock on the data range as a preliminary action before waiting for the second array. By performing the locking action upfront, the system minimizes the waiting time while still ensuring that the second array has locked the range before the abort response is sent. This preliminary locking reduces the overall delay compared to waiting for the second array's lock alone.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If the stretched volume allows asynchronous replication between arrays, then storage performance is improved, but abort task processing creates inconsistencies

Engineering Contradiction:
Improvestorage replication speedVSAvoiddata consistency during abort
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent applies different quality characteristics to different phases of the abort task processing. During the critical section where data consistency must be maintained, a lock is applied to the local data range. This local locking mechanism allows the rest of the system to continue operating at high speed while ensuring consistency only where needed during the abort processing window.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS20240231674A9Managing abort tasks in metro storage cluster
Publication Date: 2024.07.11 DELL PROD LP
  • US20240231674A9 patent drawing
  • US20240231674A9 patent drawing
  • US20240231674A9 patent drawing

AI summary

A technique is disclosed for managing abort tasks in a metro cluster that includes a first array and a second array. The technique includes receiving, by the first array, a write request from a host, the write request specifying a range of data to be written to a stretched volume. The technique further includes receiving an abort task from the host for aborting the write request. In response to receipt of the abort task, the technique further includes the first array delaying a successful response to the abort task back to the host until the first array receives a notification that the second array has locked the range of data specified by the write request.