Memory device with secure boot updates and self recovery
US-2024406008-A1 · Dec 5, 2024 · US
US11487528B1 · US · B1
| Field | Value |
|---|---|
| Publication number | US-11487528-B1 |
| Application number | US-202117382440-A |
| Country | US |
| Kind code | B1 |
| Filing date | Jul 22, 2021 |
| Priority date | Jul 22, 2021 |
| Publication date | Nov 1, 2022 |
| Grant date | Nov 1, 2022 |
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.
Techniques are provided for managing system upgrades in a network computing environment. For example, a method includes managing an upgrade of a system within a cluster of systems which communicate in a network computing environment system to implement a distributed application. The system performs an upgrade operation to upgrade a current version of the system to a new software version number which comprises a new feature. The system performs a cluster version update process to communicate with other systems in the cluster to determine a cluster version number of the cluster. The system enables the new feature of the new software version if the new software version number is not greater than the determined cluster version number of the cluster.
Opening claim text (preview).
What is claimed is: 1. A method, comprising: managing, by a first system, an upgrade of the first system within a cluster of systems comprising the first system and one or more other systems, which communicate in a network computing environment to implement a distributed application, wherein managing the upgrade of the first system comprises: performing, by the first system, an upgrade operation to upgrade a current software version of the first system to a new software version which comprises a new feature; performing, by the first system, a cluster version update process which comprises (i) communicating with at least one other system in the cluster to obtain respective current software version numbers of each of the one or more other systems in the cluster, and obtain a respective first guarantee from each system of the one or more other systems to not connect with another system until the first guarantee, which is provided to the first system by each system of the one or m ore other systems, is removed, and (ii) utilizing the current software version numbers of the one or more other systems in the cluster to determine a cluster version number of the cluster; and enabling, by the first system, the new feature of the new software version, in response to the first system determining that a software version number of the new software version is not greater than the determined cluster version number of the cluster. 2. The method of claim 1 , wherein communicating with the at least one other system in the cluster, comprises: broadcasting, by the first system, a first message to the at least one other system in the cluster, wherein the first message comprises (i) a request for the one or more other systems in the cluster to return their respective current software version numbers, and (ii) a request for the first guarantee not to connect with another system until further notification from the first system that the first guarantee can be removed. 3. The method of claim 1 , wherein the cluster version number is determined to be a lowest software version number of the current software version numbers returned from the one or more other systems in the cluster. 4. The method of claim 1 , wherein performing the cluster version update process further comprises broadcasting, by the first system, a second message to the at least one other system in the cluster, wherein the second message comprises (i) a notification of the determined cluster version number, and request for the at least one other system to update a current cluster version number of the at least one other system according to the determined cluster version number, and (ii) a request to remove the first guarantee given to the first system. 5. The method of claim 4 , wherein the second message further comprises a request for the at least one other system to provide a second guarantee not to connect with another system which has a cluster version number that is less than the cluster version number of the at least one other system as updated to the determined cluster version number. 6. The method of claim 1 , further comprising: deferring enabling, by the first system, the new feature of the new software version number, in response to the first system determining that the new software version number is greater than the determined cluster version number of the cluster; and sending, by the first system, a request to another system in the cluster to upgrade to a software version number which is at least equal to the new software version number of the first system. 7. The method of claim 1 , wherein the cluster of systems comprises data replication systems, and wherein the distributed application comprises a distributed replication application implemented on data storage nodes in the network computing environment. 8. The method of claim 1 , further comprising: providing, by the first system, a second guarantee to a second system in the cluster not to connect with another system until further notification from the second system that the second guarantee can be removed; and prior to the first system receiving the notification from the second system that the second guarantee can be removed, performing, by the first system, a self-removal process to remove the second guarantee provided to the second system. 9. The method of claim 8 , wherein performing the self-removal process by the first system to remove the second guarantee provided to the second system, comprises: broadcasting, by the first system, a first message to one or more other systems in the cluster, wherein the first message comprises (i) a request for the one or more other systems to return their respective current software version numbers, and (ii) a request for a guarantee by the one or more other systems in the cluster not to connect with another system until further notification from the first system that the guarantee can be removed; utilizing, by the first system, the current software version numbers returned from the one or more other systems in the cluster to determine the cluster version number of the cluster as a lowest software version number of the current software version numbers returned from the one or more other systems in the cluster; setting, by the first system, a current cluster version number of the first system to be equal to the determined cluster version number; removing, by the first system, the second guarantee provided to the second system by the first system, conditioned on the first system providing a guarantee not to connect with another system having a cluster version number which is less than the current cluster version number of the first system; and broadcasting, by the first system, a second message to the one or more other systems in the cluster, wherein the second message comprises (i) a request to remove the guarantee given by the one or more other systems to the first system and (ii) a notification that any given system locked by the same second guarantee provided to the second system by the given system can remove and replace the same second guarantee by the given system updating its current cluster version number to be equal to the currently determined cluster version number, and providing a guarantee not to connect with another system having a cluster version number which is less than the updated cluster version number of the system. 10. An article of manufacture comprising a non-transitory processor-readable storage medium having stored therein program code of one or more software programs, wherein the program code is executable by one or more processors to implement a method which comprises: managing, by a first system, an upgrade of the first system within a cluster of systems comprising the first system and one or more other systems, which communicate in a network computing environment to implement a distributed application, wherein managing the upgrade of the first system comprises: performing, by the first system, an upgrade operation to upgrade a current software version of the first system to a new software version which comprises a new feature; performing, by the first system, a cluster version update process which comprises (i) communicating with at least one other system in the cluster to obtain respective current software version numbers of each of the one or more other systems in the cluster, and obtain a respective first guarantee from each system of the one or more other systems to not connect with another system until the first guarantee, which is provided to the first system by each system of the one or more other systems, is removed, and (ii) utilizing the current software version numbers of the one or more other systems in the cluster to determine a
Related publications grouped by family.
Answers are generated from the same data shown on this page.