apple / apple/foundationdb

Report ratekeeper capacity for batch priority transactions

Open
#4,208 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

We report batch priority capacity by giving our batch TPS limit, which tells you the total number of transactions you can run at any priority before it will start cutting off batch transactions. In order to compute how many batch transactions you can run, you would need to subtract from this number the rate of higher priority transactions you are running, and I don't think this is easily done in the current implementation.

For clarity, it would probably be helpful if we reported the (estimated) rate that you can run batch transactions based on the recent history of higher priority transactions.

In theory, we could also do this same calculation to set the limit (i.e. directly compute the number of exactly batch priority transactions we can run), though this would be a change from the current behavior and should be thought through.

Contributor guide

Open the contributing guide

Research direction

No files, tests, or entry points are named. Start by tracing where batch TPS capacity is calculated and reported, then inspect how recent higher-priority transaction rates are available. Done means reporting an estimated batch transaction rate based on that history; deciding whether to change the existing limit behavior requires further design.

Written by the indexing model from the issue text.

Assessment

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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.