Stale Storage Layout Detection Without Client Locks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Distributed file systems face performance and scalability issues due to frequent locking of storage layouts when files or directories are modified, which can be inefficient and reduce system performance.

Innovation Solution

The system detects stale storage layouts by comparing client index ranges with node index ranges, avoiding locks until a mismatch is found, and only then updating the client's layout, thereby reducing unnecessary locking.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a client locks on a parent directory each time a file is added to avoid simultaneous changes by multiple clients, then data consistency and conflict avoidance are improved, but system performance and scalability deteriorate

Engineering Contradiction:
Improvedata consistencyVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system performs preliminary actions by proactively detecting stale storage layouts before they cause conflicts. The master node monitors storage layout changes and notifies clients in advance, allowing clients to update their layouts without needing to lock the parent directory for every file operation. This prevents conflicts before they occur while eliminating unnecessary locking overhead.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements a feedback mechanism where the master node continuously monitors storage layout changes and sends notifications to clients. This feedback loop allows clients to stay synchronized with the actual storage layout without requiring locks, as the master node provides real-time information about layout changes, enabling clients to update their cached layouts asynchronously.

Inventive Principle:
Principle #23Feedback

2Reliability

If a client locks on a parent directory each time a file is added to avoid simultaneous changes by multiple clients, then conflict avoidance is improved, but scalability deteriorates

Engineering Contradiction:
Improveconflict avoidanceVSAvoidscalability
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The master node performs preliminary monitoring of storage layout changes and proactively notifies clients before conflicts can occur. This advance notification system allows the system to scale horizontally by distributing the conflict avoidance function across multiple nodes rather than requiring every client to lock every parent directory, enabling better support for distributed and scalable architectures.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The master node acts as an intermediary between the storage system and clients. It maintains the authoritative view of storage layout changes and communicates this information to clients, eliminating the need for clients to directly manage locks. This intermediary approach enables scalability by centralizing coordination logic and reducing the coordination overhead between multiple clients and the storage system.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If the system continuously monitors and updates storage layouts to prevent staleness, then data consistency is improved, but system complexity increases

Engineering Contradiction:
Improvedata consistencyVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system extracts the storage layout monitoring and coordination function from individual clients and consolidates it in the master node. Clients no longer need to implement complex monitoring and locking logic for every file operation; instead, they simply receive notifications from the master node and update their layouts accordingly. This extraction reduces client-side complexity while maintaining data consistency.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The master node serves multiple functions: it monitors storage layout changes, maintains the authoritative layout information, notifies clients of changes, and coordinates updates across the system. This multi-functionality consolidates what would otherwise be complex distributed logic into a single coordinated entity, reducing overall system complexity while ensuring data consistency.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS12386793B2Detecting stale storage layouts without using client locks
Publication Date: 2025.08.12 RED HAT INC
  • US12386793B2 patent drawing
  • US12386793B2 patent drawing
  • US12386793B2 patent drawing

AI summary

Systems and methods for reducing locks on a storage layout of a distributed file system by detecting and notifying clients of stale storage layouts. An example method may comprise: receiving a request to modify a file system object associated with a storage layout, the request comprising an index range and the storage layout comprising an index range; determining whether the request is associated with a stale storage layout in view of a comparison of the index range of the request and the one or more index ranges of the storage layout; receiving a lock request to prevent changes to the storage layout; and transmitting at least a portion of the storage layout to update the stale storage layout.