Seamless Shared Library Patching via Symbolic Link

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional methods for updating shared libraries in client-server architectures are time-consuming and require downtime or additional resource procurement, which is not feasible for organizations with economic constraints.

Innovation Solution

A method and system for seamlessly patching shared libraries by creating a symbolic link to a new shared library, allowing an application process to replace the existing library when it reaches a free-state, enabling continuous operation during the update process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the conventional method of bringing down all server instances to update shared libraries is used, then the shared libraries are updated, but the services are brought down and the update process is time-consuming

Engineering Contradiction:
Improveservice continuityVSAvoidupdate time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the server system into multiple independent server instances, each capable of loading its own shared libraries. This allows individual instances to be updated without affecting others, enabling continuous service operation during library updates while maintaining system-wide reliability

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary actions by creating a symbolic link to the new shared library before actually replacing the old one. The application process is notified to unload the old library only when it reaches a free-state, ensuring service continuity while completing the update in advance without downtime

Inventive Principle:
Principle #10Preliminary action

2Reliability

If extra server nodes are deployed to maintain service continuity during updates, then service availability is maintained, but procurement costs, infrastructure requirements, and maintenance costs increase significantly

Engineering Contradiction:
Improveservice availabilityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent makes existing server instances multi-functional by enabling them to load and switch between different versions of shared libraries dynamically. This eliminates the need for separate server nodes for different library versions, reducing hardware procurement, infrastructure, and maintenance costs while maintaining service availability

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent introduces a symbolic link as an intermediary mechanism between the application process and the shared library. This intermediary allows seamless switching between library versions without requiring additional server nodes, simplifying the system architecture while ensuring continuous service operation during updates

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10416990B2System and method for seamlessly patching shared libraries in server environment
Publication Date: 2019.09.17 INFOSYS LTD
  • US10416990B2 patent drawing
  • US10416990B2 patent drawing
  • US10416990B2 patent drawing

AI summary

Methods, systems and non-transitory computer readable media involves receiving information of a new library from a patch management repository. A symbolic link to the new shared library is created and a request to an application process to replace a shared library is communicated. To replace the shared library, the application process periodically checks reference state of the shared library till it reaches a free-state. When the shared library reaches the free-state, the application process unloads the shared library from memory space and loads the new shared library to the memory space. The application process continues performing one or more pre-define functions during the replacement of the shared library.