Updating a remote tree for a client synchronization service

US11010402B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11010402-B2
Application numberUS-201815863751-A
CountryUS
Kind codeB2
Filing dateJan 5, 2018
Priority dateDec 28, 2017
Publication dateMay 18, 2021
Grant dateMay 18, 2021

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.

The disclosed technology relates to a system configured to receive operations data from a content management system, wherein the operations data comprises a log of operations, execute the log of operations, and update, based on execution of the log of operations, a remote tree representing a server state for content items stored on the content management system.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer-implemented method comprising: receiving, at one or more processors of a client device, operations data corresponding to a plurality of namespaces from a content management system, wherein the operations data comprises a log of operations, wherein the log of operations includes prioritized modifications to content items of a corresponding namespace of the plurality of namespaces; executing, at the one or more processors of the client device, the log of operations; updating, by the one or more processors of the client device, based on execution of the log of operations, a remote tree representing a server state for the content items stored on the content management system; determining, at the one or more processors of the client device, that the remote tree and a sync tree are out of sync, the sync tree representing a difference between the server state associated with the remote tree and a file system state associated with a local tree, the local tree representing the file system state for content items stored on the client device; generating, at the one or more processors of the client device and based on a difference between the remote tree and the sync tree, a set of operations that perform converging of the server state associated with the remote tree and the file system state associated with the local tree; and providing, by the one or more processors of the client device, the set of operations to the content management system to be executed by the content management system. 2. The computer-implemented method of claim 1 , further comprising transmitting a cursor to the content management system, wherein the log of operations is based on the cursor. 3. The computer-implemented method of claim 1 , wherein the prioritized modifications are prioritized based on a type of modification and the corresponding namespace of the plurality of namespaces. 4. The computer-implemented method of claim 1 , wherein the operations data comprises revisions data for a namespace of the plurality of namespaces. 5. The computer-implemented method of claim 1 , further comprising managing execution of the set of operations. 6. The computer-implemented method of claim 5 , wherein the remote tree and the sync tree are stored at the client device. 7. The computer-implemented method of claim 1 , receiving, from the content management system, a mount notification that mounts a target namespace within an existing namespace represented in the remote tree; receiving, from the content management system, an initial portion of a log of operations for the target namespace; building a subtree within the remote tree for the target namespace based on the initial portion of the log of operations received from the content management system; and mounting the subtree for the target namespace at a mount location of the remote tree. 8. The computer-implemented method of claim 7 , wherein the initial portion of the log of operations is bounded by a start of the log of operations to a cursor value for a mount operation detected by the content management system. 9. The computer-implemented method of claim 7 , wherein the subtree for the target namespace is mounted after the initial portion of the log of operations is processed to build the subtree. 10. The computer-implemented method of claim 7 , further comprising: receiving, from the content management system, a mount operation for the target namespace, wherein the mount operation is associated with the existing namespace and specifies the mount location in the existing namespace; and wherein the target namespace is mounted at the mount location in response to the mount operation. 11. A non-transitory computer readable medium comprising instructions, the instructions, when executed by a computing system, cause the computing system to: receive, at a client device, operations data corresponding to a plurality of namespaces from a content management system, wherein the operations data comprises a log of operations, wherein the log of operations includes prioritized modifications to content items of a corresponding namespace of the plurality of namespaces; execute, at the client device, the log of operations; update, by the client device, based on execution of the log of operations, a remote tree representing a server state for the content items stored on the content management system; determine, at the client device, that the remote tree and a sync tree are out of sync, the sync tree representing a difference between the server state associated with the remote tree and a file system state associated with a local tree, the local tree representing the file system state for content items stored on the client device; generate, at the client device and based on a difference between the remote tree and the sync tree, a set of operations that perform converging of the server state associated with the remote tree and the file system state associated with the local tree; and provide, by the client device, the set of operations to the content management system to be executed by the content management system. 12. The non-transitory computer readable medium of claim 11 , wherein the instructions further cause the computing system to transmit a cursor to the content management system, wherein the log of operations is based on the cursor. 13. The non-transitory computer readable medium of claim 11 , wherein the prioritized modifications are prioritized based on a type of modification and the corresponding namespace of the plurality of namespaces. 14. The non-transitory computer readable medium of claim 11 , wherein the operations data comprises revisions data for a namespace of the plurality of namespaces. 15. The non-transitory computer readable medium of claim 11 , wherein the instructions further cause the computing system to manage the execution of the set of operations. 16. A system comprising: one or more processors; and a non-transitory computer-readable medium storing instructions that, when executed by the one or more processors, cause the one or more processors to: receive, at a client device, operations data corresponding to a plurality of namespaces from a content management system, wherein the operations data comprises a log of operations, wherein the log of operations includes prioritized modifications to content items of a corresponding namespace of the plurality of namespaces; execute, at the client device, the log of operations; update, by the client device, based on execution of the log of operations, a remote tree representing a server state for the content items stored on the content management system; determine, at the one or more processors of the client device, that the remote tree and a sync tree are out of sync, the sync tree representing a difference between the server state associated with the remote tree and a file system state associated with a local tree, the local tree representing the file system state for content items stored on the client device; generate, at the one or more processors of the client device and based on a difference between the remote tree and the sync tree, a set of operations that perform converging of the server state associated with the remote tree and the file system state associated with the local tree; and provide, by the one or more processors of the client device, the set of operations to the content management system to be executed by the content management system. 17. The system of claim 16 , wherein the instructions further cause the one or more processors to tr

Assignees

Inventors

Classifications

  • G06F16/27Primary

    Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor · CPC title

  • G06F16/11Primary

    File system administration, e.g. details of archiving or snapshots (error detection or correction of the data by redundancy in operations G06F11/14) · CPC title

  • Protocols · 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

  • G06F16/178Primary

    Techniques for file synchronisation in file systems · 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 US11010402B2 cover?
The disclosed technology relates to a system configured to receive operations data from a content management system, wherein the operations data comprises a log of operations, execute the log of operations, and update, based on execution of the log of operations, a remote tree representing a server state for content items stored on the content management system.
Who is the assignee on this patent?
Dropbox Inc
What technology area does this patent fall under?
Primary CPC classification G06F16/27. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue May 18 2021 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 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).