apple / apple/foundationdb

Prevent stateless processes from serving as coordinators

Open
#3,335 0 comments 1 reaction 0 assignees View on GitHub
operations
Dominant language
C++
Stars
16.7k
Forks
1.6k
Avg merge
1d 20h
Merged PRs (30d)
126

Description

FDB allows defining stateless processes that cannot run stateful roles, and it is generally safe to run these processes without a persistent volume. Running processes that way may be desirable on some infrastructure setups, such as when running FDB on Kubernetes. There is a risk that one of these stateless processes could be recruited as a coordinator by a user who was not applying the correct safety checks themselves. If this were to happen, it could leave the cluster in a state where processes restarting could cause a loss of a quorum of coordinators, which leaves the database in an unrecoverable state. As a protection against this, can we prevent stateless processes from serving as coordinators?

Contributor guide

Open the contributing guide

Research direction

The issue names no files or tests. Start by tracing coordinator recruitment and the stateless-process role checks, then identify coverage for coordinator eligibility; done means stateless processes cannot be selected as coordinators and the relevant tests pass.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
databases, distributed-systems
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.