apple / apple/foundationdb

Add a knob to allow configuring SO_LINGER on all opened sockets

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

Description

In a situation where clients are particularly short lived on a host, there will be many connections opened repetitively to the same FDB processes and ports. This means the host will rapidly accumulate sockets left in TIME_WAIT, and for how long is at the discretion of the kernel configuration.

It'd be nice to have finer grained control over how long sockets will linger in TIME_WAIT. Asio supports this as a socket option, but I don't see anything in FDB that allows configuring it. (And an integer would be nicer, instead of just 0 or unset.)

Contributor guide

Open the contributing guide

Research direction

No file or test is named. Start by locating socket creation and existing Asio socket-option handling, then trace how configuration reaches all opened sockets; done means an integer setting controls SO_LINGER consistently and its behavior is verified.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
distributed-systems, networking
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.