Cloud Sync Conflict Resolver and Retry Manager
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing synchronization systems face challenges in handling conflicts between incompatible changes made on opposite file systems, such as when one user deletes a folder while another edits a file inside it, leading to inconsistent states that need to be resolved.
Innovation Solution
The system employs self-healing strategies and conflict resolvers to detect and reactively resolve conflicts by mapping failure reasons to specific conflict resolver actions, restoring the file system to a consistent state and retrying synchronization events under controlled conditions, using a Retry Condition Manager to manage retry scenarios based on configurable conditions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If conflict avoidance techniques such as check in-check out procedures and file locks are used, then conflicts can be prevented, but system complexity and operational difficulty increase
Solution Approach 1:
The patent extracts the conflict resolution logic from preventive mechanisms (check-in/check-out, file locks) and implements it as a separate reactive conflict resolver component. This allows the system to use simple synchronization protocols during normal operation while having a dedicated mechanism to handle conflicts when they occur, reducing overall system complexity.
Solution Approach 2:
The patent introduces a conflict resolver as an intermediary component that mediates between the file system and the synchronization client. This mediator detects conflicts, determines their types (hard vs. soft), and applies appropriate resolution strategies, isolating the complexity of conflict management from the core synchronization logic.
2Reliability
If reactive conflict resolution is implemented, then conflicts can be resolved when they occur, but the file system may enter inconsistent states during resolution
Solution Approach 1:
The patent prepares the file system for potential conflicts by implementing rollback capabilities and transaction-like operations before conflicts occur. When conflicts are detected, the system can revert to known good states, cushioning against consistency issues during the resolution process.
Solution Approach 2:
The patent implements a feedback mechanism where the conflict resolver continuously monitors the file system state during conflict resolution, detects inconsistencies, and adjusts its resolution strategy accordingly. This feedback loop ensures that the file system remains consistent throughout the conflict resolution process.
3Reliability
If synchronization events are retried automatically, then data integrity can be maintained, but race conditions and unforeseen interactions may occur
Solution Approach 1:
The patent performs preliminary analysis of retry conditions before executing synchronization events. The system evaluates whether retrying is appropriate by checking if the underlying cause of failure has been resolved, preventing premature retries that could lead to race conditions while ensuring necessary retries for data integrity.
Solution Approach 2:
The patent implements dynamic retry logic that adapts retry behavior based on the specific conflict type and system state. Rather than using fixed retry intervals, the system adjusts retry timing and frequency dynamically, reducing the likelihood of race conditions while maintaining data integrity through appropriate retries.
Data Source
AI summary
Embodiments of the present disclosure include systems and methods of conflict resolution, retry condition management and/or handling of problem files in the synchronization architecture of the cloud-based platform. One embodiment of the disclosed technology detects conflicts between incompatible changes made on opposite file systems based on file system sync results when executing a sync event on the file system. In one embodiment, the disclosed technology applies self-healing strategies when unexpected failures occur. For example, if a synchronization action fails repeatedly, an external action (e.g., from user, file system, etc.) can return the system back to a consistent state again.


