Synchronous Replication Write Handling via Callback Context

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In storage systems with synchronous mirroring writes, overlapping write requests can lead to inconsistencies, as the order of writes may not be synchronized between the source and destination, potentially resulting in byte-for-byte copy failures, especially when asynchronous requests are initiated simultaneously.

Innovation Solution

A replication process that sets a callback and context for write requests, allowing for transactional replication by using a 'Run In Transaction' callback to ensure data consistency across the source and destination, and handles failures by fracturing the mirror relationship and logging changes for synchronization upon reestablishment.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If asynchronous requests to Namespace and Transit are started simultaneously, then write throughput is improved, but data consistency between source and destination deteriorates

Engineering Contradiction:
Improvewrite throughputVSAvoiddata consistency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent applies preliminary action by setting a callback function and context pointer in the write request before the asynchronous operations begin. This callback is registered in advance with the first process (Namespace) and will be invoked automatically when the operation completes, ensuring that the replication process (TxCache) can track and coordinate the write operations to maintain consistency between source and destination even when operations are initiated simultaneously

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements feedback through the callback mechanism where the first process notifies the replication process when the write request to Namespace completes. This feedback loop allows the system to monitor the status of asynchronous operations and ensure that replication to the destination is properly coordinated, maintaining data consistency while allowing parallel operations to improve throughput

Inventive Principle:
Principle #23Feedback

2Speed

If parallel write operations are performed without transaction coordination, then processing speed is improved, but transactional consistency deteriorates

Engineering Contradiction:
Improveprocessing speedVSAvoidtransactional consistency
Core Design Contradiction:
SpeedVSStability of the object's composition

Solution Approach 1:

The patent uses the replication process (TxCache) as an intermediary between the first process (Namespace) and the second process (Transit). This intermediary coordinates the parallel write operations by receiving write requests, setting up callbacks to track completion, and ensuring that both Namespace and Transit operations are properly synchronized. The intermediary maintains transactional consistency while allowing both operations to proceed in parallel, thus preserving processing speed

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11372573B2System and method for synchronous replication write handling
Publication Date: 2022.06.28 EMC IP HLDG CO LLC
  • US11372573B2 patent drawing
  • US11372573B2 patent drawing
  • US11372573B2 patent drawing

AI summary

A method, computer program product, and computer system for receiving, at a computing device, a write request from a host, wherein a first portion of a process may receive the write request. A callback and context may be set in the write request by the first portion of the process. The write request may be passed to a second portion of the process. The first process may be provided with the context. The first process may use the context to replicate the write request data to a destination.