File Consistency via Version Vector Conflict Resolution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing file synchronization technologies face challenges in maintaining consistency across different versions of a file, particularly when users collaborate in real-time, as hash comparisons may not accurately reflect content equivalence, leading to data loss and false conflicts.

Innovation Solution

A collaboration service manages file consistency by utilizing version vector data to determine synchronization between different versions of a file, ensuring that the most recent version is surfaced for users, and automatically resolving conflicts through conflict detection and resolution mechanisms.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If hash comparison is used to determine file synchronization, then synchronization status can be quickly determined, but false conflicts occur when different versions have the same content but different hashes

Engineering Contradiction:
Improvesynchronization detection accuracyVSAvoiddata consistency
Core Design Contradiction:
Measurement precisionVSReliability

Solution Approach 1:

The patent introduces version vector data as an intermediary mechanism between hash comparison and conflict detection. The version vector contains version numbers for each service, acting as a mediator that provides additional context about file provenance. When hash comparison shows a mismatch, the version vector data helps determine whether the mismatch represents a true conflict or a false positive, thereby resolving the contradiction between quick synchronization detection and data consistency reliability

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent changes the parameters used for conflict detection by incorporating version vector data with service-specific version numbers alongside hash values. This multi-parameter approach allows the system to distinguish between genuine conflicts (different content) and false conflicts (same content, different service versions), improving both detection accuracy and data consistency without sacrificing speed

Inventive Principle:
Principle #35Parameter changes

2Reliability

If version vector data evaluation is performed to resolve false conflicts, then data consistency is improved, but additional processing time and complexity are required

Engineering Contradiction:
Improvedata consistencyVSAvoidsynchronization management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements preliminary action by maintaining version vector data that is continuously updated in the background as files are synchronized across services. This version metadata is prepared in advance and stored alongside hash values, so when conflict detection is needed, the system can immediately evaluate the pre-computed version vector data without adding complex real-time processing, thus improving data consistency while minimizing additional complexity

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system uses feedback from version vector evaluation to refine conflict detection. When the version vector data indicates that hash mismatches are due to different service versions rather than actual content differences, the system learns to recognize this pattern and adjust its conflict detection logic, reducing the need for complex processing in future cases while maintaining data consistency

Inventive Principle:
Principle #23Feedback

3Reliability

If multiple version checks are performed across different services, then file consistency is ensured, but synchronization overhead increases

Engineering Contradiction:
Improvefile consistencyVSAvoidsynchronization time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies local quality by having each service maintain its own local version number in the version vector, rather than requiring centralized coordination for every check. Each service can independently evaluate its local version against the version vector data it receives, enabling parallel and distributed verification that ensures file consistency across services while minimizing synchronization overhead through localized decision-making

Inventive Principle:
Principle #3Local quality

Data Source

PatentEP3701386B1File consistency across file versions maintained by different services
Publication Date: 2022.04.06 MICROSOFT TECHNOLOGY LICENSING LLC
  • EP3701386B1 patent drawingFigure 1A
  • EP3701386B1 patent drawingFigure 1B
  • EP3701386B1 patent drawingFigure 2A

AI summary

Method and systen for performing processing operations that achieve file consistency in the presence of a large-scale collaboration service. A mismatch may be determined between hash values associated with two or more versions of a file that is associated with a tenant of a productivity service. Version vector data for different versions of the file may be evaluated. Version vector data may comprise: a session value indicating a session of the productivity service and a version value that indicates a number of changes made by the tenant during the session. A synchronization determination is generated based on an evaluation of the version vector data for the different versions of the file.