IP Library Granted Patent US 12,373,398
Granted Patent B1
US 12,373,398 · App. 18/423,873 · Granted Jul 29, 2025

Modified read path for processing read operations during object migration

Inventors: Cheryl Marie Thompson (Sunnyvale, CA); Garima Choudhary (San Jose, CA); Rajesh Sudarsan (San Jose, CA)
Assignee: NetApp, Inc.
G06F16/185G06F11/1004
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,373,398
App. No.
18/423,873
Granted
Jul 29, 2025
Kind
B1
Abstract

Techniques are provided for modifying a read path to process read operations during a storage operation, such as an operation to migrate objects storing data of a volume. The objects are stored across a storage tier and capacity tier of a source object store. As part of migrating the volume to a destination object store, the objects are migrated to the destination cluster. Directly copying the objects involves multiple read operations to the source object store and a write operation at the destination object store. The techniques provided herein improve the efficiency of the migration by initially sending metadata from the source object store to the destination object store for performing backend block copy operations to migrate the volume.

Claims (59)

1. A method, comprising:

migrating objects from a source cluster to a destination cluster;

modifying a read path, implemented to process read operations targeting objects pending to be copied and already copied objects as part of migrating the objects, to extend file system block context checks; and

redirecting, by the modified read path during the migration, a read operation to the source cluster based upon the read operation targeting an object pending to be copied or redirecting the read operation to the destination cluster based upon the read operation targeting a copied object, wherein the modified read path modifies a file system block context check to include reverse map information for the read operation redirected to the destination cluster.

2. The method of claim 1 , wherein the modified read path is implemented for executing the read operations with correct checks to detect data corruption.

3. The method of claim 1 , comprising:

receiving a first read operation targeting the object pending to be copied; and

utilizing the modified read path to redirect the first read operation to a source object store of the source cluster.

4. The method of claim 1 , comprising:

receiving a first read operation targeting the copied object copied to a destination object store of the destination cluster; and

utilizing a reverse map to verify context information and validate data being read from the copied object.

5. The method of claim 1 , comprising:

receiving a first read operation targeting the copied object copied to a destination object store of the destination cluster; and

verifying context information of data being read from the copied object with correct checks to detect data corruption.

6. The method of claim 1 , comprising:

receiving a first read operation targeting the copied object copied to a destination object store of the destination cluster; and

validating data being read from the copied object with correct checks to detect data corruption.

7. The method of claim 1 , comprising:

receiving a first read operation targeting the copied object copied to a destination object store of the destination cluster; and

utilizing, by the modified read path, context information to avoid a virtual volume block number mismatch error from a source based virtual volume block number stored in a context area of the copied object not matching a virtual volume block number expected at the destination cluster.

8. A computing device comprising:

a memory comprising machine executable code; and

a processor coupled to the memory, the processor configured to execute the machine executable code to cause the processor to:

migrate objects from a source cluster to a destination cluster;

modify a read path, implemented to process read operations targeting objects pending to be copied and already copied objects as part of migrating the objects, to extend file system block context checks; and

redirect, by the modified read path during the migration, a read operation to the source cluster based upon the read operation targeting an object pending to be copied or redirecting the read operation to the destination cluster based upon the read operation targeting a copied object, wherein the modified read path modifies a file system block context check to include reverse map information for the read operation redirected to the destination cluster.

9. The computing device of claim 8 , wherein the modified read path is implemented for executing the read operations with correct checks to detect data corruption.

10. The computing device of claim 8 , wherein the machine executable code causes the processor to:

receive a first read operation targeting the object pending to be copied; and

utilize the modified read path to redirect the first read operation to a source object store of the source cluster.

11. The computing device of claim 8 , wherein the machine executable code causes the processor to:

receive a first read operation targeting the copied object copied to a destination object store of the destination cluster; and

utilize a reverse map to verify context information and validate data being read from the copied object.

12. The computing device of claim 8 , wherein the machine executable code causes the processor to:

receive a first read operation targeting the copied object copied to a destination object store of the destination cluster; and

verify context information of data being read from the copied object with correct checks to detect data corruption.

13. The computing device of claim 8 , wherein the machine executable code causes the processor to:

receive a first read operation targeting the copied object copied to a destination object store of the destination cluster; and

