Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.Sign up
More engine abstraction, work toward Peekable and Iterable for Snapshot #5901
What have you changed?
This builds on #5835. The first new commit is "Add extension methods for creating RocksEngine references".
This includes a variety of work towards engine abstraction. Much of it is shaping the engine_traits abstractions in ways that will make the porting of the engine crate easier.
I was hoping to get a little further before submitting, but it's getting toward the end of the week, and the branch is getting large.
Some things this PR does:
I started out this work attempting to migrate
Right now I think
What is the type of the changes?
Pick one of the following and delete the others:
How is the PR tested?
cargo test --all --no-run
Does this PR affect documentation (docs) or should it be mentioned in the release notes?
Does this PR affect
The underlying engine doesn't require this, and it just makes conversion harder. Signed-off-by: Brian Anderson <firstname.lastname@example.org>
The underlying implementation needs to consume this type. By-value is the way the existing API works, so this is easier to migrate. Signed-off-by: Brian Anderson <email@example.com>