IP Library Granted Patent US 12,306,804
Granted Patent B2
US 12,306,804 · App. 18/646,676 · Granted May 20, 2025

Techniques for replication checkpointing during disaster recovery

Inventors: Satish Kumar Kashi Visvanathan (San Jose, CA); Viggnesh Venugopal (Santa Clara, CA); Victor Vladimir Golosovker (Union City, CA); Ravi Lingappa Shamanna (Milpitas, CA)
Assignee: Oracle International Corporation
G06F16/1844G06F9/505G06F11/1417G06F11/1451G06F11/1464G06F11/2023G06F11/2028G06F16/128G06F16/1756G06F16/1774G06F16/178G06F16/185G06F16/2246G06F16/2365G06F16/27G06F21/602G06F21/6218H04L9/0819H04L9/14H04L9/3228G06F2201/84
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,306,804
App. No.
18/646,676
Granted
May 20, 2025
Kind
B2
Abstract

Techniques are described for checkpointing multiple key ranges in parallel and concurrently during file storage replications between file systems in different cloud infrastructure regions. In certain embodiments, multiple range threads processing multiple key ranges, one thread per key range, create checkpoints for their respective key ranges in parallel and concurrently after processing a per-determined number of B-tree keys. In certain embodiments, upon encountering a failure event, either a system crash or a thread failure, each thread restarts its B-tree key processing from a B-tree key after the most recent checkpoint.

Claims (57)

1. A method, comprising:

receiving, by a computing system, a request for a file system replication between a source file system and a target file system, the source file system and the target file system being in different regions; and

in response to the receiving the request:

processing, by a first processing thread of the computing system, first binary tree (B-tree) key-value pairs in a first key range;

creating, by the first processing thread of the computing system, a first checkpoint in a first key range at a first time after fulfilling a requirement for processing the first B-tree key-value pairs in the first key range, wherein the creating the first checkpoint in the first key range comprises updating a first checkpoint record stored in a database and associated with the first key range;

processing, by a second processing thread of the computing system, second B-tree key-value pairs in a second key range, the first processing thread being configured to operate independently from the second processing thread; and

creating, by the second processing thread of the computing system, a second checkpoint in a second key range at a second time after fulfilling the requirement for processing the second B-tree key-value pairs in the second key range, the creation of the first checkpoint in the first key range being configured to be performed in parallel with the creation of the second checkpoint in the second key range, wherein the creating the second checkpoint in the second key range comprises updating a second checkpoint record stored in the database and associated with the second key range.

2. The method of claim 1 , wherein the requirement is a time period or a number of processed B-tree key-value pairs.

3. The method of claim 1 , wherein the first time is different from the second time.

4. The method of claim 1 , further comprising:

restarting the processing of the first B-tree key-value pairs in the first key range by the first processing thread after the first checkpoint in the first key range upon detecting a system failure; and

restarting the processing of the second B-tree key-value pairs in the second key range by the second processing thread after the second checkpoint in the second key range upon detecting the system failure.

5. The method of claim 1 , further comprising restarting the processing of the first B-tree key-value pairs in the first key range by a third processing thread after the first checkpoint in the first key range upon detecting a failure of the first processing thread.

6. The method of claim 5 , wherein restarting the processing of the first B-tree key-value pairs in the first key range by a third processing thread comprises:

taking, by the third processing thread, ownership of a first checkpoint record associated with the first key range from the first processing thread, wherein the ownership comprises a lock for updating the first checkpoint record; and

reusing, by the third processing thread, information in the first checkpoint record associated with the first key range.

7. The method of claim 1 ,

wherein the first checkpoint record associated with the first key range comprises an identification for the first key range, number of the first B-tree key-value pairs processed in the first key range, and a next key to restart in the first key range upon encountering a failure; and

wherein the second checkpoint record associated with the second key range comprises an identification for the second key range, number of the second B-tree key-value pairs processed in the second key range, and a next key to restart in the second key range upon encountering a failure.

8. The method of claim 1 , further comprising updating a central record by the first processing thread for the first key range, and by the second processing thread for the second key range.

9. A non-transitory computer-readable medium storing computer-executable instructions that, when executed by one or more processors of a computing system, cause the one or more processors to perform operations comprising:

receiving, by a computing system, a request for a file system replication between a source file system and a target file system, the source file system and the target file system being in different regions; and

in response to the receiving the request:

