Provide a way to identify static, run-time configuration & limits of SplinterDB library.
Open
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 732
- Forks
- 67
- PR merge metrics
- No merged PRs in 30d
Description
This issue was discussed as part of the review of PR #89 . We need ways to find out the limits that SplinterDB library has been compiled with, and also some indication of the configuration it's using.
Here are some thoughts / ideas to pursue:
- (ajhconway) Something related that I've wanted for awhile, but never put together is some sort of
print_config()function that just dumps the current dynamic (and maybe also static) config. - (rosenhouse) Related thought: I've been wondering if we can encode some of this metadata on disk. So that, say, a hypothetical CLI or debug tool could be pointed at a file or block device, discover the necessary config, and then open/work with the data.
- If we had some form of an error log where the library could dump out messages periodically, that log-file could be a place where the configuration in-use at startup, or at a change, could be recorded.
- It will also be useful to provide a simple interface to query the static / run-time configuration programatically. Application that is linked with library could then retrieve it.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing PR #89 and the issue's proposed directions: print_config(), on-disk metadata, error logging, and programmatic queries. Narrow these into one concrete interface that exposes SplinterDB's compiled limits and current runtime configuration; done should mean the selected configuration information can be retrieved or inspected unambiguously.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- databases
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100