File Synchronization Conflict Resolution via Dual Validation Tokens
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Synchronization conflicts arise when two copies of a computer file contain different changes, leading to time-consuming and costly resolution processes that negatively impact user experience, particularly due to re-appliable machine modifications during file synchronization between client and server copies.
Innovation Solution
Implementing both read and write validation tokens associated with computer file copies, where the read validation token is updated upon byte-wise modifications and the write validation token is maintained for re-appliable changes, allowing for seamless synchronization by overwriting server copies with user-edited local copies while re-applying machine modifications.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If two-way file synchronization is implemented to maintain identical copies at all locations, then data consistency is improved, but synchronization conflicts increase
Solution Approach 1:
The system performs preliminary actions by detecting file changes and determining their type (user edits vs. machine modifications) before synchronization conflicts occur. The workflow server pre-processes server copies by identifying and marking machine modifications, so that during synchronization, client copies can be properly merged with server copies without conflicts.
Solution Approach 2:
The workflow server acts as an intermediary between the file server and client devices. It intercepts file changes, determines their type, and manages the synchronization process by coordinating between client uploads and server downloads, thereby preventing direct conflicts between simultaneous modifications.
2Productivity
If machine modifications are automatically applied to server copies, then data processing efficiency is improved, but synchronization conflicts increase
Solution Approach 1:
The system performs preliminary classification of modifications by having the workflow server detect and mark machine modifications before they cause conflicts. By pre-identifying which changes are machine-generated and re-appliable, the system prepares the ground for conflict-free synchronization.
Solution Approach 2:
The system changes the parameter of machine modifications by making them re-appliable rather than permanent. When a client copy is uploaded, the workflow server can re-apply machine modifications to the new server copy, effectively resetting the modification state and avoiding synchronization conflicts.
3Measurement precision
If validation tokens are implemented to track file changes, then synchronization accuracy is improved, but system complexity increases
Solution Approach 1:
The validation token system is segmented into two distinct tokens: read validation tokens that track changes to server copies, and write validation tokens that track changes to client copies. This segmentation allows the system to independently track and manage different types of changes without requiring a single complex tracking mechanism.
Solution Approach 2:
The workflow server acts as an intermediary that manages the validation token system. It generates, updates, and compares tokens, shielding client devices from the complexity of token management while maintaining high synchronization accuracy through precise change detection.
Data Source
AI summary
Techniques for limiting synchronization conflicts during file synchronization in a computing system are described herein. In one embodiment, a method includes detecting a change to a local copy a computer file on a client device. The local copy is associated with a local token. The method also includes obtaining a server token associated with a server copy of the same computer file on a file server and determining whether the local token matches the server token. If the local and server tokens match each other, the method includes uploading the local copy to the file server to overwrite the server copy even though the server copy contains a change to the computer file that is different than a change to the local copy of the same computer file.