Persistent Memory Page Reservation During Aggregate Failover

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Data corruption and loss occur during transitions of aggregates between nodes in high availability node pairings due to potential mismatches in data versions when one node takes over and gives back control of aggregates.

Innovation Solution

Implement a soft partitioning of persistent memory by reserving free pages in both nodes' remote partitions during transitions, using updated metadata to ensure consistent free page allocation across nodes, thereby avoiding data corruption and loss.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If one node takes over and gives back control of aggregates during transitions in high availability node pairings, then high availability and failover functionality are provided, but data corruption and loss occur due to potential mismatches in data versions

Engineering Contradiction:
Improvehigh availabilityVSAvoiddata corruption
Core Design Contradiction:
ReliabilityVSLoss of information

Solution Approach 1:

The patent applies preliminary action by allocating free pages in the remote partition before the aggregate transition occurs. This ensures that when the surviving node takes over control of the aggregate, there are already reserved storage blocks available, preventing data version mismatches and corruption during the transition. The free pages are allocated in advance based on the aggregate's metadata information before the failure or transition event happens.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses metadata information as an intermediary to coordinate free page allocation between nodes. The metadata contains information about the aggregate's data blocks, and this information is used to determine which free pages should be allocated in the remote partition. This intermediary mechanism ensures both nodes have consistent understanding of data block locations, preventing corruption during transitions.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If free pages are allocated dynamically during aggregate transitions, then storage flexibility is improved, but data corruption occurs due to version mismatches between nodes

Engineering Contradiction:
Improvestorage flexibilityVSAvoiddata corruption
Core Design Contradiction:
Adaptability or versatilityVSLoss of information

Solution Approach 1:

The patent resolves this contradiction by performing preliminary allocation of free pages based on metadata information before transitions occur. This maintains storage flexibility through dynamic allocation while preventing data corruption by ensuring both nodes have consistent understanding of which pages are allocated to which aggregates before the transition happens.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system uses metadata information as feedback to guide free page allocation decisions. The metadata contains information about aggregate data blocks, and this feedback mechanism ensures that free pages are allocated in a way that maintains consistency between nodes, preventing version mismatches while preserving storage flexibility.

Inventive Principle:
Principle #23Feedback

3Reliability

If centralized communication is used to coordinate free page allocation between nodes, then data consistency is improved, but bandwidth efficiency deteriorates

Engineering Contradiction:
Improvedata consistencyVSAvoidbandwidth efficiency
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent extracts the coordination mechanism from centralized communication to local metadata-based allocation. Instead of requiring continuous centralized communication between nodes to coordinate free page allocation, the system uses locally stored metadata information to make allocation decisions independently, significantly reducing bandwidth consumption while maintaining data consistency.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

Each node performs self-service by using its own metadata information to allocate free pages in its remote partition without requiring real-time communication with the other node. This self-service approach maintains data consistency through the metadata's record of aggregate data blocks while eliminating the need for bandwidth-intensive centralized coordination.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS12417038B2Block allocation for persistent memory during aggregate transition
Publication Date: 2025.09.16 NETAPP INC
  • US12417038B2 patent drawing
  • US12417038B2 patent drawing
  • US12417038B2 patent drawing

AI summary

Techniques are provided for block allocation for persistent memory during aggregate transition. In a high availability pair including first and second nodes, the first node makes a determination that control of a first aggregate is to transition from the first node to the second node. A portion of available free storage space is allocated from a first persistent memory of the first node as allocated pages within the first persistent memory. Metadata information for the allocated pages is updated with an identifier of the first aggregate to create updated metadata information reserving the allocated pages for the first aggregate. The updated metadata information is mirrored to the second node, so that the second node also reserves those pages. Control of the first aggregate is transitioned to the second node. As a result, the nodes do not attempt allocating the same free pages to different aggregates during a transition.