Software Upgrade Rollback via Communication Replay

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Software system upgrades often result in downtime and data loss due to the inability to revert upgrades once users are switched to the new version, leading to costly resolution processes and prolonged system unavailability.

Innovation Solution

A method that allows for the recording and replaying of inbound and outbound communications during a software system upgrade, enabling a rollback to the previous version without data loss by temporarily blocking external communications, redirecting outbound calls, and replaying recorded data to recreate the previous system state.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Duration of action of moving object

If users are switched to the new software application version to minimize downtime, then system availability is improved, but data loss risk increases and system reliability deteriorates

Engineering Contradiction:
ImprovedowntimeVSAvoiddata loss risk
Core Design Contradiction:
Duration of action of moving objectVSReliability

Solution Approach 1:

The system performs preliminary actions by recording all inbound and outbound calls before the upgrade is fully activated. This recording creates a safety net that allows the system to revert to the previous version without data loss if critical problems are detected during the verification period.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system creates a copy of the communication data by recording all inbound and outbound calls during the upgrade process. This recorded copy can be replayed to restore data if the upgrade fails, eliminating the traditional need to restore from backup and enabling safe rollback without data loss.

Inventive Principle:
Principle #26Copying

2Reliability

If manual verification processes are performed to ensure new version stability, then system reliability is improved, but downtime increases and productivity decreases

Engineering Contradiction:
Improvenew version stabilityVSAvoidsystem availability
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system performs self-verification by automatically monitoring and recording communications during the upgrade process. The system can detect critical problems automatically through the recording mechanism, eliminating or reducing the need for manual verification processes and their associated downtime.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system maintains continuous operation by recording communications in real-time during the upgrade process. This allows the system to remain available to users while simultaneously performing verification activities, eliminating the need to halt operations for manual testing.

Inventive Principle:
Principle #20Continuity of useful action

3Reliability

If conventional upgrade rollback processes are used, then system stability is improved by reverting to the previous version, but data loss occurs and additional manual work is required

Engineering Contradiction:
Improvesystem stabilityVSAvoiddata loss
Core Design Contradiction:
ReliabilityVSLoss of substance

Solution Approach 1:

The system creates a copy of all communication data through recording during the upgrade process. When rollback is needed, this recorded copy is replayed to restore data in the previous version, eliminating data loss that would normally occur when reverting from backup.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The system changes the state of data preservation by maintaining recorded communications throughout the upgrade process. This continuous recording parameter change ensures that data is preserved in a recoverable format, transforming the rollback process from a data-loss operation to a data-preserving operation.

Inventive Principle:
Principle #35Parameter changes

4Reliability

If manual upgrade reversal and re-execution processes are performed, then system reliability is improved by ensuring proper rollback, but downtime increases and manual effort increases

Engineering Contradiction:
Improveupgrade reversal accuracyVSAvoiddowntime
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs self-service by automatically managing the rollback process through recording and replaying communications. This automation eliminates manual intervention for upgrade reversal and re-execution, reducing both downtime and manual effort while maintaining reliability.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system maintains continuous operation during the rollback process by using recorded communications to restore data without halting system availability. This allows upgrade reversal to occur without the downtime that would result from manual processes.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS20240403024A1Revoking a software system upgrade without data loss
Publication Date: 2024.12.05 SAP SE
  • US20240403024A1 patent drawing
  • US20240403024A1 patent drawing
  • US20240403024A1 patent drawing

AI summary

A verification of an upgraded software system is determined to be unsuccessful. A recording of inbound and outbound calls is stopped in the upgraded software system. Following a roll back of the upgraded software system, starting a previous software system version is started. Inbound external communications are temporarily blocked for the previous software system version. Outbound external communication are redirected. The recording is replayed to re-create data in the previous software system version. External communication requests are replied to with responses from the recording. Number ranges for are checked completeness.