Distributed Transaction Lock Revocation With Undo Logging

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current techniques for handling distributed transactions in large-scale distributed filesystems are inefficient, leading to performance issues due to conflicts arising when multiple nodes or clients concurrently access or modify shared resources.

Innovation Solution

Implementing a distributed lock manager to manage locks on namespace entities, using partial locking of data structures and undo logs to ensure atomicity and integrity, while allowing concurrent operations by logging undo records to a replay log for crash recovery.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If current coordination techniques are used for distributed transactions, then data consistency is maintained, but filesystem performance deteriorates due to conflicts when multiple nodes access shared resources concurrently

Engineering Contradiction:
Improvefilesystem performanceVSAvoiddata consistency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent segments the locking mechanism by implementing partial locking of data structures, where only specific portions of the namespace are locked during transactions rather than the entire namespace. This allows other nodes to access unrelated resources concurrently, improving filesystem performance while maintaining data consistency through targeted locking of critical sections.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces undo logs as an intermediary mechanism that mediates between transaction operations and permanent storage. By logging undo records before making modifications and replaying them upon conflicts or crashes, the system enables optimistic concurrency control, allowing multiple nodes to access shared resources simultaneously while maintaining data consistency through the intermediary log layer.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If locks are held during entire transactions to ensure atomicity, then data integrity is maintained, but system throughput decreases due to lock contention

Engineering Contradiction:
Improvesystem throughputVSAvoidtransaction atomicity
Core Design Contradiction:
ProductivityVSManufacturing precision

Solution Approach 1:

The patent applies preliminary action by creating undo log records before executing transaction modifications. This allows the system to prepare for potential rollbacks in advance, enabling faster transaction execution without holding locks for the entire duration. The preliminary logging action separates the modification preparation from the actual storage update, improving throughput while maintaining atomicity through the ability to replay or undo operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent changes the parameter of lock duration by implementing short-lived locks only for critical sections rather than holding locks throughout the entire transaction. Combined with undo logging, this parameter change allows most of the transaction to proceed without lock contention, improving system throughput while maintaining atomicity through the log-based rollback mechanism for the brief locked periods.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If full locking is implemented for crash safety, then atomicity is ensured, but concurrency is reduced leading to performance issues

Engineering Contradiction:
Improvecrash safetyVSAvoidconcurrency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent uses undo logs as an intermediary that provides crash safety without requiring full locking. By logging operations before execution and maintaining the ability to replay or undo them, the system achieves atomicity and crash recovery guarantees while allowing concurrent access to the actual data structures. The intermediary log layer decouples the concurrency control from the data access, enabling high concurrency with maintained reliability.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent applies partial action by implementing partial locking of only critical data structures rather than locking the entire namespace. Combined with undo logging for the partial operations, this provides sufficient crash safety for the locked portions while allowing concurrent access to unlocked portions, thereby maintaining both reliability and concurrency.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS12554595B2Handling distributed transactions
Publication Date: 2026.02.17 DELL PROD LP
  • US12554595B2 patent drawing
  • US12554595B2 patent drawing
  • US12554595B2 patent drawing

AI summary

Cluster nodes are allowed to start transactions involving modifications to multiple entities by locking a current entity for a current modification associated with a transaction, but not locking a subsequent entity for a subsequent modification associated with the same transaction. Undo log records are generated to allow the modifications to be rolled back. When a lock being held by a first node for a first transaction involving a modification made to an entity is requested by a second node for a second transaction involving the same entity, an undo record is persisted to a log to allow the modification to be rolled back, the lock being held by the first node is revoked and provided to the second node. Upon a determination that the first node has crashed before the first transaction could be committed, the log is replayed to undo the modification made by the first node.