Shared Storage Elector for Single-Node Consensus Leadership

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing consensus protocols struggle to maintain stable leadership when server failures reduce the number of operational nodes to one, compromising the availability of the service.

Innovation Solution

The implementation of a distributed computing system that utilizes a shared storage mechanism to act as a voter in leadership elections, allowing the system to tolerate failures down to a single surviving server by distinguishing between election and commit quorums.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the system requires a majority of voters for leadership elections, then the system maintains stability and prevents split-brain scenarios, but the system cannot tolerate failures down to a single surviving server

Engineering Contradiction:
Improveleadership stabilityVSAvoidfailure tolerance
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent segments the quorum requirements into two distinct types: election quorum and commit quorum. The election quorum requires a majority of voters (including the shared storage elector) to prevent split-brain scenarios during leadership elections. The commit quorum requires only one active node to maintain service availability. This segmentation allows the system to maintain leadership stability while tolerating failures down to a single surviving server.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a shared storage elector as an intermediary that participates in leadership elections but not in commit quorum. This elector acts as a mediator that can vote in elections even when all other nodes have failed, enabling the system to elect a leader with just one surviving node while still maintaining the majority voting requirement for preventing split-brain scenarios.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If the system allows a single node to function as exclusive leader, then the system maintains service availability, but the system loses the ability to tolerate additional failures

Engineering Contradiction:
Improveservice availabilityVSAvoidfailure tolerance
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements dynamic quorum adjustment based on the number of surviving nodes. When multiple nodes are operational, the system requires a majority for both election and commit quorum to maintain high reliability. When nodes fail and only one remains, the system dynamically adjusts to allow that single node to function as exclusive leader with reduced commit quorum requirements, thereby maintaining service availability while being transparent about the reduced failure tolerance.

Inventive Principle:
Principle #15Dynamics

3Adaptability or versatility

If the system uses shared storage as a voter in leadership elections, then the system can tolerate failures down to a single surviving server, but the system complexity increases

Engineering Contradiction:
Improvefailure toleranceVSAvoidsystem architecture
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent makes the shared storage serve multiple functions: it acts as both the persistent storage for the distributed system and as an elector in leadership elections. By giving the shared storage this dual role, the patent avoids adding a separate dedicated elector component, thereby reducing the overall system complexity while still enabling failure tolerance down to a single surviving server.

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

Data Source

PatentUS12217550B1Tolerating server failures in a consensus protocol down to one surviving server using shared storage as a voter
Publication Date: 2025.02.04 ORACLE INT CORP
  • US12217550B1 patent drawing
  • US12217550B1 patent drawing
  • US12217550B1 patent drawing

AI summary

An elector is provided using shared storage to allow a cluster of participant nodes to gracefully convert failed voters to non-voters until there are only two voters. The cluster can then tolerate the failure of either of those two remaining participant nodes. A tiny amount of shared storage is used as a voter without an object store. This results in a cluster with only one running node that is an exclusive leader. An exclusive leader is then the only participant node that is a voter, and the exclusive leader can commit log records without replicating them to any other members of the cluster. When there is an exclusive leader, there is only one remaining node with a current copy of the object store.