Multi-Master Artifact Replication via Vector Clock Ordering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing collaborative editing systems face challenges in maintaining high availability and supporting disconnected operations, particularly when multiple users attempt to concurrently edit the same data object, leading to conflicts and requiring a single primary node for conflict resolution.

Innovation Solution

A computing system is configured to provide a collaborative environment where multiple nodes act as master nodes for an artifact, allowing each node to take changes from others and resolve conflicts independently, eliminating the need for a single primary node.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a single primary node is used for conflict resolution in collaborative editing, then conflict resolution is centralized and simple, but system availability decreases and disconnected operations are not supported

Engineering Contradiction:
Improvesystem availabilityVSAvoidnode architecture complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent divides the centralized conflict resolution function into distributed segments, where each node in the collaborative editing system can independently resolve conflicts. Instead of relying on a single primary node, the system segments the arbitration capability across multiple nodes, allowing each to operate autonomously and maintain availability even when disconnected from the network.

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If multiple nodes act as master nodes for an artifact, then system availability and disconnected operation support improve, but conflict resolution complexity increases

Engineering Contradiction:
Improvedisconnected operation supportVSAvoidconflict resolution mechanism
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent transforms the conflict resolution approach by changing the parameters of operation ordering. Instead of requiring complex centralized arbitration, nodes use vector clocks to track causality relationships and apply operations in a consistent order. This parameter-based approach simplifies the multi-master conflict resolution mechanism while maintaining adaptability for disconnected operations.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If nodes independently resolve conflicts without a primary node, then system flexibility and availability improve, but ensuring agreement on operation ordering becomes more difficult

Engineering Contradiction:
Improvecollaboration continuityVSAvoidoperation ordering consistency
Core Design Contradiction:
ReliabilityVSLoss of information

Solution Approach 1:

The patent implements feedback mechanisms through vector clocks that continuously track the causal relationships between operations across nodes. Each node receives feedback about the state of other nodes and adjusts its operation ordering accordingly. This feedback loop ensures that all nodes independently arrive at the same final state without requiring a primary node, maintaining both collaboration continuity and ordering consistency.

Inventive Principle:
Principle #23Feedback

Data Source

PatentEP3816843B1Systems and methods for artifact replication within a multi-master collaborative environment
Publication Date: 2025.04.09 PALANTIR TECHNOLOGIES INC
  • EP3816843B1 patent drawingFigure 1
  • EP3816843B1 patent drawingFigure 2
  • EP3816843B1 patent drawingFigure 3

AI summary

Systems and methods are provided for master-to-master Operation-Transform (OT) -based artifact peering/replication. A "master-to-master" architecture for artifacts is implemented in a network comprising a plurality of nodes and clients, where no node is designated a "master" or "primary" for a given artifact. A first node receives a subset of remote proposed operations from a second node and determines if a conflict exists between the received subset of remote proposed operations and at least one of a plurality of locally-proposed operations. The first node resolves the conflict based on a total-ordering agreed upon between the first node and the second node. The first node transforms at least one operation, either received or locally-proposed, based on the resolved conflict. The first node than updates a local log to include the transformed operation.