Compacting change logs using file content location identifiers
First Claim
1. A method, comprising:
- identifying, by a processing device, a first change log record comprising;
an identifier of a first data structure, an identifier of a second data structure, and an identifier of a first parent object, wherein the first data structure references a first physical location of contents of a file before a first file system operation, the second data structure references a second physical location of the contents of the file after the file first system operation, and the first parent object represents a first file system object comprising the file;
identifying, by the processing device, a second change log record comprising;
the identifier of the second data structure, an identifier of a third data structure, and an identifier of a second parent object, wherein the third data structure references a third physical location of the contents of the file after a second file system operation, and the second parent object represents a second file system object comprising the file;
responsive to determining that the first parent object identifier matches the second parent object identifier, merging, by the processing device, the first change log record and the second change log record to produce a third change log record comprising the identifier of the first data structure and the identifier of the third data structure;
responsive to determining that the identifier of the first data structure matches the identifier of the third data structure, discarding the third change log record;
constructing a file name alias by appending the identifier of the third data structure to an identifier of a pre-defined directory; and
performing, using the file name alias, a third file system operation specified by the third change log record.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems and methods for compacting change logs using file content location identifiers. An example method may comprise: identifying a first change log record comprising an identifier of a first data structure referencing a first physical location of contents of a file before a first file system operation, the first change log record further comprising an identifier of a second data structure referencing a second physical location of the contents of the file after the file first system operation; identifying a second change log record comprising the identifier of the second data structure referencing the second physical location of the contents of the file before a second file system operation, the second change log record further comprising an identifier of a third data structure referencing a third physical location of the contents of the file after the second file system operation; and replacing the first change log record and the second change log record with a third change log record comprising the identifier of the first data structure and the identifier of the third data structure.
85 Citations
18 Claims
-
1. A method, comprising:
-
identifying, by a processing device, a first change log record comprising;
an identifier of a first data structure, an identifier of a second data structure, and an identifier of a first parent object, wherein the first data structure references a first physical location of contents of a file before a first file system operation, the second data structure references a second physical location of the contents of the file after the file first system operation, and the first parent object represents a first file system object comprising the file;identifying, by the processing device, a second change log record comprising;
the identifier of the second data structure, an identifier of a third data structure, and an identifier of a second parent object, wherein the third data structure references a third physical location of the contents of the file after a second file system operation, and the second parent object represents a second file system object comprising the file;responsive to determining that the first parent object identifier matches the second parent object identifier, merging, by the processing device, the first change log record and the second change log record to produce a third change log record comprising the identifier of the first data structure and the identifier of the third data structure; responsive to determining that the identifier of the first data structure matches the identifier of the third data structure, discarding the third change log record; constructing a file name alias by appending the identifier of the third data structure to an identifier of a pre-defined directory; and performing, using the file name alias, a third file system operation specified by the third change log record. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A system, comprising:
-
a memory; and a processing device, operatively coupled to the memory, to; identify a first change log record comprising;
an identifier of a first data structure, an identifier of a second data structure, and an identifier of a first parent object, wherein the first data structure references a first physical location of contents of a file before a first file system operation, the second data structure references a second physical location of the contents of the file after the file first system operation, and the first parent object represents a first file system object comprising the file;identify a second change log record comprising;
the identifier of the second data structure, an identifier of a third data structure, and an identifier of a second parent object, wherein the third data structure references a third physical location of the contents of the file after a second file system operation, and the second parent object represents a second file system object comprising the file;responsive to determining that the first parent object identifier matches the second parent object identifier, merge the first change log record and the second change log record to produce a third change log record comprising the identifier of the first data structure and the identifier of the third data structure; responsive to determining that the identifier of the first data structure matches the identifier of the third data structure, discard the third change log record; construct a file name alias by appending the identifier of the third data structure to an identifier of a pre-defined directory; and perform, using the file name alias, a third file system operation specified by the third change log record. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A non-transitory computer-readable storage medium comprising executable instructions that, when executed by a processing device, cause the processing device to:
-
identify, by the processing device, a first change log record comprising;
an identifier of a first data structure, an identifier of a second data structure, and an identifier of a first parent object, wherein the first data structure references a first physical location of contents of a file before a first file system operation, the second data structure references a second physical location of the contents of the file after the file first system operation, and the first parent object represents a first file system object comprising the file;identify, by the processing device, a second change log record comprising;
the identifier of the second data structure, an identifier of a third data structure, and an identifier of a second parent object, wherein the third data structure references a third physical location of the contents of the file after a second file system operation, and the second parent object represents a second file system object comprising the file;responsive to determining that the first parent object identifier matches the second parent object identifier, merge, by the processing device, the first change log record and the second change log record to produce a third change log record comprising the identifier of the first data structure and the identifier of the third data structure; responsive to determining that the identifier of the first data structure matches the identifier of the third data structure, discard the third change log record; construct a file name alias by appending the identifier of the third data structure to an identifier of a pre-defined directory; and perform, using the file name alias, a third file system operation specified by the third change log record. - View Dependent Claims (14, 15, 16, 17, 18)
-
Specification