Method and system for upgrading software
US-9043778-B2 · May 26, 2015 · US
US9996338B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9996338-B2 |
| Application number | US-201615149489-A |
| Country | US |
| Kind code | B2 |
| Filing date | May 9, 2016 |
| Priority date | Sep 28, 2012 |
| Publication date | Jun 12, 2018 |
| Grant date | Jun 12, 2018 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A method, system, and computer program product for handling synchronization of configuration changes between applications and their platforms. A computer implemented method synchronizes middleware configurations with application configurations using a reciprocating protocol. The protocol includes receiving a middleware state variable from a middleware component, then processing the middleware state variable to determine any application configuration state variables that depend on a value of the middleware state variable. The application (or agent) further processes the application configuration state variable to determine any affected middleware state variables and then sends the affected middleware state variable to the middleware component. The determinations can be performed using a forward mapper or reverse mapper, and the determinations can reciprocate repeatedly between applications and their middleware platforms until quiescence. The techniques can be used during an online patch cycle to maintain synchronization of configuration changes between applications and their platforms even while components are being patched.
Opening claim text (preview).
What is claimed is: 1. A non-transitory computer program product embodied in a non-transitory computer readable medium, the non-transitory computer readable medium having stored thereon a sequence of instructions which, when executed by a processor causes the processor to execute a set of acts to implement synchronizing between intermediate software component configurations and application configurations, the set of acts comprising: processing, at a synchronization module stored at least partially in memory of one or more computing systems, an intermediate software component state variable of an intermediate software component to determine at least one application state variable that depends on a value of the intermediate software component state variable and corresponds to an online edition for at least one software application that relies upon the intermediate software component, and the online edition is currently executing; determining, based at least in part upon results of processing the intermediate software component state variable, whether one or more changes in the at least one application state variable result in one or more implied changes in the intermediate software component at least by performing a first mapping for an offline edition for the at least one software application, and undergoing a patch or an upgrade corresponding to the one or more changes; determining the one or more implied changes for the intermediate software component for the offline edition with the first mapping based in part or in whole upon the one or more changes in the at least one application state variable; determining at least one additional application change for the at least one software application for the offline edition at least by performing a second mapping based in part or in whole upon the one or more implied changes for the intermediate software component; determining at least one implied application change for the at least one software application for the offline edition based in part or in whole upon the at least one additional application change for the at least one software application; transforming, by performing the first mapping, the at least one additional application change of the offline edition and the at least one implied application change of the offline edition into one or more application configuration changes for the offline edition of the at least one software application; and performing the upgrade or the patch on the offline edition of the at least one software application and the intermediate software component at least by: performing the upgrade or the patch on the intermediate software component based at least in part upon the at least one implied application change; and performing a cutover from the online edition to the offline edition, the cutover comprising starting up the offline edition that corresponds to at least the one or more application configuration changes, setting the offline edition as a new online edition corresponding to the intermediate software component that has been patched or upgraded for the at least one software application, and shutting down the online edition. 2. The computer program product of claim 1 , the set of acts further comprising: receiving a change in configurations of the intermediate software component; and storing the change or information about the change in the configurations into the intermediate software component state variable of the intermediate software component at a first location of the memory of the one or more computing systems. 3. The computer program product of claim 2 , the set of acts further comprising: identifying a triggering event; and triggering one or more operations within an intermediate software component listener module in the synchronization module with the triggering event. 4. The computer program product of claim 3 , the set of acts further comprising: obtaining, at a middleware listener module, the one or more changes corresponding to the change or information about the change in the configurations of the intermediate software component and including at least a topology change in the intermediate software component at least by pulling the one or more changes; and storing the one or more changes at a second location of the memory of the computer system. 5. The computer program product of claim 4 , the set of acts further comprising: determining, at a second mapping module, whether or not the at least one software application is to receive the one or more changes; and determining, at the second mapping module, whether or not the one or more changes are affected by the change or the information thereof of the intermediate software component. 6. The computer program product of claim 5 , the set of acts further comprising: transmitting, at the second mapping module, the one or more changes to the offline edition of the at least one software application at least by performing the second mapping with the second mapping module when the at least one software application is determined to receive the one or more changes; and applying the one or more changes to the offline edition of the at least one software application. 7. The computer program product of claim 6 , the set of acts further comprising: determining, at a first mapping module, one or more first implied changes corresponding to the one or more changes to the offline edition for the at least one software application; and storing the one or more first implied changes as the one or more implied changes at a third location of the memory of the one or more computing systems. 8. The computer program product of claim 7 , the set of acts further comprising: performing, at an application listener module in the synchronization module, the first mapping for the one or more implied changes for the intermediate software component; and pulling, at the application listener module, the one or more implied changes for the intermediate software component and storing the one or more implied changes into one or more intermediate software configuration changes; and storing the one or more intermediate software configuration changes at a fourth location of the memory of the one or more computing systems. 9. The computer program product of claim 8 , the set of acts further comprising: transmitting the one or more intermediate software configuration changes from the application listener module to the intermediate software component; and preparing the offline edition of the at least one software application at least by applying the one or more intermediate software configuration changes to the intermediate software component. 10. The computer program product of claim 9 , the set of acts further comprising: creating runtime data, which change while the one or more changes to the offline edition and the one or more intermediate software configuration changes are being applied for the patch or the upgrade, for the offline edition of the at least one software application; and storing the runtime data at a fifth location of the memory. 11. The computer program product of claim 10 , the set of acts further comprising: applying one or more patch transformations to the runtime data stored at the fifth location of the memory; and causing users on the online edition to go offline at least by shutting down the online edition. 12. The computer program product of claim 11 , the set of acts further comprising: designating the offline edition for the at least one software application as the new online edition for the at least one software application, while the users remain offline; starting the offline edition that has been desi
Related publications grouped by family.
Answers are generated from the same data shown on this page.