Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add command line options for configuration #7

Closed
ntietz opened this issue Oct 14, 2022 · 0 comments
Closed

Add command line options for configuration #7

ntietz opened this issue Oct 14, 2022 · 0 comments

Comments

@ntietz
Copy link
Owner

ntietz commented Oct 14, 2022

There's no configuration right now, but with the addition of durability ( #5 ) there are tangible things we need to be able to toggle on and off for benchmarks. This should also allow configuration of other properties for nice experimentation. Included in scope is the creation of a config struct to pass around (probably in the context struct).

Some things we probably want as options:

  • Durability
    • On/off
    • Base filename
    • Frequency of compactions
    • Frequency of flushes (time or number of records)
    • Size of transaction queue
  • Logging/tracing
    • On/off
    • Level
  • Number of worker threads
  • Size of storage queue

And probably more!

ntietz added a commit that referenced this issue Oct 14, 2022
This adds a basic implementation of durability, where every mutation of
state gets recorded in the transaction log to be able to be read in the
future. There's some follow-up work (#6, #7), but this is a good start.
ntietz added a commit that referenced this issue Oct 17, 2022
This creates preliminary command-line configuration options and plumbs
it to pass these through to their consumers. The initial options are for
configuring number of worker threads, size of a queue, bind address, and
storage base path, and more will come as needed.

These allow easy tuning for benchmarks and optimizations.

More should be added based on #7 , but these are what's available for
what's implemented right now. In the future, as we add features, the
corresponding flags should be added.
@ntietz ntietz closed this as completed Oct 17, 2022
ntietz added a commit that referenced this issue Nov 5, 2023
This adds a basic implementation of durability, where every mutation of
state gets recorded in the transaction log to be able to be read in the
future. There's some follow-up work (#6, #7), but this is a good start.
ntietz added a commit that referenced this issue Nov 5, 2023
This creates preliminary command-line configuration options and plumbs
it to pass these through to their consumers. The initial options are for
configuring number of worker threads, size of a queue, bind address, and
storage base path, and more will come as needed.

These allow easy tuning for benchmarks and optimizations.

More should be added based on #7 , but these are what's available for
what's implemented right now. In the future, as we add features, the
corresponding flags should be added.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant