I/O Error Interception for Application Recovery

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In high availability server cluster environments, existing systems face challenges in efficiently handling input/output (I/O) errors, particularly in maintaining data consistency and reducing the time required for application recovery, as they often necessitate time-consuming recovery operations and reinitialization of applications.

Innovation Solution

A method and apparatus that intercept I/O errors, prevent application execution, complete I/O operations via an alternate path, create a checkpoint image of the application state, and transfer this image to another server for seamless resumption, thereby avoiding the need for extensive recovery operations and maintaining application availability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional application restart procedures are used after I/O errors, then data consistency can be maintained, but recovery time increases significantly due to required reinitialization and recovery operations

Engineering Contradiction:
Improvedata consistencyVSAvoidrecovery time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by creating a checkpoint image of the application state before the I/O error occurs. This checkpoint captures the application's process state, allowing the application to resume execution from this saved state rather than restarting from initialization, thereby reducing recovery time while maintaining data consistency through the checkpoint mechanism

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The invention creates a copy of the application state in the form of a checkpoint image. This checkpoint image contains the process state and can be transferred to another server, enabling the application to continue execution without full reinitialization. The copying of state information allows for rapid recovery while preserving data consistency

Inventive Principle:
Principle #26Copying

2Reliability

If application restart is performed after I/O errors, then system functionality is restored, but complexity of recovery operations increases due to fsck, journal log replay, and reconfiguration

Engineering Contradiction:
Improvesystem functionalityVSAvoidrecovery operations complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The invention extracts the essential application state information into a checkpoint image, separating this critical data from the complex recovery operations. By taking out the application state as a self-contained unit, the system avoids the complexity of performing fsck, journal log replay, and reconfiguration operations, thereby simplifying the recovery process while restoring system functionality

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The checkpoint image serves as an intermediary that bridges the gap between the error state and the restored functionality. Instead of directly performing complex recovery operations, the system uses the checkpoint image as an intermediate representation of the application state, which can be transferred and resumed on another server, thereby reducing recovery complexity

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If full application reinitialization is performed after I/O errors, then data store consistency is ensured, but application availability decreases due to extended downtime

Engineering Contradiction:
Improvedata store consistencyVSAvoidapplication availability
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system performs the preliminary action of creating a checkpoint image before the I/O error causes data inconsistency. This pre-prepared state allows the application to resume quickly without full reinitialization, maintaining data store consistency while minimizing availability loss. The checkpoint acts as a safety point that enables rapid recovery

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

By creating a copy of the application state in the checkpoint image, the system enables rapid recovery without requiring full reinitialization. This copy can be transferred to another server and resumed immediately, maintaining application availability while ensuring data consistency through the checkpoint mechanism

Inventive Principle:
Principle #26Copying

Data Source

PatentUS8713362B2Obviation of recovery of data store consistency for application I/O errors
Publication Date: 2014.04.29 KYNDRYL INC
  • US8713362B2 patent drawing
  • US8713362B2 patent drawing
  • US8713362B2 patent drawing

AI summary

Embodiments comprise a plurality of computing devices that dynamically intercept process application I/O errors. Various embodiments comprise two or more computing devices, such as two or more servers, each having access to a shared data storage system. An application may be executing on the first computing device and performing an I/O operation when an I/O error occurs. The first computing device may intercept the I/O error, rather than passing it back to the application, and prevent the error from affecting the application. The first computing device may complete the I/O operation, and any other pending I/O operations not written to disk, via an alternate path, perform a checkpoint operation to capture the state of the set of processes associated with the application, and transfer the checkpoint image to the second computing device. The second computing device may resume operation of the application from the checkpoint image.