Storage Processor Error Isolation via I/O Redirection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional data storage systems face issues with software errors leading to panicking storage processors, resulting in data unavailability and simultaneous failures, which can cause the entire system to become inaccessible due to rolling panic situations and secondary software failures.

Innovation Solution

Implement a method where a storage processor attempts to retry operations causing software errors and only panics if an alternate processor is available, allowing the system to recover from transient errors and redirect I/O operations to an alternate path, thereby isolating failures to specific logical objects rather than the entire system.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a storage processor panics upon encountering a software error, then the error can be cleared by rebooting, but the entire system may become inaccessible due to rolling panic situations and simultaneous failures

Engineering Contradiction:
Improvesystem availabilityVSAvoidrolling panic situations
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The patent segments the storage system into multiple independent storage processors, each capable of handling I/O operations for logical objects. When one processor encounters a software error, only that specific processor needs to panic and reboot, while other processors continue to handle I/O operations for different logical objects. This segmentation prevents a single point of failure from affecting the entire system, thereby eliminating rolling panic situations that would make the whole system inaccessible.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements beforehand cushioning by ensuring that each storage processor has alternate paths to logical objects and that the system can redirect I/O operations to alternative processors. This preparatory arrangement ensures that when a processor fails, the system already has the infrastructure in place to maintain continuity of service, preventing the harmful effect of system-wide unavailability.

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

2Reliability

If the entire storage system fails when one processor encounters a software error, then system simplicity is maintained, but data unavailability and loss increase

Engineering Contradiction:
Improvedata availabilityVSAvoidsystem architecture
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The storage system is divided into multiple independent storage processors, each managing specific logical objects. This segmentation allows failures to be isolated at the processor level rather than system-wide. When one processor encounters a software error, only the logical objects it manages become temporarily unavailable, while other processors continue to serve other logical objects, thereby maintaining data availability despite the failure.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary mechanism that acts as a mediator between storage processors and logical objects. This intermediary enables I/O operations to be redirected from a failed processor to alternative processors. The intermediary ensures that when a processor fails, the system can seamlessly redirect operations to maintain data availability without requiring complex system-wide reconfiguration.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Ease of operation

If storage processors continuously panic on software errors, then error handling is simplified, but simultaneous failures and secondary software failures occur

Engineering Contradiction:
Improveerror handlingVSAvoidsystem stability
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

By segmenting the system into independent storage processors, the patent enables simplified error handling at the individual processor level while preventing system-wide instability. Each processor can independently detect and handle software errors through local panic and reboot operations without affecting other processors. This segmentation eliminates the propagation of failure modes that would lead to simultaneous failures and secondary software failures across the entire system.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS9367405B1Managing software errors in storage systems
Publication Date: 2016.06.14 EMC IP HLDG CO LLC
  • US9367405B1 patent drawing
  • US9367405B1 patent drawing
  • US9367405B1 patent drawing

AI summary

A method is used in managing software errors in storage systems. It is detected that a first processor of a storage system has a problem performing an I/O on a logical object. The first processor has a first path to the logical object. The problem includes a software error. Whether responsibility of performing the I/O on the logical object is transferred to a second processor of the storage system is evaluated. The second processor has a second path to the logical object.