Hierarchical Lock Management with Self and Derived Lock Tracking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional systems are limited in providing locking support only for leaf nodes in hierarchical structures, failing to efficiently manage locks and derived locks for intermediate nodes, which is crucial for scenarios involving large hierarchies and concurrent access management.

Innovation Solution

A method and system that maintain a locking structure with 'self-locks' and 'derived locks' information for nodes, allowing efficient checks and updates, enabling locking of intermediate nodes and their descendants, and supporting locking of both leaf and intermediate nodes by tracking self-locks and derived locks in a hierarchical structure.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If conventional locking mechanisms are used for hierarchical structures, then locking support is provided only for leaf nodes, but this limits the ability to efficiently manage locks for intermediate nodes and large hierarchies

Engineering Contradiction:
Improvelocking support coverageVSAvoidlock management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The lock status information is segmented into two distinct components: self-lock status (indicating whether the node itself is locked) and derived-lock status (indicating whether any ancestor node is locked). This segmentation allows the system to efficiently track locks at any level of the hierarchy without requiring complex traversal of the entire tree structure.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system pre-establishes parent-pointer relationships for each node, allowing efficient upward traversal to check ancestor lock status. This preliminary structural preparation enables O(h) complexity for lock status checks, where h is the height of the node, rather than requiring full hierarchy traversal.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If lock status is checked for all nodes in a large hierarchy, then complete lock enforcement is achieved, but performance and scalability deteriorate

Engineering Contradiction:
Improvelock enforcement completenessVSAvoidlock check performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts only the necessary lock status information (self-lock and derived-lock booleans) from each node, rather than maintaining complete lock records for all ancestors. This extraction reduces the information storage requirement to constant space per node while enabling efficient lock status determination through simple boolean checks and upward parent traversal.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The system performs partial checking by only traversing upward to the nearest ancestor that has a self-lock, rather than checking all ancestors. When a node's derived-lock status is true, the system knows an ancestor is locked without needing to identify which specific ancestor, thus reducing the checking effort while maintaining complete lock enforcement.

Inventive Principle:
Principle #16Partial or excessive action

3Quantity of substance

If minimal metadata is maintained for each node, then storage efficiency is improved, but the ability to track lock status across hierarchies is reduced

Engineering Contradiction:
Improvemetadata storageVSAvoidlock status information
Core Design Contradiction:
Quantity of substanceVSLoss of information

Solution Approach 1:

Each node maintains localized lock status information (self-lock boolean and derived-lock boolean) that is specific to its position in the hierarchy. This local quality approach allows each node to independently determine its lock status without requiring global hierarchy information, reducing storage requirements while preserving necessary lock status knowledge.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The lock status information is nested within the node structure itself, with each node containing references to its parent and its own lock status flags. This nested organization allows the system to build up lock status information from the bottom of the hierarchy by traversing parent pointers, maintaining complete lock information using only constant space per node.

Inventive Principle:
Principle #7Nested doll (Nesting)

Data Source

PatentUS8452743B2Method and system for efficient enforcement of derived locks in a hierarchical structure
Publication Date: 2013.05.28 ORACLE INT CORP
  • US8452743B2 patent drawing
  • US8452743B2 patent drawing
  • US8452743B2 patent drawing

AI summary

An improved approach is described for handling locks and locking for hierarchical structures. The approach efficiently captures lock information for hierarchical nodes as well as for the enforcement of derived locks. Support is provided for locking of leaf nodes as well as for locking of intermediate nodes.