Document tracking for safe save operations
First Claim
1. A computer-implemented method of tracking a document within a file system, the method comprising:
- monitoring, by a kernel, file system operations for the document;
opening the document for editing, the document having a document identifier that is unique within the file system and is distinct from a filename of the document, the document identifier persistently associated with the most recent version of the document having the filename;
storing the document identifier;
generating a temporary file containing the contents of the document, the temporary file having a second filename and the temporary file having no document identifier equivalent to the document identifier of the document opened for editing;
receiving one or more editing operations upon the document contents in the temporary file;
determining, by the kernel, that the file system operations include a sequence of file system operations that indicate that a safe save process is being performed; and
in response to the determining, persistently associating the document identifier with the filename and the most recent version of the contents of the document.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems and methods are disclosed that track a document within a file system using document identifier (DOCID) that is preserved during safe save operations. The DOCID can be a universally unique identifier (UUID). The DOCID can be generated on a local file system or generated during a synchronization process with a remote synchronization service. Applications can opt in to document tracking. The kernel of the operating system can monitor file system operations on a per-application and per-thread basis and determine when a processing thread is about to perform a safe save. When a sequence of file system operations indicates that a safe save is to be performed, the kernel can generate and store a tombstone record that includes the DOCID and other metadata of the tracked document and pass the DOCID and metadata to the newly saved document.
13 Citations
22 Claims
-
1. A computer-implemented method of tracking a document within a file system, the method comprising:
-
monitoring, by a kernel, file system operations for the document; opening the document for editing, the document having a document identifier that is unique within the file system and is distinct from a filename of the document, the document identifier persistently associated with the most recent version of the document having the filename; storing the document identifier; generating a temporary file containing the contents of the document, the temporary file having a second filename and the temporary file having no document identifier equivalent to the document identifier of the document opened for editing; receiving one or more editing operations upon the document contents in the temporary file; determining, by the kernel, that the file system operations include a sequence of file system operations that indicate that a safe save process is being performed; and in response to the determining, persistently associating the document identifier with the filename and the most recent version of the contents of the document. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A non-transitory computer-readable medium programmed with instructions that, when executed, perform a method of tracking a document within a file system, the method comprising:
-
monitoring, by a kernel, a sequence of file system operations for the document; opening the document for editing, the document having a document identifier that is unique within the file system and is distinct from a filename of the document, the document identifier persistently associated with the most recent version of the document having the filename; storing the document identifier; generating a temporary file containing the contents of the document, the temporary file having a second filename and the temporary file having no document identifier equivalent to the document identifier of the document opened for editing; receiving one or more editing operations upon the document contents in the temporary file; determining, by the kernel, that the sequence of file system operations includes a sequence of file system operations that indicate that a safe save process is being performed; and in response to the determining, persistently associating the document identifier with the filename and the most recent version of the contents of the document. - View Dependent Claims (10, 11, 12, 13, 14, 15)
-
-
16. A system comprising:
-
a processing system programmed with executable instructions that, when executed, perform a machine implemented method of tracking a document within a file system, the method comprising; monitoring, by a kernel, a sequence of file system operations for the document; opening the document for editing, the document having a document identifier that is unique within the file system and is distinct from a filename of the document, the document identifier persistently associated with the most recent version of the document having the filename; storing the document identifier; generating a temporary file containing the contents of the document, the temporary file having a second filename and the temporary file having no document identifier equivalent to the document identifier of the document open for editing; receiving one or more editing operations upon the document contents in the temporary file; determining, by the kernel, that the sequence of file system operations includes a sequence of file system operations that indicate that a safe save process is being performed; and in response to the determining, persistently associating the document identifier with the filename and the most recent version of the contents of the document. - View Dependent Claims (17, 18, 19, 20, 21, 22)
-
Specification