IP Library › Granted Patent US 12,450,196
Granted Patent B2
US 12,450,196 · App. 18/418,400 · Granted Oct 21, 2025

Event based retention of read only files

Inventors: Akshatha Gangadharaiah (Bangalore, IN); Balamurugan Ramajeyam (Chennai, IN); Raman Madaan (Uttar Pradesh Pin, IN); Subhash A Sankuratripati (Playa Vista, CA); Aftab Ahmad Ansari (Bangalore, IN); Vaiapuri Ramasubramaniam (Karnataka, IN)
Assignee: NetApp, Inc.
G06F16/125G06F16/13G06F16/182
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,450,196
App. No.
18/418,400
Granted
Oct 21, 2025
Kind
B2
Abstract

Systems and methods are disclosed for implementing an event based retention schedule for a read only file. When a regular file is to be converted to an event based retention read only file, an “event-retain” property may be enabled on the file allowing the feature to be implemented. Then, that file may have its permissions changed to read only. This will allow the file to be changed to a read only file without using a default retention time. Then, once the event is triggered, the retention time may be set so the file can be scheduled for automatic deletion.

Claims (48)

1. A method comprising:

transitioning a data structure to a write once read many (WORM) state to create an event-retained data structure comprising a last access time directory field, wherein the data structure is committed to the WORM state prior to a retention end date being stored within the last access time directory field and without triggering a default retention time or setting the retention end date to infinity;

in response to an event occurring, overriding current content of the last access time directory field with the retention end date; and

in response to the retention end date being stored into the last access time directory field, retaining the event-retained data structure for a retention period based upon the retention end date stored within the last access time directory field.

2. The method of claim 1 , comprising:

triggering the override of the last access time directory field based upon the occurrence of the event.

3. The method of claim 1 , comprising:

protecting the event-retained data structure until expiration of the retention end date set based upon a point in time of the event occurring.

4. The method of claim 1 , comprising:

protecting the event-retained data structure from being deleted while no retention end date is stored within the last access time directory field.

5. The method of claim 1 , comprising:

constraining the retention end date based upon a number of bits of the last access time directory field.

6. The method of claim 1 , comprising:

protecting the event-retained data structure from being deleted before the occurrence of the event.

7. The method of claim 1 , comprising:

protecting the event-retained data structure from being deleted before the retention end date is stored into the last access time directory field to overwrite the current content of the last access time directory field.

8. A non-transitory machine readable medium comprising instructions for performing a method, which when executed by a machine, causes the machine to perform operations comprising:

transitioning a data structure to a write once read many (WORM) state to create an event-retained data structure comprising a last access time directory field, wherein the data structure is committed to the WORM state prior to a retention end date being stored within the last access time directory field and without triggering a default retention time or setting the retention end date to infinity;

in response to an event occurring, overriding current content of the last access time directory field with the retention end date; and

in response to the retention end date being stored into the last access time directory field, retaining the event-retained data structure for a retention period based upon the retention end date stored within the last access time directory field.

9. The non-transitory machine readable medium of claim 8 , wherein the operations comprise:

triggering the override of the last access time directory field based upon the occurrence of the event.

10. The non-transitory machine readable medium of claim 8 , wherein the operations comprise:

protecting the event-retained data structure until expiration of the retention end date set based upon a point in time of the event occurring.

11. The non-transitory machine readable medium of claim 8 , wherein the operations comprise:

protecting the event-retained data structure from being deleted while no retention end date is stored within the last access time directory field.

12. The non-transitory machine readable medium of claim 8 , wherein the operations comprise:

constraining the retention end date based upon a number of bits of the last access time directory field.

13. The non-transitory machine readable medium of claim 8 , wherein the operations comprise:

protecting the event-retained data structure from being deleted before the occurrence of the event.

14. The non-transitory machine readable medium of claim 8 , wherein the operations comprise:

