apple / apple/foundationdb

Using the multi-version client in the CLI

Open
#1,809 1 comment 2 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
16.7k
Forks
1.6k
Avg merge
1d 20h
Merged PRs (30d)
126

Description

When running fdbcli commands, we have to match the version of the CLI to the version of the server that we are talking to. This creates headaches when running different clusters at different versions, because you need to keep multiple versions of the CLI and select the right one based on the cluster. It's a particular pain point when killing processes during upgrades, because the CLI cannot connect to the database after the kill happens. Could we try to have the CLI go through the multi-version client so that we can use the latest version of the CLI regardless of which version of the server we're talking to?

Contributor guide

Open the contributing guide

Research direction

Start by tracing how fdbcli establishes connections and where it could enter the multi-version client. Reproduce the version-mismatch and upgrade process-killing scenarios across differently versioned clusters. Done means the latest CLI can connect and run commands against supported server versions without maintaining separate CLI binaries.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
cli, distributed-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.