-
Notifications
You must be signed in to change notification settings - Fork 283
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
cli: Introduce a selectable IO backend with --io={syscall,io-uring} argument #654
base: main
Are you sure you want to change the base?
Conversation
… revert on every commit is not fun.
…ngIO on Linux with feature io_uring. cli: add a new argument to select I/O backend (more than one option only for Linux with io_uring feature). cli: make both Limbo::new() and Limbo::open_db() use get_io(), unifying parsing of database path and eliminating duplicated code.
…that the correct one has been selected.
2409bc4
to
5a45df8
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
my bad, for wrongly commented
This comment was marked as resolved.
This comment was marked as resolved.
Ah, I get it now after taking a look at your history. You're just spamming the same comments on multiple projects... |
…emory we get a default Io from Clap. Also remove last pesky Io::clone()
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good stuff, Looks good to me 👍
*Personally Idk if I'm 100% sure about the naming of the other option syscall
, but I will leave that one up to others to decide :)
Yeah, neither am I. It is what Pekka suggested in #628 so I went with it. Thanks for reviewing :) |
Give the user the option of choosing IO backend. There is only a "syscall" backend, unless built for Linux with
#[cfg(feature = "io_uring")]
which introduces--io=io-uring
.Right now, the choice has only been implemented for the CLI. Bindings and such default to PlatformIO, except when an "in-memory" database has been chosen.
Can be tested by running CLI with RUST_LOG=debug