Deployment sequencing for dependent updates

US2024143303A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2024143303-A1
Application numberUS-202217974118-A
CountryUS
Kind codeA1
Filing dateOct 26, 2022
Priority dateOct 26, 2022
Publication dateMay 2, 2024
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Systems and methods for deploying dependent updates include mechanisms for requiring that dependency information be provided for each update so that dependent updates may be identified. Update dependencies are tracked so that dependent updates are not deployed until parent updates have been completed. Deployment sequencing is implemented on top of existing asynchronous deployment policies so that asynchronous workflow remains intact and unaltered. The asynchronous workflow is upgraded to a synchronous (i.e., sequential) workflow for updates having dependencies to ensure that updates having dependencies are applied in the correct order.

First claim

Opening claim text (preview).

What is claimed is: 1 . A data processing system comprising: a processor; and a memory in communication with the processor, the memory comprising executable instructions that, when executed by the processor, cause the data processing system to perform functions of: receiving a payload definition defining an update to be deployed to a group of computing resources, the payload definition including attribute information, the attribute information including dependency information for the update; determining whether the update is a dependent update based on the dependency information; in response to the dependency information indicating that the update is a dependent update, creating an update stage for a current deployment stage with work items for applying the update to the computing resources associated with the current deployment stage; monitoring a parent update of the dependent update for completion; and in response to the parent update being completed, executing the work items so as to apply the update to the computing resources associated with the current deployment stage. 2 . The data processing system of claim 1 , wherein the work items are added in a waiting state, and wherein, when the parent update has been completed, the work items are changed to a created state for deployment to the computing resources to be updated. 3 . The data processing system of claim 2 , wherein executing the work items so as to apply the update to the computing resources associated with the current deployment stage further comprise: executing a first work item when the parent update has been completed; determining whether the update includes any other dependent work items; and in response to the update including no other dependent work items, changing all remaining work items to a created state for deployment to the computing resources to be updated. 4 . The data processing system of claim 1 , wherein the work items are deployed based on a deployment policy determined for the update. 5 . The data processing system of claim 1 , wherein the functions further comprise: identifying the parent update based on the dependency information in the payload definition. 6 . The data processing system of claim 1 , wherein the functions further comprise: determining whether a parent work item exists in the parent update corresponding to a current work item in the dependent update; and in response to the parent work item not existing, creating the parent work item in the parent update for the current work item. 7 . The data processing system of claim 1 , wherein the functions further comprise: preventing suspension of the parent update while the update is still dependent upon the parent update. 8 . The data processing system of claim 7 , wherein the functions further comprise: preventing the suspension of the parent update until an indication is received that a dependency of the update on the parent update has been severed. 9 . The data processing system of claim 7 , wherein the functions further comprise: preventing the suspension of the parent update until an indication is received that a dependency of the update has been changed from the parent update to a new parent update. 10 . The data processing system of claim 1 , wherein the functions further comprise: in response to the dependency information indicating that the update is not a dependent update, creating an update stage with work items for applying the update to the computing resources associated with the current deployment stage, the work items being added in a created state; and deploying the work items to the computing resources to be updated based on a deployment policy determined for the update. 11 . A method of deploying dependent updates to a group of computing resources comprising: receiving a payload definition defining an update to be deployed to the group of computing resources, the payload definition including attribute information, the attribute information including dependency information for the update; determining whether the update is a dependent update based on the dependency information; in response to the dependency information indicating that the update is a dependent update, creating an update stage for a current deployment stage with work items for applying the update to the computing resources associated with the current deployment stage; monitoring a parent update of the dependent update for completion; and in response to the parent update being completed, executing the work items so as to apply the update to the computing resources associated with the current deployment stage. 12 . The method of claim 11 , wherein the work items are added in a waiting state, and wherein, when the parent update has been completed, the work items are changed to a created state for deployment to the computing resources to be updated. 13 . The method of claim 12 , wherein executing the work items so as to apply the update to the computing resources associated with the current deployment stage further comprise: executing a first work item when the parent update has been completed; determining whether the update includes any other dependent work items; and in response to the update including no other dependent work items, changing all remaining work items to a created state for deployment to the computing resources to be updated. 14 . The method of claim 11 , wherein the work items are deployed based on a deployment policy determined for the update. 15 . The method of claim 11 , further comprising: identifying the parent update based on the dependency information in the payload definition. 16 . The method of claim 15 , further comprising: identifying a parent work item exists for a current work item for the update stage; determining whether the parent work item exists in the parent update; and in response to the parent work item not existing, creating the parent work item in the parent update for the current work item. 17 . A non-transitory computer readable medium on which are stored instructions that, when executed, cause a programmable device to perform functions of: receiving a payload definition defining an update to be deployed to a group of computing resources, the payload definition including attribute information, the attribute information including dependency information for the update; determining whether the update is a dependent update based on the dependency information; in response to the dependency information indicating that the update is a dependent update, creating an update stage for a current deployment stage with work items for applying the update to the computing resources associated with the current deployment stage; monitoring a parent update of the dependent update for completion; and in response to the parent update being completed, executing the work items so as to apply the update to the computing resources associated with the current deployment stage. 18 . The non-transitory computer readable medium of claim 17 , wherein the work items are added in a waiting state, and wherein, when the parent update has been completed, the work items are changed to a created state for deployment to the computing resources to be updated. 19 . The non-transitory computer readable medium of claim 18 , wherein executing the work items so as to apply the update to the computing resources associated with the current deployment stage further comprise: executing a first work item when the parent update has be

Assignees

Inventors

Classifications

  • for accessing one among a plurality of replicated servers · CPC title

  • involving the movement of software or configuration parameters  (network booting or remote initial program loading [RIPL] G06F9/4416) · CPC title

  • Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources (admission control or resource allocation H04L47/70) · CPC title

  • Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor · CPC title

  • Software reuse · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2024143303A1 cover?
Systems and methods for deploying dependent updates include mechanisms for requiring that dependency information be provided for each update so that dependent updates may be identified. Update dependencies are tracked so that dependent updates are not deployed until parent updates have been completed. Deployment sequencing is implemented on top of existing asynchronous deployment policies so th…
Who is the assignee on this patent?
Microsoft Technology Licensing Llc
What technology area does this patent fall under?
Primary CPC classification G06F8/65. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu May 02 2024 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).