Metadata Synchronization for Zero-Downtime Application Patching

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Updating software applications with metadata is challenging due to incompatibilities between metadata versions, leading to prolonged downtime and significant human effort to maintain compatibility, especially when user customizations are involved.

Innovation Solution

A process involving periodic synchronization of metadata changes between the original and copied applications during patch installation, ensuring that user customizations are carried over to the patched version, while minimizing downtime by maintaining continuous user access.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the application is shut down to install a patch, then the patch installation can be completed without interruption, but the application becomes inaccessible to users for an unacceptably long period of time

Engineering Contradiction:
Improvepatch installation completenessVSAvoidapplication downtime
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The application is divided into two separate instances: the original running application and a copied application. The patch is installed on the copied application while the original continues to serve users, thereby segmenting the patching process from user access and eliminating downtime.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A copy of the application is created before patch installation. This copy serves as the target for patch installation, allowing the original application to remain operational. After successful patching, the copied application can replace or work alongside the original, ensuring continuous availability.

Inventive Principle:
Principle #26Copying

2Loss of time

If a copy of the application is patched while the original continues to service users, then user accessibility is maintained, but user customizations to metadata are not carried over to the patched application

Engineering Contradiction:
Improveapplication availabilityVSAvoiduser customizations
Core Design Contradiction:
Loss of timeVSLoss of information

Solution Approach 1:

Metadata changes made by users during the patch installation process are captured and applied to the copied application in advance. This preliminary synchronization ensures that when the patched application is deployed, it already contains the latest user customizations, preventing information loss.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system continuously monitors and detects metadata changes in the original application during the patching process. This feedback mechanism triggers automatic synchronization of these changes to the copied application, ensuring both instances remain consistent without user intervention.

Inventive Principle:
Principle #23Feedback

3Adaptability or versatility

If new metadata is installed without modifying it for compatibility, then the latest metadata features are available, but the older version of the application fails or works incorrectly

Engineering Contradiction:
Improvemetadata version compatibilityVSAvoidapplication functionality
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The system dynamically adapts metadata compatibility based on the application version. When deploying patches to older application versions, the metadata is automatically adjusted to maintain compatibility. This dynamic adaptation allows new metadata features to be introduced while ensuring backward compatibility with existing application versions.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS8589909B2Techniques for reducing down time in updating applications with metadata
Publication Date: 2013.11.19 ORACLE INT CORP
  • US8589909B2 patent drawing
  • US8589909B2 patent drawing
  • US8589909B2 patent drawing

AI summary

A method and apparatus for reducing down time in updating applications with metadata is provided. The application contains both code and metadata. A copy of the application is made. A software update is installed on the copy of the application. During installation, the original application continues to run and service users, who may modify the metadata of the original application. Periodically, the metadata of the copy of the application is updated to incorporate changes to the metadata of the original application. When the software update is completed, users are prevented from further modifying the metadata of the original application. The metadata of the copy of the application is updated to incorporate the final changes to the metadata of the original application. Users are redirected from the original application to the copy of the application.