validate data being read from the copied object with correct checks to detect data corruption.

14. The computing device of claim 8 , wherein the machine executable code causes the processor to:

receive a first read operation targeting the copied object copied to a destination object store of the destination cluster; and

utilize, by the modified read path, context information to avoid a virtual volume block number mismatch error from a source based virtual volume block number stored in a context area of the copied object not matching a virtual volume block number expected at the destination cluster.

15. A non-transitory computer readable storage medium comprising instructions for performing a method, which when executed by a machine, causes the machine to:

migrate objects from a source cluster to a destination cluster;

modify a read path, implemented to process read operations targeting objects pending to be copied and already copied objects as part of migrating the objects, to extend file system block context checks; and

redirect, by the modified read path during the migration, a read operation to the source cluster based upon the read operation targeting an object pending to be copied or redirecting the read operation to the destination cluster based upon the read operation targeting a copied object, wherein the modified read path modifies a file system block context check to include reverse map information for the read operation redirected to the destination cluster.

16. The non-transitory computer readable storage medium of claim 15 , wherein the modified read path is implemented for executing the read operations with correct checks to detect data corruption.

17. The non-transitory computer readable storage medium of claim 15 , wherein the instructions cause the machine to:

receive a first read operation targeting the object pending to be copied; and

utilize the modified read path to redirect the first read operation to a source object store of the source cluster.

18. The non-transitory computer readable storage medium of claim 15 , wherein the instructions cause the machine to:

receive a first read operation targeting the copied object copied to a destination object store of the destination cluster; and

utilize a reverse map to verify context information and validate data being read from the copied object.

19. The non-transitory computer readable storage medium of claim 15 , wherein the instructions cause the machine to:

receive a first read operation targeting the copied object copied to a destination object store of the destination cluster; and

verify context information of data being read from the copied object with correct checks to detect data corruption.

20. The non-transitory computer readable storage medium of claim 15 , wherein the instructions cause the machine to:

receive a first read operation targeting the copied object copied to a destination object store of the destination cluster; and

validate data being read from the copied object with correct checks to detect data corruption.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 2, 2024
From: THOMPSON, CHERYL MARIE; CHOUDHARY, GARIMA; SUDARSAN, RAJESH
To: NETAPP, INC.
Reel/Frame 066979/0399 →
References Cited (19)
US 9229656B1 · Contreras · 2016 [cited by examiner]
US 10360099B2 · Subramanian et al. · 2019 [cited by applicant]
US 10521143B2 · Subramanian et al. · 2019 [cited by applicant]
US 11036420B2 · Thoppil et al. · 2021 [cited by applicant]
US 11048430B2 · Thoppil et al. · 2021 [cited by applicant]
US 11132339B2 · Kaushik et al. · 2021 [cited by applicant]
US 11151162B2 · Narasingarayanapeta et al. · 2021 [cited by applicant]
US 11210013B2 · Thoppil et al. · 2021 [cited by applicant]
US 11615001B2 · Naidu et al. · 2023 [cited by applicant]
US 11650886B2 · Mathew et al. · 2023 [cited by applicant]
US 11853104B2 · Naidu et al. · 2023 [cited by applicant]
US 20210072917A1 · Surla et al. · 2021 [cited by applicant]
US 20230115261A1 · Xiao et al. · 2023 [cited by applicant]
US 20230229579A1 · Rayev et al. · 2023 [cited by applicant]
US 20240134822A1 · Shaw et al. · 2024 [cited by applicant]
“FabricPool tier management”, NetApp, URL: https://docs.netapp.com/us-en/ontap/pdfs/sidebar/FabricPool_tier_management.pdf, Apr. 16, 2024, 58 pages. [cited by applicant]
“HA pair management”, NetApp, URL: https://docs.netapp.com/us-en/ontap/pdfs/sidebar/HA_pair_management.pdf, Apr. 16, 2024, 26 pages. [cited by applicant]
“SVM data mobility”, NetApp, URL: https://docs.netapp.com/us-en/ontap/pdfs/sidebar/SVM_data_mobility.pdf,3 2024, 14 pages. [cited by applicant]
Notice of Allowance mailed on Apr. 30, 2025 for U.S. Appl. No. 18/423,864, filed Jan. 26, 2024, 07 pages. [cited by applicant]