Multipathing Code Rewinding for Error-Resilient Execution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Maintaining resilience and availability of computing systems is challenging due to minor errors that can cause shutdowns and system downtime, especially in critical processes, and conventional error management methodologies are inadequate against recurring errors.

Innovation Solution

Implementing a multipathing manager that dynamically switches between code-paths in response to errors, identifying strategic breakpoints, and using redundancy to ensure continuous operation by rewinding to a previous breakpoint and initiating an alternate code-path.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If conventional error management methodologies are used, then system simplicity is maintained, but system reliability deteriorates due to shutdowns and downtime from minor errors

Engineering Contradiction:
Improvesystem availabilityVSAvoiderror management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The code execution path is segmented into multiple alternative paths at strategic breakpoints. When an error occurs in one path, the system can switch to another segment (code path) that may not have the error, thereby improving reliability without requiring complete system redundancy

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically selects which code path to execute based on real-time error detection. The multipathing manager monitors execution and can switch between alternative code paths during runtime, allowing the system to adapt to errors dynamically and maintain availability

Inventive Principle:
Principle #15Dynamics

2Reliability

If multiple code-paths are implemented for redundancy, then system reliability improves, but device complexity increases

Engineering Contradiction:
Improveerror resilienceVSAvoidcode-path management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

Instead of implementing complete duplicate systems, the code is segmented into multiple paths only at critical breakpoints where errors occur. This selective segmentation provides redundancy only where needed, reducing overall complexity compared to full system duplication

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A multipathing manager acts as an intermediary component that handles the complexity of managing multiple code paths. This mediator abstracts the complexity from the application code, allowing developers to focus on business logic while the multipathing manager handles path selection and switching

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If error checking is performed in production environment, then system reliability improves, but productivity decreases due to potential outages

Engineering Contradiction:
Improveerror detection capabilityVSAvoidsystem throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

Instead of treating errors as harmful events that stop execution, the system converts error detection into a beneficial feature. When errors are detected, they trigger automatic path switching to alternative code that may not have the error, turning potential outages into opportunities to maintain continuous operation

Inventive Principle:
Principle #22Blessing in disguise (Convert harm into benefit)

Solution Approach 2:

The multipathing capability ensures continuous execution of useful work by providing alternative code paths that can take over when errors occur in the current path. This eliminates interruptions and maintains productivity while still performing thorough error checking

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS20250217272A1Multipathing code for enhanced resilience
Publication Date: 2025.07.03 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US20250217272A1 patent drawing
  • US20250217272A1 patent drawing
  • US20250217272A1 patent drawing

AI summary

A computer-implemented method provides rewinding and switching to a new code-path after an error in a preferred code-path. The method includes identifying a first error during execution of an application. The method further includes determining, in response to the first error, a previous breakpoint in a first code-path of the application prior to the location of the first error. The method also includes rewinding the application from the first error to the previous breakpoint. The method includes initiating, in response to the rewinding, a second code-path available at the previous breakpoint. Further aspects of the present disclosure are directed to systems and computer program products containing functionality consistent with the method described above.