protecting the event-retained data structure from being deleted before the retention end date is stored into the last access time directory field to overwrite the current content of the last access time directory field.

15. A computing device comprising:

a memory comprising machine executable code for performing a method; and

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

transitioning a data structure to a write once read many (WORM) state to create an event-retained data structure comprising a last access time directory field, wherein the data structure is committed to the WORM state prior to a retention end date being stored within the last access time directory field and without triggering a default retention time or setting the retention end date to infinity;

in response to an event occurring, overriding current content of the last access time directory field with the retention end date; and

in response to the retention end date being stored into the last access time directory field, retaining the event-retained data structure for a retention period based upon the retention end date stored within the last access time directory field.

16. The computing device of claim 15 , wherein the operations comprise:

triggering the override of the last access time directory field based upon the occurrence of the event.

17. The computing device of claim 15 , wherein the operations comprise:

protecting the event-retained data structure until expiration of the retention end date set based upon a point in time of the event occurring.

18. The computing device of claim 15 , wherein the operations comprise:

protecting the event-retained data structure from being deleted while no retention end date is stored within the last access time directory field.

19. The computing device of claim 15 , wherein the operations comprise:

constraining the retention end date based upon a number of bits of the last access time directory field.

20. The computing device of claim 15 , wherein the operations comprise:

protecting the event-retained data structure from being deleted before the occurrence of the event.

