Replication System Software Upgrade via Concurrent Version Execution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing replication systems face significant resource consumption and data inconsistency issues during software upgrades, as they require substantial modifications to data structures and often disrupt operation, leading to potential loss of writes and time-consuming resynchronization procedures.

Innovation Solution

A software upgrade tool and procedure that allows both old and new versions of replication system components to run concurrently, enabling uninterrupted operation by querying and replicating the configuration of old versions to new versions, ensuring no intercepted writes are missed and reducing the time needed for upgrades.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If the write interception component is upgraded by modifying data structures and rebooting, then the software version is updated, but substantial resources are consumed and operation is interrupted

Engineering Contradiction:
Improvesoftware versionVSAvoidupgrade time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by modifying data structures in advance before the upgrade is needed. The system creates a copy of the write interception component with modified data structures, prepares it offline, and then switches to it without interrupting the running system. This eliminates the need to perform modifications during the upgrade process.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses copying by creating a duplicate of the write interception component (old version and new version running in parallel). The new version is configured with modified data structures while the old version continues operating. This allows the system to test and validate the new version before fully switching to it, avoiding direct modification of the running component.

Inventive Principle:
Principle #26Copying

2Adaptability or versatility

If the write interception component is upgraded by halting operation, then the new software version can be installed, but interception of writes may be disrupted causing inconsistency

Engineering Contradiction:
Improvesoftware versionVSAvoiddata consistency
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent applies dynamics by enabling the system to transition smoothly between old and new versions of the write interception component. Both versions run concurrently, and the system dynamically switches between them without interruption. This dynamic approach ensures that write interception continues uninterrupted while the new version is activated.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent uses an intermediary approach by introducing a version switch mechanism that mediates between the old and new versions of the write interception component. This switch allows seamless transition without halting operations, ensuring that write interception remains continuous and data consistency is maintained throughout the upgrade process.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If resynchronization procedure is performed after interruption, then data consistency is restored, but the process is time consuming and may fail during disaster

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

Solution Approach 1:

The patent applies preliminary anti-action by preventing the disruption that would require resynchronization in the first place. By using hot swapping to allow continuous operation during upgrades, the system avoids the write loss that necessitates resynchronization. This proactive approach eliminates the need for time-consuming resynchronization procedures.

Inventive Principle:
Principle #9Preliminary anti-action

Solution Approach 2:

The patent ensures continuity of useful action by maintaining uninterrupted write interception throughout the upgrade process. The hot swapping mechanism allows the new version to be activated without stopping the write interception function, ensuring continuous data capture and eliminating the need for subsequent resynchronization to restore consistency.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS8099727B2System and method for providing uninterrupted operation of a replication system during a software upgrade
Publication Date: 2012.01.17 NETAPP INC
  • US8099727B2 patent drawing
  • US8099727B2 patent drawing
  • US8099727B2 patent drawing

AI summary

A software upgrade tool and procedure provide uninterrupted operation of a replication system during an upgrade of software components of the system. The replication system includes one or more user systems coupled to one or more target storage systems over a communications network, such as a computer network. Illustratively, each user system is embodied as a replication client, while each target storage system is embodied as a replication server. In addition, the replication system includes a management system embodied as a management server that manages configuration of the system, including during upgrade of the software components of the replication system. To that end, the software upgrade tool cooperates with the management server to query the configuration of “old” versions of the software components and to manage upgrades of those components to “new” versions of software. According to the invention, the upgrade tool and procedure enable both the old and new versions of the software components to run concurrently on the replication client and replication server, as well as the management server.