Extended Lock Timer for Distributed Transaction Integrity

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In distributed transactions, existing techniques fail to ensure adequate lock management, leading to compensation transaction failures when transactions are aborted, as locks are released immediately, allowing other processes to modify objects, potentially causing compensation actions to fail.

Innovation Solution

Implementing extended locks with a time-to-expiration timer that keeps locks held until the timer expires, allowing for re-access if needed and minimizing opportunities for other processes to modify objects, thus reducing the likelihood of compensation action failures.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If locks are released immediately after transaction operation completion, then system throughput and resource utilization are improved, but compensation transaction reliability deteriorates due to potential object modification by other processes

Engineering Contradiction:
Improvesystem throughputVSAvoidcompensation transaction reliability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements dynamic lock timing by introducing a timer-based lock extension mechanism. The lock duration is no longer fixed but dynamically adjusted based on transaction outcomes. For compensation transactions, the lock is extended beyond the normal operation completion time to cover the compensation execution window, while for successful transactions the lock is released promptly. This dynamic approach resolves the contradiction by adapting lock duration to specific transaction needs.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent applies preliminary action by establishing a lock extension protocol before compensation transactions can fail. The system proactively extends the lock duration anticipatorily to prevent the specific problem of object modification during compensation. This preliminary measure ensures that when compensation needs to execute, the lock is already in place, preventing other processes from modifying the object and ensuring compensation reliability without permanently reducing system throughput.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If locks are held for extended periods, then compensation transaction reliability is improved by preventing object modification, but system throughput and resource utilization deteriorate

Engineering Contradiction:
Improvecompensation transaction reliabilityVSAvoidsystem throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements dynamic lock timing by introducing a timer-based lock extension mechanism. The lock duration is no longer fixed but dynamically adjusted based on transaction outcomes. For compensation transactions, the lock is extended beyond the normal operation completion time to cover the compensation execution window, while for successful transactions the lock is released promptly. This dynamic approach resolves the contradiction by adapting lock duration to specific transaction needs.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent applies local quality by differentiating lock handling based on transaction type and outcome. Different lock durations are applied to different transaction scenarios: standard transactions use short locks for high throughput, while compensation transactions use extended locks for reliability. This localized approach ensures that lock extension is applied only where needed (in compensation scenarios) rather than universally, thus maintaining system throughput while improving compensation reliability.

Inventive Principle:
Principle #3Local quality

3Ease of operation

If locks are released immediately, then resource utilization is improved, but data integrity during compensation transactions deteriorates

Engineering Contradiction:
Improveresource utilizationVSAvoiddata integrity
Core Design Contradiction:
Ease of operationVSStability of the object's composition

Solution Approach 1:

The patent applies preliminary action by establishing a lock extension protocol before compensation transactions can fail. The system proactively extends the lock duration anticipatorily to prevent the specific problem of object modification during compensation. This preliminary measure ensures that when compensation needs to execute, the lock is already in place, preventing other processes from modifying the object and ensuring compensation reliability without permanently reducing system throughput.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces a timer-based lock management intermediary that mediates between the transaction operation completion and the actual lock release. This intermediary mechanism automatically extends the lock for compensation transactions while allowing normal releases for successful transactions. The timer acts as a mediator that intelligently determines lock duration based on transaction type, ensuring data integrity during compensation while maintaining resource utilization for successful transactions.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10096065B2Distributed transactions with extended locks
Publication Date: 2018.10.09 RED HAT INC
  • US10096065B2 patent drawing
  • US10096065B2 patent drawing
  • US10096065B2 patent drawing

AI summary

Various examples are directed to systems and methods for distributed transactions with extended locks. A transaction node may receive from a coordinator node an instruction to execute an assigned operation on an object. The assigned operation may be part of a distributed transaction. The transaction node may obtain a lock associated with the object and execute the assigned operation. The transaction node may also set a time-to-expiration of a lock timer to an initial value and start the lock timer. When the transaction node determines that the lock timer has expired, it may release the lock.