processing, by a first processing thread of the computing system, first binary tree (B-tree) key-value pairs in a first key range;

creating, by the first processing thread of the computing system, a first checkpoint in a first key range at a first time after fulfilling a requirement for processing the first B-tree key-value pairs in the first key range, wherein the creating the first checkpoint in the first key range comprises updating a first checkpoint record stored a database and associated with the first key range;

processing, by a second processing thread of the computing system, second B-tree key-value pairs in a second key range, the first processing thread being configured to operate independently from the second processing thread; and

creating, by the second processing thread of the computing system, a second checkpoint in a second key range at a second time after fulfilling the requirement for processing the second B-tree key-value pairs in the second key range, the creation of the first checkpoint in the first key range being configured to perform in parallel with the creation of the second checkpoint in the second key range, wherein the creating the second checkpoint in the second key range comprises updating a second checkpoint record stored in the database and associated with the second key range.

10. The non-transitory computer-readable medium of claim 9 , further comprising:

restarting the processing of the first B-tree key-value pairs in the first key range by the first processing thread after the first checkpoint in the first key range upon detecting a system failure; and

restarting the processing of the second B-tree key-value pairs in the second key range by the second processing thread after the second checkpoint in the second key range upon detecting the system failure.

11. The non-transitory computer-readable medium of claim 9 , further comprising restarting the processing of the first B-tree key-value pairs in the first key range by a third processing thread after the first checkpoint in the first key range upon detecting a failure of the first processing thread.

12. The non-transitory computer-readable medium of claim 11 , wherein restarting the processing of the first B-tree key-value pairs in the first key range by a third processing thread comprises:

taking, by the third processing thread, ownership of a first checkpoint record associated with the first key range from the first processing thread, wherein the ownership comprises a lock for updating the first checkpoint record; and

reusing, by the third processing thread, information in the first checkpoint record associated with the first key range.

13. The non-transitory computer-readable medium of claim 9 ,

wherein the first checkpoint record associated with the first key range comprises an identification for the first key range, number of the first B-tree key-value pairs processed in the first key range, and a next key to restart in the first key range upon encountering a failure; and

wherein the second checkpoint record associated with the second key range comprises an identification for the second key range, number of the second B-tree key-value pairs processed in the second key range, and a next key to restart in the second key range upon encountering a failure.

14. The non-transitory computer-readable medium of claim 9 , further comprising updating a central record by the first processing thread for the first key range, and by the second processing thread for the second key range.

15. The non-transitory computer-readable medium of claim 9 , wherein the requirement is a time period or a number of processed B-tree key-value pairs.

16. A system, comprising:

one or more processors; and

one or more computer readable media storing computer-executable instructions that, when executed by the one or more processors, cause the system to:

receive a request for a file system replication between a source file system and a target file system, the source file system and the target file system being in different regions; and

in response to the receiving the request:

process, by a first processing thread of the system, first binary tree (B-tree) key-value pairs in a first key range;

create, by the first processing thread of the system, a first checkpoint in a first key range at a first time after fulfilling a requirement for processing the first B-tree key-value pairs in the first key range, wherein the creating the first checkpoint in the first key range comprises updating a first checkpoint record stored in a database and associated with the first key range;

process, by a second processing thread of the system, second B-tree key-value pairs in a second key range, the first processing thread being configured to operate independently from the second processing thread; and

create, by the second processing thread of the system, a second checkpoint in a second key range at a second time after fulfilling the requirement for processing the second B-tree key-value pairs in the second key range, the creation of the first checkpoint in the first key range being configured to perform in parallel with the creation of the second checkpoint in the second key range, wherein the creating the second checkpoint in the second key range comprises updating a second checkpoint record stored in the database and associated with the second key range.

17. The system of claim 16 , wherein the system is further caused to:

restart the processing of the first B-tree key-value pairs in the first key range by the first processing thread after the first checkpoint in the first key range upon detecting a system failure; and

restart the processing of the second B-tree key-value pairs in the second key range by the second processing thread after the second checkpoint in the second key range upon detecting the system failure.

18. The system of claim 16 , wherein the system is further caused to:

restart the processing of the first B-tree key-value pairs in the first key range by a third processing thread after the first checkpoint in the first key range upon detecting a failure of the first processing thread.

19. The system of claim 18 , wherein restarting the processing of the first B-tree key-value pairs in the first key range by a third processing thread comprises:

