Versioned file system with global lock

US12117968B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-12117968-B2
Application numberUS-202318103951-A
CountryUS
Kind codeB2
Filing dateJan 31, 2023
Priority dateNov 28, 2014
Publication dateOct 15, 2024
Grant dateOct 15, 2024

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A versioned file system comprising network accessible storage is provided. Aspects of the system include globally locking files or groups of files so as to better control the stored files in the file system and to avoid problems associated with simultaneous remote access or conflicting multiple access requests for the same files. A method for operating, creating and using the global locks is also disclosed. A multiprotocol global lock can be provided for filing nodes that have multiple network protocols for generating local lock requests.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for managing locks in a shared network-attached file system, the method comprising: receiving a first lock request from a first node, the first lock request comprising a first local protocol of a first local lock request generated by the first node; providing a global lock to the first node; receiving a second lock request from a second node, the second lock request comprising a second local protocol of a second local lock request generated by the second node, wherein the first protocol is different than the second protocol; determining whether a multiprotocol global lock distinct from the global lock can be returned to the second node, wherein a determination is based in part on evaluating whether an application associated with the second global lock request operates in a shared access mode by which multiple users are permitted to hold locks on a file at the same time; and providing the multiprotocol global lock to the second node when the application operates in the shared access mode. 2. The method of claim 1 , further comprising temporarily storing a local lock release in a local lock cache. 3. The method of claim 2 , further comprising reestablishing the global lock when a second local lock request is generated while the local lock release is stored in the local cache. 4. The method of claim 3 , further comprising resetting an existing lock mode of the global lock when a new lock mode for the second lock request is different than an existing lock mode. 5. The method of claim 4 , wherein a reset lock mode is inclusive of an existing access level of the existing lock mode and a new access level of the new lock mode. 6. The method of claim 4 , wherein a reset lock mode is inclusive of an existing share level of the existing lock mode and a new share level of the new lock mode. 7. The method of claim 1 , further comprising storing a new file request on a central lock server. 8. The method of claim 7 , further comprising polling the central lock server for new files or new objects that have not been merged into a cloud-based network attached storage (NAS). 9. The method of claim 7 , further comprising merging a new file generated by the new file request into a cloud-based network attached storage (NAS). 10. The method of claim 1 , further comprising promoting the first or second lock request to a write lock that allows read-only access to other users of a cloud-based network attached storage (NAS). 11. The method of claim 1 , further comprising honoring an access flag and a shared access flag associated with the first or second lock request. 12. The method of claim 1 wherein the first local protocol is Network File System (NFS). 13. The method of claim 1 wherein the first local protocol is Server Message Block (SMB) or Common Internet File System (CIFS). 14. The method of claim 13 wherein the second local protocol is Network File System (NFS). 15. The method as described in claim 1 , further including providing the global lock to the second node when the application does not operate in the shared access mode. 16. The method as described in claim 1 , wherein the first and second global lock requests are associated with a shared file. 17. The method of claim 16 , further comprising creating a snapshot of a most recent version of the shared file. 18. The method of claim 17 , further comprising marking a parent directory of the shared file as modified. 19. The method of claim 16 , further comprising merging file data for the shared file in a local cache prior to locking a file path of the shared file. 20. The method of claim 19 , further comprising determining whether network file data stored in a server is newer than local file data stored in the local cache. 21. The method of claim 20 , further comprising, prior to releasing the global lock, discarding the network file data when the local file data of the shared file is newer than the network file data of the shared file. 22. The method of claim 21 , further comprising discarding the network file data when a lock_write_version of the shared file is less than a lock_push_version of the shared file. 23. The method of claim 21 , further comprising merging the local file data with the network file data when a lock_write_version is greater than a lock_push_version. 24. The method of claim 16 , further comprising updating a central lock database with an identity of the shared file associated with the global lock. 25. The method of claim 16 , further comprising determining whether a requested lock mode is available. 26. The method of claim 25 , wherein the requested lock mode includes an exclusive write access or a shared write access. 27. The method of claim 25 , further comprising determining when the requested lock mode is compatible with an existing lock mode for an existing global lock on the shared file. 28. The method of claim 27 , wherein determining when the requested lock mode is compatible with an existing lock mode comprises comparing the first local protocol associated with the global lock request with a second local protocol associated with the existing global lock. 29. The method of claim 16 , further comprising initiating a lock peek when the user opens the shared file. 30. The method of claim 29 , wherein the lock peek comprises retrieving at least one of a file handle, a handle version, a first handle, and a lock push version. 31. The method of claim 30 , wherein the lock peek is retrieved from a local lock cache. 32. The method of claim 30 , wherein the lock peek is retrieved from a central lock server. 33. The method of claim 32 , further comprising temporarily storing information retrieved from the lock peek in a local lock cache.

Assignees

Inventors

Classifications

  • Management specifically adapted to NAS (management of storage area networks [SAN] G06F3/067) · CPC title

  • Locking methods, e.g. locking methods for file systems allowing shared and concurrent access to files · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US12117968B2 cover?
A versioned file system comprising network accessible storage is provided. Aspects of the system include globally locking files or groups of files so as to better control the stored files in the file system and to avoid problems associated with simultaneous remote access or conflicting multiple access requests for the same files. A method for operating, creating and using the global locks is al…
Who is the assignee on this patent?
Nasuni Corp
What technology area does this patent fall under?
Primary CPC classification G06F16/1774. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Oct 15 2024 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).