Continuity (3)
Continuation 16944336 · Jul 31, 2020
Continuation 14840775 · Aug 31, 2015
Related Publication 20240160604A1 · May 16, 2024
References Cited (82)
US 7366834B2 · McGovern · 2008 [cited by examiner]
US 7392234B2 · Shaath et al. · 2008 [cited by applicant]
US 7467273B2 · Ishida et al. · 2008 [cited by applicant]
US 7558839B1 · McGovern · 2009 [cited by applicant]
US 7590807B2 · McGovern · 2009 [cited by examiner]
US 7752401B2 · Merrick · 2010 [cited by examiner]
US 7761428B2 · Herbst et al. · 2010 [cited by applicant]
US 7774610B2 · McGovern · 2010 [cited by examiner]
US 7831567B2 · Luther et al. · 2010 [cited by applicant]
US 7930493B1 · McGovern et al. · 2011 [cited by applicant]
US 7958166B2 · Hsu · 2011 [cited by examiner]
US 8122154B2 · Ogawa et al. · 2012 [cited by applicant]
US 8145606B2 · Herbst et al. · 2012 [cited by applicant]
US 8200721B2 · Hsu · 2012 [cited by applicant]
US 8234317B1 · Pogde · 2012 [cited by examiner]
US 8260792B1 · Hsu · 2012 [cited by applicant]
US 8332362B2 · McGovern · 2012 [cited by examiner]
US 8516022B1 · Kanteti · 2013 [cited by examiner]
US 8631215B1 · Verma · 2014 [cited by examiner]
US 8707438B1 · Hsu · 2014 [cited by examiner]
US 9514150B2 · Sparkes et al. · 2016 [cited by applicant]
US 9639540B2 · Sparkes · 2017 [cited by examiner]
US 9830237B2 · Ramasubramaniam · 2017 [cited by examiner]
US 10078656B1 · Carl · 2018 [cited by applicant]
US 10521401B2 · Madaan · 2019 [cited by examiner]
US 10762041B2 · Gangadharaiah · 2020 [cited by examiner]
US 11200207B1 · Lew · 2021 [cited by examiner]
US 11880335B2 · Gangadharaiah · 2024 [cited by examiner]
US 20040186858A1 · McGovern et al. · 2004 [cited by applicant]
US 20050097260A1 · McGovern · 2005 [cited by examiner]
US 20050177591A1 · Kanda et al. · 2005 [cited by applicant]
US 20050216534A1 · Ikezawa et al. · 2005 [cited by applicant]
US 20050240636A1 · Shitomi et al. · 2005 [cited by applicant]
US 20060085413A1 · Ogawa et al. · 2006 [cited by applicant]
US 20060085487A1 · Hara · 2006 [cited by examiner]
US 20060095553A1 · Ogawa et al. · 2006 [cited by applicant]
US 20060123232A1 · Cannon et al. · 2006 [cited by applicant]
US 20060126468A1 · McGovern et al. · 2006 [cited by applicant]
US 20060129571A1 · Shrader et al. · 2006 [cited by applicant]
US 20060130143A1 · Shrader et al. · 2006 [cited by applicant]
US 20060190925A1 · Ishii et al. · 2006 [cited by applicant]
US 20070022259A1 · Kitamura · 2007 [cited by examiner]
US 20070038857A1 · Gosnell · 2007 [cited by applicant]
US 20070043773A1 · Tsuji · 2007 [cited by applicant]
US 20070055714A1 · Ishii et al. · 2007 [cited by applicant]
US 20070083568A1 · McGovern et al. · 2007 [cited by applicant]
US 20070174565A1 · Merrick · 2007 [cited by examiner]
US 20070179990A1 · Zimran et al. · 2007 [cited by applicant]
US 20070271280A1 · Chandasekaran · 2007 [cited by applicant]
US 20070271573A1 · Chandrasekaran · 2007 [cited by applicant]
US 20080016132A1 · Merhar · 2008 [cited by examiner]
US 20080172563A1 · Stokes · 2008 [cited by applicant]
US 20090018996A1 · Hunt et al. · 2009 [cited by applicant]
US 20090019443A1 · Jakob · 2009 [cited by applicant]
US 20090049003A1 · Hsu · 2009 [cited by examiner]
US 20090063587A1 · Jakob · 2009 [cited by applicant]
US 20090125572A1 · Cannon et al. · 2009 [cited by applicant]
US 20090164409A1 · Mukherjee · 2009 [cited by applicant]
US 20110191306A1 · Akagawa · 2011 [cited by examiner]
US 20110197088A1 · Kumar · 2011 [cited by examiner]
US 20120109985A1 · Chandrasekaran · 2012 [cited by applicant]
US 20120185444A1 · Sparkes · 2012 [cited by examiner]
US 20120221811A1 · Sparkes · 2012 [cited by examiner]
US 20140317157A1 · Sparkes · 2014 [cited by examiner]
US 20160283501A1 · König et al. · 2016 [cited by applicant]
US 20160292168A1 · Ramesh et al. · 2016 [cited by applicant]
US 20170052972A1 · Karuppusamy et al. · 2017 [cited by applicant]
US 20170060885A1 · Gangadharaiah · 2017 [cited by examiner]
US 20170060897A1 · Madaan · 2017 [cited by examiner]
US 20170091057A1 · Ramasubramaniam · 2017 [cited by examiner]
US 20180189301A1 · Kannan et al. · 2018 [cited by applicant]
US 20180267980A1 · Neria · 2018 [cited by examiner]
US 20180336210A1 · Bourgeois et al. · 2018 [cited by applicant]
US 20190034295A1 · Bourgeois et al. · 2019 [cited by applicant]
US 20200097195A1 · Fritz · 2020 [cited by examiner]
US 20200364181A1 · Gangadharaiah · 2020 [cited by examiner]
US 20230147671A1 · Narulkar · 2023 [cited by examiner]
US 20230359585A1 · George · 2023 [cited by examiner]
US 20240160604A1 · Gangadharaiah · 2024 [cited by examiner]
US 20250138946A1 · Srinath · 2025 [cited by examiner]
Final Office Action mailed Jun. 22, 2023 for U.S. Appl. No. 16/944,336, filed Jul. 31, 2020, 30 pages. [cited by applicant]
Notice of Allowance mailed on Sep. 27, 2023 for U.S. Appl. No. 16/944,336, filed Jul. 31, 2020, 10 pages. [cited by applicant]