take, by the third processing thread, ownership of a first checkpoint record associated with the first key range from the first processing thread, wherein the ownership comprises a lock for updating the first checkpoint record; and

reuse, by the third processing thread, information in the first checkpoint record associated with the first key range.

20. The system of claim 16 , wherein the system is further caused to update a central record by the first processing thread for the first key range, and by the second processing thread for the second key range.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 29, 2024
From: KASHI VISVANATHAN, SATISH KUMAR; VENUGOPAL, VIGGNESH; GOLOSOVKER, VICTOR VLADIMIR; SHAMANNA, RAVI LINGAPPA
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 067259/0565 →
Continuity (6)
Continuation 18304161 · Apr 20, 2023
Provisional Application 63352992 · Jun 16, 2022
Provisional Application 63357526 · Jun 30, 2022
Provisional Application 63412243 · Sep 30, 2022
Provisional Application 63378486 · Oct 5, 2022
Related Publication 20240281413A1 · Aug 22, 2024
References Cited (192)
US 5806075A · Jain et al. · 1998 [cited by applicant]
US 6615333B1 · Hoogerbrugge et al. · 2003 [cited by applicant]
US 7308545B1 · Kekre et al. · 2007 [cited by applicant]
US 7546431B2 · Stacey et al. · 2009 [cited by applicant]
US 8271992B2 · Chatley et al. · 2012 [cited by applicant]
US 8326803B1 · Stringham · 2012 [cited by applicant]
US 8332375B2 · Chatley et al. · 2012 [cited by applicant]
US 8336056B1 · Gadir · 2012 [cited by applicant]
US 8464101B1 · Natanzon et al. · 2013 [cited by applicant]
US 8522252B2 · Chatley et al. · 2013 [cited by applicant]
US 8548949B2 · Jennas, II et al. · 2013 [cited by applicant]
US 8700855B2 · Revanuru · 2014 [cited by applicant]
US 8832027B1 · Bushman · 2014 [cited by applicant]
US 8856079B1 · Subramanian et al. · 2014 [cited by applicant]
US 9047307B1 · Ghemawat et al. · 2015 [cited by applicant]
US 9189495B1 · Hughes et al. · 2015 [cited by applicant]
US 9489434B1 · Rath · 2016 [cited by applicant]
US 9535746B2 · Gupta et al. · 2017 [cited by applicant]
US 9760358B2 · Sapaliga et al. · 2017 [cited by applicant]
US 9916203B1 · Pogde et al. · 2018 [cited by applicant]
US 9928246B1 · Xu et al. · 2018 [cited by applicant]
US 9952767B2 · Zheng et al. · 2018 [cited by applicant]
US 10459632B1 · Chen et al. · 2019 [cited by applicant]
US 10503753B2 · Mitkar et al. · 2019 [cited by applicant]
US 10514986B2 · Bangalore et al. · 2019 [cited by applicant]
US 10664358B1 · Chen et al. · 2020 [cited by applicant]
US 10698941B2 · Maybee et al. · 2020 [cited by applicant]
US 10721141B1 · Verma et al. · 2020 [cited by applicant]
US 10756888B2 · Han · 2020 [cited by applicant]
US 10908828B1 · Meiri et al. · 2021 [cited by applicant]
US 10922132B1 · Shiramshetti et al. · 2021 [cited by applicant]
US 11005935B1 · Littlefield et al. · 2021 [cited by applicant]
US 11036677B1 · Grunwald et al. · 2021 [cited by applicant]
US 11080041B1 · Ah Kun et al. · 2021 [cited by applicant]
US 11086545B1 · Dayal et al. · 2021 [cited by applicant]
US 11151092B2 · Chmiel et al. · 2021 [cited by applicant]
US 11372725B2 · Bajaj · 2022 [cited by applicant]
US 11513997B2 · Keller et al. · 2022 [cited by applicant]
US 11575727B1 · Woodruff et al. · 2023 [cited by applicant]
US 11714782B2 · Subramanian et al. · 2023 [cited by applicant]
US 11809735B1 · Kumar et al. · 2023 [cited by applicant]
US 11836110B2 · Matsushita et al. · 2023 [cited by applicant]
US 11860673B1 · Kodakandla et al. · 2024 [cited by applicant]
US 12001404B2 · Kashi Visvanathan et al. · 2024 [cited by applicant]
US 12147394B2 · Kashi Visvanathan et al. · 2024 [cited by applicant]
US 12182078B2 · Kashi Visvanathan et al. · 2024 [cited by applicant]
US 12197790B2 · Nelson · 2025 [cited by applicant]
US 20020112123A1 · Becker · 2002 [cited by examiner]
US 20020129214A1 · Sarkar · 2002 [cited by applicant]
US 20030182313A1 · Federwisch et al. · 2003 [cited by applicant]
US 20050165862A1 · Loafman et al. · 2005 [cited by applicant]
US 20060271598A1 · Wong · 2006 [cited by examiner]
US 20080049254A1 · Phan et al. · 2008 [cited by applicant]
US 20080109496A1 · Holenstein · 2008 [cited by examiner]
US 20080168218A1 · Arakawa et al. · 2008 [cited by applicant]
US 20080172542A1 · Kaushik · 2008 [cited by applicant]
US 20080250234A1 · Webber · 2008 [cited by applicant]
US 20090138480A1 · Chatley et al. · 2009 [cited by applicant]
US 20090138481A1 · Chatley et al. · 2009 [cited by applicant]
US 20090144224A1 · Phan et al. · 2009 [cited by applicant]
US 20090144284A1 · Chatley et al. · 2009 [cited by applicant]
US 20090144422A1 · Chatley et al. · 2009 [cited by applicant]
US 20090307277A1 · Grubov et al. · 2009 [cited by applicant]
US 20110213765A1 · Cui et al. · 2011 [cited by applicant]
US 20110231172A1 · Gold · 2011 [cited by applicant]
US 20120131595A1 · Kim et al. · 2012 [cited by applicant]
US 20120317079A1 · Shoens et al. · 2012 [cited by applicant]
US 20120323844A1 · Chatley et al. · 2012 [cited by applicant]
US 20130005491A1 · Cox et al. · 2013 [cited by applicant]
US 20130339407A1 · Sharpe et al. · 2013 [cited by applicant]
US 20140052692A1 · Zhang et al. · 2014 [cited by applicant]
US 20150066857A1 · Dayal et al. · 2015 [cited by applicant]
US 20150074536A1 · Varadharajan et al. · 2015 [cited by applicant]
US 20150120893A1 · Sapaliga et al. · 2015 [cited by applicant]
US 20150378636A1 · Yadav et al. · 2015 [cited by applicant]
US 20160188380A1 · Eastep et al. · 2016 [cited by applicant]
US 20160335278A1 · Tabaaloute et al. · 2016 [cited by applicant]
US 20160359963A1 · Chatley et al. · 2016 [cited by applicant]
US 20160359976A1 · Chatley et al. · 2016 [cited by applicant]
US 20170046093A1 · Butt · 2017 [cited by applicant]
US 20180101311A1 · Koszewnik · 2018 [cited by applicant]
US 20190171497A1 · Agarwal et al. · 2019 [cited by applicant]
US 20190235917A1 · Koneru et al. · 2019 [cited by applicant]
US 20190384743A1 · Lv et al. · 2019 [cited by applicant]
US 20200065196A1 · Desai et al. · 2020 [cited by applicant]
US 20200210223A1 · Saka et al. · 2020 [cited by applicant]
US 20200250684A1 · Puehse et al. · 2020 [cited by applicant]
US 20200257700A1 · Xu et al. · 2020 [cited by applicant]
US 20200301882A1 · Pogde et al. · 2020 [cited by applicant]
US 20200310919A1 · Bajaj · 2020 [cited by applicant]
US 20200333970A1 · Mukku et al. · 2020 [cited by applicant]
US 20200334111A1 · Potnis et al. · 2020 [cited by applicant]
US 20200409974A1 · Ayzenberg et al. · 2020 [cited by applicant]
US 20210157504A1 · Hinman · 2021 [cited by applicant]
US 20210173945A1 · Karr et al. · 2021 [cited by applicant]
US 20210200771A1 · Kuang et al. · 2021 [cited by applicant]
US 20210216625A1 · Miller et al. · 2021 [cited by applicant]
US 20210226861A1 · Barsalou et al. · 2021 [cited by applicant]
US 20210294775A1 · Keller et al. · 2021 [cited by applicant]
US 20210342299A1 · Kumarasamy et al. · 2021 [cited by applicant]
US 20210389883A1 · Derryberry et al. · 2021 [cited by applicant]
US 20210390078A1 · Aahlad et al. · 2021 [cited by applicant]
US 20210390113A1 · Danilov et al. · 2021 [cited by applicant]
US 20220058094A1 · Gunturu et al. · 2022 [cited by applicant]
US 20220060323A1 · Payne et al. · 2022 [cited by applicant]
US 20220121365A1 · Wang et al. · 2022 [cited by applicant]
US 20220147490A1 · Shivani et al. · 2022 [cited by applicant]
US 20220182297A1 · Verma et al. · 2022 [cited by applicant]
US 20220188267A1 · Patil et al. · 2022 [cited by applicant]
US 20220198322A1 · Kuperman et al. · 2022 [cited by applicant]
US 20220222358A1 · Sahita et al. · 2022 [cited by applicant]
US 20220229734A1 · Seela et al. · 2022 [cited by applicant]
US 20220263657A1 · Chang et al. · 2022 [cited by applicant]
US 20220308965A1 · Gunda et al. · 2022 [cited by applicant]
US 20230029677A1 · Gupta et al. · 2023 [cited by applicant]
US 20230134314A1 · Braganza et al. · 2023 [cited by applicant]
US 20230177069A1 · Xiang et al. · 2023 [cited by applicant]
US 20230222096A1 · Fan et al. · 2023 [cited by applicant]
US 20230333777A1 · Shveidel et al. · 2023 [cited by applicant]
US 20230385153A1 · George et al. · 2023 [cited by applicant]
US 20230409442A1 · Kashi Visvanathan et al. · 2023 [cited by applicant]
US 20230409522A1 · Kashi Visvanathan et al. · 2023 [cited by applicant]
US 20230409535A1 · Kashi Visvanathan et al. · 2023 [cited by applicant]
US 20230409559A1 · Kashi Visvanathan et al. · 2023 [cited by applicant]
US 20230409597A1 · Kashi Visvanathan et al. · 2023 [cited by applicant]
US 20230412375A1 · Bisht et al. · 2023 [cited by applicant]
US 20240028466A1 · Duggal et al. · 2024 [cited by applicant]
US 20240094937A1 · Kashi Visvanathan et al. · 2024 [cited by applicant]
US 20240134828A1 · Kashi Visvanathan et al. · 2024 [cited by applicant]
US 20240281413A1 · Kashi Visvanathan et al. · 2024 [cited by applicant]
CA 2954888A1 · 2007 [cited by applicant]
CN 104641365A · 2015 [cited by applicant]
CN 117215721A · 2023 [cited by applicant]
JP 2017531256A · 2017 [cited by applicant]
WO 2015110171A1 · 2015 [cited by applicant]
WO 2023244601A1 · 2023 [cited by applicant]
U.S. Appl. No. 18/166,992, Non-Final Office Action filed Jun. 20, 2024, 9 pages. [cited by applicant]
U.S. Appl. No. 18/169,121, Non-Final Office Action filed Aug. 14, 2024, 29 pages. [cited by applicant]
U.S. Appl. No. 18/181,414, Final Office Action filed Aug. 12, 2024, 22 pages. [cited by applicant]
U.S. Appl. No. 18/181,414, Non-Final Office Action filed Mar. 14, 2024, 78 pages. [cited by applicant]
U.S. Appl. No. 18/326,447, Non-Final Office Action filed Jun. 12, 2024, 8 pages. [cited by applicant]
U.S. Appl. No. 18/332,462, Final Office Action filed Jul. 25, 2024, 26 pages. [cited by applicant]
U.S. Appl. No. 18/332,462, Non-Final Office Action filed Apr. 25, 2024, 18 pages. [cited by applicant]
Chapman et al., “Provenance and the Price of Identity”, Provenance and Annotation of Data and Process, Available online at: https://www.researchgate.net/profile/Adriane-Chapman/publication/220919088_Provenance_and_the_P… [cited by applicant]
Mahajan et al., “Effective and Efficient Compromise Recovery for Weakly Consistent Replication”, Microsoft Research, Silicon Valley Available online at: https://dl.acm.org/doi/pdf/10.1145/1519065.1519080?casa_token=h29H… [cited by applicant]
Tremel et al., “Reliable, Efficient Recovery for Complex Services with Replicated Subsystems”, Institute of Electrical and Electronics Engineers, Available online at: https://www.cs.cornell.edu/˜weijia/papers/edward-dsn… [cited by applicant]
“CephFS Mirroring”, Ceph Internals, Available online at: https://docs.ceph.com/en/reef/dev/cephfs-mirroring/, 9 pages. [cited by applicant]
“SnapshotIQ”, Available online at: https://infohub.delltechnologies.com/en-us/l/high-availability-and-data-protection-with-dell-powerscale-scale-out-nas/snapshots-116/, 4 pages. [cited by applicant]
U.S. Appl. No. 17/991,688 , Non-Final Office Action, filed Nov. 19, 2024, 11 pages. [cited by applicant]
U.S. Appl. No. 18/304,226 , Non-Final Office Action, filed Nov. 19, 2024, 16 pages. [cited by applicant]
“About Consistency Group Snapshot Restore”, Working with Consistency Groups, Available Online at: https://sort.veritas.com/public/documents/HSO/2.0/linux/productguides/html/hfo_admin_ubuntu/ch07s10.htm, pages. [cited by applicant]
“About HyperScale Consistency Groups”, Working with Consistency Groups, Available Online at: https://sort.veritas.com/public/documents/HSO/2.0/linux/productguides/html/hfo_admin_ubuntu/ch07s02.htm, 1 page. [cited by applicant]
“Amazon EFS Replication”, Amazon Elastic File System, Available Online at: https://docs.aws.amazon.com/efs/latest/ug/efs-replication.html, Oct. 3, 2022, 18 pages. [cited by applicant]
“Announcing Amazon Elastic File System Replication”, Available Online at: https://aws.amazon.com/about-aws/whats-new/2022/01/amazon-elastic-file-system-replication/, Jan. 25, 2022, 2 pages. [cited by applicant]
“AWS KMS Concepts”, AWS Key Management Service, Available Online at: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html, Oct. 3, 2022, 36 pages. [cited by applicant]
“Caringo Swarm Hybrid Cloud for Azure”, Caringo Swarm, Available Online at: https://azure.github.io/Storage/docs/storage-partners/partners/MultiProtocol/Caringo-Azure.pdf, 2017, 1 page. [cited by applicant]
“Caringo's Swarm Hybrid Cloud Object Storage Platform Now Integrated with Reach Engine by Levels Beyond and Microsoft Azure”, Available Online at: https://www.broadcastbeat.com/caringos-swarm-hybrid-cloud-object-storage… [cited by applicant]
“Create Amazon EBS Snapshots”, Available Online at: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-creating-snapshot.html, 2022, 4 pages. [cited by applicant]
“Create Consistency Groups”, Available Online at: https://library.netapp.com/ecmdocs/ECMP12404965/html/GUID-AA34DCF7-6827-4ACC-AA5E-63B1FEA8EFCE.html, Jan. 2016, 2 pages. [cited by applicant]
“How AWS Data Sync Works”, AWS DataSync, Available Online at: https://docs.aws.amazon.com/datasync/latest/userguide/how-datasync-works.html, Oct. 3, 2022, 5 pages. [cited by applicant]
“How File Replicator Works”, Veritas, Available Online at: https://sort veritas com/public/documents/vie/7.0/linux/productguides/html/infoscale_replication_admin/ch02s02.html, Oct. 3, 2022, 1 page. [cited by applicant]
“Replication for File System Agents”, Available Online at: https://documentation.commvault.com/v11/essential/129963_replication_for_file_system_agents.html, Dec. 7, 2021, 2 pages. [cited by applicant]
“Snapshot Schedules and Snapshot Consistency Groups”, Available Online at: https://thinksystem.lenovofiles.com/storage/help/index.jsp?topic=%2Fthinksystem_system_manager_11.50.1%2F34EADFOC-B783-4FED-B187-28B016EE22B6_.h… [cited by applicant]
“Snapshotting a Consistency Group”, Available Online at: https://www.ibm.com/docs/en/xiv-storage-system?topic=commands-snapshotting-consistency-group, Jun. 12, 2022, 5 pages. [cited by applicant]
“The Definitive Guide to Rubrik Cloud Data Management”, Available Online at: https://www.rubrik.com/content/dam/rubrik/en/resources/white-paper/Definitive-guide-rubrik-cloud-data-management.pdf, Jun. 8, 2021, 41 pages. [cited by applicant]
“What is AWS DataSync?”, Available Online at: https://docs.aws.amazon.com/datasync/latest/userguide/what-is-datasync.html, Oct. 3, 2022, 3 pages. [cited by applicant]
U.S. Appl. No. 18/304,161, Notice of Allowance filed Mar. 19, 2024, 20 pages. [cited by applicant]
Mashtizadeh et al., “Replication, History, and Grafting in the Ori File System”, Symposium on Operating Systems Principles, Available Online at: https://www.scs.stanford.edu/˜dm/home/papers/mashtizadeh:ori.pdf, Nov. 3-6… [cited by applicant]
International Application No. PCT/US2023/024235, International Search Report and Written Opinion mailed on Sep. 4, 2023, 13 pages. [cited by applicant]
International Application No. PCT/US2023/024236, International Search Report and Written Opinion mailed on Sep. 6, 2023, 10 pages. [cited by applicant]
International Application No. PCT/US2023/024239, International Search Report and Written Opinion mailed on Aug. 11, 2023, 14 pages. [cited by applicant]
International Application No. PCT/US2023/024835, International Search Report and Written Opinion mailed on Aug. 8, 2023, 14 pages. [cited by applicant]
International Application No. PCT/US2023/025194, International Search Report and Written Opinion mailed on Aug. 18, 2023, 13 pages. [cited by applicant]
U.S. Appl. No. 18/166,992 , Notice of Allowance, filed Nov. 5, 2024, 9 pages. [cited by applicant]
U.S. Appl. No. 18/181,414 , Notice of Allowance, filed Sep. 30, 2024, 12 pages. [cited by applicant]
U.S. Appl. No. 18/326,447 , Notice of Allowance, filed Aug. 29, 2024, 10 pages. [cited by applicant]
Khurana et al., “Efficient Snapshot Retrieval Over Historical Graph Data”, Institute of Electrical and Electronics Engineers, Jul. 24, 2012, pp. 997-1008. [cited by applicant]
“Google Scholar/Patents Search - Text Refined”, Available online at: https://patents.google.com/?g=(file+system+replication+failure+binary+tree+pairs)&scholar&og=file+system+re plication+failure+binary+tree+pairs, Acces… [cited by applicant]
U.S. Appl. No. 18/094,302, Notice of Allowance, mailed On Nov. 29, 2024, 14 pages. [cited by applicant]
U.S. Appl. No. 18/162,459, Notice of Allowance, mailed On Dec. 9, 2024, 11 pages. [cited by applicant]
U.S. Appl. No. 18/332,462, Notice of Allowance, mailed On Feb. 12, 2025, 5 pages. [cited by applicant]
U.S. Appl. No. 18/332,475, Non-Final Office Action, mailed On Dec. 19, 2024, 15 pages. [cited by applicant]
U.S. Appl. No. 18/536,067, Non-Final Office Action, mailed On Jan. 29, 2025, 17 pages. [cited by applicant]
LAPP , “Busting the Buffer Myth for Multicast Media Over IP”, Available Online at: https://blogs.cisco.com/sp/busting-the-buffer-myth-for-multicast-media-over-ip, Feb. 22, 2021, 9 pages. [cited by applicant]
U.S. Appl. No. 17/991,688, Notice of Allowance mailed on Mar. 7, 2025, 8 pages. [cited by applicant]
U.S. Appl. No. 18/094,302, Notice of Allowance mailed on Mar. 13, 2025, 14 pages. [cited by applicant]
U.S. Appl. No. 18/169,124, Notice of Allowance mailed on Mar. 20, 2025, 13 pages. [cited by applicant]
U.S. Appl. No. 18/497,877, Non-Final Office Action mailed on Mar. 3, 2025, 25 pages. [cited by applicant]
U.S. Appl. No. 18/508,990, Non-Final Office Action mailed on Mar. 3, 2025, 11 pages. [cited by applicant]
U.S. Appl. No. 18/304,226, “Final Office Action”, mailed Apr. 4, 2025, 20 pages. [cited by applicant]
U.S. Appl. No. 18/521,176, “Non-Final Office Action”, mailed Apr. 4, 2025, 6 pages. [cited by applicant]
Chang et al., Job Scheduling and Data Replication on Data Grids, Future Generation Computer Systems, vol. 23, No. 7, Aug. 2007, pp. 846-860. [cited by applicant]
Cited By (1)
US 12,455,861