-
Notifications
You must be signed in to change notification settings - Fork 19
Description
When building with io_uring, typically you might want to enable RocksDB's set_async_io apart of your ReadOptions for multi_get. However the problem is you require coroutines support for this with multi_get to be any useful in practice. And coroutines is only apart of folly.
https://github.com/facebook/rocksdb/wiki/Asynchronous-IO#configuration
In addition, we found a possible bug with RocksDB's multi_get + io_uring + set_async_io, and we think disabling optimize_multiget_for_io would mitigate it, but because it's not exposed in the FFI we can't use it, and even then it's required that optimize_multiget_for_io is using coroutines. So perhaps this would be "prep work for exposing it in the FFI".
I've made a very dirty way of doing this at https://github.com/girlbossceo/rust-rocksdb-zaidoon1/commit/9ecb597d966efb37ed96f4cfe3f09165013fd14a (I have not tested if this even works in a Rust project) if you're interested.
gflags is also required apart of folly.