Lease based leader election system
US-9984140-B1 · May 29, 2018 · US
US10965688B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10965688-B2 |
| Application number | US-201815925625-A |
| Country | US |
| Kind code | B2 |
| Filing date | Mar 19, 2018 |
| Priority date | Apr 20, 2015 |
| Publication date | Mar 30, 2021 |
| Grant date | Mar 30, 2021 |
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.
Briefly, embodiments disclosed herein relate to managing transactions in a distributed content transaction system.
Opening claim text (preview).
The invention claimed is: 1. A method, comprising: determining, by one or more servers of a computing system, that a particular client computing device is requesting to commit a particular transaction, the particular transaction including one or more tentative write operations; before authorizing the particular client computing device to commit the particular transaction: determining, by the one or more servers, whether a lease for a particular transaction manager of the computing system has expired; and determining, by the one or more servers, whether the lease has not been renewed in a specified time period upon determining whether the lease for the particular transaction manager has expired, the particular transaction manager being configured to manage transactions requested by one or more client computing devices; determining whether the particular transaction has been invalidated based, at least in part, on determining that the lease of the particular transaction manager has expired; and authorizing, by the one or more servers, the particular client computing device to commit the particular transaction based, at least in part, on a result of determining whether the lease for the particular transaction manager has expired and a result of determining whether the lease has not been renewed in the specified time period. 2. The method of claim 1 , comprising: at least in part in response to determining that the lease of the particular transaction manager has expired, verifying that another particular transaction manager is operating and halting operation of the particular transaction manager. 3. The method of claim 2 , the particular transaction manager employing a first epoch of timestamps, the method comprising: at least in part in response to determining that the lease of the particular transaction manager has expired, employing a second epoch of timestamps with the another particular transaction manager. 4. The method of claim 1 , comprising: verifying that another particular transaction manager is operating. 5. The method of claim 1 , wherein determining whether the particular transaction has been invalidated comprises determining whether an invalid field in an entry of a commit table has been set by another client computing device executing another particular transaction. 6. The method of claim 1 , comprising: at least in part in response to determining that the lease of the particular transaction manager has expired and determining that the particular transaction has not been invalidated, authorizing the particular client computing device to commit the particular transaction. 7. The method of claim 1 , wherein authorizing the particular client computing device to commit the particular transaction comprises authorizing the particular client computing device without determining whether the particular transaction has been invalidated. 8. The method of claim 1 , comprising: writing a timestamp to a commit table for the particular transaction. 9. The method of claim 8 , the timestamp being provided by the particular transaction manager or another transaction manager. 10. A computer program product comprising one or more non-transitory computer-readable media having computer program instructions stored therein, the computer program instructions being configured such that, when executed by one or more computing devices, the computer program instructions cause the one or more computing devices to: determine that a particular client computing device has submitted a request to commit a particular transaction; determine whether a lease for a particular transaction manager has expired at least in part in response to the request from the particular client computing device to commit the particular transaction, the particular transaction manager being configured to manage transactions requested by one or more client computing devices; and authorize the particular client computing device to commit the particular transaction based, at least in part, on a result of determining whether the lease for the particular transaction manager has expired and based, at least in part, on a determination that the particular transaction has not been invalidated at least in part in response to the determination of whether the lease of the particular transaction manager has expired, wherein the particular transaction includes one or more tentative write operations. 11. The computer program product of claim 10 , wherein the computer program instructions are configured to: at least in part in response to a determination that the lease of the particular transaction manager has expired, verify that another particular transaction manager is operating. 12. The computer program product of claim 10 , the particular transaction manager employing a first epoch of timestamps, wherein the computer program instructions are configured to: at least in part in response to a determination that the lease of the particular transaction manager has expired, employ a second epoch of timestamps with another particular transaction manager. 13. The computer program product of claim 10 , wherein the computer program instructions are configured to: determine whether the particular transaction has been invalidated based, at least in part, on a commit table. 14. The computer program product of claim 10 , wherein the computer program instructions are configured to: determine whether the particular transaction has been invalidated by determining whether an invalid field in an entry of a commit table has been set by another client computing device. 15. The computer program product of claim 10 , wherein the computer program instructions are configured to: at least in part in response to a determination that the lease of the particular transaction manager has expired and at least in part in response to a determination that the particular transaction has not been invalidated, authorize the particular client computing device to commit the particular transaction. 16. The computer program product of claim 10 , wherein the computer program instructions are configured to: authorize the particular client computing device to commit the particular transaction without determining whether the particular transaction has been invalidated. 17. The computer program product of claim 10 , wherein the computer program instructions are configured to: write a timestamp to a commit table to commit the particular transaction. 18. An apparatus, comprising: at least one processor; and at least one memory, the at least one processor and the at least one memory being configured to: initiate or identify a particular transaction including one or more read operations targeted to one or more content objects of a content store of a distributed content transaction system; determine whether the one or more content objects were tentatively written to the content store by another computing device executing another particular transaction during a period associated with a particular transaction manager; and at least one of: invalidate at least one particular transaction at least in part in response to a determination that the one or more content objects were tentatively written to the content store by at least one computing device executing the at least one particular transaction during at least one period associated with at least one transaction manager and that the at least one transaction manager has not ceased operating; or perform a determination comprising: determining a particular range of timestamp values a
using timestamps · CPC title
when the policy decisions are valid for a limited amount of time · CPC title
Timestamp · CPC title
Transaction processing · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.