Use of timestamp logic in synchronous replication
US-9053073-B1 · Jun 9, 2015 · US
US11507599B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11507599-B2 |
| Application number | US-201514970978-A |
| Country | US |
| Kind code | B2 |
| Filing date | Dec 16, 2015 |
| Priority date | Jan 4, 2015 |
| Publication date | Nov 22, 2022 |
| Grant date | Nov 22, 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.
Embodiments of the present disclosure provide a method, a computer program product and apparatus for processing transactions in a synchronized replication system, wherein the method comprises, at a source site in the synchronized replication system: serializing commits of transactions in the synchronized replication system so that only one of the transactions can be committed at the same time; in response to initiating the commit of the one transaction, generating a log for each of transactions that are ongoing in the synchronized replication system, so as to record impact of all operations of a respective transaction on the synchronized replication system; marking transactions for which the logs have been generated; and completing commits of the marked transactions.
Opening claim text (preview).
What is claimed is: 1. A method for processing transactions in a synchronized replication system having a source site and a destination site, wherein a synchronized replication of data is implemented between the source site and the destination site, comprising, at the source site and destination site in the synchronized replication system: ranking commits of transactions to be committed in a sequential order in the synchronized replication system so that only one of the transactions can be committed at an instance in time, wherein ranking commits of transactions to be committed in sequential order comprises causing only one of the transactions to acquire a commit lock at the instance in time, wherein the commit lock is acquired by the one transaction upon completion of operations of the one transaction, and wherein the commit lock is global with respect to the source site while the source site acts as an active site in the synchronized replication system and provides services to users; in response to acquiring the commit lock and initiating the commit of the one transaction, generating a log for each of the transactions that are ongoing in the synchronized replication system, so as to record an impact of all operations of each respective transaction on the synchronized replication system; marking transactions for which the logs have been generated, wherein marking transactions for which the logs have been generated comprises creating a mark file for each of the transactions for which the logs have been generated; completing commits of the marked transactions according to the sequential order, wherein completing the commits modifies a database within the synchronized replication system; after completing the commits of the marked transactions for which the logs have been generated, removing marks of the transactions for which the logs have been generated by removing a mark file for each of the transactions for which the logs have been generated; in response to failure of the source site, initiating switching to the destination site in the synchronized replication system, wherein initiating switching to the destination site in the synchronized replication system causes the destination site to begin acting as the active site in the synchronized replication system and continues to provide the services for the users, and wherein causing the destination site to begin acting as the active site in the synchronized replication system causes the global commit lock to become global with respect to the destination site while the destination site acts as the active site; determining, at the destination site, whether transactions for which commits have not been completed are marked or not; and in response to determining whether transactions for which commits have not been completed are marked or not, updating, with content of the logs generated for marked transactions for which commits have not been completed, data which is associated with the marked transactions for which commits have not been completed and that is synchronously replicated from the source site to the destination site. 2. The method according to claim 1 , further comprising: in response to determining if the transactions are not marked, trusting data which is associated with the transactions and synchronously replicated from the source site to the destination site. 3. The method according to claim 2 , further comprising: removing the logs generated for the transactions. 4. The method according to claim 1 , further comprising: wherein the database within the synchronized replication system comprises a Network Attached Storage (NAS) database storing metadata that is replicated between the source site and the destination site. 5. An apparatus for processing transactions in a synchronized replication system, the synchronized replication system having a source site and a destination site, wherein a synchronized replication of data is implemented between the source site and the destination site, comprising at least one storage device and at least one hardware processor at the source site and the destination site in the synchronized replication system, the apparatus comprising at least one module configured to: rank commits of transactions to be committed in a sequential order in the synchronized replication system so that only one of the transactions can be committed at an instance in time, wherein ranking commits of transactions to be committed in sequential order comprises causing only one of the transactions to acquire a commit lock at the instance in time, wherein the commit lock is acquired by the one transaction upon completion of operations of the one transaction, and wherein the commit lock is global with respect to the source site while the source site acts as an active site in the synchronized replication system and provides services to users; generate, in response to acquiring the commit lock and initiating the commit of the one transaction, a log for each of the transactions that are ongoing in the synchronized replication system, so as to record an impact of all operations of each respective transaction on the synchronized replication system; mark transactions for which the logs have been generated, wherein transactions for which the logs have been generated are marked at least in part by creation of a mark file for each of the transactions for which the logs have been generated; complete commits of the marked transactions according to the sequential order, wherein completing the commits modifies a database within the synchronized replication system; after completion of the commits of the marked transactions for which the logs have been generated, remove marks of the transactions for which the logs have been generated by removing a mark file for each of the transactions for which the logs have been generated; in response to failure of the source site, initiate switching to the destination site in the synchronized replication system, wherein initiating switching to the destination site in the synchronized replication system causes the destination site to begin acting as the active site in the synchronized replication system and continues to provide the services for the users, and wherein causing the destination site to begin acting as the active site in the synchronized replication system causes the global commit lock to become global with respect to the destination site while the destination site acts as the active site; determine, at the destination site, whether transactions for which commits have not been completed are marked or not; and in response to a determination as to whether transactions for which commits have not been completed are marked or not, update, with content of the logs generated for marked transactions for which commits have not been completed, data which is associated with the marked transactions for which commits have not been completed and that is synchronously replicated from the source site to the destination site. 6. The apparatus according to claim 5 , the module further configured to: in response to determining if the transactions are not marked, to trust data which is associated with the transactions and synchronously replicated from the source site to the destination site. 7. The apparatus according to claim 6 , further configured to: remove logs generated for the transactions. 8. A computer program product stored on a non-transitory computer readable medium with program instructions stored thereon for processing transactions in a synchronized replication system, the synchronized replication system having a source site and a destination site, wherein a synchronized replication of data is implemented between the source site and the destination site, the pr
Change logging, detection, and notification (replication G06F16/27) · CPC title
Transactional file systems · CPC title
Synchronous replication · CPC title
Locking methods, e.g. distributed locking or locking implementation details · CPC title
using cached or materialised query results · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.