Application Patching via Dual File System Views
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current patch management methods for enterprise applications result in significant downtime and uncertainty about the correctness of patched systems, often requiring restoration from backups due to incorrect patches.
Innovation Solution
A method that creates copies of files to be modified, allowing the application to be updated without stopping it, using separate file system views for the original and patched files, enabling seamless switching and minimal downtime, with the ability to roll back to previous versions quickly.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional patch management methods are used, then patches can be applied to fix bugs and improve functionality, but the application must be stopped and downtime increases significantly
Solution Approach 1:
The patent segments the application files into multiple versions stored in separate directories (e.g., /app/current, /app/patched, /app/backup). This allows the system to switch between versions without stopping the application, as the runtime loader can dynamically load files from different directories. The segmentation enables continuous operation while patches are being applied in the background.
Solution Approach 2:
The patent implements dynamic file loading where the runtime loader can switch between different file sets based on configuration. The application files are dynamically replaced by updating the loader's configuration to point to patched versions instead of original versions. This dynamic switching occurs without stopping the application, reducing downtime to minimal levels.
2Reliability
If patches are applied to fix bugs, then functionality improves, but incorrect patches may require restoration from backup increasing downtime
Solution Approach 1:
The patent performs preliminary actions by maintaining backup copies of application files before applying patches. The backup mechanism is activated automatically when a patch is applied, creating a restore point that can be used if the patch proves incorrect. This preliminary backup action enables rapid restoration without waiting for manual intervention or lengthy recovery processes.
Solution Approach 2:
The patent creates copies of application files in separate backup directories before modifying the original files. These copies serve as restore points that can be quickly deployed if a patch fails. The copying mechanism ensures that both the original and patched versions coexist, enabling rapid switching between versions to mitigate the impact of incorrect patches.
3Productivity
If application files are modified directly, then updates can be applied quickly, but the application cannot continue running during the update process
Solution Approach 1:
The patent segments application files into distinct versions stored in separate directories, allowing the runtime loader to switch between them. This segmentation enables the system to apply patches to one version while the application continues running on another version, maintaining productivity without interrupting runtime operations.
Solution Approach 2:
The patent introduces a runtime loader as an intermediary component that mediates between the application and the file system. The loader manages file loading and can dynamically switch between different file sets without requiring the application to stop. This intermediary enables updates to proceed in the background while maintaining continuous application operation.
Data Source
AI summary
The patching of applications is achieved by performing application updates in one file system view, while the application is running in another view. A patch user copies any files that are to be modified, performs the modification on the copies, and switches all users to the patch view once all modifications are complete.


