IP Library Granted Patent US 10,733,205
Granted Patent B2
US 10,733,205 · App. 15/867,496 · Granted Aug 4, 2020

Violation resolution in client synchronization

Inventors: Isaac Goldberg (San Francisco, CA); Robert Ying (San Francisco, CA)
Assignee: Dropbox, Inc.
G06F16/27G06F1/04G06F3/065G06F3/067G06F3/0619G06F3/0623G06F3/0629G06F3/0652G06F9/547G06F11/1469G06F12/1466G06F16/11G06F16/113G06F16/116G06F16/119G06F16/122G06F16/125G06F16/128G06F16/13G06F16/137G06F16/148G06F16/152G06F16/156G06F16/16G06F16/162G06F16/168G06F16/172G06F16/176G06F16/178G06F16/1734G06F16/1744G06F16/1767G06F16/1787G06F16/18G06F16/182G06F16/183G06F16/184G06F16/185G06F16/1827G06F16/1844G06F16/2246G06F16/2255G06F16/2322G06F16/2358G06F16/2365G06F16/2379G06F16/24552G06F16/275G06F16/907G06F16/9027G06F16/951G06F16/955G06F16/958G06F21/10G06F21/604G06F21/6218H04L9/3213H04L9/3247H04L63/08H04L63/0853H04L63/10H04L63/101H04L63/102H04L67/06H04L67/1095H04L67/1097G06F2201/84G06F2212/1052G06F2221/2141H04L67/306H04L67/42
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,733,205
App. No.
15/867,496
Granted
Aug 4, 2020
Kind
B2
Abstract

The disclosed technology relates to a system configured to receive a set of operations configured to converge a server state and a file system state, wherein the server state is for content items stored by a content management system and the file system state is for the content items stored on a client device. The system is further to detect a violation of a rule by an operation in the set of operations, identify resolution actions for the violation of the rule, and perform the resolution actions.

Claims (47)

1. A computer-implemented method comprising:

determining that a server state for content items stored by a content management system and a file system state for content items stored on a client device are out of sync wherein the determining is based on at least one of:

a server difference between a remote tree representing the server state and a sync tree representing a known synced state between the server state and the file system state, and

a client difference between a local tree representing the file system state and the sync tree representing the known synced state between the server state and the file system state;

receiving a set of operations configured to converge the server state and the file system state based on the determining that the server state and the file system state are out of sync;

detecting a violation of a rule by an operation in the set of operations;

identifying resolution actions for the violation of the rule; and

applying the resolution actions to the set of operations.

2. The computer-implemented method of claim 1 , wherein detecting the violation of the rule by the operation includes:

identifying an operation type for the operation in the set of operations;

selecting a set of rules associated with the operation type; and

determining that the rule in the set of rules is violated by the operation.

3. The computer-implemented method of claim 1 , further comprising providing the set of operations for execution on the client device.

4. The computer-implemented method of claim 1 , further comprising providing the set of operations for execution by the content management system.

5. The computer-implemented method of claim 1 , wherein the local tree and the sync tree are stored on the client device.

6. The computer-implemented method of claim 1 , wherein the set of operations are a client set of operations configured to operate on the content items stored on the client device.

7. The computer-implemented method of claim 1 , wherein the set of operations are a server set of operations configured to operate on the content items stored by the content management system.

8. A non-transitory computer-readable medium comprising instructions, the instructions, when executed by a computing system, cause the computing system to:

determine that a server state for content items stored by a content management system and a file system state for content items stored on a client device are out of sync wherein the determination is based on at least one of:

a server difference between a remote tree representing the server state and a sync tree representing a known synced state between the server state and the file system state, and

a client difference between a local tree representing the file system state and a sync tree representing a known synced state between the server state and the file system state;

generate a set of operations configured to converge the server state and the file system state based on the determination that the server state and the file system state are out of sync;

detect a violation of a rule by an operation in the set of operations;

identify resolution actions for the violation of the rule; and

perform the resolution actions.

9. The non-transitory computer-readable medium of claim 8 , wherein the instructions further cause the computing system to:

identify an operation type for the operation in the set of operations;

select a set of rules associated with the operation type; and

determine that the rule in the set of rules is violated by the operation.

10. The non-transitory computer-readable medium of claim 8 , wherein the instructions further cause the computing system to provide the set of operations for execution on the client device.

11. The non-transitory computer-readable medium of claim 8 , wherein the instructions further cause the computing system to provide the set of operations for execution by the content management system.

12. The non-transitory computer-readable medium of claim 8 , wherein the set of operations are a server set of operations configured to operate on the content items stored by the content management system.

13. 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:

determine that a server state for content items stored by a content management system and a file system state for content items stored on a client device are out of sync, wherein the determination is based on at least one of:

a server difference between a remote tree representing the server state and a sync tree representing a known synced state between the server state and the file system state, and

a client difference between a local tree representing the file system state and a sync tree representing a known synced state between the server state and the file system state;

receive a set of operations configured to converge the server state and the file system state based on the determination that the server state and the file system state are out of sync;

detect a violation of a rule by an operation in the set of operations;

identify resolution actions for the violation of the rule; and

perform the resolution actions.

14. The system of claim 13 , wherein the instructions further cause the one or more processors to:

identify an operation type for the operation in the set of operations;

select a set of rules associated with the operation type; and

determine that the rule in the set of rules is violated by the operation.

15. The system of claim 13 , wherein the set of operations are a server set of operations configured to operate on the content items stored by the content management system.

Assignments (4)
RELEASE OF SECURITY INTEREST Recorded Dec 13, 2024
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: DROPBOX, INC.
Reel/Frame 069635/0332 →
SECURITY INTEREST Recorded Dec 12, 2024
From: DROPBOX, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 069604/0611 →
PATENT SECURITY AGREEMENT Recorded Mar 10, 2021
From: DROPBOX, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 055670/0219 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 7, 2018
From: GOLDBERG, ISAAC; YING, ROBERT
To: DROPBOX, INC.
Reel/Frame 046011/0352 →
Cited By (1)
US 12,681,895