Lazy Hierarchical Permission Tree Caching

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing systems face inefficiencies and high costs when updating hierarchical navigation trees with thousands of nodes and user groups, leading to prolonged wait times for users as the entire cache is rebuilt upon permission changes.

Innovation Solution

A method that identifies 'dirty' nodes within the permission tree and reconstructs only the affected portions, using timestamp comparisons between the master navigation tree and permission trees to update node and tree timestamps, allowing for incremental updates without rebuilding the entire tree.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the entire navigation tree is invalidated and reconstructed from the cache upon permission changes, then permission updates are ensured to be complete and accurate, but user wait time increases to minutes and system resources are excessively consumed

Engineering Contradiction:
Improvepermission update completenessVSAvoiduser wait time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent divides the navigation tree into multiple permission trees, each corresponding to a specific user group. When permission changes occur, only the affected permission trees are updated rather than the entire navigation tree. This segmentation allows selective invalidation and reconstruction of only the necessary portions, reducing user wait time while maintaining permission update completeness.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements timestamp comparison at the node level to identify 'dirty' nodes that require updates. By comparing timestamps between the master navigation tree and cached permission trees, the system determines exactly which portions need reconstruction. This local quality approach ensures that updates are applied precisely where needed, avoiding unnecessary full-tree reconstructions and minimizing user wait time.

Inventive Principle:
Principle #3Local quality

2Reliability

If the entire permission tree is reconstructed when permissions are updated, then all user group permissions are synchronized with the master tree, but the system becomes unresponsive and users experience minutes of downtime

Engineering Contradiction:
Improvepermission synchronizationVSAvoidsystem responsiveness
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent performs preliminary timestamp comparisons to identify which permission trees and nodes require updates before actual reconstruction begins. By pre-assessing the update scope through timestamp matching between master tree nodes and cached permission tree nodes, the system prepares for minimal necessary reconstruction, maintaining responsiveness while ensuring permission synchronization.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent selectively invalidates only the specific permission trees or nodes that contain outdated timestamps, rather than discarding the entire permission tree cache. The system recovers and reconstructs only the affected portions by regenerating permission trees from the master navigation tree for user groups whose permissions have changed, preserving system responsiveness while maintaining synchronization.

Inventive Principle:
Principle #34Discarding and recovering

3Loss of time

If timestamp comparison and selective reconstruction is implemented, then user wait time is reduced and system resources are conserved, but the complexity of the caching mechanism increases

Engineering Contradiction:
Improveuser wait timeVSAvoidcaching mechanism complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent implements a feedback mechanism where timestamps are continuously compared between the master navigation tree and cached permission trees. This feedback loop automatically identifies 'dirty' nodes that require updates and triggers selective reconstruction only when necessary. The timestamp-based feedback system simplifies the complexity by providing an automatic, rule-based approach to determining update requirements, reducing the need for complex manual validation logic.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS9674150B2System, method and computer program product for efficient caching of hierarchical items
Publication Date: 2017.06.06 OPEN TEXT SA ULC
  • US9674150B2 patent drawing
  • US9674150B2 patent drawing
  • US9674150B2 patent drawing

AI summary

Embodiments disclosed herein provide a “lazy” approach in caching a hierarchical navigation tree with one or more associated permission trees. In one embodiment, only a portion of a cached permission tree is updated. One embodiment of a method may comprise determining whether a dirty node exists by comparing tree timestamps of the permission tree and the master tree. If the tree timestamp of the master tree is temporally more recent than the tree timestamp of the permission tree, the permission tree has a dirty node and the method may operate to check node timestamps of the master and permission trees. This process may be repeated until the dirty node is found, at which time a portion of the permission tree associated with the dirty node may be reconstructed, rather than the entire permission tree itself, thereby eliminating or significantly reducing access time to the cached permission tree.