Multipathing Code Execution for Severity-Based Failure Recovery

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing software systems face challenges in handling code path failures, leading to incomplete operations, resource hogging, and potential outages due to exhaustive retry logic, especially when multiple code paths result in errors.

Innovation Solution

Implement multipathing code with multiple, separate paths designed to perform similar functionality, detect errors in each path, identify the path with the lowest error severity, and resume execution using that path, utilizing saved state information to revert execution to a previous point and switch to an error-free path.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If exhaustive retry logic is used to handle code path failures, then reliability is improved, but resource consumption increases and system performance deteriorates

Engineering Contradiction:
Improvecode path failure handlingVSAvoidresource consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The system segments the single code path into multiple alternative paths (Path 1, Path 2, Path 3, etc.), each capable of performing the same functionality. When a failure occurs in one path, the system can switch to another segment without exhausting resources on the failed path.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically selects which code path to execute based on real-time conditions and failure states. The path selection is not fixed but adapts according to the severity of errors and current system state, allowing the system to move from static retry logic to dynamic path switching.

Inventive Principle:
Principle #15Dynamics

2Reliability

If exhaustive retry logic is used to handle code path failures, then reliability is improved, but system stability deteriorates due to potential outages

Engineering Contradiction:
Improvecode path failure handlingVSAvoidsystem stability
Core Design Contradiction:
ReliabilityVSStability of the object's composition

Solution Approach 1:

The system performs preliminary actions by pre-defining multiple alternative code paths and establishing failure severity classifications before failures occur. When a failure happens, the system can immediately switch to a pre-prepared alternative path rather than attempting exhaustive retries on the failed path.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system converts the harmful effect of path failures into a beneficial path selection opportunity. By classifying failures by severity and using them to trigger switches to alternative paths, the system transforms failure events into decisions that improve overall system stability and continuity.

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

3Adaptability or versatility

If multiple code paths are implemented to handle failures, then adaptability is improved, but device complexity increases

Engineering Contradiction:
Improvefailure handling capabilityVSAvoidmultipathing code structure
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system applies local quality by assigning different characteristics to different code paths based on their failure severity profiles. Each path is optimized for specific failure conditions, with Path 1 being the primary path and subsequent paths serving as alternatives for specific failure scenarios, rather than creating uniformly complex structures.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system manages complexity by changing the parameter of path selection based on failure severity classification. Instead of hardcoding complex decision logic, the system uses parameter-based selection where the failure severity level determines which path to execute, simplifying the overall control structure.

Inventive Principle:
Principle #35Parameter changes

4Reliability

If exhaustive retry logic is used, then reliability is improved, but productivity deteriorates due to incomplete operations

Engineering Contradiction:
Improveoperation completionVSAvoidoperation efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system skips exhausted or failed code paths and rushes through to alternative paths that are more likely to succeed. By identifying when a path has failed and immediately switching to an alternative rather than continuing to retry the failed path, the system maintains productivity while ensuring operation completion.

Inventive Principle:
Principle #21Skipping (Rushing through)

Data Source

PatentUS12367042B2Multipathing code execution based on failure severity background
Publication Date: 2025.07.22 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US12367042B2 patent drawing
  • US12367042B2 patent drawing
  • US12367042B2 patent drawing

AI summary

Multipathing code execution based on failure severity includes: detecting a corresponding error in each path of a plurality of paths of a portion of multipathing code of an application; identifying, from the plurality of paths, a path having a lowest error severity; and resuming execution of the application using the identified path.