File system mode switching in a distributed storage service
US-2017277715-A1 · Sep 28, 2017 · US
US10452482B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10452482-B2 |
| Application number | US-201615378721-A |
| Country | US |
| Kind code | B2 |
| Filing date | Dec 14, 2016 |
| Priority date | Dec 14, 2016 |
| Publication date | Oct 22, 2019 |
| Grant date | Oct 22, 2019 |
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.
According to some embodiments of the invention, systems and methods are provided for capturing and storing state information corresponding to various states of the network file system (NFS) for use in recovery during a system failure. In various aspects, the disclosed systems and methods may automatically collect and synchronously write state changes made to the NFS to non-volatile storage. In the event of an NFS system failure or crash (e.g., a failure of the NFS server), the state information corresponding to the NFS system may be automatically imported from the non-volatile storage, thereby enabling NFS services to be resumed immediately and transparently.
Opening claim text (preview).
What is claimed is: 1. A method comprising: receiving, by a network file system (NFS) server, a command from a client device to change a state corresponding to a first data object accessible by the NFS server from a current state to a new state; storing, by the NFS server, an indication of the new state in a volatile memory, the indication being stored in association with a first identifier of the first data object; generating and storing, by the NFS server, metadata representing the new state at a location in a non-volatile storage separate from the volatile memory, wherein the metadata is stored in association with a second identifier of the first data object, wherein storing the indication of the new state in the volatile memory and storing the metadata representing the new state at the location in the non-volatile storage are performed before any further processing involving the first data object is permitted by the NFS server; detecting, by the NFS server, a failure involving the NFS server, wherein the indication of the new state is erased from the volatile memory upon the failure involving the NFS server; retrieving, by the NFS server, the metadata representing the new state from the location in the non-volatile storage; and resuming service, by the NFS server, in accordance with the new state. 2. The method of claim 1 , further comprising, after retrieving the metadata representing the new state from the location in the non-volatile storage: repopulating at least some of the volatile memory to include the indication of the new state in association with the identifier of the first data object. 3. The method of claim 1 , wherein the new state includes at least one of an open state, a lock state, a client state, or a delegate state. 4. The method of claim 1 , wherein the metadata representing the new state retrieved from the non-volatile storage is included in a plurality of metadata representing a plurality of states of a plurality of data objects stored in the non-volatile storage, wherein the plurality of metadata is retrieved from the non-volatile storage, and wherein resuming service in accordance with the new state includes resuming service in accordance with the plurality of states. 5. The method of claim 1 , wherein detecting the failure involving the NFS server includes determining that the indication of the new state is erased from the volatile memory. 6. The method of claim 1 , further comprising, determining a timing of the storing of the metadata representing the new state, wherein said determining is based on the client device from which the command was received. 7. The method of claim 1 , wherein the indication of the new state stored in the volatile memory is smaller than the metadata representing the new state stored in the non-volatile storage. 8. The method of claim 7 , further comprising, after retrieving the metadata representing the new state from the location in the non-volatile storage, converting the metadata into a form storable and usable by the volatile memory. 9. A device Comprising: one or more processors; and a non-transitory computer-readable medium containing instructions that, when executed by the one or more processors, cause the one or more processors to perform operations including: receiving a command from a client device to change a state corresponding to a first data object accessible by a network file system (NFS) server from a current state to a new state; storing an indication of the new state in a volatile memory, the indication being stored in association with a first identifier of the first data object; generating and storing metadata representing the new state at a location in a non-volatile storage separate from the volatile memory, wherein the metadata is stored in association with a second identifier of the first data object, wherein storing the indication of the new state in the volatile memory and storing the metadata representing the new state at the location in the non-volatile storage are performed before any further processing involving the first data object is permitted by the NFS server; detecting a failure involving the NFS server, wherein the indication of the new state is erased from the volatile memory upon the failure involving the NFS server; retrieving the metadata representing the new state from the location in the non-volatile storage; and resuming service in accordance with the new state. 10. The device of claim 9 , wherein the operations further include, after retrieving the metadata representing the new state from the location in the non-volatile storage: repopulating at least some of the volatile memory to include the indication of the new state in association with the identifier of the first object. 11. The device of claim 9 , wherein the new state includes at least one of an open state, a lock state, a client state, or a delegate state. 12. The device of claim 9 , wherein the metadata representing the new state retrieved from the non-volatile storage is included in a plurality of metadata representing a plurality of states of a plurality of data objects stored in the non-volatile storage, wherein the plurality of metadata is retrieved from the non-volatile storage, and wherein resuming service in accordance with the new state includes resuming service in accordance with the plurality of states. 13. The device of claim 9 , wherein detecting the failure involving the NFS server includes determining that the indication of the new state is erased from the volatile memory. 14. The device of claim 9 , wherein the operations further include, determining a timing of the storing of the metadata representing the new state, wherein said determining is based on the client device from which the command was received. 15. The device of claim 9 , wherein the indication of the new state stored in the volatile memory is smaller than the metadata representing the new state stored in the non-volatile storage. 16. The device of claim 15 , wherein the operations further include, after retrieving the metadata representing the new state from the location in the non-volatile storage, converting the metadata into a form storable and usable by the volatile memory. 17. A non-transitory computer machine-readable storage medium comprising computer-executable instructions, that, when executed by one or more processors, cause the one or more processors to: receive a command from a client device to change a state corresponding to a first data object accessible by a network file system (NFS) server from a current state to a new state; store an indication of the new state in a volatile memory, the indication being stored in association with a first identifier of the data object; generate and store metadata representing the new state at a location in a non-volatile storage separate from the volatile memory, wherein the metadata is stored in association with a second identifier of the first data object, wherein storing the indication of the new state in the volatile memory and storing the metadata representing the new state at the location in the non-volatile storage are performed before any further processing involving the first data object is permitted by the NFS server; detect a failure involving the NFS server, wherein the indication of the new state is erased from the volatile memory upon the failure involving the NFS server; retrieve the metadata representing the new state from the location in the non-volatile storage; and resume service in accordance with the new state. 18. The non-transito
Backup restoration techniques · CPC title
for networked environments · CPC title
File meta data generation · CPC title
involving logging of persistent data for recovery · CPC title
for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS] · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.